Hệ quản trị cơ sở dữ liệu Visual Foxpro - TaiLieu.VN

20
Giáo trình Hquản trị cơ sở dữ liệu Visual Foxpro

Transcript of Hệ quản trị cơ sở dữ liệu Visual Foxpro - TaiLieu.VN

Giáo trình

Hệ quản trị cơ sở dữ liệu Visual Foxpro

Bài 1 - Mở đầu I. Giới thiệu

Nội dung môn học

Khai thác hệ quản trị cơ sở dữ liệu Visual Foxpro

Tiếp cận với công việc xây dựng một hệ thống quản lý

Tài liệu tham khảo

[1] - Sử dụng và khai thác Microsoft Visual Foxpro 6.0 - Nguyễn Ngọc Minh, Nguyễn Đình

Đề - NXB Lao động 2003

[2] - Bộ Help MSDN của Microsoft (tiếng anh)

[3] - Phân tích và thiết kế hệ thống thông tin - Đào Thanh Tĩnh - NXB Quân đội 2004

[4] - Help của Visual Foxpro

II. Hệ quản trị csdl

Hệ quản trị cơ sở dữ liệu (Database Management System) là một hệ thống phần mềm máy tính

được thiết kế chuyên biệt cho bài toán quản lý. Mô hình dữ liệu của các hệ quản trị csdl là mô

hình quan hệ.

Hệ quản trị csdl cung cấp 2 tính năng chính sau:

1- Lưu trữ, quản lý dữ liệu

2- Công cụ truy cập, khai thác dữ liệu

Các Hệ quản trị csdl thường dùng hiện nay:

1- SQL Server: Phát triển bởi Microsoft; là hệ CSDL dùng cho các tổ chức, doanh nghiệp lớn;

Khả năng đáp ứng trên mạng cao; Đảm bảo tính an toàn, bảo mật.

2- Oracle: Phát triển bởi Oracle; là hệ CSDL dùng cho các tổ chức, doanh nghiệp lớn; Khả

năng đáp ứng trên mạng cao; Đảm bảo tính an toàn, bảo mật. (Được đánh giá là mạnh hơn

SQL verver và thực tế giá phần mền này cũng đắt hơn SQL Server)

3- Foxpro, Access: Phát triển bởi Microsoft; là hệ CSDL dùng cho các tổ chức, doanh nghiệp

vừa và nhỏ; có khả năng triển khai trên mạng; tính bảo mật, an toàn là không cao.

4- MySQL: Hệ CSDL mã nguồn mở, được sử dụng chủ yếu cho các ứng dụng Web.

III. Mô hình dữ liệu quan hệ

Trong mô hình này người ta mô tả các [đối tượng] (như con người, hàng hóa, môn học ...) thông

qua các bảng (Table), mỗi bảng lại được mô tả qua các trường dữ liệu.

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Bảng (Table): Mô tả qua các cột - trường (Field) và các dòng - Bản ghi (Record) (ví dụ) (Mỗi

bảng có thể hiểu như một [quan hệ])

Trường (Field): Mô tả 1 thuộc tính nào đó của đối tượng thông qua tên trường (Field name),

kiểu (Type) và động rộng (Width) (ví dụ).

Bản ghi (Record): Tập các giá trị cụ thể của các trường của cùng 1 đối tượng (ví dụ).

Quan hệ giữa các bảng (Relationship): Là cách thức mô tả một đối tượng lớn hơn từ những đối

tượng nhỏ (ví dụ).

IV. bài toán quản lý

Bài toán quản lý có ở hầu hết mọi đơn vị, tổ chức, thậm chí với cả một số cá nhân. Những bài

toán quản lý có thể kể đến như:

o Quản lý nhân sự

o Quản lý hàng hóa

o Quản lý kế toán

o Quản lý lương

o Quản lý sinh viên, điểm

o Quản lý sách

o ....

Đặc điểm chung của những bài toán này:

o Không cần sử dụng những thuật toán phức tạp mà yêu cầu chủ yếu là: Thống kê, tìm

kiếm, lọc thông tin.

o Khối lượng dữ liệu thường là rất lớn. Đặc điểm này thực sự là một thách thức lơn nếu

chúng ta phải quản lý thủ công (việc tìm kiếm, thống kê, lọc -> mất rất nhiều thời gian

và không chính xác)

Bài tập môn học - Xây dựng hệ quản lý điểm

A. Mô tả bài toán

Bài toán Quản lý điểm (đối với các trường Đại học, Cao đẳng): Công tác quản lý điểm (hay

kết quả học tập) của sinh viên đóng vai trò hết sức quan trọng đối với hoạt động của các trường

ĐH và CĐ. Trong khoảng 10 năm trở lại đây công tác quản lý điểm (ở một số trường trong đó

có HVKTQS) đã dần được tin học hóa nhằm đem lại hiệu quả cao hơn, tin cậy hơn.

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Bài toán Quản lý điểm đặt ra các vấn đề cơ bản như sau: Thể hiện được mô hình tổ chức quản

lý sinh viên theo khóa, theo lớp, các loại hình đào tạo; Quản lý các môn học của các lớp theo

học kỳ và kết quả học tập của sinh viên đối với các môn học đó. Hệ thống còn phải cho phép

tạo ra các báo cáo từ kết quả học tập của sinh viên nhằm phục vụ công tác điều hành huấn

luyện như: Tổng kết kết quả học tập theo kỳ, theo năm, theo khóa; In Danh sách thi lại; In

Bảng điểm học kỳ; In Bảng điểm các nhân…

Ngoài các chức năng chính như trên, hệ thống này còn cần thêm một số chức năng khác như:

cập nhật các loại danh mục dữ liệu (danh mục lớp, danh mục loại hình đào tạo, danh mục

ngành học …); các chức năng sao chép/copy dữ liệu; chuyển đổi – tách lớp; các chức năng trợ

giúp …

Có thể mô tả sơ lược các công việc chính (đối với 1 khóa học) trong hệ thống quản lý điểm

như sau:

1. Với mỗi khóa học mới -> cần phải có mô tả cho khóa mới này.

2. Mô tả danh mục các lớp cho khóa mới.

3. Với mỗi lớp đã có cập nhật danh sách sinh viên của lớp

4. Với mỗi học kỳ cần cập nhật danh sách môn học/lớp

5. Khi có kết quả các môn học -> Cập nhật điểm môn học/lớp

6. Tổng kết kết quả học tập học kỳ, năm học, khóa học ..

7. In Danh sách thi lại

8. In Bảng điểm học kỳ

9. In Bảng điểm các nhân.

B. Yêu cầu

Xây dựng hệ thống Quản lý điểm phục vụ công tác quản lý điểm của các trường ĐH và CĐ với

các yêu cầu sau:

1. Cập nhật từ điển

Cập nhật danh mục khoá

Cập nhật danh mục lớp

Cập nhật danh mục ngành học

Cập nhật danh mục loại hình đào tạo

Cập nhật danh mục giáo viên

2. Cập nhật dữ liệu

Cập nhật hồ sơ sinh viên

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Cập nhật môn học/lớp/học kỳ

Cập nhật điểm thi kết thúc môn

3. Báo cáo/ thống kê

In danh sách lớp

In Danh sách thi

In phiếu điểm

In tổng kết kết quả học kỳ

In tổng kết kết quả năm học

In tổng kết kết quả toàn khóa học

In bảng điểm học kỳ

In bảng điểm cá nhân

C. Một số gọi ý

Các bảng dữ liệu trong hệ thống quản lý điểm có thể bao gồm các bảng sau:

1. Danh mục khoá DMKHOA.DBF

Tên trường Kiểu Độ rộng Ghi chú

Ma C 10 Mã khoá (Khoá chính)

Ten C 30 Tên khoá

Nienkhoa C 11 Niên khoá (Ghi 2004 – 2005, hoặc 2005 – 2006 …)

Ghichu C 200 Ghi chú

2. Danh mục lớp DMLOP.DBF

Tên trường Kiểu Độ rộng Ghi chú

Ma C 10 Mã lớp (khoá chính)

Ten C 30 Tên lớp

NgayKG D 8 Ngày khai giảng

NgayBG D 8 Ngày bế giảng

Manganh C 10 Mã ngành (khoá ngoài – dùng để đặt liên kết đến bảng

DMNGANH)

MaLHDT C 10 Mã loại hình đào tạo (khoá ngoài – dùng để đặt liên kết

đến bảng DMLHDT)

Makhoa C 10 Ma khoá (khoá ngoài – dùng để đặt quan hệ đến bảng

DMKHOA)

Ghichu C 200 Ghi chú

3. Danh mục ngành học DMNGANH.DBF

Tên trường Kiểu Độ rộng Ghi chú

Ma C 10 Mã ngành (khoá chính)

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Ten C 30 Tên ngành

Ghichu C 200 Ghi chú

4. Danh mục loại hình đào tạo DMLHDT.DBF

Tên trường Kiểu Độ rộng Ghi chú

Ma C 10 Mã loại hình đào tạo (khoá chính)

Ten C 30 Tên loại hình

Ghichu C 200 Ghi chú

5. Hồ sơ sinh viên HOSOSV.DBF

Tên trường Kiểu Độ rộng Ghi chú

Ma C 10 Mã sinh viên (Khoá chính)

Mã sinh viên có dạng XXXXYYYYYY, trong đó XXXX

có dạng là năm sinh viên đó trúng tuyển vào trường,

YYYYYY là số thứ tự của sinh viên nhập học năm XXXX

(Ví dụ: mã 2004000012 là mã của sinh viên thứ 12 trúng

tuyển năm 2004….)

HoTen C 30 Họ tên sinh viên

Ngaysinh D 8 Ngày sinh

Gioi L 1 Logic, .T. – Nam, .F. – Nữ

Hokhau C 200 Hộ khẩu trường trú

Diachi C 200 Địa chỉ

Malop C 10 Mã lớp (khoá ngoài – dùng để liên kết đến bảng DMLOP)

Ghichu C 200 Ghi chú

6. Môn học MONHOC.DBF

Tên trường Kiểu Độ rộng Ghi chú

Ma C 10 Mã môn (Khoá chính)

Tenmon C 50 Tên môn

Sotiet N 3 Số tiết

SoDVHT N 3,1 Số đơn vị học trình

Hocky N 1 Học kỳ (ghi 1 – Học kỳ 1, ghi 2 – Học kỳ 2)

Namhoc N 4 Năm học (Ghi năm học đầu trong )

NgayThi D 8 Ngày thi

Malop C 10 Mã lớp (khoá ngoài – dùng để liên kết đến bảng DMLOP)

MaGV C 10 Mã giáo viên (Khoá ngoài – dùng để liên kết đến bảng

GIAOVIEN)

Ghichu C 200 Ghi chú

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

7. Bảng GIAOVIEN.DBF

Tên trường Kiểu Độ rộng Ghi chú

Ma C 10 Mã giáo viên

Hoten C 30 Họ tên giáo viên

Hocham C 10 Học hàm (GV, GVC, GS, PGS)

Hocvi C 10 Học vị (CN, KS, ThS, TS, TSHK)

Ghichu C 200 Ghi chú

8. Bảng điểm DIEM.DBF

Tên trường Kiểu Độ rộng Ghi chú

Mamon C 10 Mã môn

MaSV C 10 Mã sinh viên

Diem1 N 5,2 Điểm thi lần 1

Diem2 N 5,2 Điểm thi lần 2

Diem3 N 5,2 Điểm thi lần 3

Ghichu C 200 Ghi chú

Các chức năng của chương trình có thể thiết kế như sau:

o Cập nhật danh mục khoá

Giao diện này có dạng như sau:

A1 – Danh sách khoá (Sử dụng GRID)

Khi chọn 1 dòng (1 khoá) thông tin về khoá được chọn sẽ hiển thị trong ô A2

A2 – Chi tiết khoá được chọn

A3 Các chức năng : Thêm, sửa, xoá …(1 khoá)

o Cập nhật danh mục lớp

A1

Chọn khoá : ……… (sử dụng ô combox)

Chức năng [OK]

Khi chọn OK, danh sách các lớp của khoá

được chọn sẽ hiển thị trong ô A2

A3 – Chi tiết về lớp được chọn

A2 – Danh sách lớp của khoá được chọn (Sử

dụng GRID)

Khi chọn 1 dòng (1 lớp) thông tin chi tiết về

lớp này sẽ hiển thị trong ô A3

Các chức năng: Thêm, sửa, Xoá … (1 lớp)

o Cập nhật danh mục ngành

Tương tự cập nhật danh mục khoá

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

o Cập nhật danh mục loại hình đào tạo

Tương tự cập nhật danh mục khoá

o Cập nhật danh mục giáo viên

Tương tự cập nhật danh mục khoá

o Cập nhật hồ sơ sinh viên

Giao diện này có dạng như sau:

A1

Chọn khoá: ….. (Sử dụng ô Combox)

Chọn lớp: …… (Sử dụng ô Combox)

Chức năng [OK]

Khi chọn [OK] danh sách sinh viên của

lớp/khoá đã chọn sẽ hiển thị trong ô A2

A3 - Chi tiết về sinh viên được chọn

A2 – Danh sách sinh viên của lớp/khoá đã

chọn (sử dụng GRID)

Khi chọn 1 dòng (1 sinh viên) thì thông tin chi

tiết về sinh viên này sẽ hiển thị trong ô A3

Các chức năng: Thêm, Sửa, Xoá … (1 sinh

viên)

o Cập nhật môn học/lớp/học kỳ

Giao diện này có dạng như sau:

A1

Chọn khoá: …. (sử dụng ô Combox)

Chọn lớp: …. (Sử dụng ô Combox)

Chọn học kỳ: …. Năm học: ………

Chức năng [OK]

Khi chọn [OK] danh sách môn học của

lớp/khoá/học kỳ-năm học đã chọn sẽ hiển thị

trong ô A2

A3 – Chi tiết về môn học được chọn

A2 – Danh sách môn học của lớp/khoá/học kỳ-

năm học đã chọn (sử dụng GRID)

Khi chọn 1 dòng (1 môn học) thì thông tin chi

tiết về môn học này sẽ hiển thị trong ô A3

Các chức năng: Thêm, Sửa, Xoá … (1 môn

học)

o Cập nhật điểm thi kết thúc môn

Giao diện này có dạng như sau:

A1

Chọn khoá: …. (sử dụng ô Combox)

Chọn lớp: …. (Sử dụng ô Combox)

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Chọn học kỳ: …. Năm học: ………

Chọn môn học: ………….(sử dụng ô Combox)

Thi lần: ………..(1 – thi lần đầu, 2 thi lại lần 1, 3 – thi lại lần 2)

Chức năng [OK]

Khi chọn [OK] danh sách “lớp-môn học” đã chọn sẽ hiển thị trong ô A2

A2 – Danh sách “lớp-môn học” đã chọn (Sử dụng GRID)

(nếu là thi lần 1 – cho phép nhập vào cột điểm 1, lần 2 cho phép nhập vào cột điểm 2, lần 3 cho

phép nhập vào cột điểm 3)

Lưu ý: Danh sách “lớp-môn học” do chương trình tự động sinh ra, cần lưu ý khi thiết kế để tránh

sinh ra nhiều lần.

o In danh sách lớp

Giao diện này có dạng như sau:

A1

Chọn khoá: …. (sử dụng ô Combox)

Chọn lớp: …. (Sử dụng ô Combox)

Chức năng: Xem, In, Thoát

(chức năng Xem cho phép xem report “danh sách lớp” trên màn hình

chức năng In cho phép đưa report “danh sách lớp” ra máy in)

Report “danh sách lớp” có dạng như sau:

Học viện KTQS

Phòng Đào tạo

Danh sách lớp

Lớp: ……………………, Khoá: …………………

STT Mã SV Họ tên Ngày sinh Hộ khẩu Ghi chú

… … … … … …

o In danh sách thi

Giao diện này có dạng như sau:

A1

Chọn khoá: …. (sử dụng ô Combox)

Chọn lớp: …. (Sử dụng ô Combox)

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Chọn học kỳ: …. Năm học: ………

Chọn môn học: ………….(sử dụng ô Combox)

Thi lần: ………..(1 – thi lần đầu, 2 thi lại lần 1, 3 – thi lại lần 2)

Chức năng: Xem, In, Thoát

(chức năng Xem cho phép xem report “danh sách thi” trên màn hình

chức năng In cho phép đưa report “danh sách thi” ra máy in)

Report “Danh sách thi” có dạng như sau:

Học viện KTQS

Phòng Đào tạo Danh sách thi

Lớp: ………………….., khoá:……………………

Môn học: …………………….Học kỳ: .... năm học:………

Giáo viên: …………………….., ngày thi:………………..

STT Mã SV Họ tên Ngày sinh Đề số Kí nhận Ghi chú

… … … … … … …

Giáo viên coi thi (Ký và ghi rõ họ tên)

o In phiếu điểm

Giao diện này có dạng như sau:

A1

Chọn khoá: …. (sử dụng ô Combox)

Chọn lớp: …. (Sử dụng ô Combox)

Chọn học kỳ: …. Năm học: ………

Chọn môn học: ………….(sử dụng ô Combox)

Thi lần: ………..(1 – thi lần đầu, 2 thi lại lần 1, 3 – thi lại lần 2)

Chức năng: Xem, In, Thoát

(chức năng Xem cho phép xem report “phiếu điểm” trên màn hình

chức năng In cho phép đưa report “phiếu điểm” ra máy in)

Report “phiếu điểm” có dạng như sau:

Học viện KTQS Phòng Đào tạo

Phiếu điểm Lớp: ………………….., khoá:……………………

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Môn học: …………………….Học kỳ: .... năm học:………

Giáo viên: …………………….., ngày thi:………………..

STT Mã SV Họ tên Ngày sinh Đề số Điểm Ghi chú

… … … … … … …

Giáo viên chấm thi (Ký và ghi rõ họ tên)

o In tổng kết kết quả học kỳ

Giao diện này có dạng như sau:

A1

Chọn khoá: …. (sử dụng ô Combox)

Chọn lớp: …. (Sử dụng ô Combox)

Chọn học kỳ: …. Năm học: ………

Chức năng: Xem, In, Thoát

(chức năng Xem cho phép xem report “Tổng kết học kỳ” trên màn hình

chức năng In cho phép đưa report “Tổng kết học kỳ” ra máy in)

Report “Tổng kết học kỳ” có dạng như sau:

Học viện KTQS Phòng Đào tạo

Tổng kết kết quả học kỳ Học kỳ: .... năm học:………

Lớp: ………………….., khoá:……………………

STT Mã SV Họ tên Ngày sinh Điểm TBC Xếp loại Ghi chú

… … … … … … …

Xếp loại theo điểm trung bình chung được tính như sau:

Điểm TBC>=9 -> Xuất sắc; Điểm TBC>=8 -> Giỏi; Điểm TBC>=7 -> Khá; Điểm TBC>=6 ->

Trung bình khá; Điểm TBC>=5 -> Trung bình; Điểm TBC<9 -> Không đạt

o In tổng kết kết quả năm học

Giao diện này có dạng như sau:

A1

Chọn khoá: …. (sử dụng ô Combox)

Chọn lớp: …. (Sử dụng ô Combox)

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Chọn Năm học: ………

Chức năng: Xem, In, Thoát

(chức năng Xem cho phép xem report “Tổng kết năm học” trên màn hình

chức năng In cho phép đưa report “Tổng kết năm học” ra máy in)

Report “Tổng kết năm học” có dạng như sau:

Học viện KTQS Phòng Đào tạo

Tổng kết kết quả năm học Năm học:………

Lớp: ………………….., khoá:……………………

STT Mã SV Họ tên Ngày sinh Điểm TBC Xếp loại Ghi chú

… … … … … … …

Xếp loại theo điểm trung bình chung được tính như sau:

Điểm TBC>=9 -> Xuất sắc; Điểm TBC>=8 -> Giỏi; Điểm TBC>=7 -> Khá; Điểm TBC>=6 ->

Trung bình khá; Điểm TBC>=5 -> Trung bình; Điểm TBC<9 -> Không đạt

o In tổng kết kết quả toàn khoá

Giao diện này có dạng như sau:

A1

Chọn khoá: …. (sử dụng ô Combox)

Chọn lớp: …. (Sử dụng ô Combox)

Chức năng: Xem, In, Thoát

(chức năng Xem cho phép xem report “Tổng kết khoá học” trên màn hình

chức năng In cho phép đưa report “Tổng kết khoá học” ra máy in)

Report “Tổng kết năm học” có dạng như sau:

Học viện KTQS

Phòng Đào tạo Tổng kết kết quả khoá học

Lớp: ………………….., khoá:……………………

STT Mã SV Họ tên Ngày sinh Điểm TBC Xếp loại Ghi chú

… … … … … … …

Xếp loại theo điểm trung bình chung được tính như sau:

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Điểm TBC>=9 -> Xuất sắc; Điểm TBC>=8 -> Giỏi; Điểm TBC>=7 -> Khá; Điểm TBC>=6 ->

Trung bình khá; Điểm TBC>=5 -> Trung bình; Điểm TBC<9 -> Không đạt

o In bảng điểm học kỳ

Giao diện này có dạng như sau:

A1

Chọn khoá: …. (sử dụng ô Combox)

Chọn lớp: …. (Sử dụng ô Combox)

Chọn học kỳ: …. Năm học: ………

Chức năng: Xem, In, Thoát

(chức năng Xem cho phép xem report “Bảng điểm học kỳ” trên màn hình

chức năng In cho phép đưa report “Bảng điểm học kỳ” ra máy in)

Report “Bảng điểm học kỳ” có dạng như sau:

Học viện KTQS

Phòng Đào tạo Bảng điểm học kỳ

Học kỳ: .... năm học:………

Lớp: ………………….., khoá:……………………

STT Mã SV Họ tên Môn 1 Môn 2 … … … … TBC

… … … … … … … … … …

o In bảng điểm cá nhân

Giao diện này có dạng như sau:

A1

Chọn khoá: …. (sử dụng ô Combox)

Chọn lớp: …. (Sử dụng ô Combox)

Chọn sinh viên: ……………………(sử dụng Combox)

Chức năng: Xem, In, Thoát

(chức năng Xem cho phép xem report “Bảng điểm cá nhân” trên màn hình

chức năng In cho phép đưa report “Bảng điểm cá nhân” ra máy in)

Report “Bảng điểm cá nhân” có dạng như sau:

Học viện KTQS

Phòng Đào tạo Bảng điểm cá nhân

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Họ tên: ……………………….., Ngày sinh

Loại hình đào tạo: ……………………, Ngành:…………………., Khoá học: ………..

STT Mã môn Tên

môn

Số

ĐVHT

Điểm 1 Điểm 2 Điểm 3 Ghi chú

Điểm trung bình chung toàn khoá: ………….

Xếp loại: ……………………….

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Bài 2 - Tổng quan về visual foxpro I. Cài đặt visual foxpro

Công cụ Visual Foxpro 6.0 là một thành phần trong bộ Visual Studio của Microsoft. Do đó cần

cài đặt bộ Visual Studio và lựa chọn thành phần Visual Foxpro.

[Start menu -> Visual Foxpro một thành phần của bộ Visual Studio]

Bộ Visual Foxpro 7.0 (8.0, 9.0) được phát triển độc lập do đó có thể cài đặt riêng.

Việc cài đặt các công cụ này tương đối đơn giản và giống với các phần mềm khác. Do đó việc

cài đặt công cụ này các bạn tự tham khảo.

II. Một số thành phần trong giao diện của Visual foxpro

[Chạy Foxpro -> Giao diện chính của Visual Foxpro 6.0]

Cửa sổ lệnh (Command Windows)

Cho phép thực hiện các câu lệnh (Command).

Ví dụ: Lệnh Create, Use, Browse ...

[Chạy Foxpro -> Cửa sổ lệnh]

Các menu của Foxpro (Tham khảo tài liệu)

Các Tools bar của Foxpro (tham khảo tài liệu)

Tạo mới một Project

Việc phát triển một ứng dụng trong Visual Foxpro thường được tổ chức thành một Project - Dự

án.

Việc tạo mới một Project có thể được thực hiện bằng 1 trong hai cách sau:

Cách 1: Trong cửa sổ lệnh gõ vào lệnh CREATE PROJECT <Tên Project>

Cách 2: Vào menu File ->Chọn New, khi đó giao diện New của Visual Foxpro xuất hiện như

hình:

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Tiếp đến chọn File type = Project (Mặc định) rồi chọn New file để tạo một Project trống hoặc

Wizard để tạo một Project theo một trong các mẫu thiết kế sẵn của Microsoft, ở đây chúng ta

sẽ chọn New file. Khi chọn New file hộp thoại Create hiển thị cho phép nhập vào tên project

cần tạo, tiếp chọn chọn Save.

Kết thúc việc tạo mới cửa sổ Project Manager xuất hiện (xem phần tiếp theo) cho phép quản lý,

làm việc với Project này.

Cửa sổ Project (Project Manager)

[Chạy Foxpro -> Project Manager]

Các thành phần chính trong Project Manager (Giới thiệu chi tiết các thành phần này)

+ Data: Database, Free Tables, Queries

+ Documents: Forms, Reports, Labels.

+ Class

+ Code: Program, API Libraries, Applications

+ Other: Menu, Text file, Other file

III. Những nét đặc trung cơ bản

1. Công cụ quản lý ứng dụng - Project manager đem lại một cách nhìn tổng quan, hiệu quả

trong việc phát triển một ứng dụng nào đó.

2. Công cụ trực quan cho phép thiết kế giao diện được nhanh chóng, đẹp.

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

3. Công cụ Report Designer tiện dụng, cho phép tạo ra nhiều report đa dạng.

4. Công cụ tool tip trong Visual Foxpro 7.0 trợ giúp nhanh và hữu hiệu với việc lập trình.

Bài tập

1. Cài đặt Visual Foxpro 6.0 hoặc 7.0

2. Tạo thư mục QLDIEM trên ổ đĩa C:

3. Tạo shortcut trên Destop đến chương trình Visual Foxpro và đặt lại thuộc tính [Start in] vào

thư mục C:\QLDIEM (như hình vẽ).

4. Tạo Project QLDIEM trống (Project sẽ được lưu trong thư mục C:\QLDIEM).

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Bài 3 - Các thành phần cơ bản của ngôn ngữ I. từ khóa, kí hiệu, LệnH

Từ khóa (Key Word): Là các từ mà Visual Foxpro đã sử dụng cho một mục đích nào đó. Và

người dùng không được phép đặt tên trùng với từ khóa. Tham khảo tài liệu về tất cả các khóa

của Visual Foxpro. Trong Foxpro từ khoá có thể không cần viết đầy đủ mà chỉ cần viêt 4 ký tự

đầu của từ khoá đó, ví dụ từ khoá CREATE có thể chỉ cần viết Crea (Visual Foxpro không

phân biệt chữ hoa, chữ thường).

Kí hiệu comment: Đối với phần cuối 1 dòng dùng kí tự &&

Với cả dòng dùng ký tự * hoặc &&

Lệnh của Visual Foxpro

Trong Visual Foxpro có hia loại câu lệnh: 1. Các câu lệnh có thể thực hiện trực tiếp từ cửa sổ

lệnh (Command Windows) - gọi là Lệnh trực tiếp , 2. Các lệnh chỉ thực hiện trong chương

trình. Các lệnh trực tiếp cũng thực hiện được trong chương trình.

Cấu trúc lệnh trực tiếp của Foxpro có dạng:

<Động từ> [Các tham số]

Trong đó: <Động từ> - Động từ tiếng anh (tương ứng với công việc cần làm); [Tham số] - Các

tham số trong lệnh của fox có thể có, có thể không, hoặc có thể có nhiều; trường hợp có nhiều

tham số thì thứ tự các tham số này có thể không quan trọng.

Một số lệnh trực tiếp của Visual Foxpro

1. Lệnh ?, ?? -> In kết quả lên màn hình

2. QUIT -> Thoát khỏi foxpro

3. CLEAR -> Xoá màn hình

4. SET DEFAULT TO <Path> -> Thiết lập đường dẫn mặc định

5. SET DATE <FRENCH | AMERICA> -> Thiết lập ngày tháng

II. kiểu dữ liệu

Kiểu dữ liệu là thuộc tính gắn liền với biến hay trường trong các bảng. Các kiểu dữ liệu trong

Visual Foxpro gồm có: Character (Xâu kí tự), Date và DateTime (Ngày, giờ), Currency (Tiền tệ),

Logic, Numeric (Số); các kiểu chỉ dùng cho các trường của bảng gồm có: Memo (Văn bản),

General (Tổng hợp - ảnh).

1. Character

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Là xâu ký tự a->z, A->Z, 0 ->9 và một số các ký tự khác như +.-,*, /, = ….

Hằng xâu kí tự: Đặt trong dấu “”, ‘’, hoặc []; ví dụ “Hà nội”, ‘Việt nam’ hoặc [Visual Fox]

Các phép toán:

+: Nối chuổi 2 vào chuổi 1.

-: Nối 2 chuỗi nhưng huỷ bỏ các khoảng trắng trước và sau mỗi chuỗi.

$: Chứa ở trong (st1$st2 – st1 có trong st2 ->TRUE, ngược lại ->FALSE)

2. Date and DateTime

Kiểu ngày, giờ dùng 8 bytes để lưu trữ.

Hằng Date và DateTime: {^yyyy-mm-dd [hh[:mm[:ss]][alp]]}; ví dụ: {^2005-12-10}, {^2005-12-

10 10:20:25}

Các phép toán:

Ngày + Số = Ngày

Số + Ngày = Ngày

Ngày - Số = Ngày

Ngày - Ngày = Số

Tương tự cho ngày giờ

3. Currency

Kiểu tiền tệ (thực chất là kiểu số và thêm kí tự tiền $ hoặc ký tự bất kỳ khác) vào số đó. Kiểu này

thường ít được sử dụng.

4. Logic

Kiểu logíc, tập giá trị là Đúng hoặc Sai

Hằng Logic: .T. ->TRUE đúng (hoặc .t.); .F. ->FALSE sai (hoặc .f.)

Các phép toán: NOT, AND, OR.

5. Numeric

Kiểu số, dùng tối đa 20 byte.

Hằng số: 10, 20, 15.7 ...

Các phép toán: +, - , *, /, ^ (mũ), % (chia lấy phần dư)

6. Memo

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com

Kiểu kí ức, dùng 4 byte để ánh xạ đến 1 file khác có phần mở rộng là fpt. Kiểu này cho phép lưu 1

văn bản rất dài.

7. General

Kiểu kí ức, dùng 4 byte để ánh xạ đến 1 file khác có phần mở rộng là fpt. Kiểu này cho phép lưu 1

đối tượng bất kỳ như file văn bản, file word, file excel, file ảnh và thường được sử dụng để lưu trữ

file ảnh.

III. Biến

Có 3 loại biến: Biến do người sử dụng tự định nghĩa: Biến là trường của bảng đang mở; hoặc Biến

hệ thống (do Visual Foxpro tạo ra).

Đối với các biến do người sử dụng định nghĩa:

Là đối tượng lưu trữ dữ liệu trong bộ nhớ, được xác định qua tên biến, kiểu và phạm vi tác

động của biến

o Tên biến: Dài không quá 254 kí tự, có thể dùng các chữ cáI, chữ số, dấu gạch dưới (_)

nhưng không được bắt đầu bằng chữ số (và không được trùng với từ khoá).

o Kiểu: Các kiểu dữ liệu kể trên trừ kiểu General. Kiểu của biến trong Visual Foxpro có thể

thay đổi.

o Phạm vi tác động của biến phụ thuộc vào vị trí mà nó được khai báo. Ví dụ

Chương trình chính

Biến A

Chương trình Con 1

Biến B

Gọi chương trình con 2

Chương trình con 2

Biến C

Trong ví dụ trên: Biến A có tác động trong toán bộ chương trình chính, chương trình con 1 và

chương trình con 2; Biến C chỉ có tác động trong chương trình con 2; Biến B có tác động trong

chương trình con 1, nếu trong chương trình con 1 có lời gọi chương trình con 2 thì biến B có thể

Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com