title: “Bill of Materials (BOM)” description: “Resep produksi lengkap dengan komponen, quantity, cost per unit, version control, dan auto-calculation untuk production orders.”
Bill of Materials (BOM)

Arsitektur BOM
Entity Relationship Diagram
Diagram berikut menunjukkan relasi antar entitas inti dalam modul manufacturing SNISHOP ERP. BOM menjadi pusat yang menghubungkan produk jadi, bahan baku, production order, hingga lot batch dan pergerakan stok.Ringkasan Relasi Utama
Complete Entity Schema — BillOfMaterials
Tabel berikut mendokumentasikan setiap field pada entitasBillOfMaterials beserta tipe data, kewajiban, nilai default, dan deskripsi lengkap.
Field Identitas & Produk Output
Field Resep & Komponen
Field Versi & Siklus Hidup
Field Konfigurasi Output & QC
State Machine — Siklus Hidup BOM
BOM memiliki siklus hidup yang ketat untuk menjamin integritas data produksi. Setiap transisi status dicatat dan diaudit.Detail Transisi Status
Aturan Penguncian (Lock Mechanism)
Implikasi bisnis: Setelah BOM digunakan untuk produksi pertama kali, resep terkunci. Perubahan resep harus melalui versi baru sehingga traceability produksi tidak terputus — production order lama tetap merujuk ke resep yang berlaku saat produksi berlangsung.Contoh BOM — Ayam Suwir Petir (150g)
Membuat BOM
Step-by-Step
Field BOM
Version Control
Rollback
Jika perlu kembali ke versi sebelumnya:- Buka riwayat versi BOM
- Pilih versi yang diinginkan
- Klik Rollback
- Konfirmasi — versi aktif saat ini menjadi inactive
- Versi yang dipilih menjadi active kembali
Aturan Versioning
Manajemen Versi BOM — Detail Teknis
Chain of Descent (Silsilah Versi)
Setiap BOM menyimpanparent_bom_id yang merujuk ke BOM induk. Ini membentuk chain yang memungkinkan audit trail lengkap:
Kapan BOM Harus di-Clone vs Edit?
Sequence Diagram — Konsumsi BOM saat Produksi
Diagram berikut menunjukkan alur lengkap bagaimana BOM digunakan saat production order diproses, dari perencanaan hingga konsumsi bahan dan rilis output.Sequence Diagram — Posting Konsumsi dengan Idempotency
Sistem SNISHOP ERP menggunakan mekanisme idempotency untuk mencegah double-posting konsumsi bahan:Auto-Calculate untuk Production Order
Saat membuat production order, sistem otomatis menghitung kebutuhan bahan baku berdasarkan BOM: Contoh: Production Order 100 jar Ayam Suwir Petir (150g)Alert: Sistem menampilkan warning untuk bahan yang kurang dan menyarankan untuk membuat Purchase Order.
Perhitungan dengan Yield Expected
Jika BOM memilikiyield_expected_percentage = 95, maka untuk menghasilkan 100 unit baik:
Cost Rollup — Kalkulasi Biaya dari BOM
Struktur Biaya Produksi
BOM menjadi dasar kalkulasi HPP (Harga Pokok Produksi) yang diroll-up dari beberapa komponen biaya:Tabel Rollup Biaya — Contoh Batch 100 Unit
Cost Status — Status Kelengkapan Biaya
Produktivitas & Rendemen
Bundle/Package BOM
Untuk produk bundle, BOM berisi produk jadi lain (bukan bahan baku mentah): Contoh: Paket Sambal Komplit
Maksimal paket yang bisa dibuat: 60 (limited by Sambal Tuna Mercon)
Saat paket dijual:
- Stok masing-masing komponen berkurang 1
- Paket tidak punya stok sendiri — stok virtual = min(stok komponen)
