Versi 1
| Field | Isi |
|---|---|
| Dokumen ID | VBS-SYS-005 |
| Deskripsi | Sinkronisasi data transaksi: menemukan transaksi pembelian, penjualan, mutasi barang, dan produksi yang proses turunannya (stok, jurnal, hutang, piutang) belum lengkap, lalu menjalankan ulang sinkronisasi satu per satu atau sekaligus |
| Nomor Revisi | 1 |
| Tanggal | 2026-10-04 |
| Keterangan | Dokumentasi baseline dari dokumentasi fitur demo dan kode FE |
1. Ringkasan
a. In scope
- User dapat melihat daftar transaksi yang integritas datanya belum lengkap beserta penyebab error dan pesan error.
- User dapat memilih mode sync: Semua Transaksi, Pembelian, Penjualan, Mutasi Barang, atau Produksi.
- User dapat menyaring daftar berdasarkan brand dan nomor invoice.
- User dapat menjalankan sync untuk satu transaksi.
- User dapat memilih beberapa transaksi lalu menjalankan Sync Bulk.
- User dapat membuka nota transaksi asal di tab baru.
- User dapat menyimpan ulang draft dan finalisasi transaksi pembelian atau mutasi barang.
- User dapat melihat data core turunan transaksi (barang masuk, barang keluar, hutang, piutang, jurnal).
b. Catatan
c. Kesimpulan
- [FE] -
- [BE] -
2. Functional Requirement
| Kode | Deskripsi |
|---|---|
| FR-01 | Sistem menampilkan transaksi yang belum lengkap per modul dengan penyebab error |
| FR-02 | Sistem menyediakan filter mode modul, brand, dan nomor invoice |
| FR-03 | User dapat menjalankan sync untuk satu transaksi |
| FR-04 | User dapat menjalankan sync bulk untuk transaksi terpilih |
| FR-05 | User dapat membuka nota transaksi asal |
| FR-06 | User dapat menyimpan draft dan finalisasi ulang transaksi |
| FR-07 | User dapat melihat data core turunan transaksi |
3. Use Case List
| Kode | Deskripsi |
|---|---|
| UC-01 | Melihat daftar transaksi yang belum tersinkron |
| UC-02 | Menyaring transaksi berdasarkan modul, brand, dan nomor invoice |
| UC-03 | Menyinkronkan satu transaksi |
| UC-04 | Menyinkronkan banyak transaksi sekaligus |
| UC-05 | Membuka nota transaksi asal |
| UC-06 | Menyimpan draft dan finalisasi ulang transaksi |
| UC-07 | Melihat data core transaksi |
4. Use Case Scenario
UC-01 : Melihat daftar transaksi yang belum tersinkron
| Aktor | Admin / tim support Vobis |
| Deskripsi | User melihat transaksi yang proses turunannya belum lengkap |
| Prekondisi | User membuka halaman Sync |
| Alur utama | 1. User membuka halaman Sync. 2. Sistem memuat transaksi belum lengkap dari pembelian, penjualan, mutasi barang, dan produksi. 3. Sistem menampilkan nomor invoice, penyebab error, dan pesan error. |
| Alur negatif | - Jika tidak ada data, muncul "Sync is Empty". - Jika satu modul gagal dimuat, data modul itu tidak tampil. |
| Bisnis rule | - Pemuatan memakai header X-Brand kosong agar data lintas brand ikut tampil.- Mode Semua Transaksi memuat maksimal 20 data per modul. - Penyebab error ditentukan dari langkah pertama yang belum selesai, misalnya Invoice Penerimaan, Kartu Stok, Jurnal Umum, Invoice Hutang, Piutang, Pengiriman, atau FIFO. |
| Postkondisi | Daftar transaksi belum tersinkron tampil |
| Trigger | User membuka halaman Sync |
| Kode FR | FR-01 |
UC-02 : Menyaring transaksi berdasarkan modul, brand, dan nomor invoice
| Aktor | Admin / tim support Vobis |
| Deskripsi | User mempersempit daftar transaksi |
| Prekondisi | User berada di halaman Sync |
| Alur utama | 1. User memilih mode sync. 2. User memilih brand. 3. User mengetik nomor invoice. 4. Sistem memuat ulang daftar sesuai filter. |
| Alur negatif | - Jika tidak ada data yang cocok, muncul "Sync is Empty". |
| Bisnis rule | - Pilihan brand diambil dari daftar brand milik user. - Untuk produksi, kata kunci dipakai sebagai nomor SPK. - Mode selain Semua Transaksi memuat hingga 100 data. |
| Postkondisi | Daftar tersaring |
| Trigger | User mengubah filter |
| Kode FR | FR-02 |
UC-03 : Menyinkronkan satu transaksi
| Aktor | Admin / tim support Vobis |
| Deskripsi | User menjalankan ulang proses turunan untuk satu transaksi |
| Prekondisi | Transaksi ada di daftar |
| Alur utama | 1. User membuka menu aksi pada baris. 2. User memilih Sync. 3. Sistem menjalankan sync untuk modul transaksi tersebut. 4. Sistem menampilkan "Berhasil Sync nomor invoice modul ...". |
| Alur negatif | - Jika server menolak, muncul alert error dari server. |
| Bisnis rule | - Header X-Brand diisi brand transaksi selama sync, lalu dikosongkan lagi. |
| Postkondisi | Proses sync transaksi terkirim |
| Trigger | User memilih Sync |
| Kode FR | FR-03 |
UC-04 : Menyinkronkan banyak transaksi sekaligus
| Aktor | Admin / tim support Vobis |
| Deskripsi | User menjalankan sync untuk banyak transaksi terpilih |
| Prekondisi | Minimal satu transaksi dicentang |
| Alur utama | 1. User mencentang transaksi atau mencentang semua. 2. Sistem menampilkan tombol Sync Bulk. 3. User menekan Sync Bulk. 4. Sistem mengelompokkan transaksi per modul dan menjalankan sync bulk. 5. Sistem memuat ulang daftar. |
| Alur negatif | - Tombol Sync Bulk tidak tampil jika belum ada yang dicentang. - Kegagalan sync bulk per modul tidak ditampilkan ke user. |
| Bisnis rule | - Id transaksi dikirim sebagai teks dipisah koma per modul. |
| Postkondisi | Proses sync bulk terkirim dan daftar diperbarui |
| Trigger | User menekan Sync Bulk |
| Kode FR | FR-04 |
UC-05 : Membuka nota transaksi asal
| Aktor | Admin / tim support Vobis |
| Deskripsi | User membuka halaman lihat transaksi untuk dicek |
| Prekondisi | Transaksi ada di daftar |
| Alur utama | 1. User memilih Lihat Nota pada menu aksi. 2. Sistem membuka halaman lihat transaksi di tab baru. |
| Alur negatif | - Jika modul tidak dikenali, tidak ada halaman yang dibuka. |
| Bisnis rule | - Produksi diarahkan ke produksi tanpa BOM, dengan BOM, atau produksi telur sesuai jenis SPK. |
| Postkondisi | Nota transaksi terbuka |
| Trigger | User memilih Lihat Nota |
| Kode FR | FR-05 |
UC-06 : Menyimpan draft dan finalisasi ulang transaksi
| Aktor | Admin / tim support Vobis |
| Deskripsi | User membuka kunci transaksi lalu menandainya tercetak agar proses final berjalan ulang |
| Prekondisi | Transaksi pembelian atau mutasi barang ada di daftar |
| Alur utama | 1. User memilih "Simpan Draft dan Finalise". 2. Sistem membuka kunci invoice. 3. Sistem memperbarui invoice menjadi tercetak. 4. Sistem menampilkan "Berhasil Simpan Draft dan Finalize nomor invoice modul ...". |
| Alur negatif | - Jika server menolak, muncul alert error dari server. |
| Bisnis rule | - Pembelian memakai penanda tercetak, mutasi barang memakai is_tercetak. |
| Postkondisi | Transaksi diproses ulang sebagai final |
| Trigger | User memilih Simpan Draft dan Finalise |
| Kode FR | FR-06 |
UC-07 : Melihat data core transaksi
| Aktor | Admin / tim support Vobis |
| Deskripsi | User melihat data turunan transaksi untuk menganalisis error |
| Prekondisi | Transaksi pembelian atau penjualan ada di daftar |
| Alur utama | 1. User memilih Lihat Core. 2. Sistem memuat barang masuk dan invoice hutang untuk pembelian, atau barang keluar dan invoice piutang untuk penjualan. 3. Sistem memuat jurnal umum transaksi. 4. Sistem menampilkan data core dalam modal. |
| Alur negatif | - Jika data core tidak ditemukan, bagian terkait kosong. |
| Bisnis rule | - Data core dicari berdasarkan id transaksi sebagai modul_id. |
| Postkondisi | Data core tampil |
| Trigger | User memilih Lihat Core |
| Kode FR | FR-07 |
5. Data Flow Diagram
DFD-01
6. Sequence Diagram
SD-01 — UC-01 : Melihat daftar transaksi yang belum tersinkron
SD-02 — UC-02 : Menyaring transaksi berdasarkan modul, brand, dan nomor invoice
SD-03 — UC-03 : Menyinkronkan satu transaksi
SD-04 — UC-04 : Menyinkronkan banyak transaksi sekaligus
SD-05 — UC-05 : Membuka nota transaksi asal
SD-06 — UC-06 : Menyimpan draft dan finalisasi ulang transaksi
SD-07 — UC-07 : Melihat data core transaksi
7. Table Schema
8. API Schema
| Endpoint | Status | Perubahan |
|---|---|---|
GET /integrity/uncomplete (BE Pembelian, Penjualan, Produksi) | existing | - |
GET /integrity/uncomplete-mutasi (BE Gudang) | existing | - |
POST /integrity/sync (BE Pembelian, Penjualan, Produksi) | existing | - |
POST /integrity/sync-mutasi (BE Gudang) | existing | - |
POST /integrity/sync-bulk (BE Pembelian, Penjualan, Produksi, Gudang) | existing | - |
PUT /invoice-pembelian/unlock/:id | existing | - |
PUT /invoice-pembelian/update-invoice-only/:id | existing | - |
PUT /invoice-mutasi-gudang/unlock/:id | existing | - |
PUT /invoice-mutasi-gudang/invoice-only/:id | existing | - |
GET /barang-masuk | existing | - |
GET /barang-keluar | existing | - |
GET /invoice-hutang | existing | - |
GET /invoice-piutang | existing | - |
GET /jurnal-umum | existing | - |