Skip to main content

Cara Mengatasi Skrip Kolom Tidak Valid di Laporan Accurate Online

Nibras Ratna Fauziah, A.Md.A.K, CAP
Nibras Ratna Fauziah, A.Md.A.K, CAP
Product Enablement Consultant

Saat melakukan modifikasi laporan di Accurate Online, Kamu mungkin pernah menemukan notifikasi:

“Skrip Kolom Tidak Valid” ketika menggunakan Kolom Skrip Khusus.

mengatasi skrip kolom tidak valid di laporan

Pesan ini biasanya muncul saat laporan menggunakan rumus perhitungan tertentu, khususnya yang melibatkan operasi pembagian antar variabel.

Pada umumnya, error tersebut terjadi karena nilai variabel yang menjadi pembagi bernilai nol (0). Dalam perhitungan matematika maupun sistem komputer, pembagian dengan nol tidak dapat dilakukan karena menghasilkan nilai tak terhingga (cannot divide by zero).

Oleh sebab itu, Accurate Online akan menampilkan notifikasi bahwa skrip yang digunakan tidak valid.

Sebagai contoh, Kamu ingin menampilkan persentase laba terhadap penjualan pada laporan Rincian Penjualan per Barang.

Jika terdapat transaksi dengan nilai penjualan 0, maka sistem tidak dapat menghitung laba ÷ penjualan, sehingga muncul notifikasi error.

Untuk mengatasi kondisi tersebut, Kamu perlu menambahkan logika pengecekan nilai pembagi pada skrip agar sistem dapat tetap menampilkan hasil tanpa error.

Berikut langkah-langkah yang bisa Kamu lakukan.

Cara mengatasi skrip kolom tidak valid:

1. Tambahkan variabel laba dan kolom skrip khusus

  • Buka laporan Rincian Penjualan per Barang melalui menu Laporan > Daftar Laporan > Penjualan.

mengatasi skrip kolom tidak valid di laporan

mengatasi skrip kolom tidak valid di laporan

mengatasi skrip kolom tidak valid di laporan

  • Setelah laporan ditampilkan, klik Modifikasi, kemudian pada tab Kolom Data klik dua kali variabel Laba dan Kolom Skrip Khusus 1 sehingga kedua variabel tersebut berpindah ke bagian Kolom Digunakan.

mengatasi skrip kolom tidak valid di laporan

mengatasi skrip kolom tidak valid di laporan

2. Mulai menyusun skrip perhitungan laba

  • Klik Kolom Skrip Khusus 1, kemudian pilih variabel Laba dan klik tombol + sehingga muncul skrip berikut:
$F{itemCost.grossProfit}
  • Skrip ini merupakan variabel yang digunakan untuk menampilkan nilai laba pada laporan.

mengatasi skrip kolom tidak valid di laporan

mengatasi skrip kolom tidak valid di laporan

3. Tambahkan fungsi pembagian dengan variabel penjualan

  • Selanjutnya tambahkan fungsi .divide( untuk melakukan pembagian.
  • Sehingga skrip berubah menjadi:
$F{itemCost.grossProfit}.divide(
  • Kemudian pilih variabel Penjualan pada daftar skrip khusus dan klik + sehingga menjadi:
$F{itemCost.grossProfit}.divide($F{salesDetail.salesAmountBase}

mengatasi skrip kolom tidak valid di laporan

  • Langkah ini bertujuan untuk menghitung laba dibagi penjualan.

4. Lengkapi pembagian dengan aturan pembulatan

  • Untuk operasi pembagian pada skrip laporan, Kamu perlu menambahkan parameter skala desimal dan metode pembulatan.
  • Tambahkan bagian berikut pada skrip:
, 6, RoundingMode.DOWN)
  • Sehingga rumus menjadi:
$F{itemCost.grossProfit}.divide($F{salesDetail.salesAmountBase}, 6, RoundingMode.DOWN)

5. Ubah hasil perhitungan menjadi persentase

  • Jika Kamu ingin menampilkan hasil perhitungan dalam bentuk persentase (%), tambahkan fungsi multiply untuk mengalikan hasil dengan 100.
  • Sehingga rumusnya menjadi:
$F{itemCost.grossProfit}.divide($F{salesDetail.salesAmountBase}, 6, RoundingMode.DOWN).multiply(new BigDecimal(100))
  • Dengan skrip ini, laporan akan menampilkan persentase laba terhadap penjualan.

6. Tambahkan pengecekan nilai pembagi untuk mencegah error

  • Jika muncul notifikasi “Skrip Kolom Tidak Valid”, kemungkinan terdapat transaksi dengan nilai penjualan 0.
  • Untuk mengatasinya, tambahkan logika pengecekan di awal skrip menggunakan fungsi compareTo agar sistem memeriksa terlebih dahulu apakah nilai penjualan bernilai nol.
  • Jika nilai penjualan 0, maka sistem akan menampilkan angka 1. Sedangkan jika nilai penjualan tidak nol, sistem akan tetap menghitung laba dibagi penjualan lalu dikalikan 100.
  • Berikut rumus lengkapnya:
$F{salesDetail.salesAmountBase}.compareTo(new BigDecimal(0)) == 0 ? 1 : $F{itemCost.grossProfit}.divide($F{salesDetail.salesAmountBase}, 6, RoundingMode.DOWN).multiply(new BigDecimal(100))
  • Dengan penambahan logika ini, laporan dapat tetap menampilkan hasil perhitungan tanpa memunculkan error pembagian dengan nol.

Catatan:

  • Variabel yang digunakan dalam skrip dapat berbeda-beda sesuai kebutuhan laporan. Contoh di atas menggunakan variabel Laba dan Penjualan untuk menampilkan persentase laba terhadap penjualan.
  • Jika Kamu menggunakan variabel lain, maka nama variabel dalam skrip juga perlu disesuaikan.