44
Trang 1 THIẾT KẾ FORM ( MẪU BIỂU) THIẾT KẾ FORM ( MẪU BIỂU) 1 ./ Giới thiệu Mẫu biểu là một hình thức để hiển thị dữ liệu và để Mẫu biểu là một hình thức để hiển thị dữ liệu và để nhập dữ liệu theo như các dạng trong thực tế. Để nhập dữ liệu theo như các dạng trong thực tế. Để tạo Form trước hết phải ta phải có tạo Form trước hết phải ta phải có nguồn dữ liệu nguồn dữ liệu . . Dữ liệu có thể được lấy từ Table, hay kết quả từ 1 Dữ liệu có thể được lấy từ Table, hay kết quả từ 1 câu truy vấn nào đó . câu truy vấn nào đó . Trong Access, ta có thể tạo ra mẫu biểu bằng Trong Access, ta có thể tạo ra mẫu biểu bằng công cụ công cụ Design View Design View : Tự thiết kế : Tự thiết kế From Wizard From Wizard : Thiết kế với sự hỗ trợ của Access : Thiết kế với sự hỗ trợ của Access AutoFrom Columnar AutoFrom Columnar : Tự động tạo báo biểu theo dạng : Tự động tạo báo biểu theo dạng columnar columnar AutoForm Tabular AutoForm Tabular : Tự động tạo báo biểu theo dạng : Tự động tạo báo biểu theo dạng Tabular Tabular AutoForm DataSheet AutoForm DataSheet : Tự động tạo báo biểu theo dạng : Tự động tạo báo biểu theo dạng bảng kiểu DataSheet bảng kiểu DataSheet Chart Wizard Chart Wizard : Tạo biểu đồ với sự hỗ trợ của Access : Tạo biểu đồ với sự hỗ trợ của Access PivotTable Wizard PivotTable Wizard : Tạo biểu mẫu (Form) tổng hợp : Tạo biểu mẫu (Form) tổng hợp hai chiều (tương tự như truy vấn CrossTab) Tốt nhất hai chiều (tương tự như truy vấn CrossTab) Tốt nhất ta nên tạo truy vấn CrossTab và dùng nó để tạo ta nên tạo truy vấn CrossTab và dùng nó để tạo biểu mẫu (Form) dạng này thì đơn giản hơn. biểu mẫu (Form) dạng này thì đơn giản hơn.

Tao FORM

Embed Size (px)

Citation preview

Page 1: Tao FORM

Trang 1

THIẾT KẾ FORM ( MẪU BIỂU)THIẾT KẾ FORM ( MẪU BIỂU) 1 ./Giới thiệu

Mẫu biểu là một hình thức để hiển thị dữ liệu và để nhập dữ liệu Mẫu biểu là một hình thức để hiển thị dữ liệu và để nhập dữ liệu theo như các dạng trong thực tế. Để tạo Form trước hết phải theo như các dạng trong thực tế. Để tạo Form trước hết phải ta phải có ta phải có nguồn dữ liệunguồn dữ liệu. Dữ liệu có thể được lấy từ Table, . Dữ liệu có thể được lấy từ Table, hay kết quả từ 1 câu truy vấn nào đó . hay kết quả từ 1 câu truy vấn nào đó .

Trong Access, ta có thể tạo ra mẫu biểu bằng công Trong Access, ta có thể tạo ra mẫu biểu bằng công cụcụ

Design ViewDesign View : Tự thiết kế : Tự thiết kế From WizardFrom Wizard : Thiết kế với sự hỗ trợ của Access : Thiết kế với sự hỗ trợ của Access AutoFrom ColumnarAutoFrom Columnar : Tự động tạo báo biểu theo dạng : Tự động tạo báo biểu theo dạng

columnarcolumnar AutoForm TabularAutoForm Tabular : Tự động tạo báo biểu theo dạng : Tự động tạo báo biểu theo dạng

TabularTabular AutoForm DataSheetAutoForm DataSheet : Tự động tạo báo biểu theo dạng : Tự động tạo báo biểu theo dạng

bảng kiểu DataSheetbảng kiểu DataSheet Chart Wizard Chart Wizard : Tạo biểu đồ với sự hỗ trợ của Access: Tạo biểu đồ với sự hỗ trợ của Access PivotTable WizardPivotTable Wizard : Tạo biểu mẫu (Form) tổng hợp hai : Tạo biểu mẫu (Form) tổng hợp hai

chiều (tương tự như truy vấn CrossTab) Tốt nhất ta nên tạo chiều (tương tự như truy vấn CrossTab) Tốt nhất ta nên tạo truy vấn CrossTab và dùng nó để tạo biểu mẫu (Form) dạng truy vấn CrossTab và dùng nó để tạo biểu mẫu (Form) dạng này thì đơn giản hơn.này thì đơn giản hơn.

Page 2: Tao FORM

Trang 2

THIẾT KẾ FORM ( tt)THIẾT KẾ FORM ( tt)

Để tạo mẫu biểu, Click chọn vào đối tượng Để tạo mẫu biểu, Click chọn vào đối tượng FormForm bên vùng trái của cửa sổ Cơ sở dữ liệu để bắt đầu bên vùng trái của cửa sổ Cơ sở dữ liệu để bắt đầu làm việc với các đối tượng Form. Khi click chọn làm việc với các đối tượng Form. Khi click chọn Form New ta sẽ mở ra 1 cửa sổ gồm các nội dung Form New ta sẽ mở ra 1 cửa sổ gồm các nội dung sau:(xem hình)sau:(xem hình)

Lựa chọn nguồn dữ liệu để tạo Form

Page 3: Tao FORM

Trang 3

2 ./Thiết kế biểu mẫu (Form) bằng Design View:Ngoài những cách tạo biểu mẫu (Form) 1 Ngoài những cách tạo biểu mẫu (Form) 1 cách tự động (wizard) do Access cung cấp cách tự động (wizard) do Access cung cấp sẳn, ta còn có thể tự thiết kế một biểu mẫu sẳn, ta còn có thể tự thiết kế một biểu mẫu (Form) hoặc là phải chỉnh sữa lại một biểu (Form) hoặc là phải chỉnh sữa lại một biểu mẫu (Form) đã có trước đây như saumẫu (Form) đã có trước đây như sau::

Để thiết kế mới : Chọn mục Form /New/ Để thiết kế mới : Chọn mục Form /New/ Design View.Design View.Để chỉnh sữa lại : Chọn Form / chỉ định Để chỉnh sữa lại : Chọn Form / chỉ định tên Form/ chọn Design.tên Form/ chọn Design.

THIẾT KẾ FORM ( tt)THIẾT KẾ FORM ( tt)

Page 4: Tao FORM

Trang 4

Dưới đây là hình ảnh form Lý lịch trích ngang, các Field Name được lấy từ Table Dưới đây là hình ảnh form Lý lịch trích ngang, các Field Name được lấy từ Table HocVien, thuộc tính của mỗi Ô được chú thích ngay trong hình vẽ,HocVien, thuộc tính của mỗi Ô được chú thích ngay trong hình vẽ, bao gồm các loại Ô như LABLE, CALCULATE, OLE, OPTION GROUP, CHECK BOX, bao gồm các loại Ô như LABLE, CALCULATE, OLE, OPTION GROUP, CHECK BOX, UNBOUND v.v…UNBOUND v.v…

các nhãn của 1 text box

Hình ảnh

Option Group

OptionCheck Box

Label BoxCác

Field Name

Công thức

Page 5: Tao FORM

Trang 5

Giới thiệu các loại hộp, Giới thiệu các loại hộp, Ô điều khiển (Control)Ô điều khiển (Control)

1/. Các loại ô theo nguồn dữ liệu: Bound Control : là 1 ô mà nó luôn gắn với 1 trường

của dữ liệu nguồn. Ta dùng nó để hiển thị dữ liệu của một trường (Field) , để nhập hay hiệu chỉnh dữ liệu vào cho trường (Field) đó.

Unbound Control : Ô dạng này chứa dữ liệu rời rạc không thuộc trường (Field) nào của dữ liệu (không giống như bound Control) . thông thường nó được dùng để nhập 1 giá trị tạm thời để sử dụng cho 1 công việc khác.

Calculate Control : ô mà chứa biểu thức tính toán, trên các giá trị đã có thì gọi là Calculate Control. Biểu thức bên trong nó là sự kết hợp giữa các Trường (Field) , các Unbound Control, các hằng số, các hàm của Access với các phép toán hợp lý.

Page 6: Tao FORM

Trang 6

Giới thiệu các loại hộp, Giới thiệu các loại hộp, Ô điều khiển (Control)Ô điều khiển (Control)

2/. Các loại ô theo hình thức hiển thị: Lable Control (ô nhãn) : là một ô chứa giá trị Text thuộc loại tĩnh

(nghĩa là nó sẽ hiển thị nội dung giống như lúc thiết kế). Ô này thường dùng làm các tiêu đềv.v…

Text Control (hay còn gọi là TextBox): nó dùng làm để hiển thị dữ liệu từ 1 Tường hay từ 1 công thức, hoặc để nhập dữ liệu từ bàn phím.

List Box: là ô mà nó cho phép ta lựa chọn các giá trị trong 1 danh sách nào đó.ComboBox: Đây là sự kết hợp giữa TextBox và ListBox cho phép ta lưa chọn một giá trị có sẳn hay nhập 1 giá trị mới.

Command Button (nút lệnh): là một nút thường dùng để gọi thi hành 1 công việc nào đó, thông thường là gọi Macro hay là thủ tục xử lý sự kiện (Even Procedure).

Các loại nút khác có dạng đánh dấu như Check box, Option Button, Toggle Button, thông thường được sử dụng để đánh dấu 1 trong 2 giá trị yes/no(đúng /sai).

Option Group : là một ô dùng để nhóm các nút đánh dấu nói trên.

Page 7: Tao FORM

Trang 7

Giới thiệu các loại hộp, Giới thiệu các loại hộp, Ô điều khiển (Control)Ô điều khiển (Control)

3/. Hiệu chỉnh ô :Trong 1 mẩu biểu (form), ta có thể định dạng riêng rẽ từng ô. Muốn

hiệu chỉnh ô nào thì Click mouse vào ô đó để chọn, khi được chọn sẽ xuất hiện 8 nút hình vuông (gọi là handle) bao quanh nó. Giữ Shift để có thể chọn liên tục nhiều ô.

Hiệu chỉnh độ rộng ô: Drag mouse trên handle của ô.Di chuyển ô : đưa mouse vào ô cho đến khi xuất hiện hình bàn tay,

drag mouse để di chuyển. Các ô dạng Text box,, Combo box … thường có 1 ô nhãn đính kẻm theo nó; muốn di chuyển cả 2 ô: Click chọn và drag mouse khi thấy xuất hiện hình bàn tay.

Qui định tính chất của Ô: right click vào ô để mở menu di động, chọn mục properties và chỉ định các tính chất cần thiết theo tứng đề mục.

Thông thường khi tạo form bằng Design View, vị trí các ô sẽ không thẳng hàng, để có thể gióng thẳng hàng : quét chọn các Ô ( bằng cách click mouse bên ngoài cây thước), hoặc giữ Shift và lần lượt click chọn từng Ô) vào Menu format chọn mục Align, chọn các mục LEFT, RIGHT, TOP, BOTTOM v.v… để gióng theo ý muốn.

Page 8: Tao FORM

Trang 8

4/. Các tính chất của một Ô:Thông thường các loại Ô đều có một số tính chất tương tự nhau;

xem ví dụ sau của một ô loại Text BoxFormat : Chỉ định hình thức hiển thị dữ liệu

Decimal Place : Số lượng chữ số thập phân

Visible : Cho hiển thị hay ẩn dữ liệu

Display When : Sẽ hiển thị khi nào?

Scroll Bar : Bặt tắt thanh cuộn

Can Grow : tự động giãn chiều cao

Can Shrink : Cho phép cắt bỏ những dòng trống?

Left : Toạ độ Ô tính từ lề trái

Top : Toạ độ Ô tính từ đỉnh

Width : Độ rộng của Ô

Height : Độ cao của Ô

Black Style : Nền của ô bình thường hay trong suốt

Black Color : Màu nền của Ô

Special Efect : Các hiệu ứng đặc biệt khi hiển thị

Broder Style : Kiểu đường viền

Border Color : Màu đường viền

Border Width : Độ dầy đường viền

Fore Color ,Font Name: Màu chữ, Kiểu chữ

Font Size : Cỡ chữ

Font Weight : Cách thức in

Font Italic : In Nghiêng?

Page 9: Tao FORM

Trang 9

4/. Các tính chất của một Ô: (tt)

Lớp Data

Một số giải thích

Control Source: Tên trường (Field) làm dữ liệu nguồn

Input Mask : Qui định nhập dữ liệu

Default Value : Giá trị mặc định

Validatation Rule : Qui định luật nhập dữ liệu

Validation Text : Thông báo khi vi phạm luật

Enable : Cho phép chuyển con trỏ vào Ô

Locked : Cho phép hiệu chỉnh dữ liệu?

Page 10: Tao FORM

Trang 10

4/. Các tính chất của một Ô: (tt)

Lớp EVENT : Phần này cho phép ta chỉ định, cài đặt một số ứng xử khi có một sự kiện tương ứng xảy ra

Page 11: Tao FORM

Trang 11

4/. Các tính chất của một Ô: (tt)

Lớp OTHER : Phần này cho phép ta chỉ định cài đặt các chỉ định khác như

Name: Tên Ô thường dùng để tham chiếu trong các công thức

Status Bar Text: Chỉ định nối dung hiển thị trên thanh trạng thái khi ta trỏ vào nó.

Enter Key Behavior: Khi gõ Enter sẽ nhảy sang ô kế hay thêm 1 dòng mới.

Allow AutoCorrect : Tự động điều chỉnh ô?

AutoTab : Tự động nhảy sang Ô khác khi đã nhập xong Ô hiện hành

Tab Index: Số thứ tự của Ô này trong Form

ControlTip Text: Chú thích khi trỏ mouse vào Ô này

Ngoài ra còn có Lớp ALL : cho phép ta chỉ định thuộc tính chung cho tất cả các lớp nói trên.

Page 12: Tao FORM

Trang 12

THIẾT KẾ FORM ( MẪU BIỂU)THIẾT KẾ FORM ( MẪU BIỂU) 3/. Các thành phần khác có trong biểu mẫu:

Ngoài thành phần chi tiết (Detail), mẫu biểu (Form) còn có các thành phần khác như:FORMHEADER (tiêu đề đầu mẫu biểu):Thành phần này thường chứa những thông tin được hiển thị 1 lần duy nhất ở đầu mẫu biểu (Form) , thường là tên của mẫu biểu, tiêu đề cột của các nội dung bên dưới ( tiêu đề trường (Field) , nhãn (Lable))Trong thiết kế ta có thể chỉ định không cho in thành phần này ra giấy : đặt tính chất Display When= ScreenOnly.PAGEHEADER (tiêu đề đầu trang):Thành phần này chứa những thông tin mà ta muốn nó lập lại ở đầu mỗi trang in.DETAIL SECTION: Phần này dùng để hiển thị những nội dung của các mẫu tin trong bảng dữ liệu hay bảng vấn tin (TABLE/QUERY). Dữ liệu có bao nhiêu mẫu tin thì sẽ hiển thị bấy nhiêu lần (trong màn hình thiết kế chính là các Ô có chứa tên trường (Field) trong đó và khi thực hiện sẽ hiện thị nội dung của trường (Field) đó).

Page 13: Tao FORM

Trang 13

THIẾT KẾ FORM ( tt)THIẾT KẾ FORM ( tt) 3/. Các thành phần khác có trong mẫu biểu (tt):

PAGEFOOTER (tiêu đề chân trang):Thành phần này chứa những thông tin mà ta muốn nó lập lại ở cuối chân mỗi trang in (ví dụ như đánh số trang) .

FORMFOOTER (tiêu đề cuối biểu mẫu (form) ):Thành phần này thường chứa những thông tin được hiển thị 1 lần duy nhất ở cuối biểu mẫu (Form) , thường là những thông tin mang tính thống kê, hay nội dung kết luận cuối biểu mẫu.Để thêm những thành phần vừa kể trên vào biểu mẫu (form), trong màn hình thiết kế biểu mẫu (Form) vào menu View chọn:View Page Header/Footer : cho tiêu đề đầu/chân trang.View Form Header/Footer : cho tiêu đề đầu/chân biểu mẫu (Form).

Chú ý: trong lúc thiết kế ta có thể thay đổi chiều cao hay chiều rộng của mổi thành phần bằng cách Drag mouse vào đường biên của nó. Tuy nhiên sau khi thiết kế ta phải làm gọn lại tất cả, không nên để thừa các khoảng trống không cần thiết.

Page 14: Tao FORM

Trang 14

THIẾT KẾ FORMTHIẾT KẾ FORM dạng Main/Sub

1/. Giới thiệu Dưới đây là 2 hình ảnh của 1 form dạng Main/Sub được trình bày dưới 2 dạng thiết kế và sau khi thực thi:

Page 15: Tao FORM

Trang 15

Form khi thực thiForm khi thực thi

PhầnSUBFORM

Page 16: Tao FORM

Trang 16

THIẾT KẾ FORMTHIẾT KẾ FORM dạng Main/Sub (tt) Quan sát 2 hình trên ta nhận thấy form dạng này có 2 thành phần riêng biệt :

Phần biểu mẫu (Form) chính (MainForm) : đây là 1 biểu mẫu (form) được thiết kế thông thường ở dạng Columnarđược thiết kế thông thường ở dạng Columnar, và bên trong nó còn chứa thêm 1 biểu mẫu (form) khác( được nhúng vào từ 1 form khác) . Dữ liệu trong MainForm thường được lấy từ Table có mối quan hệ 1.

Phần biểu mẫu phụ (SubForm): là phần sẽ được nhúng vào bên trong MainForm trong phần Detail, hình thức trình bày của hình thức trình bày của SubForm thường ở dạng DataSheetSubForm thường ở dạng DataSheet. Dữ liệu trong SubForm thường được lấy từ Table có mối quan hệ nhiều hay từ một câu truy vấn nào đó.

Tuy nhiên chúng ta cần chú ý trong 2 nguồn dữ liệu dùng cho MainForm, SubForm phải có ít nhất chung trường (Field) để chúng giữ mối quan hệ với nhau.

Page 17: Tao FORM

Trang 17

THIẾT KẾ FORMTHIẾT KẾ FORM dạng Main/Sub (tt)

Cách thực hiện:Đễ tạo biểu mẫu (form) dạng này trước tiên ta tiến hành tạo 2 biễu mẩu riêng biệt.

Phần biểu mẫu (Form) chính (MainForm) : Tạo 1 biểu mẫu (Main form) ở dạng Columnarở dạng Columnar. Dữ liệu trong MainForm thường được lấy từ Table có mối quan hệ 1.

Phần biểu mẫu phụ (SubForm): Tạo 1 biểu mẫu (Sub form), hình thức trình bày của SubForm thường ở dạng DataSheethình thức trình bày của SubForm thường ở dạng DataSheet. Dữ liệu trong SubForm thường được lấy từ Table có mối quan hệ nhiều hay từ một câu truy vấn nào đó và luôn bảo đãm rằng phải có 1 trường (fielname) có mối qua hệ với MainForm.

Page 18: Tao FORM

Trang 18

THIẾT KẾ FORMTHIẾT KẾ FORM dạng Main/Sub (tt)

Sau khi thiết kết xong hai biểu mẫu (form) ta tiến hành nhúng chúng vào nhau như sau:

Cách 1Cách 1 : Mở MainForm, click chọn công cụ SubForm/SubReport , sau đó click mouse vào vùng Detail của MainForm, cửa sổ SubForm Wizard mở ra cho ta lựa chọn tên của SubForm có trong danh sách. Hiệu chỉnh lại kích thước của SubForm để hiển thị đầy đủ thông tin.

Cách 2Cách 2: Cho hiển thị song song 2 của sổ MainForm và cửa sổ DataBase, dùng mouse drag SubForm từ cửa sổ DatBase thả vào bên trong vùng Detail của MainForm.

Page 19: Tao FORM

Trang 19

THIẾT KẾ FORMTHIẾT KẾ FORM dạng Main/Sub (tt)

Chú ý :Chú ý : Như đã nói ở trên, giữa MainForm và SubForm có mối quan hệ với

nhau thông qua 1 tên trường (FieldName). Nếu như trong quá trình thiết kế form ta đã chuẩn bị đúng tên trường (FieldName) đó thì khi thực hiện kết nối chúng, Access sẽ tự động kết nối (Link) chúng lại với nhau thông qua hai khái niệm Link Child Fields (tên trường bên SubForm) và Link Master Fields (tên trường bên MainForm) ( xem

hình)

Page 20: Tao FORM

Trang 20

THIẾT KẾ FORMTHIẾT KẾ FORM dạng Main/Sub (tt)

Chú ý :Chú ý : Nếu như trong quá trình thực thi chúng ta cảm nhận dữ liệu của 2 Form không ăn khớp với nhau, ta cần theo dõi lại vấn

đề này theo 2 vấn đề sau:

1/. Kiểm tra lại dữ liệu nguồn cung cấp cho Sub form có chứa 1 fielname dùng để liên kết với Main form hay không?

2/.Right click ngay trên đường biên ( hay trên nút handle) của SubForm chọn mục Properties, hoặc Click chọn SubForm rồi vào menu View chọn mục Properties để vào cửa sổ thuộc tính của Sub Form. Tại cửa sổ này chọn lớp Data để thiết lập

lại kết nối (link) giữa Main và SubForm thông qua hai khái niệm Link Child Fields (tên trường bên SubForm) và Link

Master Fields (tên trường bên MainForm)

Tham chiếu dữ liệu

Page 21: Tao FORM

Trang 21

THIẾT KẾ FORMTHIẾT KẾ FORM dạng Main/Sub 2/. Tham chiếu dữ liệu Trong thực tế ( hay xét ví dụ phần trên) ta nhận thấy giữa hai form có tham chiếu dữ liệu với nhau. Xét ví dụ trên ta thấy Trong MainForm có nội dung thông báo tổng số sinh viên của 1 lớp, mà số liệu này phải được tính toán trong SubForm. Muốn thực hiện điều này trong SubForm ta tạo thêm 1 Ô tính toán (thường tạo trong phần FormFooter) và dùng các hàm thống kê sẳn có của Access để tính toán dựa trên 1 trường nào đó (Ví dụ =Count(MSSV) ). Sau đó tiến hành đặt tên cho Ô này để để dàng tham chiếu về sau.

Page 22: Tao FORM

Trang 22

THIẾT KẾ FORMTHIẾT KẾ FORM dạng Main/Sub

2/. Tham chiếu dữ liệu (tt) Trong MainForm ta cũng tạo 1 Ô công thức tương tự như trên

nhưng công thức bây giờ là một phép tham chiếu theo mẫu sau:

[Tên khung chứa biểu mẫu con].Form![tên của Ô công thức trong SubForm]

Chú ý: Thông thường tên khung chứa biểu mẩu con và tên biểu mẩu con Access thường đặt trùng nhau. Nên khi tham chiếu

chúng ta nên cẩn thận điều này.

Page 23: Tao FORM

Trang 23

THIẾT KẾ FORMTHIẾT KẾ FORM dạng Main/Sub 2/. Tham chiếu dữ liệu (tt)

Tuy nhiên để có thể tham chiếu dể dàng hơn, ta có thể nhờ Access hỗ trợ theo cách sau:

Right Click trên Unbound (ở Main form cần tham chiếu dữ liệu) chọn Properties. Trong cửa sổ này chọn lớp data. Trên dòng Control source Click mouse vào nút …

để mở tiếp ra cửa sổ sau: (xem hình) va thực hiện những thao tác sau”

1

3

2

Tại vùng cửa sổ 1: Double Click mouse vào tên form hiện hành để mở ra form con (sub) có bên trong nó, click chọn vào sub form này. Tiếp tục quan sát ở vùng cửa sổ thứ 2 ta sẽ thấy xuất hiện TÊN của ô công thức mà ta đã đặt tên trong lúc thiết kế sub form. Double Click vào tên này, toàn bộ công thức tham chiếu sẽ đuợc hoàn thiện và đưa lên vùng cửa sổ thứ 3. Click ok để hoàn tất.Lúc này ta sẽ thấy unbound của chúng ta sẽ chứa đầy đủ tên công thức mà ta cần tham chiếu

Page 24: Tao FORM

Trang 24

FORMFORM MỞ RỘNG1/. Giới thiệu Trước đây ta đã làm quen với biểu mẫu dạng Main/Sub với Sub form được nhúng vào trong main, tuy nhiên trong thực tế đôi khi người ta sử dụng nhiều hơn 2 form để tạo nên một biểu mẫu cuối cùng. Thông thường có hai dạng cơ bản sau:

Dạng 1Dạng 1

Page 25: Tao FORM

Trang 25

Ta nhận thấy hai biểu mẫu SubHoaDon và SubPhieuThu cùng 1 cấp và là con của biểu mẫu chính, như vậy thông tin liên kết từ hai form con(Sub Form) đến form chính (Main form) là

Link Child Field (SubHoaDon): MaKHLink Mates Fields (Main): MaKH

Link Child Field (SubPhieuThu): MaKHLink Mates Fields (Main): MaKH

Form có hai Form có hai Form con Form con cùng cấp:cùng cấp:

Page 26: Tao FORM

Trang 26

FORMFORM MỞ RỘNG (tt)

Dạng 2Dạng 2

Page 27: Tao FORM

Trang 27

Ở dạng thứ hai này, ta nhận thấy hai biểu mẫu Sub_Biênnhận là con của biểu mẫu chính. Còn Sub_SanPham thì lại là con của Sub_Biênnhận. Và đây là loại mẩu biểu có 2 form con khác cấp

Form có hai Form có hai Form con khác Form con khác

cấp:cấp:

Page 28: Tao FORM

Trang 28

Như vậy ta thấy Sub_BienNhan sẽ là biểu mẫu con thật sự của biểu mẫu chính thông qua liên kết

Link Child Field (SubHoaDon): MaNVLink Mates Fields (Main): MaNV

Sub_SanPham là biểu mẫu con của biểu mẫu Sub_BienNhan nhưng do thiết kế kiểu này mối liên kết không còn liên hệ trực tiếp bằng tên trường (FielName) tương tự như trên mà phải thông qua tên gọi của ô chứa tên trường liên kết.

Ta có cách làm như sau:Ta có cách làm như sau:Tạo 1 ô Unbound, dùng ô này liên kết với biểu mẫu con thứ nhất Sub_bienNhan (ví dụ có tên là: BIENNHAN) theo cú pháp sau:

[Tên Form].[Form]![Tên Ô chứa Trường liên kết][Tên Form].[Form]![Tên Ô chứa Trường liên kết]

Page 29: Tao FORM

Trang 29

Theo ví dụ trên ta sẽ có đuợc công thức tham chiếu như sau

[BIENNHAN].[Form]![So_BN_Sub1]

Sau đó tiến hành đặt tên cho ô chức công thức tham chiếu này (Ví dụ là trung_gian), cài đặt thuộc tính Visible cho nó là NO ( để không hiển thị ở màn hình kết quả).Bây giờ mối liên kết giữa Sub_SanPham với Sub_BienNhan sẽ thông qua bởi ô Trung_Gian này

Link Child FieldLink Child Field: : SoBienNhanSoBienNhan ( tên Trường Sub thứ 2) ( tên Trường Sub thứ 2)Link Mates FieldsLink Mates Fields: : Trung_gianTrung_gian ( tên của Ô làm chức ( tên của Ô làm chức năng trung gian kết nối)năng trung gian kết nối)

Page 30: Tao FORM

Trang 30

CÁC VẤN ĐỀ KHÁCCÁC VẤN ĐỀ KHÁC A.A.Cách sử dụng thanh công cụ:Cách sử dụng thanh công cụ:

Tùy vào nhu cầu thiết kế ta sẽ click chọn từng công cụ thích hợp, sau đó drag mouse để vẽ các Ô vào trong màn hình thiết kế.Chú ý: Đối với Ô dạng text box khi được tạo ra nó luôn luôn có 1 Ô nhãn kèm theo phía bên trái (với tên mặc nhiên text 1, text 2 v.v..) , ta có thể thay đổi nội dung của nó bằng cách click mouse vào ô đó.

Ta cần phải phân biệt nội dung của nhãn và tên của Ô, cũng như tên của Ô với lại tên nguồn dữ liệu cung cấp cho Ô ( Access hay tự động lấy tên trùng).

Page 31: Tao FORM

Trang 31

CÁC VẤN ĐỀ KHÁC (tt)CÁC VẤN ĐỀ KHÁC (tt)B.B. Chuyển đổi giữa dạng Bound và Chuyển đổi giữa dạng Bound và

Unbound:Unbound:Hai dạng này khác nhau ở chổ là Unbound thì không có tính

chất Control Source. Do đó muốn chuyễn đổi giữ hai dạng này thì ta xoá bỏ tên trường (Field) trong Ô hay thêm vào tên trường (Field) vào tính chất Control source. ( hoặc gõ

trực tiếp vào trong ô).

C.C. Tạo Ô dạng chức công thức tính toán( Calculate Control)Tạo Ô dạng chức công thức tính toán( Calculate Control)

Để tạo Ô dạng này ta dùng công cụ TextBox, sau đó gõ trực tiếp công thức tính toán vào trong Ô. Công thức phải được

bắt đầu bởi dấu bằng và sau đó là các dữ liệu và phép toán hợp lý.

D.D. Chuyễn từ Bound sang dạng khácChuyễn từ Bound sang dạng khác

Để chuyễn sang dạng khác, Right click ngay trên ô đó chọn Change to rồi lựa chọn dạng thích hợp: List box, Value list,

Combo Box…

Page 32: Tao FORM

Trang 32

CÁC VẤN ĐỀ KHÁC (tt)CÁC VẤN ĐỀ KHÁC (tt)ComboBox và List BoxComboBox và List Box

Trong nhiều trường (Field) hợp, giá trị của một Ô được giới hạn trong một danh sách có sẳn, ta nên thiết lập sẳn danh sách này để việc nhập liệu được dể dàng và chính xác hơn. Access hỗ trợ cho ta 2 công cụ đó là ComboBox và ListBox.

1. LISTBOX : là một danh sách mà ta có thể chọn một trong những giá trị đã có.

2. COMBOBOX : là sự kết hợp giữa list box và textbox. Nó cho phép chọn một giá trị có trong danh sách và cũng cho nhập một giá trị mới vào.

• Danh sách dữ liệu được nêu trong ListBox và ComBoBox có thể có nhiều cột nên ta cần thiết phải chỉ định cột nào là cột cung cấp dữ liệu.

• Dữ liệu cho ComboBox và ListBox có thể được lấy từ nhiều nguồn khác nhau

• Dữ liệu lấy từ bảng (table) hay từ câu truy vấn (Query)• Dữ liệu do ta nhập vào thành 1 danh sách (Value List)

Page 33: Tao FORM

Trang 33

CÁC VẤN ĐỀ KHÁC (tt)CÁC VẤN ĐỀ KHÁC (tt) Tạo ComboBox và ListBox bằng Design:Tạo ComboBox và ListBox bằng Design:

Chọn công cụ ComboBox rồi click Mouse vào vị trí cần tạo trên cửa sổ thiết kế.

Tắt cửa sổ công cụ Control Wizards (click Cancel) trên thanh công cụ nếu nó mở ra, Right Click lên nó chọn mục Properties để chỉ định các tính chất ví dụ như:

Nếu dữ liệu được lấy từ bảng hay câu truy vấn thì trong lớp DATA có:

Rowsource Type : Table/QueryRowSource : tên của bảng dữ liệu hay câu truy vấn. Hoặc cũng có thể

là nội dung của một câu lệnh SQL.

Nếu dữ liệu được lấy từ những giá trị do ta nhập vào thì trong lớp DATA có:

Rowsource Type : Value ListRow Source : Danh sách các trị do ta nhập vào

Thông thường Access sẽ lấy cột đầu tiên trong dang sách từ bảng hay câu truy vấn, do đó nếu như ta muốn lấy dữ liệu từ bảng tại 1 cột khác thì tốt nhất ta nên tạo câu truy vấn với cột đó là cột đầu tiên trong câu truy vấn.

Page 34: Tao FORM

Trang 34

CÁC VẤN ĐỀ KHÁC (tt)CÁC VẤN ĐỀ KHÁC (tt) Tạo ComboBox và ListBox bằng Design:Tạo ComboBox và ListBox bằng Design:

Ví dụ 1Tạo Ô ComboBox dùng để nhập Mã khách hàng cho hoá đơn với nguồn dữ liệu lấy từ 2 trường (Field) đầu tiên trong Table HoSoKH:

•RowSource Type ( nguồn dữ liệu lấy từ dạng nào): Table/Query•RowSource (nguồn dữ liệu): HoSoKH•Column Count (số lượng cột được lấy): 2•Column Width (độ rộng của mỗi cột) : 0.5”;1.5” ( * )•List Width (tổng độ rộng danh sách: 2” ( * )

( * ) Độ rộng chỉ định trong Column Width là độ rộng của từng cột, được phân cách bởI dấu “;”. Trong ListWidth không nên để giá trị là Auto khi danh sách có nhiều cột.Khi muốn hiển thị luôn cả tiêu đề của tên trường (Field), ta đặt giá trị trong mục Column Heading : YES.Tính chất Bound Column chỉ định thứ tự cột để lấy dữ liệu làm kết quả cho Ô nhập liệu, thông thường là cột 1. Nếu muốn chỉ định cột có thứ tự khác 1 ta thường che các cột phía trước bằng cách đặt độ rộng cho nó bằng “0” . Tốt nhất ta nên dùng query để lấy số liệu để tránh nhầm lẫn.

Page 35: Tao FORM

Trang 35

CÁC VẤN ĐỀ KHÁC (tt)CÁC VẤN ĐỀ KHÁC (tt) Tạo ComboBox và ListBox bằng Design:Tạo ComboBox và ListBox bằng Design:

Ví dụ 2Tạo Ô ComboBox LoaiHang nhận 1 trong các giá trị sau: Cái; Thùng; Lon; Hộp

RowSource Type ( nguồn dữ liệu lấy từ dạng nào): Value ListRowSource (nguồn dữ liệu): “Cái” ; “Thùng” ; “Lon” ; “Hộp”Column Count (số lượng cột được lấy): 1

Ví dụ 3Tạo Ô ComboBox Chucvu nhận 1 trong các giá trị sau: GD; PGD; TP; PP;NV và hiển thị thêm cột giải thích nội dung:

RowSource Type ( nguồn dữ liệu lấy từ dạng nào): Value ListRowSource (nguồn dữ liệu): “GD” ; “Giám đốc” ; “PGD” ; “Phó giám đốc”; “TP”; “Trưởng Phòng”; “PP”; “Phó phòng”; “NV”; “Nhân viên”Column Count (số lượng cột được lấy): 2

Page 36: Tao FORM

Trang 36

CÁC VẤN ĐỀ KHÁC (tt)CÁC VẤN ĐỀ KHÁC (tt)Tạo nhóm nhiệm ý (Option Group)Tạo nhóm nhiệm ý (Option Group)

Trường hợp ta muốn người sử dụng chọn 1 số trong các trường hợp đặc trưng được nêu ra thì ta nên tạo 1 nhóm các nhiệm ý. Một nhóm nhiệm ý là nhóm chứa các Ô loại CheckBox, Option Button hay ToggleButton mang tính chất loại trừ lẫn nhau. khung của nhóm nhiệm ý cũng có gắn 1 nhãn như những Ô khác. A.Tạo nhóm nhiệm ý bằng

DesignĐể tự tạo nhóm nhiệm ý ta thực hiện các bước sau:Click chọn công cụ Option Group, Drag mouse tại vị trí muốn đặt Option Group tạo thành 1 khung hình chữ nhật để chứa các mục chọn (option)sau này. Cài đặt thuộc tính giá trị quản lý chung cho khung Option Group này(field name nào?)Tắt công cụ Wizard.Lần lượt tạo các mục chọn (bằng công cụ Option) thích hợp bên trong khung hình chữ nhật.Chỉ định các tính chất cần thiết cho từng mục chọn

Page 37: Tao FORM

Trang 37

Ví dụ : Tạo 1 nhóm nhiệm ý cho người sử dụng lựa chọn giới Ví dụ : Tạo 1 nhóm nhiệm ý cho người sử dụng lựa chọn giới tính khi nhập liệutính khi nhập liệu

Dữ liệu điều khiển Option Group là trường (Field

Name) PHAIPHAI

Page 38: Tao FORM

Trang 38

Ví dụ : Tạo 1 nhóm nhiệm ý cho người sử dụng lựa chọn giới Ví dụ : Tạo 1 nhóm nhiệm ý cho người sử dụng lựa chọn giới tính khi nhập liệutính khi nhập liệu

Giá trị mặc nhiên cho Option mục chọn •Phái Nam là 0; tương tự ta sẽ cài đặt cho Option mục chọn

•Phái nữ là -1

Page 39: Tao FORM

Trang 39

B. Tạo nhóm nhiệm ý bằng AutoWizard

Để tạo nhóm nhiệm ý có sự trợ giúp của Access ta thực hiện các bước sau:Click chọn công cụ Option Group, Drag muose tại vị trí muốn đặt Option Group tạo thành 1 khung hình chữ nhật để chứa các mục chọn sau này, cửa sỗ trợ giúp mở ra, lần lượt thao tác và chỉ định các nội dung sau:

Bước 1: Lần lượt cung cấp tên cho các mục chọn sau này trong nhóm trong dòng Lable Name

Page 40: Tao FORM

Trang 40

B. Tạo nhóm nhiệm ý bằng AutoWizard (bước 2)

Bước 2: Có hay không chọn giá trị ngầm định, nếu có thì giá trị nào sẽ mặc nhiên hiển thị

Page 41: Tao FORM

Trang 41

B. Tạo nhóm nhiệm ý bằng AutoWizard (bước 3)

Bước 3: Chỉ định giá trị tương ứng cho mỗi mục chọn

Page 42: Tao FORM

Trang 42

B. Tạo nhóm nhiệm ý bằng AutoWizard (bước 4)

Bước 4: Chỉ định giá trị sau khi lựa chọn sẽ được lưu vào biến hay vào trường (Field Name) nào?

Page 43: Tao FORM

Trang 43

B. Tạo nhóm nhiệm ý bằng AutoWizard (bước 5)

Bước 5: Lựa chọn mục chọn của ta thiết kế thuộc loại nào và hình thức thể hiện của nó ra sao.

Page 44: Tao FORM

Trang 44

B. Tạo nhóm nhiệm ý bằng AutoWizard (bước 6)

Bước 6: Chỉ định tên cho nhãn cũa Option Group và , Click Finish để kết thúc