Pages

Rabu, 10 Desember 2014

Laporan Praktikum DBD X : Membuat iReport


Report adalah bentuk akhir dari program yang kita buat, dimana disana ditampilkan data2 yang sudah kita entrykan. Dalam pembuatan iReport kita akan memerlukan plugin tambahan seperti :
  • jasperreports-components-plugin
  • jasperserver-plugin
  • iReport
Kalian dapat mengunduhnya disini untuk mendapatkan plugin-nya.


iReport sendiri merupakan sowtware open source (jadi kita tidak perlu membeli lisensinya) yang digunakan untuk mebuat laporan yang disertai dengan fasilitas visual designer untuk membuat laporn yang komplek menggunakan JasperReports library tanpa harus memahami penggunaan XML.
Untuk membuat iReport pastikan kita telah menginstal plugin yang diperlukan dan pastikan database yang akan digunakan telah koneksi. Jika NetBeans kita belum terpasang plugin tambahan maka kita perlu mengistalnya terlebih dahulu. Ikut langkah berikut ini :

Buka NetBeans lalu pilih menu Tools > Plugins > Downloaded. Setelah itu klik Add Plugins… dan kita cari tempat dimana kita menyimpan plugin tambahan tersebut yang berekstensi .nbm yang sudah kita simpan sebelumnya.

Jika  sudah tinggal klik Install kemudian next
Selanjutnya kita tambahkan juga library dengan cara Klik kanan Libraries  > Add Libraries  > Tambahkan file library.
Jika sudah ter dapat pada versi 7.3 namun jika belum ada bisa memilih Add Folder/Jar > cari tempat kita menyimpan library tambahannya.
Jika sudah terinstall maka akan muncul seperti gambar.

Membuat Laporan Menggunakan iReport di Java
Selanjutnya untuk pembuatan iReport kita akan membuat file baru yang diletakkan dalam satu package dengan class sebelumnya. Untuk membuatnya pilih new file > Report > lalu Report Wizard. Jangan lupa pastikan kita membuat file Report dalam satu project.
Kemudian pilih next, maka akan tampil seperti berikut :
Klik saja next jika tidak ingin mengganti nama filenya.
Selanjutnya pada tahap fields klik new > Database JDBC Connection.
Setelah itu pilih next dan akan muncul tampilan sebagai berikut :
Untuk pengaturannya ikuti sesuai gambar 8. Jika dimintai password sedangkan kita tidak mengisi password, silahkan klik saja ok. Maka akan sukses seperti gambar berikut :
Lalu klik save untuk menyimpak pengaturan tadi.
3. Untuk tahap ini kita harus menuliskan query sesuai dengan apa yang ingin kita inputkan.
SELECT * FROM mahasiswa, fakultas where mahasiswa.id_fak = fakultas.id_fak;
Lalu klik next dan pilih kolom yang akan ditampilkan dengan menekan icon [>].
Kosongi Group by. Lalu klik next
Pada tahap ini pilih jenis layout yang diinginkan, disini saya menggunakan Tabular Layout.
Lalu klik next untuk mengahiri desain visual dan koneksi iReport. Dan terakhir klik finish.
Jika telah berhasil maka akan muncul seperti pada gambar berikut ini :


Selanjutnya ganti judul di Classic template menjadi Data Mahasiswa
Sebelum ketahap selanjutnya tekan Preview untuk mengecek apakah terjadi kesalahan
Lalu buat tombol baru di project sebelumnya. Tombol Print, tombol ini berfungsi untuk mencetak hasil input kita.

Tambahkan beberapa import dan kode berikut :

setelah itu masukkan daftar kode berikut ini pada tombol Print untuk membeberika event ketika tombol print di klik.


Untuk mengecek apakah tombol Print berhasil, kita run Project kita dan klim tombol Print.

Maka akan keluar data yang akan kita cetak yang berada pada database kita :
Untuk membuat perintah hanya mencetak data berdasarkan data yang ada, misalnya berdasarkan nim. Pertama kita buat dulu layout-nya seperti berikut :
Dan ketik kode seperti berikut :
import java.awt.Color;
import java.io.File;
import java.sql.*;
import java.util.*;
import javax.swing.*;
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.view.JasperViewer;

public Connection conn;
    JasperReport JasRep;
    JasperPrint JasPri;
    Map nim = new HashMap();
    JasperDesign JasDes;

public class nama_class extends javax.swing.JFrame {

    void Koneksi() {
        try {
            String connectionURL = "jdbc:mysql://localhost/nama_database";
            String username = "root";
            String password = "";
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection(connectionURL, username, password);
            JOptionPane.showMessageDialog(null, "Connection Succes");
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, "Connection Failed" + ex);
            System.exit(1);
        }
    }
   
    public cetak() {
        initComponents();
        Koneksi();
        getContentPane().setBackground(Color.pilih_warna_background);
        setResizable(false);
              this.setLocationRelativeTo(null);
    }

Kemudian pada tombol Print di layout, klik dua kali untuk masuk ke method Print dan masukkan kode berikut :
try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/nama_database", "root", "");
            File report = new File("lokasi_file_jrxml");
            JasDes = JRXmlLoader.load(report);
            int Nim = Integer.parseInt(txNim.getText());
            nim.put("nim_mah", Nim);
            JasRep = JasperCompileManager.compileReport(JasDes);
            JasPri = JasperFillManager.fillReport(JasRep, nim, conn);
            JasperViewer.viewReport(JasPri, false);
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, ex.getMessage());
        }

Dan buat parameter seperti berikut :
Rubahlah nama parameter menjadi nim  :
Dan ganti tipe menjadi Integer :
Selanjutnya ganti query pada database menjadi :
SELECT * FROM Mahasiswa2, Fakultas WHERE nim_mah = $P(nim);

Namun jika kita masih membutuhkan query sebelumnya cukup kita simpan saja dengan cara :
Lalu masukkan data pada textfield dan klik tombol Print, maka data akan di cetak sesuai nim yang dimasukkan : On Going. . .

Sama seperti pada bab sebelumnya jangan lupa untuk mengaktifkan database kasian agar tidak terjadi kesalahan saat menjalankan program kalian, terutama pada MySQL untuk mengaktifkan Xammp terlebih dahulu. Tidak ada perbedaan yang mencolok untuk DBMS-nya, hanya terdapat pada Driver yang harus digunakan disesuaikan dengan DBMS-nya sedangkan pada ource code-nya tidak jauh berbeda.


Sumber :
http://khoiril007.files.wordpress.com/2011/01/modul5.pdf
http://bisakomputer.com/membuat-laporan-dengan-mudah-menggunakan-ireport/
http://www.priawadi.com/2012/01/membuat-laporan-dengan-ireport-java.html
https://gipculart.wordpress.com/2011/12/27/tutorial-membuat-laporan-dengan-ireport/
https://hendrosteven.wordpress.com/2008/09/09/membuat-report-menggunakan-ireport-dari-netbeans/

Tidak ada komentar:

Posting Komentar