Skip to main content

Versi 1

FieldIsi
Dokumen IDVBS-MST-011
DeskripsiMaster formula produksi (resep atau bill of material): menyusun resep barang hasil jadi beserta bahan baku, bahan pendukung, dan biaya langsung, mengelola versi, draft dan final, serta arsip formula yang dipakai oleh transaksi produksi dengan formula
Nomor Revisi1
Tanggal2026-10-04
KeteranganDokumentasi baseline dari dokumentasi fitur demo dan kode FE

1. Ringkasan​

a. In scope​

  • User melihat daftar formula produksi dengan kolom nama formula, nomor versi, nomor invoice BOM, tanggal, status, dan estimasi durasi.
  • User memfilter formula berdasarkan nomor invoice (kode BOM), rentang tanggal, nama bahan jadi, dan status draft atau final.
  • User membuat formula dengan barang hasil jadi, nama formula, tanggal formula, estimasi hasil jadi, cluster, estimasi durasi, dan keterangan.
  • User dapat membuat formula untuk beberapa produk varian sekaligus dengan pembagian HPP per hasil jadi.
  • User mengisi rincian bahan baku, bahan pendukung, dan biaya langsung, lalu menyimpan formula sebagai draft atau final.
  • User mengedit atau menghapus formula draft, mencetak formula, menonaktifkan formula final, memperbarui formula final menjadi versi baru, dan mengembalikan formula final ke draft.
  • User memulihkan formula yang dinonaktifkan dari arsip.
  • Formula final menjadi pilihan pada Produksi dengan Formula dan Perintah Produksi.

b. Catatan​

c. Kesimpulan​

  • [FE] -
  • [BE] -

2. Functional Requirement​

KodeDeskripsi
FR-01Sistem menampilkan daftar formula aktif secara bertahap (30 baris per muat) dengan nomor versi berformat mayor.minor
FR-02Sistem menyediakan filter nomor invoice, rentang tanggal, nama bahan jadi, dan status (draft draf atau selesai final)
FR-03User dengan hak dasar formula dapat membuat formula dengan hasil jadi, tanggal, dan cluster wajib diisi
FR-04Nama formula bersifat opsional dan diisi otomatis dari nama barang hasil jadi
FR-05Bila opsi buat produk varian aktif, user mengisi beberapa hasil jadi dengan persentase HPP yang totalnya 100% saat final
FR-06Formula memuat bahan baku (wajib), bahan pendukung, dan biaya langsung (akun dan nominal per BOM) sesuai hak akses
FR-07Sistem menyediakan Simpan draft dan Simpan final, dan setelah final langsung membuka modal cetak
FR-08Formula draft dapat diedit, dicetak, dan dihapus
FR-09Formula final dapat dilihat, dicetak, dinonaktifkan, diperbarui sebagai versi baru, dan dikembalikan ke draft
FR-10User dengan hak arsip dapat melihat formula nonaktif dan memulihkannya

3. Use Case List​

KodeDeskripsi
UC-01Melihat dan memfilter daftar formula produksi
UC-02Membuat formula produksi
UC-03Mengedit formula draft
UC-04Memperbarui formula final menjadi versi baru
UC-05Mengembalikan formula final ke draft
UC-06Menonaktifkan formula final
UC-07Menghapus formula draft
UC-08Melihat dan mencetak formula
UC-09Memulihkan formula dari arsip

4. Use Case Scenario​

UC-01 : Melihat dan memfilter daftar formula produksi​

AktorUser produksi
DeskripsiUser melihat daftar formula aktif dan mempersempitnya dengan filter
PrekondisiUser sudah login dan memilih brand
Alur utama1. User membuka menu Master, Produksi, Formula Produksi.
2. Sistem menampilkan daftar formula aktif.
3. User klik Filter dan mengisi nomor invoice, rentang tanggal, nama bahan jadi, atau status.
4. Sistem memuat ulang daftar dari halaman pertama.
Alur negatif- Jika gagal memuat, daftar dikosongkan dan tampil "Formula Produksi Kosong".
Bisnis rule- Status final tampil dengan badge hijau, draf dengan badge abu-abu.
- Formula nonaktif tidak tampil di daftar utama.
- Filter dipulihkan dari query URL.
PostkondisiDaftar formula tampil
TriggerUser membuka halaman atau menerapkan filter
Kode FRFR-01
FR-02

UC-02 : Membuat formula produksi​

AktorUser dengan hak dasar formula
DeskripsiUser menyusun resep baru untuk barang hasil jadi
PrekondisiUser punya hak #bill-of-material basic
Alur utama1. User klik Buat Formula Resep (atau tombol plus pada keyboard).
2. User memilih nomor invoice otomatis atau manual.
3. User memilih barang hasil jadi, mengisi nama formula, tanggal formula, estimasi hasil jadi, cluster, estimasi durasi, dan keterangan.
4. Bila perlu, user mengaktifkan Buat Produk Varian dan mengisi tab hasil jadi.
5. User mengisi bahan baku, bahan pendukung, dan biaya langsung.
6. User memilih Simpan draft atau Simpan final.
7. Sistem menyimpan formula; bila final, sistem membuka modal cetak, bila draft kembali ke daftar.
Alur negatif- Jika header tidak lengkap, muncul "Tolong Isi form dengan benar!".
- Jika bahan baku tidak valid, muncul "Form Bahan Baku Wajib Diisi".
- Jika bahan pendukung tidak valid, muncul "Oops ada yang salah di form Bahan Pendukung!".
- Jika biaya langsung tidak valid, muncul "Oops ada yang salah di form Biaya Langsung!".
- Jika hasil jadi varian tidak valid, muncul "Form Bahan Jadi Wajib Diisi".
- Jika final dan total HPP varian bukan 100%, muncul "Total Pembagian HPP Bahan Jadi harus = 100%! Total HPP Anda = X%".
- Jika simpan gagal, muncul pesan error dari BE.
Bisnis rule- Status draft disimpan sebagai draf, final sebagai final.
- Tanpa produk varian, hasil jadi tunggal disimpan dengan persentase HPP 100% dan satuan terkecil barang.
- Dengan produk varian, field hasil jadi utama dan estimasi hasil jadi tidak dipakai.
- Estimasi hasil jadi wajib jika fitur estimasi durasi aktif untuk user.
- Tab bahan pendukung, biaya langsung, dan produk varian hanya tampil sesuai hak akses.
PostkondisiFormula tersimpan
TriggerUser klik opsi simpan
Kode FRFR-03
FR-04
FR-05
FR-06
FR-07

UC-03 : Mengedit formula draft​

AktorUser dengan hak dasar formula
DeskripsiUser mengubah formula yang masih draft
PrekondisiFormula berstatus draft
Alur utama1. User memilih Edit pada menu baris.
2. Sistem memuat detail formula, bahan, biaya, dan hasil.
3. User mengubah data.
4. User memilih Simpan draft atau Simpan final.
5. Sistem memperbarui formula dan menampilkan "Berhasil Simpan Final atau Draft Invoice Formula".
Alur negatif- Validasi sama seperti saat membuat.
Bisnis rule- Bila formula sudah memiliki beberapa hasil jadi, opsi produk varian dikunci aktif.
PostkondisiFormula terbarui
TriggerUser klik opsi simpan pada form edit
Kode FRFR-08

UC-04 : Memperbarui formula final menjadi versi baru​

AktorUser dengan hak dasar formula
DeskripsiUser merevisi resep formula final sehingga tercatat sebagai versi baru
PrekondisiFormula berstatus final
Alur utama1. User memilih Perbaharui Formula pada menu baris.
2. Sistem membuka form edit dengan penanda versi baru.
3. User mengubah resep lalu menyimpan.
4. Sistem menyimpan revisi sebagai versi baru formula.
Alur negatif- Validasi sama seperti saat membuat.
Bisnis rule- Penanda versi baru dikirim ke BE dan nomor versi mayor.minor diperbarui oleh BE.
PostkondisiFormula memiliki versi baru
TriggerUser menyimpan form Perbaharui Formula
Kode FRFR-09

UC-05 : Mengembalikan formula final ke draft​

AktorUser dengan hak dasar formula
DeskripsiUser membuka kunci formula final agar dapat diedit sebagai draft
PrekondisiFormula berstatus final
Alur utama1. User memilih Ubah ke Simpan Draft.
2. Sistem membuka kunci formula.
3. Status baris berubah menjadi draft dan muncul notifikasi berhasil.
Alur negatif- Jika gagal, daftar dikosongkan dan perlu dimuat ulang.
Bisnis rule- Pesan sukses yang tampil saat ini adalah "Berhasil Menghapus Formula Produksi" walaupun aksinya unlock.
PostkondisiFormula kembali draft
TriggerUser memilih Ubah ke Simpan Draft
Kode FRFR-09

UC-06 : Menonaktifkan formula final​

AktorUser dengan hak dasar formula
DeskripsiUser menonaktifkan formula final agar tidak dipakai lagi
PrekondisiFormula berstatus final
Alur utama1. User memilih Non-Aktifkan Formula.
2. Sistem menandai formula nonaktif.
3. Baris hilang dari daftar dan muncul "Behasil Menonaktifkan Formula".
Alur negatif- Jika gagal, muncul pesan error dari BE.
Bisnis rule- Formula nonaktif dipindahkan ke arsip dan dapat dipulihkan.
PostkondisiFormula nonaktif
TriggerUser memilih Non-Aktifkan Formula
Kode FRFR-09

UC-07 : Menghapus formula draft​

AktorUser dengan hak dasar formula
DeskripsiUser menghapus formula draft
PrekondisiFormula berstatus draft
Alur utama1. User memilih Hapus.
2. Sistem menghapus formula dan menampilkan "Berhasil Menghapus Formula Produksi".
Alur negatif- Jika gagal, daftar dikosongkan dan perlu dimuat ulang.
Bisnis rule- Hapus hanya untuk formula draft dan tanpa konfirmasi tambahan.
PostkondisiFormula draft terhapus
TriggerUser memilih Hapus
Kode FRFR-08

UC-08 : Melihat dan mencetak formula​

AktorUser dengan hak lihat atau dasar formula
DeskripsiUser melihat detail formula dan mencetaknya
PrekondisiFormula tersedia di daftar
Alur utama1. User memilih Lihat untuk membuka detail formula.
2. User memilih Print pada menu baris.
3. Sistem memuat detail formula, satuan, dan kategori barang.
4. Sistem membuka modal cetak dan user mencetak.
Alur negatif- Jika data gagal diambil, muncul "Kesalahan dalam pengambilan data. error: ...".
Bisnis rule- Lihat butuh hak #bill-of-material view, Print butuh hak basic.
PostkondisiDetail tampil atau formula tercetak
TriggerUser memilih Lihat atau Print
Kode FRFR-08
FR-09

UC-09 : Memulihkan formula dari arsip​

AktorUser dengan hak arsip formula
DeskripsiUser mengaktifkan kembali formula yang dinonaktifkan
PrekondisiUser punya hak #bill-of-material archive
Alur utama1. User klik Arsip.
2. Sistem menampilkan formula nonaktif.
3. User memilih formula lalu memulihkan.
4. Sistem mengaktifkan formula terpilih dan menampilkan "Berhasil memulihkan Formula terpilih".
Alur negatif- Jika gagal, muncul pesan error dari BE.
Bisnis rule- Pemulihan dilakukan per formula terpilih secara paralel.
PostkondisiFormula aktif kembali
TriggerUser klik pulihkan di halaman arsip
Kode FRFR-10

5. Data Flow Diagram​

DFD-01​

6. Sequence Diagram​

SD-01 — UC-01 : Melihat dan memfilter daftar formula produksi​

SD-02 — UC-02 : Membuat formula produksi​

SD-03 — UC-03 : Mengedit formula draft​

SD-04 — UC-04 : Memperbarui formula final menjadi versi baru​

SD-05 — UC-05 : Mengembalikan formula final ke draft​

SD-06 — UC-06 : Menonaktifkan formula final​

SD-07 — UC-07 : Menghapus formula draft​

SD-08 — UC-08 : Melihat dan mencetak formula​

SD-09 — UC-09 : Memulihkan formula dari arsip​

7. Table Schema​

8. API Schema​

EndpointStatusPerubahan
GET /invoice-bomexisting-
GET /invoice-bom/:idexisting-
POST /invoice-bom/create-allexisting-
PUT /invoice-bom/update-all/:idexisting-
PUT /invoice-bom/:idexisting-
PUT /invoice-bom/unlock/:idexisting-
DELETE /invoice-bom/:idexisting-
GET /cluster/:idexisting-