# 📘 Panduan Modul: Adjustment Jurnal

## 1. Kode Transaksi & Tipe (`jenisTr`)
Modul ini menangani transaksi koreksi dan penyesuaian saldo jurnal (akuntansi tahunan maupun koreksi posting):
- **`9999`**: Jurnal Penyesuaian Tahunan (Adjustment Tahunan)
- **`9990`**: Jurnal Koreksi Posting (Tahun Berjalan)

---

## 2. Aliran Finansial & Jurnal Akuntansi
Berbeda dengan transaksi dagang biasa, adjustment jurnal menulis entri debet & kredit langsung ke buku besar tanpa melalui dokumen perantara (invoice/surat jalan).

### Komponen Terkait:
- **`JurnalAdjustmentTahunan`**: Mengelompokkan entri akumulasi saldo penyesuaian.
- **`NeracaAdjTmp`**: Tabel penampung sementara untuk kalkulasi ulang laporan neraca setelah adjustment tahun sebelumnya (`9999`).
- **`postProcessor`**: Menjalankan engine pembentuk laporan tahun sebelumnya jika transaksi adalah `9999` (bendera `runBuilderLaporanPrev = true`), sedangkan `9990` diset `false` karena hanya menyesuaikan tahun berjalan.

---

## 3. Aturan Bisnis & Integrasi Modul
- Transaksi detail menggunakan `produk_jenis` bernilai `account` (menunjuk pada COA, bukan barang).
- Balance check: Total nilai debet dan kredit detail transaksi adjustment wajib sama (seimbang / *balanced*), jika tidak maka transaksi akan gagal divalidasi.
- **Tidak Menyentuh Stok Fisik**: Sama sekali tidak memanggil `ComLockerStockDualWrite` atau memanipulasi persediaan fisik produk.
