Arsip Blog

Rabu, 22 Maret 2017

iReport Java Netbeans

Pengertian Java Netbeans 
Java NetBeans merupakan sebuah proyek kode terbuka yang sukses dengan pengguna yang sangat luas, komunitas yang terus tumbuh, dan memiliki hampir 100 mitra (dan terus bertambah!). Sun Microsystems mendirikan proyek kode terbuka NetBeans pada bulan Juni 2000 dan terus menjadi sponsor utama. Saat ini terdapat dua produk : NetBeans IDE dan NetBeans Platform.

NetBeans IDE adalah sebuah lingkungan pengembangan - sebuah kakas untuk pemrogram menulis, mengompilasi, mencari kesalahan dan menyebarkan program. Netbeans IDE ditulis dalam Java - namun dapat mendukung bahasa pemrograman lain. Terdapat banyak modul untuk memperluas Netbeans IDE. Netbeans IDE adalah sebuah produk bebas dengan tanpa batasan bagaimana digunakan. NetBeans Platform merupakan sebuah fondasi yang modular dan dapat diperluas yang dapat digunakan sebagai perangkat lunak dasar untuk membuat aplikasi desktop yang besar. Mitra ISV menyediakan plug-in bernilai tambah yang dapat dengan mudah diintegrasikan ke dalam Platform dan dapat juga digunakan untuk membuat kakas dan solusi sendiri. 


Pengettian iReport
iReport adalah utilitas (perkakas) pelaporan, yang dikembangkan di lingkungan Java guna membantu user dan developer (pengembang/programmer) mendesain laporan secara visual. Melalui antar muka yang simple namun kaya akan fitur, iReport menyediakan fungsi yang paling penting untuk membuat laporan yang kompleks dengan mudah, sehingga akan menghemat banyak waktu.

iReport menggunakan library JasperReports untuk membuat laporan. JasperReports, dalam hal ini adalah inti dari iReport. JasperReports adalah utilitas pelaporan open source yamg paling populer didalam teknologi Java, dan iReport adalah report designer visual untuk JasperReports.

iReport dapat terhubung ke database apapun dan memperoleh data dari sumber data yang berbeda. Selain itu dapat mengekspor laporan ke PDF, XHTML, OpenOffice, MS Word, MS Excel, XML, Text, dan lain lain.
User Interface (UI) dari iReport sangat user friendly. Hal ini memberikan beberapa langkah mudah untuk menghasilkan laporan dengan menggunakan bantuan Wizard Laporan.
Fitur antar muka di iReport termasuk: Fasilitas Drag-and-drop (tarik dan letakkan) untuk Elments Report (elemen laporan). Window Palette yang terdiri dari Report Elements dan Tools Navigasi yang mudah dari report objects melalui Report Inspector

Reporting With JasperReport And iReport (Java)


JasperReport
JasperReport merupakan library di lingkungan Java untuk pemroses laporan. Dengan library ini, kita dapat menampilkan laporan dalam bentuk print preview, melakukan export ke beberapa format dokumen lain (antara lain PDF, HTML, text, Excel), menampilkan gambar, grafik maupun tabel. Berikut beberapa library lain yang digunakan juga dalam JasperReport : commons-beanutils.jar, commons-collections.jar, commons-digester.jar, commons-logging.jar, itext-1.02b.jar, jfreechart-0.9.21.jar.
Penjelasan mengenai fungsi-fungsi tiap library yang digunakan:
Library
Keterangan
commons-logging
untuk mengirim output ke log
commons-collections
untuk manage collection data
commons-beanutils
untuk java beans
commons-digester
untuk parsing xml
jfreechart
untuk mengatur penggunaan grafik
itext
untuk export report ke pdf atau rtf
Laporan yang kita buat nantinya dapat dikaitkan ke database berdasar connection string dan sql yang kita inginkan. JasperReport mendasarkan format dokumen definisi laporan yang akan dikompilasi berbasis pada XML, sehingga nantinya dapat dengan mudah dapat dikonversi ke format dokumen lain dengan memanfaatkan XSLT ataupun FO (Format Object).
Langkah-Langkah
Buat File FirstReport.jrxml
PUBLIC "-//JasperReports//DTD Report Design//EN"
"http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
Keterangan :
<> menggambarkan teks statis yang tidak tergantung pada datasources
manapun , variabel, parameter.
<> menggambarkan lebar dan posisi unsur <> itu.
<> menggambarkan teks statis yang nyata yang dipertunjukkan pada laporan itu
Buat Program CallFirstReport.java
Source CallFirstReport.java
public class CallFirstReport {
public CallFirstReport() {
try {
JasperCompileManager.compileReportToFile("c:\\FirstReport.jrxml");
JasperFillManager.fillReportToFile("c:\\FirstReport.jasper",
new HashMap(), new JREmptyDataSource());
JasperViewer.viewReport("c:\\FirstReport.jrprint", false);
}catch (Exception ex) {
System.out.println("Gagal Membuat report " + ex);
}}
public static void main(String[] args) {
new CallFirstReport();
}
}
File FirstReport.jrxml merupakan contoh desain template sederhana untuk membuat suatu report dengan menampilkan hasil ini file jasperku yang pertama, belum jika nanti ada banyak desain – desain dan data-data yang lain. Bayangkan saja, kita harus mengetahui dan hafal tag-tag dalam JasperReport dan harus pintar-pintar mengatur bentuknya. Betapa reportnya kita nanti dalam menyusun suatu desain. Tapi kita tidak perlu cemas, karena sekarang ada tools untuk memudahkan kita untuk membuat desain jasper dengan lebih mudah dan efisien. Tools itu bernama iReport, versi terbaru waktu menulis modul ini, iReport versi 2.0.4.
Komponen-komponen iReport :
1. Koneksi Database / Datasource
Sebelum kita memulai mendesain sebuah report dalam iReport, terlebih dahulu langkah yang kita harus lakukan adalah kita harus melakukan koneksi ke database. Dalam hal ini kita akan membuat koneksi database dengan menggunakan JDBC Connection.

3. Field
Field digunakan untuk menampung data hasil dari query database. Seperti contoh diatas ada 3 buah field yaitu ID, NAMA_ASISTEN dan STATUS.
4. Variables
Variables digunakan untuk menampung data yang akan digunakan di dalam report. pada iRepot telah tersedia beberapa variables build in antara lain PAGE_NUMBER, COLUMN_NUMBER, REPORT_COUNT, PAGE_COUNT, COLUMN_COUNT. kita juga bisa mendefinisikan variables custom dengan cara klik kanan node variables pada document structure pilih add -> variables.
5. Parameters
Parameters digunakan untuk masukan atau melewatkan data dari kode Java ke dalam report. iReport juga telah menyediakan beberapa parameters build in dan kita juga bisa menambahkan parameters sesuai dengan yang kita butuhkan. dengan cara klik kanan node parameters pada document structure pilih add -> parameters.
6. Design
Setelah kita melewati beberapa langkah diatas, kita telah siap untuk mendesain report. untuk mendesainnya kita cukup melakukan Drag and Drop saja, komponen-komponen yang kita butuhkan ke dalam bidang desain.
Pada bidang desain terbagi menjadi 9 bidang desain yaitu title, pageHeader, columnHeader, detail, columnFooter, pageFooter, lastPageFooter, summary dan Background. Ke sembilan bidang desain itu, kita dapat mengatur ukurannya sesuai dengan kehendak kita dan bahkan juga dapat kita hilangkan. Untuk mengaturnya klik kanan bidang desain kemudian pilih band properties.
Penjelasan mengenai 9 bidang desain dibawah ini:
1. Background
Background disini dapat diisi dengan gambar maupun text, yang nantinya akan menjadi background pada setiap halaman dalam report.
2. title
title akan dicetak sekali pada bagian paling atas report. title ini dapat diisi dengan judul report atau kop report.
3. pageHeader
pageHeader akan dicetak pada bagian atas di setiap report.
4. columnHeader
columnHeader akan dicetak pada bagian atas tabel / kolom pada report. biasanya digunakan untuk nama kolom.
5. detail
detail adalah isi dari report itu sendiri. Biasanya komponen yang berada pada detail ini adalah field yang nantinya akan dicetak sebanyak data dari hasil query database.
6. columnFooter
penjelasannya sama dengan columnHeader, hanya saja dicetak di bagian bawah.
7. pageFooter
penjelasannya sama dengan pageHeader, hanya saja dicetak pada bagian bawah.
8. lastPageFooter
lastPageFooter akan dicetak sekali pada bagian bawah halaman report paling belakang
9. summary
summary akan dicetak pada halaman paling belakang dari report. biasanya diisi dengan grafik atau keterangan umum dari report.
Buat Program Java ShowReport.java
import java.sql.*;
import java.util.*;
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.view.JasperViewer;
public class ShowReport {
public static Connection connectDB (String databaseName,
String userName, String password) {
Connection connection = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection
("jdbc:mysql://localhost/rudy", "root", "rudy");
} catch (Exception ex) {
System.out.println(“Tidak dapat terhubung” + ex);
}
return connection;
}
public void viewReport() {
try {
Map map = new HashMap();
map.put("v_asisten", "Java");
JasperDesign jasperDesign = JRXmlLoader.load
("c:\\classic.jrxml");
JasperReport jasperReport = JasperCompileManager.
compileReport(jasperDesign);
Connection connection = connectDB
("jdbc:mysql://localhost/rudy", "root", "rudy");
JasperPrint jasperPrint = JasperFillManager.
fillReport(jasperReport, map, connection);
JasperViewer.viewReport(jasperPrint);
} catch (Exception ex) {
System.out.println("Gagal Membuat report " + ex);
}
}
public static void main(String[] args) {
ShowReport report = new ShowReport();
report.viewReport();
}
}


Tidak ada komentar:

Posting Komentar