SlideShare a Scribd company logo
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
1 of 21 01/22/2008 09:53 AM
Tutorial Netbeans dan JasperReport
©2006 Burhan Yang (last modified: Dec 3, 2006)
Source Code:
- Face Framework (simpan / ubah nama file menjadi Face.zip, soalnya di blok ama servernya
T_T)
- Project Inventory (simpan / ubah nama file menjadi Inventory.zip)
- inventory.mdb (simpan / ubah nama file menjadi Inventory.mdb)
Untuk anda yang ingin mempraktekkan langsung tutorial ini disarankan menggunakan software
berikut:
- Windows XP
- Netbeans 5.0 (Saat tulisan ini dibuat Netbeans sudah mencapai versi 5.5)
- iReport 1.2.7 (Saat tulisan ini dibuat 1.2.7 merupakan versi terbaru dari iReport)
- Microsoft Access (tutorial ini menggunakan Microsoft Access 2003)
- JDK 1.5
Supaya lebih cepat dan praktis saya akan mengunakan MS Access sebagai database, dan
untuk itu kita membutuhkan Windows XP karena MS Access tidak dapat berjalan secara native
di Linux. Netbeans bisa anda download di http://www.netbeans.org dan iReport bisa di
download di http://ireport.sourceforge.net/.
1. Database Preparation
Pertama kita harus menyiapkan database yg akan digunakan. Buat sebuah database dengan 2
tabel sbb:
Nama file: C:DBInventory.mdb
Tabel: JenisBarang
Field Name Data Type Field Size Primary Key
Kode Text 5 Yes
Keterangan Text 50
Tabel: Barang
Field Name Data Type Field Size Primary Key
Kode Text 10 Yes
Nama Text 50
Harga Number Double
Jumlah Number Long Integer
Jenis Text 5
Buat relationships antar tabel sbb:
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
2 of 21 01/22/2008 09:53 AM
Jangan lupa masukkan record sbb:
Tabel: JenisBarang
Tabel: Barang
2. Creating Netbeans Project
Setelah menyiapkan database yg akan digunakan, sekarang kita buat project baru di Netbeans.
Buat folder baru : C:Project
Jalankan Netbeans, pilih File -> New Project... , pilih Java Application
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
3 of 21 01/22/2008 09:53 AM
Tekan 'Next', masukkan nama dan lokasi project sbb:
Tekan 'Finish', dan di window Projects akan tampil package 'inventory' sbb:
Perhatikan, didalam class Main.java ada potongan code sbb:
public static void main(String[] args) {
// TODO code application logic here
}
Ketika program dieksekusi, JVM akan mencari Main Class utk dijalankan. Setelah Main Class
ditemukan maka fungsi main akan dijalankan. Anda bisa merubah Main Class dari project anda
melalui Project Properties.
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
4 of 21 01/22/2008 09:53 AM
3. Basic Application
Sebuah aplikasi desktop minimal memiliki sebuah form yg akan ditampilkan ketika program
dijalankan. Sekarang kita akan menambahkan sebuah form ke dalam project kita.
Pilih File -> New File... , pilih JFrame Form
Tekan 'Next' lalu isi nama class dan package seperti gambar berikut:
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
5 of 21 01/22/2008 09:53 AM
Tekan 'Finish' dan di window Projects akan terlihat frmMain.java
Masukkan code berikut ke dalam Main.java
public static void main(String[] args) {
// TODO code application logic here
frmMain frm = new frmMain();
frm.setTitle("Inventory");
frm.setSize(500,300);
frm.setLocationRelativeTo(null);
frm.setVisible(true);
}
Tekan F6 untuk menjalankan program, maka akan tampil dilayar sbb:
Untuk mengganti icon pada form, masukkan file icon (gif atau png) ke dalam project:
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
6 of 21 01/22/2008 09:53 AM
Masukkan code berikut ke dalam frmMain.java
/** Creates new form frmMain */
public frmMain() {
initComponents();
// set icon
this.setIconImage(new ImageIcon(getClass().getResource("/inventory/resources/tux.png")).getImage());
}
Bila anda melihat error seperti ini berarti ada referensi class yg belum didefinisikan.
Caranya gampang, klik tombol kanan mouse terus pilih 'Fix Imports' atau tekan Alt + Shift + F.
Maka secara otomatis Netbeans akan menambahkan code berikut:
import javax.swing.ImageIcon;
Tekan F6 untuk menjalankan program, maka akan tampil dilayar sbb:
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
7 of 21 01/22/2008 09:53 AM
Untuk icon disarankan menggunakan format gif atau png dengan ukuran gambar 16 x 16 pixel.
4. JTable
Kita akan coba menampilkan isi dari database yg telah kita buat ke dalam sebuah JTable. Dari
window Palette pilih JTable dan masukkan ke dalam frmMain.
Sekarang kita akan coba untuk meng-customize JTable. Caranya gampang, lihat gambar
dibawah:
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
8 of 21 01/22/2008 09:53 AM
Untuk saat ini kita set jumlah row sebanyak 50 walaupun seharusnya jumlah row di sesuaikan
dengan jumlah data yang ada.
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
9 of 21 01/22/2008 09:53 AM
Ubah gridColor dari JTable menjadi [204,204,204] sehingga warna gridnya seperti gambar
diatas. Tekan F6 untuk menjalankan program, maka akan tampil dilayar sbb:
Bila kita tidak mendefinisikan Look & Feel maka secara default Look & Feel yg digunakan
adalah Metal. Sekarang coba tambahkan code berikut kedalam Main.java
public static void main(String[] args) {
// TODO code application logic here
initializeLookAndFeel();
frmMain frm = new frmMain();
frm.setTitle("Inventory");
frm.setSize(500,300);
frm.setLocationRelativeTo(null);
frm.setVisible(true);
}
public static void initializeLookAndFeel() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (InstantiationException ex) {
ex.printStackTrace();
} catch (IllegalAccessException ex) {
ex.printStackTrace();
} catch (UnsupportedLookAndFeelException ex) {
ex.printStackTrace();
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
10 of 21 01/22/2008 09:53 AM
}
Tekan F6 untuk menjalankan program.
Perhatikan Look & Feel yang digunakan berubah menjadi default dari Windows. Bila dijalankan
di Linux maka secara otomatis akan mengikuti default dari Linux. Anda juga bisa menggunakan
Look & Feel lain yg banyak tersebar di Internet.
5. Data Access
Copy source code project Face ke dalam C:Project lalu buka project tsb di Netbeans.
Masukkan project Face ke dalam libraries dari project Inventory.
Setelah selesai maka di bagian Libraries akan muncul icon project Face.
Sekarang saya akan menjelaskan cara pemakaian Face Framework.
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
11 of 21 01/22/2008 09:53 AM
Ada 4 operasi dasar yg biasa dilakukan dengan database atau
sering juga disebut CRUD (Create, Read, Update, Delete).
Untuk melakukan CRUD kita akan memakai AccessHelper.
Berikut ini fungsi-fungsi yg sering dipakai di AccessHelper:
ExecuteUpdate
Untuk melakukan Create, Update, Delete.
ExecuteDataTable
Untuk melakukan Read. Hasil yg dikembalikan berupa
keseluruhan result set (DataTable).
ExecuteScalar
Untuk melakukan Read. Hasil yg dikembalikan hanya row
pertama dan column pertama dari result set (Object).
Kali ini kita akan memakai ExecuteDataTable untuk membaca
tabel Barang lalu menampilkan isinya kedalam JTable. Tetapi
sebelumnya kita harus membuat sebuah class yg akan
bertindak sebagai base class untuk class data access yang
lain.
Buat package 'inventory.data' lalu buat java class 'BaseDataAccess.java'
Masukkan code berikut ke dalam BaseDataAccess.java
public class BaseDataAccess {
String fileName = "C:/DB/Inventory.mdb";
String connURL = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" +
fileName + ";DriverID=22;READONLY=true}";
private Connection c = null;
protected Connection getConnection() {return c;}
protected boolean OpenConnection() {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
c = DriverManager.getConnection(connURL,"","");
}
catch (Exception ex) {
ex.printStackTrace();
return false;
}
return true;
}
protected boolean CloseConnection() {
try {
if (c != null) {
if (!c.isClosed()) {c.close();}
}
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
12 of 21 01/22/2008 09:53 AM
c = null;
}
catch (SQLException ex) {
ex.printStackTrace();
return false;
}
return true;
}
}
Sekarang kita buat class 'daBarang.java'
Masukkan code berikut ke dalam daBarang.java
public class daBarang extends BaseDataAccess {
/** Creates a new instance of daBarang */
public daBarang() {
}
public boolean testConnection() {
if (this.OpenConnection()) {
// koneksi database berhasil, jgn lupa tutup koneksi
this.CloseConnection();
return true;
}
return false;
}
}
Sekarang buka frmMain.java dan tambahkan 2 buah JButton seperti gambar berikut:
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
13 of 21 01/22/2008 09:53 AM
Masukkan code berikut ke event 'actionPerformed' dari btnTestConnection
private void btnTestConnectionActionPerformed(java.awt.event.ActionEvent evt) {
daBarang da = new daBarang();
if (da.testConnection()) {
// koneksi berhasil, tampilkan pesan berhasil
MessageHelper.showMessage(this, "Koneksi ke database berhasil");
} else {
// koneksi gagal, tampilkan pesan gagal
MessageHelper.showMessage(this, "Koneksi ke database gagal");
}
}
Sekarang kita coba jalankan program dan tekan tombol 'Test Connection'
Selamat !! anda sudah berhasil membuat koneksi ke database.
Sekarang tambahkan code berikut ke dalam daBarang.java
public DataTable getAllBarang() {
DataTable dtb = null;
DataColumn[] dc = new DataColumn[4];
dc[0] = new DataColumn("Kode", JDBCType.VARCHAR);
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
14 of 21 01/22/2008 09:53 AM
dc[1] = new DataColumn("Nama", JDBCType.VARCHAR);
dc[2] = new DataColumn("Harga", JDBCType.DOUBLE);
dc[3] = new DataColumn("Jumlah", JDBCType.BIGINT);
String sql = "SELECT Kode,Nama,Harga,Jumlah FROM Barang";
try {
if (this.OpenConnection()) {
dtb = AccessHelper.ExecuteDataTable(this.getConnection(), sql, dc);
}
} catch (Exception ex) {
ex.printStackTrace();
} finally {
this.CloseConnection();
}
return dtb;
}
Tambahkan juga code berikut ke event 'actionPerformed' dari btnLoadData
private void btnLoadDataActionPerformed(java.awt.event.ActionEvent evt) {
daBarang da = new daBarang();
DataTable dtb = da.getAllBarang();
if ((dtb != null) && (dtb.getRowCount() > 0)) {
int totalRow = dtb.getRowCount();
for (int i=0; i < totalRow; i++) {
jTable1.setValueAt(dtb.getValue(i,"Kode"), i, 0);
jTable1.setValueAt(dtb.getValue(i,"Nama"), i, 1);
jTable1.setValueAt(dtb.getValue(i,"Harga"), i, 2);
jTable1.setValueAt(dtb.getValue(i,"Jumlah"), i, 3);
}
}
}
Sekarang coba jalankan program dan tekan tombol 'Load Data'
Selamat !! anda sudah berhasil membuat koneksi ke database, lalu membaca record yg
terdapat dalam tabel Barang dan menampilkannya ke dalam JTable. Saya hanya akan
membantu anda sampai tahap ini. Untuk operasi Create, Update dan Delete akan saya bahas di
lain kesempatan.
6. iReport for JasperReport
Sekarang kita akan membuat JasperReport menggunakan iReport.
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
15 of 21 01/22/2008 09:53 AM
Jalankan iReport, pilih File -> New Document
Ubah nama report menjadi 'DaftarBarang' lalu tekan OK. Simpan report dengan nama
C:JasperDaftarBarang.jrxml.
Pilih Data -> Connections / Datasources, lalu pilih New
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
16 of 21 01/22/2008 09:53 AM
Beri nama Inventory. Untuk JDBC Driver pilih 'sun.jdbc.odbc.JdbcOdbcDriver'. Sedangkan untuk
JDBC URL isi dengan 'jdbc:odbc:Driver={Microsoft Access Driver
(*.mdb)};DBQ=C:/DB/Inventory.mdb;DriverID=22;READONLY=true}'. Tekan Test untuk
mengetahui apakah koneksi database berhasil atau gagal. Setelah test koneksi database
berhasil tekan save. Setelah itu jangan lupa column default diberi tanda centang.
Pilih Data -> Report query. Masukkan sintaks SQL seperti gambar dibawah.
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
17 of 21 01/22/2008 09:53 AM
Secara otomatis iReport akan membuat fields sesuai dengan query yang kita berikan. Pilih View
-> Fields untuk melihat hasilnya.
Pilih View -> Report Groups lalu tekan New. Beri nama 'JenisBarang'. Masukkan sintaks seperti
gambar dibawah.
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
18 of 21 01/22/2008 09:53 AM
Masukkan fields dan static text seperti gambar dibawah ini. Jangan lupa Band yang tidak
digunakan di set height-nya menjadi nol.
Setelah selesai pilih Build -> Execute (with active connection).
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
19 of 21 01/22/2008 09:53 AM
Langkah selanjutnya adalah melakukan kompilasi DaftarBarang.jrxml menjadi
DaftarBarang.jasper, caranya pilih Build -> Compile. Perhatikan window output untuk melihat
lokasi file hasil kompilasi. Copy file tersebut ke directory C:Jasper.
7. JasperReport in Action
Sekarang kita telah sampai di tahap terakhir yaitu menampilkan JasperReport di dalam aplikasi
kita. Pertama kita harus menyiapkan file jar atau libraries yang akan digunakan. Cari directory
tempat installasi iReport yang anda gunakan. Copy semua file jar (sekitar 27 MB) yang berada
di folder lib ke C:libjasper. Sebetulnya tidak semua file jar dibutuhkan tetapi supaya mudah
untuk saat ini kita copy semua jar yang ada. Atau cara kedua, anda download distribusi
JasperReport (jasperreports-1.2.7-project.zip), esktrak lalu copy semua file jar yang ada di
folder lib (sekitar 15 MB). Saya sarankan anda gunakan opsi kedua.
Pilih Tools -> Library Manager, lalu tekan New Library... Beri nama 'JasperReport' lalu tekan
Add JAR/Folder dan pilih folder C:libjasper.
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
20 of 21 01/22/2008 09:53 AM
Jangan lupa masukkan referensi libraries JasperReport ke project.
Buka daBarang.java lalu tambahkan code berikut:
public DataTable getDaftarBarang() {
DataTable dtb = null;
DataColumn[] dc = new DataColumn[5];
dc[0] = new DataColumn("Kode", JDBCType.VARCHAR);
dc[1] = new DataColumn("Nama", JDBCType.VARCHAR);
dc[2] = new DataColumn("Harga", JDBCType.DOUBLE);
dc[3] = new DataColumn("Jumlah", JDBCType.BIGINT);
dc[4] = new DataColumn("Keterangan", JDBCType.VARCHAR);
String sql = "SELECT Barang.Kode, Barang.Nama, Barang.Harga, Barang.Jumlah, JenisBarang.Keterangan " +
"FROM Barang INNER JOIN JenisBarang ON Barang.Jenis = JenisBarang.Kode";
try {
if (this.OpenConnection()) {
dtb = AccessHelper.ExecuteDataTable(this.getConnection(), sql, dc);
}
} catch (Exception ex) {
ex.printStackTrace();
} finally {
this.CloseConnection();
}
return dtb;
}
Tambahkan sebuah JDialog Form ke dalam project. Pilih File -> New File... , pilih JDialog Form.
Beri nama frmReport.java.
Tutorial Netbeans dan JasperReport http://readme.awardspace.com/
21 of 21 01/22/2008 09:53 AM
Masukkan sebuah JScrollPane yang akan berfungsi sebagai parent bagi JRViewer dan beri
nama pnlViewer. Tambahkan code berikut:
bersambung...

More Related Content

DOCX
Membangun aplikasi client server dengan java
DOCX
Belajar Java dasar
PDF
Tutorial web service (web & client) with spring web services
PDF
Belajar kilat asp.net
PDF
Menggunakan Twitter Bootstrap dengan ASP.NET C# MVC 3 Web Application
PDF
Membuat aplikasi-rental-dengan-java-dan-my sql
DOCX
Tutorial pembuatan REST Service pada Support System menggunakan Servlet dan GSON
DOCX
Maya surya
Membangun aplikasi client server dengan java
Belajar Java dasar
Tutorial web service (web & client) with spring web services
Belajar kilat asp.net
Menggunakan Twitter Bootstrap dengan ASP.NET C# MVC 3 Web Application
Membuat aplikasi-rental-dengan-java-dan-my sql
Tutorial pembuatan REST Service pada Support System menggunakan Servlet dan GSON
Maya surya

What's hot (9)

PDF
Pocket book window builder eclipse
PDF
Tutorial Penggunaan Laravel
PDF
[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC
DOC
PDF
Laravel 5 Tutorial : Membuat Blog Sederhana dengan Laravel 5.3
PPTX
Jquery ppt
PDF
Jeni Web Programming Bab 2 Basic Servlets
PPTX
Ppt pengenalan jquery
PDF
MudafiqRiyan - MVC-DAO Java Desktop
Pocket book window builder eclipse
Tutorial Penggunaan Laravel
[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC
Laravel 5 Tutorial : Membuat Blog Sederhana dengan Laravel 5.3
Jquery ppt
Jeni Web Programming Bab 2 Basic Servlets
Ppt pengenalan jquery
MudafiqRiyan - MVC-DAO Java Desktop
Ad

Similar to Netbeans jasper-tutorial (20)

PDF
Study Jam 6 Web.pdf
PDF
F 10011543 fathorazi nur fajri
DOC
Modul pbo baru
DOCX
Laporan 6
PDF
270610 arm pemrograman_java_dengan_netbean_ide
DOCX
Tugas 5 1300631006
PDF
Mari belajar vue js
PPTX
Slid_2_OOP_instalasi netbeans.pptx
PDF
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)
PDF
modul-praktikum-pemrogramanjavadgnnetbeans-171005005920.pdf
PDF
Modul praktikum-pemrograman java dgn netbeans
PPTX
PPT Schematics BST 2024 Advanced Day 1.pptx
PDF
Jamal aplikasicrud
PDF
Tutorial Hello World Web Services with Apache CXF
PDF
Modul pelatihan-django-dasar-possupi-v1
DOC
Laporan p1
PDF
Jeni j2 me-bab09-optimisasi
PDF
Jeni J2 Me Bab09 Optimisasi
PDF
Tutorial spring web app
PDF
17. aplikasi crud java sederhana menggunakan database my sql
Study Jam 6 Web.pdf
F 10011543 fathorazi nur fajri
Modul pbo baru
Laporan 6
270610 arm pemrograman_java_dengan_netbean_ide
Tugas 5 1300631006
Mari belajar vue js
Slid_2_OOP_instalasi netbeans.pptx
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)
modul-praktikum-pemrogramanjavadgnnetbeans-171005005920.pdf
Modul praktikum-pemrograman java dgn netbeans
PPT Schematics BST 2024 Advanced Day 1.pptx
Jamal aplikasicrud
Tutorial Hello World Web Services with Apache CXF
Modul pelatihan-django-dasar-possupi-v1
Laporan p1
Jeni j2 me-bab09-optimisasi
Jeni J2 Me Bab09 Optimisasi
Tutorial spring web app
17. aplikasi crud java sederhana menggunakan database my sql
Ad

Recently uploaded (20)

PDF
Pengenalan Undang-undang pengakap laut.pdf
DOCX
Modul Ajar Pembelajaran Mendalam Senbud Seni Rupa Kelas XII Terbaru 2025
PDF
KASUS_INKUIRI_KOLABORATIF_KELAS_BAWAH-ISI-ARNI.pdf
PDF
883668952-KP-4-Modul-2-Kerangka-Pembelajaran-Mendalam.pdf
PPTX
PENGIMBASAN PEMBELAJARAN MENDALAM (DEEP LEARNING)
PPTX
Presentasi_Pembelajaran_Mendalam_Lengkap.pptx
DOCX
Modul Ajar Deep Learning PKN Kelas 10 SMA Terbaru 2025
PPTX
Bahan Tayang OJT Pembelajaran Mendalam KS
PDF
Materi Seminar AITalks: AI dan Konseling GPT
PDF
lembar kerja LMS tugas pembelajaran mendalam
PPTX
Keterbatasan-Fasilitas-dalam-Mengajar-KKA.pptx
PPTX
Bahan Presentasi Persamaan Elips .pptx
DOCX
Modul Ajar Pembelajaran Mendalam Senbud Seni Teater Kelas 12 Terbaru 2025
PPTX
Slide PPT Metode Ilmiah Kelas 7 SMP.pptx
DOCX
Modul Ajar Deep Learning Bahasa Inggris Lanjutan Kelas 11 SMA Terbaru 2025
PDF
Materi Seminar AITalks AI dan Suku Digital
DOCX
Lembar Kerja Mahasiswa Information System
PPTX
Pancasila: fondasi peradaban dan kebudayaan berkelanjutan
DOCX
CONTOH RANCANGAN MODUL PROYEK KOKURIKULER SMA 1.docx
DOCX
Modul Ajar Deep Learning Biologi Kelas 10 SMA Terbaru 2025
Pengenalan Undang-undang pengakap laut.pdf
Modul Ajar Pembelajaran Mendalam Senbud Seni Rupa Kelas XII Terbaru 2025
KASUS_INKUIRI_KOLABORATIF_KELAS_BAWAH-ISI-ARNI.pdf
883668952-KP-4-Modul-2-Kerangka-Pembelajaran-Mendalam.pdf
PENGIMBASAN PEMBELAJARAN MENDALAM (DEEP LEARNING)
Presentasi_Pembelajaran_Mendalam_Lengkap.pptx
Modul Ajar Deep Learning PKN Kelas 10 SMA Terbaru 2025
Bahan Tayang OJT Pembelajaran Mendalam KS
Materi Seminar AITalks: AI dan Konseling GPT
lembar kerja LMS tugas pembelajaran mendalam
Keterbatasan-Fasilitas-dalam-Mengajar-KKA.pptx
Bahan Presentasi Persamaan Elips .pptx
Modul Ajar Pembelajaran Mendalam Senbud Seni Teater Kelas 12 Terbaru 2025
Slide PPT Metode Ilmiah Kelas 7 SMP.pptx
Modul Ajar Deep Learning Bahasa Inggris Lanjutan Kelas 11 SMA Terbaru 2025
Materi Seminar AITalks AI dan Suku Digital
Lembar Kerja Mahasiswa Information System
Pancasila: fondasi peradaban dan kebudayaan berkelanjutan
CONTOH RANCANGAN MODUL PROYEK KOKURIKULER SMA 1.docx
Modul Ajar Deep Learning Biologi Kelas 10 SMA Terbaru 2025

Netbeans jasper-tutorial

  • 1. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 1 of 21 01/22/2008 09:53 AM Tutorial Netbeans dan JasperReport ©2006 Burhan Yang (last modified: Dec 3, 2006) Source Code: - Face Framework (simpan / ubah nama file menjadi Face.zip, soalnya di blok ama servernya T_T) - Project Inventory (simpan / ubah nama file menjadi Inventory.zip) - inventory.mdb (simpan / ubah nama file menjadi Inventory.mdb) Untuk anda yang ingin mempraktekkan langsung tutorial ini disarankan menggunakan software berikut: - Windows XP - Netbeans 5.0 (Saat tulisan ini dibuat Netbeans sudah mencapai versi 5.5) - iReport 1.2.7 (Saat tulisan ini dibuat 1.2.7 merupakan versi terbaru dari iReport) - Microsoft Access (tutorial ini menggunakan Microsoft Access 2003) - JDK 1.5 Supaya lebih cepat dan praktis saya akan mengunakan MS Access sebagai database, dan untuk itu kita membutuhkan Windows XP karena MS Access tidak dapat berjalan secara native di Linux. Netbeans bisa anda download di http://www.netbeans.org dan iReport bisa di download di http://ireport.sourceforge.net/. 1. Database Preparation Pertama kita harus menyiapkan database yg akan digunakan. Buat sebuah database dengan 2 tabel sbb: Nama file: C:DBInventory.mdb Tabel: JenisBarang Field Name Data Type Field Size Primary Key Kode Text 5 Yes Keterangan Text 50 Tabel: Barang Field Name Data Type Field Size Primary Key Kode Text 10 Yes Nama Text 50 Harga Number Double Jumlah Number Long Integer Jenis Text 5 Buat relationships antar tabel sbb:
  • 2. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 2 of 21 01/22/2008 09:53 AM Jangan lupa masukkan record sbb: Tabel: JenisBarang Tabel: Barang 2. Creating Netbeans Project Setelah menyiapkan database yg akan digunakan, sekarang kita buat project baru di Netbeans. Buat folder baru : C:Project Jalankan Netbeans, pilih File -> New Project... , pilih Java Application
  • 3. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 3 of 21 01/22/2008 09:53 AM Tekan 'Next', masukkan nama dan lokasi project sbb: Tekan 'Finish', dan di window Projects akan tampil package 'inventory' sbb: Perhatikan, didalam class Main.java ada potongan code sbb: public static void main(String[] args) { // TODO code application logic here } Ketika program dieksekusi, JVM akan mencari Main Class utk dijalankan. Setelah Main Class ditemukan maka fungsi main akan dijalankan. Anda bisa merubah Main Class dari project anda melalui Project Properties.
  • 4. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 4 of 21 01/22/2008 09:53 AM 3. Basic Application Sebuah aplikasi desktop minimal memiliki sebuah form yg akan ditampilkan ketika program dijalankan. Sekarang kita akan menambahkan sebuah form ke dalam project kita. Pilih File -> New File... , pilih JFrame Form Tekan 'Next' lalu isi nama class dan package seperti gambar berikut:
  • 5. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 5 of 21 01/22/2008 09:53 AM Tekan 'Finish' dan di window Projects akan terlihat frmMain.java Masukkan code berikut ke dalam Main.java public static void main(String[] args) { // TODO code application logic here frmMain frm = new frmMain(); frm.setTitle("Inventory"); frm.setSize(500,300); frm.setLocationRelativeTo(null); frm.setVisible(true); } Tekan F6 untuk menjalankan program, maka akan tampil dilayar sbb: Untuk mengganti icon pada form, masukkan file icon (gif atau png) ke dalam project:
  • 6. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 6 of 21 01/22/2008 09:53 AM Masukkan code berikut ke dalam frmMain.java /** Creates new form frmMain */ public frmMain() { initComponents(); // set icon this.setIconImage(new ImageIcon(getClass().getResource("/inventory/resources/tux.png")).getImage()); } Bila anda melihat error seperti ini berarti ada referensi class yg belum didefinisikan. Caranya gampang, klik tombol kanan mouse terus pilih 'Fix Imports' atau tekan Alt + Shift + F. Maka secara otomatis Netbeans akan menambahkan code berikut: import javax.swing.ImageIcon; Tekan F6 untuk menjalankan program, maka akan tampil dilayar sbb:
  • 7. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 7 of 21 01/22/2008 09:53 AM Untuk icon disarankan menggunakan format gif atau png dengan ukuran gambar 16 x 16 pixel. 4. JTable Kita akan coba menampilkan isi dari database yg telah kita buat ke dalam sebuah JTable. Dari window Palette pilih JTable dan masukkan ke dalam frmMain. Sekarang kita akan coba untuk meng-customize JTable. Caranya gampang, lihat gambar dibawah:
  • 8. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 8 of 21 01/22/2008 09:53 AM Untuk saat ini kita set jumlah row sebanyak 50 walaupun seharusnya jumlah row di sesuaikan dengan jumlah data yang ada.
  • 9. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 9 of 21 01/22/2008 09:53 AM Ubah gridColor dari JTable menjadi [204,204,204] sehingga warna gridnya seperti gambar diatas. Tekan F6 untuk menjalankan program, maka akan tampil dilayar sbb: Bila kita tidak mendefinisikan Look & Feel maka secara default Look & Feel yg digunakan adalah Metal. Sekarang coba tambahkan code berikut kedalam Main.java public static void main(String[] args) { // TODO code application logic here initializeLookAndFeel(); frmMain frm = new frmMain(); frm.setTitle("Inventory"); frm.setSize(500,300); frm.setLocationRelativeTo(null); frm.setVisible(true); } public static void initializeLookAndFeel() { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (InstantiationException ex) { ex.printStackTrace(); } catch (IllegalAccessException ex) { ex.printStackTrace(); } catch (UnsupportedLookAndFeelException ex) { ex.printStackTrace(); } catch (ClassNotFoundException ex) { ex.printStackTrace(); }
  • 10. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 10 of 21 01/22/2008 09:53 AM } Tekan F6 untuk menjalankan program. Perhatikan Look & Feel yang digunakan berubah menjadi default dari Windows. Bila dijalankan di Linux maka secara otomatis akan mengikuti default dari Linux. Anda juga bisa menggunakan Look & Feel lain yg banyak tersebar di Internet. 5. Data Access Copy source code project Face ke dalam C:Project lalu buka project tsb di Netbeans. Masukkan project Face ke dalam libraries dari project Inventory. Setelah selesai maka di bagian Libraries akan muncul icon project Face. Sekarang saya akan menjelaskan cara pemakaian Face Framework.
  • 11. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 11 of 21 01/22/2008 09:53 AM Ada 4 operasi dasar yg biasa dilakukan dengan database atau sering juga disebut CRUD (Create, Read, Update, Delete). Untuk melakukan CRUD kita akan memakai AccessHelper. Berikut ini fungsi-fungsi yg sering dipakai di AccessHelper: ExecuteUpdate Untuk melakukan Create, Update, Delete. ExecuteDataTable Untuk melakukan Read. Hasil yg dikembalikan berupa keseluruhan result set (DataTable). ExecuteScalar Untuk melakukan Read. Hasil yg dikembalikan hanya row pertama dan column pertama dari result set (Object). Kali ini kita akan memakai ExecuteDataTable untuk membaca tabel Barang lalu menampilkan isinya kedalam JTable. Tetapi sebelumnya kita harus membuat sebuah class yg akan bertindak sebagai base class untuk class data access yang lain. Buat package 'inventory.data' lalu buat java class 'BaseDataAccess.java' Masukkan code berikut ke dalam BaseDataAccess.java public class BaseDataAccess { String fileName = "C:/DB/Inventory.mdb"; String connURL = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + fileName + ";DriverID=22;READONLY=true}"; private Connection c = null; protected Connection getConnection() {return c;} protected boolean OpenConnection() { try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); c = DriverManager.getConnection(connURL,"",""); } catch (Exception ex) { ex.printStackTrace(); return false; } return true; } protected boolean CloseConnection() { try { if (c != null) { if (!c.isClosed()) {c.close();} }
  • 12. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 12 of 21 01/22/2008 09:53 AM c = null; } catch (SQLException ex) { ex.printStackTrace(); return false; } return true; } } Sekarang kita buat class 'daBarang.java' Masukkan code berikut ke dalam daBarang.java public class daBarang extends BaseDataAccess { /** Creates a new instance of daBarang */ public daBarang() { } public boolean testConnection() { if (this.OpenConnection()) { // koneksi database berhasil, jgn lupa tutup koneksi this.CloseConnection(); return true; } return false; } } Sekarang buka frmMain.java dan tambahkan 2 buah JButton seperti gambar berikut:
  • 13. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 13 of 21 01/22/2008 09:53 AM Masukkan code berikut ke event 'actionPerformed' dari btnTestConnection private void btnTestConnectionActionPerformed(java.awt.event.ActionEvent evt) { daBarang da = new daBarang(); if (da.testConnection()) { // koneksi berhasil, tampilkan pesan berhasil MessageHelper.showMessage(this, "Koneksi ke database berhasil"); } else { // koneksi gagal, tampilkan pesan gagal MessageHelper.showMessage(this, "Koneksi ke database gagal"); } } Sekarang kita coba jalankan program dan tekan tombol 'Test Connection' Selamat !! anda sudah berhasil membuat koneksi ke database. Sekarang tambahkan code berikut ke dalam daBarang.java public DataTable getAllBarang() { DataTable dtb = null; DataColumn[] dc = new DataColumn[4]; dc[0] = new DataColumn("Kode", JDBCType.VARCHAR);
  • 14. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 14 of 21 01/22/2008 09:53 AM dc[1] = new DataColumn("Nama", JDBCType.VARCHAR); dc[2] = new DataColumn("Harga", JDBCType.DOUBLE); dc[3] = new DataColumn("Jumlah", JDBCType.BIGINT); String sql = "SELECT Kode,Nama,Harga,Jumlah FROM Barang"; try { if (this.OpenConnection()) { dtb = AccessHelper.ExecuteDataTable(this.getConnection(), sql, dc); } } catch (Exception ex) { ex.printStackTrace(); } finally { this.CloseConnection(); } return dtb; } Tambahkan juga code berikut ke event 'actionPerformed' dari btnLoadData private void btnLoadDataActionPerformed(java.awt.event.ActionEvent evt) { daBarang da = new daBarang(); DataTable dtb = da.getAllBarang(); if ((dtb != null) && (dtb.getRowCount() > 0)) { int totalRow = dtb.getRowCount(); for (int i=0; i < totalRow; i++) { jTable1.setValueAt(dtb.getValue(i,"Kode"), i, 0); jTable1.setValueAt(dtb.getValue(i,"Nama"), i, 1); jTable1.setValueAt(dtb.getValue(i,"Harga"), i, 2); jTable1.setValueAt(dtb.getValue(i,"Jumlah"), i, 3); } } } Sekarang coba jalankan program dan tekan tombol 'Load Data' Selamat !! anda sudah berhasil membuat koneksi ke database, lalu membaca record yg terdapat dalam tabel Barang dan menampilkannya ke dalam JTable. Saya hanya akan membantu anda sampai tahap ini. Untuk operasi Create, Update dan Delete akan saya bahas di lain kesempatan. 6. iReport for JasperReport Sekarang kita akan membuat JasperReport menggunakan iReport.
  • 15. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 15 of 21 01/22/2008 09:53 AM Jalankan iReport, pilih File -> New Document Ubah nama report menjadi 'DaftarBarang' lalu tekan OK. Simpan report dengan nama C:JasperDaftarBarang.jrxml. Pilih Data -> Connections / Datasources, lalu pilih New
  • 16. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 16 of 21 01/22/2008 09:53 AM Beri nama Inventory. Untuk JDBC Driver pilih 'sun.jdbc.odbc.JdbcOdbcDriver'. Sedangkan untuk JDBC URL isi dengan 'jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:/DB/Inventory.mdb;DriverID=22;READONLY=true}'. Tekan Test untuk mengetahui apakah koneksi database berhasil atau gagal. Setelah test koneksi database berhasil tekan save. Setelah itu jangan lupa column default diberi tanda centang. Pilih Data -> Report query. Masukkan sintaks SQL seperti gambar dibawah.
  • 17. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 17 of 21 01/22/2008 09:53 AM Secara otomatis iReport akan membuat fields sesuai dengan query yang kita berikan. Pilih View -> Fields untuk melihat hasilnya. Pilih View -> Report Groups lalu tekan New. Beri nama 'JenisBarang'. Masukkan sintaks seperti gambar dibawah.
  • 18. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 18 of 21 01/22/2008 09:53 AM Masukkan fields dan static text seperti gambar dibawah ini. Jangan lupa Band yang tidak digunakan di set height-nya menjadi nol. Setelah selesai pilih Build -> Execute (with active connection).
  • 19. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 19 of 21 01/22/2008 09:53 AM Langkah selanjutnya adalah melakukan kompilasi DaftarBarang.jrxml menjadi DaftarBarang.jasper, caranya pilih Build -> Compile. Perhatikan window output untuk melihat lokasi file hasil kompilasi. Copy file tersebut ke directory C:Jasper. 7. JasperReport in Action Sekarang kita telah sampai di tahap terakhir yaitu menampilkan JasperReport di dalam aplikasi kita. Pertama kita harus menyiapkan file jar atau libraries yang akan digunakan. Cari directory tempat installasi iReport yang anda gunakan. Copy semua file jar (sekitar 27 MB) yang berada di folder lib ke C:libjasper. Sebetulnya tidak semua file jar dibutuhkan tetapi supaya mudah untuk saat ini kita copy semua jar yang ada. Atau cara kedua, anda download distribusi JasperReport (jasperreports-1.2.7-project.zip), esktrak lalu copy semua file jar yang ada di folder lib (sekitar 15 MB). Saya sarankan anda gunakan opsi kedua. Pilih Tools -> Library Manager, lalu tekan New Library... Beri nama 'JasperReport' lalu tekan Add JAR/Folder dan pilih folder C:libjasper.
  • 20. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 20 of 21 01/22/2008 09:53 AM Jangan lupa masukkan referensi libraries JasperReport ke project. Buka daBarang.java lalu tambahkan code berikut: public DataTable getDaftarBarang() { DataTable dtb = null; DataColumn[] dc = new DataColumn[5]; dc[0] = new DataColumn("Kode", JDBCType.VARCHAR); dc[1] = new DataColumn("Nama", JDBCType.VARCHAR); dc[2] = new DataColumn("Harga", JDBCType.DOUBLE); dc[3] = new DataColumn("Jumlah", JDBCType.BIGINT); dc[4] = new DataColumn("Keterangan", JDBCType.VARCHAR); String sql = "SELECT Barang.Kode, Barang.Nama, Barang.Harga, Barang.Jumlah, JenisBarang.Keterangan " + "FROM Barang INNER JOIN JenisBarang ON Barang.Jenis = JenisBarang.Kode"; try { if (this.OpenConnection()) { dtb = AccessHelper.ExecuteDataTable(this.getConnection(), sql, dc); } } catch (Exception ex) { ex.printStackTrace(); } finally { this.CloseConnection(); } return dtb; } Tambahkan sebuah JDialog Form ke dalam project. Pilih File -> New File... , pilih JDialog Form. Beri nama frmReport.java.
  • 21. Tutorial Netbeans dan JasperReport http://readme.awardspace.com/ 21 of 21 01/22/2008 09:53 AM Masukkan sebuah JScrollPane yang akan berfungsi sebagai parent bagi JRViewer dan beri nama pnlViewer. Tambahkan code berikut: bersambung...