Đề tài Chương trình xây dựng bài toán trên hệ quản trị cơ sở dữ liệu Microsoft Access

Tài liệu Đề tài Chương trình xây dựng bài toán trên hệ quản trị cơ sở dữ liệu Microsoft Access: Lời Nói Đầu Ngày nay không ai không thừa nhận vai trò to lớn của thông tin trong đời sống, trong kinh doanh cũng như mọi mặt, mọi lĩnh vực của xã hội. Việc nắm bắt thông tin nhanh, nhiều, chính xác trở nên vô cùng quan trọng. Cùng với sự phát triển của xã hội, thông tin ngày càng phong phú với nhiều yếu tố hợp thành, nhiều mối quan hệ. Để có thể khai thác được nguồn tài nguyên quí giá ấy đòi hỏi phải có những phương pháp và công cụ mới. Tin học đã cung cấp cho ta những phương pháp và những công cụ đó. Chương trình là một ứng dụng đặt ra trên yêu cầu thực tế của Công ty Hỗ trợ Phát triển Tin học 23 - Quang Trung - Hà Nội. Nhằm giảm bớt các khâu trung gian ,các công việc làm bằng tay rất tốn thời gian, tạo điều kiện lưu trữ, nắm bắt được càng nhiều thông tin càng tốt, phục vụ cho quá trình phân công công việc được nhanh chóng, chính xác, hỗ trợ cho kinh doanh của công ty. Chương trình được xây dựng trên hệ quản trị cơ sở dữ liệu Microsoft Access, bằng cách kết hợp giữa việc sử dụng cá...

doc120 trang | Chia sẻ: hunglv | Lượt xem: 1280 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Đề tài Chương trình xây dựng bài toán trên hệ quản trị cơ sở dữ liệu Microsoft Access, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Lời Nói Đầu Ngày nay không ai không thừa nhận vai trò to lớn của thông tin trong đời sống, trong kinh doanh cũng như mọi mặt, mọi lĩnh vực của xã hội. Việc nắm bắt thông tin nhanh, nhiều, chính xác trở nên vô cùng quan trọng. Cùng với sự phát triển của xã hội, thông tin ngày càng phong phú với nhiều yếu tố hợp thành, nhiều mối quan hệ. Để có thể khai thác được nguồn tài nguyên quí giá ấy đòi hỏi phải có những phương pháp và công cụ mới. Tin học đã cung cấp cho ta những phương pháp và những công cụ đó. Chương trình là một ứng dụng đặt ra trên yêu cầu thực tế của Công ty Hỗ trợ Phát triển Tin học 23 - Quang Trung - Hà Nội. Nhằm giảm bớt các khâu trung gian ,các công việc làm bằng tay rất tốn thời gian, tạo điều kiện lưu trữ, nắm bắt được càng nhiều thông tin càng tốt, phục vụ cho quá trình phân công công việc được nhanh chóng, chính xác, hỗ trợ cho kinh doanh của công ty. Chương trình được xây dựng trên hệ quản trị cơ sở dữ liệu Microsoft Access, bằng cách kết hợp giữa việc sử dụng các công cụ của Access với lập trình Access Basic nhằm đáp ứng các đòi hỏi đặt ra của bài toán. Mặc dù có nhiều cố gắng nhưng do thời gian và trình độ kinh nghiệm có hạn, đồng thời việc tiếp cận với hệ quản trị cơ sở dữ liệu Access chưa được bao lâu nên chắc rằng chương trình còn có nhiều sai sót, khiếm khuyết. Rất mong nhận được sự góp ý của các thầy cô, các bạn bè đồng nghiệp để có thể hoàn thiện chương trình được tốt hơn. Tác giả xin gửi lời cảm ơn chân thành tới thầy giáo hướng dẫn: PTS Tôn Quốc Bình. Các thầy cô trong khoa Toán - Cơ - Tin học Trường ĐHKHTN - Đại Học Quốc Gia Hà Nội cùng các anh, chị trong công ty HiPT đã tận tình giúp đỡ tác giả hoàn thành luận văn này đúng hạn. Hà nội, ngày 20 tháng 05 năm 1999 Nghiêm Trung Hiếu mục lục Trang Lời nói Đầu 1 Chương i: BàI Toán 1. Đặt bài toán 3 2. Phân tích bài toán 11 Chương II: Cấu Trúc Dữ Liệu 1. Sơ đồ chức năng 23 2. Sơ đồ dòng thông tin 33 3. Mô hình dữ liệu 34 chương IIi: Công Nghệ Sử Dụng 1. Giới thiệu cơ sở dữ liệu Access 47 2. Giới thiệu công cụ của Access 48 1. Bảng 49 2. Truy Vấn 51 3. Mẫu biểu 53 4. Báo biểu 57 5. Macro 61 6. Đơn thể 62 3. Lập trình Access Basic 64 Chương IV: Giới Thiệu chương trình I. Tổ chức dữ liệu của chương trình trên Access 71 II. Đặc tả chương trình. 79 III. Giới thiệu một vài giao diện của chương trình 109 Kết luận 116 TàI liệu tham khảo 117 Chương I : Bài toán I. Bài toán và các yêu cầu Bài toán đặt ra là hỗ trợ công việc kinh doanh tại một cửa hàng kinh doanh sản phẩm. Tại cửa hàng một qui trình kinh doanh diễn ra như sau: + Cửa hàng nhận các Báo giá sản phẩm của Nhà cung cấp sản phẩm. Nội dung của các báo giá này ghi rõ giá bán của từng loại sản phẩm. Sau khi nhận các báo giá của Nhà cung cấp sản phẩm, cửa hàng sẽ tiến hành làm các báo giá sản phẩm cho những khách hàng có nhu cầu đặt mua sản phẩm. + Sau khi gửi các báo giá cho các khách hàng, cửa hàng sẽ tiếp nhận các đơn đặt hàng của Khách hàng gửi tới. Căn cứ vào các đơn đặt hàng của khách hàng, cửa hàng sẽ tiến hành làm các đơn đặt hàng gửi tới Nhà cung cấp sản phẩm, yêu cầu cung cấp loại Sản phẩm và số lượng cụ thể cho từng loại sản phẩm đó. + Nhà cung cấp đáp ứng yêu cầu cung cấp Sản phẩm của cửa hàng bằng việc chuyển giao hàng cho cửa hàng theo đơn đặt hàng và làm hóa đơn thanh toán. Sản phẩm mà Nhà cung cấp chuyển đến sẽ được Cửa hàng xác nhận, kiểm tra theo một đơn đặt hàng mà cửa hàng đã gửi tới Nhà cung cấp. Sản phẩm mua về từ Nhà cung cấp có thể được cửa hàng chuyển vào Kho hàng dự trữ. Sau khi nhận hàng từ Nhà cung cấp sản phẩm Cửa hàng sẽ tiến hành chuyển giao Sản Phẩm cho từng Khách hàng đã gửi đơn đặt hàng và làm hóa đơn thanh toán. + Các Nhân viên của cửa hàng sẽ thực hiện công việc chuyển giao Sản phẩm cho Khách hàng. Khách hàng sẽ xác nhận các Sản phẩm được chuyển tới theo một bản sao của đơn đặt hàng đã gửi tới Cửa hàng. Sau khi đã xác nhận hàng hóa đã nhận được, Khách hàng sẽ tiến hành công việc chuyển tiền mua hàng cho Cửa hàng. Trong một qúa trình kinh doanh sản phẩm Cửa hàng phải quản lý các đối tượng sau : + Sản Phẩm + Nhà Cung Cấp Sản Phẩm + Khách Hàng + Nhân Viên + Kho hàng + Các Loại Chứng Từ Bài toán ở đây đặt ra là phải quản lý các đối tượng này theo các yêu cầu sau: 1. Yêu cầu đối với đối tượng Sản Phẩm Quản lý đối tượng Sản phẩm được thực hiện sao cho luôn có thể đưa ra được các thông tin sau: - Các thông tin mô tả chi tiết về một Sản phẩm cụ thể như: + Tên gọi + Cấu hình + Tên hãng sản xuất ra Sản Phẩm + Đơn vị tính + Đơn vị giá . . . . . . . . - Sản phẩm được lưu trữ ở đâu, kho nào. . . - Thông tin về số lượng của một Sản Phẩm, Giá mua vào, Giá bán ra ... Khi cần có thể thực hiện các yêu cầu đưa vào các thông tin mới, hoặc bổ sung vào trong Danh Sách Sản Phẩm tên và các thông tin về một Sản Phẩm mới. 2. Yêu cầu đối với đối tượng Khách Hàng Phải đưa ra được các thông tin cần thiết về một Khách Hàng khi có yêu cầu. Các thông tin chi tiết về Khách Hàng gồm có: + Tên gọi của Khách Hàng + Địa chỉ liên hệ + Số điện thoại + Số Fax + Một số các thông tin khác: - Lĩnh vực hoạt động của Khách Hàng - Tên Ngân hàng mà Khách Hàng mở tài khoản. - Số tài khoản của Khách Hàng - Các ghi chú cần thiết khác Khi cần có thể thực hiện các yêu cầu đưa vào các thông tin mới, hoặc bổ sung vào trong Danh Sách Khách Hàng tên và các thông tin về một Khách Hàng mới. 3. Yêu cầu đối với đối tượng Nhà Cung Cấp Sản Phẩm Thực hiện, tổ chức lưu trữ các thông tin chi tiết về từng Nhà Cung Cấp Sản Phẩm. Khi có yêu cầu xem thông tin của một Nhà Cung Cấp Sản Phẩm nào đó, phải đưa ra được các thông tin chi tiết của Nhà Cung Cấp đó. Các thông tin phải đưa ra cụ thể là: + Tên gọi của Nhà Cung Cấp Sản Phẩm + Địa chỉ liên hệ + Số điện thoại + Số Fax + Một số các thông tin khác - Lĩnh vực hoạt động của Nhà cung cấp sản phẩm - Tên Ngân hàng mà Nhà Cung Cấp Sản Phẩm mở tài khoản - Số tài khoản của Nhà Cung Cấp Sản Phẩm - Các ghi chú cần thiết khác Khi cần có thể thực hiện các yêu cầu đưa vào các thông tin mới, hoặc bổ sung vào trong Danh Sách Nhà Cung Cấp Sản Phẩm tên và các thông tin về một Nhà Cung Cấp Sản Phẩm mới. 4. Yêu cầu đối với đối tượng Nhân Viên Nhân Viên là những người làm trong cửa hàng, là đối tượng tham gia vào tất cả các hoạt động, công việc trong cửa hàng. Các yêu cầu : - Khi có yêu cầu xem thông tin về một Nhân Viên nào đó, cần phải lấy được các thông tin chi tiết về Nhân Viên đã yêu cầu. Các thông tin đưa ra gồm: + Tên gọi của Nhân Viên + Ngày sinh + Giới tính + Địa chỉ liên hệ + Số điện thoại + Số chứng minh thư + Chức vụ của Nhân viên đó + Đơn vị quản lý nhân viên đó + Địa chỉ liên hệ hiện nay + Địa chỉ thường trú + Các thông tin ghi chú đặc biệt về bản thân của Nhân Viên - Quá trình công tác - Gia đình . . . . . . . . . - Khi cần có thể thực hiện các yêu cầu đưa vào các thông tin mới về một Nhân Viên nào đó, hoặc bổ sung vào trong Danh Sách Nhân Viên tên và các thông tin về một Nhân Viên mới. 5) Các yêu cầu với đối tượng Kho hàng Kho hàng là nơi lưu trữ hàng hóa sản phẩm dự trữ của cưa hàng Các thông tin về Kho Hàng bao gồm: + Tên gọi của Kho Hàng + Địa chỉ của Kho Hàng + Người quản lý Kho Hàng + Các thông tin phụ khác mô tả Kho Hàng - Chiều dài - Rộng - Diện Tích. . . . . . . .. . . . .. Khi cần có thể thực hiện các yêu cầu đưa vào các thông tin mới về một Kho Hàng nào đó, hoặc bổ sung vào trong Danh Sách Kho Hàng tên và các thông tin về một Kho Hàng mới. 6) Các yêu cầu đối với đối tượng Các loại chứng từ Các chứng từ phát sinh gồm có : + Các Báo Giá Sản Phẩm + Các Đơn Đặt Hàng + Các Hóa Đơn Thanh Toán + Các Phiếu Xuất ,Nhập Kho + Các Xác Nhận Nhận Hàng + Các báo cáo tình hình kinh doanh của cửa hàng Các yêu cầu chung: - Đảm bảo hoàn thành công việc thiết lập các loại chứng từ khi có một yêu cầu đòi hỏi nào đó. - Khi có yêu cầu cho thông tin về một loại chứng từ nào, phải đưa ra được các thông tin của loại chứng từ đó và nội dung cảu chứng từ. Các yêu cầu đối với mỗi loại chứng từ khác nhau 6.1. Các Báo Giá Sản Phẩm Báo giá cũng có hai chiều : - Chiều đến,đó là các báo giá của Nhà cung cấp gửi báo giá cho cửa hàng - Chiều đi, đó là các báo giá của Cửa hàng gửi tới các Khách Hàng Các thông tin cần đưa ra cho mỗi Báo Giá gồm : + Báo giá cho ai, cho khách hàng nào ? + Nhà cung cấp là ai + Ngày bắt đầu có hiệu lực của báo giá + Ngày hết hiệu lực của báo giá. + Tên của Nhân viên làm báo giá + Các thông tin chi tiết của các Sản Phẩm được báo giá. - Tên gọi của sản phẩm. - Giá bán , thuế . . . - Số lượng + Các thông tin phụ khác của bao giá - Hình thức thanh toán - Điều kiên giao hàng - Thời gian bảo hành . . . . . . Khi cần có thể thực hiện các yêu cầu đưa vào các thông tin mới về một Báo Giá nào đó, hoặc bổ sung vào trong Danh Sách Báo Giá các thông tin về một Báo Giá mới. 6.2. Các Đơn Đặt Hàng Các Đơn Đặt Hàng bao gồm cả Đơn Đặt Hàng của Cửa Hàng gửi tới Nhà Cung Cấp Sản Phẩm và các Đơn Đặt Hàng của Khách Hàng gửi tới Cửa Hàng. Các yêu cầu về Đơn Đặt Hàng là việc kết xuất các thông tin về đặt hàng. Thông tin của một Đơn Đặt Hàng gồm: + Tên gọi của Khách Hàng gửi đơn đặt hàng. Thông tin về Địa chỉ liên hệ của Khách Hàng.. . . + Tên của Nhà cung cấp Sản phẩm (Địa chỉ liên hệ với Nhà cung cấp.) + Ngày đặt hàng. + Ngày phải chuyển giao hàng ( ngày đòi hỏi phải chuyển hàng). + Địa chỉ chuyển hàng đến + Họ tên của Nhân Viên làm đơn hàng + Thông tin chi tiết về từng Sản Phẩm đặt hàng - Tên Sản phẩm - Số lượng đặt hàng. - Giá bán. - Thuế VAT . . . . . . + Cước phí thực hiện chuyên chở hàng hoá (Vận chuyển hàng) + Giá trị của đơn hàng. + Các ghi chú cần thiết về đơn đặt hàng Khi cần có thể thực hiện các yêu cầu đưa vào các thông tin mới về một Đơn Đặt Hàng nào đó, hoặc bổ sung vào trong Danh Sách Các Đơn Đặt Hàng các thông tin về một Đơn Đặt Hàng mới. 6.3. Các Hóa Đơn Thanh Toán Hóa Đơn Thanh Toán xác định Sản Phẩm được bán cho Khách Hàng. Các thông tin về một hóa đơn thanh toán cần có là: + Thông tin về Nhà cung cấp sản phẩm ( Tên gọi, Địa chỉ liên hệ ...) + Thông tin về Khách hàng (Tên gọi, Địa chỉ liên hệ ...) + Thông tin về Nhân viên làm hóa đơn thanh toán. + Thông tin chi tiết về từng Sản Phẩm được thanh toán - Tên Sản phẩm - Số lượng thanh toán - Giá bán. . . . . . . Khi cần có thể thực hiện các yêu cầu đưa vào các thông tin mới về một Hóa đơn thanh toán nào đó, hoặc bổ sung vào trong Danh Sách các Hóa đơn thanh toán các thông tin về một Hóa đơn thanh toán mới. 6.4. Các Xác Nhận Nhận Hàng Các thông tin cần đưa ra trên một Xác Nhận Nhận Hàng gồm có các thông tin sau: + Thông tin về đơn đặt hàng đã gửi + Thông tin về Khách Hàng + Thông tin về Nhà Cung Cấp + Thông tin chi tiết về từng loại Sản Phẩm được Khách Hàng xác nhận, bao gồm: - Tên gọi của Sản Phẩm - Giá bán - Số lượng ....... Khi cần có thể thực hiện các yêu cầu đưa vào các thông tin mới về một Xác Nhận Nhận Hàng nào đó, hoặc bổ sung vào trong Danh Sách các Xác Nhận Nhận Hàng các các thông tin về một Xác Nhận Nhận Hàng mới. 6.5. Các Hóa Đơn Xuất Kho Thông tin cần đưa ra trên một hóa đơn xuất kho là + Thông tin về kho hàng nơi thực hiện các hóa đơn xuất kho + Ngày thực hiện xuất kho + Tên của người nhận hàng + Xuất kho cho ai, khách hàng là ai ? + Chi tiết các thông tin về San Phẩm Xuất kho ` - Tên gọi của Sản Phẩm - Giá bán - Số lượng . . . . . . Thực hiện các yêu cầu tìm kiếm một hóa đơn xuất kho, cập nhật thông tin trên các hóa đơn xuất kho, hoặc đưa vào trong danh sách các hóa đơn xuất kho một hóa đơn xuất kho mới. 6.6. Các Hóa Đơn Nhập Kho Thông tin cần đưa ra trên một hóa đơn nhập kho là + Thông tin về kho hàng nơi thực hiện các hóa đơn nhập kho + Ngày thực hiện nhập kho + Tên của người nhận hàng + Nhập kho cho ai, khách hàng là ai ? + Chi tiết các thông tin về Sản Phẩm Nhập kho ` - Tên gọi của Sản Phẩm - Giá bán - Số lượng .. . . . .. Thực hiện các yêu cầu tìm kiếm một hóa đơn nhập kho, cập nhật thông tin trên các hóa đơn nhập kho, hoặc đưa vào trong danh sách các hóa đơn nhập kho một hóa đơn nhập kho mới. 6.7. Các báo cáo về tình hình kinh doanh Các báo cáo cần thực hiện gồm có + Báo cáo Xuất - Nhập - Tồn kho trong một khoảng thời gian nào đó do người sử dụng yêu cầu + Báo cáo bán hàng: Thực hiện tổng kết tình hình bán hàng của cửa hàng trong một khoảng thời gian . + Bảng kê hóa đơn bán hàng + Bảng kê hóa đơn mua hàng + Bảng kê các chứng từ mua vào + Bảng kê các chứng từ bán ra + Báo cáo tổng kết hoạt động kinh doanh trong một khoảng thời gian II. Phân tích bài toán Để đáp ứng yêu cầu, đòi hỏi của bài toán, cần làm sáng tỏ, phân tích kỹ hơn để thấy đượcc các đặc điểm tính chất của các đối tượng đã nêu ở phần trên. 1. Sản phẩm Kinh doanh sản phẩm hàng hoá dựa trên công việc chuyển giao sản phầm từ cửa hàng tới các đối tượng khách hàng. Do vậy cửa hàng luôn cần thiết có các thông tin về sản phẩm, hàng hoá. Cửa hàng luôn luôn có thể có ngay được các thông tin mô tả chi tiết về một loại sản phẩm bất kỳ, về số lượng sản phẩm. Các thông tin mô tả chi tiết về sản phầm gồm: - Các thông tin mô tả sản phẩm + Tên gọi của sản phẩm. + Cấu trúc, công dụng của sản phẩm, hãng sản xuất ra sản phẩm... + Đơn vị tính + Đơn vị giá - Thông tin về nguồn cung cấp sản phẩm: Sản phẩm đã được mua về từ Nhà cung cấp nào. - Sản phẩm được lưu trữ ở đâu. Nằm trong kho nào - Số lượng sản phẩm hiện có trong cửa hàng. - Giá mua vào của Sản Phẩm. - Giá bán ra của Sản phẩm thể hiện trên các báo giá gần nhất. Tại cửa hàng kinh doanh sản phẩm, sản phẩm được bán cho khách hàng lấy ra từ: - Kho dự trữ hàng hoá của cửa hàng. - Lấy ra từ phòng trưng bầy (Showroom) Nguồn bổ xung sản phẩm cho cửa hàng được lấy từ: - Thông qua Nhập Khẩu hàng hoá, các công ty đại lý nước ngoài. - Lấy từ các công ty, xí nghiệp trong nước. Thông tin kết xuất đưa ra là thông tin chi tiết về từng loại sản phẩm, về mỗi một sản phẩm cụ thể. Các thông tin đó phục vụ cho: - Đáp ứng yêu cầu thông tin về sản phẩm của khách hàng (khách hàng yêu cầu cho biết thông tin chi tiết về một sản phẩm nào đó). - Phục vụ cho quá trình lên đơn đặt hàng gửi tới Nhà Cung Cấp Sản Phẩm. 2. Khách hàng Khách hàng là một nhân tố quan trọng quyết định sự sống còn trong công việc kinh doanh của cửa hàng. Khách hàng là người đưa ra các đơn đặt hàng mua sản phẩm và là nơi để cho cửa hàng thực hiện chuyển giao sản phẩm, hàng hoá. Cửa hàng cần phải lưu trữ các thông tin về khách hàng, các thông tin này bao gồm: + Tên của khách hàng. + Địa Chỉ liên hệ + Số điện thoại, số Fax. + Đại diện của khách hàng. + Lĩnh vực hoạt động của Khách Hàng + Tài khoản. + Ngân hàng + Các ghi chú cần thiết khác. * Thông tin Ngân hàng, Tài khoản là thông tin về tài khoản của khách hàng đã mở tại một Ngân hàng nào đó. Kết xuất, đưa ra các thông tin về khách hàng là đưa ra các thông tin này. các thông tin về khách hàng qua thời gian có thể bị thay đổi, như vậy ngoài việc đưa ra các thông tin chi tiết về khách hàng, còn phải đáp ứng các yêu cầu sửa đổi thông tin về khách hàng hoặc bổ sung thông tin về một khách hàng mới vào danh sách khách hàng của cửa hàng. 3. Nhà Cung Cấp Sản Phẩm. Nhà Cung Cấp Sản Phẩm là nơi cung cấp cho cửa hàng các sản phẩm bổ sung cho các sản phẩm đã bị chuyển giao ( bán ) cho khách hàng. Cửa hàng cần phải lưu trữ các thông tin về Nhà Cung Cấp Sản Phẩm. Các thông tin này sẽ được lấy ra trong quá trình lên các đơn đặt hàng, các hoá đơn thanh toán và các Xác nhận đã nhận hàng khi Nhà Cung Cấp chuyển giao hàng. Các thông tin mà cửa hàng cần lưu trữ gồm có: + Tên của Nhà Cung Cấp Sản Phẩm. + Địa chỉ. + Đại diện của Nhà Cung Cấp Sản Phẩm. + Lĩnh vực hoạt động của Nhà cung cấp sản phẩm + Số điện thoại, số Fax. + Số tài khoản. + Ngân hàng + Các ghi chú cần thiết khác về Nhà cung cấp Sản Phẩm Yêu cầu đưa ra các thông tin về Nhà Cung Cấp Sản Phẩm là quá trình đưa ra các thông tin trên. Quản lý thông tin về Nhà Cung Cấp Sản Phẩm không những phải đáp ứng các yêu cầu đòi hỏi thông tin về Nhà Cung Cấp Sản Phẩm mà còn đáp ứng cả công việc bổ sung, thay thế các thông tin về Nhà Cung Cấp Sản Phẩm. 4. Nhân viên. Nhân viên, là những người lập nên các chứng từ : + Báo giá sản phẩm + Các hoá đơn thanh toán + Các xác nhận chuyển giao hàng + Các hóa đơn xuất ,nhập kho + Các báo cáo Quản lý đối tượng Nhân Viên đòi hỏi phải đưa ra được các thông tin cụ thể của mỗi nhân viên, khi nảy sinh các yêu cầu cần có sự xác minh, phân công công việc..., các yêu cầu này cần một số thông tin về bản thân của Nhân Viên. Các thông tin về nhân viên cần lưu trữ gồm: + Họ và Tên của Nhân Viên. + Địa chỉ, liên hệ (nơi ở hiện nay) + Địa chỉ thường trú. + Số chứng minh thư + Giới tính + Ngày sinh + Số điện thoại. + Chức vụ công tác. + Tên đơn vị quản lý Nhân viên + Các ghi chú khác về Nhân Viên. - Trình độ học vấn - Chuyên môn - Quá trình công tác . . . . . . . . Các thông tin về Nhân Viên cũng có thể bị thay đổi, hoặc thông tin về Nhân viên nào đó không còn cần thiết ( chẳng hạn như đã thôi việc) thì Cửa hàng sẽ tiến hành bổ sung thông tin về Nhân viên đó, hoặc loại bỏ, hoặc cũng có thể đưa vào danh sách Nhân Viên của cửa hàng các thông tin về một Nhân Viên mới.... Kết xuất thông tin về đối tượng này là việc đưa ra các thông tin chi tiết về mỗi Nhân viên cụ thể khi có yêu cầu. 5. Kho Hàng Kho hàng là nơi lưu trữ hàng hóa sản phẩm dự trữ của Cửa hàng Các thông tin về Kho Hàng bao gồm: + Tên gọi của Kho Hàng + Địa chỉ của Kho Hàng + Người quản lý Kho Hàng + Các thông tin phụ khác mô tả Kho Hàng - Chiều dài - Rộng - Diện Tích. . . . . . . . .. . . . .. Khi cần có thể thực hiện các yêu cầu đưa vào các thông tin mới về một Kho Hàng nào đó , hoặc bổ sung vào trong Danh Sách Kho Hàng tên và các thông tin về một Kho Hàng mới. 6. Các loại chứng từ Từ quy trình kinh doanh đã nêu, có các loại chứng từ sau: 6.1. Báo giá Sản Phẩm Khi có yêu cầu của khách hàng, cần biết thông tin về giá bán của một số sản phẩm, cửa hàng đáp ứng yêu cầu đó bằng việc gửi các báo giá sản phẩm cho họ. Trong cửa hàng tồn tại hai loại báo giá: - Báo giá của Nhà Cung Cấp Sản Phẩm. Lúc này cửa hàng có vai trò là Khách hàng của Nhà Cung Cấp Sản Phẩm, các Báo giá sản phẩm được gửi đến theo yêu cầu của Cửa hàng, nội dung của các báo giá là thông tin về giá của những Sản phẩm cụ thể nào đó ( các Sản phẩm mà Khách Hàng yêu cầu cho biết giá ). - Báo giá của Cửa hàng cho Khách hàng. Khách hàng cũng có yêu cầu biết giá bán của các Sản phẩm mà mình sắp mua. Khách hàng sẽ yêu cầu Cửa hàng gửi đến các báo giá sản phẩm. Cửa hàng sau khi tiếp nhận các báo giá sản phẩm của Nhà Cung Cấp Sản Phẩm sẽ tiến hành làm các báo giá sản phẩm gửi tới các khách hàng có yêu cầu: * Đặc điểm yêu cầu của các loại báo giá + Các báo giá chỉ có hiệu lực trong một thời gian nhất định sau thời gian này có báo giá sẽ được làm lại. + Giữa các báo giá của Nhà Cung Cấp Sản Phẩm gửi tới cửa hàng gửi tới cửa hàng và các báo giá mà Cửa hàng gửi đến khách hàng là khác nhau ( khác nhau về giá của Sản Phẩm ). Do các Báo giá phải phụ thuộc vào các yêu cầu của Khách hàng (sản phẩm nào cần báo giá). + Báo giá Sản Phẩm cũng cần có sự thống nhất, chính xác. Các báo giá được gửi tới cùng một khách hàng trong thời gian các báo giá vẫn còn hiệu lực phải giống nhau về nội dung thông tin của các Sản phẩm báo giá. * Các thông tin mà Báo giá cần chứa là: + Tên khách hàng nhận Báo Giá + Tên Nhà Cung Cấp Sản Phẩm ( nơi gửi Bao Giá ) + Ngày báo giá. + Ngày hết hiệu lực của báo giá . + Hình thức thanh toán. + Điều kiện giao hàng. + Thời gian bảo hành sản phẩm sau khi mua + Tên nhân viên làm báo giá. + Các sản phẩm cụ thể được báo giá. Thông tin ở phần này gồm: - Tên sản phẩm được báo giá. - Số lượng - Giá bán - Thuế sản phẩm. Các thông tin mà báo giá chứa cũng chính là các thông tin cần đưa ra khi có yêu cầu xem báo giá. Các thao tác đối với đối tượng này: - Làm mới một báo giá. - Sửa, bổ sung thông tin. - Xoá các báo giá. 6.2. Các đơn đặt hàng Có hai loại đơn đặt hàng: - Đơn đặt hàng của Cửa hàng gửi tới Nhà Cung Cấp Sản Phẩm. Chúng là các đơn đặt mua hàng của Cửa hàng, nội dung của các đơn đặt mua hàng này là các sản phẩm theo yêu cầu cần mua của Cửa hàng. - Đơn đặt hàng của Khách hàng gửi tới Cửa hàng. Nội dung của đơn đặt hàng là các sản phẩm mà khách hàng cần mua. Các đơn đặt hàng sẽ là các chứng từ có liên quan đến việc xác nhận hàng hoá chuyển giao. Khách hàng sẽ xác nhận hàng hoá theo một bản sao của đơn đặt hàng mà trước đó đã được gửi tới Nhà Cung Cấp Sản Phẩm. Nội dung thông tin giữa đơn đặt hàng và xác nhận đã nhận hàng hoá có thể khác nhau. Sự sai khác phát sinh trong khâu chuyên chở hàng hoá ( hàng hóa có thể bị hỏng, vỡ, mất..). Các thông tin mà một Đơn Đặt Hàng chứa sẽ là: + Tên khách hàng + Tên Nhà Cung Cấp Sản Phẩm + Địa chỉ chuyển hàng đến + Ngày đặt hàng + Ngày giao hàng (đòi hỏi chuyển hàng) + Tên các loại sản phẩm + Số lượng từng loại Sản phẩm đặt mua. + Giá sản phẩm. + Thuế VAT đối với từng loại Sản phẩm + Tổng số tiền của Đơn đặt hàng. + Tên nhân viên làm Đơn đặt hàng( Nhân viên của Cửa hàng). + Ghi chú đơn đặt hàng ( lưu trữ các thông tin phụ về đơn đặt hàng ) Các thông tin này cũng là các thông tin cần đưa ra khi có yêu cầu thông tin về một đơn đặt hàng nào đó. 6.3. Các hoá đơn thanh toán. Trước khi hàng hoá được tiến hành chuyên chở, chuyển giao cho khách hàng. Nhà Cung Cấp Sản Phẩm sẽ phải làm các hoá đơn thanh toán. Hoá đơn thanh toán xác nhận thực tế số lượng Sản phẩm sẽ được chuyên chở. Sản phẩm được chuyển cho Khách hàng theo một đơn Đặt hàng nào đó, hoặc có Hóa đơn thanh toán nội bộ không theo một đơn hàng nào . Hóa đơn thanh toán trong cửa hàng tồn tại hai loại: + Hóa đơn thanh toán giữa Cửa hàng với Nhà cung cấp sản phẩm, nó xác nhận từng loại Sản Phẩm được mua về. + Hóa đơn thanh toán giữa Cửa hàng với Nhà cung cấp sản phẩm, nó xác nhận từng loại Sản Phẩm được mua về. Các thông tin mà Hoá đơn thanh toán lưu trữ là: + Tên khách hàng. + Địa chỉ khách hàng. + Tên Nhà Cung Cấp Sản Phẩm + Địa chỉ liên hệ với nhà cung cấp + Tên người nhận hàng + Tên người giao hàng + Ngày làm hóa đơn thanh toán + Chi tiết về các sản phẩm, nội dung gồm có - Tên sản phẩm - Số lượng - Giá - Thuế VAT - Đơn vị tính + Tổng số tiền thanh toán. + Chiết khấu + Nhân viên làm hoá đơn thanh toán. + Các ghi chú cần thiết ( các thông tin phụ về hóa đơn thanh toán ) Thông tin cần kết xuất ra cũng chính là nội dung thông tin mà hoá đơn thanh toán lưu trữ. Do số lượng các hóa đơn thanh toán là rât nhiều do vậy có thể đưa vào một số tiêu chí để giới hạn số lượng các hoá đơn thanh toán để có thể dễ dàng đưa ra một hoá đơn cần thiết. 6.4. Các xác nhận chuyển giao sản phẩm Sau khi làm các Hoá đơn thanh toán, hàng hoá sẽ được chuyển tới Khách hàng nhờ các Nhân viên của Nhà cung cấp. Trong quá trình chuyên chở số lượng Sản phẩm được chuyển đến tay Khách hàng có thể khác với số lượng sản phẩm thanh toán (do sản phẩm có thể hỏng, vỡ, mất..). Khách hàng cần xác nhận lại thực tế số lượng sản phẩm nhận được để làm cơ sở cho việc thanh toán tiền với Nhà Cung Cấp Sản Phẩm, chính điều này đã làm xuất hiện một chứng từ gọi là chứng từ Xác nhận đã nhận hàng. Xác nhận giao hàng ( đã nhận hàng ) dựa trên cơ sở một bản sao của đơn đặt hàng mà khách hàng đã gửi tới Nhà Cung Cấp Sản Phẩm. Số lượng sản phẩm theo yêu cầu trong đơn đặt hàng và số lượng sản phẩm nhận được sau khi chuyển giao sản phẩm ( trong chứng từ xác nhận nhận hàng ) có thể khác nhau. Cửa hàng phải quản lý 2 loại xác nhận: + Xác nhận của Cửa hàng với tư cách là Khách hàng, xác nhận các sản phẩmchuyển đến từ Nhà cung cấp sản phẩm. + Xác nhận của Khách hàng đối với các sản phẩm do Nhân viên của Cửa hàng chuyên chở đến (Cửa hàng đóng vai trò là Nhà cung cấp sản phẩm). Nội dung của mỗi Xác nhận gồm có: + Tên khách hàng: Khách hàng nhận sản phẩm theo yêu cầu đặt hàng + Tên người nhận hàng + Tên Nhà Cung Cấp: Nhà cung cấp chuyển sản phẩm đến theo đặt hàng + Tên người giao hàng + Tên nhân viên làm Xác nhận nhận hàng + Ngày Xác nhận được lập. + Chi tiết hàng hoá xác nhận đã nhận được - Tên sản phẩm. - Giá - Số lượng - Thuế VAT cho mỗi loại sản phẩm + Tổng số tiền phải trả cho người cung cấp + Chiết khấu + Các ghi chú cần thiết ( các ghi chú cần thiết về Xác nhận) Nội dung của Xác nhận cũng là các thông tin của mỗi Xác Nhận cần đưa ra khi có yêu cầu xem một xác nhận đã nhận hàng. 6.5. Các hóa đơn Xuất kho Xuất kho khi có một yêu cầu cần có một lượng hàng hóa để chuyển giao cho Khách hàng, nhưng cũng có thể chỉ là lưu chuyểu hàng hóa giữa các kho trong cửa hàng. Bên cạnh các hóa đơn thanh toán còn có các hóa đơn Xuất kho, hóa đơn xuất kho làm giảm lượng hàng hóa trong kho. Nội dung của các Hóa đơn xuất kho gồm: + Thông tin về kho hàng nơi thực hiện xuất kho, xuất tại kho hàng nào + Ngày thực hiện xuất kho + Tên của người nhận hàng + Xuất kho cho đối tượng nào, khách hàng là ai ? + Chi tiết các thông tin về San Phẩm Xuất kho ` - Tên gọi của Sản Phẩm - Giá bán - Số lượng - Thuế VAT . . . . . . . + Tổng giá trị hàng hóa xuất kho Các thông tin của mỗi hóa đơn xuất kho cũng chính là các thông tin mà người sử dụng cần biết, yêu cầu. 6.6. Các hóa đơn Nhập kho Thông tin cần đưa ra trên một hóa đơn nhập kho là: + Thông tin về kho hàng nơi thực hiện nhập kho, nhập sản phẩm vào kho nào ? + Ngày thực hiện nhập kho + Tên của người giao hàng + Tên nhà cung cấp + Chi tiết các thông tin về Sản Phẩm Nhập kho ` - Tên gọi của Sản Phẩm - Giá bán - Số lượng . . . . . . . . + Tổng giá trị nhập kho 6.7. Các báo cáo Các báo cáo gồm có: - Báo cáo Xuất - Nhập - Tồn hàng hoá trong cửa hàng trong một thời gian nào đó. Nội dung báo cáo gồm có: + Tên sản phẩm + Số lượng Nhập vào + Số lượng Xuất đi + Số lượng tồn đọng trong cửa hàng + Giá trị xuất, nhập, tồn sản phẩm - Báo cáo Tồn kho: Các sản phẩm còn lại trong kho, nội dung của báo cáo này gồm: + Tên sản phẩm + Số lượng Tồn kho + Doanh số Tồn. - Các báo cáo bán hàng: Báo cáo bán hàng tổng kết tình hình của cửa hàng trong một khoảng thời gian nào đó. Nội dung báo cáo gồm: + Tên sản phẩm + Số lượng + Đơn vị tính + Tiền vốn + Doanh số + Lãi gộp + Các tỷ số Lãi gộp/Doanh số (%) + Lãi gộp / Vốn (%) - Bản kê hoá đơn bán hàng ( hoá đơn thanh toán): Đây là một bảng ghi lại các hoá đơn thanh toán trong một khoảng thời gian nào đó. Nội dung gồm có: + Ngày đầu + Ngày cuối + Tên khách hàng + Tên nhà cung cấp + Tên sản phẩm + Số lượng sản phẩm bán + Giá mua + Giá bán + Tiền vốn + Doanh thu + Tổng cộng của báo cáo bán hàng về doanh thu - Bảng kê hoá đơn mua hàng Bảng tổng kết của các Xác nhận mua hàng trong một khoảng thời gian nào đó. Nội dung bảng tổng kết gồm: + Ngày đầu + Ngày cuối + Tên Khách hàng + Tên Nhà Cung Cấp Sản Phẩm + Số lượng sản phẩm mua vào + Tên sản phẩm mua vào + Giá mua của mỗi sản phẩm + Tổng số tiền phải trả cho mỗi loại sản phẩm. + Tổng số tiền cho cả bảng sản phẩm mua vào - Bảng kê chứng từ mua vào. Nội dung: + Tên Nhà Cung Cấp. + Tên Khách hàng + Mã chứng từ ( xác nhận ) + Thuế VAT đầu vào + Ghi chú về các chứng từ - Bảng kê chứng từ bán ra + Mã chứng từ(Mã hoá đơn thanh toán) + Tên khách hàng + Doanh số bán + Thuế VAT + Các ghi chú cần thiết + Giá trị tổng cộng của Doanh số và Thuế VAT - Kết quả hoạt động kinh doanh. Cho kết quả kinh doanh của cửa hàng. Tổng kết doanh thu kinh doanh của cửa hàng theo quý. Nội dung gồm: + Tổng Vốn + Tổng Doanh thu bán ra + Lãi trong quý. Chương II: Thiết kế - Tổ chức chương trình I. Chức năng của chương trình 1. Sơ đồ chức năng Từ yêu cầu của bài toán đặt ra. Đáp ứng các yêu cầu về quản lý các đối tượng, các thông tin kết xuất của từng đối tượng. Thiết kế một hệ thống có các chức năng: Sơ đồ chức năng của hệ thống ( Trang bên ) 2. Mô tả chi tiết các chức năng 2.1. Hệ thống Hệ thống bao gồm các chức năng sau: a. Khách hàng Đây là chức năng của hệ thống để quản lý đối tượng khách hàng. ở chức năng này người sử dụng có thể lấy thông tin chi tiết về bất cứ một khách hàng nào trong danh sách khách hàng. Các thông tin về khách hàng được đưa ra là các thông tin đã phân tích ở phần trên về đối tượng này. Do các thông tin về khách hàng có thể bị biến đổi, sai khác nên trong phần chức năng này người sử dụng cũng có thê thực hiện các thao tác: - Bổ xung vào danh sách khách hàng đã có, một khách hàng mới cùng với các thông tin mô tả chi tiết về khách hàng đó - Sửa thông tin, cập nhật thông tin về một khách hàng bất kỳ - Xoá trong danh sách khách hàng, một khách hàng đã lựa chọn - Có thể tổ chức tìm kiếm khách hàng theo những tiêu chuẩn đưa vào như: + Tên + Địa chỉ + Những khách hàng có tài khoản ở ngân hàng nào? b. Nhà Cung Cấp Chức năng này làm nhiệm vụ quản lý các thông tin về Nhà Cung Cấp Sản Phẩm. Cũng như công việc quản lý đối tượng khách hàng người sử dụng có thể lấy thông tin chi tiết của bất kỳ một Nhà Cung Cấp Sản Phẩm nào trong danh sách các Nhà Cung Cấp Sản Phẩm cho cửa hàng. Các thông tin được đưa ra về Nhà Cung Cấp là các thông tin đã được phân tích trong phần I về đối tượng này. Các thông tin về Nhà Cung Cấp Sản Phẩm cũng có thể bị thay đổi (do các điều kiện khách quan đem lại như: chuyển địa chỉ,..) cho nên trong phần chức năng này cũng cho phép người sử dụng tiến hành các thao tác: - Cập nhật các thông tin về một Nhà Cung Cấp bất kỳ đã được đưa vào trong danh sách các Nhà Cung Cấp Sản Phẩm cho cửa hàng. Hình 1 Sơ đồ chức năng của chương trình - Bổ sung vào danh sách các Nhà Cung Cấp Sản Phẩm một Nhà Cung Cấp mới cùng với các thông tin chi tiết về Nhà Cung Cấp đó. - Xoá tên một Nhà Cung Cấp Sản Phẩm trong danh sách các Nhà Cung Cấp Sản Phẩm. - Tổ chức lọc ra một danh sách các Nhà Cung Cấp Sản Phẩm theo một yêu cầu định trước. Cụ thể như theo các tiêu chí: + Địa chỉ + Lĩnh vực kinh doanh. + Có tài khoản ở trong một Ngân hàng nào đó? c. Nhân viên Chức năng này quản lý đối tượng Nhân Viên trong cửa hàng. Khi cần, người sử dụng có thể tổ chức tìm kiếm và đưa ra các thông tin chi tiết (như đã phân tích các thông tin của đối tượng này ở phần I) về một người nhân viên bất kỳ nào trong danh sách các nhân viên. Ngoài thao tác đó, chức năng này còn cung cấp các thao tác: - Bổ xung vào danh sách Nhân Viên của cửa hàng một tên Nhân Viên mới kèm theo các thông tin mô tả cần quản lý về nhân viên đó (Trong trường hợp lấy vào thêm nhân viên mới). - Cập nhật các thông tin về một nhân viên bất kỳ trong danh sách các nhân viên. - Xoá tên một nhân viên trong danh sách nhân viên (nhân viên này thôi việc ...), loại bỏ các thông tin về nhân viên đó. d. Sản phẩm Đối tượng Sản Phẩm được quản lý trong phần chức năng này. Các sản phẩm sẽ được đưa ra theo từng nhóm do người sử dụng lựa chọn. ở mỗi nhóm sản phẩm là danh sách các Sản Phẩm thuộc nhóm đó. Trong chức năng này người sử dụng có thể thực hiện các thao tác: - Tìm kiếm, đưa ra thông tin mô tả chi tiết, số lượng của một sản phẩm bất kỳ trong danh sách sản phẩm tồn tại. - Bổ xung vào danh sách sản phẩm, một sản phẩm mới cùng với các thông tin mô tả chi tiết, số lượng, giá, đơn vị tính,. . . - Xoá tên một sản phẩm và các thông tin liên quan đến sản phẩm đó Trong phần bổ sung và cập nhật các thông tin về một sản phẩm thì thực hiện đồng thời việc cập nhật thông tin về Sản phẩm e. Ngân hàng Đối tượng Ngân hàng được quản lý ở phần chức năng này. Tại chức năng này người sử dụng sẽ lấy được các thông tin về một Ngân hàng bất kỳ nằm trong danh sách các Ngân hàng đã được đưa vào trước đó. Ngoài ra chức năng quản lý đối tượng này còn cung cấp cho người sử dụng các thao tác: - Bổ sung vào danh sách các Ngân hàng một tên Ngân hàng mới chưa có, cùng với các thông tin về các Ngân hàng này. - Cập nhật thông tin về các Ngân hàng. Các thông tin cụ thể như địa chỉ, số điện thoại, số Fax, các ghi chú phụ khác. . . - Xoá tên của một Ngân hàng nếu thấy việc lưu trữ các thông tin về Ngân hàng đó là không còn cần thiết. g. Kho hàng Chức năng này thực hiện công việc quan lý các thông tin về các Kho hàng Người sử dụng có thể thực hiện các thao tác: - Xem các thông tin về các kho hàng, cập nhật các thông tin đối với các Kho hàng đã tồn tại - Bổ sung vào danh sách tên các Kho hàng một tên kho hàng mới cùng các thông tin về kho hàng mới đó. - Xóa các tên kho hàng đã không còn tồn tại. 2.2. Danh mục Các danh mục được đưa vào để quản lý các đối tượng được thực hiện dễ dàng hơn. Danh mục gồm có: - Bảng danh mục tên của các công việc - Bảng danh mục tên của các tỉnh thành - Bảng danh mục tên của lĩnh vực hoạt động kinh doanh. - Bảng danh mục tên của các bộ phận, phòng ban, đơn vị quản lý - Bảng danh mục nhóm các sản phẩm(tên nhóm sản phẩm) Công việc quản lý các danh mục được thực hiện ở phần này, nó cho phép làm các thao tác sau: - Xem một danh mục trong bảng danh mục, có thể sửa chữa. - Xoá một danh mục trong một bảng các danh mục nào đó. - Bổ sung vào trong một bảng danh mục đã có một danh mục mới. 2.3. Giao dịch Đây chính là phần cho phép thực hiện chức năng, quá trình nhập, xuất, trao đổi hàng hoá giữa Cửa hàng với Nhà cung cấp sản phẩm và giữa Cửa hàng với các Khách hàng. Trong cửa hàng sự giao dịch theo 2 chiều: - Chiều đến ( giao dịch đến ): là các giao dịch được thực hiện giữa Nhà Cung Cấp Sản Phẩm với cửa hàng. - Chiều đi ( giao dịch đi ): Các giao dịch được thực hiện giữa cửa hàng và các khách hàng. ở mỗi chiều giao dịch đều có các chức năng sau: a. Báo giá sản phẩm: + ở chiều giao dịch đến thì chức năng này làm nhiệm vụ quản lý các Báo giá sản phẩm do Nhà cung cấp sản phẩm gửi đến. + ở chiều giao dịch đi, chức năng này quản lý các Báo giá sản phẩm do Cửa hàng tạo ra được gửi đi cho các Khách hàng có yêu cầu. ở mỗi chiều của giao dịch, chức năng báo giá cung cấp các thao tác sau: - Nhập mới và lưu trữ thông tin về một báo giá do Nhà cung cấp sản phẩm gửi tới hoặc tiến hành lập ra các báo giá mới gửi cho các khách hàng có yêu cầu. Để thoả mãn yêu cầu, đặc điểm của báo giá, thì trước hết khi tiến hành làm thao tác này, báo giá gần nhất trước đó của Nhà Cung Cấp Sản Phẩm hoặc báo giá cho khách hàng sẽ được đưa ra, nhằm loại bỏ trường hợp: báo sai, báo thừa. . . - Cập nhật sửa chữa thông tin của Báo giá ở cả 2 chiều. - Tìm kiếm một Báo giá nào đó theo yêu cầu được đưa vào như sau: + Ngày báo giá. + Báo giá đã hết hiệu lực hay chưa hết hiệu lực + Tên Nhà Cung Cấp + Tên khách hàng. - Xoá, loại bỏ các báo giá không còn giá trị, không cần thiết đến nữa. b. Đặt hàng Đặt hàng, chức năng thực hiện các yêu cầu làm đơn đặt hàng của khách hàng gửi tới Nhà cung cấp sản phẩm. Có 2 chiều đơn đặt hàng: - Đơn đặt hàng của Cửa hàng gửi tới Nhà cung cấp sản phẩm - Đơn đặt hàng gửi tới Cửa hàng của Khách hàng Chức năng Đặt hàng cho phép thực hiện các thao tác sau (trên cả 2 chiều đơn đặt hàng) + Cập nhật, sửa chữa thông tin, nội dung của một Đơn đặt hàng bất kỳ nào đó trong một danh sách các Đơn đặt hàng. + Thực hiện tìm kiếm, xem nội dung của một đơn đặt hàng nào đó trong các đơn đặt hàng. + Thêm mới một Đơn đặt hàng. + Xoá các đơn đặt hàng nếu thấy không còn cần thiết. c. Các hoá đơn thanh toán. Hoá đơn thanh toán được làm ở chức năng này. Hoá đơn thanh toán xác nhận lượng hàng hoá được nhập về hay xuất đi. - ở chiều đến hoá đơn thanh toán của cửa hàng chỉ là một bản sao của nhà cung cấp gửi đến. Nó chưa xác nhận được thực tế số lượng hàng chuyển về. Số lượng thực tế là số lượng được ghi trên các xác nhận nhận hàng của cửa hàng. - ở chiều đi (giao dịch đi): Hoá đơn thanh toán do người bán(nhân viên) của cửa hàng thiết lập. Hoá đơn thanh toán ở chiều đi xác nhận số lượng hàng hoá được chuyên chở đến theo đơn đặt hàng của khách hàng. Khi hoá đơn thanh toán được lập ra thì số lượng của các sản phẩm trên khoản mục kho sẽ giảm đúng bằng số lượng ghi trong hoá đơn thanh toán. Chức năng này cho phép người sử dụng thực hiện các công việc: - Làm một hoá đơn thanh toán mới(hoặc đưa vào một hoá đơn thanh toán mới do người bán gửi tới.) - Cập nhật các thông tin trên các hoá đơn trong danh sách các hoá đơn thanh toán đã có. - Xoá các hoá đơn thanh toán. d. Xác nhận giao hàng Chức năng này quản lý các chứng từ Xác nhận giao hàng giữa Nhà cung cấp sản phẩm với Cửa hàng và giữa Cửa hàng với Khách hàng. Xác nhận giao hàng giữa Nhà cung cấp sản phẩm và Cửa hàng là xác nhận lượng hàng hoá ( số lượng sản phẩm ) thực tế mà Cửa hàng nhận được do Nhà cung cấp chuyển tới. Nó làm tăng số lượng hàng hoá trong kho dự trữ của cửa hàng. Chức năng này cho phép người sử dụng thực hiện các thao tác: - Thêm mới một xác nhận hàng. - Sửa chữa nội dung của bất kỳ một xác nhận hàng nào có trong danh sách các xác nhận nhận hàng. - Tìm kiếm một xác nhận nhận hàng theo một tiêu chí cho trước. + Ngày + Theo khách hàng + Nhà Cung Cấp Sản Phẩm. + Theo số tiền xác nhận - Xoá các xác nhận hàng đã không còn có ích. e. Xuất kho Các thao tác có thể thực hiên trên chức năng này: + Thiết lập các hóa đơn xuất kho (tạo mới một hóa đơn xuất kho) + Tìm kiếm và thực hiện sửa chữa các thông tin trên các hóa đơn xuất kho đã tồn tại . + Xóa các hóa đơn không còn cần thiết đến nữa. g. Nhập kho Các thao tác có thể thực hiên trên chức năng này: + Thiết lập các hóa đơn nhập kho (tạo mới một hóa đơn nhập kho) + Tìm kiếm và thực hiện sửa chữa các thông tin trên các hóa đơn nhập kho đã tồn tại . + Xóa các hóa đơn không còn cần thiết đến nữa. 2.4. Báo cáo Chức năng này đơn thuần chỉ là đưa ra các báo cáo, bảng thống kê tình hình kinh doanh của cửa hàng. Nguồn dữ liệu của các báo cáo được lấy từ : + Các chứng từ xác nhận + Hoá đơn thanh toán + Các đơn đặt hàng. + Các hóa đơn xuất kho Người sử dụng sẽ đưa vào khoảng thời gian cần thống kê và đầu ra sẽ là báo cáo, người sử dụng có thể xem trước khi in. Báo cáo được làm có thể nhiều lần nhưng không cần được lưu trữ nội dung của các báo cáo, bảng thống kê. II. Sơ đồ dòng dữ liệu Sơ đồ dòng dữ liệu (Hình 2) III. Phân tích mô hình thực thể. Mô hình thực thể (Hình 2) Mô hình thực thể và quan hệ giữa các thực thể (Hình 3) Mỗi kiểu thực thể được mô tả dưới dạng một bảng logic, trong mỗi bảng logic chứa các thuộc tính mô tả kiểu thực thể đó. Để tổng quát cho mô hình các kiểu dữ liệu của mỗi thuộc tính trong bảng logic sẽ được hình thành dưới dạng các kiểu dữ liệu chuẩn của SQL. 1. Kiểu thực thể: Khách hàng Để đáp ứng yêu cầu việc lưu trữ thông tin về khách hàng. Các bảng khách hàng sẽ có cấu trúc như sau: + Mã Khách hàng CHAR(5) NOT NULL + Tên Khách hàng CHAR(40) NOT NULL + Địa chỉ CHAR(60) NOT NULL + Mã Tỉnh Thành CHAR(3) NOT NULL + Điện Thoại CHAR(13) + Số Fax CHAR(13) + Số tài Khoản CHAR(15) NOT NULL + Mã Ngân hàng CHAR(3) NOT NULL + Mã Lĩnh Vực Hoạt Động CHAR(3) NOT NULL + Ghi Chú VARCHAR * Thuộc tính khoá là thuộc tính Mã khách hàng. * Thuộc tính kết nối : + Mã Tỉnh Thành được kết nối sang bảng danh mục các Tỉnh Thành. + Mã Lĩnh Vực Hoạt Động được kết nối sang bảng danh mục các Lĩnh vực Hoạt Động. Mã Ngân hàng được kết nối sang bảng Ngân hàng. * Các thuộc tính còn lại là thuộc tính mô tả của kiểu thực thể này. Hình 2 Sơ đồ dòng dữ liệu Hình 3 Mô hình thực thể của bài toán Hình 4: Mô hình quan hệ giữa các thực thể 2. Kiểu thực thể Nhà Cung Cấp Sản Phẩm Các thuộc tính của kiểu thực thể này gồm có: + Mã Nhà Cung Cấp CHAR(5) NOT NULL + Tên Nhà Cung Cấp CHAR(40) NOT NULL + Địa Chỉ CHAR(60) NOT NULL + Mã Tỉnh Thành CHAR(3) NOT NULL + Điện Thoại CHAR(13) + Số Fax CHAR(13) + Số Tài Khoản CHAR(15) NOT NULL + Mã Ngân hàng CHAR(3) NOT NULL + Mã Lĩnh Vực Hoạt Động CHAR(3) NOT NULL + Ghi Chú VARCHAR * Thuộc tính khoá là thuộc tính Mã Nhà Cung Cấp. * Thuộc tính kết nối: + Mã tỉnh thành được kết nối sang bảng danh mục lên các Tỉnh Thành. + Mã Ngân hàng được kết nối sang bảng Ngân hàng. + Mã Lĩnh Vực Hoạt Động được kết nối sang bảng danh mục tên các lĩnh vực hoạt động * Các thuộc tính còn lại là các thuộc tính mô tả của kiểu thực thể. 3. Kiểu thực thể: Nhân Viên Thông tin về mỗi Nhân Viên được lưu trữ trong bảng Nhân Viên. Bảng Nhân Viên có cấu trúc dữ liệu như sau: + Mã Nhân Viên CHAR(3) NOT NULL + Họ Đệm CHAR(20) NOT NULL + Tên CHAR(8) NOT NULL + Ngày Sinh DATE + Giới Tính CHAR(3) NOT NULL + SốChứng Minh CHAR(15) + Địa Chỉ CHAR(60) NOT NULL + Mã Tỉnh Thành CHAR(3) NOT NULL + Nguyên Quán CHHAR(60) + Mã Tỉnh Thành Nguyên quán CHAR(3) NOT NULL + Mã Công Việc CHAR(3) NOT NULL + Mã phòng ban CHAR(3) NOT NULL + Điện Thoại CHAR(13) + Ghi Chú VARCHAR * Thuộc tính khoá: Thuộc tính Mã Nhân Viên * Thuộc tính kết nối: + Mã Tỉnh Thành, Mã Tỉnh Thành Nguyên Quán được kết nối sang dạng bảng danh mục tên các Tỉnh Thành. + Mã Công Việc được kết nối sang bảng danh mục Các công việc. Nó cho biết chức vụ của nhân viên. + Mã Phòng Ban được kết nối sang bảng danh mục tên các phòng ban. Nó xác định xem Nhân viên thuộc đơn vị nào quản lý. * Các thuộc tính mô tả gồm: + Họ Đệm Họ đệm của nhân viên + Tên Tên gọi + Ngày Sinh + Giới Tính + Địa Chỉ + Điện Thoại + Nguyên quán Địa chỉ thường trú của Nhân Viên + Ghi Chú Các ghi chú cần thiết về bản thân Nhân Viên 4. Kiểu thực thể: Sản Phẩm Mỗi thực thể thuộc kiểu này sẽ chứa các thông tin mô tả về một sản phẩm. Cấu trúc của kiểu thực thể này gồm có các thuộc tính: + Mã Nhóm Sản Phẩm CHAR(3) NOT NULL + Mã Sản Phẩm CHAR(10) NOT NULL + Tên Sản Phẩm CHAR(40) NOT NULL + Đơn Vị Giá CHAR(3) NOT NULL + Đơn Vị Tính CHAR(10) NOT NULL + Hãng Sản Xuất CHAR(40) + Ghi Chú VARCHAR * Thuộc tính khoá: là tổ hợp của 2 thuộc tính (Mã Nhóm Sản Phẩm, Mã Sản Phẩm) * Thuộc tính Mã Nhóm Sản Phẩm cũng là thuộc tính kết nối sang bảng danh mục tên các nhóm sản phẩm (hay nhóm các mặt hàng). * Thuộc tính : + Tên Sản Phẩm + Đơn Vị Giá /* đơn vị giá tính của Sản phẩm VND,USD*/ + Đơn Vị Tính /*Cái ,chiếc, hộp. . . .*/ + Hãng Sản Xuất + Ghi Chú là các thuộc tính mô tả của kiểu thực thể này. 5. Kiểu thực thể: Kho Hàng Kho là nơi dự trữ hàng hoá, chứa số lượng các sản phẩm. Các thuộc tính của kiểu thực thể này gồm có : + Mã Kho Hàng CHAR(3) NOT NULL + Tên Kho Hàng CHAR(40) NOT NULL + Địa Chỉ CHAR(60) NOT NULL + Mã Tỉnh Thành CHAR(3) NOT NULL + Mã Nhân viên quản lý kho CHAR(3) NOT NULL + Mô tả kho VARCHAR 6. Kiểu thực thể: Ngân hàng Bảng này lưu trữ thông tin của các Ngân hàng. Mỗi một Ngân hàng sẽ có kiểu thực thể là Kiểu Ngân Hàng có cấu trúc như sau: + Mã Ngân Hàng CHAR(3) NOT NULL + Tên Ngân Hang CHAR(40) NOT NULL + Địa Chỉ CHAR(40) NOT NULL + Mã Tỉnh Thành CHAR(3) NOT NULL + Điện Thoại CHAR(13) + Số Fax CHAR(13) + Ghi Chú VARCHAR * Thuộc tính khoá: Mã Ngân Hàng * Thuộc tính kết nối: Mã Tỉnh Thành được kết nối sang bảng danh mục tên các tỉnh thành. * Các thuộc tính thuộc tính mô tả: - Tên ngân hàng, Địa chỉ - Số điện thoại, Số Fax - Ghi chú 7. Kiểu thực thể: Báo Giá Kiểu này cho phép lưu trữ các thông tin về Báo giá Các thuộc tính gồm có: + Mã Báo Giá CHAR(12) NOT NULL + Mã Khách hàng CHAR(5) NOT NULL + Mã Nhà cungcấp CHAR(5) NOT NULL + Ngày Báo Giá DATE NOT NULL + Hiệu lực đến ngày DATE NOT NULL + Mã Nhân Viên CHAR(3) NOT NULL + Số Lần Báo Giá SMALLINT + Thời gian bảo hành CHAR(60) + Điều kiện giao hàng CHAR(60) + Hình thực thanh toán CHAR(60) + Ghi Chú VARCHAR * Thuộc tính khoá: Mã Báo Giá * Mã Khách Hàng, Mã Nhân Viên là các thuộc tính kết nối sang các kiểu thực thể: Khách Hàng, Nhân Viên. * Các thuộc tính: + Ngày Báo Giá : Ngày bắt đầu báo giá + Hiệu lực đến Ngày : Ngày hết hiệu lực + Số Lần Báo Giá + Thời gian bảo hành + Điều kiện giao hàng + Hình thực thanh toán + Ghi Chú : Chứa các thông tin khác là thuộc tính mô tả cho mỗi thực thể kiểu Báo Giá. 8. Kiểu thực thể: Chi Tiết Báo Giá. Các thuộc tính: + Mã Báo Giá CHAR(12) NOT NULL + Mã Sản Phẩm CHAR(10) NOT NULL + Giá Bán DECIMAL(10,2) NOT NULL + Số Lượng SMALLINT NOT NULL + Thuế VAT SMALLINT NOT NULL * Thuộc tính khoá: Tổ hợp của hai thuộc tính (Mã Báo Giá, Mã Sản Phẩm) * Thuộc tính kết nối: Mã Báo Giá được kết nối sang bảng các báo Giá Mã Sản Phẩm được kết nối sang bảng Sản Phẩm. * Các thuộc tính còn lại là thuộc tính mô tả. 9. Kiểu thực thể: Đơn Đặt Hàng Cấu trúc của kiểu thực thể này gồm có các thuộc tính: + Mã Đơn Đặt Hàng CHAR(12) NOT NULL + Mã Nhà Cung Cấp CHAR(5) NOT NULL + Mã Khách Hàng CHAR(5) NOT NULL + Mã Nhân Viên CHAR(3) NOT NULL + Ngày Đặt Hàng DATE NOT NULL + Ngày Giao Hàng DATE NOT NULL + Địa chỉ chuyển hàng đến CHAR(60) NOT NULL + Mã Tỉnh Thành Chuyển hàng CHAR(3) NOT NULL + Cước chuyên chở DECIMAL(10,2) + Tổng Giá Trị Tiền Đặt Hàng DECIMAL10,2) + Ghi chú CHAR(100) * Thuộc tính khoá: Mã Đơn Đặt Hàng * Thuộc tính kết nối: - Mã Nhà Cung Cấp kết nối sang bảng Nhà Cung Cấp. - Mã Nhân Viên kết nối sang bảng Nhân Viên - Mã Khách Hàng kết nối sang bảng khách hàng - Mã Tỉnh Thành Chuyển Hàng được kết nối sang bảng danh mục tên các tỉnh thành để lấy tên Tỉnh thành. * Thuộc tính mô tả: + Ngày đặt hàng : Ngày gửi đơn đặt hàng + Ngày giao hàng : Ngày yêu cầu chuyển giaohàng + Địa Chỉ Chuyển hàng đến + Cước chuyên chở : Cước phí vận chuyển hàng + Tổng Giá trị đặt hàng Tổng Giá trị đặt hàng = Tổng Giá Trị Sản Phẩm + Cước chuyên chở. 10. Kiểu thực thể: Chi tiết Đặt Hàng. Cấu trúc của kiểu thực thể này gồm có các thuộc tính: + Mã Đơn Đặt Hàng CHAR(12) NOT NULL + Mã Sản Phẩm CHAR(10) NOT NULL + Giá Sản Phẩm DECIMAL(10,2) NOT NULL + Số Lượng INTEGER NOT NULL + Thuế VAT SMALLINT * Thuộc tính khoá: là tổ hợp của hai thuộc tính Mã Đơn Đặt Hàng, Mã Sản Phẩm * Các thuộc tính mô tả: - Giá Sản Phẩm /*giá bán của Sản phẩm đặt hàng */ - Số lượng /*Số lượng đặt hàng*/ - Thuế VAT / *tính theo %*/ 11. Kiểu thực thể: Hoá đơn thành toán Cấu trúc gồm có các thuộc tính sau: + Mã Hoá Đơn CHAR(12) NOT NULL + Mã Khách Hàng CHAR(5) NOT NULL + Tên Người nhận hàng CHAR(30) NOT NULL + Mã Nhà Cung Cấp CHAR(5) NOT NULL + Tên Người giao hàng CHAR(30) NOT NULL + Mã Nhân Viên CHAR(3) NOT NULL + Ngày Hoá Đơn DATE NOT NULL + Tổng Giá Trị DECIMAL(10,2) NOT NULL + Chiết Khấu SMALLINT + Ghi Chú VARCHAR * Thuộc tính khoá: Mã Hoá Đơn * Thuộc tính kết nối: + Mã Khách hàng + Mã Nhà Cung Cấp + Mã Nhân Viên * Các thuộc tính mô tả: + Tên Người nhận hàng + Tên Người giao hàng + Ngày Hoá Đơn + Tổng Giá Trị /*Tổng giá trị hàng thanh toán*/ + Chiết Khấu /* chiết khấu thanh toán*/ + Ghi Chú /* Các ghi chú cần thiết về hóa đơn thanh toán*/ 12. Kiểu thực thể: Chi Tiết Hoá đơn Thanh Toán Cấu trúc của kiểu này bao gồm các thuộc tính: + Mã Hoá Đơn CHAR(12) NOT NULL + Mã Sản Phẩm CHAR(10) NOT NULL + Giá Sản Phẩm DECIMAL(10,2) NOT NULL + Số Lượng INTEGER NOT NULL + Thuế VAT SMALLINT * Thuộctính khoá: là tổ hợp của hai thuộc tính Mã Hoá Đơn, Mã Sản Phẩm * Thuộc tính kết nối: + Mã Sản Phẩm được kết nối sang bảng Chi tiết Đặt Hàng (do các hoá đơn thanh toán đều dựa trên một đơn đặt mua hàng nào đó). Số lượng Sản Phẩm thanh toán có thể khác với số lượng đặt hàng. 13. Kiểu thực thể: Xác Nhận Nhận Hàng Các thuộc tính gồm có: + Mã Xác Nhận CHAR(12) NOT NULL + Mã Đặt Hàng CHAR(12) NOT NULL + Mã Nhân Viên CHAR(3) NOT NULL + Tên Người Nhận Hàng CHAR(30) NOT NULL + Tên Người Giao Hàng CHAR(30) NOT NULL + Ngày Xác Nhận DATE NOT NULL + Tổng Giá Trị Xác Nhận DECIMAL(10,2) + Ghi Chú VARCHAR * Thuộc tính khoá: Mã Xác Nhận * Thuộc tính kết nối: + Mã Nhân Viên: Nhân viên làm xác nhận nhận hàng, được kết nối sang bảng nhân viên. * Thuộc tính mô tả + Tên Người Nhận Hàng / *tên của người nhận hàng*/ + Tên Người Giao Hàng /*tên nhân viên phụ trách chuyển hàng cho khách hàng*/ + Ngày Xác Nhận /*Ngày làm xác nhận nhận hàng*/ +Tổng Giá Trị Xác Nhận + Ghi Chú 14. Kiểu thực thể: Chi tiết xác nhận Nhận hàng Gồm có các thuộc tính: + Mã Xác Nhận CHAR(12) NOT NULL + Mã Sản Phẩm CHAR(10) NOT NULL + Giá Sản Phẩm DECIMAL(10,2) NOT NULL + Số Lượng INTEGER NOT NULL + Thuế VAT SMALLINT * Thuộc tính khoá: ( Mã Xác Nhận, Mã Sản Phẩm ) * Thuộc tính kết nối: Mã Sản Phẩm được kết nối sang với Mã Sản Phẩm trong một chi tiết của đơn đặt hàng nào đó. * Các thuộc tính còn lại là thuộc tính mô tả 15. Kiểu thực thể: Hóa Đơn Xuất kho Cấu trúc của kiểu thực thể này gồm có các thuộc tính sau; + Mã Hóa Đơn Xuất kho CHAR(12) NOTNULL + Mã Kho Hàng CHAR(3) NOTNULL + Ngày Xuất Kho DATE NOTNULL + Tên của người nhận hàng CHAR(30) NOTNULL + Mã Khách Hàng CHAR(3) NOTNULL + Ghi Chú /* các ghi chú cần thiết */ VARCHAR * Thuộc tính khóa: Mã hóa Đơn Xuất Kho * Thuộc tính kết nối: - Mã Kho Hàng được kết nối sang bảng Kho Hàng để lấy các thông tin mô tả về Kho Hàng - Mã Khách Hàng được kết nối sang bảng Khách Hàng để lấy thông tin về Khách Hàng. * Thuộc tính mô tả: - Tên người nhận hàng - Ngày Xuất kho - Ghi Chú: Các ghi chú cần thiết về hóa đơn xuất kho 16. Kiểu thực thể: Chi tiết Hóa Đơn Xuất kho Các thuộc tính gồm có: + Mã Hóa Đơn Xuất kho CHAR(12) NOTNULL + Mã Sản Phẩm CHAR(10) NOT NULL + Giá Sản Phẩm DECIMAL(10,2) NOT NULL + Số Lượng INTEGER NOT NULL + Thuế VAT SMALLINT * Thuộc tính khóa: là tổ hợp của hai thuộc tính Mã Hóa Đơn Xuất kho, Mã Sản Phẩm Các sản phẩm xuất kho chỉ giới hạn trong Kho Hàng đã chỉ ra trong hóa đơn. * Thuộc tính kết nối: cũng là hai thuộc tính: + Mã Sản Phẩm: kết nối sang danh sách Sản Phẩm trong Kho Hàng + Mã Hóa Đơn Xuất kho: kết nối với bảng Hóa Đơn Xuất Kho * Các thuộc tính còn lại là thuộc tính mô tả cho kiểu thực thể này. 17. Kiểu thực thể: Hóa Đơn Nhập kho Cấu trúc của kiểu thực thể này gồm có các thuộc tính sau; + Mã Hóa Đơn Nhập kho CHAR(12) NOTNULL + Mã Kho Hàng CHAR(3) NOTNULL + Ngày Nhập Kho DATE NOTNULL + Tên của người giao hàng CHAR(30) NOTNULL + Mã Nhà Cung Cấp CHAR(3) NOTNULL + Ghi Chú /* các ghi chú cần thiết */VARCHAR * Thuộc tính khóa: Mã hóa Đơn Nhập Kho * Thuộc tính kết nối: - Mã Kho Hàng được kết nối sang bảng Kho Hàng để lấy các thông tin mô tả về Kho Hàng - Mã Nhà Cung Cấp được kết nối sang bảng Nhà Cung Cấp để lấy thông tin về Nhà Cung Cấp * Thuộc tính mô tả: - Tên người giao hàng - Ngày Nhập kho - Ghi Chú: Các ghi chú cần thiết về hóa đơn nhập kho 18. Kiểu thực thể: Chi tiết Hóa Đơn Nhập kho Cấu trúc của kiểu thực thể này gồm có các thuộc tính sau; +Mã Hóa Đơn Nhập Kho CHAR(12) NOTNULL + Mã Sản Phẩm CHAR(10) NOT NULL + Giá Sản Phẩm DECIMAL(10,2) NOT NULL + Số Lượng INTEGER NOT NULL + Thuế VAT SMALLINT * Thuộc tính khóa:là tổ hợp của hai thuộc tính Mã Hóa Đơn Nhập Kho, Mã Sản phẩm * Thuộc tính kết nối: cũng là hai thuộc tính + Mã Sản Phẩm: kết nối sang danh sách Sản Phẩm hoặc danh sách Sản phẩm trong một hóa đơn thanh toán, Xác nhận nào đó +Mã Hóa Đơn Nhập Kho: kết nối với bảng Hóa Đơn Nhập Kho * Các thuộc tính còn lại là thuộc tính mô tả cho kiểu thực thể này. Chương III : Công nghệ Sử dụng MicroAccess là một trong các hệ quản trị cơ sở dữ liệu dễ dùng nhất trên thị trường để tạo các áp dụng cơ sở dữ liệu trên môi trường Windows. Phần mềm có nhiều công cụ trợ giúp rất tiện lợi để tạo các ứng dụng trong lĩnh vực quản lý. Do chạy trên môi trường Windows nên Access đã tận dụng được các thế mạnh của Windows như: Tính đa nhiệm, khả năng quản lý bộ nhớ lớn, tính độc lập thiết bị, khả năng xử lý các loại dữ liệu phi văn bản, khả năng tổ chức giao diện chương trình, sự thuận tiện trong việc tổ chức in ấn... Microsoft Access đã dự báo và đưa vào Access một số công cụ hữu hiệu và tiện lợi để tạo ra cơ sở dữ liệu rất mạnh, để tự động sản sinh chương trình cho hầu hết các bài toán thường gặp trong thực tế như trong quản lý, thống kê, kế toán. Với Access người dụng không phải viết từng câu lệnh cụ thể như trong Pasca, C hay Foxpro mà chỉ cần tổ chức dữ liệu và thiết kế các yêu cầu công việc cần giải quyết. I. Giới thiệu cơ sở dữ liệu (CSDL) của Access Một cơ sở dữ liệu là một tập hợp các thông tin liên quan tới một đối tượng cụ thể hoặc một theo một mục đích nào đó. Ví dụ như các thông tin về đặt hàng của khách hàng hoặc lưu trữ các thông tin sưu tầm về âm nhạc. Nếu cơ sở dữ liệu của bạn không được lưu trữ trên máy tính hoặc chỉ một phần của nó được lưu trữ, bạn có thể lưu trữ thông tin theo nhiều cách khác nhau nhưng để có thể lưu trữ được bạn phải tự tổ chức lấy một cách thức lưu trữ dữ liệu sao cho phù hợp nhất. Sử dụng Microsoft Access, bạn có thể quản lý tất cả các thông tin chỉ với một tệp tin cơ sở dữ liệu đơn lẻ. Trong tệp tin cơ sở dữ liệu này thông tin của bạn sẽ được lưu trữ trong các hộp chứa gọi là các bảng. Xem, thêm thông tin mới và cập nhật thông tin trên các bảng được thực hiện một cách trực tiếp trên các mẫu biểu (Forms). Tìm kiếm, lấy các thông tin được thực hiện nhờ các truy vấn (Query) và phân tích in ấn, trình bầy dữ liệu được thực hiện bằng cách tạo ra các báo biểu (Report). - Để lưu trữ thông tin, bạn cần tạo một bảng cho mỗi kiểu thông tin cần lưu trữ.Để thực hiện việc tổ hợp các thông tin trên nhiều bảng lại với nhau bạn cần định nghĩa quan hệ giữa các bảng. - Việc tìm kiếm thông tin và lấy các thông tin theo một đIều kiện cho trước mà bạn đã chỉ rõ, bao gồm các thông tin thuộc nhiều bảng khác nhau được thực hiện nhờ các truy vấn (Query). Một truy vấn có thể cũng thực hiện công việc cập nhật thông tin, xoá các bản ghi dữ liệu hoặc thực hiện các tính toán trên dữ liệu. - Để xem, nhập dữ liệu và thay đổi dữ liệu một cách trực tiếp trong một bảng cần tạo một mẫu biểu (Forms). Khi mở mẫu biểu, Microsoft Access sẽ lấy các dữ liệu trên một hoặc nhiều bảng và hiển thị chúng lên các mẫu biểu theo cách mà bạn đã chọn lúc thiết kế - Report được sử dụng để phân tích, trình bầy in ấn dữ liệu. Ví dụ: Bạn có thể thực hiện việc in một báo biểu trong đó trình bầy một nhóm dữ liệu và thực hiện các phép tính toán trên nhóm dữ liệu đó, hoặc với một Báo biểu khác dùng để in dữ liệu theo các định dạng khác nhau. Để làm việc với các đối tượng trong một cơ sở dữ liệu của Microsoft Access ta sử dụng cửa sổ cơ sở dữ liệu (Database Window ). Hình 5: Cửa sổ Database Window Trên cửa sổ này chứa các đối tượng của Microsoft Access bạn có thể thực hiện sửa chữa các đối tượng có sẵn hoặc tạo mới những đối tượng cần thiết cho cơ sở dữ liệu. II. Giới thiệu công cụ của Access Access đã cung cấp cho ta 6 đối tượng cơ bản là: Bảng(Table), Truy Vấn (Query), Mẫu Biểu (Form), Báo biểu (Report), Macro và Đơn Thể (Module). Sáu đối tượng này có những chức năng khác nhau nhưng chúng lại có mối quan hệ mật thiết với nhau, hỗ trợ lẫn nhau để xây dựng lên một hệ thống hoàn chỉnh, toàn vẹn. 1. Bảng (Table) Bảng là một tập hợp dữ liệu theo một chủ đề nào đó, ví dụ như : tập hợp các thông tin lưu trữ về sản phẩm, khách hàng. . . Sử dụng một bảng (Table) để lưu trữ thông tin cho từng chủ đề, điều này làm cho cơ sở dữ liệu của bạn trở lên hiệu quả hơn, giảm thiểu khả năng mắc lỗi. Bảng dữ liệu được tổ chức dưới dạng các cột (gọi là các trường Fields) và các dòng (gọi là các bản ghi Records). Các trường đều có cùng một kiểu dữ liệu mà nó lưu trữ Mỗi bản ghi trên một bảng chứa các đầy đủ thông tin hoàn chỉnh về một đối tượng. Dưới dạng một bảng tính, bạn có thể thêm, sửa hoặc xem dữ liệu trong bảng Bạn cũng có thể kiểm tra và in dữ liệu trong bảng dữ liệu của bạn,hoặc thực hiện việc lọc sắp xếp dữ liệu, thay đổi cách hiển thị dữ liệu, thay đổi cấu trúc bảng (thêm, xoá các cột (Fields) ...) Trong cửa sổ Database chọn Tabs Table và chọn NEW để tạo một bảng mới hoặc mục DESIGN để thiết kế sửa lại cấu trúc của một bảng đã tồn tại. * Các bước tạo một bảng dữ liệu : + Đưa vào tên một trường hoặc đổi tên một trường (nếu làm việc với các bảng đã có sẵn ) trong cột Field Name Tên trường, gồm một dãy không quá 64 ký tự bao gồm chữ cái, chữ số và cả khoảng trống. + Chọn kiểu dữ liệu tương ứng với trường đó trong cột Data Type Kiểu dữ liệu cho các trường có thể là các kiểu dữ liệu sau: Kiểu Mô tả Kích thước Text Ký tự Dài Ê 255 byte Memo Ký tự Dài Ê 64000 byte Number Số nguyên, thực Dài 1,2,4 hoặc 8 byte Date/Time Ngày, tháng, giờ Dài 8 byte Currency Tiền tệ Dài 8 byte Autonumber Số Dài 8 byte Yes/ No Boolean Dài 1 bit OLE object Đối tượng nhúng kết hình ảnh + Thiết lập các thuộc tính cho trường dữ liệu. Các thuộc tính cho mỗi trường phụ thuộc vào kiểu dữ liệu của trường đó. Các thuộc tính được bổ sung làm tăng hiệu quả khi làm việc trên các trường. + Chọn một khoá cho bảng dữ liệu.Bạn cần sử dụng một tên gọi duy nhất nhằm xác định một bản ghi trong bảng dữ liệu, tên gọi đó chính là khoá. Một khóa có thể là tổ hợp của nhiều trường trên bảng dữ liệu. Các khoá còn được sử dụng để kết nối giữa bản ghi của một bảng này với một bản ghi trên bản khác. Để đặt khoá cho bảng ta làm như sau: - Chọn tên trường muốn làm khoá - Kích chuột vào Primary Key trên thanh menu ToolBar hoặc kích vào biểu tượng chiếc chìa khóa trên dòng các biểu tượng. + Thiết lập quan hệ giữa các bảng Access dùng quan hệ để đảm bảo những ràng buộc toàn vẹn giữa các bảng liên quan trong phép thêm, sửa, xoá mẫu tin. Đặt quan hệ là chỉ định một trường này hay một nhóm trường chứa cùng một giá trị trong các mẫu tin có liên quan (thường đặt quan hệ giữa khoá chính của một bảng với một trường nào đó của bảng khác và các trường này có cùng tên cùng kiểu) * Các loại quan hệ - Mối quan hệ một - đối - một : đòi hỏi giá trị của trường khoá trong chỉ một bản ghi của bảng mới phải so khớp với giá trị tương ứng của trường có quan hệ trong bảng hiện có. Trong trường hợp này, trường khoá trong bảng mới phải là duy nhất - Mối quan hệ nhiều -đối - một : cho phép bảng mới có nhiều giá trị trường khoá tương ứng với chỉ một giá trị trong trường quan hệ của bảng hiện có. Trong trường hợp này, ta có thể có các giá trị trường khoá trùng lặp. Đây là kiểu phổ biến nhất. - Mối quan hệ một -đối - nhiều: đòi hỏi trường khoá chính của bảng mới phải là duy nhất, nhưng các giá trị trong trường khoá của bảng mới có thể so khớp với nhiều mục trong bảng quan trên hệ cơ sở dữ liệu hiện có. Trong trường hợp này,trường quan hệ trong bảng của cơ sở dữ liệu hiện có sẽ có một mối quan hệ nhiều -đối - một với trường khoá chính trong bảng mới. * Cách tạo quan hệ - Trong cửa sổ Database Window chọn Relationships từ menu Tools - Chọn các bảng ,các truy vấn để đưa vào quan hệ - Chọn 1 trường từ bảng chính ( Primary Table ) và kéo sang trường tương ứng của bảng quan hệ, rồi bấm chuột tại Create để tạo quan hệ. Chọn mục Enforce Referential Intergity. Nếu thoả mãn: + Trường của bảng chính là khoá chính + Các trường quan hệ có cùng kiểu dữ liệu + Cả hai bảng trong quan hệ cùng thuộc một CSDL thì Access luôn đảm bảo tính chất: Mỗi bản ghi trong bảng quan hệ phải có một bản ghi tương ứng trong bảng chính. Điều này ảnh hưởng đến các phép thêm và xoá trong bảng quan hệ. Tuỳ chọn Cascade Update và Cascade Delete - Khi đã đánh dấu Enforce Referential Intergity có thể sử dụng thêm các tuỳ chọn sau: + Cascade Update Ralated fields + Cascade Delete Ralated fields với ý nghĩa sau: - Cascade Update: Khi sửa giá trị trường khoá trong bảng chính thì giá trị tương ứng của bản ghi trong trường quan hệ cũng sẽ bị sửa theo. - Cascade Delete: Khi xoá một bản ghi trong bảng chính thì bản ghi tương ứng trong trường quan hệ cũng sẽ bị xoá theo. 2 . Mẫu Biểu ( FORMS ) Mẫu biểu (FORMS ) được sử dụng cho nhiều mục đích khác nhau: + Tạo ra một cách vào dữ liệu cho các bảng dữ liệu + Tạo ra một sự luân chuyển dữ liệu giữa các Mẫu biểu đã mở hoặc giữa các Mẫu biểu và Báo biểu + Tạo cho người sử dụng một hộp thoại để thực hiên nhập dữ liệu và đưa ra các hành động kiểm tra ứng với công việc nhập. Các dữ liệu thể hiện trên Mẫu biểu được lấy dưới dạng các bản ghi trong các bảng dữ liệu, hoặc thông tin thể hiện được tạo ra khi thiết kế Mẫu biểu (ví dụ như các dòng thông báo, các nhãn ..). Sự liên kết giữa một Mẫu biểu và các bản ghi dữ liệu trong một Bảng bằng cách sử dụng các đối tượng gọi là các điều khiển. Kiểu điều khiển hay được dùng để hiển thị và nhập dữ liệu là một hộp văn bản (Text Box ). Các quá trình thiết kế một Mẫu biểu. Đưa vào Mẫu biểu các điều khiển. Access cung cấp các loại điều khiển sau: + Các hộp văn bản ( text box ) + Các hộp điều khiển Combo (Combo box) + Các hộp liệt kê (List box) + Các điều khiển nhãn (Label) + Nhóm lựa chọn (Option Group), + Hình ảnh (Object Frame) + Hộp kiểm tra (Check Box) + Nút bật tắt (Toggle Button) + Nút lựa chọn (Option Button ) . . . . . . . . .. . . + Thực hiện chỉnh sửa các điều khiển nhằm tạo một Mẫu biểu theo ý muốn. Các thao tác có thể làm như: - Dịch chuyển, thay đổi kích cỡ canh lề các điều khiển - Thay đổi các nhãn hoặc các điều khiển - Buộc các điều khiển vào các trường dữ liệu trên bảng nguồn - Thay đổi các dạng điều khiển cho phù hợp theo yêu cầu Để tăng cường tính hiệu quả của một Mẫu biểu ta có thể đưa thêm vào một phần hoặc nhiều phần của Mẫu biểu. Hầu hết các Mẫu biểu đều có phần mô tả chi tiết (Detail), nhưng Mẫu biểu cũng có thể bao gồm cả các phần: phần đầu Mẫu biểu (Forms Header), phần đầu trang (Page Header), phần cuối trang (Page Footer), phần cuối mẫu biểu (Forms Footer). +Liên kết dữ liệu trong các bảng vào các Mẫu biểu * Để có thể thực hiện công việc cập nhật, tìm kiếm, thể hiện dữ liệu nằm trên trên nhiều Bảng, cần tạo ra các Mẫu biểu con (Sub Forms), các Mẫu biểu con được nhúng và trong các Mẫu biểu chính. Mẫu biểu chính thể hiện các thông tin truy vấn trên bảng chính, còn Mẫu biểu con thể hiện các thông tin trên các bảng có liên quan trong truy vấn đang xét trên Mẫu biểu chính. 3. Truy Vấn ( Query ) Truy vấn là công cụ mạnh của Access dùng để tổ hợp, sắp xếp, tìm kiếm dữ liệu trên các bảng dữ liệu. Khi thực hiện truy vấn sẽ nhận được một tập hợp kết quả thể hiện trện màn hình dưới dạng bảng. Sử dụng truy vấn để xem, thay đổi và phân tích dữ liệu theo nhiều kiểu khác nhau. Truy vấn cũng là các bảng dữ liệu nguồn cho các Mẫu biểu, Báo biểu. Sử dụng truy vấn để thực hiện các tính toán trên các bảng dữ liệu như: Tính tổng, đếm, tính giá trị lớn nhất, nhỏ nhất ... hoặc chỉ thực hiện tính toán trên một nhóm dữ liệu đã chỉ ra trong tiêu chuẩn tìm kiếm. Loại truy vấn thường hay được sử dụng nhất là Select Query (Truy vấn chọn). Với truy vấn chọn có thể thực hiện lấy dữ liệu trên một hay nhiều bảng thỏa mãn các tiêu chuẩn đã được chỉ rõ khi xây dựng truy vấn và trình bầy dữ liệu theo cách thức mà bạn muốn. * Ngoài truy vấn Select Query ra còn có các truy vấn khác là: + Crosstab Query: Thể hiện dữ liệu hàng cột. + Action Query: Tạo bảng mới, thêm, sửa và xoá các mẫu tin trong bảng. + Like Query: Tìm kiếm theo mẫu. + Union Query: Các thông tin được tổ hợp trong nhiều truy vấn khác nhau. Một Union Query được tạo nên bằng cách hợp các truy vấn + Data Definition Query: Truy vấn được xây dựng từ câu lệnh SQL, dùng để tạo mới hoặc thay đổi cấu trúc của 1 bảng. a. Cách tạo truy vấn Các bước tạo mới một truy vấn (Select Query): + Vào cửa sổ Database Window chọn mục Query, New. + Chọn Design View để thực hiện thiết kế một truy vấn mới + Chọn các bảng/truy vấn làm nguồn dữ liệu để xây dựng truy vấn mới. Cửa sổ tạo Select Query có hai phần * Phần trên hiện các bảng/truy vấn nguồn. * Phần dưới được gọi là QBE (Query By Example) chứa các trường truy vấn mới cần xây dựng + Chọn các trường đưa vào truy vấn hoặc loại bỏ các trường khỏi truy vấn + Đưa vào các công thức tính toán trên dữ liệu truy vấn. Các hàm như: SUM (tổng), AVG (trung bình), MIN (giá trị nhỏ nhất), MAX (giá trị lớn nhất), COUNT (đếm), FIRST (giá trị đầu tiên), LAST (giá trị cuối cùng). + Định thứ tự sắp xếp để cho bảng kết quả + Lập tiêu chuẩn lựa chọn (điều kiện tìm kiếm) để hiện những thông tin cần quan tâm trong bảng kết quả. Truy vấn chỉ thể hiện các dữ liệu đã chỉ ra trong truy vấn nếu dữ liệu của trường đó thỏa mãn điều kiện đã chỉ ra. Có thể đưa vào nhiều các tiêu chuẩn tìm kiếm bằng cách sử dụng các phép toán AND, OR + Đưa vào các tính chất cho các trường dữ liệu sẽ được hiển thị trong bảng truy vấn Ví dụ: Muốn hiển thị các mẫu tin không trùng lặp nhau theo 1 trường nào đó của 1 truy vấn ta sử dụng thuộc tính Unique Values của truy vấn và đặt giá trị Yes cho thuộc tính này b. Một số truy vấn khác: Truy vấn thông số (Parameter Query) Giá trị trong biểu thức điều kiện không cần định trước mà sẽ được nhập vào mỗi khi truy vấn thực hiện Trong biểu thức điều kiện, thay cho một giá trị cụ thể ta đưa vào một thông báo trong 2 dấu []. Một thông báo như vậy được gọi là một thông số. Dòng thông báo này sẽ xuất hiện như một chỉ dẫn nhập dữ liệu khi thực hiện một truy vấn Truy vấn Crosstab Truy vấn Crosstab được dùng để tóm lược dữ liệu và trình bày kết quả theo dạng cô đọng như một bảng tính. Vì vậy nó được dùng để tạo nên số liệu so sánh và dự đoán hướng phát triển của dữ liệu Cách tạo truy vấn Crosstab: + Chọn các bảng/truy vấn nguồn + Chọn mục Crosstab Query trong menu Query. Kết quả trong QBE xuất hiện thêm hai hàng là Total và Crosstab + Đưa vào các trường với mục đích: - Dùng làm tiêu chuẩn lựa chọn các bản ghi: Total, Where Crosstab: (để trống) Criteria: điều kiện - Phân nhóm và hiển thị theo hàng: Total: Group By Crosstab: Row Heading Sort: (có thể dùng) Criteria: (có thể dùng) - Tính theo nhóm và hiển thị theo hàng: Total: Hàm Sum, Avg, Count,... Crosstab: Row Heading Sort: (có thể dùng) Criteria: (có thể dùng) - Một trường dùng để phân nhóm con và hiển thị theo cột: Total: Group By Crosstab: Column Heading - Một trường dùng để tính toán trên các nhóm và hiển thị kết quả theo bảng: Total: Hàm Sum, Avg, Count,... Crosstab: Value Chú ý: Có thể dùng biểu thức điều kiện chứa thông số Truy vấn dùng câu lệnh SQL Bản chất của các truy vấn là các câu lệnh SQ L, một mặt Access hỗ trợ cho ta chương trình Query Builder, tự sản sinh các câu lệnh SQL, mặt khác Access cũng cung cấp phần đề cho người sử dụng đưa vào các câu lệnh SQL không phải do chương trình Query Builder sản sinh. Các lệnh SQL gồm: SELECT ( truy vấn thông tin ) CREATE_TABLE (tạo một bảng mới ) ALTER TABLE (thay đổi cấu trúc của bảng dữ liệu) DROP TABLE (xoá bảng ) CREATE INDEX (xây dựng chỉ mục trên bảng dữ liệu) DROP INDEX (xoá chỉ mục trên bảng dữ liệu) . . . . . . Truy vấn Action Truy vấn Action dùng để: + Tạo bảng dữ liệu mới (Maketable). Kết quả truy vấn được ghi ra đĩa dưới dạng một bảng mới + Bổ sung vào cuối một bảng đã có (Append Query). Kết quả truy vấn được bổ sung vào bảng + Xoá các mẫu tin từ 1 hay nhiều bảng (Delete Query) + Chỉnh sửa dữ liệu trong một nhiều bảng (Update Query) * Cách tạo: Truy vấn tạo bảng - Tiến hành thiết kế như đối với một truy vấn thông thường - Sau đó chọn menu Query, MakeTable thì Access sẽ yêu cầu đặt tên cho bảng cần tạo trong trường hợp sau: - Đặt tên cho bảng và trở về thiết kế truy vấn - Ghi thiết kế và đặt tên cho truy vấn - Thực hiện truy vấn mới để nhận bảng mới Truy vấn bổ sung (Append Query) - Thiết kế như đối với một truy vấn thông thường - Sau đó chọn menu Query. Access yêu cầu nhập tên bảng cần bổ sung dữ liệu (bảng đó phải tồn tại) - Nhập tên bảng cần bổ sung dữ liệu - Trong hàng Field ta đưa vào các trường của bảng/truy vấn nguồn - Trong hàng Append To ta đưa vào các trường tương ứng của bảng cần bổ sung dữ liệu Truy vấn xoá (Delete Query) - Chọn bảng/truy vấn nguồn - Chọn menu Query, Delete. Kết quả xuất hiện thêm hàng Delete trong QBE - Kéo dấu * của bảng (nguồn) muốn xoá vào một ô trong hàng Field. Khi đó trên dòng Delete xuất hiện từ From của ô tương ứng - Kéo các trường dùng để lập điều kiện vào dòng Field. Khi ấy từ Where xuất hiện trên dòng Delete - Ghi thiết kế và đặt tên truy vấn - Thực hiện truy vấn Truy vấn sửa (Update Query) - Chọn các bảng/truy vấn nguồn - Chọn menu Query, Update. Kết quả hiện thêm hàng Update To trong phần QBE - Kéo các trường cần sửa và các trường dùng để lập điều kiện vào hàng Field (cùng 1 trường có thể vừa là trường cần sửa, vừa là trường cần điều kiện) - Đặt các biểu thức cần thiết vào Update To của các trường cần sửa. Trong biểu thức này có thể dùng các trường của bảng/truy vấn nguồn, các hàm chuẩn của Access và các hàm tự lập - Đặt điều kiện vào ô Criteria của các trường điều kiện - Ghi thiết kế và đặt tên truy vấn - Thực hiện truy vấn 4. Báo biểu (Report) Báo biểu là công cụ thuận tiện tuyệt vời để tổ chức công việc in dữ liệu của các bảng dữ liệu hay các truy vấn. Nguồn dữ liệu cho các báo biểu được lấy từ các bảng đữ liệu ,các truy vấn, các câu lệnh SQL. Báo biểu cho phép thực hiện các chức nắng sau : + Sắp xếp dữ liệu trước khi in và in theo từng nhóm + Sắp xếp và phân nhóm dữ liệu tới 10 cấp. Cho phép thực hiện các phép toán để nhận dữ liệu tổng hợp trên mỗi nhóm như: SUM (tổng), AVG (trung bình cộng), COUNT (đếm), MAX, MIN,... Ngoài ra dữ liệu tổng hợp nhận được trên các nhóm để có thể đưa vào công thức để nhận được sự so sánh, đối chiếu trên các nhóm và trên toàn báo cáo. + In dữ liệu của nhiều bảng có quan hệ trên 1 báo cáo (dùng báo biểu con Sub Report). + Việc chọn Font chữ, cỡ chữ, kiểu in và việc trình bày trên báo biểu được tiến hành rất đơn giản và nhanh chóng Để tăng tính hiệu quả của báo biểu ta có thể đưa thêm vào các phần sau vào trong báo biểu: + Đầu báo biểu (Report Header) + Đầu trang (Page Header) + Thân báo biểu (Report Detail) + Cuối trang (Page Footer) + Cuối báo biểu (Report Footer) * Báo biểu có 3 chế độ hiển thị - Design View: Dạng thiết kế báo biểu, dùng để tạo 1 báo biểu mới hoặc chỉnh sửa lại 1 báo biểu đã có. - Sample Preview: Xem thử kết quả báo biểu, kiểm tra cách sắp đặt các điều khiển, Form và cỡ chữ (chỉ thể hiện ra một phần báo biểu để làm mẫu). - Print Preview: Xem và kiểm tra toàn bộ nội dung trước khi đưa ra máy in. a. Các bước xây dựng báo biểu Trong cửa sổ Database Window chọn Report, New thì được cửa sổ để thiết kế xây dựng Báo biểu (Report). Chọn một bảng/truy vấn nguồn (nếu cần sử dụng) Xử dụng hộp công cụ để tạo các điều khiển trên báo biểu. Khi thiết kế xong tiến hành ghi và đặt tên cho báo biểu. b. Các điều khiển thường sử dụng để xây dựng báo biểu Điều khiển Line, Rectangle để kẻ đường thẳng và các ô hình chữ nhật. Điều khiển TextBox Sử dụng điều khiển Page Break trên hộp cộng cụ để thực hiện ngắt trang. Để in số trang, dùng hộp văn bản kiểu tính toán (trong đó ghi công thức =Page). Hộp này có thể đặt ở đầu trang hoặc cuối trang.của báo biểu. c. In báo biểu Để in kết quả của báo biểu thì: + Chọn báo biểu cần in từ cửa sổ Database + Chọn chức năng Print từ menu Edit Để in các thông tin về cấu trúc của báo biểu thì dùng chức năng Print Definition trong menu File. d. Sắp xếp và tập hợp dữ liệu theo nhóm * Sắp xếp dữ liệu Khả năng sắp xếp: + Có thể sắp xếp theo trường + Có thể sắp theo 1 biểu thức có chứa các trường + Có thể sẵp xếp tối đa trên 10 trường hoặc biểu thức Thao tác: + Mở báo biểu trong chế độ Design View. + Chọn mục Sorting and Grouping từ menu View khi ấy hiện cửa sổ + Đưa các trường vào biểu thức dùng để sắp xếp vào cột Field Expression.(mỗi trường hoặc biểu thức đặt trên một dòng) + Chọn thứ tự sắp xếp trong cột Sort Order (nếu sắp xếp theo nhiều trường hoặc biểu thức thì thứ tự ưu tiên từ trên xuống dưới). * Phân nhóm dữ liệu Có thể phân nhóm bất kỳ trường hay biểu thức nào đã được đưa vào cột Field Expression Thứ tự phân nhóm: Giả sử ta phân nhóm theo 3 trường, với số thứ tự từ trên xuống dưới thì dữ liệu được phân nhóm như sau: + Trước hết các bản ghi được phân nhóm theo Field1. Ta được nhóm cấp 1 + Trong mỗi nhóm cấp 1, các bản ghi lại được phân nhóm theo Field2. Ta được các nhóm cấp 2. + Trong nhóm cấp 2, các bản ghi lại được phân nhóm theo Field3. Ta được các nhóm cấp 3 Các nhóm dữ liệu theo trường phân nhóm: Được quy định bằng các thuộc tính Group On và Group Interval của trường phân nhóm trong cửa sổ Sorting và Grouping * Nhóm đầu và nhóm cuối Tạo đầu nhóm và cuối nhóm trên báo biểu + Mở cửa sổ Sorting và Grouping + Chọn trường hoặc biểu thức phân nhóm + Đặt thuộc tính của (trường phân nhóm) Group Header là Yes để thêm phần đầu nhóm, hoặc No để huỷ phần đầu nhóm. + Đặt thuộc tính Group Footer là Yes để thêm phần cuối nhóm, là No để huỷ Trên phần đầu nhóm và cuối nhóm có thể đạt bất kỳ điều khiển nào của báo biểu. Tại phần đầu nhóm và cuối nhóm, có thể sử dụng một số hàm chuẩn của Access để tổng hợp dữ liệu của mỗi nhóm. * In theo nhóm Thuộc tính Keep Together trong cửa sổ Sorting And Grouping cho 2 khả năng in dữ liệu nhóm như sau: - Nếu Keep Together: Whole Group thì nhóm sẽ bắt đầu in từ trang mới, nếu phần còn lại của trang không chứa hết tất cả các bản ghi của nhóm. - Nếu Keep Together: With First Detail thì trên mỗi trang tiêu đề nhóm sẽ được in kèm với ít nhất 1 bản ghi. e. Nhóm dữ liệu theo trường phân nhóm * Đối với trường/biểu thức số Dùng thuộc tính Group On - Phân nhóm theo giá trị ta đặt: Group On: Each Value - Phân nhóm theo miền giá trị đặt: Group On: Interval và thuộc tính Group Interval là 1 giá trị số. Khi đó miền phân nhóm là các đoạn có độ dài bằng giá trị đưa vào thuộc tính Group Interval và mốc là 0. * Đối với trường/biểu thức Date/Time Dùng thuộc tính Group On - Phân nhóm theo giá trị ta đặt: Group On: Each Value - Phân nhóm theo miền giá trị: Miền giá trị tính theo một trong các đơn vị: Year (năm), Qtr (qúi), Month (tháng), Week (tuần), Day (ngày), Hour (giờ), ... Để phân nhóm theo miền giá trị ta đặt: - Thuộc tính Group On là một trong các giá trị trên. - Thuộc tính Group Interval là một giá trị số. * Đối với trường/biểu thức Text Dùng thuộc tính Group On - Phân nhóm theo giá trị ta đặt: Group On: Each Value - Phân nhóm theo các ký tự đầu tiên: + Trên dòng thuộc tính Group On ta đặt Prefix Character. + Trên dòng thuộc tính Group Interval đặt 1 giá trị nguyên n. Khi đó các bản ghi trùng nhau trên n ký tự đầu tiên của trường/biểu thức phân được đưa vào 1 nhóm. g. Tổng hợp dữ liệu trên báo biểu * Tổng hợp dữ liệu trên các nhóm - Tạo các điều khiển Unbound vào đầu nhóm hoặc cuối nhóm. - Đặt một trong các hàm chuẩn của Access vào các ô điều khiển. * Tổng hợp dữ liệu trên toàn báo biểu Cũng làm như trên, nhưng các điều khiển được đặt ở đầu biểu hoặc cuối biểu * So sánh dữ liệu tổng hợp trên các phần của báo biểu - Tạo các ô điều khiển tại đầu hoặc cuối mỗi phần để nhận dữ liệu tổng hợp trên các phần. Đặt tên cho ô điều khiển. - Xử dụng các ô điều khiển nói trên để thực hiện các phép so sánh dữ liệu tổng hợp trên các phần khác nhau của báo biểu. h. Báo biểu chính và báo biểu phụ Cách tổ chức báo biểu chính và báo biểu phụ hoàn toàn giống như việc tổ chức Mẫu biểu chính và Mẫu biểu phụ ở trong phần giới thiệu Mẫu biểu 5. Macro Macro bao gồm 1 dãy các hành động Action là 1 đoạn chương trình dùng để tự động hoá các thao tác và tổ chức giao diện chương trình. Dùng Macro để mở các đối tượng như bảng, truy vấn, mẫu biểu, báo biểu. Ví dụ: Bạn có thể chạy một Macro để in một Báo biểu khi người sử dụng nhấn chuột vào một nút lệnh. Một Macro có thể là một Macro được tạo nên bởi một chuỗi các hành động hoặc có thể nó là một nhóm các Macro. Bạn có thể sử dụng một biểu thức điều kiện để xác định xem trong các trường hợp thì hành động nào được chạy. Nhóm các Macro có thể giúp bạn quản lý cơ sở dữ liệu của bạn một cách dễ dàng hơn a. Cách tạo Macro Chọn mục Macro trong cửa sổ Database Window, hoặc menu View. Sau đó chọn New Trong cột hành động (Action ) hãy chọn một hành động trong danh sách hành động mà bạn muốn sử dụng. Chỉ rõ các đối cho hành động nếu hành động đòi hỏi cần có các đối. b. Thực hiện Macro Bạn có thể thực hiện các Macro một cách trực tiếp, từ các Macro khác, hoặc từ trong một thủ tục xử lý một sự kiện, hoặc để đáp ứng các sự kiện xảy ra trên các Mẫu biểu, Báo biểu hoặc trên các điều khiển. Ví dụ: Bạn có thể gắn một Macro với một nút lệnh trên Mẫu biểu và Macro sẽ được thực hiện khi người sử dụng nhắp vào nút lệnh đó Trong chương trình một Macro đưọc thực hiện nhờ câu lệnh : DoCmd Tên_hành_động Danh_sách_đối Trong đó: +Tên_hành_động: là tên hành động của Macro + Danh_sách_đối: là một dãy các danh sách đối của Macro. Giữa 2 đối trong danh sách đối được phân cách nhau bởi dấu phẩy. 6. Đơn thể (module) Là nơi chứa các hàm, thủ tục viết bằng ngôn ngữ Access Basic. Một chương trình bao gồm nhiều đơn thể và mỗi đơn thể gồm có các hàm (Function ) và các thủ tục ( Sub ) a. Các loại đơn thể Có hai kiểu đơn thể cơ bản: Các lớp đơn thể và Các đơn thể chuẩn Trong một đơn thể có các hàm (Function procedure ) hay các thủ tục (Sub procedure ) * Các lớp đơn thể (Class modules) Mẫu biểu và Báo biểu là các lớp đơn thể, chúng được tổ chức trên từng Mẫu biểu và Báo biểu cụ thể. Các đơn thể của Mẫu biểu và Báo biểu thường chứa các thủ tục đáp ứng một sự kiên xảy ra trên Mẫu biểu hoặc trên Báo biểu. Bạn có thể sử dụng các thủ tục xử lý các xự kiện để điều khiển hành vi xử lý trên Forms hoặc trên Báo biểu. Các thủ tục trong Forms và trong Báo biểu có thể gọi các thủ tục trong các đơn thể chuẩn. Trong Microsoft Access 95 các lớp đơn thể chỉ tồn tại trong một Mẫu biểu hoặc trong một Báo biểu.Trong Microsoft Access 97 , các lớp đơn thể có thể tồn tại độc lập với Mẫu biểu và Báo biểu. * Các đơn thể chuẩn Các đơn thể chuẩn chứa đựng các thủ tục dùng chung, các đơn thể này không gắn liền với một đối tượng bất kỳ nào. Các thủ tục và hàm trong các đơn thể chuẩn được gọi từ bất cứ phần nào trong cơ sở dữ liệu của bạn Bạn có thể xem danh sach các đơn thể chuẩn trong cơ sở dữ liệu của bạn bằng cách kích lên Tabs Modules trong cửa sổ Database Window. b. Cấu trúc của đơn thể * Cấu trúc của đơn thể sử dụng chung - Các tuỳ chọn là: Option Base1 Option Explicit Option Compare Text Option Compare Binary - Khai báo các hằng, biến, mảng cấp chương trình (dùng từ khoá Global) - Khai báo các hằng, biến, mảng cấp đơn thể (dùng từ khoá Dim) - Các thủ tục có phạm vi xử lý cấp chương trình - Các thủ tục của riêng đơn thể (dùng từ khoá Private) * Cấu trúc của đơn thể riêng của mỗi mẫu biểu/báo biểu - Các tuỳ chọn là: Option Base1 Option Explicit Option Compare Text Option Compare Binary - Khai báo các hằng, biến, mảng cấp đơn thể - Các thủ tục xử lý sự kiện - Thủ tục tổng quát (chỉ dùng trong đơn thể) được gọi bởi thủ tục xử lý sự kiện, hoặc các thủ tục khác trong cùng đơn thể. * Cấu trúc của một hàm và của thủ tục + Hàm: Function Tên_hàm (khai báo từng đối) [As kiểu] . . . Tên_hàm=Giá_trị hàm End Function + Thủ tục: Sub Tên_thủ_tục (khai báo từng đối) . . . End Sub Chú ý : Không có thủ tục trong thủ tục + Lời gọi thủ tục: Tên_thủ_tục Danh_sách_tham_số * Cấu trúc của thủ tục xử lý sự kiện - Sự kiện của Form: Sub Form_tên_sự_kiện() . . . . . . End Sub - Sự kiện của Report: Sub Report_tên_sự_kiện() . . . . . End Sub - Sự kiện của ô điều khiển: Sub Tên_ô_điều_khiển_sự_kiện() . . . . . . End Sub 3. Sử dụng lập trình Access Basic Mặc dù Microsoft Access đã cung cấp các công cụ hữu hiệu, tiện lợi và khá đầy đủ để tự động sản sinh chương trình giải quyết hàng loạt các vấn đề then chốt trong việc quản trị cơ sở dữ liệu nhưng lẽ dĩ nhiên không thể bao quát được mọi vấn đề đa dạng của thực tế, những phần lắt léo của bài toán mà công cụ sẵn có của Microsoft Access không giải quyết được. Trong những trường hợp này thì các hàm, thủ tục của Access Basic sẽ trợ giúp, giải quyết những phần lắt léo đó làm tăng sức mạnh của Access. Access Basic là một ngôn ngữ thảo chương nằm trong nhóm ngôn ngữ Basic lập trình theo điều khiển bởi sự kiện (Event driven programming language) khác với ngôn ngữ thảo chương có cấu trúc truyền thống lập trình trên DOS như C, Pascal, Foxpro... như: + Access Basic chủ yếu dùng để xử lý các đối tượng của Access như: bảng dữ kiện, truy vấn, mẫu biểu, báo biểu và macro + Trong Access Basic có các khái niệm của lập trình hướng đối tượng như các lớp đối tượng, phương thức, thuộc tính nhưng Access Basic không phải là ngôn ngữ lập trình hướng đối tượng và nó không cho phép định nghĩa các lớp đối tượng mới + Access Basic gồm các thủ tục hàm nằm độc lập rải rác trong các đơn thể của Mẫu biểu, Báo biểu, Đơn thể chung của Hệ cơ sở dữ liệu. Chúng không tổ chức thành một chương trình thống nhất như trong C và Pascal không thực hiện tuần tự từng lệnh theo thứ tự đã qui định mà ứng xử theo các sự kiện của người sử dụng hoặc một sự kiện xảy ra đối với hệ thống. Một chương trình Microsoft Access không có chương trình chính để điều khiển hệ thống mà chỉ qui định thủ tục hoặc macro được thi hành khi có sự kiện xảy ra bằng cách gán thủ tục và macro đó vào mục đích tính chất thích hợp của đối tượng như: On Open, On Click, On Error... Với các công cụ của Access và lập trình Access Basic đã tạo cho Access có khả năng xử lý các loại dữ liệu, kể cả xử lý các dữ liệu phi văn bản một cách thuận lợi, đảm bảo tính toàn vẹn của dữ liệu, xử lý phông chữ, xử lý hình ảnh một cách linh hoạt dẽ dàng Cũng giống như ngôn ngữ thảo chương có cấu trúc (Structured Programming Language), trong Access Basic có các định nghĩa về : a. Kiểu dữ liệu, hằng, biến, mảng, các phép toán và biểu thức Access Basic có các kiểu dữ liệu cơ bản sau: Integer, Long, Single, Double, Currency, String, Variant trong đó: Kiểu Variant có thể là số dấu chấm động, ngày/giờ, chuỗi hoặc Null. Kiểu Variant là cách lựa chọn tốt nhất để lưu trữ giá trị của các ô điều khiển và các trường của bảng dữ liệu. Giá trị mặc định là rỗng(Empty) c chuỗi ký tự)... b. Các cấu trúc điều khiển Toán tử rẽ nhánh If . . . Then Toán tử lựa chọn Select Case Toán tử For Toán tử Do ... Loop với điều kiện trước c. Thủ tục và hàm Các thủ tục, hàm trong các đơn thể chung chia làm các loại loại: - Thủ tục và hàm cấp chương trình (không dùng từ khoá Private): Có thể dùng bất cứ chỗ nào trong chương trình. - Thủ tục và hàm cấp đơn thể (dùng từ khoá Private): Các thủ tục, hàm này chỉ có thể được gọi từ các thủ tục và hàm khác trong cùng đơn thể. - Các thủ tục và hàm trong đơn thể của mẫu biểu/báo biểu: Các thủ tục và hàm này chỉ có thể đươc gọi từ các thủ tục và hàm khác trong cùng đơn thể của mẫu biểu/báo biểu * Thủ tục (Sub Procedure) Cú pháp: [Static][Private] Sub tên_thủ_tục [(danh sách các đối)] [các câu lệnh] [Exit Sub] [các câu lệnh] End Sub Cách dùng thủ tục: Một thủ tục có thể được sử dụng trong một hàm/thủ tục khác bằng một lời gọi thủ tục sau: Tên_thủ_tục Danh sách các tham số Giữa các tham số và các đối phải phù hợp về: số lượng, thứ tự, kiểu. * Hàm (Function Procedure) Cú pháp: [Static][Private] Function tên_hàm [(danh sách đối)] [As Type] [các câu lệnh] [tên_hàm=biểu thức] [Exit Function] [các câu lệnh] [tên_hàm=biểu thức] End Function d. Thực hiện macro trong chương trình Để thực hiện một Macro trong chương trình ta dùng câu lệnh DoCmd theo mẫu: DoCmd .Tên_hành_động[danh sách đối] Danh sách đối: Tên của một đối tượng do người dùng tự đặt như tên Mẫu biểu, tên Báo biểu,... Đối này thường phải nhập từ bàn phím Sử dụng Macro để : + Đóng các đối tượng + Mở các đối tượng - OpenTable (mở bảng dữ liệu) - OpenQuery (mở một truy vấn) - OpenForm (mở một biểu mẫu) - OpenReport (mở một báo biểu) - OpenModule (mở một đơn thể) + Các hành động trên ô điều khiển - Sơn lại các đối tượng ( repaint ) -Đặt con trỏ chuột tại một ô điều khiển (GotoControl) - Hiện nội dung vừa thay đổi của một ô điều khiển (re query) e. Đối tượng và biến đối tượng trong Access Basic Kiểu đối tượng và tập các đối tượng + Kiểu đối tượng (Object Type): Các kiểu đối tượng quan trọng thường dùng trong Access Basic gồm: DBEngine, WorkSpace, Database, Form, Report, TableDef, QueryDef, RecordSet, Control, Field, Index + Đối tượng (Object): Mỗi kiểu đối tượng có nhiều đối tượng cụ thể. Chẳng hạn một mẫu biểu đang mở là một đối tượng thuộc kiểu Form + Biến đối tượng (Object Variable): Là biến biểu thị một đối tượng, được khai báo bằng cách dùng kiểu đối tượng trên . VD: Dim DB As Database ‘Khai báo biến DB kiểu Database + Tập các đối tượng (Object Collection): Là tập hợp các đối tượng cùng loại. Để biểu thị một tập các đối tượng (trừ DBEngine) ta chỉ cần thêm s vào sau tên đối tượng đã nêu trên Biểu thị đối tượng và các thành phần của đối tượng + Các thành phần của đối tượng có thể chia thành 3 loại - Đối tượng con (Sub Object) - Thuộc tính (Property) - Phương thức (Method) + Đối tượng khởi thuỷ: Là đối tượng không nằm trong bất kỳ đối tượng nào. Có 3 đối tượng khởi thủy dùng trong Access là: Forms, Reports và DBEngine Các đối tượng con (thành phần) của Forms là các mẫu biểu đang mở Các đối tượng con (thành phần) của Reports là các báo biểu đang mở Các đối tượng thành phần của DBEngine là các vùng làm việc (đối tượng kiểu Work Space) + Quy tắc biểu thị thành phần của đối tượng: Để biểu thị thành phần của đối tượng cần bắt đầu từ một đối tượng khởi thuỷ, sau đó là danh sách các đối tượng có quan hệ phụ thuộc (đối tượng sau là thành phần của đối tượng trước), cuối cùng là đối tượng cần biểu thị. Giữa 2 đối tượng trong danh sách liệt kê được nối bằng - Dấu chấm than (!) nếu đối tượng sau do người dùng định nghĩa - Dấu chấm than (.) trong trường hợp còn lại (đối tượng sau là thuộc tính, phương thức hay đối tượng tiền định) Biến đối tượng + Khai báo biến đối tượng theo mẫu : Dim Tên_biến As Kiểu_đối_tượng VD: Dim DB As Database, Tabl As Tabledef + Để gắn một biến với một đối tượng cùng kiểu ta dùng câu lệnh Set tên_biến=Dạng biểu thị đối tượng Ví dụ Dim ctrl as Control Set ctrl = Me.txtMaKhachHang Sau khi đã gắn một biến với một đối tượng ta có thể dùng biến để biểu thị đối tượng này Ví dụ ctrl.setfocus Mẫu biểu-Mối quan hệ trong đối tượng Forms + Sơ đồ quan hệ phân cấp: Mức 1: Đối tượng khởi thuỷ Forms Mức 2: Các mẫu biểu đang mở là thành phần của Forms Mức 3: Các ô điều khiển (đối tượng kiểu Control) là thành phần của mẫu biểu Mức 4: Đối tượng tiền định Form là thành phần của ô điều khiển của Sub Form Mức 5: Mẫu biểu con là thành phần của Form + Thuộc tính hay dùng trong mẫu biểu: - Name: cho biết tên đối tượng - Visible: có thể dùng với 1 mẫu biểu hoặc một ô điều khiển để qui định sự hiển thị hay không hiển thị của mẫu biểu hay ô điều khiển - Count: thuộc tính này có thể dùng với tất cả các tập đối tượng để xác định số đối tượng của tập các đối tượng Báo biểu-Mối quan hệ phân cấp trong Reports + Sơ đồ quan hệ phân cấp: Mức 1: Đối tượng khởi thuỷ Reports Mức 2: Các báo biểu đang mở là thành phần của Reports Mức 3: Các ô điều khiển (đối tượng kiểu Control) là thành phần của báo biểu Mức 4: Đối tượng tiền định Report là thành phần của ô điều khiển của Sub Report Mức 5: Báo biểu con là thành phần của Report + Thuộc tính: hay dùng Name, Visible, Caption, Count giống như mẫu biểu Mối quan hệ phân cấp trong đối tượng DBEngine + Sơ đồ phân cấp các đối tượng trong DBEngine: Để làm việc với các bảng, truy vấn và tập các bản ghi cần sử dụng các đối tượng Tbaledefs, Querydef và Recordsets. Các đối tượng này đều nằm trong sơ đồ phân cấp của DBEngine như sau: Chương IV: Giới thiệu chương trình I. Cấu trúc dữ liệu của chương trình trên Access 1. Các bảng thực thể tblKhachHang Tên trường Kiểu dữ liệu Kích thước KhachHangID Number (Long) 4 MaKhachHang Text 5 TenKhachHang Text 40 MaTinhThanh Text 3 DiaChi Text 60 DienThoai Text 13 Fax Text 13 MaNganHang Text 3 MaLinhVucHoatDong Text 3 SoTaiKhoan Text 15 GhiChu Memo - tblNhaCungCap Tên trường Kiểu dữ liệu Kích thước NhaCungCapID Number (Long) 4 MaNhaCungCap Text 5 TenNhaCungCap Text 40 MaLinhVucHoatDong Text 3 MaTinhThanh Text 3 DiaChi Text 60 DienThoai Text 13 Fax Text 13 MaNganHang Text 3 SoTaiKhoan Text 15 GhiChu Memo - tblNganHang Tên trường Kiểu dữ liệu Kích thước NganHangID Number (Long) 4 MaNganHang Text 3 TenNganHang Text 40 MaTinhThanh Text 3 DiaChi Text 60 DienThoai Text 13 Fax Text 13 GhiChu Memo - tblNhanVien Tên trường Kiểu dữ liệu Kích thước NhanVienID Number (Long) 4 MaNhanVien Text 3 HoDem Text 20 Ten Text 8 GioiTinh Number (Byte) 1 NgaySinh Date/Time 8 DiaChi Text 40 MaTinhThanh Text 3 SoPhone Text 13 MaCongViec Text 3 GhiChu Memo - MaPhongBan Text 10 NguyenQuan Text 50 MaTinhThanhNguyenQuan Text 3 SoChungMinh Text 15 tblSanPham Tên trường Kiểu dữ liệu Kích thước SanPhamID Number (Long) 4 MaNhomSanPham Text 3 MaSanPham Text 10 TenSanPham Text 100 HangSanXuat Text 40 MoTa Memo - DonViTinh Text 10 DonViGia Text 3 Ghichu Text 50 tblKho Tên trường Kiểu dữ liệu Kích thước MaKho Text 3 TenKho Text 50 DiaChi Text 40 MaTinhThanh Text 3 MaNhanVienQuanLy Text 3 MoTaKho Memo - tblBaoGia Tên trường Kiểu dữ liệu Kích thước BaoGiaID Number (Long) 4 MaBaoGia Text 12 NgayBaoGia Date/Time 8 SoLanBaoGia Number (Byte) 1 MaNhaCungCap Text 5 MaKhachHang Text 5 HieuLucDenNgay Date/Time 8 MaNhanVien Text 3 ThoiGianBaoHanh Text 60 HinhThucThanhToan Text 100 DieuKienGiaoHang Text 60 tblChiTietBaoGia Tên trường Kiểu dữ liệu Kích thước MaBaoGia Text 12 MaSanPham Text 10 GiaSanPham Number (Double) 8 SoLuong Number (Long) 4 ThueVAT Number (Byte) 1 tblDatHang Tên trường Kiểu dữ liệu Kích thước MaDatHang Text 12 MaNhaCungCap Text 5 MaKhachHang Text 5 MaNhanVien Text 3 NgayDatHang Date/Time 8 NgayGiaoHang Date/Time 8 DiaChiChuyenDen Text 40 MaTinhThanhChuyenDen Text 3 CuocChuyenCho Number (Long) 4 GhiChu Memo - tblChiTietDatHang Tên trường Kiểu dữ liệu Kích thước MaDatHang Text 12 MaSanPham Text 10 GiaSanPham Number (Double) 8 SoLuong Number (Long) 4 ThueVAT Number (Byte) 1 tblHoaDonThanhToan Tên trường Kiểu dữ liệu Kích thước MaHoaDon Text 12 MaKhachHang Text 5 MaNhaCungCap Text 5 NgayHoaDon Date/Time 8 ChietKhau Number (Byte) 1 MaNhanVienLamHoaDon Text 3 TenNguoiNhanHang Text 30 TenNguoiGiaoHang Text 30 GhiChu Memo - tblChiTietHoaDonThanhToan Tên trường Kiểu dữ liệu Kích thước MaHoaDon Text 50 MaSanPham Text 50 SoLuong Number (Long) 4 GiaSanPham Number (Double) 8 ThueVAT Number (Byte) 1 tblNhapKho Tên trường Kiểu dữ liệu Kích thước MaPhieuNhapKho Text 50 MaKho Text 50 NgayNhapKho Text 50 TenNguoiGiaoHang Text 50 tblChiTietNhapKho Tên trường Kiểu dữ liệu Kích thước MaPhieuNhapKho Text 12 MaSanPham Text 10 SoLuongTheoChungTu Number (Long) 4 SoLuongThucNhapKho Number (Long) 4 DonGia Number (Double) 8 ThueVAT Number (Byte) 1 tblXacNhanNhanHang Tên trường Kiểu dữ liệu Kích thước MaXacNhan Text 12 MaDatHang Text 12 NgayXacNhan Date/Time 8 MaNhanVienLamXacNhan Text 3 TenNguoiNhanHang Text 30 TenNguoiGiaoHang Text 30 GhiChu Memo - tblChiTietXacNhanNhanHang Tên trường Kiểu dữ liệu Kích thước MaXacNhan Text 12 MaSanPham Text 10 SoLuong Number (Long) 4 GiaSanPham Number (Double) 8 ThueVAT Number (Byte) 1 tblXuatKho Tên trường Kiểu dữ liệu Kích thước MaPhieuXuatKho Text 12 MaKho Text 3 NgayNhapKho Date/Time 8 TenNguoiNhanHang Text 30 MaKhachHang Text 5 tblChiTietXuatKho Tên trường Kiểu dữ liệu Kích thước MaPhieuXuatKho Text 12 MaSanPham Text 10 SoLuongTheoYeuCau Number (Long) 4 SoLuongThucXuatKho Number (Long) 4 DonGia Number (Double) 8 ThueVAT Number (Byte) 1 2. Bảng quan hệ giữa các thực thể II. Đặc tả chương trình Chương trình được phân chia theo các chức năng sau: 1. Hệ thống Trong phần hệ thống chứa các chức năng sau đây: a. Chức năng Khách hàng Chức năng này thực hiện công việc quản lý các thông tin về Khách hàng cũng như đáp ứng các nhu cầu kết xuất các thông tin khách hàng. Chức năng này sử dụng các Form sau: +frmKháchHàng +frmKháchHàngC +frmLọcKháchHàng Nội dung của các Form Form frmKháchHàng Đây là Form chính của chức năng quản lý khách hàng. Form frmKháchHàng vừa dùng để trình bầy các thông tin kết xuất về Khách hàng vừa dùng để thực hiện các thao tác nhập và sửa dữ liệu. Thông tin kết xuất ra Dữ liệu vào (Nhập liệu) Điều kiện đối với các dữ liệu đầu vào Mã khách hàng Mã khách hàng Một chuỗi ký tự, không trùng với các mã đã có Tên Khách hàng Tên khách hàng Chuỗi ký tự Địa chỉ khách hàng Địa chỉ Chuỗi ký tự Tên Tỉnh/Thành Phố Mã tỉnh, thành Một chuỗi ký tự, thuộc mã đã quy định trong danh mục Số điện thoại Có hoặc không Số Fax Có hoặc không Số tài khoản Số tài khoản Mã, Tên của Ngân Hàng Mã ngân hàng Một chuỗi ký tự, thuộc mã ngân hàng đã có Lĩnh vực kinh doanh Mã lĩnh vực Một chuỗi ký tự, thuộc mã đã quy định cho các lĩnh vực đã có trong danh mục Các ghi chú * Trên Form frmKháchHàng có các nút lệnh thực hiện các chức năng: Chức năng Tác dụng Thêm mới Thêm mới một khách hàng Sửa Thực hiện tìm kiếm khách hàng và sửa các thông tin Lưu Lưu các thông tin đã sửa Xóa Thực hiện xóa thông tin về khách hàng Thoát Đóng form frmKhachhang Form frmKháchHàngC Form này dùng để đưa ra danh sách các khách hàng. Mỗi khách hàng chiếm một dòng trên danh sách. Các thông tin trên một dòng gồm : Thông tin kết xuất ra Dữ liệu vào (Nhập liệu) Điều kiện đối với các dữ liệu đầu vào Mã khách hàng Tên Khách hàng Địa chỉ khách hàng Để lựa chọn một khách hàng cần bấm đúp trên dòng đó Khi bấm đúp vào một dòng các thông tin chi tiết về khách hàng sẽ được thể hiện trên Form frmKháchHàng Trong biểu mẫu này còn có hai nút lệnh qui định hai chức năng Chức năng Tác dụng Lọc Lọc theo một số tiêu chí cho trước Thoát Đóng form frmKháchhàngC Form frmLọcKháchHàng: Form này dùng để nhập vào các tiêu chí tìm kiếm khách hàng. Các tiêu chí được thể hiện gồm có: Thông tin kết xuất ra Dữ liệu vào (Nhập liệu) Điều kiện đối với các dữ liệu đầu vào Mã khách hàng Mã khách hàng Một chuỗi ký tự, không trùng với các mã đã có Tên Khách hàng Tên khách hàng Chuỗi ký tự Tên Tỉnh/Thành Phố Mã tỉnh, thành Một chuỗi ký tự, thuộc mã đã quy định trong danh mục Mã Ngân Hàng Mã ngân hàng Một chuỗi ký tự, thuộc mã ngân hàng đã có Mã lĩnh vực hoạt động Mã lĩnh vực Một chuỗi ký tự, thuộc mã đã quy định cho các lĩnh vực đã có trong danh mục Có thể thực hiện thao tác chọn lựa việc nhập các tiêu chuẩn tìm kiếm. Có hai nút lệnh qui định chức năng: Chức năng Tác dụng Tìm Tìm theo các tiêu chí đã chỉ ra Thoát Đóng form frmLọcKháchhàng b. Chức năng Nhà cung cấp Chức năng này thực hiện công việc quản lý các thông tin về Nhà cung cấp cũng như đáp ứng các nhu cầu kết xuất thông tin về Nhà cung cấp Chức năng này sử dụng các Form sau: + frmNhàCungCấp + frmNhàCungCấpC + frmLọcNhàCungCấp Nội dung của các biểu mẫu: Form frmNhàCungCấp Đây là Form chính của chức năng quản lý thông tin Nhà cung cấp. Form frmNhàCungCấp vừa dùng để trình bầy các thông tin kết xuất về Nhà cung cấp vừa dùng để thực hiện các thao tác nhập và sửa dữ liệu. * Thông tin kết xuất ra trên Form frmNhàCungCấp gồm có: Thông tin kết xuất ra Dữ liệu vào (Nhập liệu) Điều kiện đối với các dữ liệu đầu vào Mã Nhà cung cấp Mã nhà cung cấp Một chuỗi ký tự, không trùng với các mã đã có Tên Nhà cung cấp Tên nhà cung cấp Chuỗi ký tự Địa chỉ nhà cung cấp Địa chỉ Chuỗi ký tự Tên Tỉnh/Thành Phố Mã tỉnh, thành Một chuỗi ký tự, thuộc mã đã quy định trong danh mục Số điện thoại Có hoặc không Số Fax Có hoặc không Số tài khoản Số tài khoản Mã, Tên của Ngân Hàng Mã ngân hàng Một chuỗi ký tự, thuộc mã ngân hàng đã có Lĩnh vực kinh doanh của nhà cung cấp Mã lĩnh vực Một chuỗi ký tự, thuộc mã đã quy định cho các lĩnh vực đã có trong danh mục Các ghi chú * Trên Form frmNhàCungCấp có các nút lệnh thực hiện các chức năng: Chức năng Tác dụng Thêm mới Thực hiện công việc thêm mới một Nhà cung cấp Sửa Thực hiện tìm kiếm Nhà cung cấp và sửa các thông tin Lưu Lưu thông tin khi thực hiện Thêm mới Sửa Xóa Thực hiện xóa thông tin về nhà cung cấp Thoát Đóng form frmNhàCungCấp Form frmNhàCungCấpC Form này dùng để đưa ra danh sách các nhà cung cấp. Mỗi nhà cung cấp chiếm một dòng trên danh sách. Các thông tin trên một dòng gồm : Thông tin kết xuất ra Dữ liệu vào (Nhập liệu) Điều kiện đối với các dữ liệu đầu vào Mã Nhà cung cấp Tên Nhà cung cấp Địa chỉ nhà cung cấp Để lựa chọn một nhà cung cấp cần bấm đúp trên dòng đó Khi bấm đúp vào một dòng các thông tin chi tiết về Nhà Cung Cấp sẽ được thể hiện trên Form frmNhàCungCấp Trong biểu mẫu này còn có hai nút lệnh qui định hai chức năng: Chức năng Tác dụng Lọc Lọc theo một số tiêu chí cho trước Thoát Đóng form frmNhàCungCấpC Form frmLọcNhàCungCấp Form này dùng để nhập vào các tiêu chí tìm kiếm nhà cung cấp. Các tiêu chí được thể hiện gồm có: Thông tin kết xuất ra Dữ liệu vào (Nhập liệu) Điều kiện đối với các dữ liệu đầu vào Mã nhà cung cấp Mã nhà cung cấp Một chuỗi ký tự, không trùng với các mã đã có Mã Tỉnh/Thành Mã tỉnh, thành Một chuỗi ký tự, thuộc mã đã quy định trong danh mục Mã Ngân Hàng Mã ngân hàng Một chuỗi ký tự, thuộc mã ngân hàng đã có Mã lĩnh vực Mã lĩnh vực Một chuỗi ký tự, thuộc mã đã quy định cho các lĩnh vực đã có trong danh mục Có thể thực hiên thao tác chọn lựa việc nhập các tiêu chuẩn tìm kiếm. Có hai nút lệnh qui định chức năng: Chức năng Tác dụng Tìm Tìm theo các tiêu chí đã chỉ ra Thoát Đóng form frmLọcNhàCungCấp c. Chức năng Nhân Viên Chức năng này thực hiện công việc quản lý các thông tin về Nhân viên của Cửa hàng cũng như đáp ứng các nhu cầu kết xuất thông tin về một đối tượng Nhân viên nào đó. Chức năng này sử dụng các Form sau: + frmNhânViên + frmNhânViênC + frmLọcNhânViên Nội dung của các Form: Form frmNhânViên Đây là Form chính của chức năng quản lý Nhân viên. Form frmNhânViên vừa dùng để trình bầy các thông tin kết xuất về một đối tượng Nhân viên cụ thể, vừa dùng để thực hiên các thao tác nhập và sửa dữ liệu. * Thông tin kết xuất ra trên Form frmNhânViên gồm có: Thông tin kết xuất ra Dữ liệu vào (Nhập liệu) Điều kiện đối với các dữ liệu đầu vào Mã hiệu của nhân viên Mã hiệu của nhân viên Một chuỗi 3 ký tự, không trùng với các mã đã có Họ đệm Đệm Một chuỗi ký tự Tên Tên Một chuỗi ký tự Ngày sinh Ngày sinh Dạng ngày tháng Ngày/Tháng/Năm Số chứng minh thư có thể có Nguyên quán có thể có Tên tỉnh thành nguyên quán có thể có Địa chỉ hiện nay Địa chỉ hiện nay Một chuỗi ký tự Tên Tỉnh, thành hiện nay Mã tỉnh, thành Một chuỗi 3 ký tự, nằm trong mã đã quy định trong danh mục Số điện thoại Có hoặc không Chức vụ công tác Mã công việc Một chuỗi 3 ký tự, thuộc mã đã quy định trong danh mục công việc Tên đơn vị quản lý Mã đơn vị quản lý Một chuỗi 3 ký tự, thuộc mã đã quy định trong danh mục công việc Các ghi chú cần thiết * Trên Form frmNhânViên có các nút lệnh thực hiện các chức năng: Chức năng Tác dụng Thêm mới Thêm mới thông tin về một nhân viên Sửa Tìm kiếm và sửa thông tin Lưu Lưu các thông tin đã sửa hoặc thêm mới Xoá Xoá các thông tin về một nhân viên Thoát đóng form frmNhânviên Form frmNhânViênC Form này dùng để đưa ra danh sách các nhân viên. Mỗi nhân viên chiếm một dòng trên danh sách. Các thông tin trên một dòng gồm : Thông tin kết xuất ra Dữ liệu vào (Nhập liệu) Điều kiện đối với các dữ liệu đầu vào Mã hiệu của nhân viên Họ đệm Tên Ngày sinh Chức vụ công tác Để lựa chọn một nhân viên cần bấm đúp trên dòng đó Khi bấm đúp vào một dòng, các thông tin chi tiết về nhân viên sẽ được thể hiện trên Form frmNhânViên Trong biểu mẫu này còn có hai nút lệnh qui định hai chức năng: Chức năng Tác dụng Lọc Lọc thông tin được nhập, cho trước Thoát Đóng form frmLọcNhânviênC Form frmLọcNhânViên Form này dùng để nhập vào các tiêu chí tìm kiếm nhân viên. Các tiêu chí được thể hiện gồm có: Thông tin kết xuất ra Dữ liệu vào (Nhập liệu) Điều kiện đối với các dữ liệu đầu vào Tên tỉnh thành trong địa chỉ Mã tỉnh thành Một chuỗi 3 ký tự Ngày sinh Ngày sinh Dạng ngày tháng Ngày/Tháng/Năm Giới tinh Chức vụ công tác Mã công việc Một chuỗi 3 ký tự, thuộ

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

  • doc27185.DOC