Skip to main content

SSRS handling error

Sumber: Microsoft.com
Kali ini saya akan membahas bagaimana SSRS atau disebut sebagai SQL Server Reporting Service dalam menangani error saat menjalankan report. Awalnya masalah ini muncul ketika ingin memisahkan 3 value dalam satu kolom yang dipisahkan dengan karakter tertentu.

Contoh:
Format == Tipe Invoice | No Invoice | Tanggal Invoice
Data == Pembayaran Buku | 0101/Nov/2017 | 21 Januari 2018

Dari contoh data tersebut, saya ingin memisahkan menjadi 3 kolom. jika di expression menggunakan fungsi Split.

Untuk kolom Tipe Invoice
=IIf(InStr(Fields!Invoice_Info.Value,"|")>0,Trim(Split(Fields!Invoice_Info.Value,"|")(0)),"")
Untuk kolom No Invoice
=IIf(InStr(Fields!Invoice_Info.Value,"|")>0,Trim(Split(Fields!Invoice_Info.Value,"|")(1)),"")
Untuk kolom Tanggal Invoice
=IIf(InStr(Fields!Invoice_Info.Value,"|")>0,Trim(Split(Fields!Invoice_Info.Value,"|")(2)),"")
Ternyata penggunaan langsung di expression, mampu memisahkan data menjadi kolom dengan bantuan karakter "|". Namun jika dalam data tersebut tidak memiliki karakter "|", maka 3 kolom yang dihasilkan bernilai "#Error". Hal ini tidak dapat langsung diselesaikan, walaupun di expression tersebut telah ditambahkan kode untuk handle kolom yang tidak ada isiannya.

Agar berhasil menampilkan data yang dimaksud dengan pemisahan menggunakan karakter "|", maka kode untuk menampilkan data 3 kolom tersebut diletakkan di tab field pada dataset, tanpa perlu mengikutsertakan kode untuk handle error.
kode untuk handle error, atau bisa dikatakan handle data yang kosong diletakkan pada expression masing-masing kolom di report.

=IIf(IsNothing(Fields!Inv_Type.Value),"",Fields!Inv_Type.Value)
=IIf(IsNothing(Fields!Inv_No.Value),"",Fields!Inv_No.Value)
=IIf(IsNothing(Fields!Inv_Date.Value),"",Fields!Inv_Date.Value)

Update: 19-07-2018
Jika setiap proses yang rumit diletakkan langsung di expression pada report dan menghasilkan isian #Error, maka sudah saatnya ada pemisahan penulisan expression tersebut. Pisahkan penulisan expression menjadi kolom baru. Jika masih bermasalah, maka masih harus dipecah lagi.

Semoga penjelasan saya jelas, selamat mencoba dan silahkan berkomentar jika ada yang ingin ditanyakan.
Terima kasih.

Comments

Popular posts from this blog

karimun ganti alternator 70A

Tanggal 26 november 2011 kemarin terjadi sesuatu hal yang menguras kantong ajaib alias "dompet". gimana tidak, selama perjalanan ke mangga dua, AC mati. setelah benerin AC, malah Aki keok, untung ada bengkel. setelah ganti aki baru, indikator aki masih nyala di kabin driver. karena istri gak mau service atau beli alternator 2nd. akhirnya tanggal 4 desember 2011 kemarin kepasang deh alternator 70 A merk BOSCH pada acara Gathering Karimun Kaskus ke-3.

10 Cara Memilih Makanan Sehat

Siapa sih yang tak mau hidup sehat? Semua orang pasti ingin menjalani kehidupan sehat jasmani dan rohani. Menuju hidup sehat dapat ditempuh dengan banyak cara. Salah satunya lewat pola makan kita. Menurut para ahli, kunci jadi sehat adalah mengkonsumsi makanan dengan gizi seimbang. Singkatnya, kita bisa mengkonsumsi berbagai jenis makanan yang tak hanya mengandung banyak kalori tapi kaya nutrisi. Berikut 10 tips yang dapat Anda ikuti untuk mendapatkan makanan sehat, tapi juga masih terasa enak di lidah. 1. Konsumsi Makanan Yang Kaya Nutrisi.Dibutuhkan 40 jenis nutrisi untuk membuat tubuh Anda tetap sehat. Dan satu jenis makanan saja tak bisa mencukupi asupan semua jenis ini. Pilihan makanan sehari-hari Anda seharusnya mencakup karbohidrat dan produk padi-padian penuh lainnya,buah-buahan, sayuran, produk susu serta daging, ikan atau makanan yang mengandung protein lainnya. Seberapa banyak makanan yang perlu seharusnya Anda makan tergantung dari kalori yang dibutuhkan tubuh Anda. 2. Ko

Hitung Jumlah Kolom di Tabel (SQL)

Hitung Jumlah Kolom di Tabel  / Count the number of columns in Table (SQL) Biasanya kita malas hitung nih jumlah kolom yang ada pada suatu tabel, saking banyaknya value yang mau di capture. permasalahannya, gimana caranya ya?????? ya dengan hitung manual, yang pasti lebih ngreget waktu hitungnya kalo fieldnya lebih dr 50 kolom. ya pake query aja, kan lebih simple dan gak usah pake' kelupaan. SELECT COUNT(*) FROM INFORMATION_SCHEMA.[COLUMNS] WHERE TABLE_NAME in (' [nama_tabel]')  Database yang digunakan SQL Server.