Để chuẩn bị cho sự kiện này, công ty quyết định xây dựng một hệ thống bán hàng Sau đây là CSDL được sử dụng trong phần mềm để quản lý thông tin sách, khách hàng, và và các hóa đơn như mô
Trang 1Đ c l p – T do – H nh phúcộ ậ ự ạ
- -Đ THI T T NGHI P CAO - -Đ NG TH C HÀNH FPT Ề Ố Ệ Ẳ Ự CHUYÊN NGÀNH NG D NG PH N M M Ứ Ụ Ầ Ề
Môn thi: Thực hành
Mã đề thi: UDPM – TH - 40110 Thời gian: 04 giờ (không kể thời gian giao đề thi)
Sinh viên có thể lựa chọn một trong hai phần để làm bài, gồm:
1 Phần 1: Lập trình và Cơ sở dữ liệu
2 Phần 2: Mạng máy tính
Trang 2A TỔNG QUAN
Cấu trúc đề thi
Lưu ý khi làm bài
Tạo thư mục mang tên <tên sinh viên>_<mã số sinh viên> của thí sinh trên Desktop, lưu tất cả nội dung bài làm vào thư mục này Yêu cầu phải nộp database dạng sql script
B YÊU CẦU ĐỀ THI
Nhà sách ABC sắp được khai trương Để chuẩn bị cho sự kiện này, công ty quyết định xây dựng một
hệ thống bán hàng
Sau đây là CSDL được sử dụng trong phần mềm để quản lý thông tin sách, khách hàng, và và các hóa đơn như mô tả ở trên
Mô hình quan hệ
Trang 3Hình 1: Mô hình CSDL
Chi tiết các bảng
Tạo các bảng có chi tiết được mô tả như sau Chú ý mặc định của các cột là không cho phép để trống (NOT NULL) Các cột cho phép để trống được mô tả ở cột ràng buộc của các bảng thông tin chi tiết
Bảng TheLoaiSach lưu thông tin các thể loại
Tên cột Kiểu dữ liệu Mặc định Ràng buộc Mô tả
Bảng ThôngTinSach lưu thông tin sách
Tên cột Kiểu dữ liệu Mặc
định
Ràng buộc Mô tả
NhaXuatBa
Số lượng cuốn sách đang có trong cửa
Trang 4HinhBia nvarchar(50)
‘book.gif
Bảng KhachHang lưu thông tin các dự án đã thực hiện
Tên cột Kiểu dữ liệu Mặc
định Ràng buộc Mô tả
Bảng HoaDon lưu thông tin chung của hóa đơn mà khách hàng mua
Tên cột Kiểu dữ liệu Mặc định Ràng buộc Mô tả
Bảng HoaDonChiTiet lưu thông tin chi tiết của 1 hóa đơn mà khách hàng mua
Tên cột Kiểu dữ liệu Mặc định Ràng buộc Mô tả
Module 1: Tạo CSDL
Hãy sử dụng tập tin NhaSach.sql để tạo CSDL sau đó thiết lập quan hệ và nhập dữ liệu cho các bảng theo yêu cầu sau:
1.1 Thiết lập quan hệ giữa các bảng
Thiết lập quan hệ giữa các bảng như Hình 1 và đặc các thuộc tính ràng buộc sao cho:
Xóa hóa đơn thì xóa luôn các thông tin chi tiết của hóa đơn
Không cho phép xóa thông tin sách nếu đã có trong hóa đơn chi tiết
Không cho phép xóa thông tin khách hàng nếu đã có trong hóa đơn
1.2 Nhập dữ liệu
Nhập dữ liệu mẫu cho mỗi bảng như file Dulieu.xls đính kèm
Trang 5Module 2: Thủ tục lưu
Tạo 3 thủ tục lưu theo yêu cầu sau:
STT Tên thủ tục lưu Chức năng
1 Them_KhachHang() Cho phép thêm mới một khách hàng
2 Sua_ KhachHang() Cho phép sửa một khách hàng theo mã
3 Xoa_ KhachHang() Cho phép xóa một khách hàng theo mã
Module 3: Form quản lý dữ liệu
3.1 Thiết kế
Thiết kế form quản lý thông tin khách hàng bao gồm các chức năng thêm, xóa, sửa và hiển thị như hình sau với dữ liệu mẫu trên file NhaSach.xls:
Cách thức tổ chức dữ liệu trên file text do người lập trình tự định nghĩa.(Ví du: Dữ liệu của từng bản ghi có thể lưu trữ trên từng hàng và từng mục có thể cách nhau bằng các ký tự văn bản …)
Hình 2: Form quản lý khách hàng
Trang 6Viết mã cho các nút chức năng theo yêu cầu sau:
T
T
1 Khởi động form Toàn bộ các dự án được hiển thị trên lưới
2 Nhấp một hàng trên
lưới
Hiển thị thông tin chi tiết dự án được chọn lên form
3 Nhấp nút [Thêm] Thêm một khách hàng mới vào file text
Bạn cần kiểm tra lối không cho trùng mã khách hàng
Bạn cần thông báo cho người dùng biết việc thêm mới có thành công hay không
4 Nhấp nút [Sửa] Sửa thông tin khách hàng đang xem trên các textbox, sau đó
cập nhật dữ liệu đã được sửa vào lưới
Bạn cần thông báo cho người dùng biết là đã sửa thành công hay thất bại
5 Nhấp nút [Cập nhật] Sau khi sửa thành công giữa textbox và lưới thì ghi lại dữ liệu
vừa được thay đổi cập nhật vào file
6 Nhấp nút [Xóa] Xóa khách hàng đang xem trên form khỏi file
Bạn cần yêu cầu người dùng xác nhận xóa trước khi xóa
7 Nhấp nút [Nhập lại] Xóa trắng dữ liệu các trường trên form cho phép nhập thông
tin khách hàng mới
Module 4: Xử lý theo yêu cầu
4.1 Tìm kiếm khách hàng theo tên
Thiết kế form cho phép tìm kiếm các khách hàng theo tên có giao diện như sau
Trang 7Hình 3: Tìm kiếm khách hàng theo tên
Viết mã xử lý sự kiện nhấp nút [Tìm] sao cho thông tin chi tiết của khách hàng có tên được chỉ định được hiển thị trên lưới
4.2 Thống kê
Thiết kế form thống kê số lượng khách hàng theo từng giới tính theo mẫu như hình sau:
Hình 4: Thống kê số lượng khách hàng
Module 5: Tạo form chính
Trang 8Hình 5: Form chính
Hoạt động của menu được mô tả như sau:
Đóng form: Thực hiện đóng form con đang làm việc
Kết thúc:Thoát khỏi ứng dụng
Trang 9C TIÊU CHÍ CHẤM ĐIỂM
1.2 Nhập dữ liệu cho mỗi bảng (copy từ file Excel) 5
3.2 + Hiển thị lưới
+ Hiển thị dữ liệu lên form khi nhấp một hàng trên lưới.
10
3.3 Viết chức năng thêm + validate dữ liệu khi thêm dữ liệu 10 3.4 Viết chức năng sửa + validate dữ liệu khi sửa dữ liệu thay đổi trên lưới 10 3.5 Viết chức năng cập nhật, ghi dữ liệu thay đổi vào file 10 3.6 Viết chức năng xóa dữ liệu + check điều kiện xóa dữ liệu 5
Module 4: Tạo các form xử lý theo yêu cầu 20
4.2 Form thống kê số lượng khách hàng theo giới tính 10