Error Set Parameter pada ReportViewer yang Menggunakan Dynamic Report

Kita dapat menggunakan Dynamic Report pada ReportViewer dengan cara meset property ReportEmbeddedResource pada LocalReport. Nilai dari property ini adalah full namespace dari report rdlc yang akan kita gunakan. Contoh snippet berikut meset property ReportEmbeddedResource ke report ReportKuitansiRincianLampiran.rdlc yang terdapat pada project MRJS, dan folder Laporan.

reportViewer1.LocalReport.ReportEmbeddedResource = "MRJS.Laporan.ReportKuitansiRincianLampiran.rdlc";

Mengapa menggunakan dynamic report?

Misal kita ingin membuat laporan kuitansi yang terdiri dari lembar kuitansi dan lembar lampiran yang berisi rincian biaya. Daripada menggunakan 2 form yang berbeda untuk masing-masing lembar, kita dapat memakai fitur dynamic report yang ada pada reportviewer. Berikut contoh form yang dimaksud:

ReportViewer Dynamic Report

Apabila dipilih lembar Kuitansi, maka reportviewer akan meload report kuitansi. Sedang bila yang dipilih lembar Lampiran, maka akan ditampilkan report lampiran.

Error Ketika SetParameter

Pada report Lampiran, ada satu parameter bernama NoKuitansi. Dan ternyata, ketika hendak meset parameter, terjadi error yang menyatakan bahwa report yang dimuat tidak memiliki parameter bernama NoKuitansi. Berikut screenshotnya:

ReportViewer error SetParameter ketika menggunakan Dynamic Report

Solusi

Setelah googling, ternyata solusinya cukup mudah, yaitu: cukup lakukan Reset ReportViewernya. Monggo kalau mau membaca langsung dari sumbernya di StackOverflow.

reportViewer1.Reset();
reportViewer1.LocalReport.ReportEmbeddedResource = "MRJS.Laporan.ReportKuitansiRincianLampiran.rdlc";
reportViewer1.LocalReport.SetParameters(new ReportParameter("NoKuitansi", Kuitansi.NoKuitansi));

Nah, berikut bukti nyata kalau cara di atas telah berhasil mengatasi masalah error SetParameter.

Halaman Kuitansi

Halaman Lampiran

Tetap Sehat, Tetap Semangat, agar dapat Tetap dalam Perdjoeangan!!

Hartadi

I’m a Passionate Programmer ;)

Leave a Reply