Versi 1
| Field | Isi |
|---|---|
| Dokumen ID | VBS-SYS-004 |
| Deskripsi | Importer data: mengunggah file Excel untuk master barang, master kontak, transaksi, invoice kas bank, dan inisiasi neraca awal, memantau proses unggah, melihat hasil, dan mengunduh data yang gagal |
| 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 riwayat import dengan kolom tanggal import, jenis data, total data, jumlah berhasil, jumlah gagal, dan status.
- User dapat memulai import untuk kelompok Master (Master Barang, Master Kontak), Transaksi (Upload Transaksi, Upload Master atas Transaksi, Invoice Kas Bank), atau Inisiasi neraca awal sesuai hak akses.
- User dapat mengunduh template Excel sesuai jenis data.
- User mengikuti tiga langkah: Konfigurasi dan Upload File, Petakan Data (pilih sheet), dan Pratinjau (validasi data).
- User dapat memantau progres proses import.
- User dapat melihat hasil import (berhasil dan gagal) serta mengunduh file data yang gagal untuk diperbaiki.
b. Catatan
c. Kesimpulan
- [FE] -
- [BE] -
2. Functional Requirement
| Kode | Deskripsi |
|---|---|
| FR-01 | Sistem menampilkan riwayat import dengan ringkasan jumlah berhasil dan gagal |
| FR-02 | Sistem menampilkan pilihan jenis import sesuai hak akses import user |
| FR-03 | Sistem menyediakan unduhan template Excel per jenis data |
| FR-04 | Sistem memvalidasi format file (XLS atau XLSX) dan konfigurasi sebelum lanjut |
| FR-05 | User dapat memilih sheet yang akan diunggah |
| FR-06 | Sistem mengunggah file ke layanan uploader sesuai jenis data dan memantau progres |
| FR-07 | Sistem menampilkan hasil import dan menyediakan unduhan data gagal |
3. Use Case List
| Kode | Deskripsi |
|---|---|
| UC-01 | Melihat riwayat import |
| UC-02 | Mengunduh template import |
| UC-03 | Mengimpor master barang atau master kontak |
| UC-04 | Mengimpor transaksi atau invoice kas bank |
| UC-05 | Mengimpor data inisiasi neraca awal |
| UC-06 | Memantau progres proses import |
| UC-07 | Melihat hasil import dan mengunduh data gagal |
4. Use Case Scenario
UC-01 : Melihat riwayat import
| Aktor | User brand dengan hak import |
| Deskripsi | User melihat daftar proses import yang pernah dijalankan |
| Prekondisi | User membuka halaman Importer |
| Alur utama | 1. User membuka Importer. 2. Sistem memuat riwayat import. 3. Sistem menampilkan tanggal import data, jenis data, total data import, berhasil import, gagal import, dan status. |
| Alur negatif | - Jika gagal memuat atau kosong, muncul "Daftar Importer masih kosong" dan "Silahkan Import data anda terlebih dahulu". |
| Bisnis rule | - Riwayat dimuat bertahap dengan infinite scroll. - Menu tambah import hanya menampilkan kelompok yang diizinkan hak akses. |
| Postkondisi | Riwayat import tampil |
| Trigger | User membuka halaman Importer |
| Kode FR | FR-01 FR-02 |
UC-02 : Mengunduh template import
| Aktor | User brand dengan hak import |
| Deskripsi | User mengunduh template Excel sesuai jenis data |
| Prekondisi | User berada di langkah Konfigurasi dan Upload File |
| Alur utama | 1. User memilih jenis file. 2. User menekan "Unduh Template". 3. Sistem membuat file template dan mengunduhnya dengan nama "Template ... .xlsx". |
| Alur negatif | - Jika user tidak punya satu pun jenis import yang diizinkan, user dikembalikan ke daftar dengan peringatan "Anda tidak memiliki Fitur Advance Importer, Silahkan Hubungi Admin Anda atau CS!". |
| Bisnis rule | - Template dibuat di sisi klien sesuai jenis data dan data master brand. |
| Postkondisi | Template terunduh |
| Trigger | User menekan Unduh Template |
| Kode FR | FR-03 |
UC-03 : Mengimpor master barang atau master kontak
| Aktor | User brand dengan hak import barang atau kontak |
| Deskripsi | User menambah data master secara massal dari file |
| Prekondisi | File template sudah diisi |
| Alur utama | 1. User memilih Import Master. 2. User memilih Master Barang atau Master Kontak lalu mengunggah file. 3. User menekan Selanjutnya. 4. User memilih sheet yang akan diunggah lalu menekan Proses. 5. Sistem mengunggah file dan menampilkan modal progres. 6. Setelah selesai, sistem menampilkan langkah Pratinjau dan user menekan Selesai. |
| Alur negatif | - Jika file bukan XLS atau XLSX, muncul "Format yang anda upload salah. Tolong upload file dengan format xls atau xlsx". - Jika konfigurasi belum lengkap, muncul "Tolong lengkapi konfigurasi dengan benar!". - Jika sheet belum dipilih, muncul "Tolong pilih Data Sheet yang akan diupload!". - Jika unggah gagal, modal menampilkan status error dan notifikasi pesan server. |
| Bisnis rule | - Hak akses: #import-barang untuk Master Barang, #import-kontak untuk Master Kontak.- Jika dibuka dari menu barang, jenis file otomatis Master Barang; dari kontak, customer, karyawan, atau supplier otomatis Master Kontak. - Jika semua sheet dipilih, sistem mengirim sheet default. |
| Postkondisi | Proses import master berjalan |
| Trigger | User menekan Proses |
| Kode FR | FR-04 FR-05 FR-06 |
UC-04 : Mengimpor transaksi atau invoice kas bank
| Aktor | User brand dengan hak import transaksi |
| Deskripsi | User mengunggah transaksi massal dari file |
| Prekondisi | File template transaksi sudah diisi |
| Alur utama | 1. User memilih Import Transaksi. 2. User memilih Upload Transaksi, Upload Master atas Transaksi, atau Invoice Kas Bank lalu mengunggah file. 3. Untuk Upload Transaksi, user menentukan apakah master yang belum ada ikut dibuat. 4. Untuk Upload Master atas Transaksi, user memilih master yang diunggah (Barang, Customer, Supplier, Metode Pembayaran). 5. User memilih sheet dan menekan Proses. 6. Sistem mengunggah file dan menampilkan progres. |
| Alur negatif | - Validasi format file, konfigurasi, dan sheet sama seperti UC-03. - Jika unggah gagal, modal menampilkan status error dan notifikasi pesan server. |
| Bisnis rule | - Hak transaksi terpenuhi jika user punya salah satu: import mutasi gudang, pembelian, penjualan, stok opname, atau produksi. - Upload Master atas Transaksi hanya membuat master ( create_master_only = true).- Invoice Kas Bank tersedia untuk semua user yang membuka import transaksi. |
| Postkondisi | Proses import transaksi berjalan |
| Trigger | User menekan Proses |
| Kode FR | FR-02 FR-05 FR-06 |
UC-05 : Mengimpor data inisiasi neraca awal
| Aktor | User brand dengan hak import inisiasi |
| Deskripsi | User mengisi saldo awal neraca secara massal |
| Prekondisi | User memiliki hak #import-inisiasi |
| Alur utama | 1. User memilih Import Inisiasi dari Importer atau tombol Import File di Inisiasi Neraca Awal. 2. User mengunggah file inisiasi. 3. User memilih sheet dan menekan Proses. 4. Sistem mengunggah file dan menampilkan progres. 5. Setelah selesai, user kembali ke halaman asal. |
| Alur negatif | - Jika user tidak punya hak import inisiasi, pilihan Inisiasi tidak tersedia. - Validasi format file dan sheet sama seperti UC-03. |
| Bisnis rule | - Jika dibuka dengan query from, tombol kembali mengarah ke halaman asal. |
| Postkondisi | Proses import inisiasi berjalan |
| Trigger | User menekan Proses |
| Kode FR | FR-02 FR-06 |
UC-06 : Memantau progres proses import
| Aktor | User brand |
| Deskripsi | User melihat progres proses import yang sedang berjalan |
| Prekondisi | File sudah diproses dan id proses tersedia |
| Alur utama | 1. Sistem menampilkan modal progres. 2. Sistem memuat status proses secara berkala. 3. Saat jumlah berhasil ditambah gagal mencapai total, modal ditutup otomatis. |
| Alur negatif | - Jika unggah gagal sejak awal, modal error ditutup otomatis setelah 5 detik. |
| Bisnis rule | - Interval pemantauan dihitung dari total data. |
| Postkondisi | Proses import selesai |
| Trigger | Proses unggah dimulai |
| Kode FR | FR-06 |
UC-07 : Melihat hasil import dan mengunduh data gagal
| Aktor | User brand |
| Deskripsi | User memeriksa hasil import dan memperbaiki data yang gagal |
| Prekondisi | Ada riwayat import |
| Alur utama | 1. User membuka baris riwayat import. 2. Sistem menampilkan jumlah Berhasil dan Gagal beserta keterangannya. 3. Jika ada file error, sistem menampilkan data gagal dalam lembar kerja. 4. User mengunduh data gagal dari halaman lihat atau dari menu Download di daftar. |
| Alur negatif | - Jika file error tidak ada, muncul "File Error tidak ditemukan, silahkan ulangi upload". - Jika data error kosong, muncul "Data tidak ditemukan, silahkan ulangi upload" atau "Data tidak ditemukan". |
| Bisnis rule | - File gagal diunduh dengan nama file-jenis-error.xlsx.- Keterangan gagal: "Belum berhasil terupload. Pastikan cara pengisian yang anda lakukan sudah benar." |
| Postkondisi | User mendapat data yang gagal untuk diperbaiki |
| Trigger | User membuka detail import atau memilih Download |
| Kode FR | FR-07 |
5. Data Flow Diagram
DFD-01
6. Sequence Diagram
SD-01 — UC-01 : Melihat riwayat import
SD-02 — UC-02 : Mengunduh template import
SD-03 — UC-03 : Mengimpor master barang atau master kontak
SD-04 — UC-04 : Mengimpor transaksi atau invoice kas bank
SD-05 — UC-05 : Mengimpor data inisiasi neraca awal
SD-06 — UC-06 : Memantau progres proses import
SD-07 — UC-07 : Melihat hasil import dan mengunduh data gagal
7. Table Schema
8. API Schema
| Endpoint | Status | Perubahan |
|---|---|---|
GET /progress | existing | - |
GET /progress/:id | existing | - |
GET /download | existing | - |
POST /v2-1/barang | existing | - |
POST /person | existing | - |
POST /v2-1/alltransaksi/basic | existing | - |
POST /invoice-cashflow | existing | - |
POST /init-neraca-awal | existing | - |