1. Trang chủ
  2. » Tất cả

bai-giang-chuong-7

55 9 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Lệnh DoCmd Dùng Để Thực Hiện Các Thao Tác Xử Lý Trên Các Đối Tượng Như: Mở, Đóng Form, Mở Report, Query, Xử Lý Bản Ghi
Định dạng
Số trang 55
Dung lượng 2,22 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Lệnh DoCmdDùng để thực hiện các thao tác xử lý trên các đối tượng như: mở, đóng form, mở Report, query, xử lý bản ghi, …... Bạn có thể dùng Macro để thực hiện một số công việc sau:Thêm

Trang 2

1 Lệnh DoCmd

Dùng để thực hiện các thao tác xử lý trên các đối tượng như: mở, đóng form, mở Report, query,

xử lý bản ghi, …

Trang 3

1.1 Một số lệnh làm việc với mẫu tin

Trang 4

DoCmd.OpenForm [objectName], [ViewMode],

[FilterName], [WhereCondition], [DataMode],

[WindowsMode]

ObjectName – tên form muốn mở;

ViewMode - chế độ mở: acDesign, acNormal

FilterName – tên query lọc dữ liệu

WhereCondition – điều kiên

DataMode - thiết lập chế độ dữ liệu trên form WindowsMode - thiết lập kiểu cửa sổ form là: acDialog, acWindowsNormal

Mặc nhiên là Normal, mục nào không có thì bỏ trống

Ví dụ: Mở From nhập dữ liệu cho phòng “TC” Docmd.Openform “nhap_HSCANBO”, ,

,phong=“TC”

Trang 5

DoCmd.OpenReport [objectName], [ViewMode], [FilterName], [WhereCondition], [DataMode], [WindowsMode]

Vidụ 1: Tạo form in report

Select Case chon

Trang 6

End Select Option Group 1:

Name: chonin Option Group 2: Name: chon

Trang 8

Kỹ thuật xử lý lỗi

Xử lý lỗi là kỹ thuật rất quan trọng trong lập trình Đã lập trình thì khó tránh khỏi lỗi (Errors) Có rất nhiều nguyên nhân gây ra lỗi; các nguyên nhân này có thể được lường trước hoặc không được lường trước Kỹ thuật xử lý lỗi bao gồm các kỹ năng phát hiện và xử lý

các tình huống khi chương trình gây lỗi

Trang 9

On Error Resume Next

Khi đó từ chỗ đó trở đi, nếu chương trình gặp lỗi, nó sẽ bỏ qua

(ignore) hoàn toàn

End Sub

Trang 11

Private Sub truoc_Click()

On Error GoTo Err_truoc_Click

Trang 12

Private Sub luumoi_Click()

On Error GoTo Err_luumoi_Click

Trang 13

Ví dụ: Tạo Form nhập dữ liệu cho Bảng

Neither

Trang 14

CHƯƠNG 7 MACRO

Trang 15

Định nghĩa: macro là tập hợp một hay nhiều hành động, mỗi hành động dùng để thực hiện một công việc nào đó Những hành động này đã được cài đặt sẵn trong ACCESS Bạn có thể dùng Macro để thực hiện một số công việc sau:

Thêm trên Form một nút lệnh để mở một form khác , mở một report, các công việc với mẫu tin (thêm, xoá, lưu, di chuyển con trỏ mẫu tin, …) và các công việc khác.

Tìm kiếm và lọc những thông tin một cách tự động và nhanh chóng.

Cài đặt các thuộc tính cho Form, report, đối tượng điều khiển, đặt một giá trị của đối tượng vào bảng dữ liệu.

Tự động hoá nhập/ xuất dữ liệu giữa các dạng thức khác nhau Chẳng hạn, xuất dữ liệu ra bảng tính Excel.

Bạn có thể tạo macro để thiết kế menu gắn trên form.

Trang 16

2 Các bước tạo MACRO

Bước 1: Chọn thẻ Macro, chọn nút

New: xuất hiện cửa sổ thiết kế Macro

chọn hành động

cho macro chú thích cho từng hành động

Trang 17

Ví dụ: tạo Macro đĩng form themmoi và mở form nhap_hscb Gán macro đĩ vào nút lệnh của form themmoi

Close Object Type: Form

Object Name: themmoi Open Form Form name: nhap_hscanbo

Lưu macro vừ tạo với tên đóng mở

Bước 1: Tạo macro

Trang 18

Bước 2: Gắn Macro vừa tạo lên

form:

Thuộc tính:

Onclick: mo_dong

Trang 19

Ví dụ 2: Tạo một macro chạy report inbảnglương và gắn vào nút lệnh tương ứng trên form: như sau:

Trang 20

Action Argument

OpenReport Report name: Indscanbo

View: Print Prevew Condition: phong=Form!Locphong! Cbophongban

Bước 1: Tạo macro tên là macro_in

Bước 2: gắn macro trên form locphong

Nút lệnh: in bảng lương:

Xác định thuộc tính On click: macro_in

Trang 21

4 Macro có điều kiện:

Khái niệm: là các Macro có chứa các điều kiện để kiểm tra trước khi cho thực hiện từng hành động Nếu điều kiện đúng sẽ thực hiện, ngược lại không thực hiện

Chèn thêm cột Condition: trên cửa sổ thiết

kế Macro chọn menu View, chọn Condition hoặc chọn biểu tượng Condition trên thanh công cụ Macro Đặt điều kiện thi hành cho từng hành động.

Trang 22

Ví dụ 2: Tạo macro lọc dữ liệu như sau:

Trang 23

Bước 1: tạo Macro có tên Macro_gt

Chongt=1 Apply Filter Filter name: Query_GT

Condition: gioitinh=false

Chongt=2 Apply Filter Filter name: Query_GT

Condition: gioitinh=true Chongt=3 ShowAllRecord

Trang 24

Bước 2: tạo form, có các thuộc tinh sau:

Trang 25

Ví dụ 2: Tạo Form lựa chọn in như sau:

Trang 26

Bước 1: Tạo macro

Chon=1 OpenReport Report name: Indscanbo

View: print Chon=2 OpenReport Report name: Indscanbo

View: Prevew Chon=3 OutPutTo ObjectType: Report

ObjectName:InDSca nbo

Format: Excel OutPut File:

DScanbo

Trang 27

Bước 2: Tạo Form In Form:

Trang 28

3 Nhóm macro:

Khái niệm: nhóm macro là macro trong đó chứa nhiều macro con, thay vì tổ chức thành các macro nằm rời rạc bên ngoài, bạn có thể gom chúng lại với nhau thành tên duy nhất, những macro được gom phải cùng tính chất.

Bước 1: Trên cửa sổ thiết kế Macro; chọn menu View , chọn Macro Name hoặc nhập vào biểu tượng Macro Name trên tahnh công cụ Macro.

Bước 2: Đặt tên macro trong nhóm macro tại cột Macro name

Gọi thi hành một macro trong nhóm, bạn theo quy tắc sau: tên nhóm macro.tên macro cần gọi.

Trang 29

Ví dụ: tạo nhĩm macro chứa các macro con: để di chuyển con trỏ mẫu tin đầu, trước, sau, cuối.

Bước 1: Tạo macro

Trên cửa sổ thiết kế macro chon view\ name

Name Action Argument

Dau Runcomma

nd ReccordGotoFirst Cuoi Runcommn

ad RcordGotoLast Truoc Runcommn

ad RcordGotoProvous Sau Runcommn

ad RcordGotoNxet

 Bứơc 2: gắn Macro vào form

Trang 30

 Ví dụ: tạo hệ thống menu sau:

Trang 31

Bước 1: Thiết kế Macro menu_chinh để định nghĩa menu chính của chương trình

Macro Name Action Argument

Addmenu Menu name: & Hệ thống

Menu Macro Name: menu_HT

Addmenu Menu name: & Dữ liệu

Menu Macro Name: menu_DL

Addmenu Menu name: & In ấn

Menu Macro Name: menu_IN

Trang 32

Bước 2: Thiết kế menu con (popoup)

Tạo Macro menu_HT

Macro Name Action Argument

& Giới thiệu OpenForm Form name: Gioithieu

& Thoat Quit

Trang 33

Tạo Macro menu_DL

Macro Name Action Argument

& Dữ liệu phòng ban OpenForm Form Name: Nhap_DMPHONG

& Dữ liệu chức vụ OpenForm Form Name: Nhập_DMCHUCVU

& Hồ sơ nhân viên OpenForm Form Name: Nhập_HSNV

Trang 34

Tạo Macro menu_IN

Macro Name Action Argument

& Danh sách phòng ban OpenForm Form Name: DSphongban

& Danh sách chức vụ OpenForm Form Name: DScanbo

& Tìm kiếm cán bộ theo tên OpenForm Form Name: Timten

& Lọc danh sách

cán bộ OpenFor m FormName: Loc_phong

Trang 35

Bước 3: Gắn Macro menu trên vào Form

Đặt tên form này là Form_MENU

Thiết lập một số thuộc tính cho form như sau: Menu Bar menu_chinh (tên Macro)

Navigation Button No

Trang 36

5 Một số macro thường dùng

Addmenu Liên kết menu con vào thanh menu ch ính

Apply Filter Lọc dữ liệu trên Form

Beep Phát ra một tiếng kêu

Cancel Huỷ bỏ một biện cố đang thực hiện

Close Đóng đối tượng đang mở

FindNext Tìm một mẫu tin tiếp theo thỏa mãn điều kiện dò

tìm trong hành động FindRecord trước đó FindRecord Tìm kiếm mẫu tin thoả mãn điều kiện

GotoControl Cho phép di chuyển con nháy đến một điều khiển GotoRecord Di chuyển tương đối con tr ỏ trên Form, Query Hourblass Cho phép chuyển đổi biểu tượng của chuột

Trang 37

Action Ý nghĩa

Max/ Min Phóng to thu nhỏ cửa sổ hiện hành

MsgBox Xuất hiện hộp thoại thông báo ra màn hình OpenForm Mở một Form

StopMacro Dừng lại Macro đang thực hiện

Trang 38

4 Lệnh DoCmd

Dùng để thực hiện các thao tác xử lý trên các đối tượng như: mở, đóng form, mở Report, query,

xử lý bản ghi, …

Trang 39

UPDATE <Table name>

Private Sub cmdtinh_Click()

DoCmd.RunSQL "update hscanbo set luong=hsl*540000 where macb=txtmacb"

Form.Refresh

End Sub

DoCmd.RunSQL “lệnh SQL”

Trang 40

DELETE FROM <Table name>

Trang 41

DoCmd.OpenReport [objectName], [ViewMode], [FilterName], [WhereCondition], [DataMode], [WindowsMode]

Vidụ: Tạo form in report

Select Case chon

Trang 42

Private Sub Command8_Click()

ten = IIf(chonl = 1, "dscanbo", IIf(chonl

Trang 43

được lường trước Kỹ thuật xử lý lỗi bao gồm các

kỹ năng phát hiện và xử lý các tình huống khi

chương trình gây lỗi Hộp thông báo lỗi

Trang 44

Sử dụng lệnh On Error Resume Next Khi đó từ chỗ đó trở đi, nếu chương trình gặp lỗi, nó sẽ bỏ qua (ignore)

Trang 45

Chương 6

LẬP TRÌNH VỚI CƠ

SỞ DỮ LIỆU

Trang 46

Kỹ thuật DAODAO: Data Access Object là tập hợp (thư viện)

bao gồm các lớp đối tượng dùng để xử lý dữ liệu trong CSDL

Cách thức làm việc

Ứng dụng Các kết nối dữ liệu

Cơ sở dữ liệu

Trang 47

Lớp đối tượng DAO

Định nghĩa tập hợp các CSDL Access cần làm việc trên

một dự án Định nghĩa tập hợp các Query cần làm việc trên

một dự án

Định nghĩa tập hợp các mẫu tin cần làm

việc

Định nghĩa tập hợp các bảng cần làm

việc

Trang 48

Đối tượng Database

Trang 49

Đối tượng RecordSet

Định nghĩa:

Dim rs As RecordSet

Set rs=db.openRecorSet(“tên bảng”)

Hoặc

Set rs=db.openRecorSet(“tên query”)

Set rs=db.openRecorSet(“câu lệnh SELECT”)

Trang 50

Một số thuộc tính, phương thức của RsThuộc tính

NameNội dung của rs

AbsolutePostion Vị trí của mẫu tin hiện tại

RecordCount Tổng số mẫu tin

EOF/BOF Con trỏ ở vị trí EOF/BOF không

Phương thức

Close đóng rs giải phóng bộ nhớ

MoveFirts d/c con trỏ đến bản ghi đầu tiên

MoveLast d/c con trỏ đến bản ghi đầu tiên

MoveNext d/c con trỏ đến bản ghi đầu tiên

MovePrevous d/c con trỏ đến bản ghi đầu tiên

Trang 51

AddNew Thêm mới một mẫu tin vào rs

Update Đưa dữ liệu mẫu tin hiện hành

từ rs vào bảng Edit sửa dữ liệu một mẫu tin ở rs

Delete Xoá mẫu tin hiện hành ra khỏi rs

Trang 52

Ví dụ: tạo các bộ nút điều khiển đầu, trước, sau,

cuối bằng kỹ thuật DAO.Sub Cmdcuoi_Click()

cmdsau.Enabled = True Cmdcuoi.Enabled = True cmdsau.SetFocus

Cmddau.Enabled = False cmdtruoc.Enabled = False Form.Bookmark =

rs.Bookmark End Sub

Trang 53

Form.RecordsetClone rs.MoveNext

Cmddau.Enabled = True cmdtruoc.Enabled = True

If rs.EOF Then cmdtruoc.SetFocus rs.MovePrevious

cmdsau.Enabled = False Cmdcuoi.Enabled = False Else

Form.Bookmark = rs.Bookmark

End If End Sub

Trang 54

Ví dụ 2: Tạo bộ nút cập nhật dữ liệu Thêm, lưu, k

lưu, thoát. Private Sub cmdluu_Click()

Dim db As DAO.Database

Dm rs As DAO.Recordset Set db = CurrentDb

Set rs = db.OpenRecordset("hscanb o")

rs.AddNew rs!MaCB = txtMaCB rs!Hoten = txtHoten rs!phong = cbophong rs!chucvu = cbochucvu

… rs.Update Cmdthem.Enabled = True Cmdthem.SetFocus

Cmdluu.Enabled = False End Sub

Trang 55

Ví dụ 2: Tạo Form thống kê giới tính theo mẫu

Private Sub gt_Click()

Ngày đăng: 19/04/2022, 12:44

w