Giới thiệu dự án

Trong ngành công nghiệp sản xuất thức ăn chăn nuôi tại Việt Nam, chi phí nguyên vật liệu chiếm từ 75% đến 85% tổng giá trị giá thành sản phẩm. Quản trị hàng tồn kho (HTK) giữ vai trò sống còn trong việc duy trì chuỗi cung ứng thông suốt và tối ưu hóa dòng vốn lưu động. Khóa luận tốt nghiệp "Quản trị hàng tồn kho của Công ty CP Việt Pháp" (thuộc ngành Tài chính - Ngân hàng, Trường Đại học Thương mại) tập trung phân tích thực trạng vận hành kho vận, hoạch định định mức dự trữ và đề xuất giải pháp định lượng nhằm tối ưu hóa chi phí vận hành tại Công ty Cổ phần Việt Pháp (nhà sản xuất thương hiệu thức ăn chăn nuôi Voi Vàng với công suất thiết kế 300.000 tấn/năm).

+------------------------------------------------------------------------------------+
|                                 PROBLEM BREAKDOWN                                  |
|                                                                                    |
| [ Vòng quay HTK giảm ]      [ Tỷ trọng HTK/TSLĐ cao ]      [ Đặt hàng cảm tính ]   |
|   8.91 -> 6.54 vòng/năm          56.98% năm 2018             Lead time 40 ngày     |
|   (Kỳ luân chuyển +15 ngày)      (154.68 tỷ VND)             (Chưa có ROP chuẩn)   |
+------------------------------------------------------------------------------------+

Vấn đề thực tiễn và điểm nghẽn vận hành (Pain Points)

Giai đoạn 2016–2018, Công ty CP Việt Pháp đối mặt với các rủi ro tài chính và vận hành nghiêm trọng:

  • Tốc độ luân chuyển vốn suy giảm: Số vòng quay HTK giảm liên tục từ 8,91 vòng (2016) xuống 8,23 vòng (2017) và chỉ còn 6,54 vòng (2018), kéo theo kỳ luân chuyển hàng tồn kho bình quân (DSI) kéo dài từ 41 ngày lên 56 ngày.
  • Đọng vốn lưu động quy mô lớn: Giá trị HTK tăng từ 90,142 tỷ VND (2016) lên 154,682 tỷ VND (2018), chiếm tới 56,98% tổng tài sản lưu động (TSLĐ) và 39,91% tổng tài sản.
  • Hoạch định đặt hàng cảm tính: Doanh nghiệp chưa thiết lập chu kỳ đặt hàng chuẩn xác, đơn hàng mua định kỳ khoảng 45 ngày/lần (9 lần/năm) theo ước lượng thủ công, chưa xác định điểm đặt hàng lại (Reorder Point - ROP), dẫn đến phát sinh chi phí lưu kho $H = 6.940\text{ VND/kg/năm}$ và tổn thất giảm giá hàng tồn kho do suy giảm phẩm chất lên tới hàng trăm triệu đồng/năm.
  • Tỷ lệ đáp ứng đơn hàng sụt giảm: Tỷ lệ đơn hàng hoàn thành giảm từ 95,07% (2016) xuống 92,12% (2018), làm tăng nguy cơ đứt gãy cung ứng và giảm uy tín thương hiệu.

Mục tiêu nghiên cứu cụ thể

  1. Mục tiêu 1: Hệ thống hóa cơ sở lý luận tài chính - chuỗi cung ứng về quản trị HTK, chi phí đặt hàng ($S$), chi phí lưu kho ($H$), và các mô hình toán kinh tế (EOQ, POQ, QDM).
  2. Mục tiêu 2: Khảo sát thực chứng, phân tích biến động cơ cấu HTK (nguyên vật liệu, công cụ dụng cụ, bán thành phẩm, thành phẩm) và đánh giá hiệu quả qua 120 phiếu điều tra chuyên gia nội bộ giai đoạn 2016–2018.
  3. Mục tiêu 3: Xây dựng thuật toán xác định sản lượng đặt hàng tối ưu ($Q^*$), điểm đặt hàng lại ($ROP$), chính sách chiết khấu số lượng và tích hợp hệ thống phần mềm quản lý doanh nghiệp BRAVO 7 ERP-VN.

Giải pháp và phạm vi nghiên cứu

  • Phương pháp tiếp cận: Ứng dụng mô hình sản lượng kinh tế cơ bản (Economic Order Quantity - EOQ), mô hình khấu trừ theo số lượng (Quantity Discount Model - QDM) và phân bổ ngưỡng an toàn ROP dựa trên thống kê tiêu hao thực tế.
  • Phạm vi: Dữ liệu tài chính, kho vận và định mức tiêu hao nguyên vật liệu sản xuất thức ăn chăn nuôi tại Nhà máy Tân Tiến (Vĩnh Phúc) thuộc Công ty CP Việt Pháp từ năm 2016 đến 2018.
  • Giới hạn: Nghiên cứu giả định nhu cầu nguyên vật liệu hàng năm tương đối ổn định ($D = 639.068\text{ kg}$) và thời gian giao hàng bình quân $L = 40\text{ ngày}$.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Tiêu chí Phương pháp truyền thống tại công ty Mô hình định lượng đề xuất (EOQ & ROP)
Quy mô lô đặt hàng ($Q$) Cảm tính, cố định $\approx 71.007\text{ kg/lần}$ Tối ưu hóa chi phí: $Q^* = 48.930\text{ kg/lần}$
Tần suất đặt hàng ($N$) 9 lần/năm (chu kỳ $\approx 40 - 45\text{ ngày}$) 13 lần/năm (chu kỳ chuẩn hóa $T = 28\text{ ngày}$)
Điểm đặt hàng lại (ROP) Ước lượng khi kho gần cạn Tự động kích hoạt khi tồn kho chạm mức $85.200\text{ kg}$
Rủi ro vận hành Ứ đọng vốn, suy hao chất lượng hạt ngũ cốc Tối thiểu hóa tổng chi phí lưu kho và đặt hàng
Kiểm soát báo cáo Báo cáo thủ công (sai lệch $12,5% - 25%$) Tự động hóa qua hệ thống ERP thời gian thực

Ma trận ưu tiên yêu cầu nghiệp vụ (MoSCoW)

  • Must have: Tự động tính toán $Q^*$ và $ROP$; cảnh báo ngưỡng tồn kho an toàn; phân loại HTK theo nhóm sản xuất (nguyên liệu thô, phụ gia, bao bì) và thành phẩm (Voi Vàng, Rubi, Mostfeed).
  • Should have: Tích hợp module quản lý chiết khấu mua hàng số lượng lớn (QDM); phân quyền kiểm soát kho 3 cấp.
  • Could have: Dự báo nhu cầu nguyên liệu tự động bằng thuật toán san bằng hàm mũ (Exponential Smoothing).
  • Won't have (kỳ này): Tự động hóa kết nối IoT cảm biến trọng lượng silo chứa ngũ cốc trực tiếp.

Thiết kế hệ thống

Technology Stack & Chuẩn kỹ thuật

  • Phần mềm quản trị hạt nhân: BRAVO 7 ERP-VN Enterprise Edition.
  • Hệ quản trị cơ sở dữ liệu: Microsoft SQL Server 2019 Standard Edition.
  • Ngôn ngữ xử lý thuật toán: Python 3.10 (thư viện NumPy 1.24, Pandas 2.0) phục vụ mô phỏng tối ưu hóa chi phí.
  • Chuẩn bảo mật: Role-Based Access Control (RBAC), mã hóa dữ liệu T-SQL TDE (Transparent Data Encryption).

Thiết kế Schema Cơ sở Dữ liệu

-- Thiết kế bảng danh mục nguyên vật liệu và tham số EOQ
CREATE TABLE Inventory_Items (
    ItemCode VARCHAR(20) PRIMARY KEY,
    ItemName NVARCHAR(100) NOT NULL,
    Category NVARCHAR(50) NOT NULL, -- 'Grain', 'Protein_Animal', 'Additive'
    AnnualDemand_D FLOAT NOT NULL,   -- Nhu cầu năm (kg)
    UnitHoldingCost_H FLOAT NOT NULL,-- Chi phí lưu kho đơn vị (VND/kg/năm)
    OrderCost_S FLOAT NOT NULL,      -- Chi phí 1 lần đặt hàng (VND)
    LeadTimeDays_L INT NOT NULL,     -- Thời gian giao hàng (ngày)
    UnitPrice FLOAT NOT NULL,        -- Đơn giá chuẩn (VND/kg)
    SafetyStock FLOAT DEFAULT 0      -- Mức dự trữ an toàn
);

-- Bảng quản lý đơn đặt hàng và điểm kích hoạt ROP
CREATE TABLE Purchase_Orders (
    OrderID INT IDENTITY(1,1) PRIMARY KEY,
    ItemCode VARCHAR(20) FOREIGN KEY REFERENCES Inventory_Items(ItemCode),
    OrderDate DATETIME DEFAULT GETDATE(),
    OrderQuantity FLOAT NOT NULL,    -- Sản lượng đặt hàng Q
    DiscountRate FLOAT DEFAULT 0.0,  -- Tỷ lệ chiết khấu (%)
    TotalCost FLOAT NOT NULL,
    OrderStatus NVARCHAR(30) DEFAULT 'Pending' -- 'Pending', 'In-Transit', 'Received'
);

Implementation và kết quả

Chi tiết thuật toán và công thức toán kinh tế

Khóa luận giải quyết bài toán cân bằng giữa Chi phí đặt hàng ($C_{đh}$) và Chi phí lưu kho ($C_{lk}$) thông qua mô hình hàm tổng chi phí:

$$TC = C_{đh} + C_{lk} + C_{mh} = S \times \frac{D}{Q} + H \times \frac{Q}{2} + P \times D$$

Trong đó:

  • $D = 639.068\text{ kg}$ (Tổng nhu cầu nguyên vật liệu năm).
  • $S = 13.000.000\text{ VND}$ (Chi phí cho 1 lần đặt mua gồm: tìm kiếm nguồn 1 triệu, giao dịch 10 triệu, bảo hiểm 2 triệu).
  • $H = 6.940\text{ VND/kg/năm}$ (Xác định từ tổng chi phí lưu kho 927.000.000 VND / 133.566 kg HTK bình quân).
  • $L = 40\text{ ngày}$ (Thời gian vận chuyển, chuẩn bị hàng).
  • Số ngày làm việc: $300\text{ ngày/năm}$.
import math

class InventoryOptimizationEngine:
    """
    Module tính toán các tham số tối ưu HTK cho Công ty CP Việt Pháp
    Dựa trên mô hình EOQ, ROP và Quantity Discount (QDM)
    """
    def __init__(self, D: float, S: float, H: float, L: int, work_days: int = 300):
        self.D = D  # Nhu cầu hàng năm (kg)
        self.S = S  # Chi phí 1 lần đặt hàng (VND)
        self.H = H  # Chi phí lưu kho 1 đơn vị/năm (VND/kg)
        self.L = L  # Lead time giao hàng (ngày)
        self.work_days = work_days

    def calculate_eoq(self) -> dict:
        # Sản lượng đặt hàng tối ưu Q* = sqrt((2 * D * S) / H)
        q_star = math.sqrt((2 * self.D * self.S) / self.H)
        num_orders = self.D / q_star
        cycle_time = self.work_days / num_orders
        
        # Mức sử dụng hàng ngày và điểm đặt hàng lại ROP
        daily_demand = self.D / self.work_days
        rop = daily_demand * self.L
        
        # Tổng chi phí biến đổi tồn kho (Chưa bao gồm tiền mua hàng)
        holding_cost = (q_star / 2) * self.H
        ordering_cost = (self.D / q_star) * self.S
        total_inventory_cost = holding_cost + ordering_cost

        return {
            "Q_star_kg": round(q_star, 2),
            "Orders_Per_Year": round(num_orders, 2),
            "Cycle_Time_Days": round(cycle_time, 1),
            "Daily_Demand_kg": round(daily_demand, 2),
            "ROP_kg": round(rop, 2),
            "Total_Inventory_Cost_VND": round(total_inventory_cost, 2)
        }

# Khởi tạo tham số thực nghiệm từ đề tài
engine = InventoryOptimizationEngine(
    D=639068, 
    S=13000000, 
    H=6940, 
    L=40, 
    work_days=300
)

results = engine.calculate_eoq()
print(f"Sản lượng đặt hàng tối ưu (Q*): {results['Q_star_kg']} kg")
print(f"Số lần đặt hàng trong năm: {results['Orders_Per_Year']} lần (~13 lần)")
print(f"Chu kỳ giữa 2 lần đặt: {results['Cycle_Time_Days']} ngày (~28 ngày)")
print(f"Điểm đặt hàng lại (ROP): {results['ROP_kg']} kg")

Kết quả tính toán thực nghiệm

  1. Sản lượng đặt hàng tối ưu: $$Q^* = \sqrt{\frac{2 \times 639.068 \times 13.000.000}{6.940}} \approx 48.930\text{ kg}$$
  2. Số lần đặt hàng chuẩn hóa: $$N = \frac{D}{Q^*} = \frac{639.068}{48.930} \approx 13\text{ lần/năm}$$
  3. Khoảng cách giữa hai lần đặt hàng: $$T = \frac{360}{13} \approx 28\text{ ngày}$$
  4. Điểm đặt hàng lại: $$d = \frac{639.068}{300} = 2.130\text{ kg/ngày} \implies ROP = d \times L = 2.130 \times 40 = 85.200\text{ kg}$$

Đánh giá phương án chiết khấu theo sản lượng (QDM)

Khi mở rộng đàm phán với nhà cung cấp nông sản (đơn giá chuẩn $P = 28.166\text{ VND/kg}$):

  • Phương án 1 (Đặt theo EOQ tiêu chuẩn $Q = 48.930\text{ kg}$):
    • Chi phí mua hàng: $C_{mh} = 639.068 \times 28.166 = 18.000.000.000\text{ VND}$.
    • Chi phí lưu kho + đặt hàng: $C_{tt} = 339.574.000\text{ VND}$.
    • Tổng chi phí: $TC_1 = 18.339.574.000\text{ VND}$.
  • Phương án 2 (Đặt số lượng lớn $Q = 100.000\text{ kg}$ hưởng chiết khấu 7%):
    • Đơn giá mới: $P' = 28.166 \times (1 - 0,07) = 26.194\text{ VND/kg}$.
    • Chi phí mua hàng: $C_{mh}' = 639.068 \times 26.194 = 16.739.747.000\text{ VND}$.
    • Chi phí tồn trữ điều chỉnh ($H = 20% \times P'$): $C_{tt}' = 261.940.000\text{ VND}$.
    • Tổng chi phí: $TC_2 = 17.084.774.000\text{ VND}$.
    • Lợi ích kinh tế: Tiết kiệm trực tiếp hơn 1,25 tỷ VND/năm nhờ chiến lược kết hợp EOQ - QDM.

Đổi mới và đóng góp

  • Chuyển dịch từ quản lý thụ động sang định lượng chính xác: Thay thế hoàn toàn quy trình mua hàng ước lượng định kỳ 45 ngày bằng hệ thống điểm kích hoạt $ROP = 85.200\text{ kg}$, loại bỏ rủi ro thiếu hụt nguyên liệu đột xuất.
  • Tối ưu hóa vốn lưu động: Giảm quy mô mỗi lô đặt hàng từ $71.007\text{ kg}$ xuống $48.930\text{ kg}$ (giảm $31,1%$), giúp giải phóng dòng tiền mặt bị chiếm dụng trong kho nguyên liệu thô.
  • Chuẩn hóa quy trình kiểm soát hao mòn vô hình: Đề xuất phương pháp phân loại hàng tồn kho theo mục đích sử dụng kết hợp lập quỹ dự phòng giảm giá hàng tồn kho định kỳ 6 tháng.
+------------------------------------------------------------------------------------+
|                         INVENTORY OPTIMIZATION BENCHMARK                           |
|                                                                                    |
| [Lô hàng đặt mua]   Hiện trạng: 71,007 kg   ====> Đề xuất: 48,930 kg (-31.1%)      |
| [Chu kỳ đặt hàng]   Hiện trạng: 45 ngày     ====> Đề xuất: 28 ngày   (-37.7%)      |
| [Thời điểm đặt]     Hiện trạng: Ước lượng   ====> Đề xuất: ROP = 85,200 kg        |
+------------------------------------------------------------------------------------+

Ứng dụng thực tế và triển khai

Lộ trình triển khai hệ thống (Roadmap)

Phân tích Chi phí - Lợi ích (ROI Analysis)

  • Chi phí đầu tư giải pháp:
    • Phí bản quyền & tùy biến module Quản lý kho BRAVO 7 ERP: 150.000.000 VND.
    • Chi phí đào tạo 12 nhân sự vận hành kho & cải tạo hạ tầng lưu trữ: 50.000.000 VND.
    • Tổng vốn đầu tư ban đầu: 200.000.000 VND.
  • Lợi ích tài chính kỳ vọng:
    • Tiết kiệm chi phí tồn trữ và hao hụt vật tư: $\approx 180.000.000\text{ VND/năm}$.
    • Lợi ích từ chiết khấu mua hàng số lượng lớn (QDM): $> 500.000.000\text{ VND/năm}$.
    • Thời gian hoàn vốn (Payback Period): Dưới 4,5 tháng.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật

  • Mô hình EOQ cơ bản giả định nhu cầu tiêu thụ và đơn giá không đổi trong suốt chu kỳ năm, chưa phản ánh đầy đủ các đợt sốt giá nông sản toàn cầu hoặc dịch bệnh chăn nuôi bất thường.
  • Chưa tích hợp mô hình tồn kho ngẫu nhiên (Probabilistic Inventory Model) với độ lệch chuẩn về Lead time từ nhà cung cấp.

Hướng phát triển tiếp theo

  • Phát triển thuật toán Dynamic Safety Stock tự động điều chỉnh ngưỡng ROP theo mùa vụ chăn nuôi (mùa tái đàn quý 3 - quý 4).
  • Nâng cấp tích hợp hệ thống mã vạch Barcode/QR Code cầm tay quét trực tiếp tại cầu cảng xuất nhập liệu nhằm nâng mức độ chính xác của báo cáo tồn kho lên 99%.

Đối tượng hưởng lợi

  • Sinh viên & Học viên cao học: Tiếp cận bộ dữ liệu thực tế về phân tích báo cáo tài chính doanh nghiệp sản xuất và phương pháp áp dụng các mô hình nghiên cứu vận hành (Operations Research) vào bài toán quản trị vốn lưu động.
  • Kỹ sư hệ thống & Lập trình viên ERP: Nắm bắt cấu trúc bảng dữ liệu, luồng nghiệp vụ quản lý vật tư sản xuất và thuật toán tính toán điểm đặt hàng lại phục vụ lập trình module kho.
  • Doanh nghiệp sản xuất & Chuỗi cung ứng: Sở hữu khung giải pháp thực chiến để tái cấu trúc kho vận, cắt giảm chi phí tồn trữ và rút ngắn thời gian quay vòng vốn lưu động.
  • Nhà nghiên cứu kinh tế ứng dụng: Tài liệu tham khảo có giá trị thực chứng cao về thực trạng quản trị tài sản ngắn hạn tại các doanh nghiệp vừa và lớn tại Việt Nam giai đoạn hậu gia nhập WTO.

Câu hỏi thường gặp

1. Điều kiện hạ tầng kỹ thuật cần thiết để triển khai hệ thống quản trị kho số hóa là gì?

Doanh nghiệp cần trang bị máy chủ chạy hệ điều hành Windows Server 2016 trở lên, cài đặt MS SQL Server 2016/2019, mạng LAN nội bộ kết nối nhà máy - kho - phòng tài chính kế toán, cùng hệ thống máy trạm và thiết bị quét mã vạch chuyên dụng tại các cửa kho xuất nhập.

2. Mô hình EOQ có bị giới hạn khi nhà cung ứng giao hàng trễ hoặc giá nguyên liệu biến động mạnh?

Có. Khi giá nguyên liệu biến động hoặc thời gian giao hàng ($L$) trễ, doanh nghiệp cần chuyển đổi sang mô hình EOQ kết hợp Dự trữ an toàn (Safety Stock) theo công thức $ROP = (d \times L) + Z \times \sigma_L$, trong đó $Z$ là hệ số dịch vụ và $\sigma_L$ là độ lệch chuẩn của thời gian giao hàng.

3. Làm thế nào để đồng bộ dữ liệu tồn kho giữa phần mềm BRAVO ERP và kế toán tài chính?

Hệ thống BRAVO 7 ERP-VN cung cấp cơ chế tự động hạch toán kép (Dual-entry Posting). Khi thủ kho xác nhận phiếu nhập/xuất vật tư trên hệ thống, phân hệ Kế toán tổng hợp sẽ tự động ghi nhận vào các tài khoản liên quan (TK 152, TK 155, TK 156, TK 632) theo thời gian thực mà không cần nhập liệu thủ công lại.

4. Chi phí bảo trì và hỗ trợ kỹ thuật định kỳ chiếm bao nhiêu phần trăm ngân sách?

Chi phí bảo trì phần mềm và nâng cấp định kỳ thường dao động từ 10% đến 15% giá trị hợp đồng bản quyền ban đầu mỗi năm, bao gồm hỗ trợ cập nhật chuẩn mực kế toán mới và tối ưu hóa hiệu năng cơ sở dữ liệu.

5. Dự kiến thời gian hòa vốn và tỷ suất hoàn vốn (ROI) sau khi tối ưu hóa là bao lâu?

Với tổng chi phí triển khai khoảng 200 triệu VND và mức tiết kiệm chi phí lưu kho, hao hụt vật tư tối thiểu 180 - 500 triệu VND/năm, thời gian hoàn vốn thực tế đạt dưới 6 tháng, tỷ suất ROI năm đầu tiên ước đạt trên 150%.


Kết luận

Đồ án khóa luận "Quản trị hàng tồn kho của Công ty CP Việt Pháp" đã giải quyết triệt để bài toán thắt nút cổ chai trong quản trị chuỗi cung ứng và vốn lưu động của doanh nghiệp sản xuất thức ăn chăn nuôi quy mô lớn. Bằng cách kết hợp phân tích thực chứng báo cáo tài chính 3 năm (2016–2018) với mô hình định lượng EOQ ($Q^ = 48.930\text{ kg}$)*, ROP ($85.200\text{ kg}$) và định hướng tích hợp BRAVO 7 ERP-VN, nghiên cứu mang lại giá trị thực tiễn cao, giúp doanh nghiệp hạ giá thành sản phẩm, giảm áp lực ứ đọng vốn và nâng cao năng lực cạnh tranh trên thị trường thức ăn chăn nuôi Việt Nam.