Hệ thống chương trình quản lý bán hàng bao gồm: quản lý bán lẻ, quản lý bán buôn, quản lý kho… Bài toán quản lý các thông tin dạng không có cấu trúcvăn bản, hình ảnh, … luôn luôn là một
Trang 1MỤC LỤC
Lời nói đầu 3
Lời cảm ơn 5
Chương 1: Tổng quan về chương trình 6
1.1 Mục đích ……… 6
1.2 Khả năng của chương trình 6
1.3 Đối tượng sử dụng 6
Chương 2: Cơ sở lý thuyết liên quan 8
2.1 Hệ quản trị cơ sở dữ liệu SQL Server 2000…… ………… 8
2.1.1 Tổng quan về SQL Server 8
2.1.2 Khóa ràng buộc dữ liệu 9
2.1.3 Bảng ảo 10
2.1.4 Thủ tục thường trú 11
2.1.5 Bẫy lỗi 11
2.1.6 Bảo mật trong hệ thống SQL Server 11
2.2 Giới thiệu ngôn ngữ lập trình Visual Basic…… ………… 12
Chương 3: Phân tích, thiết kế cơ sở dữ liệu 11
3.1 Khảo sát hiện trạng thực tế của một số cửa hàng tổng hợp và một số siêu thị .13 3.1.1 Một số siêu thị đã có phần mềm quản lý 13
3.1.2 Một số cửa hàng siêu thị chưa sử dụng phần mềm quản lý 13
3.2 Phân tích đánh giá hiện trạng chung 13
3.3 Phân tích hệ thống và chức năng 14
3.3.1 Yêu cầu của hệ thống 14
3.3.2 Phân tích các chức năng của hệ thống 15
3.3.3 Phân tích và đặc tả các yêu cầu của hệ thống 22
3.3.4 Phân tích chi tiết các thành phần của hệ thống 24
3.3.5 Biểu đồ các ca sử dụng 25
3.3.6 Biểu đồ lớp 27
3.3.7 Biểu đồ trạng thái hoạt động của nhập hàng 28
3.3.8 Một số biểu đồ trình tự của hệ thống 29
3.4 Thiết kế cơ sở dữ liệu 39
3.4.1 Mảng dữ liệu 39
3.4.2 Mảng hàng hóa 41
3.4.3 Mảng bán hàng 45
3.4.4 Mảng thanh toán và trả hàng 48
3.4.5 Mảng quản lý kho 50
3.5 Đặc tả chức năng cho các phân hệ 51
3.5.1 Lược đồ phân rã chức năng 51
3.5.2 Chức năng hệ thống 53
3.5.3 Chức năng cập nhật thông tin và hàng hóa 53
3.5.4 Chức năng bán buôn 53
3.5.5 Chức năng bán lẻ 53
3.5.6 Chức năng quản lý kho 53
Chương 4: Cài đặt chương trình 51
4.1 Giao diện của chương trình 54
4.2 Yêu cầu hệ thống 66
Trang 2Kết luận 67
PHỤ LỤC A: Tài liệu tham khảo 68
PHỤ LỤC B 69
Một số ký tự viết tắt và đặc biệt 69
Mã nguồn modul chương trình 69
1 Modul bán buôn 69
2 Modul bán lẻ 83
LỜI NÓI ĐẦU
Ngày nay, công nghệ thông tin đã và đang đóng vai trò quan trọng trong đời sống kinh
tế, xã hội của nhiều quốc gia trên thế giới, là một phần không thể thiếu trong một xã hội ngày càng hiện đại hoá Đặc biệt đối với nước ta trong hoàn cảnh hiện nay, trong tiến trình hội nhập của nền kinh tế vào các tổ chức thương mại quốc tế nhu AFTA, WTO …tạo ra một môi trường cạnh tranh bình đẳng nhưng hết sức mạnh mẽ giữa các doanh nghiệp không phân biệt quốc gia hay khu vực Đây là thời điểm quan trọng đối với các doanh nghiệp để buộc phải tìm mọi biện pháp để tự nâng cao năng lực quản lý, tạo cơ hội và nắm bắt triệt để các cơ hội nhằm thúc đẩy hoạt động kinh doanh, sản xuất của mình
Với sự phát triển không ngừng của hạ tầng cơ sở công nghệ thông tin của Việt Nam trong những năm gần đây, khoảng cách về công nghệ giữa Việt Nam với thế giới đã được rút ngắn một cách đáng kể Các tổ chức, doanh nghiệp cũng đã rất chủ động áp dụng các tiến bộ khoa học công nghệ hỗ trợ cho việc quản lý tổ chức, sản xuất, kinh doanh…
Trong lĩnh vực quản lý, việc lưu trữ và xử lý các thông tin là một vấn đề rất phức tạp
vì lượng thông tin nhận được ngày càng lớn và thường xuyên Nhu cầu đó đòi hỏi một hệ thống chương trình đáp ứng đầy đủ yêu cầu quản lý doanh nghiệp Hệ thống chương trình quản lý bán hàng bao gồm: quản lý bán lẻ, quản lý bán buôn, quản lý kho…
Bài toán quản lý các thông tin dạng không có cấu trúc(văn bản, hình ảnh, …) luôn luôn là một bài toán rất phức tạp, nhất là trong việc tổ chức Cơ sở dữ liệu Đề tài em nhận
Trang 3Dựa trên một số công cụ và chức năng mạnh mẽ của SQL Server Enterprice 2000 vàVisual Basic 6.0 đề tài đã giải quyết tốt vấn đề tổ chức, lưu trữ và tra cứu các dữ liệu vểquản lý bán hàng, giúp nâng cao hiệu quả quản lý và tổ chức kinh doanh của các cửa hàng
và siêu thị.Đồng thời một hệ thống quản lý cơ sở dữ liệu thì không thể thiếu được một hệthống báo cáo đầy đủ và chi tiết Dựa trên nền tảng công cụ có săn Crystal Report em đãxây dựng một hệ thống báo cáo tương đối đầy đủ và chặt chẽ Hơn nữa công cụ này lại chophép quản lý hệ thống báo cáo theo cây thư mục, rất trực quan nên bất kỳ một người nàomới sử dụng cũng có thể tìm được tên và loại báo cáo cần thiết Công cụ lại hỗ trợ cho quátrình in ấn vô cùng thuận lợi có thẻ chọn các khổ giấy, định dạng in Người sử dụng có thểhoàn thành báo cáo một cách hết sức dễ dàng
Trong khuôn khổ của đề tài, luận văn được trình bày nội dung xuyên suốt trong trong
4 chương, bao gồm:
Chương 1 : Tổng quan về chương trình
Chương 2 : Cơ sỏ lý thuyết liên quan
Chương 3 : Phân tích, thiết kế cơ sở dữ liệu
Chương 4 : Cài đặt chương trình
Được thực hiện trong một thời gian ngắn, mặc dù đã cố gắng hoàn thành đề tài với tất
cả sự nổ lực của bản thân nhưng chắc chắn không tránh khỏi những thiếu sót nhất định.Kính mong sự cảm thông và sự đóng góp những ý kiến vô cùng quý báu của các thầy cô,các bạn, nhằm tạo tiền đề thuận lợi cho việc phát triển đề tài trong tương lai
Sinh viên thực hiện
Phạm Gia Dân
LỜI CẢM ƠN
Em xin chân thành cảm ơn:
- Th.S Nguyễn Thanh Sơn đã tận tình giúp đỡ em trong suốt quá trình từ khi bắt đầu đến
khi hoàn thành đề tài
Trang 4- Một số bạn bè trong phòng Giải Pháp của công ty phần mềm Tinh Vân
- Ông Dương Trung Đông , Trưởng phòng IT của Coats Corporation
- Bà Hoàng Khiếu Anh , Trưởng phòng Customer service của Coats
Corporation.
đã giúp đỡ tận tình cho em có được những kiến thức thực tế nhất và những phương pháp công cụ để hoàn thành đề tài
CHƯƠNG 1 TỔNG QUAN VỀ CHƯƠNG TRÌNH 1.1 Mục đích
Hệ thống quản lý bán hàng là hệ thống quản lý công việc mua bán hàng hoá trongcửa hàng hay của các siêu thị, quản lý bán lẻ, bán buôn, quản lý lưu lượng xuất nhập khocủa mặt hàng, thống kê doanh thu, số lượng mặt hàng mua bán, thống kê mặt hàng tồn,cảnh báo mặt hàng tồn vượt mức tồn cho phép…giúp cho công việc quản lý của cửa hànghay siêu thị dễ hàng, tập trung, và đạt hiệu quả cao
1.2 Khả năng của chương trình
Đề tài “Xây dựng phầm mềm quản lý bán hàng” là một thực tế, đòi hỏi phải có
qua quá trình khảo sát thực tế Việc xây dựng cơ sở dữ liệu đầu vào cũng như các thiết kếbáo cáo đòi hỏi nhiều thời gian và cũng được ứng dụng tại các cửa hàng và siêu thị.Chương trình có sử dụng công nghệ đọc mã vạch mã từ trong quản lý bán hàng và hỗ trợ
hệ thống ngôn ngữ Anh và Việt
Chức năng của chương trình:
Hệ thống “Quản lý bán hàng” sẽ có các chức năng như sau:
Trang 5 Chức năng cập nhật thông tin: Quản lý và cập nhật thông tin cho đơn vịtính, đại lý của cửa hàng, cập nhật mặt hàng, đặt giá bán cho mặt hàng, đưa
ra các chính sách khuyến mãi, cập nhật khách hàng và nhà cung cấp sảnphẩm
Chức năng nhập hàng: Thêm mới hàng hoá, thanh toán nhập hàng
Bán lẻ: Bán lẻ hàng hoá, cho nợ bán lẻ, thanh toán bán lẻ, trả hàng bán lẻ
Bán buôn: Bán buôn, thanh toán bán buôn, trả hàng bán buôn
Quản lý kho: Luân chuyển hàng giữa các kho, huỷ hàng, cho phép đặt sốhàng tồn kho tối thiểu, thêm mới kho hàng, tìm hàng tồn kho, kiểm kê hànghoá trong kho
Hệ thống báo cáo: báo cáo nhập hàng, báo cáo bán lẻ, báo cáo bán buôn,báo cáo tổng hợp
Vậy trong chương 1 đã mang lại cái nhìn tổng quan nhất về hệ thống “ Quản lý bán hàng”
và cũng thể hiện rõ là hệ thống dùng để làm gì, được tạo ra dành cho những đối tượng vàcông việc ra sao
Trang 6CHƯƠNG 2
CƠ SỞ LÝ THUYẾT LIÊN QUAN
2.1 Giới thiệu hệ quản trị cơ sở dữ liệu SQL Server
2.1.1.1 Hệ quản trị cơ sở dữ liệu quan hệ (RDBMS ):
Mỗi cơ sở dữ liệu quan hệ là một tập hợp dữ liệu được tổ chức trong những bảnghai chiều có quan hệ với nhau Mỗi bảng bao gồm các cột có tên và các hàng Mỗicột là một thuộc tính của quan hệ, mỗi hàng là một bộ (tuple) các giá trị của nhữngthuộc tính của quan hệ
Một RDBMS có nhiệm vụ:
Lưu trữ và tạo dữ liệu sẵn có trong các bảng
Duy trì quan hệ giữa các bảng trong cơ sở dữ liệu
Bảo đảm tích hợp dữ liệu bằng cách tạo các qui tắc quản lý giá trị dữ liệu
Khôi phục mọi dữ liệu trong trường hợp hệ thống có sự cố
2.1.1.2 Kiến trúc client / server:
Kiến trúc client/server trong SQL server được trình bày như sau:
Server:
Một tập hợp các mục dữ liệu và đối tượng trợ giúp được tổ chức và trình bày đểthuận tiện phục vụ như: tìm kiếm, sắp thứ tự, khôi phục, cập nhật và phân tích dữliệu Cơ sở dữ liệu bao gồm bộ nhớ dữ liệu vật lý và các dịch vụ cơ sở dữ liệu Mọi
dữ liệu đều được truy xuất qua hệ phục vụ, không bao giờ được truy xuất trực tiếp
Client:
Một chương trình có thể tác động qua lại với người hoặc một quá trình tự động
Nó bao gồm tất cả những phần mềm có liên quan đến server, yêu cầu dữ liệu từ cơ
sở dữ liệu hoặc gửi dữ liệu đến cơ sở dữ liệu.Các client chỉ có thể mở và truy cập dữliệu với tư cách như một thành viên và bị quy định và hạn chế truy cập tùy thuộc vàocấu trúc và quy định của Server Chính vì thế mà nó đảm bảo được tính an toàn vàbảo mật cho cơ sở dữ liệu Tránh được hiện tượng hỏng và mất dữ liệu do các sự cố
Trang 7Hình 2.1: Mô hình dữ liệu đa người dùng trong SQL Server 2.1.1.3 Các thành phần của SQL Server 2000
Cũng như hệ quản trị cơ sở dữ liệu SQL server phiên bản trước, SQL server 2000 bao gồm
các thành phần sau:
Database : Cơ sở dữ liệu của SQL Server
Tập tin log : Tập tin lưu trữ những chuyển tác của SQL Server
Tables : bảng dữ liệu
Filegroups : Tập tin nhóm
Diagrams : Sơ đồ thực thể quan hệ
View : Khung nhìn số liệu dựa trên bảng
Stored Procedure : Thủ tục và hàm nội
User defined Function : Hàm do người dùng tự định nghĩa
User : Người sử dụng cơ sở dữ liệu
Roles : Các quy định vai trò và chức năng trong hệ thống SQL Server
Rules : Những quy tắc
Defaults : Các giá trị mặc nhiên
User defined data type : Kiểu dữ liệu do người dùng định nghĩa
Full text catalogs : Tập phân loại dữ liệu text
2.1.2 Khoá và ràng buộc dữ liệu (Keys and Constraints)
2.1.2.1 Khái niệm cơ bản về ràng buộc.
Trong hệ quản trị cơ sở dữ liệu thì các ràng buộc vô cùng quan trọng và người thiết kếphải nắm rõ các khái niệm của nó trong quá trình thiết kế để nhằm thiết kế tối ưu cho
cơ sở dữ liệu Sau là một số định nghĩa và quy định:
Constrains còn gọi là ràng buộc Nó dùng để kiểm tra khi có sự biến đổi từ phía dữliệu như thêm, xoá, cập nhật từ bất kỳ một nguồn nào khác nhau chẳng hạn dochương trình C++, Visual Basic, Java, … truy cập đến cơ sở dữ liệu
Một bảng có thay đổi về lượng và chất của dữ liệu phải theo một qui định nhất địnhnào đó nhằm bảo toàn được tính ràng buộc trọn vẹn đối với dữ liệu đang tồn tạitrong những bảng có quan hệ với nhau
Client Applica tion
Server
Client Applic
ation
Trang 8 Mỗi khi có hành động thay đổi dữ liệu xảy ra, quá trình kiểm tra các ràng buộcđược thực hiện như một phương thức rà soát tất cả các điều kiện và qui luật đượcthiết lập khi xây dựng cơ sở dữ liệu.
2.1.2.2 Các loại ràng buộc
Các loại ràng buộc được chia ra làm các mức cao và thấp:
Ở mức cao bao gồm:
- Ràng buộc miền – Domain Constraints
- Ràng buộc thực thể - Entity Constraints
- Ràng buộc dữ liệu toàn vẹn
Ở mức đặc thù:
- Ràng buộc khoá chính - Primary Key constraints
- Ràng buộc khoá ngoại - Foreign Key constraints
- Ràng buộc duy nhất – Unique constraints
- Ràng buộc kiểm tra - Check constraints
- Ràng buộc mặc nhiên - Default constraints
- Ràng buộc theo qui tắc hay qui luật – Rules
2.1.3 Bảng ảo (Views)
Là một thành phần quan trọng trong thiết kế cơ sở dữ liệu :
Sử dụng view như là một đối tượng trong SQL Server Nếu sử dụng phát biểu SQL,khi truy vấn trực tuyến sẽ không cho phép bạn lưu trữ cấu trúc phát biểu SQL như
là một đối tượng của SQL Server
Mục đích sử dụng view
- Hạn chế tính phức tạp của dữ liệu đến với người sử dụng
- Kết nỗi dữ liệu từ nhiều bảng lại với nhau
- Sử dụng tài nguyên Server để thực hiện việc truy vấn
- Tạo ra một bảng ảo có dữ liệu như yêu cầu
- Kết hợp một số hàm với phương thức tạo ra các cột mới
- Khi cần thiết có những câu lệnh SQL dùng cho trong quá trình viết chương trìnhtrên các platform khác như Visual Basic, Java,… bạn có thể dùng View để tạo racâu lệnh SQL theo như ý mình, sau đó copy sang ứng dụng để sử dụng
2.1.4 Thủ tục thường trú (Stored Procedure)
Stored Procedure là một đối tượng xây dựng bởi những phát biểu của SQL Server
và TSQL
Stored Procedure bao gồm hai loại là Stored Procedure do người dùng định nghĩa
và Stored Procedure hệ thống Stored Procedure được lữu trữ như một phần của
cơ sở dữ liệu, cấu trúc của chúng như một văn bản Mỗi khi muốn thực thi chúngchỉ cần goi chúng tương tự như gọi thực thi thủ tục hoặc hàm
2.1.5 Bẫy lỗi (Triggers)
Trigger gồm một đoạn mã được gắn vào bảng dữ liệu, chúng tự động thực thi cómột sự kiện xảy ra tương ứng với trigger được gán với sự kiện đó
Một vài ứng dụng thông thường của trigger:
- Referential Integrity
Trang 92.1.6 Bảo mật trong hệ thống SQL Server
Hệ quản trị cơ sở dữ liệu SQL server có ưu điểm rất mạnh về tính an toàn và bảo mật so vớicác hệ quản trị cơ sở dữ lieu khác:
SQL Server cung cấp một hệ thống bảo mật khá cao, gồm nhiều mức, và cho phépdùng nhiều phương thức bảo mật khác nhau như bảo mật theo quyền sử dụngWindows
SQL Server có thể phân quyền cho người dùng hoàn toàn độc lập với hệ điều hành,theo cách này thì những tài khoản được cấp quyền mới có thể thao tác trên cơ sở dữliệu và những quyền đó cũng được giới hạn theo từng nhóm quyến
2.2 Giới thiệu ngôn ngữ lập trình Visual Basic
Visual Basic là ngôn ngữ lập trình được sử dụng thực hiện xây dựng chương trình
Là một ngôn ngữ trực quan, được thiết kế dễ dàng trên môi trường Window
Các ưu điểm của Visual Basic:
Tiết kiệm được thời gian và công sức với một số ngôn ngữ lập trình có cấu trúc vìbạn có thể thiết lập các hoạt động trên từng đối tượng được VB cung cấp
Khi thiết kế có thể thấy ngay các kết quả theo từng thao tác và giao diện khi thihành chương trình
Cho phép chỉnh sửa dễ dàng, đơn giản
Có thể phát triển những chương trình quản lý rất mạnh, kết nối với nhiều hệ quảntrị cơ sở dữ liệu
Có khả năng kết hợp với những thư viện liên kết động, làm sản sinh nhiều tínhnăng mới bởi các thư viện liên kết động là rất phong phú
Có thể tận dụng một số OCX đã được hỗ trợ sẵn được cung cấp bởi rất nhiềunguồn Đó là những công cụ tiện lợi và nhanh chóng, đồng thời lại rất dễ dàng sửdụng
Trong toàn bộ chương đã giới thiệu qua về 2 công cụ chính để thiết kế và xây dựng hệthống Đó là hệ quản trị cơ sở dữ liệu SQL server 2000 và ngôn ngữ lập trình trực quanVisual Basic 6.0
Trang 10CHƯƠNG 3 PHÂN TÍCH, THIẾT KẾ CƠ SỞ DỮ LIỆU 3.1 Khảo sát một số cửa hàng tổng hợp và siêu thị vừa và nhỏ
3.1.1 Một số siêu thị, cửa hàng đã sử dụng phần mềm quản lý
Qua việc khảo sát và tìm hiệu trên thực tế của một số cửa hàng, siêu thị vừa và nhỏ
Trong bán lẻ, do phầm mềm có áp dụng nhưng tích hợp chưa tốt viêc ứng dụngcông nghệ đọc mã vạch, mã từ nên đôi khi gây khó khăn và chậm trễ trong việc bán sảnphẩm của nhân viên bán hàng
Siêu thị có hệ thống máy tính và mạng LAN nên đòi hỏi phải có một phần mềmquản lý bán hàng xử lý hiệu quả trong việc truyền dữ liệu máy server và máy client
3.1.2 Các siêu thị nhỏ và cửa hàng tổng hợp chưa sử dụng phần mềm
Với một số cửa hàng tổng hợp quy mô nhỏ, siêu thị nhỏ em thấy:
Chưa sử dụng phần mềm trong công tác quản lý và bán hàng
Gặp nhiều khó khăn trong kiểm kê hàng, chuyển kho hàng
Thường xuyên xảy ra hiện tượng lẫn lộn hàng hóa
3.2 Đánh giá hiện trạng chung qua việc khảo sát thực tế
Trong những năm gần đây, do nhu cầu tiêu dùng của người dân tăng cao, các siêuthị và các cửa hàng phát triển nhanh chóng với nhiều mặt hàng vô cùng đa dạng và phongphú Nhưng hiện nay các siêu thị, đặc biệt là các cửa hàng còn quản lý thủ công phân tán
Hiện nay siêu thị hay các cửa hàng phải trực tiếp quản lý một số lượng hàng rất lớn,lưu lượng xuất nhập kho của mặt hàng, lượng hàng bán ra cúng như tình hình mua bánhàng của siêu thị hay cửa hàng, từ đó để có chiến lược kinh doanh có hiệu quả
Hiện nay tốc độ tăng trưởng ngày càng nhanh của kinh tế, xã hội, văn hoá làm chothị trường kinh doanh cũng thay đổi theo, đòi hỏi cao hơn trong công tác quản lý kinhdoanh, bán hàng của các siêu thị và cửa hàng Do đó để phù hợp với hoàn cảnh mới việchiện đại hoá cũng như hiện đại hoá trong công tác quản lý kinh doanh là điều cần thiết đốivới các cửa hàng và siêu thị
Mặt khác công tác quản lý hoạt động kinh doanh hàng hoá mà chủ yếu là công tác
Trang 11lập kế hoạch hợp lý cho kế hoạch kinh doanh Đây là kho dữ liệu lớn, không thể lưu trữmột cách thủ công như trước mà phải sử dụng máy tính lưu trữ là hiệu quả nhất và khoahọc nhất Ngoài ra việc quản lý này sẽ đáp ứng cho việc tìm kiếm thông tin một mặt hàngnhanh chóng và hiệu quả.
Với chương trình “QUẢN LÝ BÁN HÀNG” này sẽ đáp ứng được các yêu cầu của
các nội dung trên và hỗ trợ cho công tác quản lý đạt hiệu quả cao Ngoài ra chương trìnhđược viết trên mội trường Windows nên tận dụng được khả năng đồ hoạ, có giao diện đẹp,thân thiện với người dùng
3.3 Phân tích hệ thống và chức năng
3.3.1 Yêu cầu của hệ thống “Quản lý bán hàng”
Việc mua bán hàng là một việc rất quen thuộc đối với mọi người, nên các yêu cầu,của hệ thống bán hàng cũng rất dễ được hình dung Nhưng để những yêu cầu thực sự trởthành yêu cầu cho việc phân tích thiết kế một hệ bán hàng, thì nó phải rõ ràng, không trùnglặp, diễn tả được các mục đích của hệ thống
Các yêu cầu của người sử dụng xây dựng một hệ thống quản lý bán hàng gồm:
Hệ thống phải quản lý nhân viên bán hàng, các mặt hàng
Đối với mỗi phiên bán hàng, phải biết tính tiền, trừ bớt hàng hóa trong kho, in hóađơn nếu cần
Hệ thống phải cho phép cập nhật hàng hóa, cũng như thay đổi các nhân sự nhânviên
Hệ thống cho cập nhật các tỷ giá hối đoái để có nhiều cách thức thanh toán khácnhau
Hệ thống phải hoạch toán được lãi xuất hàng tháng, tính thuế
Hệ thống quản lý hàng hóa theo bảng mã vạch
Hệ thống phải quản lý luân chuyển hàng hóa trong kho, kiểm kê hàng hóa trongkho và cảnh báo khi hàng đó đã không còn hàng tồn trong kho hoặc hàng tồn đãvượt quá mức cho phép
Xây dựng một hệ thống báo cáo đầy đủ và toàn diện
Dựa trên các yêu cầu này chúng ta xây dựng bài toán như sau:
“Một siêu thị hay một cửa hàng, muốn xây dựng Hệ thống phần mềm phục vụ
và quản lý hoạt động kinh doanh Hệ thống cần phải ghi nhận các hoạt động nhập hàng, bán hàng và xử lý các công việc thanh toán với khách hàng, chủ yếu khách hàng mua lẻ Ngoài ra hệ thống còn giúp Người quản lý theo dõi được các hoạt động kinh doanh, tự động kiểm kê các mặt hàng tồn đọng trong kho, các mặt hàng bán chạy, v.v.
để hỗ trợ ra quyết định trong các hoạt động kinh doanh, hỗ trợ Người quản lý quản lý nhân viên bán hàng Trong cửa hàng đã có các thiết bị phần cứng như: máy tính, máy đọc mã vạch, mã từ và phần mềm hệ thống để chạy hệ thống sẽ được xây dựng”.
Nhiệm vụ của Hệ thống quản lý bán hàng
Quản lý nhân viên bán hàng : Mỗi nhân viên bán hàng đều có mật khẩu khi đăngnhập chương trình, do đó ta có thể dễ dàng biết được ai đã thực hiện phiên bánhàng
Trang 12 Quản lý hàng hóa gồm: Tên hàng, Mã hàng, Loại hàng, Mô tả hàng, Ngày sản xuất,Ngày nhập kho, Số lượng còn, Số lượng đã bán, Giá nhập, Giá bán.
Tự động hoá việc bán hàng, tính tiền cho khách hàng, đáp ứng mọi yêu cầu củakhách hàng
Thanh toán với khách hàng bằng các phương thức: tiền mặt
Phân tích, xử lý các kết quả bán hàng nhanh và chính xác để hỗ trợ quyết địnhtrong các hoạt động kinh doanh
Thực hiện tự động kiểm kê các mặt hàng trong kho, theo dõi được những mặt hàngbán chạy, những mặt hàng tồn kho để có được những quyết định kịp thời trongkinh doanh
Trên cơ sở định nghĩa bài toán, và các nhiệm vụ của hệ thống bắt đầu phân tích, cácyêu cầu, các thành phần, các công cụ, chức năng cần thiết cho hệ thống
3.3.2 Phân tích các chức năng của hệ thống quản lý và bán hàng
3.3.2.1 Phân tích
Trên cơ sở đề ra các nhiệm vụ của hệ thống, khảo sát các siêu thị và các cửa hàng,nghiên cứu các sổ kế toán, tài liệu, trao đổi với người bán hàng, ta xây dựng các chứcnăng cho hệ thống, chia làm hai loại:
Loại hiển là những chức năng mà người sử dụng có thể nhận biết, theo dõi đượchoạt động của chúng.Chúng ta có thể dễ dàng thấy được hoạt động của cácchức năng này của hệ thống diễn ra
Loại ẩn là những chức năng mà người sử dụng không theo dõi được, thường lànhững chức năng kỹ thuật bên trong hệ thống.Không thể hiện ra ngoài.Nhưngthực tế các chức năng này hoạt động bên trong hệ thống và tạo ra những kết quả
có thể là phụ trợ hoặc là trực tiếp cho kết quả
Bảng 3.1: Các chức năng của chương trình
R1.1 Người bán hàng (cashier) phải login để khởi động hệ thống (cho
biết tên ID và password) để sử dụng hệ thống
Hiển
R1.2 Nhập các thông tin về các mặt hàng qua mã vạch bằng máy đọc
mã vạch hoặc nhập mã sản phẩm (UPC – Universal Product Code)trực tiếp từ bàn phím
Hiển
R1.3 Ghi nhận các mặt hàng ở trong giỏ hàng mà khách hàng đã chọn HiểnR1.4 Tính tổng số tiền bán cho khách hàng đang mua HiểnR1.5 Hiển thị các thông tin mô tả và giá bán các mặt hàng để khách
hàng có thể theo dõi được
HiểnR1.6 Cập nhật, trừ bớt số lượng đã bán sau từng phiên bán hàng Ẩn
Trang 13R1.9 Cung cấp cơ chế trao đổi giữa các tiến trình, trao đổi thông tin
giữa các hệ thống với nhau
Ẩn
Bảng 3.2: Những chức năng thực hiện thanh toán
R2.1 Thu tiền mặt, nhập số tiền khách đưa và tính số dư phải trả lại cho
khách hàng
Hiển
Bảng 3.3: Những chức năng quản lý hàng hóa
R3.1 Quản lý nhập hàng, nhập mã hàng, tên hàng, các mô tả, giá nhập,
giá bán, các chính sách khuyến mãi
Hiển
R3.2 Trao đổi các thông tin về hàng trong kho, trong khi bán ẨnR3.3 Hoạch toán hàng tháng lãi, lỗ, thuế đối với từng mặt hàng Hiển
Bảng 3.4: Những chức năng quản lý kho hàng
R4.1 Quản lý và luân chuyển hàng hóa giữa các kho hàng HiểnR4.2 Cho phép định hàng tồn tối thiểu, hủy hàng trong kho khi cần HiểnR4.3 Kiểm kê hàng hóa trong kho và tìm hàng tồn kho Hiển
3.3.2.2 Một số lưu đồ thuật toán mô tả một số chức năng
Các lưu đồ thuật toán sau đây mô tả thuật toán hoạt động của một số chức năng điển hình:
Hình 3.1: Quy tắc đăng nhập hệ thống
ID và mật khẩu của người dùng Start
Trang 14Mô tả: Quy trình được mô tả sơ bộ như sau: khi một user muốn sử dụng hệ thống thì họ
phải đăng nhập gồm 2 thông tin: Username và Password Khi hoàn thành thủ tục hệ thống
sẽ kiểm tra xem User này có trong hệ thống không Nếu không đúng thì báo sai và bắt nhậplại Còn nếu hệ thống so sánh thấy đúng thì chấp nhận và mở hệ thống với các chức năng
sử dụng ( có sự phân quyền)
Hình 3.2: Quá trình bán hàng (mã vạch)
Mô tả: Lưu đồ thuật toán được mô tả sơ bộ như sau: tại các gian hàng khi tiến hành bán
hàng ( có thể dùng máy quét mã vạch) thì khi thanh toán nhân viên bán hàng chỉ việc quéthay gõ mã số mặt hàng vào hệ thống, hệ thống sẽ so sánh và tìm trong cơ sở dữ liệu có tồntại mặt hàng đó chưa Nếu chưa tồn tại mặt hàng đó trong hệ thống thì hệ thống sẽ báo lỗi (
Start
Mã mặt hàng
So sánh với hàng hóa
Hiển thị kết quả ra màn hình thông tin, giá cả
End
Báo lỗi không tồn tại
Cho qua và sử dụng End
Trang 15này chỉ xuất hiện khi xảy ra lỗi cập nhật hoặc là mặt hàng đó đã bị bán quản lý loại ra khỏi
hệ thống nhưng thực tế vẫn còn tồn tại trong gian hàng Còn nếu mặt hàng là có tồn tại thì
nó sẽ hiển thị đầy đủ thông tin về các mặt hàng Chủ yếu là đáp ứng một phiên thanh toáncủa khách hàng Thực ra có 2 cách nhập mã hàng: nếu như dùng máy quét mã vạch ( đượccắm qua cổng PS2 là loại máy thông dụng ) Hoặc là có thể gõ trực tiếp từ bàn phím
Hình 3.3: Kiểm kê hàng hóa trong kho và tồn kho
Mô tả: Lưu đồ thuật toán có thể được diễn giải sơ bộ như sau: khi tiến hành kiêm kê hàng
hóa nào đó, trước tiên là có mã hàng hóa.Khi có mã hàng hóa và gõ vào hệ thống kiểm tra
Hệ thống sẽ tìm và liệt kê các thông số cần thiết về mặt hàng Đa phần tiến hành kiểm kêhàng hóa của một công ty, siêu thị hay cửa hàng tổng hợp do chủng loại và số lượng mặthàng hết sức đa dạng và phong phú , hơn nữa các mặt hàng lại đặt ở các kho khác nhau,hoặc có thể là chung một kho nhưng ở các vị trí quy định nên việc kiểm kê thực tế với hệthống có khoản sai lệch và nhầm lẫn hay mất hàng Điều này chủ yếu kiểm tra xem so vớithực tế và hệ thống có sự chênh lệch nhau là bao nhiêu Thuât toán này sẽ phục vụ chủ yếutrong các báo cáo tiến hành kiểm kê tồn kho mặt hàng và giám sát các mặt hàng trong khocủa các nhân viên quản lý trực tiếp, hay là kiểm toán mỗi khi đánh giá tình hình của khohàng
Hình 3.4: Tiến hành chuyển kho hàng
Start
Đưa ra số lượng và chi tiết mặt hàng cần kiểm kê
Kiểm tra hệ thống kho hàng
Mã mặt hàng
End Start
Tiến hành chuyển: số lượng ,vị trí
Xác nhận hợp lệ Mặt hàng cần chuyển và số kho
Trang 16Mô tả: Lưu đồ thuật toán có thể được mô tả sơ bộ như sau: khi có yêu cầu tiến hành
chuyển kho hàng ( tức là chuyển chỗ lưu chữ mặt hàng đó từ kho này sang kho khác) thìchúng ta phải xác định danh sách mặt hàng cần chuyển và số kho(mã kho) mà nó cầnchuyển tới Xác nhận của hệ thống là hợp lệ của mặt hàng và kho việc tiến hành chuyểnkho trong hệ thống được tiến hành( đó là sự thay đổi về thông tin cá nhân về các mặt hàng
mà thôi) Nếu mà xác nhận về các điều kiện để tiến hành chuyển kho mà không đúng,không hợp lệ thì việc chuyển sẽ báo thất bại và bắt bạn nhập vào mặt hàng khác cầnchuyển Nhìn chung là lưu đồ thuật toán này chỉ nhằm xác nhận và thay đổi thông tin, nócũng giống như một hình thức cập nhật lại dữ liệu ( update dữ liệu) tức là chính sửa thôngtin về sản phẩm mà thôi
Hình 3.5: Quy trình nhập hàng
Start
Trang 17Đúng
Sai
Mô tả: Có thể mô tả sơ bộ lưu đồ thuật toán như sau: Quá trình nhập hàng được tiến hành,
hệ thống sẽ xác nhận xem mặt hàng này đã tồn tại chưa, nếu chưa tồn tại thì hệ thống bắtphải tạo mới về thông tin sản phẩm với các thông tin đầy đủ về hàng hóa Nếu xác nhận là
có tồn tại thì sẽ tiến hành các thao tác nhập hàng vào hệ thống: trên thực tế thì nhập hàng gì
và nhập như thế nào là tùy thuộc vào điều kiện và cách thức quản lý riêng Nếu mà sau khinhập xong một mặt hàng và xác nhận có nhập tiếp hay không, nếu có nhập tiếp thì quay lạiban đầu, nếu không nhập tiếp thì kết thúc
3.3.3 Phân tích và đặc tả các yêu cầu của hệ thống
3.3.3.1 Hoạt động của hệ thống
Để tiện cho quá trình phân tích, và đồng thời cũng để mô tả chi tiết hệ thống chúng
ta chia hệ thống thành các gói nhỏ
Gói quản lý đăng nhập hệ thống
Hành động của các tác nhân Hành động của Hệ thống
1 Người quản lý đăng nhập
2 Hệ thống kiểm tra tên và mật khẩu có hợp
lý không
Bảng 3.3.3.1: Gói quản lý đăng nhập hệ thống
Hành động của các tác nhân Hành động của Hệ thống
1 Người quản lý đăng nhập
2 Hệ thống kiểm tra tên và mật khẩu có hợp
Trang 183 Người quản lý, thêm, bớt, sửa chữa
Bảng 3.3.1.2: Gói quản lý hàng
Gói bán hàng, quản lý phiên bán hàng.
1 Khách hàng sau khi chọn đủ số hàng cần thiết thì đưa
hàng đã chọn đến cho quầy thu tiền
2 Người bán ghi nhận từng mặt hàng Nếu một mặt hàng
mua với số lượng nhiều hơn thì người bán nhập vào số
lượng đó vào từ bàn phím
3 Xác định giá và các thông tin
về sản phẩm được hiển thị
4 Khi đã nhập xong các mặt hàng của khách đã chọn mua
thì người bán phải chỉ cho hệ HBH biết là đã kết thúc
phiên bán hàng bằng cách nhấn phím Enter hoặc nhấn
nút “Kết thúc” phiên bán hàng ( EndSale).
5 Tính và hiển thị tổng số tiềnbán hàng
6 Người bán thông báo cho khách hàng biết tổng số tiền
phải trả
7 Khách hàng chọn phương thức thanh toán:
Thanh toán bằng tiền mặt hoặc có thể trả sau
8 Hiển thị số tiền dư phải trảcho khách hàng
9 Kết thúc một phiên giao dịchbán hàng
Trang 1911 Phát sinh phiếu bán hàng (hoáđơn).
12 Người bán trả tiền thừa và đưa phiếu bán hàng cho
khách hàng
13 Khách hàng ra khỏi cửa hàng với hàng đã thanh toán (nếu
khách hàng chưa thanh toán, hê thống ghi nợ)
Bảng 3.3.1.3: Gói bán hàng và quản lý phiên bán hàng 3.3.3.2 Tác nhân
Có 3 tác nhân chính là
Người bán hàng : là các nhân viên bán hàng
Khách hàng : là khách hàng mua buôn hay mua lẻ
Quản trị hệ thống : là người có toàn quyền quản trị các chức năng của hệthống.Đây là người có quyền cao nhất trong hệ thống
Mô tả: Khách hàng sau khi đã chọn đủ các mặt hàng cần mua để ở trong giỏ hàng thì đưa
hàng đến quầy thu tiền Người bán hàng lần lượt ghi nhận các mặt hàng tronggiỏ hàng của khách và thu tiền Sau khi thanh toán xong khách hàng được mang
số hàng đã mua đi ra khỏi cửa hàng
Tham chiếu tới: Các chức năng R1.1, R1.2,2 R1.3, R1.6, R1.7, R1.8, R2.1, R2.2, R2.3.
Người bán nhận tiền mặt rồi thanh toán tiền thừa cho khách hàng
Tham chiếu tới: Các chức năng R1.1, R1.2,2 R1.3, R1.9, R2.1, R2.2, R2.3.
3.3.4.3 Ca sử dụng : Khởi động
Trang 20Tác nhân : Người quản trị hệ thống
Mô tả : Người quản trị hệ thống quản lý các mặt hàng gồm: Tên hàng, mã hàng, số
hàng hiện có trong kho, v.v… cho phép sửa đổi cập nhật thông tin về các mặt hàng
Nhập hàng
Nhà cung cấp Người quản lý
Quản lý nhân viên và User
Trang 21Hình 3.7: Ca sử dụng của gói bán hàng
Hình 3.8: Biểu đồ ca sử dụng của gói nhập hàng
3.3.6 Biểu đồ lớp
Thanh toán tiền mặt
Thanh toán sau
Trang 223.3.6.1 Các đại biểu lớp của hệ thống bán hàng
MatHang; PhienBanHang; DongBanHang; ThanhToan; MoTaMatHang;KhachHang; DanhMucMatHang; NguoiBan; NguoiQL; HBH; SieuThi
3.3.6.2 Mối quan hệ giữa các lớp đối tượng
DongBanHang – PhienBanHang
MoTaMatHang- DanhMucMatHang
NguoiBan- HBH; KhachHang-HBH; NguoiQL – HBH
DongBanHang- MatHang; MoTaMatHang-MatHang
Trang 23Hình 3.10: Biểu đồ lớp nhập hàng
3.3.7 Biểu đồ trạng thái của hoạt động nhập hàng
Các hoạt động chi tiết của việc nhập hàng được mô tả trong biểu đồ trạng thái sau: Đầu tiên, hệ thống ở trạng thái ban đầu (initial state), khi thực hiện việc đăng nhập
hệ thống xong hệ thống sẽ chuyển sang trạng thái chờ để nhập hàng, nó được thể hiện quagiao diện người dùng là một màn hình gồm các hộp thoại nhập mã mặt hàng, số lượng.Tiếp đó, nếu nhập mặt hàng vào thì hệ thống sẽ hỏi có nhập tiếp hay không? Khi kết thúcnhập hàng thì hệ thống sẽ chuyển sang trạng thái chờ thanh toán Đến đây, nếu chọnphương thức thanh toán bằng tiền mặt thì hệ thống sẽ trở về trạng thái nhập hàng Nếu việcthanh toán vẫn còn nợ thì hệ thống sẽ chuyển sang trai thái cập nhật nợ để cập nhập lại số
nợ đối với nhà cung cấp này Và sau đó cũng chuyển về trạng thái chờ ban đầu Nhìnchung biểu đồ trạng thái này giúp hình dung ra trạng thái tiến hành nhập hàng được diễn ranhư thế nào, chúng ta có thể thấy rõ ràng được một sản phẩm được đưa vào hệ thống phảitrai qua các quá trình và tác động nào từ các điều kiện, thành phần, hay yếu tố từ vấn đề hệthống, đến các vấn đề về nhân viên thực hiện công việc này
et
Phiên nhập +1
+1 Được cung cấp bởi
Kiểm duyệt nhập
Mặt hàng +1
Trang 24Hình 3.11: Trạng thái hoạt động của quá trình đăng nhập
3.3.8 Một số biểu đồ trình tự của hệ thống
Mỗi biểu đồ ca sử dụng có một biểu đồ trình tự tương ứng với nó Trong mục này,
em xin nêu chi tiết biểu đồ trình tự mô tả hoạt động nhập hàng của hệ thống Đầu tiên,người quản lý khởi động hệ thống và hệ thống sẽ hiện thị ra giao diện mời gọi đăng nhập,người quản lý nhập Username và Password và submit Nếu Username và Password đúngthì hệ thống sẽ hiển thị giao diện để nhập hàng Khi người quản lý nhập mã mặt hàng, thì
hệ thống sẽ truyền một thông điệp sang bộ phận kiểm duyệt Bộ phận kiểm duyệt sẽ kiểmtra và trả lời kết quả cho hệ thống Hệ thống sẽ thể hiện đồng ý hay không cho người quan
lý biết Nếu đồng ý thì sẽ có một giao diện đồng ý và đồng thời cũng hiển thị một hộp thoại
để thực hiện việc thanh toán Sau khi người quản lý chọn thanh toán thì hệ thống sẽ hiểnthị tổng số tiền cần thanh toán và các phương thức thanh toán bằng tiền mặt Tuỳ từngphương thức thanh toán mà hệ thống sẽ hiển thị từng giao diện thanh toán khác nhau
Các trình tự chi tiết của các hoạt động của hệ thống được phân tích một cách tương
tự và được thể hiện ở các hình phía sau:
ChoThanh Toán
Cập nhật
Nhập các mặt hàng
Nhập tiếp
Ket thúc nhập Bằng tiền mặt
Con Nợ
Về trạng thái chờ
Trang 25Hình 3.12: Biểu đồ trình tự mô tả hoạt động nhập hàng
Khởi động() Mời nhập
Giáo diện Nhập hàng( ms,sl) Yêu cầu kiểm tra
Trả lồi kiểm tra Hiển thị đồng ý
Thanh toán(sotien)
Thanh toán(sotien) Tổng tiền() Tiền thừa
Chọn cách thanh toán()
Hình 3.13: Biểu đồ trình tự mô tả hoạt động bán hàng
Trang 26Từ quá trình phân tích ở trên ta đưa ra các sơ đồ của hệ thống quản lý bán hàng được mô tảchi tiết bằng sơ đồ ngữ cảnh Thể hiện tất cả các tác động vào hệ thống, từ những điềukiện cụ thể và chi tiết, những điều kiện của các yếu tố sẽ có tác động vào hệ thống và tạonên các yêu cầu trong quá trình thiết kế Một số đối tượng tác động chính vào hệ thống “
Quản Lý Bán Hàng”: Bộ phận nghiệp vụ là các bộ phận phòng ban tiến hành sử dụng dưới
dạng các user được quản lý hay những bộ phận quản lý trực tiếp tới hệ thống Nhìn chung
là các bộ phận sử dụng và khai thác hệ thống Quản lý là những yêu cầu quản lý đặt ra cho
hệ thống, chẳng hạn như một số quy định làm báo cáo của ban giám đốc, của ban điều
hành v.v Khách hàng sẽ tham gia mua bán và là một tác nhân hoạt động của hệ thống Nhà cung cấp sẽ quyết định tới đầu vào của hệ thống.
Thống kê sự tác động qua lại “Bộ phận nghiệp vụ” với “Hệ thống”
Yêu cầu thông tin về mặt hàng, loại hàng, nước sản xuất
- Thông tin về mặt hàng, loại mặt hàng, nước sản xuất
- Yêu cầu lập hợp đồng mua hàng
- Yêu cầu lập hóa đơn mua hàng
- Thông tin về kho nhập vào
- Thông tin về những hóa đơn cần thanh toán
- Yêu cầu về thông tin đối tác
- Yêu cầu về kho hàng quầy hàng
- Yêu cầu lập chứng từ về xuất hàng
- Yêu cầu về thống kê tình hình mua hàng
- Yêu cầu về tình hình xuất nhập
- Yêu cầu về thông kê hàng tồn
- Yêu cầu về thống kê hàng tồn ở mức cảnh báo
- Bảng thông kê hàng tồn ở mức cảnh báo
- Yêu cầu về thống kê doanh thu
- Yêu cầu chi tiết hóa đơn
- Yêu cầu về thống kê cộng nợ
- Bảng thông kê doanh thu
- Bảng thông kê công nơ
Thông kê tác động qua lại “Quản lý” và “ Hệ thống”: được mô tả chi tiết dưới hìnhbên
Thông kê qua lại “Khách hàng” và “Hệ thống”được mô tả chi tiết hình trang bên
Thống kê qua lại “Nhà cung cấp” và “Hệ thống” được mô tả chi tiết dưới hình bên
Trang 29Thông tin Thông tin
Thông tin nhà cung cấp
Hình 3.16: Sơ đồ mức 1 chức năng 1 ( Level 1, function 1)
Mô tả: Sơ đồ mức 1 chức năng 1: đi sâu vào phân tích các chức năng nhỏ hơn của chức
năng chính 1: sẽ được chia ra làm 4 chức năng thành phần bên trong của nó đó là 1.1, 1.2,1.3, 1.4 với các yếu tố tác động đến các chức năng này gồm có người sử dụng, người quản
lý, nhà cung cấp và vơi 2 kho dữ liệu thông tin là thông tin nhà cung cấp, thông tin củamặt hàng.Khi mà người quản lý có yêu cầu tác động vào chức năng 1.1 và 1.2 Chức năng1.1 sau khi nhân được tác động này sẽ truy cập vào kho dữ liệu và lấy thông tin và tiếnthực hiện chức năng của nó Khi người quản lý tác động vào chức năng 1.4 thì chức năngnày sẽ thực hiện và cho ra kết quả Nhà cung cấp khi tiến hành bán hàng hệ thống sẽ nhậnđược thông tin từ nhà cung cấp và công việc phải tiến hành Hệ thông ( chức năng 1.3) sẽtruy cập thông tin vào kho dữ liệu và thanh toán Đồng thời giữa các chức năng cũng có sựtác động và liên quan tới nhau: chức năng 1.4 và chức năng 1.2 1.3 với 1.2
Sơ đồ mức 1 chức năng 2 (Level 1, funtion 2)
1 3
Thanh toán nhập hàng
1 4
Báo cáo nhập hàng
Nhà cung cấp Người quản lý
2 1
Bán lẻ, bán buôn
2 3
Cho nợ bán lẻ, bán buôn
2 2
Thanh toán bán lẻ,buôn
2 4
Báo cáo bán hàng Đại lý bán buôn
Trang 30Hình 3.17: sơ đồ chức năng 2 mức 1 ( level 1, funtion 2)
Mô tả: Sơ đồ mức 1 chức năng 2 đi sâu vào chức năng 2 của mức 1 vơi các thành phần tác
động bên ngoài: đại lý bán buôn, khách hàng lẻ, người quản lý Các kho thông tin: thôngtin đại lý Người quản lý tác động tới chức năng 2.4 Khách lẻ tác động tới 2.2 trên hình vẽ
ta có 3 tác động giữa khách lẻ và chức năng 2.2.Và các tác động khác giữa các yêu tố đếncác chức năng nhỏ của chức năng 2 Sơ đồ cũng chỉ ra rằng trong chức năng 2 có 4 chứcnăng nhỏ hơn nó tạo thành một chức năng 2 Cách thức chia như vậy để trong quá trìnhthiết kế sẽ tạo ra được một cấu trúc dữ liệu để khi tiến hành xây dựng chương trình sẽ tránhxảy ra lỗi
Sơ đồ mức 1 chức năng 3 ( Level 1, Funtion 3)
Hình 3.18: Sơ đồ mức 1 chức năng 3
Người quản lý Khách hàng lẻ
3 1
Cập nhật kho hàng
3 5
Báo cáo kho hàng
3 2
Chuyển kho hàng
3 4
Quản lý hàng tồn kho
3 3
Hủy hàng trong kho
Người quản lý
Người sử dụng
Trang 31Thông tin user
Sơ đồ mức 1 chức năng 4( Level 1, funtion 4)
Hình 3.19: sở đồ mức 1 chức năng 4
Mô tả: Sơ đồ mức 1 chức năng 4 gồm 3 thành phần chức năng nhỏ:
“4.1”: Tạo người dùng (thiết lập và tạo một người sử dụng hệ thống mới và có sự phânquyền của người quản lý hệ thống
“4.2”: Đổi mật khẩu và tên truy cập (giúp đảm bảo tính riêng tư và an toàn cho mỗi người
sử dụng, tránh hiện tượng vào trộm, xem trộm Thường theo nguyên tắc quản lý thì ngườiquản lý hệ thống phải có trách nhiệm quy định việc đổi mật khẩu thường xuyên và có xácnhận của người dùng
“4.3”: Đăng nhập hệ thống ( chức năng kiểm tra và xác nhận thông tin người sử dụng khiđăng nhập
Các nhân tố : người sử dụng, ở đây người sử dụng có thể yêu cầu tạo tên và mật khẩu truycập mới nếu được sự cho phép của người quản trị và chức năng này là do người quản trịchịu trách nhiệm Vấn để đổi mật khẩu thì người dùng có thể thực hiện một cách thườngxuyên để đảm bảo tính riêng tư của hệ thống, nhưng mà dù cho người sử dụng có đổi mậtkhẩu hay user thì người quản trị hệ thống vẫn lắm được thông tin mật khẩu và người dùng
để tránh hiện tượng người sử dụng quên mật khẩu hay bị hỏng mật khẩu Người quản trị cóthể xóa mật khẩu này đi và cấp mật khẩu và tên mới
SƠ ĐỒ THỰC THỂ
(Một số bảng chính)
4 3
Đăng nhập hệ thống
4 1
Tạo người dùng
4 2
Đổi mật khẩu, tên truy cập
Người sử dụng
Trang 32Hình 3.20: sơ đồ thực thể liên kết
Mô tả: Đây chỉ là một số bảng chính của cơ sở dữ liệu với các relationship Các bảng này
mô tả và lưu trữ một số thông tin cơ bản nhất của hệ thống Các thông tin của bảng nàyđược trình bày tại phần từ điển dữ liệu của chương trình Phần này sẽ giải thích rõ về cácbảng này
Các sơ đồ đã phân tích ở trên đã chỉ rõ các thành phần và chức năng hoạt động của hệthống “ Quản lý và bán hàng” Và các sơ đồ cũng cho thấy được một cái nhìn chi tiết vềhoạt động bên trong của hệ thống, nó gồm các chức năng chính, chức năng nhỏ nằm trongcác chức năng chính nó tác động và hoạt động như thể nào tron hệ thống, hơn nữa còn chothấy ảnh hưởng của các yếu tố bên ngoài, các kho thông tin lưu trữ Tất cả những cái đó làđiều kiện để có thể thiết kế cơ sở dữ liệu một cách tối ưu và toàn vẹn nhất
3.4 Thiết kế cơ sở dữ liệu
Ta chia phần thiết kế cơ sở dữ liệu làm các mảng:
Mảng dữ liệu: Lưu trữ các dữ liện liên quan đến các thuộc tính, ít thay đổi và đượcduy trì…
Mảng hàng hóa: Lưu trữ các mặt hàng, nhập hàng, bán hàng, đặt giá bán…
Mảng bán hàng: Lưu trữ dữ liệu trong từng phiên giao dịch, bán hàng…
Mảng thanh toán và trả hàng: Lưu trữ về các khoản mục thanh toán, trả hàng…
Trang 333.4.1.1 Bảng tblChungLoai: Các chủng loại mặt hàng
Loại
khóa
Tên trường
Kiểu dữ liệu của trường
MaChungLoai: Mã chủng loại mặt hang
TenChungLoai: Tên chủng loại mặt hàng
3.4.1.2 Bảng tblDonVi: Lưu trữ các đơn vị hàng hóa
Loại
khóa
Tên trường
Kiểu dữ liệu của trường
TenDVT: Tên đơn vị tính
3.4.1.3 Bảng tblLoaiKho: Các loại kho hàng hóa
Loại
khóa trường Tên Kiểu dữ liệu của trường dữ liệu Độ dài Trường tự tăng Cho phép null
MaLoai: Mã Loại kho
TenLoai: Tên loại kho
Bảng 3.4.1.4: Bảng đơn vị thanh toán
MaDVTT: Mã đơn vị tính toán (dùng để tính đơn vị tiền tệ)
TenDVTT: Tên đơn vị tính toán
NgayDoi: Ngày quy đổi đơn vị tiền tệ
HeSo: Hệ số quy đổi
3.4.1.5 Bảng tblMucDich: Mục đích chuyển kho
Bảng 3.4.1.3: Bảng loại kho
Trang 34Loại
khóa
Tên trường
Kiểu dữ liệu
Độ dài
dữ liệu
Trường tự tăng
Cho phép null
GhiChu: Những thông tin cần đưa thêm
3.4.1.6 Bảng tblLoaiChiPhi: Danh mục các loại chi phí đi kèm theo bán hàng
Loại
khóa
Tên trường
Kiểu dữ liệu
Độ dài
dữ liệu
Trường tự tăng
Cho phép Null
TenLoaiChiPhi Nvarchar 100
Bảng 3.4.1.6: Bảng các loại chi phí
TenLoaiChiPhi: Tên loại chi phí phát sinh trong quá trình kinh doanh
GhiChu: Nhưng thông tin thêm về loại chi phí
3.4.1.7 Bảng tblDaiLy: Các đại lý của cửa hàng
Loại
khóa
Tên trường
Kiểu dữ liệu
Độ dài dữ liệu
Trường tự tăng
Cho phép null
Bảng 3.4.1.7: Bảng thông tin các đại lý
Bảng này lưu giữ những thuộc tính của các đại lý của cửa hàng như: Tên, địa chỉ, điện thoại, fax, Số nợ, Mã số thuế…
Trang 35khóa
Tên trường
Kiểu dữ liệu
Độ dài
dữ liệu
Trường tự tăng
Cho phép null
TenHang: Tên của mặt hàng
MaChungLoai: Mặt hàng trên thuộc chủng loại nào
Ghichu: chu thích những điều cần thiết
Kiểu dữ liệu
Độ dài
dữ liệu
Trường tự tăng
Cho phép Null
Bảng 3.4.2.2: Lưu trữ thông tin vê nhập hàng
SH_NhapHang: Số hoá đơn nhập hàng
MaNCC: Lưu mã nhà cung cấp
NgayNhap: Ngày nhập hang
NguoiGiao: Người giao hang
TienKM: Số tiền khuyến mại
PhanTramKM: Phần trăm khuyến mại
ThanhTien: Số tiền khi chưa khuyến mại
TongTienSauKM: Tổng số tiền sau khi có khuyến mại
Trang 36 NgaySeThanhToan: Ngày hẹn thanh toán
Có tất cả ở đây là 9 trường dùng để lưu trữ dữ liệu Đây là một bảng khá quan trọng
3.4.2.3 Bảng tblChiTietNhap: Lưu trữ thông tin chi tiết của từng lần nhập hàng
Tương tự như bàn tblNhapHang, nhưng bảng này lưu giữ những thông tin của từng lần nhập hang: MaMucDich (Mục đích nhập), MaKho (Kho nhập vào), SoLuongNhap (Số lượng lần nhập), SH_ChiTietNhap (số hàng chi tiết nhập), MDVT (mã đơn vị tính), DonGiaNhap (đơn giá nhập), Thue (tiền thuế phải trả cho sản phẩm khi nhập hàng vào), TienKM (tiền khuyến mại), PhamTramKM (phần trăm khuyến mại), HangKM ( hàng khuyến mại có thể là khi mua sản phẩm không phải là khuyến mại bằng tiền mà là khuyến mại bằng các mặt hàng khác hoặc mặt hàng tương đương), MaDVTT (mã đơn vị thanh toán), NgayHetHan (ngày hết hạn), Ngayhethangtrahang
Loại
khóa
Tên trường
Kiểu dữ liệu
Kiểu dữ liệu
Độ dài
dữ liệu
Trường tự tăng
Cho phép null
Trang 37FK MaKho Nvarchar 20
Bảng 3.4.2.4: lưu trữ dữ liệu hàng hóa trong các kho
MaHang: Mã của mặt hàng trong kho
SoLuongTon: Số lượng tồn của mặt hàng trong kho
MaKho: Mã kho chứa hàng
3.4.2.5 Bảng tblGiaBan: Lưu trữ dữ liệu về giá bán cho từng mặt hàng
Bảng này lưu trữ giá bán của các mặt hàng Bảng này chứa đầy đủ thông tin về giá cả cùng một số thông tin khác về hàng hóa
Loại
khóa
Tên trường
Kiểu dữ liệu
Độ dài
dữ liệu
Trường tự tăng
Cho phép Null
Bảng 3.4.2.5: Bảng giá bán (lưu trữ giá bán của từng mặt hàng)
Bảng này gồm 15 trường dữ liệu tất cả để tiến hành lưu về giá bán cho các mặt hàng Giábán này có thể bỏ đi, chưa áp dụng, áp dụng khác nhau Và có thể là áp dụng cho mỗi thờiđiểm là khác nhau và sau là giải thích của một số trường dữ liệu đặc trưng cho bảng nàycòn các trường khác đã được giải thích:
GiaBanLe: giá bán lẻ cho khách hàng mua lẻ
GiaBanBuon: Giá bán buôn cho các đại lý
GiaBanLeMin: thiết lập giá bán lẻ nhỏ nhất cho mặt hàng
GiaBanLeMax: Thiết lập giá bán lẻ lớn nhất cho mặt hàng
ChoSuaGiaBanLe: Lưu giữ thông số về việc có cho sửa giá bán không
NgayApDung: Ngày áp dụng giá bán đã đặt
GiaBanBuonMin: Giá bán buôn là nhỏ nhất
GiaBanBuonMax: Giá bán buôn là đắt nhất
3.4.3 Mảng bán hàng
Trang 383.4.3.1 Bảng tblBanBuon: Lưu trữ dữ liệu về bán buôn (theo ngày)
Bảng gồm 10 trường dữ liệu được trình bày ở bảng sau:
Bảng 3.4.3.1: bảng lưu trữ dữ liệu bán buôn
Bảng này lưu trữ 10 trường dữ liệu về thông tin bán buôn Nếu là khách mua buôn vàthường xuyên thì phải lưu trữ đầy đủ thông tin và tạo mã cho các khách hàng này và luônphải có kèm theo những trường khuyến mại vì khách hàng mua buôn là một đối tượngkhách được ưu tiên vì họ mua với số lượng lớn và hàng loạt
SH_BanBuon: Số hoá đơn bán buôn
NgayBanBuon: Ngày bán buôn
MaNhanVien: Mã nhân viên bán
MaDaiLy: Mã đại lý mua
NguoiTraTien: Người trả tiền
ThanhTien: Tổng tiền mua hang
ConNo: Số tiền đại lý còn nợ chưa trả
MaDVTT: giống các bảng trước
SoTienKM: khuyến mãi quy ra tiền
PhanTramKM: khuyến mãi quy ra hàng
Tất cả các trường ở trên là tương đối đầy đủ về thông tin một khách bán buôn Mặc dù điều này còn tùy thuộc vào điều kiện của từng cửa hàng, từng siêu thị khác nhau
3.4.3.2 Bảng tblChiTietBanBuon: Lưu trữ dữ liệu về từng phiên bán buôn
Phiên bán buôn là một trong nhưng phiên cơ bản và quan trọng của hệ thống.
Loại
khóa
Tên trường
Kiểu dữ liệu
Trang 39Bảng 3.4.3.2: Bảng chi tiết bán buôn
Tương tự như bảng tblBanBuon, nhưng bảng này lưu giữ các thông tin chi tiết cho từng lầnbán với các thuộc tính như: SoLuongBanBuon, SoLuongKhuyenMai…
3.4.3.3 Bảng tblBanLe: Lưu trữ liệu về bán lẻ (theo ngày)
Bảng 3.4.3.3: Bảng lưu trữ thông tin bán lẻ
SH_BanLe: Số hoá đơn bán lẻ
NgayBanLe: Ngày bán lẻ
MaNhanVien: Mã nhân viên bán lẻ
MaKhachHang: Mã khách hàng mua
ThanhTien: Tổng tiền mua hang
ConNo: Số tiền khách chưa trả
3.4.3.4 Bảng tblChiTietBanLe: Lưu trữ dữ liệu về từng phiên bán lẻ
Loại
khóa
Tên trường
Kiểu dữ liệu