Lompat ke konten Lompat ke sidebar Lompat ke footer

Tutorial Membuat Laporan dengan iReport pada Java Netbeans

Tutorial Membuat Laporan dengan iReport pada Java Netbeans - Hai.. kali ini Kelas Informatika akan membahas mengenai cara membuat report. Sebagai studi kasus, report akan mengacu pada tabel mahasiswa berdasarkan NIM (mah_nim). Terdapat dua aspek yang perlu diperhatikan dalam pembuatan report, pertama pada perancangan report  wizard. Kedua yang tidak kalah pentingnya adalah source code untuk menampilkan report wizard yang telah kita rancang.


Kelas Informatika - Tutorial iReport pada Java Netbeans untuk Pembuatan Laporan

Konfigurasi Report Wizard

Membuat report tabel mahasiswa kita mulai dari perancangan report wizard. Namun sebelum itu, persiapkan terlebih dulu elemen pendukung proses pembuatan report, seperti plugin. Untuk itu langkah pertama yang harus dilakukan adalah menginstal beberapa plugin yang akan digunakan sebagai pendukung proses pembuatan report. Bagi anda yang belum mempunyai plugin, dapat download sekaligus dengan paket library yang nanti akan diimpor pada netbeans.

Kelas Informatika - Plugin dan Library iReport Java

Selanjutnya untuk menginstal plugin pada java (netbeans), pertama kita masuk ke netbeans terlebih dahulu kemudian pilih menu tools >> pilih plugin.

Kelas Informatika - Report Wizard Java

Setelah itu pilihlah plugin yang dibutuhkan, terletak dalam direktori file (browse), lalu instal. Setelah proses instal selesai, kita restart netbeans terlebih dahulu dengan cara menutup dan membuka kembali netbeans. Kemudian buat project baru, lalu pada package tersebut klik kanan >> pilih report wizard.

Kelas Informatika - Konfigurasi Report Wizard Java

Selanjutnya beri nama, sebagai contoh kami beri nama “laporan”. Ketika memberi nama jangan lupa sertakan .jrxml sebagai ekstensi report yang akan kita buat.

Kelas Informatika - Report Wizard Baru

Pada step Fields, pada menu connections / Data Sources >> klik new.

Kelas Informatika - Data Source Report Wizard

Pada kotak dialog Datasource, pilih Database JDBC connection.

Kelas Informatika - Database JDBC Connection

Pada kotak dialog Database JDBC connection, isi form dengan memperhatikan hal-hal berikut :
  1. Name, beri nama jenis Database JDBC connection. Sebagai contoh saya beri nama yang sama dengan plugin, yakni “laporan”.
  2. JDBC Driver, pilih PostgreSQL (org.postgresql.Driver). 
  3. JDBC URL, yang awalnya menggunakan database dengan nama “MY DATABASE”, rubahlah sesuai dengan nama database masing-masing. Terlihat pada contoh gambar dibawah menggunakan database “postgres”. 
  4. Username, isi sesuai dengan user masing-masing dengan menyesuaikan pada sql shell.
  5. Password, sesuaikan pula password yang anda isikan dengan user terkait.

Kelas Informatika - Konfigurasi Database JDBC Connection

Setelah semua sudah terisi, lakukan pengecekan dengan menekan tombol test, sehingga muncul kotak dialog seperti pada gambar dibawah. Lalu masukkan password sesuai dengan yang telah dibuat pada sql shell sebelumnya.

Kelas Informatika - Password Database JDBC Connection

Apabila pengecekan berhasil, maka akan muncul seperti pada gambar berikut.

Kelas Informatika - Koneksi Database JDBC Berhasil

Sedangkan apabila password tidak cocok, maka akan memunculkan pesan error seperti gambar dibawah.

Kelas Informatika - Koneksi Database JDBC Error

Selanjutnya pada kotak dialog query, kita isi terlebih dahulu query untuk menampilkan semua data mahasiswa, yaitu dengan menggunakan select * from mahasiswa; >> klik Next.

Kelas Informatika - Query Database Report Wizard Java

Lalu muncul kotak dialog seperti gambar berikut. Disana telah muncul semua kolom tabel mahasiswa. Selanjutnya kita masukkan kolom yang ingin kita sertakan dalam report, caranya dengan mengklik tombol > untuk memasukkan kolom tertentu. Sedangkan apabila ingin memasukkan semua kolom, klik >>. Setelah selesai, klik Next.

Kelas Informatika - Group By Database Report Wizard Java

Pada kotak dialog group by, silahkan pilih pengelompokan data berdasarkan kolom tertentu. Dalam hal ini saya tidak menggunakan fungsi tersebut, jadi langsung saja klik Next.

Kelas Informatika - Layout Group By Report Wizard Java

Kemudian pada kotak dialog terakhir, pilih layout sesuai dengan yang diinginkan. Disana terdapat dua pilihan, yaitu columnar layout dan tabular layout. Berikut sedikit penjelasan mengenai kedua model report tersebut :
  1. Columnar Layout, apabila menggunakan model ini maka report akan tampil dengan model list kebawah. 
  2. Tabular Layout, sedangkan apabila menggunakan layout berjenis tabular maka tampilan report akan membentuk kolom per kolom sesuai dengan tabel referensi.

Kelas Informatika - Tabular Layout Report Wizard Java

Setelah itu proses pembuatan report wizard selesai, hal ini ditandai dengan munculnya kotak dialog seperti gambar berikut.

Kelas Informatika - Konfigurasi Report Wizard Java Berhasil

Setelah pembuatan report wizard selesai, kita masih perlu membuat parameter NIM agar nantinya data yang ditampilkan dapat menyesuaikan dengan NIM yang diinputkan. Untuk itu pada menu report inspector eksplore parameter kita tambah, lalu beri nama NIM.

Kelas Informatika - Report Inspector iReport Java

Kemudian pada ikon database, disamping kiri tombol zoom in dan zoom out kita klik, sehingga muncul kotak dialog berikut.

Kelas Informatika - Report Query iReport Java

Agar tampilan report sesuai dengan NIM mahasiswa, maka perlu dilakukan inisialisasi parameter NIM pada query dalam kotak dialog Report query. Berikut query yang digunakan
 “select * from mahasiswa where mah_nim = $P{NIM};”
Kemudian ubah tipe data pada parameter NIM menjadi Integer agar input dapat sesuai dengan tipe data yang terdapat pada struktur tabel mahasiswa.

Kelas Informatika - Parameter Class iReport Java

Setelah itu klik preview untuk melihat hasil sementara, nantinya akan memunculkan kotak dialog seperti gambar dibawah. Pada kotak dialog tersebut, kita coba masukkan NIM mahasiswa yang ingin kita tampilkan. Sebagai contoh, saya masukkan NIM 12.

Kelas Informatika - Parameter Prompt iReport Java

Apabila berhasil akan muncul hasil seperti gambar berikut.

Kelas Informatika - View iReport Output

Sebagai penutup bagian ini, akan dipraktekkan cara menampilkan report wizard dengan data keseluruhan pada tabel mahasiswa.

Kelas Informatika - View Data Mahasiswa iReport Java


Source Code Penggunaan iReport

Mengawali bagian ini, terlebih dahulu kita persiapkan elemen-elemen yang nantinya digunakan saat pengkodean, diantaranya library dan JDBC.

Kelas Informatika - Import Library iReport Java

Selanjutnya pada project yang telah dibuat, klik kanan >> pilih new >> klik Jframe Form, karena perancangan aplikasi akan menggunakan GUI builder.

Kelas Informatika - JFrame Form Java

Jangan lupa untuk memberi nama kelas, sebagai contoh disini diberi nama “Laporan”.

Kelas Informatika - Membuat JFrame Form Java

Rancanglah sedemikian rupa, pasang beberapa button, label maupun text field yang akan digunakan dalam aplikasi. Berikut prototipe aplikasi untuk menampilkan report, cukup sederhana.

Kelas Informatika - Interface Data Mahasiswa Java

Berikut ini adalah tampilan aplikasi setelah dijalankan.

Kelas Informatika - Input Data Mahasiswa

Selanjutnya masuk pada source code, pertama import terlebih dahulu beberapa elemen yang kita butuhkan.
import java.io.File;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;
import javax.swing.JOptionPane;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.engine.view.JasperViewer;
Selanjutnya masuk pada pengenalan awal beberapa variabel yang akan digunakan.
JasperReport JasRep;
JasperPrint JasPri;
Map param = new HashMap();
JasperDesign JasDes;
private String username, password, url;
public Connection conn;
Berikut ini adalah source code selanjutnya, yaitu source code untuk koneksi database.
public Laporan(){
 initComponents();
 // koneksi database
 try{
  Class.forName("org.postgresql.Driver").newInstance();
  url = "jdbc:postgresql://localhost/postgres";
  username = "root";
  password = "";

  try{
   conn = DriverManager.getConnection(url, username, password);
   JOptionPane.showMessageDialog(null, "Alhamdulillah.. \nBerhasil Terkoneksi..");
  } catch (SQLException ex){
   System.out.println("salah\n server belum start \n hubungi admin"+ex);
   System.exit(1);
  }
 } catch (Exception ex) {
  System.out.println("salah"+ex);
 }
}
Selanjutnya adalah source code aksi tombol cetak (lihat pada desain aplikasi). Apabila field NIM telah diisi dan tombol cetak diklik, nanti akan menampilkan report data mahasiswa berdasarkan NIM.
private void BcetakActionPerformed(java.awt.event.ActionEvent evt){
 try{
  File report = new File ("laporan_mahasiswa.jrxml");
  JasDes = JRXmlLoader.load(report);
  param.put("NIM", Integer.parseInt(Tnim.getText()));
  JasRep = JasperCompileManager.compileReport(JasDes);
  JasPri = JasperFillManager.fillReport(JasRep, param, conn);
  JasperViewer.viewReport(JasPri, false);
 } catch (Exception e){
  JOptionPane.showMessageDialog(null, e);
 }
}
Selanjutnya akan kita coba menjalankan aplikasi. Pertama akan muncul notifikasi bahwa database telah berhasil terkoneksi. Artinya source untuk koneksi database yang telah kita masukkan telah sesuai.

Kelas Informatika - Koneksi Database Berhasil

Kemudian akan muncul aplikasi yang telah kita rancang, lalu kita coba masukkan NIM salah satu mahasiswa. dalam hal ini saya coba menginput NIM 15, seperti tampak pada gambar berikut.

Kelas Informatika - Input NIM Mahasiswa

Setelah itu klik cetak, nantinya akan muncul hasil seperti gambar dibawah ini.

Kelas Informatika - Jasper Viewer iReport Java

Terlihat pada gambar diatas, disana menampilkan JasperView. Data yang ditampilkan telah sesuai dengan input pada kotak dialog aplikasi yang sebelumnya dijalankan. Namun apabila dalam penulisan source code masih terdapat kesalahan maka akan memunculkan pesan error.

Kelas Informatika - Error Jasper Report Java

Pada umumnya kesalahan yang sering muncul disebabkan karena belum mengimport beberapa fitur pada source code, atau bisa juga karena belum terpasang plugin, library, maupun JDBC pada project yang kita buat. Kedua sebab ini kiranya perlu digaris bawahi dan diperhatikan untuk meminimalisir kesalahan saat mengetik source code.

Demikian artikel kali ini yang membahas tentang Tutorial iReport pada Java Netbeans. Semoga bermanfaat, Salam 😊

Posting Komentar untuk "Tutorial Membuat Laporan dengan iReport pada Java Netbeans"