VIETNAM NATIONAL UNIVERSITY, HANOIINTERNATIONAL SCHOOL BÁO CÁO CƠ SỞ DỮ LIỆU Chủ đề: Hệ thống quản lý xuất nhập tồn kho Highlands Coffee Giảng viên : Đinh Đức Mạnh Nhóm 4 Hà Nội, Tháng 1
Trang 1VIETNAM NATIONAL UNIVERSITY, HANOI
INTERNATIONAL SCHOOL
BÁO CÁO
CƠ SỞ DỮ LIỆU
Chủ đề: Hệ thống quản lý xuất nhập tồn kho Highlands Coffee
Giảng viên : Đinh Đức Mạnh
Nhóm 4
Hà Nội, Tháng 11 2024
Trang 2LỜI NÓI ĐẦU
Trong thời đại công nghệ phát triển mạnh mẽ, công nghệ đã trở thành một phần không thể thiếu trong cuộc sống Sự tiến bộ của công nghệ giúp con người tiết kiệm tài nguyên, thời gian, công sức và nâng cao hiệu quả trong sản xuất, vận chuyển, mua bán, trao đổi và quản
lý hàng hóa Các phần mềm hiện nay ngày càng được ứng dụng rộng rãi để tối ưu hóa công việc và nâng cao năng suất lao động
Nhằm đáp ứng yêu cầu môn học Cơ sở dữ liệu và vận dụng các kiến thức đã học, nhóm
em đã lựa chọn đề tài thiết kế cơ sở dữ liệu quản lý xuất nhập kho cho hệ thống
Highlands Với sự hỗ trợ của phần mềm Microsoft SQL Server, nhóm em xây dựng cơ sở
dữ liệu này để mô phỏng và quản lý hiệu quả các hoạt động nhập, xuất và lưu trữ hàng hóa
Đây là dự án đầu tiên mà nhóm em thực hiện, vì vậy không thể tránh khỏi những hạn chế vàthiếu sót Nhóm em kính mong nhận được sự góp ý và bổ sung từ thầy và các bạn để dự án
có thể hoàn thiện và phát triển hơn
Trang 3Mục lục
Chương I: Giới thiệu về hệ thống xuất nhập tồn kho của Highlands Coffee 5
Giới thiệu về doanh nghiệp 5
1 Quy trình nghiệp vụ 5
a) Nghiệp vụ quản lý nhập kho 5
- Tiếp nhận hàng hóa từ nhà cung cấp: 5
- Lưu trữ trong kho: 5
b) Nghiệp vụ quản lý xuất kho 5
- Xuất kho : 5
- Quy trình xuất: 5
c) Nghiệp vụ kiểm tra tồn kho 6
- Theo dõi và kiểm soát tồn kho: 6
- Kiểm kê định kỳ: Tiến hành kiểm kê hàng tháng, quý hoặc năm nhằm đối chiếu số liệu thực tế và dữ liệu trong hệ thống Thông thường, cuối tháng sẽ kiểm kê tồn tháng một lần 6
d) Tuân thủ các quy định 6
a) Quy trình nhập kho 6
b) Quy trình xuất kho 7
Trang 4c) Quy trình quản lý tồn kho 7
Chương II VẼ ERD, LƯỢC ĐỒ QUAN HỆ 7
2 LƯỢC ĐỒ QUAN HỆ 8
Chương III: SQL Statement 9
1 Lệnh tạo bảng: 9
2 Lệnh nhập dữ liệu cho các bảng: 12
Chương IV: Câu hỏi và lời giải nghiệp vụ bằng SQL Câu1: Sắp xếp số lượng sản phẩm từ lớn đến nhỏ theo số lượng 14
Câu 2: Đếm số đơn hàng lớn có số lượng đầu vào hơn 10 14
Câu 3: Hiển thị tất cả thông tin liên quan đến sản phẩm bằng cách nhập mã số sản phẩm.14 Câu 4: Đếm số lượng sản phẩm nhập kho 15
Câu 5: Cập nhật loại sản phẩm từ nhập kho thành xuất kho 15
Câu 6: Đếm số lượng sản phẩm có hạn từ 1/1/2025 đến 4/12/2025 15
Câu 7: Sử dụng Stored Procedure để hiển thị thông tin nhà cung cấp 15
Câu 8: Tính số ngày mà sản phẩm còn hạn sử dụng 15
Câu 9: Cộng thêm hạn sử dụng 30 ngày 16
Câu 10:Tổng số tiền đã bỏ ra để nhập hàng 16
Chương V: Kết Luận 16
Trang 5Phân chia và đánh giá mức độ làm việc:
Nguyễn Kim Chi - 23070400: 33%
Thu thập thông tin thực cho cơ sở dữ liệu
Ý tưởng lược đồ quan hệ, vẽ ERD
Tạo bảng cơ sở dữ liệu bằng SQL
Thiết kế slides
Trần Hà Anh - 23070526: 33%
Viết tường thuật kinh doanh, thu thập thông tin thực cho cơ sở dữ liệu
Thiết kế Một số báo cáo và thông tin hữu ích để sử dụng thực tế
Trang 7Chương I: Giới thiệu về hệ thống xuất nhập tồn kho của Highlands Coffee
Giới thiệu về doanh nghiệp
Highlands Coffee là một trong những chuỗi cà phê hàng đầu tại Việt Nam, nổi bật với hệ thống cửa hàng trải dài khắp cả nước Để duy trì hoạt động ổn định và đáp ứng nhu cầu khách hàng, quản lý hiệu quả kho hàng và dòng hàng hóa từ nhà cung cấp đến cửa hàng là
vô cùng quan trọng Quản lý xuất nhập tồn là một trong những yếu tố quan trọng quyết địnhthành công của doanh nghiệp trong lĩnh vực F&B Đối với Highlands Coffee, việc quản lý hiệu quả kho hàng giúp đảm bảo nguồn cung nguyên liệu ổn định, tối ưu chi phí lưu kho và tránh tình trạng thiếu hụt hoặc dư thừa nguyên liệu Báo cáo này sẽ phân tích các vấn đề về xuất nhập tồn mà Highlands Coffee đang gặp phải, cũng như đưa ra những giải pháp nhằm tối ưu hóa quy trình quản lý kho hàng, đảm bảo nguồn cung ổn định và giảm thiểu chi phí tồn kho
Trang 81 Quy trình nghiệp vụ
- Highlands Coffee là một chuỗi cà phê nổi tiếng tại Việt Nam, hoạt động trong lĩnh vực F&B Quản lý xuất nhập tồn kho (inventory management) là một phần quan trọng trong hoạt động của công ty để đảm bảo hiệu quả kinh doanh và duy trì chất lượng sản phẩm Dưới đây là quy trình nghiệp vụ liên quan đến xuất nhập tồn kho tại Highlands Coffee:
a) Nghiệp vụ quản lý nhập kho
- Tiếp nhận hàng hóa từ nhà cung cấp:
Highlands sử dụng hệ thống đặt hàng tự động để theo dõi nhu cầu nguyên vật liệu (hạt cà phê, sữa, đường, ly giấy, ống hút, v.v.)
Thời gian đặt hàng mỗi loại sản phẩm sẽ được chia vào những ngày khác nhau Nhưng tất cả tất cả các mặt hàng sẽ được về 1 tuần/lần
Quy trình kiểm tra chất lượng, số lượng cũng như hạn sử dụng của nguyên liệu đượcthực hiện ngay tại điểm nhận hàng
Các sản phẩm được phân loại theo tiêu chuẩn của công ty trước khi đưa vào kho
- Lưu trữ trong kho:
Nguyên liệu thường được lưu trữ tại kho của từng quán
Quy trình lưu trữ đảm bảo điều kiện nhiệt độ, độ ẩm phù hợp với từng loại nguyên liệu Các sản phẩm khô sẽ được để ở nơi khô ráo, thoáng mát; các sản phẩm đông lạnh
sẽ được đựng trong tủ đông
Trang 9b) Nghiệp vụ quản lý xuất kho
Sang sổ số tồn kho từ hôm trước
Kiểm tra đối chiếu số lượng hàng hóa xuất ra khỏi kho
Viết số lượng hàng cuối cùng còn lại trong kho vào sổ cũng như phần mềm
quản lý
c)Nghiệp vụ kiểm tra tồn kho
- Theo dõi và kiểm soát tồn kho:
Highlands sử dụng hệ thống kiểm soát tồn kho để cập nhật lượng hàng hóa theo thời gian thực, giúp tránh tình trạng hết hàng hoặc tồn kho quá mức
Báo cáo tồn kho thường xuyên giúp quản lý đưa ra quyết định nhập hàng, xả kho hoặc điều chuyển hàng hóa giữa các chi nhánh
- Kiểm kê định kỳ: Tiến hành kiểm kê hàng tháng, quý hoặc năm nhằm đối chiếu số liệu
thực tế và dữ liệu trong hệ thống Thông thường, cuối tháng sẽ kiểm kê tồn tháng một lần
Trang 10Mục tiêu: Đảm bảo nguyên vật liệu và hàng hóa được nhập vào kho đúng số lượng, chất
lượng và thời gian
- Bước 1: Kiểm tra số lượng hàng hoá còn lại trong kho
- Bước 2: Tạo yêu cầu nhập kho
o Cửa hàng gửi yêu cầu nhập hàng dựa trên nhu cầu sử dụng
o Duyệt yêu cầu nhập thông qua hệ thống quản lý (ERP hoặc phần mềm tương tự)
- Bước 3: Nhận hàng và kiểm tra chất lượng
o Nhà cung cấp giao hàng đến kho/cửa hàng
o Thực hiện kiểm tra:
o Số lượng hàng giao so với hóa đơn, phiếu giao hàng
o Chất lượng nguyên liệu/hàng hóa (độ tươi, hạn sử dụng, tiêu chuẩn an toàn thực
Trang 11o Hàng hóa không đạt tiêu chuẩn sẽ được từ chối hoặc trả lại
- Bước 4: Lưu trữ hàng hóa
o Nhập thông tin hàng hóa vào sổ và hệ thống quản lý kho
o Phân loại và sắp xếp hàng hóa vào khu vực lưu trữ phù hợp (theo loại, hạn sử dụng, hoặc mức độ ưu tiên sử dụng)
- Bước 5: Cập nhật tồn kho
o Hệ thống cập nhật lượng hàng tồn kho sau khi nhập
o Lưu trữ hóa đơn và phiếu nhập để đối chiếu sau này
b) Quy trình xuất kho
Mục tiêu: Đảm bảo nguyên vật liệu/hàng hóa được xuất kho đúng số lượng và chất
lượng, phục vụ sản xuất kinh doanh
- Bước 1: Chuẩn bị hàng hoá
o Các cửa hàng cần kiểm tra số lượng hàng hoá còn lại tại quầy bar để xuất kho không gặ tình trạng thừa hoặc thiếu
o Thực hiện nguyên tắc FIFO (First In, First Out) hoặc FEFO (First Expired, FirstOut) để ưu tiên xuất hàng
o Đối chiếu số lượng, loại hàng
Trang 12- Bước 2: Cập nhật tồn kho
o Sang sổ số lượng hàng tồn trong kho từ ngày trước
o Ghi lại tổng số lượng hoá còn lại trong kho sau khi xuất kho
c) Quy trình quản lý tồn kho
Mục tiêu: Đảm bảo tính chính xác của số liệu tồn kho và phát hiện sớm các vấn đề
bất thường
- Kiểm soát tồn kho:
o Xác định mức tồn kho tối thiểu và tối đa cho từng loại hàng hóa
o Hệ thống tự động cảnh báo khi lượng tồn kho vượt quá hoặc xuống dưới mức cho phép
- Quản lý hàng hư hỏng/thất thoát:
o Ghi nhận và xử lý hàng hóa hư hỏng theo quy định
o Báo cáo nguyên nhân và thực hiện các biện pháp giảm thiểu
Chương II VẼ ERD, LƯỢC ĐỒ QUAN HỆ
1 BẢN VẼ ERD
Trang 132 LƯỢC ĐỒ QUAN H Ệ
Trang 14Chương III: SQL Statement
1 Lệnh tạo bảng:
CREATE SCHEMA QLKH;
GO
(1) Bảng DanhSachSanPham
CREATE TABLE DanhSachSanPham (
MaSanPham INT PRIMARY KEY,
Trang 15(2) Bảng NhaCungCap
CREATE TABLE NhaCungCap (
MaNhaCungCap INT PRIMARY KEY,
TenNhaCungCap NVARCHAR(100),
ThongTinLienHe NVARCHAR(255)
);
(3) Bảng TonKho
CREATE TABLE TonKho (
MaSanPham INT PRIMARY KEY,
Trang 16CREATE TABLE GiaoDichKho (
PRIMARY KEY (MaGiaoDich, MaSanPham),
FOREIGN KEY (MaSanPham) REFERENCES DanhSachSanPham(MaSanPham), Sửa tên bảng
FOREIGN KEY (MaNhaCungCap) REFERENCES NhaCungCap(MaNhaCungCap));
CREATE TRIGGER trg_UpdateTonKhoNhap
Trang 17Thêm mới vào TonKho nếu chưa tồn tại
INSERT INTO TonKho (MaSanPham, TenSanPham, TonDau, Nhap, Xuat) SELECT I.MaSanPham, I.TenSanPham, NULL, 0, 0
FROM inserted AS I
WHERE NOT EXISTS (
SELECT 1 FROM TonKho TK WHERE TK.MaSanPham = I.MaSanPham );
Cập nhật giá trị Nhap nếu sản phẩm đã tồn tại
Trang 18SET NOCOUNT ON; Tắt thông báo số dòng bị ảnh hưởng
Thêm mới vào TonKho nếu chưa tồn tại
INSERT INTO TonKho (MaSanPham, TenSanPham, TonDau, Nhap, Xuat) SELECT I.MaSanPham, I.TenSanPham, NULL, 0, 0
FROM inserted AS I
WHERE NOT EXISTS (
SELECT 1 FROM TonKho TK WHERE TK.MaSanPham = I.MaSanPham );
Cập nhật giá trị Xuat nếu sản phẩm đã tồn tại
Trang 19GiaoDichKho
NhaCungCap
Trang 202 Lệnh nhập dữ liệu cho các bảng:
INSERT INTO TonKho(MaSanPham, TenSanPham, TonDau, Nhap, Xuat)
VALUES
('4020012', 'HL Caramel Cheese Junior Cakes', 2, 1, NULL),
('4020004', 'Tiramisu Junior Cake', 50, NULL, 45),
('4020014', 'Passion Cheese Junior Cakes', 10, NULL, 4),
('4020071', 'Banh sua chua pho mai', 1, 2, NULL),
('4020019', 'Su kem', 7, 1, NULL),
('4020028', 'Banh bong lan chung muoi Highlands', 4, NULL, 1),
('4010037', 'Croissant N', 6, NULL, 2),
('4020015', 'Cookie Vanilla Bo', 0.2, NULL, NULL),
('4010025', 'Highland Breadstick - Banh mi que Highlands Ga pho mai', 9, 3, NULL),('4010026', 'Highland Breadstick - Banh mi que Highlands Pate', 8, NULL, 2),
Trang 21('4010030', 'Banh mi que Highlands bo sot pho mai', 3, NULL, 1),
('1010056', 'Espresso Full city roast 1kg-Bean', 5.82, 1.08, NULL),
('1010101', 'Traditional 1kg-Group', 13.1, 3.2, NULL),
('7030001', 'Fresh Milk - Sua Tuoi', 39.9, NULL, 10.444),
('7030002', 'Condensed Milk - Sua Dac', 312, NULL, 69);
INSERT INTO DanhSachSanPham (MaSanPham, TenSanPham, SoLuongDauVao,
SoLuongBanRa, DonGia, ChungTuHoaDon, HanSuDung)
VALUES (10034, 'Highlands Breadstick N - Banh mi Highlands ga pho mai', 20, 5, 8280,
2647037, '2025-03-15'),
(10035, 'Pate Breadsticks N -Banh mi que Pate', 35, 6, 7560, 2647037, '2025-03-15'),(10036, 'Banh mi que highlands bo xot pho mai N', 5, 2, 10350, 2647037, '2025-03-15'),(10037, 'Croissant N - Banh Croissant', 12, 6, 10648, 2647037, '2025-03-15'),
Trang 22(60002, 'Nuoc Uong Dong Chai Dasani', 120, 50, 3229, 2647040, '2025-03-15'),(200072, 'Banana Cake N', 6, 3, 11510, 2647037, '2025-03-15'),
(200073, 'Green Tea Cheese Junior Cake N', 8, 5, 13600, 2647037, '2025-03-15'),(200075, 'Cocoa Mouse Cake N', 4, 2, 17830, 2647037, '2025-03-15'),
(200077, 'Highlands Caramel Cheese', 8, 7, 16750, 2647037, '2025-03-15');
INSERT INTO GiaoDichKho(MaGiaoDich, MaSanPham, LoaiGiaoDich, SoLuong, NgayGiaoDich, MaNhaCungCap)
VALUES('10002022', '10034', 'Nhap kho', 20, '2024-03-17', '22203'),
Trang 23('2007005', '200075', 'Nhap kho', 4, '2024-03-28', '22203'),
('2007007', '200077', 'Nhap kho', 8, '2024-03-29', '22203');
INSERT INTO NhaCungCap(MaNhaCungCap, TenNhaCungCap, ThongTinLienHe)
VALUES ('22203', 'Highlands Coffee', '0917 561 212'),
Trang 24Câu 2: Đếm số đơn hàng lớn có số lượng đầu vào hơn 10.
Trang 25Câu 4: Đếm số lượng sản phẩm nhập kho.
SELECT COUNT(*) SoLuongNhapKho
FROM GiaoDichKho
WHERE LoaiGiaoDich='Nhap kho';
Câu 5: Cập nhật loại sản phẩm từ nhập kho thành xuất khoCâu lệnh:
UPDATE GiaoDichKho
SET LoaiGiaoDich='Xuat kho'
WHERE LoaiGiaoDich ='Nhap kho'
AND MaSanPham = '10035';
Trang 26Câu 6: Đếm số lượng sản phẩm có hạn từ 1/1/2025 đến 4/12/2025Câu lệnh:
SELECT COUNT(*) AS TotalSanPham
FROM DanhSachSanPham
WHERE HanSuDung BETWEEN '2025-01-01' AND '2025-12-04';
Câu 7: Sử dụng Stored Procedure để hiển thị thông tin nhà cung cấp.Câu lệnh:
CREATE PROCEDURE CungCap
@NhaCungCap VARCHAR(5)
AS
BEGIN
SELECT *FROM NhaCungCap
WHERE MaNhaCungCap = @NhaCungCap;
END;
EXEC CungCap '21223' ;
Câu 8: Tính số ngày mà sản phẩm còn hạn sử dụng
Câu lệnh:
Trang 29quy trình quản lí kho chặt chẽ bằng SQL.