Mencetak Laporan Menggunakan IReport pada Netbeans

cara mencetak laporan menggunakan IReport pada Netbeans
membuat laporan dengan ireport

Artikel yang akan saling berkaitan pada project ini :
Sebuah aplikasi dapat dikatakan utuh jika memiliki komponen input,proses dan output, pada kesempatan ini kita akan coba membuat sebuah output berupa laporan yang dapat di cetak laporan sangat berguna untuk menampilkan hasil dari sebuah proses. laporan dapat berupa laporan sederhana sampai dengan laporan yang sangat kompleks. laporan yang akan kita buat saat ini adalah laporan sederhana saja sebagai gambaran untuk diketahui cara pembuatannya menggunakan netbeans.

Project yang digunakan masih sama dengan project sebelumnya yaitu aplikasi membuat CRUD pafa java Desktop yang ada pada link berikut :

  1. https://www.contohapps.com/2019/12/java-desktop-crud-create-read-update.html
  2. https://www.contohapps.com/2020/10/pencarian-data-java-desktop.html
jika sebelumnya belum membuat project tersebut silahkan buat telebih dahulu kemudian dilanjutkan kembali ka artikel ini.

Tools yang digunakan

untuk mencetak laporan kita membutuhkan alat atau sebuah tools karena tidak disediakan secara langsung oleh netbeans, tools yang akan digunakan dan cukup populer pada netbeans adalah IReport, IReport sendiri terdiri dari dua jenis yang dapat kita gunakan ada yang berupa installer dan ada juga yang berupa plugin perbedaanya adalah jika kita menggunakan installer berarti IReport akan diinstal secara terpisah dengan netbeans tetapi jika menggunakan plugin maka IReport tersebut akan ditambahkan pada netbeans dan dapat langsung kita gunakan untuk design laporan. 

Instalasi IReport

pada artikel ini kita akan menggunakan plugin IReport untuk mencetak laporan, kenapa tidak menggunakan installer dikarenakan instalasi menggunakan library lebih mudah dibanding menggunakan installer, jika kita menggunakan installer biasanya kita harus menambahkan path java secara manual dan cukup merepotkan. untuk melakukan instalasi library tersebut kita perlu download library tersebut terlebih dahulu pada link berikut download plugin IReport 

download plugin IReport berada paling atas yang ditelah ditandai ceklis, setelah download silahkan ekstrak file tersebut kemudian bukan netbeans yang anda gunakan. disini netbeans yang digunakan adalah Netbeans 8.2. setelah netbeans anda dibuka silahkan klik menu Tools - Plugins - Downloaded kemudian klik Add Plugins :
pilih semua file yang dibutuhkan diantaranya adalah :
    1. iReport-5.6.0.nbm
    2. jasperreports-components-plugin-5.6.0.nbm
    3. jasperreports-extensions-plugin-5.6.0.nbm
    4. jasperserver-plugin-5.6.0.nbm
Kemudian klik tombol install - Next - Ceklis konfirmasi - Install - Continue -Finish setelah itu netbeans akan meminta untuk melakukan restart. setelah netbeans tersebut direstart akan muncul menu baru pada netebeans seperti berikut : 
jika sudah muncul berarti anda sudah berhasil melakukan instalasi IReport pada Netbeans, selanjutnya adalah merancang laporan yang akan dicetak.

Design Laporan IReport

untuk meletakan design laporan kita akan membuat sebuah package baru dengan nama laporan agar file laporan tidak tercampur dengan file yang lain, silahkan buat package tersebut terlebih dahulu.
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 kita gunakan, sementara kita gunakan template Blank A4 
Setelah itu tekan tombol Next kemudian berikan nama laporan_barang.jrxml kemudian Next lagi kemudian kita akan membuat datasource untuk laporan dengan menekan tombol New
Kemudian tekan tombol Next lagi 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 :
perhatikan dengan benar input nama dan pilihan koneksi serta database yang anda gunakan, kemudian tekan tombol 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 tekan tombol Next akan muncul sebuah dialog untuk memilih kolom yang akan kita tampilkan pada laporan, anda klik aja semua kolom tersebut, kemudian tekan tombol panah >>
setelah tombol panah >> diklik maka semua kolom akan berpindah kesebelah kiri, setelah itu tekan tombol Next lagi kemudian Next lagi 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 kita buat kemudian tarik dan lepas (drag and drop) setiap kolom pada bagian Detail kemudian atur sehingga menjadi seperti berikut :
anda dapat menggunakan 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 ditekan tombol preview maka akan muncul sebuah file baru pada direktory project anda pada package laporan dengan nama laporan_barang.jasper file itulah yang akan kita gunakan 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 kita perlu menambahkan libtrary tambahan agar laporan dapat dicetak adapun library yang dibutuhkan adalah :
  1. commons-beanutils-1.8.2
  2. commons-collections-3.2.1
  3. commons-digester-2.1
  4. commons-logging-1.1
  5. groovy-all-2.0.1
  6. jasperreports-5.6.0
  7. 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 tambahkan (file dapat anda download disini) setelah 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 :

Sekian artikel mengenai cetak laporan menggunakan IReport pada Netbeans.
link download library IReport disini : Library IReport