Safety Stock và Giải pháp tồn kho an toàn trên Odoo v16

Hồ Hoàng Thái

Tồn kho an toàn là gì?

Khái niệm:

Tồn Kho An Toàn có thể xem là 1 giải pháp nhằm đảm bảo hàng luôn có trong kho với 1 số lượng vừa đủ (điểm đặt hàng tiếp theo). Phòng khi có yêu cầu xuất hàng phát sinh nhưng chưa kịp nhập hàng mới hoặc lượng đặt xuất hàng tăng đột ngột. Lúc này Tồn Kho An Toàn sẽ thỏa mãn nhu cầu tăng bất thường này. Hạn chế các vấn đề phát sinh do thiếu hàng.

Các mô hình kinh doanh áp dụng tồn kho an toàn hiện nay rất phổ biến phải kế đến như đồ uống, vật tư tiêu hao dùng cho sản xuất, y tế, vận tải,...

Đối với một mô hình tồn kho sẽ có 2 loại tồn kho:

** Tồn kho làm việc**

  • Kỳ vọng tồn kho dùng trong chu kỳ

  • Xác định bởi nhu cầu sử dụng trong kỳ (VD: hàng tháng, hàng năm)

** Tồn kho an toàn**

  • Kỳ vọng để giảm chi phí hết hàng

  • Thường không phụ thuộc lượng đặt hàng

  • Làm thỏa mãn nhu cầu trong thời gian chờ

***Ở bài viết này chúng ta sẽ tìm hiểu tác dụng của tồn kho an toàn cũng như cách Odoo hỗ trợ hệ thống duy trì tồn kho an toàn***

Giải pháp tồn kho an toàn trên Odoo v16

1. Xác định và theo dõi mức tồn kho an toàn - Điểm đặt hàng

Để có thể quản lý tồn kho một cách hiệu quả, chúng ta cần xác định rõ số lượng và giá trị của từng loại hàng hóa trong kho để có thể đặt mức tồn kho an toàn thật tối ưu.

Khi đã xác định được mức tồn kho an toàn. Ta có thể sử dụng các phần mềm hoặc hệ thống thông tin quản lý (ERP) để giúp đỡ công việc duy trì này.

Đồng thời, việc kiểm kê hàng hóa thường xuyên sẽ giúp phát hiện sớm những sai sót hay gian lận có thể xảy ra.

2. Xác định khối lượng đặt hàng / lệnh sản xuất hợp lý

  • Đối với sản phẩm mua vào, một số nhà cung cấp sẽ có những mức giá ưu đãi khi đơn đặt hàng thỏa điều kiện về số lượng/ thời điểm giao hàng. Tuy nhiên Odoo cho phép thay đổi nhà cung cấp (NCC) ở bước tạo đơn đặt hàng mới

  • Đối với sản phẩm sản xuất, cần xác định Bill of material (BOM) và Routing cho các trạm làm việc

3. Xác định quy trình
Quy trình nhập xuất kho cần được thiết kế sao cho hiệu quả và an toàn. Đảm bảo rằng hàng hóa được đóng gói chắc chắn và đúng cách để tránh hư hỏng trong quá trình vận chuyển. Và các chiến lược xuất kho có thể kể đến như:

  • Closest Location - Vị trí gần nhất

  • FIFO (Fist In First Out) - nhập trước xuất trước

  • LIFO (Last in First Out) - nhập sau xuất trước

  • FEFO (First Expired First Out) - hết hạn trước xuất trước

Ngoài ra, việc sử dụng mã vạch barcode có thể giúp tăng tính chính xác và giảm thiểu sai sót trong quá trình nhập xuất kho.

Cấu hình Reodering Rules trong Odoo V16

  • Sản phẩm: Sản phẩm có Product type là Storable

  • Cấu hình Reodering Rule:

    • Location: WH/Stock

    • Min Quantity (Số lượng Min) = 100

    • Max Quantity (Số lượng max) = 200

    • Multiple Quantity:

      • Số lượng được Order là bội số của Multiple Quantity. 

      • VD: số Multiple Quantity = 10, thì số lượng order phải luôn là 10; 20; 30;... và lượng Order tối đa sao cho forecasted quantity không vượt Max quá 2 lần Multiple Quantity

      • Mặc định multiple quantity là 1, nếu set = 0 thì bỏ qua điều kiện này

    • Preferred Route: Mua hàng (Buy)/ Sản xuất (Manufacture), hoặc 1 route khác có thể cấu hình tùy vào hoạt động thực tế

    • Trigger = Auto: nếu tồn kho dự báo (forecasted) xuống thấp hơn 100 thì sẽ tự động sinh 1 đơn hàng cung ứng theo Preferred Route được cấu hình (đơn mua hàng, đơn sản xuất…)

    • To Order: Số lượng tối ưu trong 1 lần đặt, dùng khi đặt Manually

  • Trong bài viết này, chúng ta sử dụng cấu hình Route =  Buy (mua hàng), với cấu hình này cần lưu ý:

    • Route được bật “Buy” trong tab “Inventory” của sản phẩm

    • Vendor được định nghĩa trong tab “Purchase” của sản phẩm như hình bên dưới

Kích hoạt tồn kho an toàn

Trường hợp Multiple Quantity = 1
(Lưu ý: hệ thống sẽ tự động chạy với Multiple Quantity = 1, nếu ta để mặc định là 0 trên rule)

Sau khi hoàn thành cấu hình, ví dụ tồn kho của sản phẩm “Bút bi ABC 1” đang có On Hand 1000 Units và Forecasted còn 979 Units

Tạo 1 đơn bán hàng và xuất kho 900 Units

Khi tồn kho dự báo của sản phẩm Bút bi ABC 1 xuống dưới mức 100 units

Lúc này, hệ thống sinh ra 1 PO mới có Source Document là mã của Reordering Rule + mã SO trigger tự động

Thông tin đơn đặt hàng sẽ sinh ra theo các thông tin đã cấu hình tự động:
Số lượng đặt hàng (Quantity) = Số lượng Max của rule đã cấu hình (200 unit) - Số lượng dự báo (Forecasted Qty = 89 unit) = 12

Với số lượng dự báo (Forecasted Qty) = Tồn kho hiện tại (onhand) + Lượng sắp về (Incoming) - Lượng sắp bán ra (Outgoing)

Sau khi xác nhận đơn đặt hàng, thì số lượng dự báo đã tăng lên 200 Units


Sau đó nhận hàng thành công, có thể xem trên cột received của PO

Thì lúc này tồn kho của sản phẩm đã tăng lên thêm 121, và đủ cho các đơn hàng đang chờ giao mà vẫn duy trì tồn kho trong khoảng (100;200)


Trường hợp Multiple Quantity = 20

Lượng onhand đang là 232 Forecasted = 211

Tương tự ta cũng lên đơn bán hàng để xem số lượng đặt hàng thay đổi thế nào

Ta sẽ bán 125 Units để số lượng forecasted = 86, nhỏ hơn 100 và theo case 1 thì sẽ order thêm 114 Unit để forecast = 200 units (Đơn bán được xác nhận bên dưới)

Check lại số lượng forecasted = 86

Chúng ta qua kiểm tra thì đã sinh ra PO có source Document là S00035

Kiểm tra số lượng đặt hàng thì sẽ là 120 chứ không phải 114 Units bởi 114 không chia hết cho 20

Trường hợp Reordering rule có đặt Multiple Quantity thì công thức sẽ là:

Số lượng đặt hàng (Quantity) = Số lượng Max của rule đã cấu hình - Số lượng dự báo và làm tròn để thỏa điều kiện là bội số của Multiple Quantity

Max (200) - Forecasted (86) = 114 → làm tròn bội số 20 = 120

Khi confirm PO thì lượng forecasted sẽ được nâng lên 206 Units để tránh rủi ro thiếu hàng, vì nếu đặt 100 thì forecasted chỉ đặt 186 units


Tổng kết

Từ ví dụ trên, ta thấy được Odoo V16 đang làm rất tốt trong việc quản lý tồn kho an toàn, phải kể đến các tính năng như:

  • Xác định mức tồn tối thiểu - tối đa cho từng mặt hàng

  • Xác định Vendor tự động thông qua Vendor Pricelist

  • Tự động tạo đơn yêu cầu báo giá khi tồn kho dự báo chạm điểm đặt hàng

  • Cho phép cấu hình số lượng đặt hàng theo bước số nhân trong mỗi lần đặt (Multiple Quantity)

Bên cạnh đó, Odoo V16 còn hạn chế ở điểm 

  • Chưa thể tự động tạo đơn báo giá nếu sản phẩm này chưa được đặt hàng trước đó hoặc chưa cấu hình Vendor Pricelist

  • Số liệu còn cấu hình tiêu chuẩn, chưa đáp ứng được số lượng dự báo thực tế, ví dụ: như đồ ăn/ nước uống thường nhu cầu sẽ tăng cao vào dịp lễ tết hàng năm hoặc các kỳ nghỉ dài ngày 

Qua bài viết về tồn kho an toàn (safety stock) và ứng dụng giải pháp tồn kho an toàn trên Odoo V16. Hy vọng các bạn sẽ hiểu thêm phần nào về nghiệp vụ quản lý tồn kho và áp dụng đối với mô hình hoạt động của mình
Cảm ơn các đã đọc bài viết của Trobz Academy