Giáo trình Bài tập Visual Basic

Bước 1:Tạo thưmụcBasic\Bt1-1. Tạo một dựánmới kiểu Standard EXE, lưu vào

trong thưmục trên.

Bước 2:Thêm2 List Box và một Button vào form (hình 1). Nhấn đúp lên form đểmở

ra cửa sổCode, nhập các đoạn mãsau trong sựkiện Form_Load:

Form1.List1.AddItem “Thing 3”

Form1.List1.AddItem “Thing 2”

Form1.List1.AddItem “Thing 1”

pdf114 trang | Chuyên mục: Visual Basic 6.0 | Chia sẻ: dkS00TYs | Lượt xem: 3072 | Lượt tải: 1download
Tóm tắt nội dung Giáo trình Bài tập Visual Basic, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
ệu cho bảng THangHoa (hình dưới). 
Ở đây thay vì hiển thị MaLoai, ta lại hiển thị TenLoai: 
 Hình VII.8: Form nhập liệu 
2) Sử dụng DataEnviroment, thiết kế Form nhập liệu cho bảng TNhanVien. 
3) Sử dụng DataEnviroment, thiết kế Form cho phép nhập (sửa, xóa) thông tin về một 
phát sinh về một mặt hàng nào đó trong ngày. Lưu ý: Trường STT là kiểu 
AutoNumber (Access), Ngay: lấy ngày hệ thống (hàm Now). 
Trang 104 
TT. Visual Basic 
Trang 105 
Chương 8 THIẾT LẬP BÁO CÁO VÀ XUẤT 
THÔNG TIN 
Mục tiêu: 
 Chương này nhằm giới thiệu cho sinh viên cách thức để tạo báo biểu, 
thành phần không thể thiếu trong các ứng dụng cơ sở dữ liệu. 
Học xong chương này, sinh viên phải nắm bắt được các vấn đề sau: 
 Sử dụng Data Report để tạo các loại báo biểu sau: 
 - Báo cáo dạng bình thường. 
 - Báo cáo có phân nhóm dữ liệu. 
 - Báo cáo dạng phân cấp. 
Kiến thức có liên quan: 
 - Giáo trình Visual Basic, chương 13. 
Tài liệu tham khảo: 
- Visual Basic 6.0 và Lập trình cơ sở dữ liệu - Chương 21, trang 636 
- Nguyễn Ngọc Mai (chủ biên) – Nhà xuất bản Giáo dục - 2000. 
- Tự học Lập trình cơ sở dữ liệu với Visual Basic 6.0 trong 21 ngày 
(T1) - Chương 5, trang 183 - Nguyễn Đình Tê (chủ biên) - Nhà xuất bản Giáo 
dục - 2001. 
TT. Visual Basic 
I. HƯỚNG DẪN 
TẠO KẾT NỐI VỚI CƠ SỞ DỮ LIỆU 
Bước 1: Tạo một dự án trong thư mục Basic\Bt8-1. 
Bước 2: Để tạo một report, ta phải xác định dữ liệu nào sẽ sử dụng trong report, đó là 
nhiệm vụ của Data Environment. 
 Ta chèn một Data Environment vào dự án nhờ việc chọn Project\More ActiveX 
Designer\Data Environment. 
 Ta sử dụng Data Environment để lưu trữ các tập dữ liệu sẽ dùng trong report. 
Bước 3: Nhấp đúp vào trình thiết kế Data Environmenr trong cửa sổ Project Explorer 
để mở trình thiết kế. Sau đó nhấp vào Connection1 và thay đổi thuộc tính Name của nó 
thành cnHangHoa; nhấp chuột phải vào cnHangHoa và chọn mục Properties, hộp thoại 
Properties hiện ra: 
Trang 106 
Hình VIII.1: Tạo nối kết đến CSDL 
Bước 4: Ta sẽ tạo kết nối đến cơ sở dữ liệu DBHH.MDB có sẵn trên máy. Do đó ta 
nhấp nút Next sau khi chọn Microsoft OLEDB Provider for ODBC. Trong tùy chọn 
này ta chọn mục Use data source name; rồi chọn nguồn dữ liệu DBHH đã tạo ra từ 
trước đó. 
Bước 5: Nhấp nút Test Connection để kiểm tra xem nối kết có thành công hay không? 
TẠO ĐỐI TƯỢNG COMMAND 
Bước 6: Sau khi đã xác định Data Environment Connection, ta có thể xác định 
Command, Command lưu kết nối tới bảng dữ liệu và những trường sẽ được dùng trong 
TT. Visual Basic 
report. Nhấp nút phải chuột vào Command trong cửa sổ thiết kế Data Environment và 
chọn mục Add Command, một hộp thoại xuất hiện như hình bên dưới. 
Bước 7: Thiết lập thuộc tính Name của Command là comHangHoa, chọn Connection 
là cnHangHoa. Trong phần DataBase Object chọn kiểu lấy dữ liệu là Table; sau đó 
trong ComboBox Object Name chọn Table THANGHOA. 
 Hình VIII.2: Đối tượng Command 
XÂY DỰNG MỘT BÁO CÁO (REPORT) ĐƠN GIẢN 
Bước 8: Bây giờ ta sẽ tạo một báo cáo để hiển thị dữ liệu đã xác định trong Data 
Environment. Để làm điều này, nhấp phải chuột vào Project trong cửa sổ Project 
Explorer; rồi chọn Add\Data Report; sau đó đặt tên của report này lại là drHangHoa, 
DataSource: DataEnvironment1, DataMember: cnHangHoa (trong cửa sổ Properties). 
Bước kế tiếp ta đóng tất cả các cửa sổ ngoại trừ 2 cửa sổ DataEnvironment và 
drHangHoa. 
Bước 9: Bước này chỉ đơn giản là nhấp chọn và kéo các trường từ Data Environment, 
mục command comHangHoa vào Data Report. Đối với report này, nhấp chọn và kéo 
các trường tên MaHang, TenHang, DVTinh, MaLoai. Khi thực hiện xong, màn hình 
tương tự như hình dưới: 
Trang 107 
TT. Visual Basic 
Hình VIII.3: Thiết kế Report 
Ở đây, ta chỉ kéo chọn các trường vào mục Detail của report, còn các tiêu đề cột 
(tương ứng với các trường); ta đặt chúng trong phần Page Header của report. Có một 
ghi nhận rằng, khi ta kéo thả các trường vào trong phần Detail của report, một report 
Label chứa tên trường và một report TextBox cho phép nhập liệu xuất hiện trong phần 
Detail. Do đó, trong phần Detail ta chỉ giữ lại TextBox, còn report Label ta chuyển 
chúng lên phần Page Header. Vì vậy coi như ta đã thiết lập xong phần hiển thị của 
report. Vấn đề còn lại chỉ là trang trí sao cho đạt yêu cầu về mặt thẩm mỹ. 
CHÈN CÁC TIÊU ĐỀ ĐẦU TRANG VÀ CUỐI TRANG 
Bước 10: Tất cả các report hoàn chỉnh đều phải có một số đặc điểm nào đó; nhất là 
report phải có một tên, số trang của report được hiển thị rõ ràng. Các mục này đặt tốt 
nhất là trong phần Report Header và Report Footer. 
 Ta cần phải thêm Report Header và Report Footer vào trong report của mình; 
đơn giản chỉ cần nhấp chuột phải vào report và chọn Show Report Header | Footer. Hai 
phần mới này sẽ được tạo ra. 
Bước 11: Thêm một report Label vào phần Header của report; sau đó thay đổi thuộc 
tính Caption của nó thành Chi tiết hàng hóa các loại. Ở đây có thể chọn Font chữ với 
kích thước lớn (VD: 20) để tiêu đề của report được hiển thị lớn. 
Trang 108 
TT. Visual Basic 
Bước 12: Nhấp chuột phải vào mục report Footer và chọn tùy chọn Insert Control | 
Current Page Number để chèn số trang vào; tiếp đến chọn Insert Control | Total 
Number of Pages để chèn tổng số trang của report. 
Bước 13: Đến đây, phần thiết kế report coi như hoàn tất; ta lưu report lại. 
Bước 14: Tạo giao diện cho chương trình như sau: 
Hình VIII.4: Giao diện chính 
Bước 15: Khi chọn Chi tiết hàng hóa, report vừa thực hiện sẽ được hiển thị; do đó ta 
xử lý sự kiện này như sau: 
Private Sub mnuChiTiet_Click() 
 drHangHoa.Show 
End Sub 
Bước 16: Lưu dự án và chạy chương trình. 
TẠO REPORT BẰNG CÂU LỆNH SQL 
Bước 17: Data Report cho phép ta tạo các report bằng cách sử dụng các câu lệnh SQL 
như là nền tảng của đối tượng Command. Trong phần này ta sẽ sử dụng câu lệnh 
SELECT để lấy dữ liệu từ các bảng TPHATSINH, THANGHOA, TLOAIHANG và 
chọn những trường sau: PhatSinh.SOTT, TPhatSinh.NGAY, TPhatSinh.LOAI, 
TPhatSinh.FIEU, TPhatSinh.HTEN, TPhatSinh.SOLG, TPhatSinh.DGIA, 
THangHoa.TENHANG, TLoaiHang.TENLOAI. 
Bước 18: Chọn mục Data Enviroment1 trong Project Explorer, sau đó nhấp chuột phải 
vào đối tượng cnHangHoa, chọn Add Command. Ta điền vào các thuộc tính như hình 
dưới: 
Trang 109 
TT. Visual Basic 
Hình VIII.5: Command là SQL 
Bước 19: Trong mục Source of Data, thay vì chọn DatabaseObject như bài trước, ở 
đây ta chọn SQL Statement và nhập câu SQL tương ứng vào, rồi chọn OK. 
Bước 20: Thêm một DataReport vào dự án với Name: drHHPS, DataSource: 
DataEnvironment, DataMember: comHHPS. Sau đó kéo thả các trường tương ứng vào 
report rồi trang trí lại chúng. 
Bước 21: Lưu report lại. Ta sẽ gọi thực thi report này trong phần xử lý tình huống khi 
chọn mục Hàng Hóa Phát Sinh của menu. 
Private Sub mnuHHPS_Click() 
 drHHPS.Show 
End Sub 
Bước 22: Lưu dự án và chạy chương trình. 
NHÓM DỮ LIỆU 
Bước 23: Ta có thể nhóm dữ liệu lại theo một nội dung nào đó. Ở đây, trong 
DataEnvironment1, thêm vào một đối tượng Command mới tên comHHNgay. Trong 
phần này ta sẽ lấy dữ liệu từ các bảng TPhatSinh, ThangHoa, TLoaiHang và lấy ra các 
trường TPhatSinh.SOTT, TPhatSinh.NGAY, TPhatSinh.LOAI, TPhatSinh.FIEU, 
TPhatSinh.HTEN, TPhatSinh.SOLG, TPhatSinh.DGIA, THangHoa.TENHANG, 
TLoaiHang.TENLOAI. 
Bước 24: Ta sẽ nhóm dữ liệu trên lại theo từng ngày, do đó ta làm theo các bước như 
trong hình dưới: 
Trang 110 
TT. Visual Basic 
Hình VIII.6: Nhóm dữ liệu 
 Chọn Grouping, chọn trường để nhóm lại là Ngay; sau đó nhấp OK. 
Bước 25: Trong phần Aggregates, ta điền thông tin như hình: 
Hình VIII.8: Hàm thao tác trên nhóm 
 Ở đây ta sử dụng các hàm tập hợp để tính tổng số lượng bán được trong ngày. 
Do đó ta chọn mục Aggregate, chọn mục thích hợp và nhấp Add để thêm vào một hàm 
tính trên nhóm. 
Bước 25: Chèn một DataReport mới vào tên drHHNgay, DataSource: 
DataEnvironment1, DataMember: comHHNgay_Grouping. Sau đó nhấp chuột phải 
vào Report và chọn mục Show Group Header | Footer. 
Bước 26: Ta kéo trường ngày trong phần Sumary Fields in comHHNgay_Grouping 
vào phần Group Header. Trong phần Detail ta kéo thả các trường khác. Còn phần 
Group_Header, ta lại kéo TongSolg và đặt vào. 
Trang 111 
TT. Visual Basic 
Hình VIII.9: Thiết kế Report 
Bước 27: Lưu report lại. Ta sẽ gọi report hiển thị khi nhấp vào mục Phat sinh theo 
ngay trên menu: 
Private Sub mnuPsngay_Click() 
 drHHNgay.Show 
End Sub 
Bước 28: Lưu dự án lại, chạy chương trình, ta có thể in thử ra giấy. 
Bước 29: Còn một report nữa ta sẽ thực hiện với điều kiện là tìm các phát sinh hàng 
hóa theo từng nhân viên (tương tự như ở report trên) và ta sẽ gọi thực thi ở mục menu 
còn lại. 
Bước 30: Xử lý sự kiện mnu_Thoat: 
Private Sub mnuThoat_Click() 
 End 
End Sub 
Trang 112 
TT. Visual Basic 
II. BÀI TẬP TỰ LÀM 
1) Tạo báo cáo (Report) cho phép in ra giấy thông tin của các hàng hóa, các thông 
tin này bao gồm: Mã hàng hóa, tên hàng hóa, đơn vị tính, tên loại hàng tương 
ứng. 
2) Tạo báo cáo (Report) cho phép in ra giấy thông tin chi tiết về các phát sinh theo 
từng ngày, các thông tin này bao gồm: Ngày lập, loại, Fieu, họ tên khách hàng, lý 
do, số lượng, đơn giá, thành tiền (với Thành tiền = Số lượng * Đơn giá), tên hàng 
hóa và họ tên nhân viên tương ứng. (Hình VIII.10) 
Hình VIII.10: Phát sinh theo ngày 
3) Tạo báo cáo (Report) cho phép in ra giấy thông tin chi tiết về các phát sinh theo 
từng nhân viên, các thông tin này bao gồm: Ngày lập, loại, Fieu, họ tên khách 
hàng, lý do, thành tiền (với Thành tiền = Số lượng * Đơn giá), tên hàng hóa và 
loại hàng tương ứng. (Hình dưới) 
Trang 113 
TT. Visual Basic 
Hình VIII.11: Phát sinh theo nhân viên 
LỜI KẾT 
Chương Thiết lập báo cáo cũng là chương kết thúc của giáo 
trình TT. Visual Basic. Tuy nhiên lập trình sự kiện và lập trình cơ sở 
dữ liệu với VB chỉ là một phần trong những khả năng mà VB mang 
lại. Hy vọng chúng tôi sẽ gặp lại bạn đọc trong những chuyên đề 
khác của VB. 
Trang 114 

File đính kèm:

  • pdfbai-tap-vb-12009930581144-5.pdf
Tài liệu liên quan