Membuat Report Menggunakan iReport dari Netbeans

Tool untuk reporting yang paling populer di Java adalah iReport. iReport penggunaanya mirip dengan Crystal Report yang sudah banyak dikenal orang. Dengan iReport kita dapat membuat report dengan mudah. Cukup dengan drag n drop dan juga wizard yang sangat mudah digunakan. iReport sendiri tersedia dalam bentuk aplikasi tunggal dan yang paling baru adalah iReport sudah dapat diintegrasikan dengan Netbeans IDE. Artinya kita tidak perlu lagi menggunakan 2 tools yang berbeda untuk membuat aplikasi yang lengkap dengan reportnya. Dengan Netbeans IDE + iReport plugin maka tools pengembangan aplikasi kita udah lengkap 🙂

Pada tulisan kali ini, saya coba menunjukan bagaimana mengintegrasikan iReport dengan Netbeans, kemudian membuat report sederhana.

  • Pada tulisan ini saya menggunakan Netbeans 6.1
  • Download iReport Plugin untuk Netbeans di Sini
  • Tambahkan iReport Plugin ke dalam Netbeans dengan cara click pada menu Tools>Plugin. Maka Window Plugin akan ditampilkan seperti berikut:

  • Pada window plugin pilih tab Downloaded dan klik tombol Add Plugins..
  • Pada window add plugins.. arahkan ke lokasi dimana anda telah mengekstrak iReport Plugin yang telah didownload sebelumnya.

  • Tambahkan ketiga file .nbm seperti pada gambar diatas, sehingga tampilan Window Plugin menjadi seperti gambar berikut ini

  • Pastikan ketiga file .nbm sudah ditambahakan, selajutnya tekan tombol Install
  • Setelah Instalasi selesai, sebaiknya anda merestart Netbeans untuk memastikan iReport plugin sudah terinstal dengan sempurna.
  • Apabila iReport sudah terinstal dalam Netbeans, maka tampilan Netbeans akan seperti gambar di bawah ini.

  • Sampai di sini kita sudah menginstal iReport ke dalam Netbeans. Selanjutnya kita akan mencoba membuat laporan sederhana menggunakan iReport yang sudah terintegrasi ke dalam Netbeans tadi.
  • Database yang akan kita hubungkan dengan laporan yang akan kita buat adalah database sample yang sudah ada dalam instalasi Java DB. Java DB secara default terinstal saat kita menginstal Netbeans untuk JEE.

  • Klik kanan pada node database sample seperti pada gambar di atas, kemudian pilih connect. Maka koneksi ke database sample akan tercipta sehingga kita dapat melihat table apa saja yang terdapat dalam database sample tersebut.
  • Yang akan kita gunakan dalam report kita adalah table CUSTOMER. Kita akan membuat report yang menampilkan daftar Customer.
  • Selanjutnya buatlah project baru dengan memilih Java Application. Berilah nama Report.

  • Buatlah File Report baru dengan memilih menu File>New File. Pada Window New File pilihlah Categories Report dan Report untuk File Typenya

  • Kemudian klik Next dan beri nama Customer.jrxml dan selanjutnya klik Next lagi
  • Pada Connections/Data Sources kita klik tombol New, maka akan ditampilkan window Datasource. Kita pilih Netbeans Database JDBC Connection kemudian tekan tombol Next.

  • Pada Netbeans Database JDBC Connection beri nama sample dan pilihlah Connection ke database Sample seperti pada gambar di bawah ini

  • Tekan tombol Save untuk menyimpan koneksi
  • Pada bagian Query ketik perintah sql SELECT * FROM CUSTOMER kemudian tekan tombol Next.

  • Selanjutnya akan ditampilkan daftar field yang dapat kita gunakan dalam report. Pilihlah field-field yang akan ditampilkan dalam report, misalnya NAME, ADDRESSLINE1, ADDRESSLINE2, CITY, STATE, PHONE dan EMAIL.

  • Klik Next dan pada Group by kita abaikan saja. Klik Next sekali lagi dan pilih Tabular Layout seperti pada gambar di bawah ini

  • Klik Next dan Finis untuk mengakhiri pembuatan Report, maka akan ditampilkan Report Designer yang dapat kita gunakan untuk mengatur layout laporan kita
  • Untuk menjalankan Report ini klik pada tab Preview seperti pada gambar di bawah ini

  • Tunggu beberapa saat untuk proses compilasi Report, kemudian laporan List Customer akan ditampilkan langsung di dalam Netbeans IDE
  • Di sini juga kita dapat langsung memprint laporan tersebut atau kita simpan dalam format yang lain seperti ke pdf atau ke xls

102 Responses to Membuat Report Menggunakan iReport dari Netbeans

  1. Finz says:

    Thx for iReport tutor, baru tau neh iReport bisa pke Plugin 😀

  2. denny says:

    mm.. mau nanya, klo umpama report ini dipanggil pada saat menjalankan program caranya bagaimana?

    misal klik JButton kemudian report ini muncul
    need a help
    Thx..

  3. Bia says:

    Pak saya boleh nanya dunk.. saya menggunakan iReport yg stand alone dan mengakses data csv. Saya sudah berhasil menampilkan semua data dan juga meng”short” field yang ingin ditampilkan.

    Pertanyaannya adalah:
    misalkan saya ada field CUST_BUY_Unit

    CUST_BUY_Unit
    ——-
    2
    1
    3
    1
    2
    2
    ——-

    expression apa yg yang digunakan supaya hasilnya bisa menampilkan:

    BUY 2 Unit = 3 Person
    BUY 1 Unit = 2 Person
    BUY 3 Unit = 1 Person

    *****

    Mohon Pencerahannya..

    Terima Kasih

  4. hendra says:

    pak ikutan nanya nich….

    misal:
    1. total uang = 1.000.000.000
    2. total uang = xxxxxx100.000
    3. total uang = xx900.000.000

    bagaimana cara membuat tampilan seperti itu di ireport pak….

  5. arifanh says:

    mmm… bagus
    semangat pak

  6. mbahsomo says:

    Boleh nanya nih kalo mau direc print pake ireport gimana,
    sebelumnya terimakasih atas ifornya
    email saya : mbahsomo[at]mbahsomo[dot]co[cot]cc

  7. suwanto says:

    pak kalo bikin report trus querynya dari program bukan dari ireport. bisa ga pak?

  8. Baah says:

    bagus tenan bos tutor’nya….

  9. Arif says:

    pak ikutan ya. klo jumlahin record angka gimana ya, Tolong ya…. Tq

  10. Christian says:

    CONGRATULATION GUYS

    I don’t even speak your language and this is the only one tutorial that it really works, thanks for everythink and good look

    Tahnk you again

    CHRISTIAN
    From ECUADOR-suthamerica

  11. mbahsomo says:

    Ada orang tua lewat wussss 😀

  12. Hendro Steven says:

    halo Christian,
    wow i’m glad can help you..

  13. cindi says:

    gman kLo bwt format surat pke ireport??
    cara nampilin data yang tipe datanya long text??

  14. adi says:

    kalo nampilin data gambar gimana mas, mohon pencerahan

  15. ismael says:

    salam kenal mas, saya mo tanya tentang netbeans saya pake nb 6.0, saya buat menu, gimana caranya memanggil form (coding) form yang lain dari menu.

  16. thanto says:

    pak gimana mangil laporannya saya pake j2se.. mohon bantuannya pak….(contoh listing programnya) makasi pak..

  17. ismael says:

    salam kenal, saya mo tanya ni pak. saya punya problem. dalam menampilkan report (ireport) didalm netbeans 6.0, saya dah buat reportnya di netbeans. masalahnya pada saat saya panggil dari menu reportnya ditak mau tampil ada errro katanya. coding saya pake seperti berikut :
    Connection con = null;
    try {
    String jdbcDriver = “com.mysql.jdbc.Driver”;
    Class.forName(jdbcDriver);

    String url = “jdbc:mysql://localhost/dbbmt”;
    String user = “root”;
    String pass = “12345”;

    con = DriverManager.getConnection(url, user, pass);
    Statement stm = (Statement) con.createStatement();

    try {
    Map prs = new HashMap();
    JasperReport JRpt = JasperCompileManager.compileReport(“./Report/LapNasabah.jrxml”);
    JasperPrint JPrint = JasperFillManager.fillReport(JRpt, prs, con);
    JasperViewer.viewReport(JPrint, false);
    } catch (Exception rptexcpt) {
    System.out.println(“Report Can’t view because : ” + rptexcpt);
    }
    } catch (Exception e) {
    System.out.println(e);
    }

    baris yang salah pada
    JasperReport JRpt = JasperCompileManager.compileReport(“./Report/LapNasabah.jrxml”);
    JasperPrint JPrint = JasperFillManager.fillReport(JRpt, prs, con);
    JasperViewer.viewReport(JPrint, false);

    Pesan lesalahannya
    canot find symbol
    symbol :class JasperReport
    location :frmmenu

    kira kira apa solusinya apa ya pak. terima kasih sebelumnya

  18. ty says:

    pak gmn crna

  19. ty says:

    pak gmn crna nampilin pke ireport seperti laporan text biasa?
    ex..

    header judul laporan
    ———————————
    isi …
    blaa…blaaa… : ISI
    |
    |
    sda
    |
    |

    etc..

    ————————————————
    tempat tand tangan

    ………………………….

    thx…

  20. Hendro Steven says:

    fontnya pake courier new

  21. Hendro Steven says:

    kemungkinan besar library Jasperreport belum ditambahkan ke projectnya

  22. mulyana says:

    pa saya sudah bisa panggil e-report tapi pas di print ga mau malah keluar aplikasinya…
    ada warning : the ‘topBorder’ attribute is deprected. use the tag intead

  23. mbanxlambang says:

    Mantap kang….
    thx pisan
    cuman.. bisa ga kalo querynya kita dapatkan setelah program berjalan dan gimana caranya supaya bisa di panggil dengan clik tombol di java..??

    makasih kang

  24. Andrie says:

    Pak mo nanya nie… Aq buat aplikasi pengarsipan surat tapi masih bingung ne untuk report disposisi suratnya. Pegawainya kan banyak jadi memasukkan 1 tabel pegawai menjadi sebuah report disposisi jadinya banyak banget… Gimana solusinya agar dapat di print satu per satu berdasarkan pegawainya… Trim’s..

  25. agung says:

    pak.. heartbeat-plugin-nb <<nya ak cari di netbean ga ada yach. bisa dibantu infonya kemanakah daku harus mencarinya?hehe..thakns..

  26. agung says:

    pak.. heartbeat-plugin-nb <<nya ak cari di netbean ga ada yach. bisa dibantu infonya kemanakah daku harus mencarinya?hehe..thakns..ddd

  27. Hendro Steven says:

    tinggal kita kirim aja sqlnya ke reportnya 🙂

  28. ecco says:

    mas…aq mohon pencerahannya ney…
    aq uda bikin report pake ireport untuk struk pembelian…
    massalahnya diprogram waktu print reportnya mesti keluar print dialog dulu…
    kalo langsung nge-print tanpa muncul print dialog dulu gimana ya codingnya…
    mohon pencerahaannya di email ya mas…
    terimakasih…

  29. Rama says:

    halo,
    terima kasih atas infonya..
    saya ingin bertanya.. bgmn caranya menghasilkan report dari aplikasi (diluar NetBeans) ? apakah bisa?

    terima kasih sebelumnya,

  30. Hendro Steven says:

    tentu bisa..

  31. IdeGue! Blog says:

    trimakasih atas infonya sob,, semoga saya dapat belajar lebih banyak dari sini….

  32. anwar says:

    mas bagai mana cara memanggi/menampilkan laporannya langsung dari project netbeans, jadi tinggal klik menu langsung tampil…

    terima kasih atas infonya

  33. Hendro Steven says:

    JInternalFrame f = new JInternalFrame(“Customer List”);
    try {
    // // TODO add your handling code here:
    // JasperPrint print = JasperFillManager.fillReport(“report/customer.jasper”, null, getConnection());

    JasperReport jasperReport = JasperCompileManager.compileReport(“report/customer.jrxml”);
    JasperPrint print = JasperFillManager.fillReport(jasperReport, null, getConnection());
    JRViewer viewer = new JRViewer(print);
    f.getContentPane().add(viewer);
    f.setBounds(10, 10, 600, 500);
    f.setClosable(true);
    f.setMaximizable(true);
    f.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
    desktopPane.add(f);
    f.setVisible(true);
    } catch (JRException ex) {
    Logger.getLogger(SampleReportApplication.class.getName()).log(Level.SEVERE, null, ex);
    }

    code di atas akan menampilkan report dalam sebuah jInternalFrame

  34. die fahrul says:

    mas saya menanyakan kalau pesan error seperti ini apa yang salah nya….mohon petunjuk terima kasih sebelumnya
    Exception occurred during event dispatching:
    java.lang.NullPointerException
    at net.sf.jasperreports.engine.JRPropertiesMap.readObject(JRPropertiesMap.java:185)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
    at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
    at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:88)
    at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:515)
    at bookstore.prevreport1.generateReport(prevreport1.java:53)
    at bookstore.prevreport1.displayReport(prevreport1.java:29)
    at bookstore.prevreport1.(prevreport1.java:26)
    at bookstore.frmLogin.btnLoginActionPerformed(frmLogin.java:118)
    at bookstore.frmLogin.access$100(frmLogin.java:13)
    at bookstore.frmLogin$2.actionPerformed(frmLogin.java:101)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
    at java.awt.Component.processMouseEvent(Component.java:6263)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3255)
    at java.awt.Component.processEvent(Component.java:6028)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4630)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4460)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
    at java.awt.Container.dispatchEventImpl(Container.java:2085)
    at java.awt.Window.dispatchEventImpl(Window.java:2475)
    at java.awt.Component.dispatchEvent(Component.java:4460)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
    at java.awt.Dialog$1.run(Dialog.java:1045)
    at java.awt.Dialog$3.run(Dialog.java:1097)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.awt.Dialog.show(Dialog.java:1095)
    at java.awt.Component.show(Component.java:1563)
    at java.awt.Component.setVisible(Component.java:1515)
    at java.awt.Window.setVisible(Window.java:841)
    at java.awt.Dialog.setVisible(Dialog.java:985)
    at bookstore.frmLogin$3.run(frmLogin.java:139)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

  35. Hendro Steven says:

    Object Map yang di kirimkan ke Jasper sepertinya null, coba dicek lagi..

  36. Tejo Baskoro says:

    Mas, buat nampilin reportnya pake aplikasi gimana ya?jadi misal ada buton view report ntar reportnya langsung nampil, aq gagal trus ni bikinnya. 😀

  37. Hendro Steven says:

    di komen yang di atas udah ada tuh.. coba diliat lagi

  38. nowan says:

    kang Hendro , klo mau bikin report (view) di netbeans dengan format kertas qwarto,A4, folio atau lain2.. gimana kang???
    trim’s kang Hendro, membantu banget nih tutorial…

  39. Hendro Steven says:

    kalo untuk desain reportnya pake aja iReport, disitu ada property yang bisa kita atur untuk ukuran kertasnya

  40. Kriss says:

    I dont understand your language but WOOW, that one worked like a charm! Thanks.

  41. Hendro Steven says:

    Ur welcome Kriss

  42. Kebetulan ane nyariin tutorial basic iReport
    Ijin save y gan, ane lebih demen baca offline 🙂

  43. icon says:

    SUKSES!!!

  44. GIMA says:

    malam mas, mas Hendro saya mooohon pencerahanya. saya sudah buat report dengan ireport juga sudah saya masukam kodingnya untuk menampilkan reportnya tetapi tidak mau tampil mas reportnya kita saya panggil, ini saya sertakan potongan kodenya dan eror pada netbeans. saya memakai netbeans 6.5, semua library jasperreport juga telah saya masukan, kemungkinan kesalahan pada compile jaspereportnya mas tapi saya bingung. makasih pebcerahanya mas hendro.

    SOURCE CODE
    private void laporanshow(String vName) {

    try {
    Class.forName(driver);
    try {
    Connection conn = DriverManager.getConnection(database, user, password);
    Statement statement = conn.createStatement();
    System.out.println(“Connection Sukses…”);

    String reportSource;
    String reportDest;

    reportSource=login.ReportPath +
    “report/” + vName + “.jrxml”;
    reportDest=login.ReportPath +
    “lap/” + vName + “.html”;

    Map params = new HashMap();

    try {

    JasperReport jasperReport =
    JasperCompileManager.compileReport(reportSource);

    JasperPrint jasperPrint =
    JasperFillManager.fillReport(
    jasperReport, params, conn);

    JasperExportManager.exportReportToHtmlFile(
    jasperPrint, reportDest);

    JasperViewer.viewReport(jasperPrint,false);

    } catch (JRException ex) {

    Logger.getLogger(menu_utama.class.getName()).log(Level.SEVERE, null, ex);
    }
    }

    } catch (SQLException ex) {
    Logger.getLogger(menu_utama.class.getName()).log(Level.SEVERE, null, ex);
    }

    } catch (ClassNotFoundException ex) {
    Logger.getLogger(menu_utama.class.getName()).log(Level.SEVERE, null, ex);
    }

    PADA FORM login source codenya

    public static String ReportPath=”../Briliant_Motor/src/briliant_motor/”;

    EROR

    Jan 2, 2002 3:15:13 PM org.apache.commons.digester.Digester error
    SEVERE: Parse Error at line 2 column 417: Document root element “jasperReport”, must match DOCTYPE root “null”.
    org.xml.sax.SAXParseException: Document root element “jasperReport”, must match DOCTYPE root “null”.
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.rootElementSpecified(XMLDTDValidator.java:1621)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(XMLDTDValidator.java:1900)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:764)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1357)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$ContentDriver.scanRootElementHook(XMLDocumentScannerImpl.java:1289)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
    at org.apache.commons.digester.Digester.parse(Digester.java:1647)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:239)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:226)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:214)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:168)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:152)
    at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:150)
    at briliant_motor.form.menu_utama.laporanshow(menu_utama.java:990)
    at briliant_motor.form.menu_utama.jMenuItem21ActionPerformed(menu_utama.java:864)
    at briliant_motor.form.menu_utama.access$3000(menu_utama.java:46)
    at briliant_motor.form.menu_utama$31.actionPerformed(menu_utama.java:513)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1216)
    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1257)
    at java.awt.Component.processMouseEvent(Component.java:6038)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3260)
    at java.awt.Component.processEvent(Component.java:5803)
    at java.awt.Container.processEvent(Container.java:2058)
    at java.awt.Component.dispatchEventImpl(Component.java:4410)
    at java.awt.Container.dispatchEventImpl(Container.java:2116)
    at java.awt.Component.dispatchEvent(Component.java:4240)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
    at java.awt.Container.dispatchEventImpl(Container.java:2102)
    at java.awt.Window.dispatchEventImpl(Window.java:2429)
    at java.awt.Component.dispatchEvent(Component.java:4240)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
    net.sf.jasperreports.engine.JRException: org.xml.sax.SAXParseException: Document root element “jasperReport”, must match DOCTYPE root “null”.
    at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:243)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:226)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:214)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:168)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:152)
    at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:150)
    at briliant_motor.form.menu_utama.laporanshow(menu_utama.java:990)
    at briliant_motor.form.menu_utama.jMenuItem21ActionPerformed(menu_utama.java:864)
    at briliant_motor.form.menu_utama.access$3000(menu_utama.java:46)
    at briliant_motor.form.menu_utama$31.actionPerformed(menu_utama.java:513)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1216)
    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1257)
    at java.awt.Component.processMouseEvent(Component.java:6038)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3260)
    at java.awt.Component.processEvent(Component.java:5803)
    at java.awt.Container.processEvent(Container.java:2058)
    at java.awt.Component.dispatchEventImpl(Component.java:4410)
    at java.awt.Container.dispatchEventImpl(Container.java:2116)
    at java.awt.Component.dispatchEvent(Component.java:4240)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
    at java.awt.Container.dispatchEventImpl(Container.java:2102)
    at java.awt.Window.dispatchEventImpl(Window.java:2429)
    at java.awt.Component.dispatchEvent(Component.java:4240)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
    Caused by: org.xml.sax.SAXParseException: Document root element “jasperReport”, must match DOCTYPE root “null”.
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.rootElementSpecified(XMLDTDValidator.java:1621)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(XMLDTDValidator.java:1900)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:764)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1357)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$ContentDriver.scanRootElementHook(XMLDocumentScannerImpl.java:1289)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
    at org.apache.commons.digester.Digester.parse(Digester.java:1647)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:239)
    … 36 more

  45. Hendro Steven says:

    kalo diliat dari errornya sepertinya ada yang salah dengan dokumen jrxmlnya.. coba dibuka lagi pake ireport dan dicompile, kalo gak ada error berarti udah beres..

  46. Muhamad Kuncoro says:

    tutorial yang bagus, ada beberapa yang mau saya tanyakn Mas, saya menggunakan postgresql, tetapi pada iReport ketika memanggil storedprocedure, dengan format
    select spku($P{data_string})
    muncul error no function spku(boolean), mohon pencerahannya. Thanks

  47. hendra says:

    Mas Nampilin report dari java-ireport tapi dalam format pdf gimana caranya mas?
    Sekalian sama codenya mas,hehehehehe.Mohon bantuannya ,terima kasih……..

  48. Regas says:

    Ass….Slam kenal semua…sya punya problem…laporan yang dibuat pake ireport hanya tampil dari netbeans….jika project di Clean and Build trus dijalankan aplikasi.jar (yang ada dalam folder dist dari project) muncul pesan kira2 begini…ClassNotFoundException…Laporan Tidak dapat dicetak….Mohon pencerahannya….Tolong ya…..Pleasee….

    ini kodenya….

    void cetak() {
    try {
    //Lokasi File Jasper//
    String nmFile=”src/report/reportbarang.jasper”;
    String driver=”com.mysql.jdbc.Driver”;
    String konek=”jdbc:mysql://localhost/penjualan”;
    String user=”root”;
    String password=””;

    HashMap parameter=new HashMap();
    Class.forName(driver);
    Connection conn=DriverManager.getConnection(konek,user,password);

    File reportFile=new File(nmFile);
    JasperReport jReport= (JasperReport)JRLoader.loadObject(reportFile.getPath());
    JasperPrint jPrint=JasperFillManager.fillReport(jReport, parameter,conn);
    JasperViewer.viewReport(jPrint,true);
    JasperViewer.setDefaultLookAndFeelDecorated(true);
    }
    catch (Exception e) {
    JOptionPane.showMessageDialog(null, “Laporan Tidak Dapat Dicetak!\n” +
    e.getMessage(),”Cetak Laporan”, JOptionPane.ERROR_MESSAGE);
    }
    }

  49. Hendro Steven says:

    itu karena path file reportbarang.jasper tidak ditemukan, coba aja pake absolut path, misal C:/reportbarang.jasper

  50. Ramadhani says:

    malam mas …mo minta tolong nich mas,,saya newbie baget tentang i report …saya mo minta tutorial yg lebih lengkap donk mas…tolong ya mas ,,,kirim ke email nya saya…makasih mas……

  51. jawaxa says:

    ijin share gan… ^_^

  52. alviqh says:

    mas hendro,, saya btuh bantuan, saat ini saya sedang bkin skripsi dgan netbeans. nah saya bingung saat sedang membuat ireport nya.. sudah berulang kali saya edit source code nya, namun msih saja tetap error dan gak mau tampil datanya pada jasper viewer, pdhal saat di ireport preview bisa tampil..

    kurang lebih begini source code yg saya buat…

    import java.awt.event.*;
    import javax.swing.*;
    import java.sql.*;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import net.sf.jasperreports.engine.*;
    import net.sf.jasperreports.view.JasperViewer;
    import java.util.HashMap;
    import java.util.Map;

    public class {
    ……………..
    ……………..
    ……………..
    }

    private static Connection InitConnection(){
    String user=”root”;
    String pwd=”root”;
    String host=”localhost”;
    String db=”db_buku”;
    String urlValue=””;
    Connection Koneksi=null;
    try {
    urlValue=”jdbc:mysql://”+ host +”/”+ db +”?user=” + user +
    “&password=”+ pwd;
    Koneksi=DriverManager.getConnection(urlValue);
    }
    catch (Exception e)
    {
    System.out.println(e);
    }
    return Koneksi;
    }

    private void buildReport(String vName)
    {
    String reportSource;
    String reportDest;
    reportSource=ReportPath +
    “templates/” + vName + “.jrxml”;
    reportDest=ReportPath +
    “results/” + vName + “.html”;
    try {
    JasperReport jasperReport=JasperCompileManager.compileReport(reportSource);
    JasperPrint jasperPrint=JasperFillManager.fillReport(jasperReport, null, lConnection);
    JasperExportManager.exportReportToHtmlFile(jasperPrint, reportDest);
    JasperViewer.viewReport(jasperPrint,false);
    }
    catch (JRException ex){
    ex.printStackTrace();
    }
    }

    }

    nah,, saat akan tampil Jasper Viewer tampil tulisan bgini
    “The Document has no pages” padahal saat di privew sudah ada data nya.

    trus error nya sperti ini mas..

    net.sf.jasperreports.engine.xml.JRBandFactory createObject
    WARNING: The ‘isSplitAllowed’ attribute is deprecated. Use the ‘splitType’ attribute instead.
    net.sf.jasperreports.engine.query.JRJdbcQueryExecuter
    WARNING: The supplied java.sql.Connection object is null.
    net.sf.jasperreports.engine.query.JRJdbcQueryExecuter
    WARNING: The supplied java.sql.Connection object is null.

    Apakah ada yg salah dengan source code saya,, mohon bantuanya mas..
    Terima kasih sebelumnya..

  53. azzurafinal says:

    siiiip

  54. dani says:

    mas saya mau tanya tentang nampilin tanggal di ireport? di ga mau mucul, cuma tgl aja yg ga mau muncul

  55. eko4ries69 says:

    sory nih aku mau tanya klo bikin report pke JCreator gmana? krim email aku ya aku tunggu?

  56. bautinja says:

    makasih udah menambah wawasan

  57. Hendro Steven says:

    gak pernah pake jCreator

  58. Hendro Steven says:

    wewww.. ini bisa byk pengebabnya.. yang paling sederhana, coba textfieldnya di gedein sizenya 😀

  59. Hendro Steven says:

    dari errornya keliatannya koneksi ke databasenya belum bener nih, makanya reportnya no page dan kalo no page pasti gak tampil

  60. Hendro Steven says:

    monggo…

  61. klo error nya seperti ini gmn yak?
    net.sf.jasperreports.engine.JRException: java.io.FileNotFoundException: report\templates\DaftarPembeli.jrxml.jrxml (The system cannot find the path specified)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:174)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:154)
    at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:146)
    at apppenjualan.FrmCetak.buildReport(FrmCetak.java:110)
    at apppenjualan.FrmCetak.Add(FrmCetak.java:81)
    at apppenjualan.FrmCetak.actionPerformed(FrmCetak.java:74)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
    at java.awt.Component.processMouseEvent(Component.java:6263)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:6028)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4630)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4460)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
    at java.awt.Container.dispatchEventImpl(Container.java:2085)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4460)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
    Caused by: java.io.FileNotFoundException: report\templates\DaftarPembeli.jrxml.jrxml (The system cannot find the path specified)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.(FileInputStream.java:106)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:169)
    … 30 more

  62. Cika Rahmada says:

    mau nanya bagaimana sih coding’nya menampilka ireport di menu utama ..
    maksih

  63. Koo says:

    Sore, Pak.

    Saya mau tanya, Pak.
    Saya menggunakan iReport 4.1.3 di NetBeans 7.0.1.
    Saya masih bingung bagaimana menggunakan iReport ini.
    Saya ikuti langkah2 di atas, saya bingung ketika sampai pada tahap “Pada Connections/Data Sources kita klik tombol New, maka akan ditampilkan window Datasource. Kita pilih Netbeans Database JDBC Connection kemudian tekan tombol Next.”.

    Saya juga tidak menemukan pemasukan Query dan pemilihan Tabel. Bagaimana ya, Pak, cara detailnya? Terima kasih. 🙂

  64. gi3 says:

    Tx mas Buat Infonya, sangat berguna

    cara nampilin hasil reposrtnya dalam bentuk PDF dan di cetak gimana caranya yah mas Hen?
    kalo ada sekalian scriptnya juga, makasih sakali lagi

  65. Ayu says:

    Assalamu’alaykum pak, saya memakai ireport.3.7.4 dan netbeans.6.9.1 secara terpisah. saya sudah membuat template laporan seperti template surat. dan sudah membuat kelas buat memanggil data yang akan ditampilkan pada template. terus langkah selanjutnya apa ya pak?? di bagian template selain men drag field, label apa yang perlu diubah sebelum di compile di ireport untuk menjadikan “.jrxml” pak parameter itu bagaimana fungsinya?

  66. kalau menampilkan dalam bentuk grafik gimana PAK . . . . .??

    Arigatou Gozaimasu . . . .

  67. Ih Da Ih Dud says:

    mas, mau tanya,. ini saya pakai ireport 4.5.0
    tp error waktu nampilin di netbeans nya seperti ini :

    Found Report File at : E:\Laporan KP-Ihdud\PerpustakaanKu\build\report\lapanggota1.jrxml
    Found Report File at : E:\Laporan KP-Ihdud\PerpustakaanKu\dist\report\lapanggota1.jrxml
    Jan 18, 2012 6:26:33 AM org.apache.commons.digester.Digester error
    SEVERE: Parse Error at line 3 column 412: Attribute “xmlns” must be declared for element type “jasperReport”.
    org.xml.sax.SAXParseException: Attribute “xmlns” must be declared for element type “jasperReport”.
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.addDTDDefaultAttrsAndValidate(XMLDTDValidator.java:1275)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(XMLDTDValidator.java:1940)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:764)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1357)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$ContentDriver.scanRootElementHook(XMLDocumentScannerImpl.java:1289)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3084)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
    at org.apache.commons.digester.Digester.parse(Digester.java:1647)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:239)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:226)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:214)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:168)
    at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:152)
    at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:151)
    at perpustakaanku.PerpustakaanKuView.MenuLapInventActionPerformed(PerpustakaanKuView.java:788)
    at perpustakaanku.PerpustakaanKuView.access$2600(PerpustakaanKuView.java:46)
    at perpustakaanku.PerpustakaanKuView$22.actionPerformed(PerpustakaanKuView.java:554)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
    at com.birosoft.liquid.LiquidMenuItemUI.doClick(LiquidMenuItemUI.java:492)
    at com.birosoft.liquid.LiquidMenuItemUI$MouseInputHandler.mouseReleased(LiquidMenuItemUI.java:1161)
    at java.awt.Component.processMouseEvent(Component.java:6038)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3260)
    at java.awt.Component.processEvent(Component.java:5803)
    at java.awt.Container.processEvent(Container.java:2058)
    at java.awt.Component.dispatchEventImpl(Component.java:4410)
    at java.awt.Container.dispatchEventImpl(Container.java:2116)
    at java.awt.Component.dispatchEvent(Component.java:4240)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
    at java.awt.Container.dispatchEventImpl(Container.java:2102)
    at java.awt.Window.dispatchEventImpl(Window.java:2429)
    at java.awt.Component.dispatchEvent(Component.java:4240)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
    Report Can’t view because : net.sf.jasperreports.engine.JRException: org.xml.sax.SAXParseException: Attribute “xmlns” must be declared for element type “jasperReport”.
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

  68. Malano says:

    Minta tolong mas…setiap kali report saya jalankan selalu keluar null pointer exception…kira2 salahnya apa ya mas…ini codingnya mas

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
    try {
    //Lokasi File Jasper//
    String nmFile=”G:/reportbarang2.jasper”;
    String driver=”com.mysql.jdbc.Driver”;
    String konek=”jdbc:mysql://localhost/dbbarang”;
    String user=”root”;
    String password=””;

    HashMap parameter=new HashMap();
    Class.forName(driver);
    Connection conn=DriverManager.getConnection(konek,user,password);

    File reportFile=new File(nmFile);
    JasperReport jReport= (JasperReport)JRLoader.loadObject(reportFile.getPath());
    JasperPrint jPrint=JasperFillManager.fillReport(jReport, parameter,conn);
    JasperViewer.viewReport(jPrint,true);
    JasperViewer.setDefaultLookAndFeelDecorated(true);
    }
    catch (Exception e) {
    JOptionPane.showMessageDialog(null, “Laporan Tidak Dapat Dicetak!\n” + e.getMessage(),”Cetak Laporan”, JOptionPane.ERROR_MESSAGE);
    }

    }

    terima kasih sebelumnya atas bantun mas….

  69. Malano says:

    Assalamualaikum Mas…
    mo tanya mas….setiap kali saya panggil report selalu keluar NULL POINTER EXCEPTION…kira-kira masalahnya apa ya mas…
    thanks.

  70. andin says:

    Assalamu’alaikum pak… pak kalau untuk membuat halaman laporan yang tidak terputus bagaimana kalau menggunakan jasperReport? makasiiihhh pak…

  71. Hendro Steven says:

    maksudnya tidak terputus apa ya??? halaman yang panjang atau? kalau halaman yang panjang tinggal seting panjang kertasnya aja

  72. Hendro Steven says:

    panggil dari mana nih? dari aplikasi? bisa macam2 alasannya.. bisa karena file reportnya gak ketemu, bisa karena ada parameter di report yang gak ketemu, bisa karena data gak ketemu..

  73. Hendro Steven says:

    baris ke berapa null pointernya??

  74. eko says:

    mau tanya nih buat hak Akses gmna …
    buat form login untuk user dan admin..
    user ga bisa ngubah admin dan user hanya mencatat transaksi
    nih buat aplikasi mas… tulung donk… makasih

  75. and says:

    Wahhhhh keren sobb thanks buat infonya

  76. malano says:

    Assalamualaikum..
    ini coding programnya mas…setiap kali saya jalankan selelu keluar pesan kesalahan null

    private void panggil1ActionPerformed(java.awt.event.ActionEvent evt) {
    try {
    String nmFile =”G:/report_barang.jasper”;
    String driver=”com.mysql.jdbc.Driver”;
    String konek=”jdbc:mysql://localhost:3306/dbbarang”;

    String user=”root”;
    String password=””;

    Class.forName(driver);
    Connection conn=DriverManager.getConnection(konek,user,password);

    Map parameter=new HashMap();
    File reportFile=new File(nmFile);
    JasperReport jReport= (JasperReport)JRLoader.loadObject(reportFile.getPath());
    JasperPrint jPrint=JasperFillManager.fillReport(jReport, parameter,conn);
    JasperViewer.viewReport(jPrint,false);
    JasperViewer.setDefaultLookAndFeelDecorated(true);
    }
    catch (Exception e)
    {
    JOptionPane.showMessageDialog(null, “Laporan Tidak Dapat Dicetak!\n” + e.getMessage(),”Cetak Laporan”, JOptionPane.ERROR_MESSAGE);
    }

    }

  77. dee says:

    maaf mas mau tanya !! gman caranya menggunakan iReport 413 dengan netbean, kalo untuk membuat report dalam table yang ada sih bisa, tp misalkan dalam sistem penjualan kan mesti ada laporan total jumlah yang keluar dan laporan konsinyasi,sedangkan dalam table untuk membuat laporan penjualan harus berkaitan dengan atribut table yang lain dan ada total jumlah gmn caranya?

    mohon jwbnnya

  78. ya An says:

    bagaimana ya caranya mencari total harga dari jasper report?
    rumus untuk mencari total harga adalah jumlah transaksi * harga barang

    jumlah transaksi beli =4
    harga barang =Rp.20.000

    bagaimana prosesnya?

  79. asep says:

    mau ta tanya ni pa, ada pesan error seperti ini
    net.sf.jasperreports.engine.JRException: java.io.FileNotFoundException: D:\MATERI KULIAH\latPBO\REPORT\report1.jasper
    at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:97)
    at net.sf.jasperreports.engine.util.JRLoader.loadObjectFromFile(JRLoader.java:86)
    at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:77)
    at tugas4.F_Mahasiswa.btn_cetakActionPerformed(F_Mahasiswa.java:406)
    at tugas4.F_Mahasiswa.access$700(F_Mahasiswa.java:28)
    at tugas4.F_Mahasiswa$8.actionPerformed(F_Mahasiswa.java:223)

  80. Arif says:

    Mas saya dah download tp jasperserver sama heartbeat nya ko gada…
    mohon pencerahannya??

  81. Adnan Siadari says:

    Saya menginstal netbean 6.9.1 dan i report 3.7.5 secara terpisah..
    saat saya men-Run dari netbean nya, report nya bisa keluar,
    tp pada saat saya Run dari icon .jar project saya, Reportnya tidak muncul…
    mohon bantuanya donk…

  82. gie says:

    1. ada yang tau cara import file xsl ke jrxml ?
    2. gimana cara nambahin image di ireport, klik drag image dari pallete kok gak bisa ya?
    terimakasih

  83. Hendro Steven says:

    masak gak ada?

  84. Hendro Steven says:

    file report1.jaspernya gak ketemu

  85. Hendro Steven says:

    buat variabel yang formulanya jumlah_transaksi*harga_barang

  86. Hendro Steven says:

    pelajari bagaiman membuat variabel dalam ireport

  87. didi says:

    Mas hendro, biar bisa ngeprint kaya di kasir tanpa muncul report viewer gmn ya?
    mohon pencerahan

  88. niyapanda11 says:

    Maz, dari permasalahan “malano says:”. Gimmana terus ngatasinnya??? Reportku juga gitu.

  89. Hendro Steven says:

    Errornya dibaris berapa? null pointer itu bisa macam2 penyebabnya…

  90. MR. Bobby says:

    mas…ireport terbaru gimana mas…cara membuat total dari total penjualan yang saya lingkari itu..
    http://www.4shared.com/photo/nVsY3phm/tolong_pak.html

  91. Zulkifli Rahman says:

    terima kasih infonya.

  92. rikckie says:

    Jan 2, 2002 3:15:13 PM org.apache.commons.digester.Digester error
    SEVERE: Parse Error at line 2 column 417: Document root element “jasperReport”, must match DOCTYPE root “null”.
    org.xml.sax.SAXParseException: Document root element “jasperReport”, must match DOCTYPE root “null”.
    at .
    mas kalo error gini gimana cara ngatasinya,padahal udh di periksa ireportnya dan udh di compile tapi masih aja error seperti itu
    mohon bantuannya mas

  93. Walid Umar says:

    assalamualaikum,
    permisi…sebelumnya, saya mengalami kesulitan menerapkan teknik sesuai dengan langkah diatas,
    saya sudah mengikuti semua langkah diatas, sampai dengan proses pembuatan report smpai dengan selesai,..akan tetapi hasil akhirnya tidak sama dengan yg dipaparkan diatas…,

    Menu Designer & Preview tidak tersedia…

  94. felisitas says:

    habis di run trus keluar reportnya kok kalo pas di save ke xls dia error ya?? gimana cara ngatasinnya?

  95. Hendro Steven says:

    Errornya apa? biasanya sih cuman masalah libarary POI yang gak ada

  96. Hendro Steven says:

    coba install lagi pluginnya atau pakai ireport yang terbaru

  97. Hendro Steven says:

    sepertinya ada yang salah dengan output xmlnya.. coba dicek lagi mungkin ada element yang posisinya keluar dari bandnya.. atau coba download ireport terbaru

  98. Hendro Steven says:

    pelajari bagaiman menggunakan variable diireport..

  99. Walid Umar says:

    bgmana jika menggunakan sistem operasi berbasis Linux.

  100. felisitas says:

    udah bisa kok 🙂 terimakasih infonya 🙂

  101. Pingback: PEMBUATAN LAPORAN dengan IREPORT | Teknik Informatika | Welcome To The New World, Ahmad D.Fikri

  102. Tariq Alfath says:

    pak kok saya gabisa drag n drop dari palletenya ya ? contoh static text udah saya drag and drop tapi di templatenya gaada labelnya itu kenapa ya ? termkasih

Leave a comment