Tự học lập trình Access

33 3.7K 130
Tự học lập trình Access

Đ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

MICROSOFT ACCESS MỞ ĐẦU Microsoft Access là một hệ quản trị dữ liệu (Database Managenment System) giúp ta quản lý, bảo trì và khai thác dữ liệu được lưu trữ bên trong một cách có hệ thống. So với những phần mềm đóng vai trò quản lý Cơ sở dữ liệu như Dbase, FoxPro, . thì Access đa dạng và phong phú hơn, tân kỳ hơn dưới dạng Windows, xử lý dữ liệu và in ấn ra bằng những giao diện đồ họa theo yêu cầu, văn bản thực. Với ý niệm quản lý Cơ sở dữ liệu, một số khái niệm cơ bản cần hiểu như sau: 1. TABLE (BẢNG): Table là một thành phần cơ bản nhất của một Cơ sở dữ liệu, và đây cũng là một thành phần không thể thiếu. Trong Table, dữ liệu được lưu trữ dưới dạng record, có cấu trúc rõ ràng. 2. QUERY (TRUY VẤN): Query là công cụ chuyên dụng trong việc truy vấn và xử lý thông tin trên Cơ sở dữ liệu. Ngoài ra, nó còn dùng trong việc tạo ra các báo biểu dùng xuất ra máy in có tính định dạng cao hơn Table. 3. FORM (MẪU BIỂU): Giúp “thân thiện hóa” thao tác nhập dữ liệu, giúp người sử dụng có cảm giác như đang ghi điền vào các mẫu phiếu quen thuộc. Trong Form có thể có chứa nhiều Form khác (SubForm) cho phép nhập dữ liệu và nhiều Table khác nhau. 4. REPORTS (BÁO BIỂU): Dùng trong việc in ấn các báo biểu dưới nhiều hình thức, phong phú và đa dạng, đẹp mắt, đồng thời đây là một cách hiển thị kết quả xử lý của Query. 5. MACRO: Trong khi sử dụng chương trình, có một số thao tác được lập lại nhiều lần dễ làm cho người sử dụng nhàm chán, để tránh tình trạng này, Microsoft Access cho phép tổ chức ra các Macro. Đây là tập hợp các lệnh tự động hóa các thao tác cần lập lại nhiều lần. Khi chạy Macro, Microsoft Access sẽ thực hiện một loạt các thao tác đã được định sẵn. 6. MODULE: Module là một dạng tự động hóa cao cấp hơn Macro viết bằng ngôn ngữ lập trình VisualBasic, dùng thảo chương các lệnh hay yêu cầu phức tạp mà Macro không đáp ứng được. PHẦN THỨ NHẤT TABLE 1.1. Tạo mới: Trong ngăn Table, chọn New: Xuất hiện New Table với các thỉnh ý sau: - Datasheet View: mở Table dưới dạng Datasheet dùng nhập thẳng dữ liệu vào bảng. - Design View: mở ra khung Design cho ta thiết kế. - Table Wizard: tạo bảng dưới sự hướng dẫn của Microsoft Access. - Import Table: nhập một bảng từ DataBase khác về. - Link Table: phần này xin trình bày trong phần Cơ sở dữ liệu đa người dùng. 1.2. Table và DataType. 1.2.1. FieldName là tên một trường trong bảng, tên có thể dài 64 ký tự và có thể có khoảng trắng nhưng không có dấu chấm câu. Nên đặt tên ngắn gọn, gợi nhớ để dễ dàng truy xuất dữ liệu khi thảo chương trình. 1.2.2. DataType: Mỗi Field đều có một DataType (kiểu dữ liệu) nhất định. Các kiểu dữ liệu thường dùng như sau: - Text: chứa các ký tự và ký số, tổng chiều dài là 255 bytes, mặc định của Microsoft Access trường Text có độ rộng là 50 bytes. - Memo: trường Memo có thể chứa đựng một văn bản dài 32 MB. - Number: chứa các giá trị kiểu số. - Date/Time: chứa giá trị ngày giờ. - Currency: chứa giá trị tiền tệ theo đồng Dollar ($). - Counter: chứa các giá trị số tự động do Microsoft Access gán vào và không đổi được. - Yes/No: chứa giá trị luân lý. - OLE Object: đối tượng nhúng. 1.2.3. Decription: Ghi chú giải cho Field. 1.2.4. FieldPropeties: - Field Size: độ rộng của dữ liệu, đơn vị tính bằng Byte, chú ý rằng một số Font Tiếng Việt có độ rộng 2 bytes đối với chữ có dấu. - Format: các hiển thị dữ liệu trên màn hình. - Input Mask: quy định mẫu nhập liệu. - Caption: Một cách diễn đạt khác cho Field. - Default Value: cho phép gán giá trị ngầm định. - Validation Rule: biểu thức kiểm chính dữ liệu nhập. - Validation Text: thông báo biểu thức nhập không thỏa Validation Rule. - Required: chọn Yes nếu bắt buộc phải nhập dữ liệu vào Field này. - Allows Zero Lenght: chọn Yes nếu chấp nhận giá trị rỗng. - Index: lập chỉ mục: No : Không lập chỉ mục. Yes Duplicate OK : Có lập và cho phép trùng. Yes No Duplicate : Có lập, không cho phép trùng. 1.3. PrimaryKey Một Table bắt buộc phải chọn một chỉ tiêu nào đó làm khóa chính, nếu không chọn khóa, Access sẽ tự động chèn vào thêm một Field có kiểu Counter và đặt tên là RecID làm khóa. Vậy, sau khi thiết kế xong, ta gắp biểu tượng chìa khóa trên thanh công cụ bỏ vào bên trái field dự định chọn làm khóa, hoặc có thể chọn field dự định làm khóa, sau đó vào Menu Edit, chọn PrimaryKey để lập khóa cho Table. Sau cùng, khi đóng cưả sổ Design, chương trình yêu cầu lưu trữ lại Table này. 1.4. Các thao tác cơ bản: 1.4.1. Nhập liệu: Chọn Table, nhấn Enter hoặc bấm Open. Table được mở ra dưới dạng Datasheet với số cột đúng bằng số field đã thiết kế. Nhập liệu bình thuờng giống như các phần mềm khác. Riêng trường có DataType là kiểu Yes/No ta nhập một trong hai giá trị 0 hoặc -1. Ta có thể thay đổi bề rộng cột bằng cách rà Mouse trên mép phải FieldName nhấn và kéo. 1.4.2. Hiệu đính: Ta có thể hiệu đính lại một Table đã thiết kế bằng cách mở lại Table dưới dạng Design. Mục đích của việc hiệu đính là thiết kế lại theo ý muốn: - Sửa lại thuộc tính của Field. - Chèn hoặc xóa Field. - Hoặc thực hiện các thao tác chỉnh sửa khác. 1.4.3. Một số quy định ký hiệu InputMask: Ký hiệu Công dụng 0 Chỉ nhập ký số, bắt buộc phải nhập, không cho nhập dấu cộng hoặc dấu trừ. 9 Chỉ nhập ký số, không bắt buộc phải nhập, cho nhập dấu cộng hoặc dấu trừ. # Chỉ nhập ký số hoặc khoảng trắng, không bắt buộc phải nhập, chấp nhận cho nhập dấu cộng hoặc dấu trừ. L Nhập ký tự hoặc ký số (bắt buộc) A Nhập ký tự hoặc ký số (không bắt buộc) & Ký tự bất kỳ hoặc khoảng trắng (bắt buộc) C Ký tự bất kỳ hoặc khoảng trắng (không bắt buộc) < Ký tự theo sau đổi ra chữ thường > Ký tự theo sau đổi ra chữ hoa ! Điền từ phải qua trái \ Ký tự theo sau coi như hằng, trị Lưu ý rằng tất cả dữ liệu đều được lưu trữ trên Table. PHẦN THỨ HAI QUERY Query là một công cụ khá đặc trưng của Microsoft Access, nó đáp ứng các yêu cầu vè truy vấn số liệu trên hê quản trị Cơ sở dữ liệu dưới nhiều hình thức phong phú. Muốn thực hiện được Query bắt buộc phải có Table, Query có thể thực hiện thao tác trên nhiều Table khác nhau nhằm rút ra được báo biểu cần thiết kết xuất ra máy in. Mặt khác, với Query, người lập trình có thể tạo thêm một số trường tính toán và rút trích số liệu một cách chính xác và nhuần nhuyễn. Dữ liệu thì được lưu trữ trên Table, còn Query là một công cụ để tìm và nhìn dữ liệu dưới nhiều góc độ khác nhau, khi nhìn số liệu qua Query, khi thực hiện thao tác chỉnh sửa thì số liệu trên Table chọn làm Query cũng thay đổi theo. Ngoài ra, Query còn là nguồn cung cấp số liệu cho Form, hay Reports, kể cả cho một Query khác. 2.1. CÁC LOẠI QUERY: 2.1.1. Select Query: Đây là loại Query chọn số liệu. Nó được sử dụng rất phổ biến, dùng để chọn lựa các mẩu tin, tạo thêm các vùng tính toán (Calculate Field), và lấy số liệu tóm lược. Trong chừng mực nào đó, Select Query gần giống công cụ Filter trên DataSheet: - Vấn tin trên nhiều Table. - Tạo thêm các vùng tính toán. - Tóm lược và kết nhóm số liệu. - Chọn các Field cần thể hiện hay che. 2.1.2. CrossTabQuery: Query tham chiếu chéo. Kết nhóm theo chủng loại và hiển thị số liệu dưới một hình thức của bảng tính kèm theo cộng ngang và cộng dọc. Loại này rất thích hợp cho việc tạo số liệu cho Reports và đồ thị (Chart). 2.1.3. Make-Table-Query: Query tạo Table từ một Dynaset. Được dùng vào việc tạo các Table dự phòng (Bakup), rút trích các record từ một Table đuợc lưu trữ trước khi xóa các record này ra khỏi Table hiện hành. 2.1.4. UpdateQuery: Query cập nhật, dùng sửa đổi số liệu đồng loạt trên nhiều record của một hay nhiều Table. 2.1.5. AppendQuery: Loại Query này dùng kết nối dữ liệu từ các record từ một hay nhiều Table vào cuối Table hiện hành. 2.1.6. Pass-ThroughQuery: Query chuyển giao: dùng gửi lệnh trực tiếp đến hệ ngôn ngữ truy vấn SQL (Structured Query Language) của Microsoft Access. 2.1.7. DataDefinitionQuery: Query định nghĩa dữ kiện. Sử dụng các lệnh của ngôn ngữ SQL để tạo mới hoặc sửa đối cấu trúc của Table. 2.2. CÁCH TẠO QUERY: Có thể sử dụng Wizard của Microsoft Access, nhưng tốt nhất là tự thiết kế bằng lưới QBE hoặc bằng ngôn ngữ SQL. Bằng lưới QBE, ta chỉ cần nhắp kéo các trường cần xử lý vào trong khu vực lưới sau đó thả ra. Chọn NewQuery: Chú ý chọn Table nguồn làm căn cứ dữ liệu cho Query tại thời điểm này, sau đó bấm Design ta vào được khung thiết kế. Trong quá trình tạo thêm FieldCalculate chú ý cú pháp sau: Tên_trường:Công_thức. Mục đích chính của Query thiết kế ra dùng vào việc nhập liệu cho một Table hay dùng kết xuất dữ liệu in ra giấy. Đối với mục đích thứ hai, trong Query thường xuất hiện thêm các trường tính toán xử lý dữ liệu (FieldCalculate). Ví dụ: Để tính lương cho nhân viên, người ta lấy Hệ số (HESO) nhân với ngày công (NGAY), nhưng mỗi ngày dư thì được tính gấp đôi, biết ngày công tiêu chuẩn là 25, kết quả này được lưu vào trường LUONG: LUONG:IIF([NGAY]>25,(25+([NGAY]-25)*2)*[HESO], [NGAY]*[HESO]) Sau khi thiết kế xong thì Query được lưu trữ trong ngăn Query của Database. Khi muốn chạy Query, chọn Query, nhấp đôi hoặc bấm Open. Lưu ý rằng Query không lưu trữ kết quả giống như Form, nó chỉ cung cấp dữ liệu phục vụ vào việc kết xuất báo cáo ra văn bản hay dùng vào mục đích nhập liệu vào Table. PHẦN THỨ BA MẪU BIỂU FORMS Forms là một công cụ sắc xảo trong việc nhập liệu, nó giúp con người có cảm giác gần gũi khi làm việc trên máy tính. Forms được thiết kế phải dựa trên một Table hay một Query nguồn, nguồn của Forms được gọi là DataSource. 3.1. FORMDESIGN: Giao diện FormDesign dùng cho việc thiết kế Forms. Các thành phần trên Forms đều có thuộc tính riêng. Để tạo các thành phần này bằng cách chọn biểu tượng trên thanh ToolBox sau đó nhấn và kéo trên Forms . Sau khi tạo xong nó trở thành một Object tương tự như các Object trong các phần mềm khác trên giao diện Windows, nó có tám điểm canh, nhờ đó ta có thể dễ dàng dùng Mouse để thay đổi các kích thước của chúng, và có thể di chuyển chúng đến vị trí thích hợp trên Forms. 3.2. CÁC THUỘC TÍNH CƠ BẢN CỦA FORMS: 3.2.1. RecordSource: Một Forms bao giờ cũng nhập liệu hay truy xuất dữ liệu từ một Table hay một Query. Khi khai báo Select Table/Query thì thuộc tính này lập tức được gán vào thuộc tính này. Tuy nhiên trong một số Forms có chức năng Bakup hay Logo thì không gán thuộc tính này. 3.2.2. Caption: Caption là dòng văn bản trên thanh tiêu đề của Forms. Thường dùng phần văn bản này vào mục đích diễn giải mục đích làm việc của Form. 3.2.3. DefaultView: Mục này quy định chế độ hiển thị của Forms, ta có thể cho Forms hiển thị một số kiểu như sau: - SingleForm: tại một thời điểm cho phép hiển thị duy nhất một mẩu tin. - Continuous Forms: hiển thị nhiều mẩu tin tại cùng một thời điểm. - Datasheet: thể hiện ở dạng Datasheet giống như giao diện của Table hay Query. Khi thiết kế Form, ta có thể chọn nhiều dạng: - Single Column: mẫu dạng cột. - Tabular: mẫu dạng bảng. - Graph: mẫu đồ thị. - Main/Sub: Mẫu Form có chứa From con bên trong. Như mục đích “thân thiện hóa” đã nói, thì dạng Datasheet rất ít được dùng. Dạng Continuous Forms được dùng trong việc thống kê theo dõi dữ liệu hay rút trích dữ liệu theo những mục đích cụ thể và rõ ràng. Dạng Single Forms rất thuận tiện trong việc cập nhật dữ liệu vào các Table. Chú ý rằng trong Microsoft Access thì Table là nơi lưu trữ dữ liệu, còn Query và Forms chỉ là công cụ hỗ trợ trong công việc. Như vậy Query và Forms không lưu trữ dữ liệu. 3.2.4. Các mục khác: AllowsEdit: (Yes/No) quy định có chấp nhận chỉnh sửa dữ liệu không. DataEntry: (Yes) chế độ nhập mới. ScrollBar cho phép hiển thị các thanh cuốn khi dùng Continuous Forms khi dữ liệu dài quá một trang màn hình. Nevigation Button cho phép hiển thị các nút phóng to hay thu nhỏ Forms. Tương tự cho Close Button. 3.3. CÁC OBJECT TRÊN FORMS: 3.3.1. TextBox: TextBox là thành phần không thể thiếu trên Forms cho phép người dùng nhập văn bản vào đó (TextBox có nghĩa là Hộp văn bản). Theo công dụng thì TextBox được phân thành ba loại chính: + TextBox BoundControl: BoundControl là loại TextBox gắn liền với một Field của một Table hay Query, TextBox này dùng vào việc nhập liệu hay hiển thị dữ liệu ra màn hình. + TextBox UnBoundControl không gắn với bất kỳ Field nào, Un BoundControl thường dùng trong việc gửi vào một điều kiện nào đó dùng cho việc thi hành mộc tác vụ nào đó trên Forms hay CommandButton khi xảy ra một biến cố Even. + TextBox BoundCalculate: đóng vai trò tính toán trên Cơ sở dữ liệu. 3.3.2. ComboBox: ComboBox thể hiện một danh sách được lập sẵn cho phép người dùng lựa chọn những mục có trong danh sách này thay vì phải gõ. Trong chương trình thì ComboBox được dùng trong việc bắt buộc người dùng phải chọn lựa dữ liệu một cách bắt buộc, không cho phép người sử dụng nhập dữ liệu trái quy định. ComboBox cũng có hai loại: BoundControl gắn liền với một Field của một Table hay Query, UnBoundControl không gắn với bất kỳ Field nào, dữ liệu của nó là dãy danh sách được nhập vào trong khi thiết kế. 3.3.3. ListBox: ListBox có ý nghĩa giống ComboBox nhưng xuất hiện dưới dạng một danh sách chiếm nhiều diện tích trên Forms, do đó ListBox rất ít được dùng. 3.3.4. Label: Là dòng văn bản diễn giải ý nghĩa của một Control. 3.4.5. CommandButton: CommandButton là nút lệnh dùng để thi hành một tác vụ gì đó khi có biến cố (Even) xảy ra, tác vụ này có thể được gán dưới dạng Macro, Code hay một đoạn Module. Các Even cơ bản thường gặp đối với CommandButton: - On Click: nút lệnh được nhấn. - Double Click: nút lệnh được nhấn đôi. - On Mouse Move: khi Mouse di chuyển ngang qua nút lệnh. - On Lost Focus: khi nút lệnh được chọn. - On Got Focus: khi nút lệnh mất Focus. 3.4.6. CheckBox: CheckBox là hộp kiểm tra. CheckBox chỉ có thể ở một trong hai trạng thái được chọn hay không được chọn. PHẦN THỨ MACRO Macro là tập hợp một số thao tác tự động được thực hiện khi xảy ra Even. Các Even thường gặp đã được nêu trong phần CommandButton. 4.1. MACRO ĐƠN: Khi tạo mới một Macro, thường xuất hiện ra hai khung cơ bản: 4.1.1. Action: Là khung chứa các lệnh cần thực hiện. Khi nhấp Mouse vào khung Action, lập tức một mũi tên dropdown xuất hiện, trong đó chứa một danh sách các lệnh: Add Menu Apply Filter Beep Cancel Even Close Copy Object Delete Object Find Next Find Record GoTo Record GoTo Control GoTo Page Hourglass Move Size Msgbox Open Forms Open Table Open Reports Print Prin Review Quit Rename Restore Run Code Run Macro Run SQL Select Object Send Key Set Value Set Warnings Khi cần chỉ việc chọn trong List này thì Microsoft Access tự động cập nhật lên dòng Action. Comment: Khung Comment là khung chú thích diễn giải cho người viết chương trình nhớ và tìm kiếm dễ dàng hoặc sửa chưã khi cần thiết. 4.1.2. ActionArgument: ActionArgument là một bảng con đi theo một Action. Như vậy có nghĩa rằng với các Action khác nhau thì ActionArgument cũng khác nhau. ActionArgument được xem là thuộc tính của Action. Sau đây là một số ActionArgument cơ bản: 4.1.2.1. Lệnh Open: Khi dùng các lệnh Open (ví dụ: OpenForm), thì các thuộc tính phải khai báo là: FormName: tên Form được mở. Filter Name: Khai báo sự chọn lựa. WhereCondition: khai báo điều kiện cho các dữ liệu được mở. 4.1.2.2. Lệnh GoTo: Lệnh GoTo thường có hai loại đi chung với nhau: GoToRecord: chuyển con trỏ mẩu tin đến mẩu tin kế tiếp, khi đó, các thuộc tính cần khai báo là: - Object Type: Loại Table hay Form. - Object Name: Tên Object. - Record: Chọn Next là di chuyển đến mẩu tin kế. - Previous trở về mẩu tin trước. - Last đến mẩu tin cuối cùng. - Fist: trở về mẩu tin đầu tiên. 4.1.2.3. RunCommand: thực hiện lệnh theo danh sách sẵn có của Microsoft Access. 4.1.2.4. RunCode: thực hiện một mã lệnh, hoặc hàm tự tạo. 4.2. MACRO NHÓM Đôi khi ta tổ chức các Macro có các mối tương quan với nhau thành từng nhóm. Khi đó ta cần thêm các cột: MacroName: Tên riêng cho từng Action. Sau đó là mục Action, và cuối cùng là Comment. 4.3. THI HÀNH MACRO: Về lý thuyết mà nói, chỉ cần chọn tên Macro trong MacroContainer sau đó chọn Run. PHẦN THỨ NĂM MODULE Module được sử dụng vào công việc thảo chương khi Macro không đáp ứng được công việc của người lập trình. Module thường được viết dưới dạng hàm (Function) hay dạng thủ tục (Sub) sau đó được Form gọi vào để thi hành. PHẦN LẬP TRÌNH ACCESS Microsoft Access cho phép tạo và lưu trữ dữ liệu ở dạng Table. Một Cơ sở dữ liệu có thể có nhiều Table, trong Table có nhiều Fied, và có một hay nhiều Field được chọn làm khóa chính (Primary Key). Hai Table có thể có mối quan hệ với nhau khi nó có thể bổ sung thông tin cho nhau. Có hai loại quan hệ giữa các Table trong Microsof Access: - Table A có quan hệ một - một với Table B khi dữ liệu trên Table A chỉ xuất hiện một lần trên Table B. - Table A có quan hệ một - nhiều với Table B khi dữ liệu trên Table A có thể xuất hiện nhiều lần trên Table B. Để khai báo quan hệ, các Table phải xây dựng xong với đầy đủ khóa chính, khóa ngoại, gọi Menu Tools - RelationShip. Sau khi thiết lập các mối quan hệ RelationShip, các Table có thể bổ xung dữ liệu cho nhau nhằm tiết kiệm bớt bộ nhớ vật lý cũng như logic. Phần mềm Microsoft Access cho phép người viết chương trình tạo ra các mối quan hệ và xử lý dữ liệu khá linh hoạt. Mặt khác, giao diện giữa người dùng và máy tính được cải biên theo người Việt Nam với dàn Menu, bộ hướng dẫn và các thông báo lỗi của chương trình hoàn toàn bằng Việt ngữ. Trước khi dàn dựng chương trình cần chú ý: NHỮNG THÀNH PHẦN CƠ BẢN TRONG ACCESS BASIC 1. BIẾN: Từ khóa khai báo: Public, Global hoặc Dim: * Dim khai báo trong thủ tục có phạm vi cục bộ trong thủ tục đó. * Dim khai báo trong Declaration Section của đơn thể thì thuộc đơn thể khai báo biến. * Global khai báo trong Declaration Section của đơn thể thì trên toàn bộ hệ thống áp dụng được biến đó, tốt nhất là sử dụng cho những biến tạm thời. Nhiều thủ tục khác nhau có thể sử dụng tên biến giống nhau. Biến thuộc đơn thể (Module variable): thì dùng chung cho những thủ tục thuộc đơn thể đó, mọi thủ tục đơn thể đều có thể hoặc tham chiếu giá trị của biến này bằng tên của nó. Những thủ tục của đơn thể khác thì không thể tham chiếu được biến này. Vì vậy muốn khai báo một biến đơn thể có thể sử dụng trong tất cả các thủ tục bằng các ghi hiệu lệnh Dim trên vùng Declaration Section của đơn thể đó. * Biến toàn cục (Global variable) là biến có phạm vi sử dụng rộng nhất, nghĩa là giá trị của nó có thể tham chiếu từ bất kỳ một thủ tục nào thuộc bất kỳ một đơn thể nào trong hệ thống áp dụng của ta. Cách khai báo tương tự như trên nhưng thay từ khóa Dim bằng Global. 2. CÁC KIỂU DỮ LIỆU CƠ BẢN: Variant Biến Variant có thể chứa dữ liệu kiểu số học, kiểu chuỗi, kiểu ngày tháng . Ví dụ: Dim Temp As Variant. Các kiểu khác: Dim i As Integer: khai báo số nguyên. Dim k As Double: khai báo số thực. Dim St As String: khai báo chuỗi. Sau đây là một mẫu gán giá trị cho biến có kiểu String (chuỗi), khai báo trong khi viết chương trình bằng ngôn ngữ AccessBasic Cách viết Ý nghĩa Dim Str As String Khai báo biến chuỗi Str Str=“Chuỗi văn bản” Gán giá trị Froms!FormName!ControlName=Str Gán giá trị cho Control - Lưu ý: Biến có kiểu String luôn được bao trong dấu nháy đôi “”. Ví dụ: đoạn mã lệnh sử dụng trong Forms Mật khẩu, người sử dụng bắt buộc phải nhập đúng mật khẩu (kiểu chuỗi) mới vào được chương trình. Dim Password As String,FormName As String,StLinkCriteria As String Password = “MyPassword” FormName = “FormName” If TextMatkhau<>Password Then If Solan < 3 Then MsgBox “Sai mật khẩu”&Chr(13)&“Nhập lại”,64,”Thông báo” Solan = Solan + 1 Else MsgBox “Không thể tiếp tục chương trình”,64,”Thông báo” Docmd.Quit ‘ Thoát khỏi Microsoft Access. Else Docmd.OpenForms FormName,,,StLinkCriteria End If End If Ta có thể viết một hàm dùng truy tìm mã một nhân viên để truy ra họ và tên của nhân viên trong Table TCONGCHUC như sau: Function NameChucdanh(ByVal MaConnect As String) As String Dim STKetqua As String ‘biến kiểu chuỗi Dim MyDBS As DataBase ‘biến kiểu DataBase Dim MytabConnect As Recordset ‘biến Recordset Set MyDBS = CurrentDb ‘DataBase hiện hành Set MytabConnect = MyDBS.OpenRecordset("TCONGCHUC") ‘gán biến Recordset vào Table TCongchuc MytabConnect.MoveFirst ‘về mẩu tin đầu tiên Do Until MytabConnect.EOF ‘lặp đến cuối If MaConnect = MytabConnect!MACC Then STKetqua = MytabConnect!HOTEN End If MytabConnect.MoveNext ‘chuyển đến mẩu tin kế Loop NameChucdanh = STKetqua End Function Ghi chú cho đối tượng Recordset: Recordset là một trong những đối tượng của AccessBasic, khi sử dụng đối tượng này cần phải gán vào một Table hay Query trong một DataBase cụ thể bằng lệnh Set. Trong đoạn chương trình trên, lệnh gán dùng phương thức mở một Table đã có trong DataBase. Muốn lấy dữ liệu từ một trường nào đó ta sử dụng cách thức lấy đã quen thuộc trong khi tham vấn trên Query: Tên biến Recordset!Tên trường. Muốn chỉnh sửa nột dung trong Recordset, ta sử dụng các lệnh sau: Ví dụ: Khai báo biến như sau: Dim RS As Recordset. Sau khi mở xong ta chuyển vào chế độ chỉnh sửa bằng lệnh: RS.Edit Chỉnh sửa xong ta lưu lại bằng lệnh RS.Update Sau cùng phải đóng Recordset bằng lệnh RS.Close. Chú ý: Hàm CurrentDB trả về DataBase hiện hành. Khi viết Code ta dùng hàm này để truy vấn dữ liệu trên DataBase hiện hành. MẪU BIỂU FORMS 1. KHÁI NIỆM CƠ BẢN Mẫu biểu Forms là một dạng thức dùng để biểu thị dữ liệu của chính mình giúp cho người sử dụng dễ nhận biết với giao diện giống như các biểu mẫu quen thuộc hàng ngày. Ta có thể dùng Forms để cập nhật, xem hay in ấn dữ liệu . Thiết kế: Forms có nhiều thuộc tính (properties) thể hiện một công việc nào đó: Record Soucre: Nơi lấy dữ liệu. Filter: Điều kiện lọc. [...]... Function ‘ Thoát Err_Open: MsgBox “Lỗi trong quá trình thao tác”,32,”Thông báo” Resume Exit_Open ‘trở về mục Exit_Open End Function ‘Kết thúc Hoặc chương trình xử lý lỗi từng phần trong quá trình thực thi chương trình Chương trình thực thi từng bước, khi phát sinh lỗi lập tức được xử lý tại chỗ, sau đó chương trình lại tiếp tục Sau đây là một đoạn chương trình mẫu được viết theo giải thuật nói trên: Private... Exit_Procedure Khi gặp lệnh này, lập tức chương trình quay về tìm nhãn Exit_Procedure, và tiếp tục thực thi khối lệnh tiếp theo, nếu thấy trong khối lệnh này có dòng lệnh Exit Function, thì nó sẽ thoát ra khỏi chương trình Cú pháp chung: Function Chương _Trình_ Mẫu() OnErro GoTo Nhãn Lỗi (Err) Khối lệnh thực thi chương trình Nhãn thoát (ExitPr): Khối lệnh chuyển tiếp chương trình Nhãn Lỗi (Err): Khối lệnh... MyTabConnect.MoveNext Loop FilterStringAliasd = Chuoi End Function Sau khi hoàn tất đoạn chương trình trên, Microsoft Access ghi nhận nó là một trong các hàm số, và ta có thể sử dụng bất kỳ lúc nào MỘT SỐ XẢO THUẬT TRONG LẬP TRÌNH 1 REQUERY: Thường thường, khi viết chương trình thường có nhiều Form, tùy ý theo người viết chương trình, thông thường, khi người sử dụng nhập dữ liệu thì dữ liệu phải được cập nhật lại... khi chạy Form, thì hệ thống Menu của Microsoft Access được thay thế bằng hệ thống Menu do ta tạo ra II.Một số phát sinh có thể xảy ra trong chương trình: Đôi khi chạy chương trình có thể có một số dữ liệu cần phát sinh được “sống” trong khi Control hoạt động, và khi kết thúc chương trình lập tức sẽ mất đi, không lưu trữ lại Để thực hiện điều này, Microsoft Access hỗ trợ Define Query dùng trong việc khai... đoạn chương trình có lệnh: OnError GoTo Err_LoiProcedure Có nghĩa là nếu chương trình bị lỗi thì ngưng thi hành và nhảy đến nhãn Err Và nhãn được viết như sau: Err_LoiProcedure: Khối lệnh xử lý lỗi Resume Nhãn Exit_Procedure trong đó Khối lệnh dùng trong việc xử lý lỗi, sau khi xử lý xong, chương trình sẽ quay về nhãn Exit để thoát ra khỏi chương trình Và sau khi xuất hiện lỗi xong thì chương trình chính... Macro Popup nói trên, ta sẽ tạo một trình đơn bằng Macro (chẳng hạn có tên là MCUSTOMMN) gồm có các Action: AddMenu Tại mục MenuName ta nhập vào chuỗi văn bản cần hiện lên trên thanh Menu: Ví dụ: &He thong (He thong) Mục Menu MacroName: nhập vào tên Macro Pupup (Chú ý: Dấu & đứng trước ký tự nào thì ký tự đó được chọn làm ký tự đại diện, để kích hoạt ta nhấn phím Alt + Ký tự đại diện) Sau đó quay lại Propeties... quyền xử lý cho chương trình xử lý lỗi, do đó khi bố trí đoạn chương trình xử lý lỗi, thì phải bố trí điểm kết thúc hoặc tiếp tục chương trình bằng cách tạo ra một nhãn dùng chuyển tiếp chương trình, tiếp theo sau nhãn này là khối lệnh xử lý sau khi đã xử lý lỗi xong Chẳng hạn như Exit_Procedure như sau: Exit_Procedure: Khối lệnh chuyển tiếp Khối lệnh là các lệnh dùng tiếp tục chương trình sau đó thoát... hiện việc xóa bỏ Table III/ Tạo Macro tự khởi động chương trình: Ta có thể tạo ra một Macro đặc biệt nhằm mục đích khi tập tin *.MDB mỗi khi được mở, thì nó sẽ tự động mở thẳng Form mà ta đã định nghĩa nó là Form chính của chương trình (Form điều khiển), từ Form này có thể gọi được tất cả các Form còn lại, và yêu cầu phải giấu hết toàn bộ hệ thống cửa sổ của Microsoft Access: có nghĩa rằng tạo cảm giác... TẠO MENUBAR Trong chương trình, ta có thể thay thế Menu có sẵn của Microsoft Access bằng một hệ thống Menu bằng tiếng Việt với các Popup cũng bằng tiếng Việt dùng để mở các Form hoặc các Reports của DataBaseContainer do chúng ta tạo ra, với dàn Menu của Microsoft Access thì nhìn dáng như Tây, không mấy thích hợp với người Việt Nam Ta tạo một hệ thống Menu này để khi chạy chương trình, nó sẽ mang dáng... DoCmd.GoToControl CmdMacc Mtiep.Enabled = False End If 'Not IsNull End If 'Macc="" End If 'Forms![FrmTheodoi]![tam] = 0 End Sub Chương trình mẫu thứ hai: Khi gặp lỗi, chương trình chuyển giao quyền xử lý lỗi cho chương trình xử lý lỗi, sau đó mới tiếp tục thực thi chương trình Function Printer_Document() VBLinkCriteria = "MdataPrint = Forms![The_Printer]![MDate]" On Error GoTo Err_Print Select Case Forms![The_Printer]!MSelect] . của người lập trình. Module thường được viết dưới dạng hàm (Function) hay dạng thủ tục (Sub) sau đó được Form gọi vào để thi hành. PHẦN LẬP TRÌNH ACCESS Microsoft. dấu trừ. L Nhập ký tự hoặc ký số (bắt buộc) A Nhập ký tự hoặc ký số (không bắt buộc) & Ký tự bất kỳ hoặc khoảng trắng (bắt buộc) C Ký tự bất kỳ hoặc khoảng

Ngày đăng: 14/09/2013, 21:10

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan