Dùng Wizard: đẩy bảng CHITIETHD, sau đó đẩy các vùng liên quan (Single Form) Tạo các nút lệnh bằng Macro: Đầu, Trước, Sau, Cuối, Thêm, Lưu, Xóa, Thoát.. - Đẩy dữ liệu.[r]
(1)BÀI THỰC HÀNH SỐ (NC) (Report)
1 Đưa danh sách mặt hàng theo mẫu sau:
2 In bảng tổng hợp hoá đơn theo ngày
(2)4 Cách tạo Form In Report
1 Tạo Form in danh sách bán hàng theo tháng chọn từ Combo.
Hướng dẫn:
B1 Tạo Form Có thuộc tính :
Navigation Button: No; Select Record: No; Scrol bar: No; Dividing Line: No.
B2 Vẽ Combo lấy liệu từ danh sách gồm: 1,2,3,4,5,6,7,8,9,10,11,12 Name: Thang B3 Lưu với tên Form1
B4 Vẽ Command Button: Chọn Build event \ Macro Builder
Ation Agument
Open Report Name: danh sách bán hàng View: Print Prevew
Condition: month(ngaylaphd)= Forms![Form1]![Thang]
2 Tạo Form in danh sách bán hàng theo tháng chọn từ Option 1; 2 3 4 5 6 7 9 10 11 12
- Tạo Form: Có thuộc tính : có thuộc tính
- Vẽ Option Group gồm option: 1,2,3,4,5,6,7,8,9,10,11,12 Name: Chon - Lưu với tên Form2
- Vẽ Command Button: Chọn Build event \ Macro Builder
Ation Agument
Open Report Name: danh sách bán hàng View: Print Prevew
Condition: month(ngaylaphd)= Forms![Form2]![Chon] Tương tự ta thay đổi điều kiện:
3 Tạo Form in theo Quý:
In theo quý: 1 từ t1->3; ; 2 từ t4->t6; 3 từ t7->9 4 từ t10->t12
Month(NgaylapHD) between Forms![Form3]![Quy]*3-2 and Forms![Form3]! [Quy]*3
Trong đó: Form tên Form in; Quy tên Option Combo Tạo Form in theo năm:
In theo năm: chọn từ Combo gồm danh sách năm: 2011, 2012, 2013, 2014, 2015 Year(NgaylapHD)= Forms![Form4]![Nam]
Nam tên Combo
5 Tạo Form in danh sách theo HD In theo Mã hóa đơn
MaHD= Forms![Form5]![Ma] Ma tên Com bo
(3)BÀI THỰC HÀNH SỐ (NC) (MACRO)
1 Tạo Form kết hợp điều kiện
Tạo Macro:
Condition Action Agument Chon=1 Open
Report
Name: Danhsachbanhang View: Print preview
Condition: month(ngaylaphd)= Forms![Formindk]! [Thang]
Chon=2 Open Report
Name: Danhsachbanhang View: Print preview
Condition: month(ngaylaphd) Between Forms!
[Formindk]![Quy]*3-2 and Forms![Formindk]![Quy ]*3 Chon=3 OpenReport Name: Danhsachbanhang
View: Print preview
Condition: Year(ngaylaphd)= Forms![Formindk]![Nam] 2 Tạo Form tìm kiếm:
Hướng dẫn:
B1 Tạo Form Wizard kiểu Single Form lưu với tên TIMKIEM có thuộc tính sau: Option Group: Name: Chon
Combo box: Name: Thang Option 1:
(4)Navigation Button: No; Select Record: No; Scrol bar:Vertical only; Dividing Line: No.
Change to :Textbox : chuyển đối tượng Combo sang Text Locked: Yes: Khóa đối tượng không cho chỉnh sửa liệu.
B2 Vẽ đối tượng nhập điều kiện: Option Group: Name Chon; Option: Tên KH điện thoại; Text box: Name KH DT;
B3: Tạo Macro
Command Condition Action Argument
Tìm Chon=1
Chon=2
Aplly Filter Aplly Filter
Condition: TenKH Like “*”&[Form] [TIMKIEM].[KH]
Condition: Dienthoai=[Form] [TIMKIEM].[DT]
Tất X ShowAllRecords
Thoát X Close Type: Form
Name: TIMKIEM Prompt: Yes 3 Tạo Form lọc liệu theo hóa đơn năm
4 Tạo Form Tìm kiếm sau:
(5)(Tạo Form nhập liệu) 1 Tạp Form nhập liệu cho bảng CHITIETHD
Dùng Wizard: đẩy bảng CHITIETHD, sau đẩy vùng liên quan (Single Form) Tạo nút lệnh Macro: Đầu, Trước, Sau, Cuối, Thêm, Lưu, Xóa, Thốt
- Đẩy liệu
- Di chuyển đối tượng hiển thị (Không nhập liệu) sang bên phải, Locked: Yes
- Thay đổi thuộc tính cho Form: Navigation Button: No; Selected Record: No; Scroll Bar: Neight; Dividing Line: No
- Tạo nút
Nút Condition Action Argument
Đầu GotoRecord First
Trước [CurrentRecord]=1 [CurrentRecord]>1
Msgbox GotoRecord
Hết liệu Previous Sau CurrentRecord<Recordset.RecordCount
CurrentRecord=Recordset.RecordCount GotoRecordMsgBox NextMessga: Hết liệu
Type: Information Title: Cảnh báo
Thêm GotoRecord New
Lưu DCount("MaHD","CHITIETHD", "MaHD='" & [MaHD] & "'")>0 DCount("MaHD","CHITIETHD", "MaHD='" & [MaHD] & "'")=0
Msgbox RunCommand
Trùng Khóa Save Record SaveRecord
Hủy Runcommand Undo
Xóa Msgbox(“Bạn có chắn xóa
(6)Thốt Msgbox(“Bạn có chắn
khơng?,36, “Thơng báo”)=6 Close Type: FormName: NhapDL_Chitiet Save: Yes
2 Tạo Form 1-n nhập liệu cho hai bảng HOADON CHITIETHD:
Đẩy bảng HOADON, Đẩy bảng CHITIETHD Hướng dẫn:
Mở Form Con
Vào thuộc tính Record Source: mở Query Form con: THANHTIEN: SOLUONG*DONGIA
Vẽ Textbox: Tổng tiền =Sum(THANHTIEN) ; Name: Text13 Tại Form mẹ:
Vẽ Textbox: Tổng tiền = CHITIETHD_Subform.Form!Text13 Format: #,#0 “đồng”
Các nút lệnh điều khiển, nhập tương tự Form làm Chú ý: Khóa Text hiển thị liệu (Không nhập)
Như: TenKH, Diachi, Dienthoai, TenSP, Dongia, Thanhtien,Tongthanhtien 3 Tương tự tạo Form nhập liệu cho bảng:
(7)Tương tự tạo Form nhập liệu cho bảng: KHACHHANG(MaKH,TenKH, Diachi, Dienthoai)
BÀI TẬP THỰC HÀNH SỐ 4 (Lập Trình VBA)
1 Tạo hàm TACHTEN(): dùng để tách tên từ chuỗi hoten
2 Tạo hàm TACHHODEM(): dùng để tách ho đêm từ chuỗi hoten
Sử dụng hàm để tạo danh sách (Query) gồm: MAHD, Họ KH, Ten KH, Thanhtien Được xếp tên tăng dần
(8)Tạo hàm Docso() đơn giản: số trường hợp đặc biệt không đọc như: lẻ, lăm, mốt Sinh viên tự thêm điều kiện để hồn chỉnh
Tạo HĨA ĐƠN BÁN HÀNG cho lượt bán Cuối hóa đơn tính tổng thành tiền đọc tiền thành chữ tương ứng
Gợi ý lý thuyết:
1 Left(ht,n): Trích chuỗi từ chuỗi ht gồm n ký tự bên trái Mid(ht,m,[n]): Trích chuỗi từ chuỗi ht từ ký tự thứ m gồm n ký tự (Nếu khơng có tham số n gồm ký tự cịn lại)
3 Right(ht,n): Trích chuỗi từ chuỗi ht gồm n ký tự bên phải Len(ht) Độ dài chuỗi ht
Ví dụ:
Mid (“Nguyễn Thị Lan Anh”,12,1) -> L Mid (“Nguyễn Thị Lan Anh”, 12) -> Lan Anh
5 Khai báo hàm Tachten(): xác định biến vào kiểu, biến kiểu Function TACHTEN(ht as String*30) as String*8
(9)8 Int(x) Phần nguyên x Ví du: int(123/10) -> 12
9 Phép toán Mod: x Mod y: số dư x chia cho y Vd: 123 Mod 10 ->
10 Space(n) chuỗi gồm n ký tự trắng
Vd: Right(Space(11)+ “123456789”,12) -> “ 123456789” 11 Val(x) -> chuyển chuỗi x sang số
Vd: Val(“123”) ->123
12 STR(x) -> Chuyển số sang chuỗi 4 Tạo Menu :
Cập nhật Báo cáo Tìm kiếm In ấn Hệ thống
DM_Hang hóa Danh sách KH Tìm kiếm In theo ngày tháng In theo Hóa đơn In theo Khách hàng
Giới thiệu Đăng ký TK Thốt DM_Khách Hàng … Tìm kiềm theo … Report …
Hóa Đơn bán hang Chi tiết Hóa Đơn
Hướng dẫn:
Chọn Menu View \ Toolbars \ Customize Chọn nhãn Toolbars
Chọn nút lệnh New \ Gõ tên Menu: Quản lý bán hang Chọn nút Preperties \ Type: MenuBar
Chọn nhãn Command:
Chọn mục New Menu \ giữ kéo chuột nút New Menu vào thah Menu Bar để tạo Menu ngang
Kích phải Menu ngang \ gõ tên &Cập nhật, &Báo cáo Tạo Menu dọc: Chọn Form \ Kéo Form nhập vào Menu Cập nhật Chọn Query \ Kéo tên Query vào menu Báo cáo \ Đổi tên
Chọn Form \ Kéo Form tìm kiếm vào Menu Tìm kiếm …
(10)Thuộc tính Form:
Navigation Button: No; Record Selected: No; Scroll Bar: Neight; Dividing Line: No
Close Button: No; Max Min Button: No Popup : Yes; Modal: Yes
Combo lấy liệu từ bảng Login hiển thị cột
Thuộc tính Combo: Name: TenND; Column Width: 1”,0” Text Box: Nhập mật mã
Thuộc tính: InputMask: Password; Name: Ma
Command: Kích phải chọn Build Event \ Build Code If Ma.Value = TenND.Column(1) Then
DoCmd.Close
MsgBox "Chao mung ban den voi phan mem quan ly bán hàng" Else
MsgBox "Nhap mat khau sai", vbOKOnly, "Canh bao" ma.Value = ""
ma.SetFocus End If
Command: Exit
Viết lệnh: DoCmd.Quit
7 Đóng gói hồn tất phần mềm: