CHƯƠ NG 4: THI T K M U BI Ể
4.6. Form và nh ng b ng liên k ế
Access nh n ra các quan h khi t o m t form m i t m t b ng cha. N u b ng chaậ ệ ạ ộ ớ ừ ộ ả ế ả có nhi u b ng con thì Access ch hi n th các record trong m t b ng, nó s ch n b ngề ả ỉ ể ị ộ ả ẽ ọ ả đ u tiên mà nó tìm th y.ầ ấ
Ví d b ng LOP và b ng SINHVIEN trong c s d li u QLSV. Khi t o form tụ ả ả ơ ở ữ ệ ạ ừ b ng l p thì nó s hi n th danh sách các record quan h trong b ng con SINHVIEN.ả ớ ẽ ể ị ệ ả
4.6.1. Subform control
Subforms là không th thi u cho vi c hi n th thông tin t hai b ng khác nhau ho cể ế ệ ể ị ừ ả ặ các truy v n trên cùng m t form. Thông thấ ộ ường, subforms được s d ng khi d li uử ụ ữ ệ ngu n trong main có quan h m tnhi u v i d li u ngu n c a subform. Nhi u recordồ ệ ộ ề ớ ữ ệ ồ ủ ề trong subform được liên k t v i m t record trong mainform.ế ớ ộ
Access s d ng các thu c tính LinkMasterFields và LinkChildFields c a subform đử ụ ộ ủ ể l a ch n các record trong subform có liên quan đ n m i record trong mainform.ự ọ ế ỗ
a. T o b ng Wizardạ ằ
T o main form: d li u ngu n c a mainạ ữ ệ ồ ủ form thường là thông tin b ng cha, do đó d ngở ả ạ form thường là nh ng d ng hi n th m t recordữ ạ ể ị ộ t i m t th i đi m nh columnar.ạ ộ ờ ể ư
M main form ch đ Design.ở ở ế ộ
B t nút control Wizard.ậ
Ch n công c SubForm/SubReport trongọ ụ nhóm
Controls v vào Form, xu t hi n c a sẽ ấ ệ ử ổ SubForm Wizard v i hai tùy ch n:ớ ọ
Use existing Tables and Queries (s d ngử ụ b ng và các query làm d li u ngu n choả ữ ệ ồ subform)> Next.
Ch n b ng ho c query làm d li u ngu n cho subọ ả ặ ữ ệ ồ form, trong b ng ho c queryả ặ ph i có field liên k t v i main form >Next.ả ế ớ
Ch n field liên k t v i subform>Next.ọ ế ớ
Nh p tên cho subform> Finish.ậ
Use an existing form: s d ng form có s n làm subform.ử ụ ẵ
Ch n form làm subform>Nextọ
Nh p tên cho SubForm>Finishậ
b. T o b ng Designạ ằ
N u d li u ngu n c a subform đế ữ ệ ồ ủ ượ ấ ừc l y t nhi u b ng thì ph i t o query, trongề ả ả ạ query ph i ch a field liên k t v i main form (link child filed)ả ứ ế ớ
D ng c a subform th hi n quan h n, do đó thạ ủ ể ệ ệ ường ch n d ng Datasheet ho cọ ạ ặ Tabular.
M main form ch đ design, ch n công c subform/Subreport trong nhómở ở ế ộ ọ ụ Controls drag chu t v vào main form.ộ ẽ
M Properties Sheet và thi t l p các thu c tính:ở ế ậ ộ
Source object: Ch n Table/Query làm d li u ngu n cho Subform, ho c ch n form ọ ữ ệ ồ ặ ọ
n u đã thi t k form đ làm subform.ế ế ế ể
Link child field: nh p tên c a field trong subform liên k t v i main formậ ủ ế ớ
Link master field: nh p tên field c a main form liên k t v i subform.ậ ủ ế ớ
4.6.2. Hi u ch nh subform:ệ ỉ
Khi ch đ nh thu c tính Source Object cho Subform thì form xu t hi n v i d ng m cỉ ị ộ ấ ệ ớ ạ ặ đ nh đị ược quy đ nh trong thu c tính Default view.ị ộ
Tuy nhiên, n u b n mu n s d ng m t form hoàn toàn riêng bi t đ b n có th tùyế ạ ố ử ụ ộ ệ ể ạ ể bi n nó.ế
4.6.3. T o ô tính toán trong subformạ
Khi t o m t subform, b n có th mu n hi n th subform thông tin t ng h p d ngạ ộ ạ ể ố ể ị ổ ợ ở ạ t ng th . Ví d , b n có th mu n hi n th s lổ ể ụ ạ ể ố ể ị ố ượng c a các record trong subform t i m tủ ạ ộ v trí nào đó trên Mainform.ị
Ví d :ụ C n hi n th s s sinh viên trong m i l p trên main formầ ể ị ỉ ố ỗ ớ
Trước khi đ t ô tính toán t ng h p d li u trên Mainform thì giá tr c a nó ph iặ ổ ợ ữ ệ ị ủ ả được tính trong Subform. Ô tính toán t ng h p d li u ph i đổ ợ ữ ệ ả ược đ t trong ph n footerặ ầ c a Subform.ủ
Sau đó, trên Mainform b n chèn m t text box v i ControlSource đạ ộ ớ ược thi t l p giáế ậ tr nh sau:ị ư =[SubformName].Form![ControlName_inSubform]
Trong đó:
SubformName: là tên c a Subformủ
ControlName_inSubform: tên c a ô tính toán t ng h p d li u trong Subform.ủ ổ ợ ữ ệ
Ví d :ụ
4.7. Tab control
Tab control là m t công c cho phép b n có th hi n th nhi u n i dung trên m tộ ụ ạ ể ể ị ề ộ ộ không gian h n ch , b ng cách các t ch c n i dung c n hi n th trên t ng trang riêngạ ế ằ ổ ứ ộ ầ ể ị ừ bi t.ệ
Tab control không ph i là l a ch n t t vì nhả ự ọ ố ược đi m c a nó là c n ph i clickể ủ ầ ả chu t đ di chuy n t tab này sang tab khác.ộ ể ể ừ
M t tab control có ý nghĩa nh t khi các form độ ấ ược thi t k ch y u cho vi c xemế ế ủ ế ệ ho c ch nh s a d li u, n u d li u này có th đặ ỉ ử ữ ệ ế ữ ệ ể ược chia thành các nhóm logic, và công vi c ch nh s a thệ ỉ ử ường ch liên quan đ n m t nhóm, thì tab control là l a ch n t t.ỉ ế ộ ự ọ ố
4.7.1. S d ng tab controlử ụ
Trong Form Design Tools trên thanh Ribbon
Ch n Design, trong nhóm Controls, click nút Tab Controlọ
V tab control vào form t i v trí thích h p.ẽ ạ ị ợ
Thêm t t c các trang c n thi t.ấ ả ầ ế
4.7.2. Hi u ch nh tab Controlệ ỉ
a. Thêm và xóa tab
Khi t o m i m t tab control thì luôn m c đ nh có hai trangạ ớ ộ ặ ị b n có th thêm ho c xóa b ng cách Click ph i ch n Insert ho cạ ể ặ ằ ả ọ ặ Delete Page.
b. T o nhãn cho các tabạ
Ch n tab mu n t o nhãn.ọ ố ạ
M Properties Sheetở
Ch n thu c tính caption: nh p nhãn cho các trang.ọ ộ ậ
c. S p x p l i th t tabắ ế ạ ứ ự
S p x p th t c a các trang b ng cách click ph iắ ế ứ ự ủ ằ ả trên tab> ch n Page Order…ọ
d. Đ t các control vào trangặ
Ch n trang thích h p.ọ ợ
Ch n control trong Navigation pane, drag chu t đ a vào trang.ọ ộ ư 4.8. Navigation Form
Access gi i thi u m t d ng form m i là Navigation form, là m t form có m tớ ệ ộ ạ ớ ộ ộ navigation control mà nó có th hi n th m t ho c nhi u form và report, navigation controlể ể ị ộ ặ ề có nhi u tab giúp b n có th di chuy n nhanh đ n b t k m t form khác, ho c form d ngề ạ ể ể ế ấ ỳ ộ ặ ạ Main/Sub.
4.8.1. T o Single level Navigation Form:ạ
Trong nhóm l nh Forms trên thanh Ribbon, click nútệ dropdown Navigation. Ch n d ng Navigation, g m các d ng:ọ ạ ồ ạ Horizontal Tabs. Vertical Tabs, Left. Vertical Tabs, Right. Horizontal Tabs, 2 levels Horizontal Tabs and Vertical Tabs, Left. Horizontal Tabs and Vertical Tabs, Right
Navigation form xu t hi n trong ch đ Design view v i s k t h p c a haiấ ệ ế ộ ớ ự ế ợ ủ control: m t control subform r ng và l n và m t navigation.ộ ỗ ớ ộ
Đ thêm m t ể ộ navigation button vào form, click ch n m t form trong Navigationọ ộ Panel c a Access và drag chu t kéo form vào navigation controlủ ộ
T o kho ng cách gi a các navigation button b ng cách ch n Form Layout Tools,ạ ả ữ ằ ọ ch n tab Arrangeọ ➝ Control Padding, ch nọ lo i kho ng cách.ạ ả
4.8.2. T o Two level Navigation Formạ
Trong nhóm l nh Forms trên thanh Ribbon, click nút dropdownệ Navigation. Ch n d ng Navigation: Horizontal Tabs, 2 levelsọ ạ
Xu t hi n m t Navigation Form ch đ Layout view v i s k t h p c a baấ ệ ộ ở ế ộ ớ ự ế ợ ủ control: m t control subform r ng và l n và hai navigation control.ộ ỗ ớ
T o tiêu đ cho level1 b ng cách double click vào khung [Add New] > Nh p tiêuạ ề ằ ậ đ .ề
Thêm submenu cho tiên đ này b ng cách drag chu t kéo form t trong navigationề ằ ộ ừ pane vào submenu.