Selasa, 09 Desember 2014

PRAKTIKUM BAB X -> PEMBUATAN LAPORAN DENGAN IREPORT

1. Dasar Teori

        Materi kali ini akan membubuhkan tutorial untuk pembuatan laporan menggunakan ireport 3.5.1. JasperReport  sendiri adalah software(library) open source untuk reporting. Sedangakn iReport merupakan Visual Designer untuk membuat laporan yang komplek, menggunakan jasperReport Libarary. Lakukan Installasi iReport dan jasperReport ke dalam Netbeans, siapkan  ireport 3.5.1 dan jasperReport 5.1. Disamping library jasperReport kita juga membutuhkan libarary pendukung dari jasperReport yaitu:   
     1. commons-beanutils-1.7.jar
     2. commons-collections-2.1.jar
     3. commons-digester-1.7.jar
     4. commons-logging-1.0.jar
     5. Jasperreport-3.5.1.jar
     6. jasper-compiler-jdt.jar

Setelah semua library sudah kita dapatkan maka proses installasinya adalah sebagai berikut:
Buka editor netbeans -> tools -> Plugins


Pilih Downloaded -> Add Plugin





Untuk memeriksa apakah iReport sudah terinstall pada netbeans kita dapat periksa dengan :
Membuat New File



cari menu Report -> Report Wizard -> Next



Langkah selanjutnya adalah menambahkan library jasperReport dan library pendukung lainnya
dengan cara :

1. Buatlah folder baru, kemudian berilah nama, misal : lib
2. Kemudian letakkan semua library yang dibutuhkan kedalam folder lib 



3. Langkah selanjutnya adalah menambahkan libarary project kita, Libraries -> klik kanan -> Properties

4. Tambahkan semua library yang kita simpan didalam folder lib ke dalam library project.



2. Hasil Praktikum
Periksa plugin ireport 3.5.1. di netbeans apakah sudah terinstall. Setelah itu,kita akan membuat report menggunakan Report Wizard.

Tahap Pertama silahkan pilih new -> report wizard. Sebagai berikut




Kemudian berikan nama file dan pilih dimana tempat file tersebut kita simpan.
 Pada tahap ini kita akan mulai mengkoneksikan ireport dengan dbms PostgreeSQL. Klik tombol view kemudian pilih ”Database JDBC Conection”.



Setting koneksi nama database,username dan password dari IReport ke PostgreSQL,dan setelah itu, cobalah untuk mengetes koneksi seperti gambar dibawah ini:


Setelah koneksi berhasil, jalankan Query dibawah ini untuk mencetak Field yang ingin digunakan dalam mahasiswa,setelah itu klik tombol Next :



Setelah itu muncul semua Field yang mau kita cetak,klik tombol ”>>” untuk memindahkan Field yang mau kita cetak ke area kanan.


Field yang mau kita cetak, Setelah itu klik tombol Next :


Pada tahap ini kita pilih Field mana yang kita buat Group kemudian Klik tombol Next untuk mengikuti tahap selanjutnya.



Pilih jenis report ”Tabular Layout ”untuk membuat report seperti Tabel,lalu klik tombol Next :



Lalu ketika di next akan muncul


Hasil Report secara kasarnya adalah seperti dibawah ini, rubah title menjadi seperti dibawah ini :


Klik View untuk melihat hasilnyadan mengecek apakah ada kesalahan dalam pembuatan report : 


          Kemudian memanggil file ireport yang berextensi .jrxml agar dapat dieksekusi dari program dan menampilkannya ke dalam sebuah window, sehingga kita dapat melihat hasil dari laporan yang telah kita buat dengan ireport. Caranya seperti yang telah dijelaskan pada dasar teori diatas.
          Setelah selesai maka bisa dilanjutkan membuat kelas java untuk memanggil file yang telah dibuat. Untuk mempermudah gambaran kode programnya disini terdapat contoh listing dimana file ireport dipanggil berdasarkan tombol “print”sebagai berikut:


Dan isikan code berikut pada tombol print:



Tampilan yang telah ditambah tombol Print:

Klik Print, kemudian akan muncul sebagai berikut :


Kemudian,  modifikasi laporan diatas sehingga laporan yang akan di print berdasarkan NIM mahasiswa yang berasal dari textfield. Pertama-tama kita tambah parameternya dan rename parameter menjadi nim, seperti gambar berikut:

Kemudian pada designer pilih report query yang terletak disebelah preview dan ketikan
select * from mahasiswa where nim_mah=$P{NIM}

  
Lalu jalankan aplikasi, kemudian pilih print, dan akan muncul:



3. Kesimpulan dan Saran
Kesimpulan:
     Pada praktikum kali ini, diperbolehkan untuk menggunakan postgreSQL sehingga lebih mudah dalam membuat laporan. Dengan penggunaan iReport dapat membantu kita dalam menampilkan dan mencetak sesuai dengan kebutuhan.

Saran dan Manfaat bagi Pembaca:
     Praktikum sepuluh ini adalah yang terakhir pada matakuliah Praktikum Desain Basis Data. Semoga dapat membawa manfaat bagi saya dan semua orang yang membaca. Khususnya untuk Pak Aziz selaku dosen, saya ucapkan banyak terimakasih atas bimbingannya selama satu semester ini, dan untuk asisten dosen Mas Landhi juga saya ucapakan terimakasih dan mohon maaf apabila ada kelakuan saya yang kurang menyenangkan. Terimakasiiih :) 



Daftar Pustaka

- Modul Praktikum Desain Basis Data 
- Sanjaya, Ridwan. 2005. Pengolahan Database MySQL dengan Java 2. Yogyakarta: Andi
- Nugroho, Bunafit. 2005. Administrasi Database MySQL. Yogyakarta:Graha Ilmu
-  http://bebyviya.blogspot.com/2013/07/membuat-report-di-java-netbeans.html
- http://www.atwiwit.net/2013/07/cara-membuat-laporan-ireport-dengan.html
- http://www.priawadi.com/2012/01/membuat-laporan-dengan-ireport-java.html


Senin, 01 Desember 2014

Praktikum BAB IX -> KONEKSI POSTGRESQL PADA JAVA (Netbeans)



1.           Dasar Teori


1.1. Langkah-langkah Koneksi database
Terdapat beberapa langkah yang secara umum harus dilakukan sehingga aplikasi
yang berbasis Java dapat berinteraksi dengan database server. Langkah-langkah tersebut sebagai berikut :
1. Impor package java.sql
2. Memanggil Driver JDBC
3. Membangun Koneksi
4. Membuat Statement
5. Melakukan Query
6. Menutup Koneksi

1.1.1.      Impor package java.sql
Setelah selesai memasang file konektor nya maka kita dapat mengoneksikan database ke netbeans tetapi kita harus membuat kelas koneksi nya terlebih dahulu, karena di dalam package java.sql tersebut terdapat kelas-kelas yang akan digunakan dalam proses-proses berintekasi dengan database server misalnya kelas DriverMaganer, Connection, dan ResultSet.

1.1.2.      Impor package java.sql
Pertama-tama yang harus dilakukan sebelum Anda membuat program JDBC adalah mengimpor package java.sql terbih dahulu, karena di dalam package java.sql tersebut terdapat kelas-kelas yang akan digunakan dalam proses-proses berintekasi dengan database server misalnya kelas DriverMaganer, Connection, dan ResultSet.
Hal ini sangat penting dilakukan karena bagi pemula seringkali lupa untuk mengimpor package yang kelas-kelas yang akan digunakan terdapat di dalamnya, sehingga mengakibatkan kegagalan dalam mengkompile program Java.
Adapun listing untuk mengimpor package java.sql adalah sebagai berikut: Import java.sql.*;
Listing ini dituliskan sebelum Anda menulis kelas.

1.1.3.      Memanggil Driver JDBC
Langkah pertama untuk melakukan koneksi dengan database server adalah dengan memanggil JDBC Driver dari database server yang kita gunakan. Driver adalah library yang digunakan untuk berkomunikasi dengan database server. Driver dari setiap database server berbeda-beda, sehingga Anda harus menyesuaikan Driver JDBC sesuai dengan database server yang Anda gunakan.
Berikut ini adalah listing program untuk memanggil driver JDBC.
Class.forName(namaDriver); atau Class.forName(namaDriver).newInstance();
Kedua cara di atas memiliki fungsi yang sama yaitu melakukan registrasi class driver dan melakukan intansiasi. Apabila driver yang dimaksud tidak ditemukan, maka program akan menghasilkan exception berupa ClassNotFoundException. Untuk menghasilkan exception apabila driver tidak ditemukan, maka diperlukan penambahan try-catch. Adapun cara menambahkan try-catch untuk penanganan error apabila driver tidak ditemukan, sebagai berikut:
Try {
Class.forName(namaDriver);
} catch (ClassNotFoundException e) {
... Penanganan Error ClassNotFoundException
}
Contoh listing memanggil driver menggunakan PosqgreSQL adalah :
try {
Class.forName(“org.postgresql.Driver”);
} catch (ClassNotFoundException e) {
System.out.println(“Pesan Error : “ + e)
}

1.1.4.      Membangun Koneksi
Setelah melakukan pemanggilan terhadap driver JDBC, langkah selanjutnya adalah membangun koneksi dengan menggunakan interface Connection. Object Connection yang dibuat untuk membangun koneksi dengan database server tidak dengan cara membuat object baru dari interface Connection melainkan dari class DriverManager dengan menggunakan methode getConnection().
Connection koneksi = DriverManager.getConnection(<argumen>);
Untuk menangani error yang mungkin terjadi pada proses melakukan koneksi dengan database maka ditambahkan try-catch. Exception yang akan dihasilkan pada proses ini adalah berupa SQLException. Adapun cara penulisan listingnya adalah sebagai berikut :
try {
... koneksi database
} catch (SQLException sqle){
... penanganan error koneksi
}

1.1.5.      Membuat Statement
JDBC API menyediakan interface yang berfungsi untuk melakukan proses pengiriman statement SQL yang terdapat pada package java.sql. Statement yang ada secara umum digunakan terdiri dari berikut :

a.      Statement
Interface ini dibuat oleh methode Connection.createStatement(). Object Statement digunakan untuk pengiriman statement SQL tanpa parameter serta Setiap SQL statement yang dieksekusi dikirim secara utuh ke database.
Statement stat = Connection.createStatement();
b.      PreparedStatement
Interface ini dibuat oleh methode Connection.prepareStatement(). Object PreparedStatement digunakan untuk pengiriman statement SQL dengan atau tanpa parameter. Interface ini memiliki performa lebih baik dibandingkan dengan interface Statement karena dapat menjalankan beberapa proses dalam sekali pengiriman perintah SQL, pengiriman selanjutnya hanya parametered querynta saja.
PreparedStatement stat = Connection.prepareStatement();

1.1.6.      Melakukan Query
Setelah kita memiliki object statement, kita dapat menggunakannya untuk melakukan pengiriman perintah SQL dan mengeksekusinya. Methode eksekusi yang digunakan untuk perintah SQL terbagi menjadi dua bagian yaitu untuk perintah SELECT methode eksekusi yang digunakan adalah executeQery() dengan nilai kembaliannya adalah ResultSet, dan untuk perintah INSERT, UPDATE, DELETE metode eksekusi yang digunakan adalah executeUpdate().
Berikut listing contoh codenya :

Apabila sudah membuat kelas koneksi maka kita dapat memanggil kelas koneksi ke kelas lain..
berikut listing codenya:

Simpan
Listing code dari Simpan




Update
Listing code dari update


Hapus
Listing code dari Hapus

Select (View)
Listing code dari Select


Pada void bersih ini digunakan untuk menghapus tulisan yang ada pada textfield jadi pada saat kita menyimpan, mengupdate, menghapus, menselect data yang di textfield akan terhapus.
Berikut tampilannya :

2. Hasil Praktikum
Pada praktikum kali ini, kita akan membuat dengan tampilan seperti berikut ini:

Untuk mengoneksikan PostgreSQL ke NetBeans, berikut langkah-langkahnya:
1. buatlah project baru pada netbeans
2. pada project tersebut, klik kanan – properties
3. pilih Libraries pada list Properties
4. add Library
5. pilih Java DB Driver
6. add Library
7. add JAR/Folder
8. browse file konektor PostgreSQL
9. ambil file konektor, semisal : postgresql-9.0-801.jdbc4.jar
10. kemudian open
11. Klik OK

Setelah selesai memasang file konektor nya maka kita dapat mengoneksikan database ke netbeans tetapi kita harus membuat kelas koneksi nya terlebih dahulu. Berikut listing codenya :




Kemudian, kita mulai mengisi tombol-tombol dengan listing code berikut ini:
1. Listing Code Simpan
2. Listing Code Edit

3. Listing Code Hapus

4. Listing Code Tampil

5. Listing Code Cari

6. Listing Code Reset

Nah, setelah mengisi tombol-tombol dengan code, mari kita coba untuk menjalankannya:
1. Tombol Simpan
    Pada tombol ini, kita dapat menmasukkan data baru yang akan tersimpan pada postgreSQL

Kemudian akan muncul tampilan berikut jika berhasil tersimpan
                 
  Jangan lupa untuk mengecek pada psql apakah data telah masuk 


2.Tombol Cari
Pada tombol ini, kita dapat mencari data mahasiswa yang dibutuhkan dengan memasukkan NIM-nya

Setelah diklik cari, maka akan muncul

3. Tombol Edit
Pada tombol edit, kita dapat merubah isi data sebelumnya. Pada percobaan ini, saya melakukan perubahan pada bagian alamat,.

lalu akan muncul message berhasil tersimpan

dan, cek juga perubahannya pada PSQL

4. Tombol Hapus
Berikut tampilan untuk menghapus data


Pilih data yang akan dihapus, lalu tekan hapus, dan akan muncul message berikut
Lalu, cek pada psql apakah data telah terhapus,


5. Tombol Tampil
Pada tombol ini, digunakan untuk menampilkan semua data pada tabel mahasiswa

6. Tombol Reset
Tombol ini untuk mereset tampilan dari yang sebelumnya, sehingga kembali ke awal

        Kemudian, Buatlah seperti diatas. Dengan aturan terdapat kelas koneksi sendiri sehingga tidak menulis ulang pemanggilan driver jdbc, url, dan koneksi nya pada saat insert,update, delete dan tampil data. Nah, Berikut listing codenya
Dan ini hasilnya saat dijalankan



4. Kesimpulan dan Saran
       Pada praktikum kali ini, tidak seperti biasanya yang hanya berkutat pada mysql dan psql serta perbandingannya. Kali ini, kita belajar sesuatu yang baru mengenai koneksi psql pada Java Netbeans. Serta membuat aplikasi yang memudahkan kita untuk mengolah data, dengan tampilan yang lebih menarik dan mudah digunakan untuk semua kalangan. Selamat mencoba :)

Daftar Pustaka
- Modul Praktikum Desain Basis Data 
- Sanjaya, Ridwan. 2005. Pengolahan Database MySQL dengan Java 2. Yogyakarta: Andi
- Nugroho, Bunafit. 2005. Administrasi Database MySQL. Yogyakarta:Graha Ilmu
- https://gipculart.wordpress.com/2011/12/16/koneksi-postgresql-ke-javanetbeans/
- http://informatikanote.blogspot.com/2014/01/koneksi-postgresql-pada-java-netbeans.html