2.6 KiB
2.6 KiB
Catatan Production — Penyatuan Workflow Pembelian
Perubahan konsep
Barang Pendinghanya membuat master/rencana barang gudang dengan stok0.- Tidak ada barcode, stock log, jurnal, atau pembayaran ketika master pending dibuat.
- Stok menjadi tersedia hanya setelah Goods Receipt untuk PO gudang diposting.
- Pembelian aset tidak masuk stok gudang; Goods Receipt membuat data pada asset register.
- Pembayaran dilakukan melalui tagihan supplier/hutang, bukan dari master barang.
Migrasi wajib
Jalankan migration sampai versi 20260902000500 setelah backup dan uji staging. Migrasi menambah tujuan pembelian (warehouse/asset), metadata kapitalisasi aset, relasi receipt ke aset, serta kolom rencana pada items. Kolom item dan gudang pada detail transaksi terkait dibuat nullable agar pembelian aset tidak dipaksa mempunyai master barang gudang.
php index.php migrate latest
php index.php migrate status
Pemeriksaan sebelum cut-over
- Pastikan semua item berstatus
draftmempunyai stok nol dan tidak digunakan pada penjualan. - Item draft legacy yang sudah mempunyai stok harus diklasifikasikan sebagai item aktif.
- Pastikan mapping akun
inventory,accounts_payable, danpurchase_input_taxaktif. - Pastikan akun aset dan lokasi aset tersedia sebelum membuat PO aset.
- Uji satu siklus gudang dan satu siklus aset di staging: PR, approval, PO, approval, receipt, tagihan, posting hutang, lalu pembayaran.
- Rekonsiliasi stock ledger dengan akun persediaan dan asset register dengan akun aset setelah cut-over.
Rollback migration ini tidak dilakukan dengan menghapus kolom pada database aktif. Gunakan backup terverifikasi apabila deployment harus dibatalkan.
Biaya administrasi bank pada pembayaran
Migration 20260905000700 wajib dijalankan sebelum kode pembayaran terbaru digunakan. Migration ini menambahkan bank_charge_amount, bank_charge_account_id, dan total_cash_out pada supplier_payments, serta mapping bank_charge_expense.
Sebelum Production:
- Cocokkan mapping
bank_charge_expensedengan akun beban administrasi bank resmi pada COA perusahaan; jangan mengandalkan kode seed Development6298bila COA Production berbeda. - Pastikan
supplier_payments.amounttetap diperlakukan sebagai pokok pembayaran yang mengurangi PO/invoice.total_cash_outadalah pokok ditambah biaya admin. - Rekonsiliasi total
purchase_payment_sourcesdengansupplier_payments.total_cash_outdan alokasi invoice dengansupplier_payments.amount. - Uji masing-masing satu transaksi pembayaran awal/DP, pembayaran setelah penerimaan, dan pelunasan Hutang & Pembayaran dengan admin bank sebelum cut-over.