BÀI TẬP THỰC HÀNH ACCESS

- Trong nguồn dữ liệu của SubForm thứ nhất này ngoàu những nội dung phục vụ cho SubForm phải có chứa các Field mà bạn muốn thực hiện công thức như trên. - Tạo liên kết giữa SubForm thứ nhất và SubForm thứ hai bằng cách gửi giá trị của Masv trong SubForm thứ nhất ra mainForm ( tạo ở mainForm 1 ô textBox chứa giá trị Masv của SubForm thứ nhất) và đặt SubForm thứ hai liên kết với ô Text Box này ở main form. Các bước tiến hành như sau : - Tại 1 ô Textbox trong mainForm, hiện bảng Properites của ô, chọn : o Name : Đặt tên cho ô (ví dụ Tgian) o Control Source :viết công thức lấy giá trị từ SubForm thứ nhất theo qui tắc [Tên ô chứa SubForm].Form![tên ô lấy giá trị] như sau : o = [SUB1].Form![Masv] o Visible : Chọn No. Chỉnh thuộc tính của ô SubForm thứ hai theo nội dung sau ; o Link Child Fields : tên field làm chỉ tiêu quan hệ (Masv). o Link Master Fields : tên ô Text box vừa tạo.(Tgian). - Ở trang Thong Tin Ve Sinh Vien Tạo các TextBox hiển thị các thông tin về sinh viên bằng cách lấy những thông tin này qua nguồn dữ liệu của SubForm thứ nhất (Tất nhiên khi tạo SubForm thứ nhất này bạn phải chú ý đưa tất cả các thông cần lấy vào nguồn dữ liệu của nó).

doc60 trang | Chia sẻ: aloso | Lượt xem: 4313 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu BÀI TẬP THỰC HÀNH ACCESS, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
PHAM MAÕ SP TEÂN SP ÑVÒ TÍNH ÑÔN GIAÙ SL TOÀN 1 RÖÔÏU CHAI 230.50 4 2 GIA VÒ THUØNG 40.00 2 3 BAÙNH KEM CAÙI 2.00 15 4 BÔ KG 15.00 5 5 BAÙNH MÌ CAÙI 1.00 20 6 NEM KG 10.00 20 7 TAÙO KG 5.00 28 8 CAÙ HOÄP THUØNG 62.50 5 9 KEÏO THUØNG 12.00 10 10 GAÏO KG 2.00 50 11 NEÁP KG 3.00 60 Table Sanpham Câu 2: Thực hiện sắp xếp: Mở Table SAN PHAM Sắp xếp theo DONGIA tăng dần. Sắp xếp theo TENSP giảm dần Mở Table HOA DON: Sắp xếp theo MANV tăng dần, trùng MANV thì xếp theo NGAYLAPHD tăng dần. Mở Table NHAN VIEN: Sắp xếp theo PHAI, trùng phái thì xếp theo TENNV giảm dần, trùng TENNV thì xếp theo NGAYSINH tăng dần. Đóng Table NHÂN VIÊN đã được sắp xếp, sau đó mở lại một lần nữa, bảng nhân viên có còn được theo thứ tự sắp xếp không? Cho nhận xét Câu 3: Thực hiện thao tác lọc dữ liệu như sau: Mở table NHÂN VIÊN, sử dụng Filter by Selection thực hiện lọc Các nhân viên có tên là “Hùng” Các nhân viên có tên bắt đầu là “H” Các nhân viên có họ lót là “Ngọc” Các nhân viên sinh năm 1975 Các nhân viên sinh vào tháng 09 Các nhân viên nam Mở table SANPHAM, sử dụng Filter by form thực hiện lọc: Các sản phẩm có đơn vị tính là “thùng” Các sản phẩm có đơn giá >100 Các sản phẩm có đơn giá 20 đến 50 Mở table KHACHHANG, sử dụng Advanced Filter/Sort thực hiện lọc: Các Khách hàng ở “Tp. HCM” nhưng không có số điện thoại Các khách hàng ở “Tp. HCM” hoặc “Hà Nội” Câu 4: Sao chép cấu trúc và dữ liệu của table NHANVIEN thành table có tên là LYLICHNV Sao chép cấu trúc của table SAN PHAM thành table có tên là SANPHAMMOI Sao chép cấu trúc và dữ liệu của SANPHAM thành table có tên là SP_TAM Đổi tên table SANPHAMMOI thành SANPHAMMOINHAP Đổi tên table LYLICHNV thành bảng CHAMCONGNV Vào chế độ Design View của bảng CHAMCONGNV, thực hiện các công việc: Chèn thêm trường NC (ngày công), có kiểu dữ liệu là Number, Validation rule là >=0 and <=30 Chèn thêm trường DGNC (đơn giá ngày công), có kiểu dữ liệu là Number, Validation Rule >0 Xóa các trường HONV, TENNV, PHAI, NGAYSINH, ĐIACHI, DIENTHOAI Nhập các giá trị cho cột ngày công tùy ý nhưng nằm trong khoảng từ 0 đến 30, thử nhập giá trị >30 và cho nhận xét Nhập các giá trị cho cột DGNC là 15000 hoặc 20000, thử nhập giá trị <0 và cho nhận xét Câu 5: Mở table SP_TAM, dùng chức năng Edità Find hoặc Edit à Replace để thực hiện các thao tác sau: Tìm những sản phẩm có đơn giá 100 Tìm những sản phẩm có đơn vị tính là “Kg” Tìm những sản phẩm có Tên sản phẩm bắt đầu là “B” Tìm và thay thế những đơn vị tính là “cái” thay thành “Chiếc”. Câu 6: Xoá table SP_TAM, CHAMCONGNV, SANPHAMMOINHAP. Câu 7: Thiết lập Relationship giữa các table. Câu 8: Tạo CSDL trống tên QLVT.MDB, sau đó dùng chức năng Import, Import các Table SanPham, HoaDon, ChiTietHoadon từ CSDL Hoadon sang và dùng chức năng Link Table để tạo liên kết giữa hai Table ChiTietHoaDon có trong hai CSDL này. Câu 9 : Dùng chức năng Export, export Table KhachHang, Nhanvien từ CSDL HoaDon sang CSDL QLVT.MDB. Câu 10 : Dùng chức năng Export, export Table KhachHang từ CSDL HoaDon thành tập tin tên DanhSachKhachHang.XLS bên Excel. BÀI 4 BÀI TẬP QUERY Mở tập tin HOADON.MDB Hãy tạo các truy vấn sau: I. SELECT QUERY Tạo query cho biết các thông tin về hoá đơn : mã HD, tên KH, tên NV lập hoá đơn, ngày lập HD, ngày nhận hàng, kết quả được sắp xếp theo ngày lập hóa đơn. Tạo query cho biết các thông tin về sản phẩm đã xuất bán trong các hóa đơn như sau : Tên sp, mã HD, ngày lập hóa đơn, ngày nhận hàng, số lượng, kết quả được sắp xếp theo ngày nhận hàng. Tạo query cho biết các thông tin về nhân viên và những hóa đơn của nhân viên lập như sau :tên Nv lập hóa đơn, Mã HD, Mã khách hàng, ngày lập HD, ngày nhận hàng, kết quả được sắp xếp theo ngày nhận hàng. Tạo query cho biết các thông tin về hóa đơn của khách hàng CINOTEC : mã HD, tên NV lập hóa đơn, ngày lập HD, ngày nhận hàng. Kết quả được sắp xếp theo ngày nhận hàng. Tạo query cho biết các thông tin về hóa đơn của khách hàng CINOTEC, FAHASA, SAVICO, SJC bao gồm : mã HD, mã KH, tên NV lập hoá đơn, ngày lập HD, ngày nhận hàng, tên sản phẩm, số lượng, đơn giá. Kết quả được sắp xếp theo mã khách và ngày nhận hàng. Tạo query cho biết các thông tin của hoá đơn có mã số 10177 : mã KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng, tên sản phẩm, số lượng, đơn giá, thành tiền. Tạo query cho biết các thông tin về hoá đơn của khách hàng FAHASA và SAFICO : mã HD, mã KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng, tên sản phẩm, số lượng, đơn giá, thành tiền. Kết quả được sắp xếp theo mã khách và ngày nhận hàng. Tạo query cho biết các thông tin của hoá đơn lập trong tháng giêng : mã HD, mã KH, tên KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng. Tạo query cho biết các thông tin của hoá đơn lập trong tháng giêng và tháng hai : mã KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng. Tạo query cho biết các thông tin của hoá đơn lập trong tháng giêng và tháng hai đồng thời có thời gian giao hàng trong tháng 3 : mã HD, mã KH, tên KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng. Tạo query cho biết các thông tin của hoá đơn lập trong tháng 5 và số lượng giao hàng của mỗi mặt hàng lớn hơn 10 : mã HD, mã KH, tên KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng, tên sản phẩm, số lượng, đơn giá, thành tiền. Tạo query cho biết các thông tin của hoá đơn lập trong tháng 5 và giao hàng sau ngày 15/6/04: mã HD, mã KH, tên KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng, tên sản phẩm, số lượng, đơn giá, thành tiền. Tạo query cho biết các thông tin của hoá đơn có thời gian giao hàng nhỏ hơn 20 ngày tính từ ngày lập hóa đơn : mã KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng, tên sản phẩm, số lượng, đơn giá, thành tiền. Tạo query cho biết các thông tin về hoá đơn được lập trong ngày cuối cùng của table hóa đơn : mã HD, ngày lập hóa đơn. Tạo query cho biết các thông tin về hóa đơn do những nhân viên ở Q1 đã lập : mã HD, mã KH, tên KH, địa chỉ khách hàng, tên NV, địa chỉ NV, ngày lập HD, ngày nhận hàng. Tạo query cho biết các thông tin về hóa đơn do những nhân viên ở Q11 lập : Mã HD, mã KH, tên KH, địa chỉ khách hàng, tên NV, địa chỉ NV, ngày lập HD, ngày nhận hàng. Tạo query CHITIETHD gồm các vùng sau : MAHD, TenSp, Dongia, Songay, Thanhtien, TienTraTruoc, Conlai. Trong đó : Thành tiền là số lượng nhân đơn giá. Songay : số ngày từ ngày lập hóa đơn đến ngày nhận hàng. Tiền trả trước : Nếu số ngày <=20 thì trả trước 20% thành tiền, nếu 20<songay<=30 thì trả trước 30% thành tiền, các trường hợp còn lại trả trước 50% thành tiền. Tạo query DANH SACH HOA DON gồm các vùng như trên, nhưng chỉ những hóa đơn của khách hàng ở TP HCM sản phẩm là Rượu và số lượng từ trong khoảng tư 20 đến 29. Tạo query TINH TIEN cho từng sản phẩm trong từng hóa đơn gồm các vùng : Mã HD, ngày lập HD, tên sản phẩm, số lượng, đơn giá, thành tiền USD, thành tiền VN. Biết rằng : Thành tiền USD =Đơn giá * Số lượng Thành tiền VN = Thành tiền USD * tỉ giá với tỉ giá được tính nhưsau : 13780 nếu hóa đơn được lập vào 4 tháng đầu của năm 04. 14200 nếu hóa đơn được lập vào 4 tháng kế của năm 04. 15000 cho các hóa đơn sau đó. Tạo query thực trả cho từng sản phẩm trong từng hóa đơn gồm các vùng MAHD, ngày lập HD, tên sản phẩm, đơn giá, số lượng, thành tiền, thực trả. Biết rằng : Thành tiền = Đơn giá * Số lượng. Thoigian= Ngay giao nhan - Ngay nhap Thực trả = Bao gồm thành tiền và số tiền thưởng phạt cho thời gian lấy hàng như sau : Nếu thời gian từ ngày lập hóa đơn đến ngày nhận hàng dưới 20 ngày thì giảm giá 3 đồng cho một ngày trước mốc thời hạn (20 ngày). Nếu thời gian từ ngày lập hóa đơn đến ngày nhận hàng trong khoảng từ 20 đến 40 ngày thì không tính thưởng phạt. Nếu thời gian từ ngày lập hóa đơn đến ngày nhận hàng trên 40 ngày thì phạt 3 đồng cho một ngày vượt quá mốc thời hạn. Danh sách các Khách hàng có hai ký tự cuối cùng của MAKH là CO. Danh sách các sản phẩm có đơn giá bán cao nhất. Thông tin bao gồm MaSp, TenSp, đơn vị tính, Dongia bán. Danh sách các hóa đơn do nhân viên Nga lập trong tháng 3. Cho xem danh sách nhân viên có năm sinh >=1985 Cho xem danh sách nhân viên có tuổi từ 20 đến 40. Danh sách các hoá đơn có ngày lập hóa đơn là ngày hiện hành. Danh sách các sản phẩm ứng với tiền tồn vốn. Thông tin bao gồm MaSp, TenSp, Dongia, SLTon, Tiền Tồn. Trong đó Tiền tồn = SLTON * DONGIA. Cho xem danh sách nhân viên ứng với độ tuổi. Thông tin kết quả bao gồm mã nhân viên, họ và tên, giới tính, tuổi, độ tuổi. Trong đó Họ và tên là được ghép bởi HoNv và TenNv: & Giới tính là Phái nhưng được hiện Nam hoặc Nữ Tuoi=year(Date( )) –year([ngaysinh]) Độ tuổi : dựa vào tuổi nếu tuổi <18: Thanh thiếu niên Tuổi từ 18 đến < 35: Thanh niên Tuổi từ 36 đến < 50 : Trung niên Tuối >=50 : Cao niên Cho biết những nhân viên ở độ tuổi là Cao Niên (dữ liệu nguồn là câu 28) Danh sách 3 nhân viên lớn tuổi nhất. II. SELECT QUERY – DUØNG TOTAL Danh sách các sản phẩm được nhập. Thông tin bao gồm MaSp, TenSp, Donvitinh, TongSoLuong. Trong đó TongSoLuong là sum của Soluong, kết nhóm theo Masp. Danh sách các hóa đơn ứng với tổng tiền của từng hóa đơn. Thông tin bao gồm MaHd, NgayLapHd, LoaiHD, Tong Tien. Trong đó Tong Tien là Sum của SoLuong * Dongia, kết nhóm theo Mahd. Danh sách các hóa đơn xuất hoặc trả ứng với tổng tiền của từng hóa đơn. Thông tin bao gồm MaHd, NgayLapHd, LoaiHD, Tong Tien. Trong đó Tong Tien là Sum của SoLuong * Dongia, kết nhóm theo Mahd. Mặt hàng đã nhập có trị giá lớn nhất.Thông tin bao gồm : MaSP, TenSP, Donvitinh, TongTriGia. Các hoá đơn có số lượng xuất bán mặt hàng rượu nhiều nhất trong tháng 1/2004 Thông tin bao gồm: MaHD, TenKH, TenSP, Soluong. (Hướng dẫn : Sử dụng subQuery) Cho biết mỗi khách hàng đã lập hóa đơn bao nhiêu lượt. Thông tin gồm MaKh, TenKh, Tổng số hóa đơn, Loại HD. Trong đó Tổng số hóa đơn được đếm (Count) theo từng Khách hàng và theo loại HD. Cho biết mỗi nhân viên đã lập được bao nhiêu hóa đơn. Cho biết mỗi nhân viên đã lập được bao nhiêu hóa đơn xuất, tổng tiền là bao nhiêu. Thông tin gồm MaNv, Ho va Ten, Tong so hoa don, Tong so Tien. Tính doanh số bán của mỗi nhân viên trong quý 1và quý 2 Tạo query theo mẫu sau : III. QUERY COÙ THAM SOÁ) Danh sách các sản phẩm có hoá đơn nhập trong 1 ngày tùy ý (tham số).Thông tin hiển thị: TenSP,NgayNhap,TongSoluong, TongTriGia. Danh sách các sản phẩm có hóa đơn Xuất trong một khoảng thời gian được đưa vào ( ngày bắt đầu và ngày kết thúc là 2 tham số ).Thông tin hiển thị: TenSP, Ngayxuat, TongSoluong, TongTriGia. Tạo query cho phép xem tổng số lượng đã bán của 1 sản phẩm tùy ý. Tạo query khi thực hiện yêu cầu nhập ký tự đầu của MaKh, Hiện thị kết qủa là các HD đã lập cho nhóm khách hàng này (VD : các Makh bắt đầu là T). Tạo query cho phép xem thông tin về các khách hàng ở 1 quận nào đó IV. QUERY COÙ CAÙC TABLE COÙ MOÁI QUAN HEÄ LEFT OUTER JOIN HOAËC RIGHT OUTER JOIN HOAËC LOÀNG CAÂU SELECT Danh sách sản phẩm chưa từng được lập hóa đơn. Danh sách các nhân viên chưa từng tham gia lập hóa đơn. Danh sách các khách hàng chưa từng lập hóa đơn. V. CROSSTAB QUERY Thống kê tổng số lượng sản phẩm đã nhập ứng với mỗi nhà cung cấp và mỗi sản phẩm Thống kê tổng số lượng sản phẩm đã xuất ứng với mỗi khách hàng và mỗi sản phẩm Thống kê tổng tiền thu được từ những hóa đơn xuất ứng với mỗi nhân viên và ứng mỗi ngày Thống kê tổng số sản phẩm đã xuất bán ứng với quý và ứng với từng sản phẩm . Thống kê tổng trị giá hóa đơn được lập ứng với mỗi khách hàng và ứng với mỗi loại hóa đơn. Tạo query thống kê mỗi khách hàng với số lượng mỗi mặt hàng đã mua Ví Dụ : VI. ACTION QUERY Update query Dùng Update query để tăng đơn giá của các sản phẩm lên 1% . Dùng Update query để giảm 10% đơn giá của các sản phẩm có đơn vị tính là “Chai” Dùng Update query để đổi thành phố “Tp. HCM” thành “Sài gòn” trong table KHACHHANG Dùng Update query để cập nhật đơn giá trong CHITIETHD chính bằng đơn giá trong SAN PHAM. Tạo query để sửa đổi số điện thọai của các nhân viên ở Q3 với số đầu bị đổi sang số 9 Sao chép bảng SANPHAM thành bảng tblSANPHAMTANGGIA cùng nội dung vàcấu trúc. Thiết lập query tăng giá của các sản phẩm lên 10 %. Make table query Dùng Make Table Query, để tạo ra bảng HOA DON LUU 2004 gồm các cột MAHD, MANV, NGAYLAPHD, NGAYGIAONHANHANG, TTIEN, chứa các hoá đơn có tháng lập hóa đơn là tháng 1,2,3/2004 . Tạo bảng tblKhachHangQ5 từ bảng khách hàng chứa thông tin về các khách hàng ở Q5 Tạo bảng tblHoaDonQuy1 từ bảng hóa đơn chứa thông tin về các hóa đơn đã lập trong quý 1 Tạo bảng tblHoaDonHunSan1 từ bảng hóa đơn chứa thông itn về các hóa đơn đã lập cho khách hàng có MaKH là HUNSAN trong tháng giêng Dùng Make Table Query, tạo ra bảng LUONG NV gồm các cột MANV, HOTEN, THANG, LUONG. Lưu ý Truy vấn có 2 tham số để nhập vào tháng, và năm cần cập nhật lương Field Tháng là chuỗi gồm tháng ghép với năm của tháng tính lương. Ví dụ: tháng tính lương là 2 và năm tính là 2004 thì kết quả của field tháng là “02/04” LUONG = 1 % tổng doanh thu của nhân viên trong tháng năm tính lương. Ví dụ trong tháng 2/1992 nhân viên NV001 đạt doanh thu là 100 triệu thì lương là 1 triệu Append query Tạo một Append query, để cập nhật lương của các nhân viên cho một tháng tùy ý, cách tính lương theo qui tắc trên. Tạo một Append query, để cập nhật các hóa đơn tháng 4,5,6/2004 vào bảng HOA DON LUU 2004. Sao chép cấu trúc của table tblHoaDonHunSan1 để tạo 1 table rỗng có tên tblHoaDonHunSan1-2 Sau đó thiết lập query để nối các mẫu tin là các hóa đơn đã lập trong thàng của khách hàng này vào đó. Sao chép tblKhachHangQ5 thành tblKhachHangQ135 có cùng nội dung và cấu trúc. Sau đó thiết lập query nối các mẫu tin là các khách hàng ở Q3 và Q5 từ bảng khách hàng vào nó. Delete query Tạo Query xóa các khách hàng ở Q5 trong table tblKhachHang135. Tạo một Delete Query dùng để xóa mẫu tin lương của các nhân viên trong một tháng tùy ý nào đó. BÀI 5 BÀI TẬP FORM Phần 1 : Form căn bản Yêu cầu : tạo form bằng công cụ Form wizard, Autoform. Phân biệt các dạng form. Thực hiện các thao tác trên form. Dùng Form wizard tạo form tên Nhanvien_1 dạng columnar cho bảng NHANVIEN theo mẫu như hình bên. Mở form Nhanvien_1 ở chế độ Form View , thực hiện các thao tác trên form : duyệt record tìm kiếm /Lọc (theo địa chỉ, điện thoại,…) thêm mới record , hiệu chỉnh record , xoá record Thay đổi trình bày của dữ liệu trong form . (HD : sử dụng navigation buttons , các biểu tượng Find record, Filter by Form , New record, Delete record, Format font…) Tương tự sử dụng Form wizard tạo form Nhanvien_2, Nhanvien_3, … dạng tabular, datasheet, justify.Hãy nhận xét và phân biệt 4 kiểu form trên. Sử dụng AutoForm để tạo form dạng columnar, tabular, datasheet cho bảng KHACHHANG, đặt tên các form là KhachHang_1, KhachHang_2,… Hãy nhận xét về 2 công cụ tạo form : AutoForm và Form wizard. Phần 2 : Thiết kế Form căn bản Yêu cầu : Làm quen với một số thuộc tính của form, control. Các thao tác trên Design view. Tìm hiểu cách dùng các control để tạo form Mở form Nhanvien_1 ở chế độ Design . Chỉnh sửa form giống như 2 mẫu sau Hướng dẫn: Chọn control, di chuyển, thay đổi size của control; thay đổi format ; thay đổi caption; thay đổi lựa chọn về record selector, default view... Tự thiết kế form giống như mẫu form Nhanvien_1 (đặt tên form là Nhanvien_dsg). Hướng dẫn: Mở 1 form mới ở chế độ Design . Tạo các control trên form bằng 1 trong 2 cách sau : dùng field list hoặc dùng control textbox và label trên thanh công cụ toolbox. Thiết kế form có sử dụng control Option group : Chỉnh sửa thiết kế cho form Nhanvien có dùng OptionGroup hiển thị Phái như mẫu form NV_model 4. Tạo form Hoadon : có sử dụng combo box để trình bày dữ liệu các field Loai HD, MaNV, MaKH (như mẫu form Hoadon_mau 1) Tương tự : Tìm hiểu List box để trình bày Loai HD . Sử dụng Crosstab Query làm dữ liệu cho form, sử dụng Textbox control hiển thị kết quả tính toán .Trình bày form dạng continuos có header/footer như mẫu form Crosstab_Sanpham. (Dữ liệu trong form thể hiện: số lượng nhập , xuất theo mặt hàng theo Quí.Trong phần footer hiển thị Tổng số lượng của tất cả các mặt hàng.) Phần 3: Main - Sub Form Trường hợp 1 : Ô quan hệ với Subform ở MainForm là một Textbox Tạo Form theo mẫu sau Hướng dẫn: B1: Tạo Subform đặt tên Sub9 hiển thị MASP, TENSP, SOLUONG, DONGIA, THANHTIEN. (Datasource là query có kết xuất gồm các field như trên nhưng thêm Field quan hệ với Main là MAKH; form hiển thị dạng Datasheet) B2: Tạo Main form đặt tên Form9 hiển thị dữ liệu của table KHACHHANG B3: Kéo biểu tượng của Sub9 từ Database Window vào vùng Detail B4: Kiểm tra liên kết giữa 2 form là Link master field : MAKH Link child field : MAKH. B5 : Tạo ô Tính toán tổng trị giá hoá đơn. Trong phần Form Footer của Sub9 tạo 1 text box đặt tên là TONGTIEN và trong Control Source của nó gõ vào công thức =SUM([THANHTIEN]) Vẽ một Textbox trong Main form dưới vị trí của khung Subform :Chỉnh thuộc tính như sau : Đặt Caption của Label là Tổng Thành Tiền : Đặt Control Source của Textbox biểu thức sau :=[sub9].[Form]![TONGTIEN] Dùng Design form tạo Form dạng Main_Sub form như mẫu form Hoadon_MainSub Hướng dẫn: B1: Tạo Subform đặt tên Sub10 hiển thị MAHD, TENSP, SOLUONG, DONGIA, THANHTIEN. (Datasource là query có kết xuất gồm các field như trên nhưng thêm Field quan hệ với Main là MAHD; form hiển thị dạng Datasheet) B2: Tạo Main form đặt tên Form10 hiển thị dữ liệu của table HOADON B3: Kéo biểu tượng của Sub10 từ Database Window vào vùng Detail của Form10 B4: Kiểm tra liên kết giữa 2 form là Link master field :MAHD Link child field : MAHD. B5 : Tạo ô Tính toán tổng trị giá hoá đơn. Trường hợp 2 : Ô quan hệ với Subform ở MainForm là một ComboBox Hãy tạo Form theo mẫu dưới đây : Khi chọn tên 1 sản phẩm từ Combo Box thì sẽ hiển thị các thông tin tương ứng trong Subform và các Unbound Textbox. Hướng dẫn: B1: Tạo Subform đặt tên Sub11 hiển thị MAHD, TENCTY, SOLUONG, DONGIA, THANHTIEN. (Datasource là query có kết xuất gồm các field như trên và thêm field quan hệ với Main là Tensp; form hiển thị dạng Datasheet) B2: Tạo Main form đặt tên Form11 nhưng không lấy nguồn dữ liệu. B3: Kéo biểu tượng ComboBox trên Toolbox vào và sửa các thuộc tính sau cho Combo : Row Source Type : Table/Query Row Source : Click ô ba chấm, chọn bảng SanPham và lấy Field Tensp. Name : Cbotensp. Kéo biểu tượng của Sub11 từ Database Window vào vùng Detail B4: Kiểm tra liên kết giữa 2 form là Link master field : CboTensp Link child field : Tensp. B5 : Tạo ô Tính toán số lần bán, tổng số lượng, tổng tiền . Tạo Form dạng Main_Sub form như mẫu form Sanpham_HD_MainSub1 , theo yêu cầu : Khi chọn tên 1 sản phẩm từ Combo box sẽ hiển thị các thông tin tương ứng trong Subform. Tương tự : tạo form như mẫu Sanpham_HD_MainSub 2. Tạo Form theo mẫu sau : Yêu cầu : Click Combo Makh sẽ hiện danh sách các khách hàng, sau đó Click Combo Mahd sẽ hiển thị các Mahd mà Khách hang đã chọn trong Combo box Makh đã mua, đồng thời hiện các thong tin Ngày lập, ngày giao và chi tiết của hoá đơn này trong SubForm. Dùng Design form tạo Main form có 2 Subform như mẫu form Khachhang_MainSubF Hướng dẫn : B1 : Tạo SubForm1 tên Sub14a : Các hoá đơn đã lập cho từng khách hàng. (datasource là Query gồm Manv, Mahd, NgayLaphd, Ngaygiaonhanhang, Makh, Form có dạng Datasheet) B2 : Tạo Subform2 tên Sub14b : Chi tiết về từng hoá đơn. (datasource là query gồm Tensp, Soluong, Dongia, Thanhtien, MaHd, Form ở dạng Tabular và tính Trigia ở Form Footer. B3 : Tạo Main Form :Nguồn dữ liệu là Table KhachHang Kéo biểu tượng Sub14a từ cửa sổ DataBase vào Liên kết giữa Mainform và Subform1 thông qua MakH Link child Fields : MaKH. Link Master fields : MAKH. B4 :Tạo 1 Text box trung gian : Control Source : Sub14a.FORM!MAHD. Name : txtMaHD. Visible : No. (nếu muốn ẩn ô text box này) B5 : Kéo biểu tượng Sub14b từ cửa sổ Database vào : Liên kết giữa SubForm1 và SubForm2 thông qua Text box HD. Link Child Fields : MAHD. Link Master Fields : TxtMaHD. Dùng Design form tạo Main form có 2 Subform như mẫu form Khachhang_Hoadon_TAB Yêu cầu : dùng Tab control để hiển thị 2 Subform. Hãy tạo Form theo mẫu dưới đây : khi chọn 1 mã nhân viên từ Combo box thì trong trang 1 (Chi tiet hoa don) sẽ hiển thị các hoá đơn do nhân viên này lập. Và khi Click vào trang Thong tin ve nhan vien thì hiện chi tiết các thông tin về nhân viên này. BÀI 5 BÀI TẬP PHẦN REPORT Tạo 1 Report để in Bảng Báo Giá theo mẫu sau. Sử dụng lần lượt các công cụ sau : Report Wizard AutoReport Columnar , AutoReport Tabular Công ty có nhu cầu gửi thư chào hàng tới các khách hàng, hãy dùng công cụ Label Wizard để in nhãn cho thư gửi . Tạo report in ra Hoá đơn bán hàng , theo 2 cách sau : Tạo bằng Wizard. Tạo bằng Design sử dụng phân nhóm và Main/Sub Hướng dẫn : Tạo bằng Design Phân nhóm : B1 : Tạo query làm nguồn cho Report chứa tất cả các field có trong Report. B2 : Chọn Report _ New _ Design View_ Chọn Nguồn là Query vừa tạo. Click menu View_ Chọn Sortting and Groupping Chọn Field Mahd làm phân nhóm Kéo các Field Mahd, Makh, tenkh, NgayLaphd, NgayGiaoNhanHang, DienGiai vào Mahd Header Kéo các Field Tensp, DonVitinh, Soluong, Dongia, Thanhtien vào Detail. Tạo Số thứ tự. Tạo một Text box để tính tổng trị giá. Chỉnh sửa Report theo mẫu. Main/Sub : Có dạng Main/Sub Report : Sub report chứa chi tiết hoá đơn (Mã HD, Tên sp, Đvt , Sốlượng, Đơn giá, Thành tiền) groupby theo MaHD. Mainreport chứa thông tin chung của hóa đơn (TênKH, Địa chỉ, Ngày lập HD, Ngày giao hàng, diễn giải). Field link giữa Main và Subreport là MãHD Sử dụng Query làm dữ liệu nguồn cho Main và Subreport Trình bày trên mỗi trang là một Hoá đơn ( phần page header và page footer giống nhau ) Thêm 1 số control hiển thị tiêu đề và định dạng như mẫu Report_Hoadon Tạo Báo cáo Bán hàng theo ngày như mẫu Report_banhang (trang 24.) HD: - dùng query làm dữ liệu nguồn cho Report Groupby header : là ngày lập hoá đơn . Groupby footer : là tổng trị giá hoá đơn. Sắp xếp theo Mã hoá đơn Report header : chứa tiêu đề báocáo , ngày lập báo cáo, người lập báo cáo Report footer (hay Report header) : chứa tổng trị giá các hoá đơn Page footer : chứa số trang (với định dạng “Trang SốTrang/TongsoTrang ”) Dùng line, format các control trong report sao cho trang report dễ xem. Có thể dùng Report Wizard để tạo report , sau đó sửa lại trình bày trong Design. Sử dụng lần lượt 3 cách sau để tạo Báo cáo Bán hàng chỉ hiển thị các giá trị tổng cộng theo nhóm _ không hiển thị chi tiết . Như mẫu Report_banhang 2 (trang 25) Wizard (summary) Design kết hợp cả hai Thẻ kho là hình thức lưu trữ thông tin về hàng hoá đã nhập hay đã xuất khỏi kho hàng. Hãy tạo báo cáo in Thẻ kho như mẫu Report_thekho HướngDẫn: - dùng Query làm dữ liệu nguồn cho báo cáo Sử dụng Page break hay thuộc tính ForceNewPage để in mỗi mặt hàng trên 1 trang. Từ ngày = Min([ngày lập HD]) ; Đến ngày = Max([ngày lập HD]) Tồn đầu kỳ: gán trị 0 Giá trị của cột Tồn : được cộng dồn theo công thức Tồn = tồn đầu kỳ + số lượng nhập – số lượng xuất (Sử dụng thuộc tính RunningSum của Textbox Control để hiển thị cột Tồn ) Mau Report_TheKho Tạo Report theo mẫu sau : BÀI 6 BÀI TẬP MACRO Tạo Form theo mẫu sau : Ứng dụng Macro vào trong các nút lệnh. Yêu cầu : Các nút mũi tên : Duyệt các mẩu tin về đầu, tiếp, trước, cuối. Nút Thêm : Thêm vào một hoá đơn mới, nếu hoá đơn có rồi thì báo yêu cầu nhập lại. Nếu nhập Makh, Manv chưa có bên bảng Khachhang, NhanVien thì báo nhập lại. Nút Xem Chi Tiết Hoá Đơn : Mở Form Hóa Đơn bán hàng đã làm ở bài tập Form. Nút In mở Report Hoá Đơn bán Hàng của hóa đơn đang hiện. Nút Tìm : Tìm một hóa đơn bất kỳ. Nút Xóa : Xoá hoá đơn đang chọn, trước khi xoá hiện hộp thoại hỏi người sử dụng có muốn xóa hay không ?. Nếu xóa thì mới xóa. Nút Thoát : Đóng Form Tạo Form theo mẫu sau trong đó ứng dụng Macro có điều kiện sau : Khi thực hiện : Click Bảng tổng hợp hóa đơn và nhấn Xem báo cáo hiện : Click Chi tiết từng hóa đơn : Chọn xong nhấn nút IN Bao Cao hiện Tạo form cho phép xem Báo cáo bán hàng theo 1 trong những tiêu chuẩn lựa chọn sau xem toàn bộ chọn theo Ngày lập hoá đơn ( 1 ngày, hoặc 1 khoảng thời gian) chọn theo Mã hoá đơn chọn theo Tên sản phẩm Khi nhấn OK sẽ mở report Báo cáo bán hàng (xem phần Report_ mẫu Report_banhang) theo tiêu chuẩn đã xác định trong form. Nếu User không nhập giá trị làm tiêu chuẩn chọn, thì xuất hiện message box thông báo lỗi. Khi chuyển chọn giữa các nút chọn trong form , có sự chuyển trạng thái enable/ able của các mục chọn. Hướng Dẫn : có thể xem ví dụ mẫu Nwind (mẫu form Customer labels diaglog) - Thiết kế form :sử dụng Option Group để tạo nhóm nút lựa chọn và sử dụng kết hợp với textbox, combo box để nhập giá trị làm tiêu chuẩn lựa chọn - Xử lý trên form :sử dụng các macro sau OpenReport (mở report theo điều kiện xác định trong form, sự kiện Onclick của nút OK) Msgbox (mở hộp thoại thông báo khi User không chỉ định rõ giá trị làm tiêu chuẩn lọc , sự kiện Onclick của nút OK) Setvalue (gán trị của thuộc tính Enable của textbox, combo box , sự kiện AfterUpdate của Option Control ) Sử dụng Form Hoadon_mainSubF (ở câu 12) làm form nhập chứng từ Hoá đơn. Yêu cầu : Chỉnh sửa form cho phù hợp với mục đích làm form nhập Hoá đơn (nếu cần ) Sử dụng macro tạo các nút lệnh để duyệt xem mẩu tin , thêm mới mẩu tin, in hoá đơn (mở report_Hoadon trong phần report) , đóng form Sử dụng macro xử lý tự động tình huống : user thêm mới 1 Mã KH, 1 Tên SP chưa có trong table Khachhang và San pham thì sẽ tự động mở form tương ứng cho nhập Khách hàng và Sản phẩm mới. Dựa vào các form, report đã thiết kế, hãy xây dựng 1 form có vai trò MainMenu mở ra các form, report chức năng . Giả định MainMenu dùng cho chương trình Quản lý hoá đơn_hàng hoá với các chức năng chính là : Nhập chứng từ Hoá đơn (Nhập, xuất) Nhập danh mục hàng, khách hàng, nhân viên Hiển thị thông tin thống kê hàng hoá Xuất, Nhập, Tồn In /Xem các Báo cáo thống kê tình hình bán hàng, về Hàng hoá … (Tham khảo mẫu sau ) BÀI TẬP 7 BÀI TẬP MODULES_MENU Viết thủ tục để người dùng nhập vào hai chuỗi bất kỳ - Dùng hộp thông báo in ra chuỗi thứ ba là ghép của hai chuỗi trên. Viết thủ tục để người dùng nhập vào hai chuỗi bất kỳ - Dùng hộp thông báo in ra chuỗi thứ ba là ghép của hai chuỗi trên vá chiều dài của hai chuỗi. Tạo Form sau : Bạn nhập tên, sau đó nhấn nút Text sẽ hiện chuỗi :Xin chào bạn NGUYEN MINH HOANG”. Nhấn nút CLEAR sẽ xóa nội dung trong 2 hộp text box. Nhấn nút EXIT : Đóng Form. Tạo các form tính toán sau : Khi nhấn nút Mới thì Form giống dạng sau : Chú ý : Khi nhập số thứ hai bằng không và nhấn nút chia thì phải hiện thông báo sau : Tạo form thực hiện các công việc sau : Chú ý : Nếu ba cạnh không hợp thành tam giác thì xuất hiện thông báo sau Viết một thủ tục tham chiếu trên CSDL hiện hành, kiểm tra xem có tồn tại một Table do người dùng chỉ định _ Thông báo kết quả ra hộp thông báo. Viết một thủ tục đếm tổng số mẩu tin trong bảng HOA Don của CSDL hiện hành, in kết quả ra cửa sổ Debug. Viết một thủ tục in ra cửa sổ Debug, Manv của các mẫu tin đầu, kế, áp cuối và cuối có trong bảng Nhanvien của CSDL Hoadon. Viết một thủ tục in ra cửa sổ Debug các mẫu tin trong bảng Nhanvien của CSDL hiện hành gồm Manv, Hoten, Ngaysinh, Phai. Viết một thủ tục đếm số mẫu tin có trong bảng Nhanvien, in kết quả ra hộp thong báo. Viết thủ tục xếp thứ tự dữ liệu của bảng Nhanvien tăng dần theo ngày sinh, sau đó in ra cửa sổ Debug các mẫu tin trong bảng gồm Manv, Hoten, Ngaysinh, Phai. Viết một thủ tục tìm Manv trong bảng Nhan viên. Dùng hộp thoại để thong báo kết quả tìm kiếm. Viết một thủ tục in ra hộp thông báo số thứ tự mẫu tin trên tổng số mẫu tin của bảng Nhanvien. Viết một thủ tục in ra cửa sổ Debug mẫu tin hiện hành gồm Manv, hoten, ngaysinh, phai trong bảng Nhan vien, sau đó in ra tất cả các mẫu tin có trong bảng_Quay về in lại đúng mẫu tin ban đầu. Tạo Form Nhanvien có một textbox tên txtmanv, một command button có nhãn là Tìm. Viết một Even procedure khi người dung nhập Manv vào txtmanv, nhấn nút Tìm sẽ tìm ngay mẫu tin lien quan để hiện lên Form. tạo Form Danh sách Hoa don theo ngàycó hai text box txttungay và txtdenngay, một Command button Loc. Viết một Event procedure khi người dung nhập vào hai textboc, click nút Loc sẽ tìm ngay mẫu tin thỏa điều kiện lọc và hiển thị kết quả ra cửa sổ debug. Viết một thủ tục tăng đơn giá các sản phẩm lên 5% trong bảng sanpham_Trong quá trình cập nhập nếu có bị lỗi thì tất cả các thay đổi trước đó sẽ bị hủy. Hãy tạo Form theo mẫu dưới đây Form trình bày thông tin về nhân viên. Khi Click vào nút First thì sẽ trình bày nội dung của mẩu tin đầu tiên trong các Unbound textbox. Khi Click vào nút Next thì sẽ hiển thị thông tin về nhân viên kế tiếp. Nếu đang hiển thị nhân viên cuối cùng thì sẽ thông báo là đã đến cuối danh sách, mẩu tin hiện hành vẫn là mẩu tin cuối cùbg. Khi Click vào nút Previous thì sẽ hiển thị thông tin về nhân viên kế trước. Nếu đang hiển thị nhân viên đầu tiên thì sẽ thông báo là đã đến đầu danh sách, mẩu tin hiện hành vẫn là mẩu tin đầu tiên. Khi Click vào nút Last thì sẽ trình bày nội dung mẩu tin cuối cùng. Khi Click vào nút Close thì sẽ đóng Form lại. Hãy tạo Form theo mẫu dưới đây : với các Textbox là các Unbound Control Khi click vào nút :”TIM THEO MAKH” sẽ hiện hộp thoại yêu cầu nhập Mã Khách Hàng để tìm kiếm trong bảng :”Khach hang”. Nếu có thì sẽ hiện nội dung tương ứng trong các Textbox, nếu không có thì sẽ hiện thông báo là Mã Khách Hàng không có trong danh sách. Khi Click vào nút “XOA KH” thì nếu chưa có mẩu tin nào hiển thị trong danh sách thì sẽ thông báo là “Khong co mau tin de xoa “, ngược lại sẽ xóa mẩu tin hiện hành (đang hiện trong Form) rồi xóa trắng nội dung các TextBox. Khi Click vào nút “THOAT” thì đóng Form lại. Tạo CSDL tên NHANSU.MDB có cấu trúc các bảng như sau : NHANVIEN(MANV Text(10), HOTEN Text(30), NGAYSINH (Date/times), MAPHONG Text(5)) PHONG(MAPHONG Text(5), TENPHONG Text(40), DIENTHOAI Text(10)) Thiết lập quan hệ và nhập dữ liệu cho các bảng trên. tableNhanVien MANV HOTEN NGAYSINH MAPHONG A01 Lê Minh Hương 21/03/80 P1 A02 Trần Lệ Khanh 14/04/79 P2 A03 Hàn trung Định 16/07/76 P1 A04 Đặng Thanh Thúy 28/12/76 P1 A05 Đinh Ngọc Hạnh 02/03/81 P3 TablePhongBan MAPHONG TENPHONG DIENTHOAI P1 Phòng Kinh Doanh 8564757 P2 Phòng Vật Tư 8243589 P3 Phòng Tổ Chức 8944514 Tạo Form tên frmNHANVIEN theo mẫu sau : với các Control là Unbound Textbox. Khi Click vào nút TIM thì sẽ xuất hiện hộp thoại yêu cầu nhập mã nhân viên. Nếu có thì sẽ hiển thị thông tin về nhân viên đó tương ứng trong các Unbound textbox. Nếu không có thì sẽ thông báo là MaNV không tồn tại và xóa trắng các Unbound TextBox. Khi Click vào nút THEM thì sẽ xóa trắng các Unbound Textbox và thêm mẩu tin mới vào bảng NHANVIEN ứng với dữ liệu trong các Unbound Textbox. Khi Click vào nút XOA thì sẽ hiện hộp thoại yêu cầu xác nhận với nội dung “ban muốn xóa?” và hai nút YES, NO. Nếu chọn YES thì sẽ xóa mẩu tin đang hiển thị và xóa trắng các Unbound textbox. Khi Click nút DONG thì sẽ đóng Form lại. 12. BÀI TẬP MENU : Bạn tự xây dựng một hệ thống Menu cho CSDL HoaDon.MDB, Sau đó xây dựng CSDL này thành một ứng dụng. BÀI TẬP LÀM THÊM : CƠ SỞ DỮ LIỆU QUẢN LÝ SINH VIÊN PHAÂN TÍCH THIEÁT KEÁ CÔ SÔÛ DÖÕ LIEÄU Giaû söû baïn caàn quaûn lyù caùc thoâng tin cuûa sinh vieân cuûa moät tröôøng naøo ñoù.Baïn haõy phaân tích vaø thieát moät cô sôû döõ lieäu nhaèm thöïc hieän caùc yeâu caàu quaûn lyù thöïc teá.Sau ñaây laø moät soá gôïi yù SINH VIEN: moãi moät sinh vieân coù moät maõ sinh vieân duy nhaát, hoï, teân, phaùi, ngaøy sinh, maõ loøp, ñieän thoaïi vaø ñòa chæ LOP HOC: moãi lôùp hoïc coù moät maõ lôùp ñeå phaân bieät vôùi nhöõng lôùp khaùc, moät teân lôùp, gvcn, só soâ1. Só soá luùc naøo cuõng phaûi >0 MOÂN HOÏC : moãi moân coù duy nhaát moät maõ moân, teân moân, soá tín chæ. KHOA : moãi khoa coù duy nhaát moät maõ khoa, teân khoa KET QUA: moät sinh vieân thi nhieàu moân hoïc, vaø ñöôïc pheùp thi hai laàn.. Döïa vaøo caùc gôïi yù treân, baïn haõy xaùc ñònh: Caùc table (quan heä) Caùc Field cuûa caùc table treân (Moät field bao goàm Field Name, Datatype, properties,..) Xaùc ñònh khoùa chính, khoùa ngoaïi. Caùc raøng buoäc toaøn veïn Ñöa ra moái quan heä . BAØI TAÄP TABLE Taïo taäp tin cô sôû döõ lieäu coù teân laø QLSV.MDB. Caâu 1: Duøng chöùc naêng Table ñeå thieát keá caáu truùc cuûa caùc baûng vaø nhaäp döõ lieäu döïa vaøo baûng döõ lieäu maãu ñính keøm : SINH VIEN Field Name Data type Description Field Properties MASV Text Maõ Nv Format:>[Red] Field size :10 Caption: Maõ Nv HOSV Text Hoï sinh vieânï Field size: 25 Format:>[Blue] Caption: Hoï TENSV Text Teân sinh vieân Field size: 10 Format:>[Blue] Caption: Teân Require: yes PHAI Yes/No Phaùi Yes: Nam, No:Nöõ Format:;"Nam"[Blue];"Nöõ"[Magenta] Caption: Phaùi Display Control: Text Box NGAYSINH Date/Time Ngaøy sinh Format: short date Input Mark: 00/00/00 Caption: Ngaøy sinh NOISINH Text Nôi sinh Field size:15 Caption: Nôi sinh DIACHI Text Ñòa chæ Field size: 30 Caption: ñòa chæ. MALOP Text Maõ lôùp Field size :10. Caption : maõ lôùp. HOCBONG Number Hoïc boång Field size:Long Integer Caption: Hoïc boång HINH OLE Object Hình LOP HOC Field Name Data type Description Field Properties MALOP Text Ma Lôùp Field size: 10 Format:>[Red] Caption: Maõ lôùp TENLOP Text Ten Lôùp Field size: 25 Format:>[Blue] Caption: Teân Lôùp MAKHOA Text Maõ khoa Field size: 10 Caption: Maõ khoa. GVCN Text Giaùo vieân chuû nhieäm Field size: 40 Caption: GVCN. SISO Number Só soá Field size: Integer Caption: Só soá. Só soá >0 HOCPHI Number Hoïc phí Field size:Long Integer Caption: Hoïc phí KHOA Field Name Data type Description Field Properties MAKHOA Text Maõ khoa Field size:10 Caption: Ma khoa Required: yes TENKHOA Text Ten Khoa Field size: 40 Format:>[Blue] Caption: Teân Khoa MON HOC Field Name Data type Description Field Properties MAMH Text Maõ moân hoïc Field size:10 Caption: Ma moân hoc Required: yes TENMH Text Ten Moân hoïc Field size: 40 Format:>[Blue] Caption: Teân Moân Hoïc Sotinchi Number Soá tín chæ Field size : Byte Caption : Soá tín chæ. Sotinchi>0 KET QUA Field Name Data type Description Field Properties MASV Text Ma sinh vien Field size: 10 Format:>[red] Caption: maõ sinh vieân Required: yes MAMH Text Ma moân hoïc Field size: 10 Format:>[Red] Caption: maõ moân hoïc Required: yes LANTHI Number Laàn thi Field size: Byte Format:>[Red] Caption: Laàn thi DIEM Number Ñieåm Field size:double Caption: Ñieåm Nhaäp döõ lieäu cho caùc table SINH VIEN STT MASV HOSV TENSV NAM NGAYSINH 1 A01 Nguyeãn thò Haûi .F. 23/03/79 2 A02 Traàn vaên Chính .T. 24/12/80 3 A03 Leâ thò Baïch Yeán .F. 21/02/77 4 A04 Traàn Thanh Mai .F. 20/12/78 5 A05 Traàn thò Thu Thuyû .F. 13/02/81 6 A06 Traàn thò Thanh .F. 31/12/79 7 A07 Traàn Anh Tuaán .T. 12/08/78 8 A08 Traàn Thanh Trieàu .T. 02/01/80 9 A09 Nguyeãn vaên Chính .T. 01/01/77 10 A10 Leâ thò Kim .T. 20/12/81 STT NOISINH DIACHI MALOP HOCBONG 1 Saøi Goøn 12Voõ Vaên Taàn Q3 CDTHA 100000 2 Saøi Goøn 3 Nguyeãn Bænh Khieâm Q1 CDTHB 120000 3 Haø noäi 75 Pastuer Q3 CDTHA 140000 4 Beán Tre 56 Hai Baø Tröng CDTHA 5 Saøi Goøn 40/3 An Laïc Vuõng Taøu CDTHB 6 Saøi Goøn 10 Nguyeãn Du Q1 CDCKA 7 Long An 12 Ñieän Bieân Phuû – Long An CDCKA 80000 8 Haø noäi 3 Nguyeãn Thieän Thuaät Q3 CDCKB 80000 9 Saøi Goøn 5 Nguyeãn vaên Cöø Q5 CDCKB 120000 10 Saøi Goøn 12 Nguyeãn Thieäp Q4 CDCKB 120000 KETQUA MAMH LANTHI MASV DIEM 01 1 A01 2.0 01 1 A02 7.5 01 1 A03 5.0 01 1 A04 7.0 01 1 A05 4.0 02 1 A01 6.0 02 1 A02 7.0 02 1 A03 5.5 02 1 A04 6.5 02 1 A05 7.5 03 1 A01 9.0 03 1 A02 10.0 03 1 A03 3.0 03 1 A04 3.0 03 1 A05 6.0 04 1 A01 8.0 04 1 A02 3.5 04 1 A03 5.0 04 1 A04 8.0 04 1 A05 6.0 05 1 A06 7.5 05 1 A07 9.0 05 1 A08 4.5 05 1 A09 4.0 05 1 A10 8.0 06 1 A06 6.5 06 1 A07 4.0 06 1 A08 3.0 06 1 A09 4.5 06 1 A10 7.5 07 1 A06 5.0 07 1 A07 6.5 07 1 A08 7.0 07 1 A09 5.5 07 1 A10 4.0 08 1 A06 5.0 08 1 A07 4.0 08 1 A08 6.5 08 1 A09 7.0 08 1 A10 8.5 09 1 A06 5.0 09 1 A07 5.5 09 1 A08 5.0 09 1 A09 6.5 09 1 A10 10 MONHOC MAMH TENMH SOTINCHI 01 Cô sôû Döõ lieäu 4 02 Trí tuïeâ nhaân taïo 4 03 Truyeàn tin 4 04 Ñoà hoaï 8 05 Vaên phaïm 7 06 Ñaøm thoaïi 5 07 Vaät lyù nguyeân töû 4 08 Vaät lyù ñaïi caàu 4 09 Trieát hoïc 6 10 Toaùn 3 KHOA MAKHOA TENKHOA TH Coâng ngheä thoâng tin DC Ñaïi cöông AV Quan heä hôïp taùc quoác teá CK Cô khí LOPHOC MALOP TENLOP GVCN MAKHOA SISO HOCPHI CDTHA Cao Ñaúng Tin Hoïc A Nguyeãn Hoaøi Nam TH 100 800000 CDTHB Cao Ñaúng Tin Hoïc B Traàn Thò Bích Nga TH 80 800000 CDCKA Cao Ñaúng Cô Khí A Hoà Vaên Chung CK 120 950000 CDCKB Cao Ñaúng Cô Khí B Nguyeån Quoác Thaéng CK 100 900000 Caâu 2: Thöïc hieän saép xeáp: Môû Table SINH VIEN Saép xeáp theo HOCBONG taêng daàn. Saép xeáp theo MALOP giaûm daàn, truøng malop thì theo masv Môû Table KETQUA: Saép xeáp theo MASV taêng daàn, truøng MANV thì xeáp theo MAMH taêng daàn. Môû Table SINH VIEN: Saép xeáp theo PHAI, truøng phaùi thì xeáp theo TENSV giaûm daàn, truøng TENSV thì xeáp theo NGAYSINH taêng daàn. Ñoùng Table SINH VIEÂN ñaõ ñöôïc saép xeáp, sau ñoù môû laïi moät laàn nöõa, baûng sinh vieân coù coøn ñöôïc theo thöù töï saép xeáp khoâng? Cho nhaän xeùt Caâu 3: Thöïc hieän thao taùc loïc döõ lieäu nhö sau: Môû table SINH VIEÂN, söû duïng Filter by Selection thöïc hieän loïc Caùc sinh vieân coù teân laø “Chinh” Caùc sinh vieân coù teân baét ñaàu laø “H” Caùc sinh vieân coù hoï loùt laø “Thò” Caùc sinh vieân sinh naêm 1975 Caùc sinh vieân sinh vaøo thaùng 09 Caùc sinh vieân nam Môû table KET QUA, söû duïng Filter by form thöïc hieän loïc: Caùc sinh vieân coù maõ laø “A01” Caùc moân hoïc coù maõ laø 02 Caùc sinh vieân coù ñieåm töø 7 ñeán 9 Caùc sinh vieân coù ñieåm nhoû hôn 5. Môû table SINH VIEN, söû duïng Advanced Filter/Sort thöïc hieän loïc: Caùc sinh vieân ôû “Q5” nhöng khoâng coù hoïc boång Caùc sinh vieân ôû “Q1” hoaëc “Q3” Caâu 4: Sao cheùp caáu truùc vaø döõ lieäu cuûa table SINH VIEN thaønh 2 table coù teân laø LY LICH SINH VIEN, SINH VIEN LY LICH. Sao cheùp caáu truùc cuûa table KETQUA thaønh table coù teân laø DIEM Sao cheùp caáu truùc vaø döõ lieäu cuûa LOPHOC thaønh table coù teân laø LOP_TAM Ñoåi teân table LOP_TAM thaønh LOP Ñoåi teân table LY LICH SINH VIEN thaønh baûng THONG TIN SINH VIEN Vaøo cheá ñoä Design View cuûa baûng THONG TIN VIEN, thöïc hieän caùc coâng vieäc: Cheøn theâm tröôøng GIAMHP(Giaûm hoïc phí), coù kieåu döõ lieäu laø Number, Validation rule laø >=0 vaø <=30 Xoùa caùc tröôøng HOSV, TENSV, PHAÙI, NGAY SINH, ÑÒA CHÆ Nhaäp caùc giaù trò cho coät giaûm hoïc phí tuøy yù nhöng naèm trong khoaûng töø 0 ñeán 30 Caâu 5: Môû table LOP, duøng chöùc naêng Edità Find hoaëc Edit à Replace ñeå thöïc hieän caùc thao taùc sau: Tìm nhöõng lôùp coù só soá >=100 Tìm nhöõng coù thuoäc khoa TH Tìm nhöõng loùp coù Teân baét ñaàu laø “CD” Tìm vaø thay theá nhöõng maõ khoa laø “CK” thay thaønh “DT”. Sau ñoù thay ngöôïc trôû laïi. Caâu 6: Xoaù table SINH VIEN LY LICH, SP_TAM, THONG TIN NHAN VIEN, LOP. Caâu 7: Thieát laäp Relationship giöõa caùc table. BAØI TAÄP QUERY Lieät keâ danh saùch sinh vieân goàm caùc tröôøng cuûa Table Sinh vien ñöôïc saép xeáp theo malop, cung malop thì theo masv. Lieät keâ danh saùch sinh vieân coù hoïc boång ñöôïc saép xeáp theo tröôøng tensv goàm caùc tröôøng Masv, hosv, tensv, makhoa, hocbong. Lieät keâ danh saùch caùc sinh vieân thuoäc lôùp baát kyø do ngöôøi söû duïng nhaäp vaøo goàm caùc tröôøng masv, hosv, tensv, nam, ngaysinh, diachi, hocbong. Lieät keâ danh saùch caùc sinh vieân thuoäc khoa Tin hoïc ñöôïc saép xeáp theo tröôøng tensv goàm caùc tröôøng masv, hosv, tensv, malop, tenlop, hocbong. Cho bieát lôùp hoïc naøo coù só soá cao nhaát. Lieät keâ baûng ñieåm cuûa sinh vieân goàm caùc tröôøng masv, hosv, tensv, nam, ngaysinh, malop, makhoa, mamh, lanthi, diem ñöôïc saép xeáp theo maõ moân hoïc, neáu cuøng maõ moân hoïc thì saép xeáp theo tensv. Döïa vaøo keát quaû caâu 6 lieät keâ danh saùch caùc sinh vieân ñaäu goàm caùc tröôøng masv, hosv, tensv, nam, ngaysinh, malop, makhoa, mamh, temh, lanthi, diem ñöôïc saép xeáp theo malop, neáu cuøng malop saép xeáp theo tensv (ñieåm >=5). Döïa vaøo keát quaû caâu 6 lieät keâ danh saùch caùc sinh vieân phaûi thi laïi goàm caùc tröôøng masv, hosv, tensv, nam, ngaysinh, mamh, tenmh, lanthi, diem ñöôïc saép xeáp theo mamh, neáu cuøng mamh saép xeáp theo tensv. Lieät keâ caùc sinh vieân coù hoï Nguyeãn. Lieät keâ caùc sinh vieân thuoäc khoa tin hoïc sinh tröôùc naêm 1980. Hieån thò baûng ñieåm cuûa töøng lôùp goàm caùc field masv, hosv, tensv, nam, ngaysinh, malop, makhoa, mamh, tenmh, lanthi, diem. Hieån thò danh saùch ñaäu cuûa töøng lôùp goàm caùc field masv, hosv, tensv, nam, ngaysinh, malop, makhoa, mamh, tenmh, lanthi, diem ñöôïc saép xeáp theo masv. Hieån thò danh saùch rôùt cuûa töøng lôùp goàm caùc field masv, hosv, tensv, nam, ngaysinh, malop, makhoa, mamh, tenmh, lanthi, diem ñöôïc saép xeáp theo masv. Hieån thò baûng ñieåm cuûa moân hoïc baát kyø goàm goàm caùc field masv, hosv, tensv, nam, ngaysinh, malop, makhoa, mamh, tenmh, lanthi, diem ñöôïc saép xeáp theo masv. Hieån thò baûng ñieåm cuûa hoïc sinh coù maõ sinh vieân laø ‘A01’ vaø “A04” goàm caùc field MASV, MAMH, TENMH, LANTHI, DIEM. Duøng Crostab query thoáng keâ baûng ñieåm cuûa töøng sinh vieân goàm. Taïo query teân TK SI So duøng ñeå thoáng keâ só soá cuûa töøng lôùp. Taïo query teân TK SI So duøng ñeå thoáng keâ só soá cuûa töøng lôùp theo töøng giôùi tính goàm Malop, tenlop, SosvNam, SosvNu. Cho bieát soá sinh vieân ñaäu vaø rôùt cuûa töøng lôùp goàm Malop, tenlop, SosvDat, Sosvrot. Cho bieát sinh vieân coù cuøng nôi sinh. Cho bieát moân hoïc naøo chöa coù sinh vieân döï thi goàm Mamh, Tenmh, sotinchi. Danh saùch ñieåm thi goàm masv, hosv, tensv, nam , ngaysinh, malop, ñieåm caùc moân, dtb, xeploai ( field xeáp loaïi döïa theo yeâu caàu sau : Neáu dtb töø 8 trôû leân thì xeáp loaïi Gioûi. Neáu dtb lôùn hôn hay baèng 6.5 vaø nhoû hôn 8 xeáp loaïi Khaù Neáu dtb lôùn hôn hay baèng 5.0 vaø nhoû hôn 6.5 xeáp loaïi Trung bình Coøn laïi laø loaïi Yeáu. Tính laïi HOCBONG cho caùc sinh vieân theo yeâu caàu sau : Neáu Sinh vieân xeáp loïai Gioûi, hocbong = 200000. Neáu Sinhvieân xeáp loïai Khaù, hocbong = 100000. Coøn laïi laø 0. Döïa vaøo Table Sinhvien cho bieát soá sinh vieân cuûa töøng lôùp goàm Malop, tenlop, siso. Cho bieát soá lôùp cuûa töøng khoa. Cho bieát coù bao nhieâu sinh vieân thi ñaït cho töøng moân goàm Mamh, tenmh, sosvdat. Cho bieát coù bao nhieâu sinh vieân thi rôùt cho töøng moân goàm Mamh, tenmh, sosvdat. Cho bieát coù bao nhieâu sinh vieân thi ñaït vaø rôùt cho töøng moân goàm Mamh, tenmh, sosvdat, sosvrot Cho bieát toång hoïc boång cuûa töøng lôùp goàm Malop, Tenlop, tongHocBong. Cho bieát toång hoïc boång cuûa töøng khoa goàm Makhoa, Tenkhoa, tongHocBong. Thoáng keâ soá sinh vieân gioûi, khaù, trung bình, yeáu theo töøng lôùp. Duøng Update Query ñeå söûa kyù töï ñaàu cuûa MASV thaønh TH neáu sinh vieân ñoù thuoäc khoa Tin Hoïc, thaønh CK neáu sinh vieân ñoù thuoäc khoa CK, coøn laïi giöõ nguyeân. Taêng Hocphi leân 50000 cho nhöõng lôùp thuoäc khoa TH. Duøng Make table Query, ñeå taïo ra baûng SINH VIEÂN ÑAÄU goàm caùc Field Masv, hoten, phai, malop, tenlop, mamh, tenmh, lanthi, diem. Duøng Make table Query, ñeå taïo ra baûng SINH VIEÂN RÔÙT goàm caùc Field Masv, hoten, phai, malop, tenlop, mamh, tenmh, lanthi, diem. Döïa vaøo Query 16, duøng Make table Query, ñeå taïo ra baûng TOÅNG KEÁT KHOA TIN HOÏC VAØ baûng TOÅNG KEÁT KHOA CÔ KHÍ. Duøng Make table Query, ñeå taïo ra baûng SINH VIEÂN COÙ HOÏC BOÅNG goàm caùc Field Masv, hoten, phai, malop, tenlop, makh, tenkh, hocbong. Theâm vaøo baûng Sinh vieân field Hocphi (Yes/No), sau ñoù nhaäp döõ lieäu cho Field naøy, sinh vieân naøo ñaõ ñoùng hoïc phí thì choïn yes, ngöôïc laïi laø No. Duøng Make Table Query, taïo table SINH VIEN CHUA DONG HOC PHI goàm Masv, Hoten, phai, malop, tenlop, makh, tenkh ñöôïc saép xeáp theo Makh, cuøng Makh thì theo malop, cuøng malop theo masv. Duøng append Query theâm vaøo baûng SINH VIEN CHUA DONG HOC PHI nhöõng Sinh vieân ñaõ ñoùng hoïc phí. Sau ñoù duøng Delete query xoùa trong baûng naøy nhöõng sinh vieân vöøa theâm. BAØI TAÄP FORM Taïo Form söû duïng caùc ñoái töôïng Label, text, Command, Check, Sun Form, Image, unbound Object, Bound Object Frame theo daïng sau : Unbound Object Frame Fields Label Bound Object Frame Command Button Sub Form Check box Taïo form söû duïng Tab Control. a. Taïo Form Keát quaû thi cuûa lôùp theo maãu sau : Yeâu caàu : Khi nhaép nuùt lôùp hoïc seõ hieån thò thoâng tin veà lôùp hoïc theo maãu sau : Khi nhaép nuùt Keát quaû chung seõ hieån thò thoâng tin veà keát quaû thi cuûa caùc sinh vieân lôùp ñang xem theo maãu sau (Chuù yù : Do danh saùch sinh vieân thuoäc hai khoa, moãi khoa thi caùc moân hoïc khaùc nhau neân khi choïn maõ lôùp seõ truyeàn tham soá cho query cuûa SubForm baûng ñieåm ñeå ra baûng ñieåm töông öùng): Höùông daãn: Böôùc 1 : Taïo Sub Form Frmketqua: Keát quaû hoïc taäp töøng lôùp theo nhöõng thoâng tin ôû maøn hình 2 (löu yù : Khi taïo nguoàn döõ lieäu cho Sub Form naøy phaûi coù Malop). Trong phaàn Form Footer taïo 1 text box ñaët teân laø SOSV vaø trong Control source cuûa noù goõ vaøo coâng thöùc =count([MASV]). Böôùc 2 : Taïo Form Keát quaû thi cuûa lôùp vôùi nguoàn döõ lieäu laø baûng LOPHOC. Taïo ñoái töôïng laø Tab Control Taïi trang 1 (lôùp hoïc): Keùo caùc Field töø Field List xuoáng vaø trình baøy caùc ñoái töôïng nhö maøn hình 1. Taïi trang 2 (keát quaû chung) : Chöùa Sub Form Ketqua nhö maøn hình 2: Link child Fields : Malop. Link Master Fields : Malop. Taïo 1 Textbox döôùi vò trí cuûa khung SubForm Ñaët Caption : Toång soá sinh vieân. Ñaët Control Source cuûa Textbox bieåu thöùc sau := [Frmketqua].[Form]![SOSV] b. Taïo Form theo maãu sau :Sinh vieân töï laøm Truyeàn tham soá töø form vaøo Query vaø Report Coâng thöùc : [FORMS]![TEÂN FORM]![TEÂN ÑOÁI TÖÔÏNG] Yeâu caàu: Taïo Form coù daïng sau : Click choïn MASV, nhaán nuùt xem thì seõ chaïy query hieån thò baûng ñieåm cuûa sinh vieân vöøa choïn Nhaán nuùt IN hieån thò Report baûng ñieåm cuûa sinh vieân ñoù. Nuùt Thoaùt laø ñoùng Form höôùng daãn: Böôùc 1 : Taïo Form BANGDIEMSV goàm :Combobox : Chænh thuoäc tính Name : Cbomasv Row Source Type : Table/Query Row Source : SELECT [SVIEN].[MASV], [SVIEN].[HOSV], [SVIEN].[TENSV] FROM [SVIEN] Böôùc 2 : Taïo Query laøm nguoàn döõ lieäu cho Report luoân goàm Masv, HoTen, Malop, Mamh, tenmh, Lanthi, Diem vaø truyeàn tham soá vaøo Query taïi coät MASV nhö sau : Böôùc 3: Taïo report laáy nguoàn döõ lieäu laø Query treân. Truyeàn tham soá giöõa caùc thaønh phaàn cuûa Form Neáu truyeàn tham soá töø Form naøy sang Form khaùc (Hay Report). Coâng thöùc : FORMS![TEÂN FORM]![TEÂN ÑOÁI TÖÔÏNG] Neáu truyeàn tham soá töø SubForm sang Main form trong cuøng 1 Form Coâng thöùc : [TEÂN OÂ CHÖÙA SUBFORM].FORM![TEÂN ÑOÁI TÖÔÏNG] Yeâu caàu Taïo Form coù daïng sau : Höôùng daãn: Böôùc 1 : Taïo Main Form THONG TIN CHI TIET SV trong ñoù baïn haõy cheøn ñoái töôïng tab Control vôùi hai trang maøn hình CHITIET LOP HOC vaø THONG TIN VE SINH VIEN. Böôùc 2 : ÔÛ trang Chi Tiet Lop Hoc Taïo Combobox choïn maõ lôùp vôùi teân laø Mlop vaø SubForm thöù nhaát coù caùc thuoäc tính sau Name : SUB1 Link Child field : Malop Link Master field : Mlop Taïo caùc Text Box hieån thò caùc thoâng tin : teân lôùp, Hoï vaø teân sinh khi Click choïn Masv trong SubForm thöù nhaát vaø Maõ sinh vieân nhö sau : Teân lôùp : =[SUB1].Form![Hosv]+” “+[SUB1].Form![Tensv] Hoï teân Sinh vieân : = [SUB1].Form![Hosv]+ “ “ +[SUB1].Form![Tensv] Maõ sinh vieân : = [SUB1].Form![Masv] Löu yù : Trong nguoàn döõ lieäu cuûa SubForm thöù nhaát naøy ngoaøu nhöõng noäi dung phuïc vuï cho SubForm phaûi coù chöùa caùc Field maø baïn muoán thöïc hieän coâng thöùc nhö treân. Taïo lieân keát giöõa SubForm thöù nhaát vaø SubForm thöù hai baèng caùch göûi giaù trò cuûa Masv trong SubForm thöù nhaát ra mainForm ( taïo ôû mainForm 1 oâ textBox chöùa giaù trò Masv cuûa SubForm thöù nhaát) vaø ñaët SubForm thöù hai lieân keát vôùi oâ Text Box naøy ôû main form. Caùc böôùc tieán haønh nhö sau : Taïi 1 oâ Textbox trong mainForm, hieän baûng Properites cuûa oâ, choïn : Name : Ñaët teân cho oâ (ví duï Tgian) Control Source :vieát coâng thöùc laáy giaù trò töø SubForm thöù nhaát theo qui taéc [Teân oâ chöùa SubForm].Form![teân oâ laáy giaù trò] nhö sau : = [SUB1].Form![Masv] Visible : Choïn No. Chænh thuoäc tính cuûa oâ SubForm thöù hai theo noäi dung sau ; Link Child Fields : teân field laøm chæ tieâu quan heä (Masv). Link Master Fields : teân oâ Text box vöøa taïo.(Tgian). ÔÛ trang Thong Tin Ve Sinh Vien Taïo caùc TextBox hieån thò caùc thoâng tin veà sinh vieân baèng caùch laáy nhöõng thoâng tin naøy qua nguoàn döõ lieäu cuûa SubForm thöù nhaát (Taát nhieân khi taïo SubForm thöù nhaát naøy baïn phaûi chuù yù ñöa taát caû caùc thoâng caàn laáy vaøo nguoàn döõ lieäu cuûa noù). Taïo Form theo maãu sau : Taïo Form theo maãu sau : Taïo Form theo maãu sau Taïo laïi Form daïng treân nhöng thay caùc nuùt leänh Command baèng Option group. Taïo Form theo maãu sau : BAØI TAÄP REPORT Taïo Report theo maãu sau : Taïo Report In Baûng ñieåm theo maãu sau : Taïo Report In theû sinh vieân theo maãu sau :

Các file đính kèm theo tài liệu này:

  • docBÀI TẬP THỰC HÀNH ACCESS.doc
Tài liệu liên quan