Jumat, 19 Desember 2008

MENGGUNAKAN IREPORT DALAM JAVA

  • Biasanya pertama-tama saya membuat contoh databasenya dahulu, berikut merupakan contoh database yang saya buat menggunakan database mysql

    nama database : klinik
    nama table : pasien
    isi table pasien adalah : kode_pasien, nama_pasien, alamat_pasien, golongan

  • Membuat Report Template
    Jalankan Ireport lalu atur setting ireport pada menu Option > Setting, Pilih Tab Compiler kemudian centang checkbox Use Reports Directory to Compile dan Auto-save before compiling dan hapus centang pada checkbox keep .java file bila tidak diperlukan, Save setting tersebut.
    Atur data source yang akan kita gunakan, caranya klik menu Data > Connection/ Data Source, klik button New > pilih Database JDBC connection > Next, Setelah muncul dialog Connection properties, isikan seperti berikut


  • Jika mysql anda menggunakan password, isikan pada field password, kemudian klik button test, jika muncul dialog Connection test successful, itu berarti koneksi yang kita buat telah berhasil, lalu klik button save dan tutup jendela dialog Connection / Datasource.


  • Membuat report baru
    Klik menu File > New Document atur report properties dengan mengisikan nama, ukuran kertas dan margin


Klik button OK, maka akan muncul Form design report

  • Membuat parameter, dengan cara pada jendela Document structure klik kanan folder Parameter > add > parameter, isikan parameter name, centang checkbox use as a prompt, isi default value expression.


  • Membuat report query, caranya dengan klik menu Data > Report Query, isikan statement query pada field query language ( select * from pasien where golongan = $P{golongan} )

Klik button OK

  • Mendesign report, caranya buat static text pada form report seperti berikut


  • Atur tata letak field yang akan di cetak pada form report, dengan cara pada jendela Document structure klik pada folder field maka akan terlihat field-field apa saja yang ada pada tabel pasien berdasarkan query yang telah dibuat sebelumnya, drag dan drop field-field tersebut sehingga form report menjadi seperti berikut

  • Kemudian compile, Build > Compile simpan report di folder file java yang anda buat dan execute, Build > Execute (With active connection) ketika muncul dialog parameter klik button Use Default
hasil report yang saya buat


  • Membuat file java
    Berikut merupakan contoh tampilan java yang saya buat


Method pada button cetak
try{
String golongan = cmb_Golongan_Pasien.getSelectedItem().toString();
String nmfile = "reportpasien.jasper"; //letak path report yang telah dibuat
String driver = "com.mysql.jdbc.Driver";
String konek = "jdbc:mysql://localhost/klinik";
String user = "root";
String password = "";
HashMap parameter = new HashMap();
parameter.put("golongan",golongan);
Class.forName(driver);
Connection conn = DriverManager.getConnection(konek, user, password);
File rptfile=new File(nmfile);
JasperReport jreport=(JasperReport)JRLoader.loadObject(rptfile.getAbsolutePath());
JasperPrint jprint=JasperFillManager.fillReport(jreport,parameter,conn);
JasperViewer.viewReport(jprint,false);
JasperViewer.setDefaultLookAndFeelDecorated(true);
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null,"Data tdk dapat dicetak :"+e,
"Cetak Laporan",JOptionPane.WARNING_MESSAGE);
}



semoga bermanfaat