Tải bản đầy đủ (.docx) (32 trang)

Quản lý bán hàng trong siêu thị

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (577.94 KB, 32 trang )

MỤC LỤC
1
LỜI NÓI ĐẦU
Như chúng ta đã biết thì ngày nay khoa học phát triển cho nên tin học đã được
ứng dụng rộng rãi trong mọi lĩnh vực của đời sống. Khoa học máy tính đang phát
triển với tốc độ ngày càng nhanh chóng và xâm nhập ngày càng sâu vào mọi lĩnh
vực khoa học, công nghệ, kinh tế, xã hội, quản lý Nhà nước, quản lý doanh nghiệp.
Một trong những lĩnh vực đang được ứng dụng tin học hóa rất phổ biến ở nước ta là
các lĩnh vực hỗ trợ các chương trình quản lý và bán hàng. Tin học hóa trong quản lý đã
giúp cho các nhà quản lý điều hành công việc một cách khoa học, chính xác, hiệu quả.
Quản lý siêu thị là một trong những công việc tương đối phức tạp, tốn nhiều thời
gian và công sức. Quản lý siêu thị đòi hỏi phải thường xuyên theo dõi chính xác số
lượng hàng hóa, khách hàng , nhân viên, nhà cung cấp…thuộc nhiều loại đối tượng
phục vụ của siêu thị. Chính vì vậy, tin học hóa trong lĩnh vực quản lí siêu thị là một
yêu cầu tất yếu.Muốn quản lý tốt cần có được các phần mềm tốt, phần mềm phải đảm
bảo được độ bảo mật cao, dễ sử dụng tích hợp nhiều tiện ích.
Dưạ trên nhu cầu thực tế của thị trường ,trong đợt thực tập chuyên ngành này em
đã quyết định chọn đề tài “Nghiên cứu và xây dựng chương trình hỗ trợ nghiệp vụ bán
hàng trong các siêu thị vừa và nhỏ”. Qua đó em đã thiết lập một chương trình Demo
hỗ trợ nghiệp vụ bán hàng,quản lý cho các siêu thị . Chương trình này sẽ mang lại sự
tiện lợi trong công tác bán hàng cũng như quản lý và tạo nên sự cạnh tranh tốt hơn cho
siêu thị.
2
CHƯƠNG 1
CƠ SỞ LÝ THUYẾT
1.1. Hệ quản trị cơ sở dữ liệu SQL
1.1.1. Khái niệm
SQL, viết tắt của Structured Query Language (ngôn ngữ truy vấn có cấu trúc), là
công cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợc lưu trữ trong các cơ sở
dữ liệu.SQL là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để tương tác
với cơ sở dữ liệu quan hệ.


Tên gọi ngôn ngữ hỏi có cấu trúc phần nào làm chúng ta liên tưởng đến một công
cụ (ngôn ngữ) dùng để truy xuất dữ liệu trong các cơ sở dữ liệu. Thực sự mà nói, khả
năng của SQL vượt xa so với một công cụ truy xuất dữ liệu, mặc dù đây là mục đích
ban đầu khi SQL được xây dựng nên và truy xuất dữ liệu vẫn còn là một trong những
chức năng quan trọng của nó. SQL được sử dụng để điều khiển tất cả các chức năng
mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm:
• Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, các
cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần dữ liệu.
• Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện các
thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ liệu.
• Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát các thao
tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu.
Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong cơ sở dữ liệu
nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao tác cập nhật cũng
như các lỗi của hệ thống.
Như vậy, có thể nói rằng SQL là một ngôn ngữ hoàn thiện được sử dụng trong các
hệ thống cơ sở dữ liệu và là một thành phần không thể thiếu trong các hệ quản trị cơ sở
dữ liệu. Mặc dù SQL không phải là một ngôn ngữ lập trình như C, C++, Java, song
các câu lệnh mà SQL cung cấp có thể được nhúng vào trong các ngôn ngữ lập trình
nhằm xây các Khác với các ngôn ngữ lập trình quen thuộc như C, C++, Java, SQL là
ngôn ngữ có tính khai báo. Với SQL, người dùng chỉ cần mô tả các yêu cầu cần phải
thực hiện trên cơ sở dữ liệu mà không cần phải chỉ ra cách thức thực hiện các yêu cầu
như thế nào. Chính vì vậy, SQL là ngôn ngữ dễ tiếp cận và dễ sử dụng.
3
1.1.2. Vai trò
Bản thân SQL không phải là một hệ quản trị cơ sở dữ liệu, nó không thể tồn tại
độc lập. SQL thực sự là một phần của hệ quản trị cơ sở dữ liệu, nó xuất hiện trong các
hệ quản trị cơ sở dữ liệu với vai trò ngôn ngữ và là công cụ giao tiếp giữa người sử
dụng và hệ quản trị cơ sở dữ liệu.
Trong hệ quản trị cơ sở dữ liệu quan hệ, SQL có những vai trò sau:

 SQL là ngôn ngữ hỏi có tính tương tác: Người sử dụng có thể dễ dàng thông qua các
trình tiện ích để gởi các yêu cầu dưới dạng các câu lệnh SQL đến cơ sở dữ liệu và nhận
kết quả trả về từ co sở dữ liệu.
 SQL là ngôn ngữ lập trình cơ sở dữ liệu: Các lập trình viên có thể nhúng các câu lệnh
SQL vào trong các ngôn ngữ lập trình để xây dựng nên các chương trình ứng dụng
giao tiếp với cơ sở dự liệu.
 SQL là ngôn ngữ quản trị cơ sở dữ liệu: Thông qua SQL, người quản trị cơ sở dữ liệu
có thể quản lý được cơ sở dữ liệu, định nghĩa các cấu trúc lưu trữ dữ liệu, điều khiển
truy cập cơ sở dữ liệu.
 SQL là ngôn ngữ cho các hệ thống khách/chủ (client/server): Trong các hệ thống cơ sở
dữ liệu khách/chủ, SQL được sử dụng như là công cụ để giao tiếp giữa các trình ứng
dụng phía máy khách với máy chủ cơ sở dữ liệu.
SQL là ngôn ngữ truy cập dữ liệu trên Internet: Cho đến nay, hầu hết các máy chủ Web
cũng như các máy chủ trên Internet sử dụng SQL với vai trò là ngôn ngữ để tương tác
với dữ liệu trong các cơ sở dữ liệu.
 SQL là ngôn ngữ cơ sở dữ liệu phân tán: Đối với các hệ quản trị cơ sở dữ liệu phân
tán, mỗi một hệ thống sử dụng SQL để giao tiếp với các hệ thống khác trên mạng, gửi
và nhận các yêu cầu truy xuất dữ liệu với nhau.
 SQL là ngôn ngữ sử dụng cho các cổng giao tiếp cơ sở dữ liệu: Trong một hệ
thống mạng máy tính với nhiều hệ quản trị cơ sở dữ liệu khác nhau, SQL thường được
sử dụng như là một chuẩn ngôn ngữ để giao tiếp giữa các hệ quản trị cơ sở dữ liệu với
nhau trong các hệ thống khác nhau.
4
1.1.3. Các kiểu dữ liệu cơ bản
Bảng 1.1: Các kiểu dữ liệu cơ bản
1.2. Tìm hiểu về C#
Ngôn ngữ C# khá đơn giản nhưng nó có ý nghĩa cao khi thực thi khái niệm lập
trình hiện đại. C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component,
lập trình hướng đối tượng.Những tính chất đó hiện diện trong một ngôn ngữ lập trình
hiện đại.

Trong ngôn ngữ C# mọi thứ liên quan đến khai báo lớp đều được tìm thấy trong
phần khai báo của nó.Định nghĩa một lớp trong ngôn ngữ C# không đòi hỏi phải chia
ra tập tin header và tập tin nguồn giống như trong ngôn ngữ C++.
C# cũng hỗ trợ giao diện interface, nó được xem như một cam kết với một lớp cho
những dịch vụ mà giao diện quy định. Trong ngôn ngữ C#, một lớp chỉ có thể kế thừa
từ duy nhất một lớp cha, tức là không cho đa kế thừa, nhưng một lớp có thể thực thi
nhiều giao diện.Khi một lớp thực thi một giao diện thì nó sẽ cung cấp chức năng thực
thi giao diện.
Trong ngôn ngữ C#, những cấu trúc cũng được hỗ trợ, nhưng khái niệm về ngữ
nghĩa của nó thay đổi khác với C++.Trong C#, một cấu trúc được giới hạn là kiểu dữ
liệu nhỏ gọn, và khi tạo thể hiện thì nó yêu cầu ít hơn về hệ điều hành với bộ nhớ so
5
với một lớp. Một cấu trúc thì không thể kế thừa từ một lớp hay được kế thừa nhưng
một cấu trúc có thể thực thi một giao diện.
Ngôn ngữ C# cung cấp những đặc tính hướng thành phần (component - oriented),
như là những thuộc tính, những sự kiện.Lập trình hướng thành phần được hỗ trợ bởi
CLR cho phép lưu trữ metadata với mã nguồn cho một lớp.
1.2.1. Tại sao phải sử dụng ngôn ngữ C#
- C# là ngôn ngữ đơn giản
-C# là ngôn ngữ hiện đại
- C# là ngôn ngữ hướng đối tượng
- C# là ngôn ngữ mạnh mẽ và cũng mềm dẻo
- C# là ngôn ngữ ít từ khóa
1.2.2. Các bước chuẩn bị cho chương trình
Khi tạo một chương trình trong C# hay bất kỳ ngôn ngữ nào khác, đều tuân theo
các bước tuần tự sau:
- Xác định mục tiêu của chương trình
- Xác định những phương pháp giải quyết vấn đề
- Tạo một chương trình để giái quyết vấn đề
- Thực thi chương trình để xem kết quả

1.2.3. Chương trình C# đơn giản
Để bắt đầu tìm hiểu ngôn ngữ C# và tạo tiền đề cho các chương sau, ta sẽ xem
chương trình C# đơn giản sau:
- Nhấn Start/ nhấn All Program
- Chọn Microsoft Visual Studio 2005
- Từ menu File chọn New, chọn Project thì hình 1 xuất hiện.
 Lớp, đối tượng và kiểu dữ liệu (type)
Điều cốt lõi của lập trình hướng đối tượng là tạo ra các kiểu mới, nó có thể là
một bảng dữ liệu, một tiểu trình, hay một nút lệnh trong cửa sổ. Kiểu được định nghĩa
như một dạng vừa có thuộc tính chung và các hành vi của nó.
6
Cũng như nhiều ngôn ngữ lập trình hướng đối tượng khác, kiểu trong C# được
định nghĩa là một lớp (class) và các thể hiện của từng lớp là một đối tuợng và đối
tuợng đó được gọi là đối tượng (object).
Để định nghĩa một lớp trong C#, ta sử dụng từ khóa class, sau đó đến tên lớp.
Thân của lớp được nằm trong dấu {}.
Chú ý: sau khai báo lớp trong C# không có dấu “ ; ”.
 Phương thức
Hai thành phần chính cấu thành một lớp là thuộc tính hay phương thức. Phương
thức chính là các hàm thành viên trong một lớp.Về bản chất, phương thức trong C#
cũng giống như hàm trong C++. Trong ví dụ trên, chúng ta có một phương thức,
nhưng đây là một phương thức đặc biệt đó là phương thức Main().
Khi chương trình thực thi, CLR gọi hàm Main() đầu tiên, hàm Main() là đầu
vào của chương trình, và mỗi chương trình đều phải có một hàm Main().
Để khai báo một phương thức, ta phải xác định kiểu giá trị trả về, tên phương
thức, và các tham số càn thiết cho phương thức thực hiện.
 Chú thích
Một chương trình tốt là một chương trình có các dòng chú thích kèm theo. Các
đoạn chú thích này sẽ không được biên dịch và cũng không tham gia vào chương trình.
Mục đích chính của nó là làm cho đoạn mã nguồn rõ ràng và dễ hiểu.

Cũng giống như trong C++, trong ngôn ngữ C# chúng ta có 2 cách chú thích. Để
chú thích trên một dòng thì ta bắt đầu bằng 2 ký tự “//”. Khi trình biên dịch gặp 2 ký tự
này thì sẽ bỏ qua dòng đó.
Ví dụ: // khởi tạo đối tượng để chú thích trên nhiều dòng thì ta bắt đầu bởi ký tự
“/*” và kết thúc bởi “*/”.
 Ứng dụng Console
Ví dụ đơn giản trên được gọi là ứng dụng Console, ứng dụng console này giao
tiếp với người dùng thông qua bàn phím và không có giao diện người dùng (GUI).
Trong các chương trình xây dựng các ứng dụng nâng cao trên Windows hay trên Web
thì ta mới sự dụng giao diện đồ họa. Trong giáo trình này, ta sẽ đuợc sử dụng thuần túy
các ứng dụng console.
 Namespace
7
.NET cung cấp một thư viện các lớp đồ sộ và thư viện này có tên là FCL
( Framework Class Library), trong đó Console là một lớp nhỏ trong thư viện. Do đó sẽ
nảy sinh vấn đề là người lập trình không thể nhớ hết được tên của các lớp trong .NET
Framework. Đặc biệt là sau này ta có thể tạo ra một lớp mà lớp này lại trùng với lớp đã
có trong thư viện, điều này dẫn đến sự tranh chấp khi biên dịch vì C# chỉ cho phép một
tên duy nhất.
Giải pháp để giải quyết vấn đề là việc tạo ra một không gian tên namespace,
namespace sẽ hạn chế phạm vi của 1 tên, làm cho tên này chỉ có ý nghĩa trong vùng đã
định nghĩa.
 Toán tử ‘.’
Toán tử ‘.’ Được sử dụng để truy cập đến phương thức hay thuộc tính trong
một lớp, và ngăn cách giữa tên lớp đến một namespace. Việc thực hiện này được viết
theo hướng từ trên xuống (hay từ cao xuống thấp), trong đó mức đầu tiên là
namespace, rồi đến lớp, đến phương thức,…tuy nhiên nếu ta đã khai báo namespace
rồi thì ta hoàn toàn có thể bỏ qua không gian tên.
 Từ khóa using
Để cho chương trình trở lên gọn hơn, không mất thời gian phải viết từng

namespace cho từng đối tượng, C# cung cấp từ khóa using, sau từ khóa này là một
namespace với mô tả đầy đủ trong cấu trúc phân cấp của nó.
Ví dụ: khi ta bắt đầu mở một dự án mới, luôn xuất hiện: using System;
8
CHƯƠNG 2
KHẢO SÁT NGHIỆP VỤ QUẢN LÝ
BÁN HÀNG TRONG SIÊU THỊ THANH NIÊN
2.1. Đặt vấn đề
- Ngày nay nhu cầu mua sắm của người dân tăng lên không ngừng.
- Hàng loạt các sản phẩm với mẫu mã phong phú ra đời, làm cho khách hàng băn
khoăn trong việc lựa chọn sản phẩm phù hợp nhất với mình.
- Để đáp ứng nhu cầu mua sắm của người dân, đã có rất nhiều siêu thị được
thành lập nhằm mục đích phục vụ khách hàng.
* Bài toán được đặt ra ở đây là làm thế nào để hệ thống siêu thị được hoạt động
tốt không xảy ra nhầm lẫn, sai sót, thu được lợi nhuận cao mà đáp ứng , thỏa mãn, hài
lòng của khách hàng
2.2. Khảo sát hệ thống quản lý bán hàng trong siêu thị Thanh Niên
Qua khảo sát trên mạng và khảo sát thực tế tại siêu thị Thanh Niên địa chỉ tại
thành phố thái nguyên, em đã tìm hiểu được nhiều thông tin về bộ máy và quy trình
hoạt động của siêu thị và rút ra được một số đặc điểm quản lí của siêu thị như sau:
2.2.1. Cơ cấu tổ chức
Mỗi bộ phận trong siêu thị đều tham gia trực tiếp hoặc gián tiếp đến một phần
việc của mình trong hệ thống siêu thị.Thông qua chức năng và quyền hạn có thể chia
thành:
- Bộ phận quản lí
- Bộ phận kế toán
- Bộ phận quản lí kho và nhập hàng
- Bộ phận bán hàng
- Bộ phận bảo vệ
• Bộ phận quản lí siêu thị

- Nắm bắt được toàn bộ tình hình của siêu thị
- Nắm bắt được báo cáo doanh thu tại mọi thời điểm
- Nắm bắt được tình hình thu chi của siêu thị mọi lúc, mọi nơi
9
- Nắm bắt được kết quả hoạt động của siêu thị qua báo cáo lợi nhuận kinh doanh
- Nắm được tình trạng hàng hóa trong siêu thị còn hay hết thông qua báo cáo
xuất nhập và báo cáo hàng tồn trong kho
- Đưa ra quyết định phù hợp cho từng thời điểm
• Bộ phận kế toán:
- Quản lí toàn bộ quá trình nhập xuất hàng hóa, công nợ nhà cung cấp, công nợ
khách hàng và lợi nhuận kinh doanh
- Quản lí bộ phận thu ngân của siêu thị
- Cung cấp số liệu và các báo cáo cho lãnh đạo một cách nhanh nhất và chính xác
nhất để kịp thời đưa ra những quyết định cụ thể.
• Bộ phận bán hàng:
- thái độ thân thiện, niềm nở với khách hàng
- Nắm bắt tốt hành vi, tâm lí của người mua hàng
- Thao tác bán hàng nhanh chóng, chính xác, giải quyết tốt trong những lúc đông
khách, mang đến sự hài lòng tối đa cho khách hàng.
- Chịu trách nhiệm tại quầy thu ngân kiểm tra hàng và làm thủ tục thanh toán
- Thực hiện các thao tác với 1 chương trình đã được cài đặt sẵn trên máy tính để
in hóa đơn và thống kê doanh thu.
- Bộ phận quản lí kho, nhập hàng:
- Quản lí nhà cung cấp hàng
- Quản lí số lượng hàng trong kho
- Quản lí hàng nhập kho và xuất kho.
• Bộ phận bảo vệ
- Quản lí nhân viên bảo vệ
- Quản lí ca kíp trực bảo vệ vùng làm việc
- Dự kiến xây dựng kho dữ liệu cho chương trình quản lí mới như sau:

-Quản lí phương tiện, đồ đạc cho khách hàng.
• Các thiết bị cơ bản mà một siêu thị cần trang bị:
10
- Máy in mã vạch: ứng dụng trong quản lí nhập hàng
2.2.2.Quy trình hoạt động
Khai báo hệ thống danh mục:
 Khai báo kho hàng:
Đây là việc khai báo những kho hàng mà doanh nghiệp định mở, có thể 1,2 hoặc
nhiều kho tùy theo mô hình của doanh nghiệp. Việc khai báo kho hàng để xác định vị
trí khi hàng hóa mang về sẽ được đưa vào kho nào.
 Khai báo ngành hàng:
Việc khai báo ngành hàng là việc rất quan trọng, nó liên quan đến tất cả các phần
việc phát sinh của siêu thị, đặc biệt là việc sắp xếp hàng hóa sau này cũng như việc
kiểm kê, một hoạt động không thể thiếu của siêu thị.
Ngành hàng ở đây được mặc định là các chữ cái từ A đến Z, và nó được nhảy tự
động tăng dần mỗi khi khai báo.
Siêu thị phải lên kế hoạch xem khai báo bao nhiêu ngành hàng, đặt tên cho các
ngành hàng là gì
Ví dụ: Ngành hàng A: Chăm sóc tóc: là các sản phẩm liên qua đến tóc như dầu
gội, dầu xả, ủ tóc v.v
Ngành hàng B: Chăm sóc da : là các sản phẩm liên quan đến da, như sữa rửa mặt,
kem dưỡng da……
Lưu ý: Phần khai báo ngành hàng phải chính xác vì mã ngành sẽ là chữ cái đầu
tiên được gắn với mã hàng sau này và không sửa được
 Khai báo nhóm hàng:
Sau khi khai báo ngành hàng, người dùng sẽ khai báo nhóm hàng. Ngành hàng là
một ngành lớn, nhóm hàng là cấp nhỏ hơn sau ngành hàng .Trong 1 ngành hàng sẽ bao
gồm nhiều nhóm hàng. Nhóm hàng gồm 5 chữ số bắt đầu từ 00001 và tăng dần
Cũng như việc khai báo ngành hàng, việc khai báo nhóm hàng chính xác ngay từ đầu
sẽ rất quan trọng cho người nhập máy sau này và cả công việc kiểm kê

 Khai báo đơn vị tính:
Là việc khai báo các đơn vị tính của hàng hóa như thùng, gói, kg, hộp…
Những phần khai báo trên nên được lên kế hoạch và làm từ trước khi nhập hàng về để
đảm bảo độ chính xác, không bị động, tránh sai sót.
11
 Khai báo nhà cung cấp:
Đây là việc khai báo các nhà cung cấp hàng cho siêu thị, gồm 4 chữ số bắt đầu từ
0001 và tự động tăng dần mỗi khi khai báo nhà cung cấp mới.Việc khai báo các thông
tin nhà cung cấp phải được khai báo đầy đủ, chính xác, thuận tiện cho việc tra cứu, tìm
kiếm nhà cung cấp sau này, tránh tình trạng một nhà cung cấp được tạo nhiều lần.
 Khai báo mặt hàng:
Đây có thể nói là phần khai báo quan trọng nhất bởi nó yêu cầu độ chính xác
tuyệt đối, nó liên quan trực tiếp đến phần bán hàng, phần kinh doanh cũng như các
công việc tra cứu sau này. Chính vì vậy việc khai báo phần mặt hàng phải được khai
báo đầy đủ, chính xác
 Thực hiện các giao dịch nhập xuất:
1.Nhập hàng từ nhà cung cấp:
Nhập hàng từ đơn đặt hàng (đơn do bộ phận kinh doanh tạo ra để gửi đến nhà
cung cấp ở phần tạo đơn đặt hàng- sẽ nói ở phần kinh doanh)
2. Nhập hàng không theo đơn đặt hàng:
Tức là người sử dụng tự gõ mã và số lương hàng nhập vào
 Đây là việc in tem mã vạch để dán lên hàng hóa. Ngoài những hàng hóa siêu thị
bán bằng barcode, thì những ,mặt hàng không có barcode hoặc barcode trùng nhau
thì phải bán bằng mã phụ.In tem có 2 cách:
 Xuất điều chuyển:
Khi hàng hóa nhập từ nhà cung cấp vào 1 kho nào đấy, hàng hóa sẽ được điều
chuyển ra quầy hoặc điều chuyển từ kho này sang kho khác
Điều chuyển nguyên phiếu: Tức là điều chuyển nguyên cả 1 phiếu nhập nào đó
từ kho này sang kho khác
Điều chuyển tự động theo quy định số tồn: giúp người quản lý siêu thị không phải chờ

bộ phận quầy vẫn có thể điều chuyển hàng ra ngoài
 Xuất hàng điều chỉnh:
Phiếu này được sử dụng khi cần điều chỉnh một mã hàng nào đấy liên quan đến
mã hàng, giá nhập,nhầm mã … do người nhập bị làm nhầm và cần xuất ra để nhập lại
mã đúng.( ở phần nhập hàng điều chỉnh)
12
 Xuất hủy:
Đây là phần xuất hàng hóa bị hư hỏng, hết date,,, không còn sử dụng được nữa
cần phải hủy. Căn cứ vào chứng từ có sự ký duyệt của ban\ lãnh đạo phòng máy sẽ tiến
hành tạo phiếu xuất hủy.Các bước như sau:
Khi hàng hóa bị hỏng , hết date,,, cần được xuất hủy sẽ được điều chuyển từ các
kho khác về kho xuất hủy,sau đó từ kho xuất hủy sẽ xuất đi.Phiếu xuất hủy chỉ được
xuất từ kho xuất hủy đi.
Căn cứ vào phiếu xuất hủy các bộ phận liên quan sẽ tiến hành hủy hàng hóa,
chuyển chứng từ lên cho bộ phận quản lý. Và quy trình đã hoàn thành.
 Hàng tăng giá, giảm giá:
Giá cả hàng hóa có thể thay đổi lên hoặc xuống, chính vì vậy siêu thị cũng sẽ có
những điều chỉnh giá bán cho phù hợp với từng thời điểm.Để tránh việc ảnh hưởng
đến phần bán hàng, vì dữ liệu online liên tục chính vì vậy khi có quyết định tăng giá,
giảm giá thì hàng phải được thu hồi về kho tăng giám giá
Căn cứ vào quyết định tăng giá giảm giá của người phụ trách kho đó phòng máy
sẽ tiến hành điều chuyển hàng hóa cần tăng giảm về kho tăng giá, giảm giá.Khi đó vào
phần mặt hàng để thay đổi giá bán của hàng hóa đó,sau khi thay đổi xong, cần in tem
lại theo giá mới( đối với mặt hàng cần in tem) và sau đó lại điều chuyển hang hóa đó
về kho hoặc quầy
Sở dĩ có kho tăng giá giảm giá để sau này phuc vụ cho công tác quản lý cũng như
kinh doanh theo dõi được sự biến động của lãi xuất hàng bán ra trong từng thời điểm
để có những nhận định chinh xác
 Chương trình khuyến mại:
Chương trình khuyến mại được sử dụng khi siêu thị có kế hoạch làm các chương

trình giảm giá , khuyến mại nào đấy. Có thể khuyến mại bằng tiền, bằng hàng, mua
hàng tặng hàng, theo từng thời gian
 Bộ phận kinh doanh:
Là bộ phận trực tiếp đặt hàng đến nhà cung cấp, theo dõi hàng bán nhanh, bán
chậm, tốc độ bán hàng để có chiến lược kinh doanh hợp lý. Bộ phận kinh doanh không
thực hiện các giao dịch trực tiếp( trừ giao dịch đặt hàng từ nhà cung cấp) mà chủ yếu
liên quan đến các báo cáo, tra cứu thông tin hàng ngàyChính vì đặc thù của bộ phận
13
này, là bộ phận chỉ trực tiếp đặt đơn đặt hàng nên phần quan trọng đối với bộ phận
kinh doanh là phần đơn đặt hàng
 Bộ phận quản lý, kế toán:
Đây là bộ phận rất quan trọng, đó là bộ phận đi sau và kiểm tra lại toàn bộ hoạt
động của phòng kinh doanh, phòng nhập máy, lấy số liệu để hạch toán kế toán cũng
như việc báo cáo, phát hiện sai sót của các bộ phận khác.Bộ phận quản lý sẽ nắm bắt
toàn bộ hoạt động của siêu thị thông qua phần mềm, từ khâu kinh doanh đặt hàng đến
khâu nhập máy, tăng giá giảm giá, xuất hủy, xuất trả … đến hoạt động bán lẻ tại siêu
thị như doanh số bán, hàng nhập trả lại, chiết khấu, các hoạt động của thu ngân như
dùng F3, khách trả lại….Nói tóm lại bộ phận quản lý phải nắm rất rõ về phần mềm để
cho việc tra cứu, kiểm tra được dễ dàng chính xác
Bộ phận quản lý quan tâm đến đường đi của một chứng từ, bắt đầu bằng đơn đặt
hàng từ nhà cung cáp được bộ phận kinh doanh fax và chuyển đến nhà cungcấp,
nhàcung cấp khi đến giao hàng mang theo đơn đặt hàng, căn cứ vào đơn đặt hàng bộ
phận kho sẽ nhận hàng, Sau k hi nhận hàng xong chứng từ sẽ được chuyển lên phòng
kế toán và bộ phận nhập máy. Bộ phận quản lý sẽ kiểm tra lại xem chứng từ nhập hàng
và chứng từ nhập máy đã khớp với nhau chưa, nếu chưa khớp phải điều tra nguyên
nhân xem xét
Bộ phận quản lý thường không trực tiếp làm các thao tác mà chủ yếu căn cứ vào
các công việc của bộ phận khác đã làm trên phần mềm kết hợp cùng các chứng từ gốc
để tra cứu , kiểm tra lại.
Căn cứ vào các chứng từ do các bộ phận khác cung cấp như bộ phận nhập máy

sau khi hoàn thành phải bản giao lại chứng từ cho kế toán, căn cứ vào các chứng từ
đấy bộ phận quản lý sẽ kiểm tra lại xem đã cân đối chưa, có sai lệch gì không,đối
chiếu các đơn đề ngị hủy, tăng giá giảm giá với các giao dịch tương được trên phần
mềm xem đã đúng chưa, có lệch lạc gì không.Chính vì vậy bộ phận quản lý sẽ quan
tâm tới tất cả các loại báo cáo trên phần mềm đã có
 Kiểm kê:
Một trong những phần rất quan trọng của kinh doanh siêu thị làCông tác chuẩn bị
trước khi kiểm kê.Bộ phận kiểm kê phải chuẩn bị khoanh vùng hóa hóa cần kiểm kê,
từ đó có kế hoạch cho kiểm kê,kiểm kê cần chuẩn bị những công việc sau:
- Cần bao nhiêu máy kiểm kê
- Bao nhiêu người kiểm kê
14
- Thời gian dự kiến kiểm kê
- Công tác chuẩn bị phải được lên kế hoạch trước
2.2.3. Đánh giá ưu, nhược điểm của hệ thống hiện tại
 Ưu điểm
+ Nắm bắt toàn bộ báo cáo doanh thu ngay tại thời điểm cần.
+ Nắm bắt tình hình thu chi của siêu thị mọi thời điểm
+ Nắm bắt được tình trạng hàng hóa trong siêu thị qua báo cáo xuất nhập tồn kho
của siêu thị
+ Giảm tải công việc tính toán thủ công và ghi chép
+ Hệ thống cho phép xuất dữ liệu ra excel hoặc pdf nhằm làm cơ sở cho phòng kế
toán thực hiện các thao tác nghiệp vụ.
 Nhược điểm:
+ Gặp khó khăn trong việc quản lý mã vạch của hàng hóa
+ Đầu tư lớn vào thiết bị máy móc CNTT
+ Chưa mang lại hiệu quả tối ưu cho người sử dụng
2.2.4. Phạm vi và mục tiêu xây dựng hệ thống mới
 Phạm vi
Xây dựng hệ thống quản lý bán hàng siêu thị với quy mô ở mức khoa

 Mục tiêu
Khắc phục những hạn chế của hệ thống cũ đồng thời xây dựng một hệ thống quản
lý siêu thị mới hiện đại, hoàn chỉnh đáp ứng được nhu cầu học tập và nghiên cứu của
Học Sinh và cán bộ giảng dạy. Cụ thể là:
+ Bổ sung thêm nhiều các tính năng mới hỗ trợ nghiệp vụ bán hàng cũng như
công tác quản lý của các nhà quản lý siêu thị.
+ Sử dụng hệ thống máy tính hiện đại hóa những công việc thủ công trước kia
đồng thời giảm chi phí về đầu tư các thiết bị công nghệ thông tin,tạo nên một sự cạnh
tranh và đáp ứng sự hài lòng cho khách hàng.
15
 Lợi ích của xây dựng hệ thống mới
Khắc phục được những nhược điểm của hệ thống cũ như tốc độ xử lý dữ liệu
trong hệ thống nhanh hơn, bớt chi phí về mặt thời gian,kinh phí đầu tư,có sự thích nghi
với phần cứng của hệ thống và cho độ chính xác cao hơn, dễ sử dụng và thích nghi với
nhân viên,người quản lý bởi giao diện đẹp mắt và tiện dụng.
16
CHƯƠNG 3
PHÂN TÍCH THIẾT KẾ HỆ THỐNG
VÀ XÂY DỰNG CHƯƠNG TRÌNH DEMO
3.1. Mô tả bài toán
Khi siêu thị đặt hàng từ phía các nhà cung cấp thì bộ phận quản lý nhập hàng chịu
trách nhiệm liên hệ chọn được nhà cung cấp hợp lý có thể cung cấp các mặt hàng theo
yêu cầu của siêu thị trong tương lai và báo cho bộ phận bán hàng nhận thông tin về
nhà cung cấp và các mặt hàng họ có áp ứng, sau đó đăng ký thông tin với nhà cung cấp
và các mặt hàng họ có thể đáp ứng rồi đăng ký thông tin với nhà cung cấp về mặt hàng
mà siêu thị cần nhập, tiếp đó sẽ kiểm tra nếu hợp lý thì ký kết hợp đồng và nhận hàng
cho siêu thị theo như đơn đã đặt, nếu không có thể hủy hợp đồng. Lúc đó siêu thị sẽ
tìm nhà cung cấp khác.
Khi hàng về kho bộ phận quản lý kho chịu trách nhiệm nhận hàng đủ số lượng và
kiểm tra chất lượng rồi báo cáo bộ phận quản lý nhập hàng trả tiền cho nhà cung cấp.

Ngoài ra bộ phận quản lý kho cũng tạo phiếu trả hàng cho nhà cung cấp khi có mặt
hàng nào khác so với yêu cầu nhập hoặc có sản phẩm hết hạn bảo hành, sản phẩm
được nhà cung cấp thu hối. Những thông tin về mặt hàng được đưa vào cần được khai
báo các thông tin để quản lý như: tên mặt hàng, tên nhà cung cấp, trạng thái hàng, số
lượng, giá thành
Khi khách hàng có yêu cầu số lượng lớn về các mặt hàng nào đó, thì được bộ
phận bán hàng thông báo cho bộ phận kho. Nếu có đủ số lượng thỳ báo lại để làm hóa
đơn và lưu thông tin khách hàng. Nhân viên dưới kho kiểm tra lại mặt hàng đó có còn
đủ trong kho không.Nếu kho không đủ loại mặt hàng đó thì nhân viên thông báo với
khách hàng là không thể đáp ứng, và hẹn khách hàng để có thể thỏa thuận để nhận
hàng vào thời gian gần nhất. Nếu kho còn đủ nhân viên làm hóa đơn. Hàng được đưa
vào kho cùng với hóa đơn. Khách hàng đối chiếu hóa đơn của mình và hóa đơn từ kho
và nhận hàng rồi thanh toán tiền. Cuối ngày nhân viên làm báo cáo thống kê: số lượng
hàng hóa bán trong ngày, số lượng loại mặt hàng bán chạy, số lượng hàng tồn kho
trong khu bán hàng… để nắm được số hóa đơn bán hàng, số lượng bán hàng khách lẻ
trong ngày. Cuối tháng có báo cáo hàng, cuối quý có báo cáo quý.Cập nhật thong tin
khách hàng. Bộ phận quản lý tài chính kiểm tra, đối chiếu lại các hóa đơn và lập thu
chi hàng ngày, hàng tháng, hàng quý. Bộ phận kho cuối mỗi tháng lập báo cáo cập
nhật xuất, nhập, tồn để xác định được các loại hàng đã xuất, nhập, tồn kho và báo cáo
17
cho bộ phận quản lý về các loại mặt hàng và góp ý về nhập các mặt hàng sắp nhập
theo mùa và chuyền hàng ra khu vực hợp lý…
3.2. Phân tích và thiết kế hệ thống
3.2.1.Biểu đồ phân cấp chức năng và biểu đồ luồng dữ liệu
 Sơ đồ BDF
QUẢN LÝ BÁN HÀNG
BÁO CÁO HÀNG TỒN KHO
BÁO CÁO DOANH THU
QUẢN LÝ SIÊU THỊ
QUẢN LÝ CHUNG

QUẢN LÝ NHẬP HÀNG
SÁCH
THỐNG KÊ - BÁO CÁO
LẬP HÓA ĐƠN NHẬP
LẬP CHI TIẾT HÓA ĐƠN NHẬP
HÓA ĐƠN BÁN HÀNG
LẬP CHI TIẾT HÓA ĐƠN BÁN
QUẢN LÝ HÀNG HÓA
QUẢN LÝ NHÂN VIÊN
Hình 3.1: Biểu đồ phân rã chức năng
18
 Biểu đồ luồng dữ liệu mức khung cảnh(mức 0)
Hình 3.2: Biểu đồ luồng dữ liệu mức khung cảnh
Mô tả quá trình trao đổi thông tin ở mức 0:
- Nhà cung cấp sẽ cung cấp hàng hóa đến cho siêu thị khi siêu thị có nhu cầu
nhập hàng.
- Khi khách hàng có yêu cầu mua hàng,người quản lý bán hàng sẽ kiểm tra
hàng trong kho nếu mặt hàng đó còn thì sẽ bán cho khách và viết hóa đơn thu tiền.Nếu
mặt hàng đó không còn thì sẽ trả lời khách để khách có thể đổi sang mặt hàng
khác.Đến cuối ngày hoặc cuối tháng,người quản lý bán hàng sẽ báo cáo thu,chi,hàng
tồn trong kho cho ban lãnh đạo cấp trên,để có những ý kiến chỉ đạo và đưa ra các
quyết định dữ trữ nhập hàng cũng như quyết định về giá cả, chọn nhà cung cấp .v.v.
19
 Biểu đồ luồng dữ liệu mức đỉnh (mức 1)
Hình 3.3: Biểu đồ luồng dữ liệu mức đỉnh
- Biểu đồ luồng dữ liệu mức dưới đỉnh (chức năng quản lý bán hàng)
20
Hình 3.4: Biểu đồ luồng dữ liệu mức dưới đỉnh (chức năng quản lý bán hàng)
- Biểu đồ luồng dữ liệu mức dưới đỉnh (chức năng quản lý nhập hàng)
Hình 3.5: Biểu đồ luồng dữ liệu mức dưới đỉnh (chức năng quản lý nhập hàng

-Biểu đồ luồng dữ liệu mức dưới đỉnh (chức năng quản lý nhà cung cấp)
21
Hình 3.6: Biểu đồ luồng dữ liệu mức dưới đỉnh (chức năng quản lý NCC)
3.2.2. Phân tích hệ thống về dữ liệu.
3.2.2.1. Xác định các thực thể và các thuộc tính cho thực thể
Qua việc phân tích hệ thống quản lý bán hàng ở trên ta nhận thấy hệ thống cần
quản lý và lưu trữ nhưng thực thể sau:
- Khách hàng gồm các thuộc tính như sau: Mã khách hàng, tên khách hàng, địa chỉ, số
điện thoại liên lạc.
- Hàng hóa gồm các thuộc tính như sau: Mã hàng, tên hàng, mã nhà cung cấp, đơn giá
bán, số lượng.
- Hóa đơn bán hàng gồm các thuộc tính như sau: Số hóa đơn, ngày lập hóa đơn, mã
khách, tổng tiền.
- Chi tiết hóa đơn bán hàng gồm các thuộc tính như sau: Số hóa đơn, mã hàng, số lượng
hàng, tổng tiền hàng.
- Hóa đơn nhập hàng gồm các thuộc tính như sau: Số hóa đơn nhập, ngày nhập hàng,
đơn vị tính, tổng tiền.
- Chi tiết hóa đơn nhập hàng gồm các thuộc tính: Số hóa đơn nhập, mã hàng, mã nhà
cung cấp, số lượng hàng, tổng tiền.
- Nhà cung cấp gồm các thuộc tính: Mã nhà cung cấp, tên nhà cung cấp, địa chỉ, số điện
thoại liên lạc.
- Nhân viên gồm các thuộc tính: Mã nhân viên, tên nhân viên, chức vụ, ngày công, đơn
giá, tổng lương.
3.2.2.2. Thiết kế cơ sở dữ liệu
Dựa vào phần xác định các thực thể và các thuộc tính cho hệ thống ta tiền hành
xây dụng cơ sở dữ liệu như sau:
Bảng 3.1:Hóa đơn bán hàng
Tên trường Kiểu DL Ghi chú
SoHD nvarchar(50) Số hóa đơn_khóa chính
Makhach nvarchar(50) Mã khách hàng

NgayHD datetime Ngày bán hàng
TongTien int Tổng Tiền
22
Bảng 3.2:Chi tiết hóa đơn bán
Tên trường Kiểu DL Ghi chú
SoHD nvarchar(50) Số hóa đơn_khóa chính
Mahang nvarchar(50) Mã khách hàng_khóa chính
Soluong int Số lượng hàng
TongTien int Tổng Tiền
Bảng 3.3:Hóa đơn nhập hàng
Tên trường Kiểu DL Ghi chú
SoHD nvarchar(50) Số hóa đơn_khóa chính
Ngaynhap datetime Ngày nhập hàng
Donvitinh nvarchar(50) Đơn vị tính
TongTien int Tổng Tiền
Bảng 3.4:Chi tiết hóa đơn nhập
Tên trường Kiểu DL Ghi chú
SoHD nvarchar(50) Số hóa đơn_khóa chính
Mahang datetime Mã hàng_khóa chính
MaNCC nvarchar(50) Đơn vị tính
Soluong int
Số lượng hàng
Tongtien int
Tổng Tiền
23
Bảng 3.5:Hàng hóa
Tên trường Kiểu DL Ghi chú
Mahang nvarchar(50) Mã hàng_khóa chính
Tenhang nvarchar(50) Tên hàng hóa
MaNCC nvarchar(50) Mã nhà cung cấp

Soluong int Số lượng hàng
Dongia int Đơn giá
Bảng 3.6:Khách hàng
Tên trường Kiểu DL Ghi chú
Makhach nvarchar(50) Mã khách_khóa chính
Tenkhach nvarchar(50) Tên khách
Diachi nvarchar(50) Địa chỉ khách
Dienthoai nvarchar(50) Số điện thoại
Bảng 3.7:Nhân viên
Tên trường Kiểu DL Ghi chú
MaNV nvarchar(50) Mã hàng_khóa chính
TenNV nvarchar(50) Tên hàng hóa
Chucvu nvarchar(50) Mã nhà cung cấp
Ngaycong int Số lượng hàng
Dongia int Đơn giá
Tongluong int Tổng lương
- Mối quan hệ chi tiết giữa các bảng thực thể ,dựa vào các bảng thực thể chi tiết đã xây
dựng ta thiết kế mối quan hệ cho các bảng thực thể như sau:
24
Hình 3.7: Mối quan hệ giữa các bảng thực thể
25

×