Pertama adalah download plugin IReport, lalu ekstrak file tersebut kemudian bukan netbeans, ( Netbeans 8.2 yang digunakan pada artikel ini ). Buka Netbeans lalu klik menu Tools - Plugins - Downloaded kemudian klik Add Plugins :
pilih semua file yang dibutuhkan diantara adalah :
- iReport-5.6.0.nbm
- jasperreports-components-plugin-5.6.0.nbm
- jasperreports-extensions-plugin-5.6.0.nbm
- jasperserver-plugin-5.6.0.nbm
Selanjutnya klik install - Next - Ceklis konfirmasi - Install - Continue - Finish, lalu netbeans akan melakukan restart. Setelah netbeans tersebut direstart maka muncul menu baru pada netebeans seperti berikut :
Design Laporan IReport
untuk meletakan design laporan, buat sebuah package baru dengan nama laporan agar file laporan tidak tercampur dengan file yang lain.
untuk membuat file laporan pada package tersebut dapat dilakukan dengan cara klik kanan pada package laporan - New - Other - Pilih Report Wizard
Kemudian tekan tombol Next selanjutnya pilih template yang akan digunakan, gunakan template Blank A4
Setelah itu klik Next, berikan nama laporan_barang.jrxml kemudian Next, kemudian buat datasource untuk laporan dengan menekan tombol New
Kemudian klik Next maka akan muncul tampilan seperti berikut kemudian akan muncul pilihan konfigurasi koneksi pilih Database JDBC Connection
kemudian tekan tombol Next lagi akan muncul seting yang perlu kita isi sebagai berikut :
Isikan nama, pilihan koneksi serta databas, user dan password yang digunakan, kemudian klik Test untuk memastikan koneksi dengan database berhasil. setelah itu tekan tombol save setelah itu akan muncul tampilan untuk mengisikan query menampilkan data silahkan isi query tersebut seperti berikut :
berikutnya klik Next akan muncul sebuah dialog untuk memilih kolom, klik semua kolom tersebut, kemudian tekan tombol panah >>
setelah itu klik panah >> maka semua kolom akan berpindah kesebelah kiri, setelah itu tekan klik Next kemudian Next dan Finish. maka jendela baru akan muncul dilayar.
Perhatikan kolom Fields pada sebelah kiri layar muncul kolom - kolom sesuai dengan kolom pada tabel yang sudah dibuat kemudian tarik dan lepas (drag and drop) setiap kolom pada bagian Detail kemudian atur sehingga menjadi seperti berikut :
Gunakan tab palette yang ada pada sebelah kiri untuk menambahkan title menggunakan static text dan garis menggunakan line. jika sudah selesai silahkan klik tombol preview.
setelah klik preview maka akan muncul sebuah file baru pada direktory project pada package laporan dengan nama laporan_barang.jasper file itulah yang akan digunakan untuk menampilkan laporan barang.
Menambah Button Cetak
tambahkan sebuah tombol cetak pada form barang berikan nama variabelnya menjadi btn_cetak yang sudah dibuat sebelumnya sehingga menjadi seperti berikut :
sebelum memberikan coding cetak laporan perlu menambahkan libtrary tambahan agar laporan dapat dicetak adapun library yang dibutuhkan adalah :
- commons-beanutils-1.8.2
- commons-collections-3.2.1
- commons-digester-2.1
- commons-logging-1.1
- groovy-all-2.0.1
- jasperreports-5.6.0
- jasperreports-fonts-5.6.0
untuk menambahkan library diatas dapat dilakukan dengan cara klik kanan pada library pada tab sebelah kiri kemudian tambahkan add JAR/Folder seperti gambar berikut :
cari file yang dibutuhkan kemudian tambahkansetelah itu berikan coding berikut pada action klik pada tombol cetak :
try {
File namafile = new File("src/Laporan/laporan_barang.jasper");
JasperPrint jp = JasperFillManager.fillReport(namafile.getPath(), null,
Koneksi.getConnection());
JasperViewer.viewReport(jp, false);
} catch (JRException e) {
JOptionPane.showMessageDialog(rootPane, e);
}
Jangan lupa sesuakan header yang berada paling atas menjadi seperti berikut :
import Konfigurasi.Koneksi;
import java.io.File;
import java.sql.Connection;
import java.sql.SQLException;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;
Hasilnya :