KHẢO SÁT HIỆN TRẠNG VÀ XÁC LẬP DỰ ÁN
Khảo sát hiện trạng
1.1.1 Nghiệp vụ của hệ thống hiện tại
Để đáp ứng nhu cầu hướng dẫn, kiểm soát và theo dõi các hoạt động xuất, nhập hàng, lưu trữ, tồn kho và lao động trong kho hàng một cách nhanh chóng, tiện lợi và chính xác, việc sử dụng phần mềm quản lý kho hàng là cần thiết để tối ưu hóa quy trình quản lý kho.
Quản lý kho hàng của công ty hiện đang gặp nhiều khó khăn do tính phức tạp và thủ công Mặc dù đã áp dụng công nghệ thông tin, nhưng chỉ dừng lại ở việc sử dụng Excel, khiến cho việc lưu trữ hồ sơ chủ yếu vẫn dựa vào sổ sách và các file trên ổ cứng hoặc USB Nhân viên quản lý kho phải kiểm tra và ghi chép hàng hóa vào sổ, đối chiếu với hóa đơn, sau đó nhập dữ liệu vào Excel, gây tốn thời gian và công sức Khi kiểm tra tồn kho, họ phải tự thống kê số lượng hàng và cập nhật vào file Excel, điều này yêu cầu thực hiện lại mỗi khi cần biết lượng hàng tồn Việc tra cứu thông tin hàng hóa cũng phụ thuộc vào file Excel mới nhất hoặc sổ sách, cho thấy rằng các công việc quản lý kho vẫn chủ yếu dựa vào nhân công.
1.1.2 Nhược điểm của hệ thống hiện tại
Hệ thống quản lý kho hàng hiện tại của công ty đang gặp nhiều vấn đề, bao gồm việc chưa áp dụng công nghệ mới, không đáp ứng đủ yêu cầu về độ chính xác và tính tự động hóa Điều này dẫn đến hiệu quả công việc thấp, tốn nhiều thời gian và gây khó khăn trong việc lưu trữ do tính cồng kềnh.
Hầu hết hồ sơ tài liệu hiện nay được lưu trữ dưới dạng giấy và file trên máy tính, dẫn đến việc số lượng sổ sách và file trở nên rất lớn và cồng kềnh.
Khi nhập hàng thủ công với số lượng lớn, dễ xảy ra ùn tắc và sai sót, đồng thời khó khăn trong việc theo dõi hàng trả từ thị trường Điều này yêu cầu một nguồn nhân lực lớn, ưu tiên có kinh nghiệm, dẫn đến chi phí đầu tư cao Ngoài ra, việc “truy vết” lô hàng bán cho khách hàng gặp nhiều khó khăn và tốn thời gian nếu có yêu cầu kê khai.
Việc điều tra nguyên nhân mất mát hàng hóa, hư hỏng hoặc sự cố trong kho vào ngày thứ tư gặp nhiều khó khăn, dẫn đến việc tốn thời gian cho việc kiểm đếm và ký chứng từ, đồng thời dễ xảy ra sai sót trong số liệu.
Vào thứ năm, việc chỉnh sửa, thêm bớt thông tin gặp nhiều khó khăn do cần hủy bỏ toàn bộ hồ sơ cũ và thay thế bằng hồ sơ mới Ngoài ra, việc sao lưu cũng trở nên phức tạp khi gặp sự cố về chất lượng giấy, hỏa hoạn hoặc mất điện trong quá trình nhập liệu.
Mục đích của dự án
Thiết kế phần mềm quản lý hàng hóa trong kho giúp theo dõi số lượng hàng xuất nhập theo thời gian thực và tự động hóa dữ liệu Nhân viên và quản lý có thể dễ dàng thực hiện công việc của mình thông qua việc đăng nhập vào ứng dụng.
Quản lý và phân bổ mặt hàng theo từng ngành hàng giúp cung cấp thông tin về hàng tồn đọng và hàng sắp hết, từ đó kịp thời bổ sung Phần mềm còn hỗ trợ quản lý nhân viên, nhà cung cấp và chi nhánh, đồng thời cho phép tìm kiếm thông tin và lập báo cáo thống kê tự động Điều này tối ưu hóa quy trình, tiết kiệm thời gian, giảm chi phí và công sức trong quản lý và vận hành kho hàng.
Xác lập dự án
Dự án xây dựng phần mềm quản lý kho hàng có quy mô nhỏ, áp dụng cho quản lý một cửa hàng hoặc công ty phân phối hàng hóa.
Phân tích tính khả thi của dự án:
Phần mềm được phát triển bằng ngôn ngữ C# và SQL, hai ngôn ngữ lập trình phổ biến và hoàn toàn miễn phí, giúp người dùng tiết kiệm chi phí mà không cần phải mua bản quyền.
Hệ thống này được xây dựng dựa trên sự tìm hiểu và phân tích nghiệp vụ kỹ lưỡng, kết hợp với tinh thần làm việc trách nhiệm cao của đội ngũ 5 thành viên Tuy nhiên, vẫn tồn tại một số khó khăn trong quá trình thực hiện.
Nhóm 14, với 7 thành viên, hiện đang nghiên cứu đề tài về sinh viên, những người còn thiếu kinh nghiệm thực tế và chỉ tiếp cận được một số ngôn ngữ lập trình hạn chế.
Mục tiêu đã đề ra hoàn toàn phù hợp với yêu cầu nghiệp vụ của kho hàng, nhằm khắc phục những nhược điểm trong hoạt động trước đây, như kiểm soát, thống kê và bảo mật.
Thông tin về công việc:
- Người thực hiện: Nhóm sinh viên
- Kết quả cần đạt: Phần mềm quản lý kho hàng
- Trạng thái hiện tại: Đang thực hiện
- Tài nguyên: Ngôn ngữ C#, SQL và Material Design In XAML
Phân công công việc trong dự án
Phân công công việc và kế hoạch thực hiện dự án được trình bày trong Bảng 1.1.
Bảng 1 1 Bảng phân công công việc và kế hoạch thực hiện
TT Tên công việc Bắt đầu Kết thúc Tài nguyên Kết quả Trạng thái
1 Khảo sát hiện trạng 15/10/2021 19/10/2021 MS Word Báo cáo Hoàn thu thập thông tin hiện trạng thành
2 Xác định mục tiêu 17/10/2021 19/10/2021 MS Word Các mục Hoàn tiêu hướng thành tới
4 Xác lập dự án 15/10/2021 25/10/2021 MS Excel Bản phân Hoàn công công thành việc
5 Tìm hiểu yêu cầu 15/10/2021 22/10/2021 MS Word Bản liệt kê Hoàn khách hàng yêu cầu thành
6 Phân tích các chức 22/10/2021 31/10/2021 MS Word Các sơ đồ Hoàn năng, yêu cầu của chức năng thành hệ thống hệ thống
7 Phân tích và chuẩn 01/11/2021 31/12/2021 MS Word, Từ điển và Hoàn hóa dữ liệu SQL Server cơ sở dữ thành liệu
8 Đặc tả các chức 01/11/2021 05/01/2022 MS Word Bản đặc tả Hoàn năng của hệ thống các chức thành năng
9 Thiết kế phần mềm 15/11/2021 10/01/2022 Visual Studio, Phần mềm Hoàn
Material Quản lý thành Design In kho hàng
10 Kiểm tra, thử 01/01/2022 11/01/2022 Visual Studio Phần mềm Đang thực nghiệm phần mềm Quản lý hiện kho hàng
TÌM HIỂU YÊU CẦU
Các kỹ thuật được sử dụng
Phần mềm sẽ chủ yếu được sử dụng trên hệ thống máy tính của kho hàng, laptop và các thiết bị khác để hỗ trợ quản lý và nhân viên trong quá trình làm việc.
Phần mềm quản lý có chức năng phân quyền rõ ràng giữa các cấp bậc, trong đó quyền hạn của nhân viên bị hạn chế hơn so với quản lý Chỉ có quản lý mới có quyền điều chỉnh và quản lý các thông tin của nhân viên, đảm bảo sự kiểm soát hiệu quả trong tổ chức.
Quản lý có thể quản lý thông tin của
Quản lý cần thực hiện các công việc liên quan đến nhân viên, hàng hóa, nhà cung cấp và chi nhánh thông qua phần mềm, bao gồm các thao tác như thêm mới, chỉnh sửa và xóa Bên cạnh đó, các chức năng tìm kiếm và tạo báo cáo thống kê cũng rất quan trọng để nâng cao hiệu quả quản lý.
Nhân viên có khả năng nhập mới và chỉnh sửa thông tin hàng hóa cũng như nhà cung cấp Các công việc của nhân viên cần được thực hiện trực tiếp tại chi nhánh thông qua phần mềm, bao gồm việc lập các loại phiếu nhập/xuất kho Để hỗ trợ cho việc nhập liệu và lập phiếu, nhân viên cần sử dụng chức năng tìm kiếm hiệu quả.
Giao diện quản lý kho cung cấp chức năng báo cáo thống kê, cho phép người dùng tìm kiếm và hiển thị lịch sử nhập xuất qua các loại phiếu Chức năng này giúp quản lý tất cả các đối tượng một cách hiệu quả.
Giao diện hiển thị của nhân viên sẽ bao gồm chức năng quản lý hàng hóa, nhà cung cấp và chi nhánh, cho phép thực hiện các thao tác cần thiết để quản lý hiệu quả.
Trong phần mềm, cần hiển thị các thông tin quan trọng về hàng hóa như tên sản phẩm, mã sản phẩm, đơn vị, số lượng, đơn giá và nhà cung cấp Những thông tin này sẽ được lưu trữ trong phần mềm để quản lý hiệu quả.
Phần mềm chỉ lưu trữ một số thông tin quan trọng về nhà cung cấp, bao gồm tên nhà cung cấp, số điện thoại, email và địa chỉ liên hệ.
Chi nhánh có những thông tin nào được Một số thông tin như tên chi nhánh, số lưu trữ trong phần mềm? điện thoại và địa chỉ.
Quản lý kho hàng sẽ được sử dụng chức năng này Báo cáo được kiểm tra, trổng
Chức năng báo cáo thống kê sẽ hiển thị thông tin theo từng đợt, và việc in cũng như chỉnh sửa số liệu sẽ do quản lý kho hàng quyết định Quyền tạo, chỉnh sửa và in báo cáo thuộc về những người có thẩm quyền trong hệ thống quản lý kho.
Nhân viên không được sử dụng chức năng này nên không hiển thị trên giao diện làm việc của nhân viên.
Khi nhập/xuất kho có in phiếu không? Sau khi hoàn tất nhập thông tin, nhân viên sẽ in phiếu giao cho đối tác.
Các yêu cầu được thu thập
• Yêu cầu về phần cứng:
Hệ thống được cài đặt trên các loại máy tính phổ biến, với giao diện thân thiện và dễ sử dụng Nó hoạt động ổn định, tin cậy trong suốt quá trình làm việc, không gặp phải tình trạng giật lag hay mất dữ liệu.
Phần mềm quản lý kho hàng yêu cầu khả năng thêm mới và quản lý thông tin nhân viên, đồng thời cho phép cập nhật và xóa thông tin hàng hóa Chỉ có quản lý mới có quyền thực hiện các thao tác thêm mới và chỉnh sửa thông tin của nhà cung cấp cùng các chi nhánh phân phối hàng.
Nhân viên sử dụng ID và mật khẩu do quản lý cấp để đăng nhập vào phần mềm, mỗi người có một ID riêng biệt Tuy nhiên, nhân viên không có quyền chỉnh sửa thông tin cá nhân trong hệ thống.
Khi nhà cung cấp giao hàng đến kho, nhân viên sẽ kiểm tra thông tin, lập phiếu nhập kho và cần có sự xác nhận từ cả đại diện nhà cung cấp và nhân viên tiếp nhận Sau khi hoàn tất nhập kho, nhân viên sẽ kiểm tra hàng hóa và nhập thông tin sản phẩm vào phần mềm Nếu sản phẩm chưa có trong hệ thống, nhân viên sẽ thực hiện thao tác thêm mới; nếu đã có, họ sẽ cập nhật thông tin khi có thay đổi về giá cả hoặc chiết khấu, và phần mềm sẽ tự động cập nhật số lượng sản phẩm.
Khi chi nhánh yêu cầu cung cấp hàng, nhân viên sẽ kiểm tra thông tin và trao đổi với đại diện chi nhánh Sau đó, nhân viên lập phiếu xuất kho với đầy đủ thông tin sản phẩm, in phiếu và ký tên để lấy xác nhận từ chi nhánh Nếu số lượng sản phẩm không đủ, phần mềm sẽ tự động thông báo trên giao diện Cuối cùng, phần mềm cũng tự động cập nhật số lượng sản phẩm sau khi phiếu xuất kho được hoàn tất.
Phần mềm quản lý kho giúp lập báo cáo thống kê về tình hình nhập xuất hàng hóa, cung cấp thông tin về trạng thái sản phẩm còn hay hết hàng Quản lý có thể xem lại lịch sử nhập xuất kho và các phiếu chỉnh sửa Ngoài ra, phần mềm còn hỗ trợ nhân viên trong việc tìm kiếm, kiểm tra và nhập liệu hiệu quả.
• Yêu cầu về dữ liệu:
Yêu cầu về dữ liệu được phân loại theo các đối tượng, thể hiện đầy đủ thông tin của đối tượng.
- Đối với hàng hóa: Mã sản phẩm, tên sản phẩm, đơn vị, số lượng, đơn giá
- Đối với nhân viên: Tài khoản, mật khẩu, mã nhân viên, tên nhân viên, chức vụ, CCCD/CMND, số điện thoại, địa chỉ, mức lương.
- Đối với nhà cung cấp: Mã nhà cung cấp, tên nhà cung cấp, số điện thoại, địa chỉ, email.
- Đối với chi nhánh: Mã chi nhánh, tên chi nhánh, số điện thoại liên hệ, địa chỉ.
Phiếu nhập kho cần bao gồm các thông tin quan trọng như mã phiếu nhập, tên và mã nhà cung cấp, mã và tên sản phẩm, đơn vị tính, số lượng, đơn giá (VNĐ), tổng tiền (VNĐ), ngày nhập kho và người lập phiếu.
Phiếu xuất kho bao gồm các thông tin quan trọng như mã phiếu xuất, tên chi nhánh, mã chi nhánh, mã sản phẩm, tên sản phẩm, đơn vị, số lượng, đơn giá (VNĐ), tổng tiền (VNĐ), ngày xuất kho và người lập phiếu.
Báo cáo thống kê hàng hóa bao gồm mã sản phẩm, tên sản phẩm, đơn vị, số lượng còn lại và nhà cung cấp Thống kê xuất kho ghi lại mã phiếu xuất kho, ngày xuất kho, người lập phiếu, tổng tiền (VNĐ) và tổng giá trị (VNĐ) Trong khi đó, thống kê nhập kho cũng tương tự với mã phiếu nhập kho, ngày nhập kho, người lập phiếu, tổng tiền (VNĐ) và tổng giá trị (VNĐ).
Bảng 2.1 Từ điển dữ liệu
Tên dữ liệu Bí danh Mô tả
Tài khoản + mật khẩu + mã nhân viên + tên nhân Nhân viên NV viên + chức vụ + CCCD/CMND + số điện thoại + địa chỉ + mức lương.
Hàng hóa SP Mã sản phẩm + tên sản phẩm + đơn vị tính.
Nhà cung cấp NCC Mã nhà cung cấp + tên nhà cung cấp + số điện thoại
Chi nhánh CN Mã chi nhánh + tên chi nhánh + số điện thoại + địa chỉ.
Phiếu nhập PN Mã phiếu nhập + mã nhà cung cấp + ngày nhập kho + tổng tiền nhập (VNĐ) + kế toán + mã nhân viên.
TTPN Mã phiếu nhập + mã sản phẩm + đơn vị + số lượng + nhập đơn giá (VNĐ) + thành tiền (VNĐ).
Phiếu xuất PX Mã phiếu xuất + mã chi nhánh + ngày xuất kho + tổng tiền xuất (VNĐ) + kế toán + mã nhân viên.
TTPX Mã phiếu xuất + mã sản phẩm + đơn vị + số lượng + xuất đơn giá (VNĐ) + thành tiền (VNĐ).
• Yêu cầu về con người
Quản lý kho hiệu quả bao gồm việc quản lý nhân viên, sản phẩm, và quy trình nhập xuất kho Đồng thời, cần quản lý thông tin về nhà cung cấp và chi nhánh Việc sử dụng chức năng tìm kiếm và tạo báo cáo thống kê cũng là những yếu tố quan trọng để nâng cao hiệu suất quản lý kho.
Nhân viên có thể đăng nhập vào phần mềm để thực hiện các nhiệm vụ như thêm mới, tìm kiếm và cập nhật thông tin sản phẩm Họ cũng có thể tìm kiếm thông tin về nhà cung cấp và chi nhánh Ngoài ra, nhân viên có khả năng tạo mới, chỉnh sửa và in các phiếu nhập kho cũng như phiếu xuất kho.
Phân loại yêu cầu
Trong yêu cầu chức năng, chúng tôi phân chia thành hai nhóm đối tượng: quản lý kho và nhân viên Phần mềm sẽ cung cấp các chức năng tương ứng cho từng đối tượng, giúp quản lý kho hàng hiệu quả hơn.
- Quản lý nhà cung cấp: Thêm mới, cập nhật và xóa thông tin nhà cung cấp trong phần mềm.
- Quản lý nhân viên: Thêm mới, cập nhật và xóa thông tin nhân viên.
- Quản lý hàng hóa: Thêm mới, cập nhật và xóa thông tin sản phẩm.
- Quản lý chi nhánh: Thêm mới, cập nhật và xóa chi nhánh.
- Quản lý nhập kho: Tạo mới, chỉnh sửa, in phiếu nhập kho và kiểm tra lịch sử chỉnh sửa của phiếu.
- Quản lý xuất kho: Tạo mới, chỉnh sửa, in phiếu xuất kho và kiểm tra lịch sử chỉnh sửa của phiếu.
- Tìm kiếm thông tin của hàng hóa, thông tin nhân viên, nhà cung cấp, chi nhánh, phiếu nhập kho, phiếu xuất kho.
Báo cáo thống kê kho hàng bao gồm số lượng hàng hóa hiện có, báo cáo về việc nhập kho và xuất kho, cùng với khả năng in ấn các báo cáo này Đối với nhân viên kho hàng, việc nắm rõ các báo cáo này là rất quan trọng để quản lý hiệu quả hoạt động lưu trữ và vận chuyển hàng hóa.
- Quản lý hàng hóa: Thêm mới, cập nhật, tìm kiếm thông tin sản phẩm.
- Quản lý nhập kho: Tạo mới, chỉnh sửa và in phiếu nhập kho.
- Quản lý xuất kho: Tạo mới, chỉnh sửa và in phiếu xuất kho.
- Tìm kiếm thông tin của hàng hóa, nhà cung cấp, chi nhánh, phiếu nhập kho, phiếu xuất kho.
2.3.2 Yêu cầu phi chức năng Đối với yêu cầu phi chức năng, phần mềm cần đáp ứng các yêu cầu sau:
- Phần mềm được trình bày đơn giản, gọn gàng, thân thiện với người dùng.
- Phần mềm có thể triển khai trên các dòng máy tính, laptop hiện có trên thị trường, phù hợp với hệ thống máy tính sử dụng trong kho hàng.
- Đảm bảo bảo mật về thông tin sản phẩm, thông tin của các nhà cung cấp và thông tin của chi nhánh.
- Phần mềm hoạt động tin cậy trong suốt quá trình sử dụng, không xảy ra hiện tượng giật, lag, mất dữ liệu.
- Hỗ trợ sử dụng tiền tệ VNĐ.
- Không sao chép, vi phạm bản quyền phần mềm của các đơn vị khác.
PHÂN TÍCH HỆ THỐNG
Sơ đồ chức năng
Hình 3.1 Sơ đồ chức năng của hệ thống
Sơ đồ chức năng của hệ thống được mô tả như trên Hình 1 Hệ thống gồm 8 chức năng chính, cụ thể như sau:
3 Quản lý nhà cung cấp
Sơ đồ luồng dữ liệu của hệ thống
3.2.1 Sơ đồ mức ngữ cảnh
Hình 3.2 Sơ đồ mức ngữ cảnh của hệ thống
Sơ đồ mức ngữ cảnh của hệ thống được thể hiện trong Hình… Tiến trình 0 của hệ thống tương tác với ba thực thể bên ngoài: quản lý kho hàng, nhân viên và máy in Các luồng dữ liệu giữa các thực thể này được mô tả cụ thể như sau:
Thông tin nhân viên, hàng hóa, nhà cung cấp, chi nhánh, phiếu nhập, phiếu xuất, tìm kiếm và lập báo cáo là những yếu tố quan trọng trong quản lý doanh nghiệp, giúp tối ưu hóa quy trình làm việc và nâng cao hiệu quả kinh doanh.
(2) Thông tin phản hồi, các thông tin được tìm kiếm, các báo cáo thống kê
(3) Thông tin hàng hóa, thông tin nhà cung cấp, thông tin chi nhánh, thông tin phiếu nhập, thông tin phiếu xuất, thông tin tìm kiếm
(4) Thông tin phản hồi, các thông tin được tìm kiếm
(5) Phiếu nhập, phiếu xuất, các báo cáo thống kê
Hình 3.3 Sơ đồ luồng dữ liệu mức đỉnh
Sơ đồ luồng dữ liệu mức đỉnh được thể hiện trên Hình 3.3 Cụ thể các luồng thông tin như sau:
(1) Thông tin nhân viên: Tên nhân viên, tài khoản, mật khẩu, mã nhân viên,
CCCD/CMND, số điện thoại, địa chỉ, mã chức vụ, chức vụ
(3) Thông tin hàng hóa: Mã sản phẩm, tên sản phẩm, đơn vị, mã nhà cung cấp
(6) Thông tin nhà cung cấp: Mã nhà cung cấp, tên nhà cung cấp, địa chỉ, số điện thoại, email
(7) Thông tin nhà cung cấp
(8) Thông tin nhà cung cấp
(9) Thông tin chi nhánh: Mã chi nhánh, tên chi nhánh, địa chỉ, số điện thoại
(12) Thông tin phiếu nhập: Mã phiếu nhập, nhân viên nhập, ngày nhập, mã thông tin nhập, mã sản phẩm, số lượng, đơn giá, mã nhà cung cấp
(13) Thông tin phản hồi, phiếu nhập
(15) Thông tin nhà cung cấp thông qua mã nhà cung cấp
(16) Thông tin hàng hóa thông qua mã sản phẩm
(17) Thông tin hàng hóa đã nhập
(18) Thông tin nhân viên thông qua mã nhân viên
Thông tin phiếu xuất bao gồm các yếu tố quan trọng như mã phiếu xuất, nhân viên thực hiện xuất hàng, ngày xuất, mã thông tin xuất, mã sản phẩm, số lượng sản phẩm, đơn giá, mã chi nhánh và mã thông tin nhập.
(22) Thông tin phản hồi, phiếu xuất
(24) Thông tin chi nhánh thông qua mã chi nhánh
(25) Thông tin hàng hóa thông qua mã sản phẩm
(26) Thông tin hàng hóa đã xuất
(27) Thông tin nhân viên thông qua mã nhân viên
(30) Các thông tin tìm kiếm
(31) Các thông tin được tìm kiếm
(32) Các thông tin tìm kiếm
(33) Các thông tin được tìm kiếm
(34) Thông tin tìm kiếm nhân viên
(35) Thông tin nhân viên được tìm kiếm
(36) Thông tin tìm kiếm hàng hóa
(37) Thông tin hàng hóa được tìm kiếm
(38) Thông tin tìm kiếm nhà cung cấp
(39) Thông tin nhà cung cấp được tìm kiếm
(40) Thông tin tìm kiếm chi nhánh
(41) Thông tin chi nhánh được tìm kiếm
(42) Thông tin tìm kiếm phiếu nhập
(43) Thông tin phiếu nhập được tìm kiếm
(44) Thông tin tìm kiếm phiếu xuất
(45) Thông tin phiếu xuất được tìm kiếm
(46) Các thông tin lập báo cáo thống kê
(47) Các báo cáo thống kê
(52) Các báo cáo thống kê
3.2.3 Sơ đồ mức dưới đỉnh a Chức năng 1
Hình 3.4 Sơ đồ mức 1 của chức năng quản lý nhân viên
Hình 3.5 Sơ đồ mức 1 của chức năng quản lý hàng hóa c Chức năng 3
Hình 3.6 Sơ đồ mức 1 của chức năng quản lý nhà cung cấp d Chức năng 4
Hình 3.7 Sơ đồ mức 1 của chức năng quản lý chi nhánh e Chức năng 5
Hình 3.8 Sơ đồ mức 1 của chức năng quản lý nhập kho
Các luồng thông tin trong sơ đồ:
(1) Thông tin phiếu nhập kho
(2) Thông tin phiếu nhập kho
(3) Thông tin nhà cung cấp
(6) Thông tin hàng hóa đã nhập
(11) Thông tin nhà cung cấp
(13) Thông tin hàng hóa đã nhập được chỉnh sửa
(15) Thông tin phiếu nhập đã chỉnh sửa
(16) Thông tin in phiếu nhập kho
(17) Thông tin in phiếu nhập kho
(22) Phiếu nhập cần kiểm tra
Hình 3.9 Sơ đồ mức 1 của chức năng quản lý xuất kho
Các luồng thông tin trong sơ đồ:
(1) Thông tin phiếu xuất kho
(2) Thông tin phiếu nhập kho
(6) Thông tin hàng hóa đã xuất
(13) Thông tin hàng hóa đã xuất được chỉnh sửa
(15) Thông tin phiếu xuất đã chỉnh sửa
(16) Thông tin in phiếu xuất kho
(17) Thông tin in phiếu xuất kho
(22) Phiếu xuất cần kiểm tra
Hình 3.10 Sơ đồ mức 1 của chức năng tìm kiếm thông tin
Các luồng thông tin trong sơ đồ:
(1) Thông tin tìm kiếm nhân viên
(3) Thông tin tìm kiếm nhân viên
(5) Thông tin tìm kiếm hàng hóa
(7) Thông tin tìm kiếm hàng hóa
(9) Thông tin tìm kiếm hàng hóa
(11) Thông tin tìm kiếm nhà cung cấp
(12) Thông tin nhà cung cấp
(13) Thông tin tìm kiếm nhà cung cấp
(14) Thông tin nhà cung cấp
(15) Thông tin tìm kiếm nhà cung cấp
(16) Thông tin nhà cung cấp
(17) Thông tin tìm kiếm chi nhánh
(19) Thông tin tìm kiếm chi nhánh
(21) Thông tin tìm kiếm chi nhánh
(23) Thông tin tìm kiếm phiếu nhập
(25) Thông tin tìm kiếm phiếu nhập
(27) Thông tin tìm kiếm phiếu nhập
(29) Thông tin tìm kiếm phiếu xuất
(31) Thông tin tìm kiếm phiếu xuất
Hình 3.11 Sơ đồ mức 1 của chức năng báo cáo thống kê
Các luồng thông tin của sơ đồ:
(1) Thông tin lập báo cáo
(4) Thồng tin lập báo cáo
(8) Thông tin lập báo cáo
(12) Thông tin in báo cáo
(13) Báo cáo số lượng hàng hóa trong kho
Đặc tả các chức năng
3.3.1 Đặc tả chức năng 1.1 Đầu đề:
- Tên chức năng: Thêm nhân viên
- Đầu vào: o Tên nhân viên o Chức vụ o CCCD/CMND o Số điện thoại o Địa chỉ o Mức lương
- Đầu ra: Thông tin nhân viên được thêm vào kho dữ liệu Thân:
Lặp: Lấy một nhân viên trong kho các nhân viên
Nếu CCCD mới nhập trùng với CCCD của nhân viên, thì sẽ có thông báo rằng nhân viên đã có trong danh sách Thông báo này sẽ xuất hiện cho đến khi có thông báo mới hoặc khi danh sách nhân viên trong hệ thống đã hết.
Nếu: Không có thông báo
Thì nhân viên mới -> danh sách nhân viên
3.3.2 Đặc tả chức năng 1.2 Đầu đề:
- Tên chức năng: Tạo tài khoản
- Đầu vào: Tài khoản mới, mật khẩu
- Đầu ra: Tài khoản, mật khẩu được tạo ra Thân:
Khi nhập tài khoản mới, nếu tài khoản đó trùng với tài khoản đã có trong hệ thống, bạn cần nhập lại tài khoản khác Quá trình này sẽ tiếp tục cho đến khi bạn không còn tài khoản nào trùng lặp trong danh sách hiện có.
3.3.3 Đặc tả chức năng 1.3 Đầu đề:
- Tên chức năng: Chỉnh sửa thông tin nhân viên
- Đầu vào: Thông tin nhân viên
- Đầu ra: Thông tin nhân viên được cập nhật vào kho dữ liệu Thân:
Chọn nhân viên cần chỉnh sửa
Lặp: Trỏ đến trường thông tin cần sửa
Thay thế giá trị cũ bằng giá trị mới Đến khi: Hết các thông tin cần sửa
3.3.4 Đặc tả chức năng 1.4 Đầu đề:
- Tên chức năng: Xóa thông tin nhân viên
- Đầu vào: Thông tin nhân viên
- Đầu ra: Thông báo nhân viên được xóa khỏi kho dữ liệu Thân:
- Chọn nhân viên cần xóa
- Trỏ đến bản ghi chứa thông tin nhân viên
3.3.5 Đặc tả chức năng 2.1 Đầu đề:
- Tên chức năng: Thêm sản phẩm
- Đầu vào: o Tên sản phẩm o Đơn vị tính
- Đầu ra: Thông tin sản phẩm được thêm vào kho dữ liệu Thân:
Lặp: Lấy một sản phẩm trong kho các sản phẩm
Nếu tên sản phẩm mới nhập == tên sản phẩm đó
Thì thông báo đã có sản phẩm trong danh sách Đến khi: Có thông báo || Hết danh sách sản phẩm đã có trong hệ thống
Nếu: Không có thông báo
Thì sản phẩm mới -> danh sách sản phẩm
3.3.6 Đặc tả chức năng 2.2 Đầu đề:
- Tên chức năng: Cập nhật thông tin sản phẩm
- Đầu vào: Thông tin sản phẩm
- Đầu ra: Thông tin sản phẩm được cập nhật vào kho dữ liệu Thân:
Chọn sản phẩm cần chỉnh sửa
Lặp: Trỏ đến trường thông tin cần sửa
Thay thế giá trị cũ bằng giá trị mới Đến khi: Hết các thông tin cần sửa
3.3.7 Đặc tả chức năng 2.3 Đầu đề:
- Tên chức năng: Xóa thông tin sản phẩm
- Đầu vào: Thông tin sản phẩm
- Đầu ra: Thông báo sản phẩm được xóa khỏi kho dữ liệu Thân:
- Chọn sản phẩm cần xóa
- Trỏ đến bản ghi chứa thông tin sản phẩm
3.3.8 Đặc tả chức năng 3.1 Đầu đề:
- Tên chức năng: Thêm nhà cung cấp
- Đầu vào: Thông tin nhà cung cấp o Mã nhà cung cấp o Tên nhà cung cấp o Số điện thoại
- Đầu ra: Thông tin nhà cung cấp được thêm vào kho dữ liệu Thân:
Lặp: Lấy một nhà cung cấp trong kho các nhà cung cấp
Nếu tên nhà cung cấp mới nhập == tên nhà cung cấp đó
Thì thông báo đã có nhà cung cấp trong danh sách Đến khi: Có thông báo || Hết danh sách nhà cung cấp đã có trong hệ thống
Nếu: Không có thông báo
Thì nhà cung cấp mới -> danh sách nhà cung cấp
3.3.9 Đặc tả chức năng 3.2 Đầu đề:
- Tên chức năng: Cập nhật thông tin nhà cung cấp
- Đầu vào: Thông tin nhà cung cấp
- Đầu ra: Thông tin nhà cung cấp được cập nhật vào kho dữ liệu Thân:
Chọn nhà cung cấp cần cập nhật
Lặp:Trỏ đến trường thông tin cần cập nhật Thay thế giá trị cũ bằng giá trị mới Đến khi: Hết các thông tin cần cập nhật
3.3.10 Đặc tả chức năng 3.3 Đầu đề:
- Tên chức năng: Xóa thông tin nhà cung cấp
- Đầu vào: Thông tin nhà cung cấp
- Đầu ra: Thông báo nhà cung cấp được xóa khỏi kho dữ liệu
- Chọn nhà cung cấp cần xóa
- Trỏ đến bản ghi chứa thông tin nhà cung cấp
3.3.11 Đặc tả chức năng 4.1 Đầu đề:
- Tên chức năng: Thêm chi nhánh
- Đầu vào: Thông tin chi nhánh o Mã chi nhánh o Tên chi nhánh o Số điện thoại o Địa chỉ
- Đầu ra: Thông tin chi nhánh được thêm vào kho dữ liệu
Lặp: Lấy một chi nhánh trong kho các chi nhánh
Nếu tên chi nhánh mới nhập == tên chi nhánh đó
Thì thông báo đã có chi nhánh trong danh sách Đến khi: Có thông báo || Hết danh sách chi nhánh đã có trong hệ thống
Nếu: Không có thông báo
Thì chi nhánh mới -> danh sách chi nhánh
3.3.12 Đặc tả chức năng 4.2 Đầu đề:
- Tên chức năng: Cập nhật thông tin chi nhánh:
- Đầu vào: Thông tin chi nhánh
- Đầu ra: Thông tin chi nhánh được cập nhật vào kho dữ liệu Thân:
Chọn sản phẩm cần chỉnh sửa
Lặp: Trỏ đến trường thông tin cần sửa
Thay thế giá trị cũ bằng giá trị mới Đến khi: Hết các thông tin cần sửa
3.3.13 Đặc tả chức năng 4.3 Đầu đề:
- Tên chức năng: Xóa thông tin chi nhánh
- Đầu vào: Thông tin chi nhánh
- Đàu ra: Thông báo chi nhánh được xóa khỏi kho dữ liệu Thân:
- Chọn sản phẩm cần xóa
- Trỏ đến bản ghi chứa thông tin sản phẩm
3.3.14 Đặc tả chức năng 5.1 Đầu đề:
- Tên chức năng: Tạo phiếu nhập kho
Để quản lý quy trình nhập kho hiệu quả, cần chú ý đến các thông tin đầu vào quan trọng như mã phiếu nhập, mã nhà cung cấp, mã sản phẩm, đơn vị, số lượng, đơn giá, thành tiền, tổng tiền nhập, ngày nhập kho, mã nhân viên và kế toán Những dữ liệu này không chỉ giúp theo dõi hàng hóa mà còn đảm bảo tính chính xác trong việc ghi chép và báo cáo.
- Đầu ra: Thông tin phiếu nhập được thêm vào kho dữ liệu Thân:
Nhập mã nhà cung cấp, ngày nhập kho, mã nhân viên, kế toán
Để thêm thông tin sản phẩm, bạn cần cung cấp mã sản phẩm, tên sản phẩm, đơn vị, số lượng nhập và đơn giá nhập Tính thành tiền bằng cách nhân số lượng với đơn giá Tổng tiền nhập sẽ được cập nhật bằng cách cộng dồn thành tiền cho đến khi không còn sản phẩm cần thêm.
3.3.15 Đặc tả chức năng 5.2 Đầu đề:
- Tên chức năng: Chỉnh sửa phiếu nhập kho
- Đầu vào: Thông tin phiếu nhập
- Đầu ra: Phiếu nhập đã được chỉnh sửa và lưu vào kho dữ liệu Thân:
Chọn loại sản phẩm từ danh sách sản phẩm trong phiếu nhập
Để chỉnh sửa thông tin sản phẩm trong phiếu nhập, bạn cần xác định trường thông tin cần thay đổi, bao gồm mã sản phẩm, tên sản phẩm, đơn vị tính, số lượng nhập và đơn giá nhập Sau đó, thay thế giá trị cũ bằng giá trị mới cho danh sách sản phẩm trong phiếu nhập Quá trình này tiếp tục cho đến khi tất cả sản phẩm cần chỉnh sửa đã được cập nhật.
3.3.16 Đặc tả chức năng 5.3 Đầu đề:
- Tên chức năng: In phiếu nhập kho
- Đầu ra: Phiếu nhập đã được in Thân:
- Chọn phiếu nhập cần in
3.3.17 Đặc tả chức năng 5.4 Đầu đề:
- Tên chức năng: Kiểm tra lịch sử chỉnh sửa
- Đầu vào: Mã phiếu nhập
- Đầu ra: Lịch sử chỉnh sửa của phiếu nhập Thân:
- Tra cứu mã phiếu nhập cần kiểm tra
- Nếu mã phiếu nhập tồn tại
Thì hiển thị lịch sử chỉnh sửa phiếu nhập
3.3.18 Đặc tả chức năng 6.1 Đầu đề:
- Tên chức năng: Tạo phiếu xuất kho
Đầu vào cho quy trình xuất kho bao gồm các thông tin quan trọng như mã phiếu xuất, mã chi nhánh, mã sản phẩm, đơn vị, số lượng, đơn giá, thành tiền, tổng tiền xuất, ngày xuất kho, mã nhân viên và kế toán Những dữ liệu này đóng vai trò thiết yếu trong việc quản lý và theo dõi quy trình xuất hàng một cách hiệu quả.
- Đầu ra: Thông tin phiếu xuất được thêm vào kho dữ liệu Thân:
Nhập mã chi nhánh, ngày xuất kho, mã nhân viên, kế toán
Để thêm thông tin sản phẩm, bạn cần cung cấp mã sản phẩm, tên sản phẩm, đơn vị, số lượng xuất và đơn giá xuất Tính thành tiền bằng cách nhân số lượng với đơn giá Tổng tiền xuất sẽ được cập nhật bằng cách cộng dồn tổng tiền xuất với thành tiền, và quá trình này sẽ tiếp tục cho đến khi không còn sản phẩm cần thêm.
3.3.19 Đặc tả chức năng 6.2 Đầu đề:
- Tên chức năng: Chỉnh sửa phiếu xuất kho
- Đầu vào: Thông tin phiếu xuất
- Đầu ra: Phiếu xuất đã được chỉnh sửa và lưu vào kho dữ liệu Thân:
Chọn loại sản phẩm từ danh sách sản phẩm trong phiếu xuất
Để sửa đổi thông tin sản phẩm, trước tiên bạn cần xác định trường thông tin cần chỉnh sửa như mã sản phẩm, tên sản phẩm, đơn vị tính, số lượng xuất và đơn giá xuất Sau đó, thay thế giá trị cũ bằng giá trị mới trong danh sách sản phẩm trên phiếu xuất Quá trình này sẽ tiếp tục cho đến khi tất cả sản phẩm cần chỉnh sửa đã được cập nhật.
3.3.20 Đặc tả chức năng 6.3 Đầu đề:
- Tên chức năng: In phiếu nhập kho
- Đầu ra: Phiếu nhập đã được in Thân:
- Chọn phiếu nhập cần in
3.3.21 Đặc tả chức năng 6.4 Đầu đề:
- Tên chức năng: Kiểm tra lịch sử chỉnh sửa
- Đầu vào: Mã phiếu nhập
- Đầu ra: Lịch sử chỉnh sửa của phiếu nhập Thân:
- Tra cứu mã phiếu nhập cần kiểm tra
- Nếu mã phiếu nhập tồn tại
Thì hiển thị lịch sử chỉnh sửa phiếu nhập
3.3.22 Đặc tả chức năng 7.1 Đầu đề:
- Tên chức năng: Tìm kiếm nhân viên
- Đầu vào: Thông tin nhân viên (một hoặc nhiều thông tin) o Mã nhân viên o Tên nhân viên
129211_NHÓM 14 36 o Chức vụ o CCCD/CMND o Số điện thoại o Địa chỉ
- Đầu ra: Danh sách thông tin nhân viên thỏa mãn đầu vào Thân:
Nếu thông tin đầu vào trùng khớp với thông tin của nhân viên trong bảng, thì thông tin đó sẽ được đưa vào danh sách đầu ra Quá trình này tiếp tục cho đến khi danh sách nhân viên trong hệ thống được xử lý hết.
3.3.23 Đặc tả chức năng 7.2 Đầu đề:
- Tên chức năng: Tìm kiếm hàng hóa
- Đầu vào: Thông tin sản phẩm (một hoặc nhiều thông tin) o Mã sản phẩm o Tên sản phẩm o Đơn vị tính
- Đầu ra: Danh sách thông tin sản phẩm thỏa mãn đầu vào Thân:
Nếu thông tin đầu vào trùng khớp với thông tin sản phẩm trong bảng hàng hóa, thì sản phẩm đó sẽ được đưa vào danh sách đầu ra Quá trình này sẽ tiếp tục cho đến khi tất cả hàng hóa trong hệ thống được kiểm tra.
3.3.24 Đặc tả chức năng 7.3 Đầu đề:
- Tên chức năng: Tìm kiếm nhà cung cấp
- Đầu vào: Thông tin nhà cung cấp (một hoặc nhiều thông tin) o Mã nhà cung cấp o Tên nhà cung cấp o Số điện thoại o Địa chỉ o Email
- Đầu ra: Danh sách thông tin nhà cung cấp thỏa mãn đầu vào Thân:
Nếu thông tin đầu vào trùng khớp với thông tin của nhà cung cấp trong bảng, thì thông tin đó sẽ được thêm vào danh sách đầu ra Quá trình này sẽ tiếp tục cho đến khi không còn nhà cung cấp nào trong hệ thống.
3.3.25 Đặc tả chức năng 7.4 Đầu đề:
- Tên chức năng: Tìm kiếm chi nhánh
- Đầu vào: Thông tin chi nhánh (một hoặc nhiều thông tin) o Mã chi nhánh o Tên chi nhánh o Số điện thoại o Địa chỉ
- Đầu ra: Danh sách thông tin chi nhánh thỏa mãn đầu vào Thân:
Nếu thông tin đầu vào trùng khớp với thông tin chi nhánh có trong bảng chi nhánh, thì thông tin chi nhánh sẽ được thêm vào danh sách đầu ra Quá trình này sẽ tiếp tục cho đến khi danh sách chi nhánh trong hệ thống được duyệt xong.
3.3.26 Đặc tả chức năng 7.5 Đầu đề:
- Tên chức năng: Tìm kiếm phiếu nhập
- Đầu vào: Thông tin phiếu nhập (một hoặc nhiều thông tin) o Mã phiếu nhập o Tên nhà cung cấp o Ngày nhập kho o
Tên nhân viên o Kế toán o Tổng tiền nhập
- Đầu ra: Danh sách thông tin phiếu nhập thỏa mãn đầu vào
Khi thông tin đầu vào trùng khớp với thông tin trong bảng phiếu nhập, hệ thống sẽ thêm thông tin phiếu nhập vào danh sách đầu ra Quá trình này tiếp tục diễn ra cho đến khi danh sách phiếu nhập trong hệ thống được xử lý hoàn toàn.
3.3.27 Đặc tả chức năng 7.6 Đầu đề:
- Tên chức năng: Tìm kiếm phiếu xuất
- Đầu vào: Thông tin phiếu xuất (một hoặc nhiều thông tin) o Mã phiếu xuất o Tên chi nhánh o Ngày xuất kho o Tên nhân viên o Kế toán o Tổng tiền xuất
- Đầu ra: Danh sách thông tin phiếu xuất thỏa mãn đầu vào Thân:
Nếu thông tin đầu vào trùng khớp với thông tin trong bảng phiếu xuất, thì thông tin phiếu xuất sẽ được thêm vào danh sách đầu ra Quá trình này sẽ tiếp tục cho đến khi danh sách phiếu xuất trong hệ thống được xử lý hết.
3.3.28 Đặc tả chức năng 8.1 Đầu đề:
- Tên chức năng: Báo cáo số lượng hàng hóa trong kho
- Đầu vào: Yêu cầu xuất báo cáo số lượng hàng hóa tồn kho
- Đầu ra: Thông tin hàng hóa tồn kho (Mã sản phẩm, tên sản phẩm, đơn vị, nhà cung cấp, số lượng tồn kho)
Lặp: Lấy một sản phẩm trong bảng hàng hóa
Số lượng tồn kho = ∑số lượng nhập vào (bảng TT phiếu nhập) – ∑số lượng xuất ra (bảng TT phiếu xuất) Đến khi: Hết danh sách sản phẩm
3.3.29 Đặc tả chức năng 8.2 Đầu đề:
- Tên chức năng: Báo cáo nhập kho
- Đầu vào: Thời gian cần báo cáo nhập kho
- Đầu ra: Báo cáo nhập kho (Mã phiếu nhập, nhà cung cấp, ngày nhập, tổng tiền, người lập phiếu, tổng số phiếu nhập, tổng tiền)
Lặp: Lấy một phiếu nhập
Lấy giá trị các trường (Mã phiếu nhập, nhà cung cấp, ngày nhập, tổng tiền, người lập phiếu) -> báo cáo
Tổng cộng tiền += tổng tiền từng phiếu nhập Đến khi: Hết danh sách phiếu nhập
3.3.30 Đặc tả chức năng 8.3 Đầu đề:
- Tên chức năng: Báo cáo xuất kho
- Đầu vào: Thời gian cần báo cáo xuất kho
- Đầu ra: Báo cáo xuất kho (Mã phiếu xuất, chi nhánh, ngày xuất, tổng tiền, người lập phiếu, tổng số phiếu xuất, tổng tiền)
Lặp: Lấy một phiếu xuất
Lấy giá trị trường (Mã phiếu xuất, chi nhánh, ngày xuất, tổng tiền, người lập phiếu) - > báo cáo
Tổng cộng tiền += tổng tiền từng phiếu xuất Đến khi: Hết danh sách phiếu xuất
3.3.31 Đặc tả chức năng 8.4 Đầu đề:
- Tên chức năng: In báo cáo
- Đầu vào: Báo cáo cần in
- Đầu ra: Báo cáo in ra bản cứng Thân:
- Chọn phiếu nhập cần in
Phân tích dữ liệu
3.4.1 Nhận diện thực thể và thuộc tính
Tên thực thể Tên sử dụng Mô tả
Tài khoản, mật khẩu, mã nhân viên, tên nhân Nhân viên NhanVien viên, chức vụ, CCCD/CMND, số điện thoại, địa chỉ, mức lương.
Hàng hóa HangHoa Mã sản phẩm, tên sản phẩm, đơn vị tính.
Nhà cung cấp NhaCungCap Mã nhà cung cấp, tên nhà cung cấp, số điện thoại, địa chỉ, email.
Chi nhánh ChiNhanh Mã chi nhánh, tên chi nhánh, số điện thoại, địa chỉ.
Mã phiếu nhập, mã nhà cung cấp, ngày nhập Phiếu nhập PhieuNhap kho, tổng tiền nhập (VNĐ), kế toán, mã nhân viên.
TTPhieuNhap Mã phiếu nhập, mã sản phẩm, đơn vị, số lượng, nhập đơn giá (VNĐ), thành tiền (VNĐ).
Phiếu xuất PhieuXuat Mã phiếu xuất, mã chi nhánh, ngày xuất kho, tổng tiền xuất (VNĐ), kế toán, mã nhân viên.
TTPhieuXuat Mã phiếu xuất, mã sản phẩm, đơn vị, số lượng, xuất đơn giá (VNĐ), thành tiền (VNĐ).
3.4.3 Xây dựng mô hình thực thể và liên kết
- Liên kết 1:N giữa Nhân viên và Phiếu nhập (1 nhân viên có thể tạo nhiều phiếu nhập nhưng mỗi phiếu nhập chỉ được tạo từ 1 nhân viên).
- Liên kết 1:N giữa Nhân viên và Phiếu xuất (1 nhân viên có thể tạo nhiều phiếu xuất nhưng mỗi phiếu xuất chỉ được tạo từ 1 nhân viên).
Mỗi sản phẩm trong thực thể hàng hóa có thể liên kết với nhiều thông tin phiếu nhập, tuy nhiên, mỗi thông tin phiếu nhập chỉ thuộc về một sản phẩm duy nhất.
Mỗi sản phẩm trong thực thể hàng hóa có thể liên kết với nhiều thông tin phiếu xuất, tuy nhiên, mỗi thông tin phiếu xuất chỉ thuộc về một sản phẩm cụ thể.
Mỗi nhà cung cấp có thể liên kết với nhiều phiếu nhập, tuy nhiên, mỗi phiếu nhập chỉ thuộc về một nhà cung cấp duy nhất.
- Liên kết 1:N giữa Chi nhánh và Phiếu xuất (Mỗi chi nhánh có thể có nhiều phiếu xuất nhưng mỗi phiếu xuất chỉ có duy nhất 1 chi nhánh)
Mỗi phiếu nhập có thể liên kết với nhiều thông tin phiếu nhập, tuy nhiên, mỗi thông tin phiếu nhập chỉ thuộc về một phiếu nhập duy nhất.
Mỗi phiếu xuất có thể liên kết với nhiều thông tin phiếu xuất, tuy nhiên, mỗi thông tin phiếu xuất chỉ thuộc về một phiếu xuất duy nhất.
Hình 3.12 Sơ đồ thực thể và liên kết
THIẾT KẾ CƠ SỞ DỮ LIỆU
Chuyển mô hình thực thể liên kết sang mô hình quan hệ
- NhanVien (maNV, tenNV, taikhoan, matkhau, chucvu, cccd, sdtNV, diachiNV, luongNV).
- NhaCungCap (maNCC, tenNCC, sdtNCC, diachiNCC, emailNCC).
- ChiNhanh (maCN, tenCN, sdtCN, diachiCN).
- PhieuNhap (maPN, ngayNhap, tongTienNhap, KeToan, maNV, maNCC).
- PhieuXuat(maPX, ngayXuat, tongTienXuat, KeToan, maNV, maCN).
- TTPhieuNhap(maPN, maSP, donvi, soluongNhap, dongiaNhap, ThanhTien).
- TTPhieuXuat(maPX, maSP, donvi, soluongXuat, dongiaXuat, ThanhTien).
Chuẩn hóa dữ liệu về 3NF
- Chuẩn hóa 3NF quan hệ NhanVien:
NhanVien (maNV, tenNV, taikhoan, matkhau, chucvu, cccd, sdtNV, diachiNV, luongNV) o Mỗi nhân viên có một mã riêng, có duy nhất tên, tài khoản, mật khẩu, chức vụ,
CCCD/CMND, số điện thoại, địa chỉ. o Ta có phụ thuộc hàm: maNV -> tenNV, taikhoan, matkhau, chucvu, cccd, sdtNV, diachiNV, luongNV Vậy quan hệ NhanVien đã ở 3NF.
Chuẩn hóa 3NF cho quan hệ HangHoa bao gồm các thuộc tính maSP, tenSP và donvi Mỗi loại hàng hóa được xác định bằng một mã sản phẩm duy nhất, có tên sản phẩm riêng và đơn vị tính cụ thể Phụ thuộc hàm được xác định là maSP dẫn đến tenSP và donvi, đảm bảo tính duy nhất và không trùng lặp trong cơ sở dữ liệu.
Vậy quan hệ HangHoa đã ở 3NF.
- Chuẩn hóa 3NF quan hệ NhaCungCap:
Mỗi nhà cung cấp trong hệ thống NhaCungCap được xác định bởi mã riêng (maNCC) và có các thông tin duy nhất như tên (tenNCC), số điện thoại (sdtNCC), địa chỉ (diachiNCC) và email (emailNCC) Phụ thuộc hàm giữa mã nhà cung cấp và các thông tin này là: maNCC -> tenNCC, sdtNCC, diachiNCC, emailNCC Do đó, quan hệ NhaCungCap đã đạt chuẩn 3NF.
Chuẩn hóa quan hệ ChiNhánh ở dạng 3NF bao gồm các thuộc tính: maCN, tenCN, sdtCN và diachiCN Mỗi chi nhánh được xác định bởi một mã duy nhất, cùng với tên, số điện thoại và địa chỉ riêng Phụ thuộc hàm giữa các thuộc tính được thể hiện qua mối quan hệ: maCN -> tenCN, sdtCN, diachiCN.
Vậy quan hệ ChiNhanh đã ở 3NF.
- Chuẩn hóa 3NF quan hệ PhieuNhap
Mỗi phiếu nhập (maPN) được xác định bằng một mã duy nhất và chứa thông tin về ngày nhập, tổng tiền nhập, kế toán, mã nhân viên và mã nhà cung cấp Phụ thuộc hàm cho thấy rằng mã phiếu nhập (maPN) quyết định các thuộc tính khác như ngày nhập, tổng tiền nhập, kế toán, mã nhân viên và mã nhà cung cấp.
Vậy quan hệ PhieuNhap đã ở 3NF.
- Chuẩn hóa 3NF quan hệ PhieuXuat:
Mỗi phiếu xuất (maPX) được xác định bởi một mã riêng, kèm theo ngày xuất, tổng tiền xuất, kế toán, mã nhân viên và mã chi nhánh Phụ thuộc hàm cho thấy rằng mã phiếu xuất (maPX) quyết định các thông tin liên quan như ngày xuất, tổng tiền xuất, kế toán, mã nhân viên và mã chi nhánh.
Vậy quan hệ PhieuXuat đã ở 3NF
- Chuẩn hóa 3NF quan hệ TTPhieuNhap:
Mỗi phiếu nhập (TTPhieuNhap) bao gồm các thông tin quan trọng như mã phiếu nhập (maPN), mã sản phẩm (maSP), đơn vị tính (donvi), số lượng nhập (soluongNhap), đơn giá nhập (dongiaNhap) và thành tiền nhập (ThanhTien) Mỗi sản phẩm trên một phiếu nhập sẽ có duy nhất một đơn vị tính, số lượng nhập, đơn giá nhập và thành tiền nhập Hơn nữa, các thông tin này tuân theo các phụ thuộc hàm nhất định.
(maPN, maSP) -> donvi, soluongNhap, dongiaNhap, ThanhTien
Vậy quan hệ TTPhieuNhap đã ở 3NF.
- Chuẩn hóa 3NF quan hệ TTPhieuXuat:
TTPhieuXuat(maPX, maSP, donvi, soluongXuat, dongiaXuat, ThanhTien). o Mỗi sản phẩm trên một phiếu xuất có duy nhất đơn vị tính, số lượng xuất, đơn giá xuất, thành tiền xuất.
129211_NHÓM 14 44 o Ta có phụ thuộc hàm:
(maPX, maSP) -> donvi, soluongXuat, dongiaXuat, ThanhTien
Vậy quan hệ TTPhieuXuat đã ở 3NF.
Sơ đồ thực thể liên kết sau chuẩn hóa 3NF
Hình 4.1 Sơ đồ thực thể liên kết sau chuẩn hóa 3NF
Từ điển dữ liệu pha thiết kế
Bảng 4.2 Các thuộc tính bảng ChiNhanh
Tên thuộc Kiểu dữ liệu Chiều Giá trị mẫu Mô tả Ghi chú tính dài maCN INT 1 Mã chi nhánh NOT
NULL tenCN NVARCHAR MAX Chi nhánh Trương Tên chi nhánh Định sdtCN VARCHAR 12 0912333333 Số điện thoại chi nhánh diachiCN NVARCHAR MAX Hai Bà Trưng, Hà Địa chỉ chi
Bảng 4.3 Các thuộc tính bảng Nhacungcap
Bảng dữ liệu nhà cung cấp bao gồm các trường thông tin quan trọng như mã nhà cung cấp (maNCC) với kiểu dữ liệu INT và giá trị mẫu là 1, tên nhà cung cấp (tenNCC) với kiểu NVARCHAR MAX, ví dụ "Kinh Đô Việt Nam", số điện thoại (sdtNCC) kiểu VARCHAR với độ dài 12, ví dụ "01234567893", và địa chỉ (diachiNCC) kiểu NVARCHAR MAX, ví dụ "Thủ Đức, TP Hồ Chí Minh" Các trường này giúp quản lý thông tin nhà cung cấp một cách hiệu quả.
EmailNCC VARCHAR 100 bkhn@gmail.com Email nhà cung cấp
Bảng 4.4 Các thuộc tính bảng Hanghoa
Tên thuộc Kiểu dữ liệu Chiều Giá trị mẫu Mô tả Ghi chú tính dài maSP INT 1 Mã sản phẩm NOT
NULL tenSP NVARCHAR MAX Bánh gạo Tên sản phẩm donvi NVARCHAR MAX Thùng Đơn vị tính
Bảng 4.5 Các thuộc tính bảng Nhanvien
Tên thuộc Kiểu dữ liệu Chiều dài Giá trị mẫu Mô tả Ghi chú tính maNV INT 1 Mã nhân viên NOT
Bài viết này cung cấp thông tin chi tiết về nhân viên Trịnh Mỹ Linh, với tài khoản đăng nhập "Mylinh123" và mật khẩu "Abc123456" CCCD của nhân viên là 012345678999, chức vụ của cô là quản lý hoặc nhân viên Số điện thoại liên hệ là 03396688888, địa chỉ cư trú tại Cầu Giấy, Hà Nội, và mức lương tháng của cô là 5.000.000 VNĐ.
Bảng 4.6 Các thuộc tính bảng PhieuNhap
Tên thuộc Kiểu dữ liệu Chiều dài Giá trị mẫu Mô tả Ghi chú tính maPN INT 1 Mã phiếu nhập NOT
NULL ngayNhap DATE 2022-01-20 Ngày lập phiếu tongTienNhap BIGINT 30000000 Tổng cộng tiền của phiếu nhập
KeToan NVARCHAR MAX Trần Hoàng Kế toán xác NOT nhận phiếu NULL maNV INT 1 Mã nhân viên NOT lập phiếu NULL maNCC INT 2 Mã nhà cung NOT cấp NULL
Bảng 4.7 Các thuộc tính bảng TTPhieuNhap
Tên thuộc Kiểu dữ liệu Chiều dài Giá trị mẫu Mô tả Ghi chú tính maPN INT 1 Mã phiếu nhập NOT
NULL maSP INT 1 Mã sản phẩm NOT
NULL donvi NVARCHAR MAX Thùng Đơn vị tính soluongNhap INT 20 Số lượng sản phẩm nhập vào dongiaNhap BIGINT 200000 Đơn giá của một sản phẩm
ThanhTien BIGINT 4000000 Thành tiền của một sản phẩm
Bảng 4.8 Các thuộc tính bảng PhieuXuat
Tên thuộc Kiểu dữ liệu Chiều dài Giá trị mẫu Mô tả Ghi chú tính maPX INT 1 Mã phiếu xuất NOT
NULL ngayXuat DATE 2022-01-20 Ngày lập phiếu tongTienXuat BIGINT 30000000 Tổng cộng tiền của phiếu xuất
KeToan NVARCHAR MAX Trần Hoàng Kế toán xác NOT nhận phiếu NULL maNV INT 1 Mã nhân viên NOT lập phiếu NULL maNCC INT 2 Mã nhà cung NOT cấp NULL
Bảng 4.9 Các thuộc tính bảng TTPhieuXuat
Tên thuộc Kiểu dữ liệu Chiều dài Giá trị mẫu Mô tả Ghi chú tính maPN INT 1 Mã phiếu xuất NOT
NULL maSP INT 1 Mã sản phẩm NOT
NULL donvi NVARCHAR MAX Thùng Đơn vị tính soluongXuat INT 20 Số lượng sản phẩm xuất vào dongiaXuat BIGINT 200000 Đơn giá của một sản phẩm
ThanhTien BIGINT 4000000 Thành tiền của một sản phẩm
Thiết kế một số form đầu ra
PHIẾU NHẬP KHO Ngày… Tháng … Năm…
Mã Tên hàng hóa Đơn vị Số lượng Đơn giá Thành tiền sản phẩm
Kế toán Nhân viên lập phiếu
PHIẾU XUẤT KHO Ngày… Tháng … Năm…
Mã Tên hàng hóa Đơn vị Số lượng Đơn giá Thành tiền sản phẩm
Kế toán Nhân viên lập phiếu
4.5.3 Báo cáo thống kê hàng tồn kho
BÁO CÁO THỐNG KÊ HÀNG TỒN KHO
Mã sản Tên sản phẩm Đơn vị Nhà cung Số lượng Ghi chú phẩm cấp tồn kho
Nhân viên lập báo cáo
4.5.4 Báo cáo thống kê phiếu nhập
BÁO CÁO PHIẾU NHẬP (Từ ngày … đến ngày….)
Mã phiếu Nhà cung Ngày nhập Tổng tiền Người lập Ghi chú nhập cấp phiếu
Nhân viên lập báo cáo
4.5.5 Báo cáo thống kê phiếu xuất
Mã phiếu Nhà cung Ngày xuất Tổng tiền Người lập Ghi chú xuất cấp phiếu
Nhân viên lập báo cáo
TRIỂN KHAI VÀ ĐÁNH GIÁ HỆ THỐNG
Kết quả chạy thử
Hình 5.1 Màn hình chức năng quản lý nhân viên
Hình 5.2 Màn hình chức năng quản lý hàng hóa
Hình 5.3 Màn hình chức năng quản lý nhà cung cấp
Hình 5.4 Màn hình chức năng quản lý chi nhánh
Hình 5.5 Màn hình chức năng tạo phiếu nhập và chức năng chỉnh sửa phiếu nhập
Hình 5.6 Màn hình chức năng tạo phiếu xuất và chức năng chỉnh sửa phiếu xuất
Hình 5.7 Màn hình tìm kiếm nhân viên
Hình 5.8 Màn hình tìm kiếm hàng hóa
Hình 5.9 Màn hình tìm kiếm nhà cung cấp
Hình 5.10 Màn hình tìm kiếm chi nhánh
Hình 5.11 Màn hình tìm kiếm phiếu nhập
Hình 5.12 Màn hình tìm kiếm phiếu xuất
Hình 5.13 Màn hình Báo cáo thống kê tồn kho
Hình 5.14 Màn hình Báo cáo thống kê nhập kho
Hình 5.15 Màn hình Báo cáo thống kê xuất kho
Đánh giá hệ thống
Sau khi tiến hành chạy thử và kiểm tra các chức năng của hệ thống, chúng tôi nhận thấy rằng hệ thống cơ bản đã đáp ứng được hầu hết các chức năng ban đầu đã đề ra.
Hệ thống quản lý nhân viên hiện có các chức năng ổn định như thêm, chỉnh sửa và xóa nhân viên Đặc biệt, chức năng tạo tài khoản nhân viên đã được tích hợp cùng với chức năng chỉnh sửa, giúp tối ưu hóa quy trình quản lý.
Hệ thống hiện tại đã hoạt động ổn định với các chức năng quản lý hàng hóa, quản lý nhà cung cấp, quản lý chi nhánh và tìm kiếm thông tin.
- Đối với chức năng Quản lý nhập kho, Quản lý xuất kho: Đã đáp ứng được các chức năng tạo phiếu và chỉnh sửa phiếu.
Hệ thống đã hoàn thiện chức năng Báo cáo thống kê, cung cấp đầy đủ các loại báo cáo cần thiết như báo cáo số lượng tồn kho, báo cáo nhập kho và báo cáo xuất kho.
Bên cạnh đó, trong quá trình thực hiện đề tài, nhóm vẫn còn gặp một số vấn đề trong việc triển khai một số chức năng của hệ thống:
- Hệ thống chưa có các chức năng in phiếu nhập, in phiếu xuất và in các loại báo cáo.
- Chưa có chức năng kiểm tra lịch sử chỉnh sửa phiếu nhập kho và phiếu xuất kho.
Nhóm chúng em sẽ tiếp tục nghiên cứu và tìm kiếm các phương pháp khắc phục những vấn đề hiện tại, đồng thời tìm ra các giải pháp tối ưu hóa hệ thống khi được triển khai.