Membuat Laporan Menggunakan IReport 5.5.0 dengan Databas eMs. Access 2016

Pada tutorial sebelumnya tentang:
Tutorial Java Swing Implementasi MVC Dengan Database Ms. Access 2016 Part 1
Tutorial Java Swing Implementasi MVC Dengan Database Ms. Access 2016 Part 2
Kita telah membahas tentang bagimana implementasi MVC (Model, View dan Controller) dengan database Microsoft Access 2016. Kelanjutan dari tutorial tersbut, kali ini kita akan membahas tentang bagaimana Membuat Laporan menggunakan Ireport 5.5.0 dengan database Microsoft Access 2016.

Video Membuat Laporan Menggunakan IReport 5.5.0

Pada tutorial kali ini telah diuji coba menggunakan :

  1. IReport 5.5.0
  2. Java Library for IReport 5.5.0
  3. Netbeans 8.2
  4. Microsoft Access 2016 dengan database *.accdb
  5. Windows 10 64bit

Penting: gunakan database yang sudah dibuat pada Tutorial Java Swing Implementasi MVC Dengan Database Ms. Access 2016 Part 1 atau download disini

Install AccessDatabaseEngine 32bit untuk Microsoft Access sehingga database *.accdb dapat dibaca pada ODBC Driver. Download AccessDatabaseEngine disini

Langkah-langkah membuat Report menggunakan Ireport 5.5.0 :

1. Membuat ODBC Data Source Driver

ODBC Data Source Driver hanya dibuat untuk keperluan membuat Report atau laporan, untuk selanjutnya  ODBC Data Source Driver tidak digunakan lagi. Buka ODBC Data Source (32bit) yang ada di Control PanelAdministrative ToolsODBC Data Sources (32-bit) sehingga muncul seperti gambar berikut:

NOTE: Pastikan pada kolom Platform gambar diatas muncul keterangan 32/64 bit menandakan AccessDatabaseEngine sudah terinstall dengan baik. Jika tidak silahkan download dan install AccessDatabaseEngine. JANGAN DILANJUTKAN JIKA MASIH 64bit SAJA.

Klik ADD untuk menambahkan Data Source baru, sehingga muncul seperti gambar berikut:

Klik dua kali (2X) pada Microsoft Access Driver (*.mdb,*.accdb)

Isi Data Source Name, lalu pilih Database dengan klik tombol Select..

Dibagian Directory pilih lokasi folder database sampai muncul nama database. Pada kolom Database Name pilih nama database kemudian klik OK

NOTE: jika pemilihan database berhasil akan terlihat nama databse seperti gambar diatas
Klik OK untuk mengakhiri.

2. Membuat Laporan Menggunakna iReport 5.5.0

a. Buka Ireport 5.5.0 kemudian klik FileNew

b. Klik Launch Report Wizard untuk melanjutkan

c. Klik Next unutk melanjutkan

d. Pilih jenis Connection / Data Source yang sudah dibuat sebelumnya, kemudian masukan SQL Query untuk menampilkan seluruh data mahasiswa.

 

Pilih tombol >> untuk memasukan semua field ke dalam laporan seperti gambar berikut

e. Klik next untuk melanjutkan


f. Pada studi kasus kali ini kita tidak membutuhkan Group atau pengelompokan. Klik Next untuk melanjutkan

g. Klik Finish untuk mengakhiri Report Wizard. Jika tahapan-tahapan diatas telah diikuti dengan benar maka akan muncul laporan seperti gambar berikut:

h. Ubah Judul Laporan, Sub Judul Laporan dan Judul kolom dengan cara Klik 2x (Dua Kali). Kemudian Klik Preview,

Sehingga tampil laporan Data Mahasiswa seperti gambar berikut:

NOTE:
Sebelum diintegrasikan dengan Aplikasi, jangan lupa merubah Language pada laporan dari Groovy menjadi Java dengan cara, Pada bagian Properties cari Language kemudian ubah language menjadi java. Perhatikan gambar berikut:

3. Menampilkan Laporan

Setelah laporan berhasil dibuat, langkah selanjutnya adalah mengintegrasikan laporan dengan aplikasi yang kita buat. Adapun langkah-langkah integrasi laporan dengan aplikasi adalah:
a. Tambahkan Library IReport 5.5.0 pada project
Library IReport 5.5.0 dapat didownload disini. Library yang digunakan harus sesuai dengan versi IReport yang dipakai pada saat membuat laporan.
Untuk menambahkan library IReport 5.5.0, pada Klik Kanan pada Folder Library yang ada pada Project lalu pilih Add Jar.

b. Pilih lokasi Library yang sudah didownload, kemudian pilih semua file, lalu klik Open

Proses penambahan library iReport 5.5.0 pada Netbeans telah berhasil. Selanjutnya buka main class halaman data mahasiswa, tambahkan Button Cetak Laporan seperti gambar berikut:

Beri event pada Button ccetak laporan dengan clik dua kali tombol tersebut. Masukan Source Code berikut

DBConnection con = DBConnection.getInstance();
        try {
            JasperPrint jprint = JasperFillManager.fillReport("LaporanDataMahasiswa.jasper", null, con.getKoneksi());
            JasperViewer jv = new JasperViewer(jprint);
            jv.setVisible(true);
        } catch (JRException ex) {
            ex.printStackTrace();
        }

Untuk menjalankan aplikasi klik F6. Jika tidak ada masalah maka akan muncul laporan yang sudah dibuat sebelumnya.

NOTE:

Jika terjadi Error seperti berikut:

Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError
	at org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(ClassInfo.java:162)
	at org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:192)
	at LaporanDataMahasiswa_1513900109426_822902.$getStaticMetaClass(calculator_LaporanDataMahasiswa_1513900109426_822902)
	at LaporanDataMahasiswa_1513900109426_822902.(calculator_LaporanDataMahasiswa_1513900109426_822902)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
	at java.lang.Class.newInstance0(Class.java:374)
	at java.lang.Class.newInstance(Class.java:327)
	at net.sf.jasperreports.engine.design.JRAbstractJavaCompiler.loadEvaluator(JRAbstractJavaCompiler.java:112)
	at net.sf.jasperreports.engine.design.JRAbstractCompiler.loadEvaluator(JRAbstractCompiler.java:340)
	at net.sf.jasperreports.engine.JasperCompileManager.getEvaluator(JasperCompileManager.java:265)
	at net.sf.jasperreports.engine.fill.JRFillDataset.createCalculator(JRFillDataset.java:462)
	at net.sf.jasperreports.engine.fill.JRBaseFiller.(JRBaseFiller.java:382)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:88)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:103)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:61)
	at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:179)
	at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:81)
	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446)
	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:276)
	at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:745)
	at View.MVCMahasiswa.jButton9ActionPerformed(MVCMahasiswa.java:517)
	at View.MVCMahasiswa.access$700(MVCMahasiswa.java:31)
	at View.MVCMahasiswa$8.actionPerformed(MVCMahasiswa.java:345)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.Component.processMouseEvent(Component.java:6505)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
	at java.awt.Component.processEvent(Component.java:6270)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4861)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
	at java.awt.Container.dispatchEventImpl(Container.java:2273)
	at java.awt.Window.dispatchEventImpl(Window.java:2719)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
	at java.awt.EventQueue.access$200(EventQueue.java:103)
	at java.awt.EventQueue$3.run(EventQueue.java:688)
	at java.awt.EventQueue$3.run(EventQueue.java:686)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:702)
	at java.awt.EventQueue$4.run(EventQueue.java:700)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Caused by: groovy.lang.GroovyRuntimeException: Conflicting module versions. Module [groovy-all is loaded in version 2.0.1 and you are trying to load version 2.3.0-rc-1
	at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.registerExtensionModuleFromProperties(MetaClassRegistryImpl.java:179)
	at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.registerExtensionModuleFromMetaInf(MetaClassRegistryImpl.java:167)
	at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.registerClasspathModules(MetaClassRegistryImpl.java:153)
	at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.(MetaClassRegistryImpl.java:108)
	at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.(MetaClassRegistryImpl.java:70)
	at groovy.lang.GroovySystem.(GroovySystem.java:33)

Hal tersebut disebabkan karena laporan masih menggunakan bahasa Groovy bukan java. Ubah language laporan dari groovy ke java dengan cara seperti gambar berikut:

Project Lengkap dapat didownload disini

Sharethis

 

Related Post

Cara Install Plugin Kotlin pada Android Studio Pada tutorial kali ini akan dijelaskan tentang cara install plugin kotlin pada android studio. Kotlin merupakan bahasa pemrograman baru yang dibuat ol...
Java 8: Penggunaan Date Time dan Calender pada Jav... Pada tuturial kali ini, menjelaskan penggunaan Date Time pada Java yang menggunakan API java.until.Date dan java.until.Calender. Sebagai seorang progr...
Java : Membuat Laporan Menggunakan IReport 5.5.0 Hal yang paling vital dalam membuat sistem informasi adalah pembuatan laporan. Membuat laporan merupakan hal yang paling melelahkan apa lagi terdiri d...
Membuat Koneksi Ms. Access menggunakan UCanAccess ... Pada tutorial kali ini, akan dijelaskan bagaimana membuat koneksi Ms. Access menggunakan UCanAccess pada java. Pertama --Download UCanAccess Library d...
Aplikasi Minimarket Pro v2.3 (Java Aplication) Salah satu apilasi yang kami kembangkan sendiri adalah Aplikasi minimarket v2.3. Aplikasi Minimarket Pro v2.3 merupakan aplikasi untuk toko grosir, mi...
Menampilkan Informasi Kapasitas Hardisk pada Java Untuk menampilkan informasi kapasitas hardisk pada java menggunakan class java.io.File. Pada java 1.6 keatas terdapat method getTotalSpace(), getUsabl...
Aplikasi Rumah Makan / Restaurant (MSIDRumahMakan ... Aplikasi Rumah Makan / Restaurant (MSIDRumahMakan v1.0) merupakan aplikasi/perangkat lunak yang digunakan untuk keperluan administrasi Rumah Makan, Ba...
Membuat Koneksi MySQL menggunakan JDBC Driver pada... Pada tutorial kali ini, menjelaskan tentang bagaimana membuat koneksi MySQL menggunakan JDBC Driver pada Java. Sebelum melanjutkan ke tahapan berikutn...
Menggunakan Thread pada Java c. Sebuah object dari class java.lang.Thread merupakan representasi dari sebuah thread. Baca juga Membandingkan tanggal pada java Terdapat dua l...
Manipulasi File pada Java Untuk melakukan manipulasi File pada Java menggunakan class java.io.File mulai dari membuat file, menghapus file, cek permision sebuah file, cek meta ...

Satu tanggapan untuk “Membuat Laporan Menggunakan IReport 5.5.0 dengan Databas eMs. Access 2016

  1. Ping-balik: Tutorial Java Swing Implementasi MVC Dengan Database Ms. Access 2016 Part 2 - Jagungodak

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

thirteen − four =