Ở phần 171 ta đã hiểu định mức nguyên vật liệu (BoM) là gì: nó là "công thức" của một thành phẩm — cần nguyên liệu gì, bao nhiêu. Ta đã xem một BoM có sẵn cho gói "Cà phê rang xay Arabica 1kg". Bài này bắt tay tự tạo một BoM mới từ đầu, từng bước một, và làm rõ một điểm hay gây bối rối: có hai loại BoM — "Sản xuất sản phẩm này" và "Bộ kit" — trông giống nhau nhưng Odoo dùng chúng theo hai cách khác hẳn.
Ta sẽ làm một combo bán dịp Tết: "Hộp quà cà phê Tết" gồm 2 gói cà phê Arabica + 1 hộp quà cứng + 1 thiệp chúc Tết.
Bắt đầu: mở form định mức mới
Vào app Sản xuất → Sản phẩm → Danh mục vật tư, bấm Mới. Một form BoM trống hiện ra. Đây là form sau khi đã điền xong cho combo Tết:

Hình 1: Form một định mức mới. Ô Sản phẩm ở góc trên trái là thành phẩm ta muốn làm ra ("Hộp quà cà phê Tết"). Số lượng 1 nghĩa là công thức này làm ra 1 hộp. Bên phải, Loại BoM đang chọn "Bộ kit". Tab Thành phần phía dưới liệt kê nguyên liệu: Cà phê rang xay Arabica 1kg (2), Hộp quà cứng cao cấp (1), Thiệp chúc Tết (1). Bấm "Thêm một dòng" để thêm nguyên liệu.
Điền một BoM chỉ có mấy bước, làm theo thứ tự:
- Chọn thành phẩm ở ô Sản phẩm — thứ bạn muốn tạo ra. Ở đây là "Hộp quà cà phê Tết".
- Để số lượng = 1 (trừ khi công thức của bạn tính theo lô, ví dụ "một mẻ ra 10 gói").
- Xuống tab Thành phần, bấm Thêm một dòng cho mỗi nguyên liệu: chọn sản phẩm nguyên liệu, gõ số lượng, kiểm tra đơn vị.
- Chọn Loại BoM (xem phần dưới) rồi Lưu.
Để ý cột Đơn vị ở mỗi dòng thành phần đều là "Đơn vị" (cái) — vì hộp, thiệp đếm theo cái, còn gói cà phê cũng đếm theo gói. Như đã nhắc ở bài trước: đơn vị phải đúng, sai đơn vị là tính sai kho về sau.
Hai loại BoM: "Sản xuất sản phẩm này" vs "Bộ kit"
Đây là phần mấu chốt của bài. Nhìn lại Hình 1, ô Loại BoM có hai lựa chọn, và Odoo hiện sẵn dòng giải thích rất rõ ngay bên dưới:
-
Sản xuất sản phẩm này — dùng khi bạn thật sự chế biến ra thành phẩm: rang & đóng gói cà phê, làm bánh. Loại này sẽ đi kèm một lệnh sản xuất (Manufacturing Order): công nhân bấm "Sản xuất", Odoo trừ nguyên liệu, tạo ra thành phẩm nhập kho. Đây là loại BoM ta xem ở bài 171.
-
Bộ kit (Kit) — dùng khi thành phẩm chỉ là gộp sẵn vài món lại rồi bán chung, không qua chế biến. Combo quà Tết đúng kiểu này: bạn không "sản xuất" ra hộp quà, bạn chỉ bỏ 2 gói cà phê + 1 hộp + 1 thiệp vào chung.
Odoo ghi rõ điều này trong khung chú thích ở Hình 1:
"BoM loại bộ kit không được sản xuất trong một lệnh sản xuất. Thay vào đó, nó được dùng để phân tách BoM thành các thành phần khi: nó được thêm làm thành phần trong một lệnh sản xuất, hoặc nó được chuyển đi thông qua một lệnh chuyển hàng, ví dụ như một phiếu nhập kho hoặc lệnh giao hàng."
Dịch ra đời thường: khi khách mua 1 "Hộp quà cà phê Tết", Odoo tự động hiểu đó là 2 gói cà phê + 1 hộp + 1 thiệp, và phiếu giao hàng sẽ liệt kê thẳng ba món này để nhân viên soạn đủ. Không có lệnh sản xuất nào cả — vì chẳng có gì để chế biến. Kho trừ đúng ba món thành phần, không trừ "hộp quà" như một sản phẩm riêng.
Nói ngắn gọn:
| Sản xuất sản phẩm này | Bộ kit | |
|---|---|---|
| Khi nào dùng | Có chế biến, biến nguyên liệu thành thứ mới | Chỉ gộp món có sẵn để bán chung |
| Có lệnh sản xuất? | Có | Không |
| Lúc bán/giao | Giao thành phẩm đã làm xong | Giao thẳng các thành phần |
| Ví dụ | Rang & đóng gói cà phê | Combo quà Tết, set quà |
Xem "Tổng quan BoM": cây nguyên liệu
Sau khi lưu, bấm nút Tổng quan BoM ở đầu form (thấy trong Hình 1). Odoo mở ra một bảng dạng cây, cho thấy toàn bộ cấu trúc nguyên liệu của thành phẩm:

Hình 2: Tổng quan BoM (BoM structure). Dòng trên cùng là thành phẩm "Hộp quà cà phê Tết" (1 đơn vị). Thụt vào dưới là ba thành phần với đúng số lượng đã khai: Cà phê rang xay Arabica 1kg (2), Hộp quà cứng cao cấp (1), Thiệp chúc Tết (1). Cột Chi phí đang là $0,00 vì các nguyên liệu này chưa được đặt giá vốn trong hệ thống demo — khi bạn khai giá vốn cho từng nguyên liệu, Odoo tự cộng lên thành giá thành của cả hộp.
Vài điều đáng chú ý ở màn hình này:
- Nó cộng gộp theo cây. Muốn làm 1 hộp quà, bạn cần đúng 2 + 1 + 1 món như liệt kê. Nếu định làm 50 hộp, Odoo nhân tất cả lên 50 giúp bạn.
- Dòng "Cà phê rang xay Arabica 1kg" có mũi tên mở rộng (▸ ở đầu dòng): vì bản thân gói cà phê đó cũng có một BoM riêng (từ bài 171 — gồm hạt + túi + nhãn). Bấm vào sẽ bung ra thấy nguyên liệu con. Đây là BoM nhiều tầng: thành phần của thành phẩm này lại là thành phẩm có công thức riêng.
- Cột Chi phí là nơi Odoo tính giá thành. Ở đây bằng $0 vì ta chưa khai giá vốn cho nguyên liệu; khai xong thì con số này chính là giá vốn một hộp — cơ sở để định giá bán.
(Ghi chú: hệ thống demo đang hiển thị tiền tệ USD $, nên các con số chi phí ghi bằng đô-la; trên hệ thống thật của bạn để tiền Việt thì sẽ ra đồng.)
Vài lỗi người mới hay mắc
- Chọn nhầm thành phẩm ở ô Sản phẩm. Ô trên cùng là thứ làm ra, không phải nguyên liệu. Nguyên liệu nằm ở tab Thành phần bên dưới.
- Quên đổi Loại BoM. Mặc định là "Sản xuất sản phẩm này". Nếu combo của bạn chỉ là gộp món sẵn, nhớ đổi sang Bộ kit, không thì Odoo cứ đòi tạo lệnh sản xuất vô nghĩa.
- Số lượng ở dòng thành phần để 0. Odoo không tự đoán — bạn khai 2 gói thì gõ 2. Bỏ trống là coi như không cần món đó.
Nhớ ba ý
- Tạo BoM = chọn thành phẩm ở trên, thêm từng dòng nguyên liệu (số lượng + đơn vị) ở tab Thành phần. Làm theo đúng công thức thật.
- Hai loại BoM khác nhau: "Sản xuất sản phẩm này" (có chế biến → có lệnh sản xuất) và "Bộ kit" (chỉ gộp món có sẵn → không có lệnh sản xuất, giao thẳng thành phần).
- Tổng quan BoM cho thấy cây nguyên liệu và chi phí — nền để tính giá thành; BoM có thể nhiều tầng khi một thành phần lại có công thức riêng.
Có công thức rồi, giờ là lúc thật sự "bấm nút làm hàng". Phần sau ta đi vào lệnh sản xuất (Manufacturing Order) — cách ra lệnh làm một mẻ thành phẩm và để Odoo tự trừ kho nguyên liệu.