MODUL PEMROGRAMAN DESKTOP

28
MODUL PEMROGRAMAN DESKTOP KELAS XI RPL SMK SYAFI’I AKROM

Transcript of MODUL PEMROGRAMAN DESKTOP

A. Class dan Objek ............................................................................................................3
A. Sistem Koordinat dan Objek Grafis ............................................................................. 10
B. Objek 2 Dimensi ......................................................................................................... 11
C. Gambar pada Window................................................................................................. 13
KD 8 PEMROGRAMAN BASISDATA DESKTOP ................................................................. 16
A. Penambahan Data pada Tabel ...................................................................................... 16
B. Pencarian dan Penampilan Data .................................................................................. 22
C. Penghapusan Data ....................................................................................................... 22
D. View Data ................................................................................................................... 22
A. Class dan Objek
1. Objek
Objek merupakan hasil dari sebuah kelas, jika diibaratkan Objek adalah kue, maka kelas
adalah cetakan kuenya, dimana kue dibuat menggunakan cetakan tersebut dan sebuah
cetakan pastinya dapat membuat beberapa kue, yang artinya sebuah kelas dapat membuat
beberapa objek.
Untuk membuat objek dalam java diperlukan sebuah perintah new, dimana cara
pembuatannya sama dengan variable.
Kelasobjek = new Kelas();
Jika dalam kelas yang dibuat objek tersebut terdapat attribute, maka dapat dipanggil
menggunakan titik. Jika didalam objek terdapat fungsi (method), maka dapat dipanggil
menggunakan .(titik) dan diakhiri dengan ().
//mengubah attribute
objek.namaAtribute = value;
//memanggil fungsi
objek.namaFungsi();
2. Class Class di dalam java dideklarasikan menggunakan keyword class diikuti dengan nama
class. Setelah nama class ada kurung kurawal buka ({) menandai awal dari class dan kurung
kurawal tutup (}) yang menandai akhir dari class.
Object adalah instansiasi dari class. Class adalah sebuah cetakan dan object adalah materi
hasil cetakan dari class. Setiap object akan mempunyai state (instance variable / properties)
yang membedakan satu object dengan object lain, kemudian object juga mempunyai
behaviour (method) dimana logic dari class disimpan. Class adalah jantungnya Java, class
adalah bagian terkecil dari kode di java yang bisa berdiri sendiri. Setiap kali akan
membuat sebuah kode java, yang pertama harus dideklarasikan adalah class. Contoh :
4
Aturan yang digunakan dalam penamaan class antara lain:
- Hanya boleh ada satu class public dalam satu file .java, non public class boleh lebih
dari satu di dalam satu file .java.
- Nama class public harus sama dengan nama file .java.
- Komentar bisa diletakkan di mana saja.
- Jika class berada dalam sebuah package, maka harus ada deklarasi package di
bagian paling atas dari file .java
Import berada antara deklarasi package dan deklarasi class
- Deklarasi import dan package berlaku untuk semua class dalam file .java, tidak
mungkin mendefnisikan dua buah class yang mempunyai package berbeda di dalam
satu file .java
Contoh kelas sederhana:
}
Pada kode diatas, kelas yang telah dibuat adalah kelas Manusia dengan atribut yang
dimiliki adalah nama. Untuk pembuatan objek dari kelas Manusia adalah sbb:
//membuat objek
dapat mempunyai entitas / obyek turunan. Dengan konsep inheritance, sebuah class dapat
mempunyai class turunan. Suatu class yang mempunyai class turunan dinamakan parent class
atau base class. Sedangkan class turunan itu sendiri seringkali disebut subclass atau child class.
Karena suatu subclass dapat mewarisi apa yang dipunyai oleh parent class-nya, maka member
dari suatu subclass terdiri dari apa yang ia punyai dan juga yang ia warisi dari class parent-nya.
Boleh dikatakan bahwa suatu subclass tidak lain hanya memperluas (extend) parent class-nya.
5
Deklarasi inheritance di dalam Java untuk mendeklarasikan suatu class sebagai subclass
cukup mudah, yaitu dengan menambahkan kata kunci extends setelah deklarasi nama class,
kemudian diikuti dengan nama parent class-nya. Kata kunci extends tersebut memberitahu
kompiler Java bahwa kita ingin melakukan perluasan class. Berikut adalah contoh deklarasi
inheritance :
Maka public class B extends A { … }
Semua class di dalam Java adalah subclass dari class super induk yang bernama Object.
Misalnya saja kita mempunyai sebuah class sederhana :
public class A{ …. }
Pada saat dikompilasi, Kompiler Java akan membacanya sebagai subclass dari class Object.
public class A extends Object{ …. }
Contoh dari program inheritance :
Gambar 6.2. Turunan Dari desktopExtends
Induk dari
class JFrame
Turunan dari
Ada beberapa hal yang harus diingat ketika menggunakan pemanggil constuktor super:
1. Pemanggil super() HARUS DIJADIKAN PERNYATAAN PERTAMA DALAM
constructor.
2. Pemanggil super() hanya dapat digunakan dalam definisi constructor.
3. Termasuk constructor this() dan pemanggil super() TIDAK BOLEH TERJADI DALAM
constructor YANG SAMA.
C. Membuat Event Event adalah peristiwa yang di-Stimulasi / di-trigger oleh user terhadap komponen-
komponen GUI. Jika mengklik suatu objek dari Jbutton, mengetikan teks pada objek JtextField,
atau menentukan suatu pilihan dari objek JcomboBox, maka event akan tercipta. Event ini
kemudian akan ditangkap oleh event listener, karena setiap komponen mempunyai ID
(indentitas) seperti button1, button2, textField1 dan sebagainya. Masing - masing apabila
ditambahkan event listener, maka Java akan dapat mengenali komponen mana yang
menstimulasi event. Umumnya event mengirimkan dua parameter, yaitu object yang
mengindikasikan sender / pengirim event, dan object yang menyediakan informasi pada event
tersebut.
Event handler yaitu blok yang akan memproses bila terjadi suatu event. Event handler dapat
dianalogikan seperti halnya fungsi pada tombol - tombol operasi (*, /, +, -, =) pada kalkulator.
Apabila ingin mengalikan dua bilangan, maka tombol “*” ditekan, dan apabila akan
menjumlahkan bilangan, maka tombol “+” yang dipilih dan sebagainya. Setiap tombol memiliki
fungsi yang berbeda dan sebagai konsekuensinya, hasil pemprosesan juga akan berbeda.
Event listener dan Event handler ini terdapat pada package java.awt.event, dan memiliki
bentuk sebagai interface, bukan kelas, sehingga cara penggunaannya berbeda dengan kelas.
Contoh :
Isi
7
Deskripsi Mendeteksi aksi apa yang dilakukan oleh user terhadap komponen,
contohnya ketika user mengeklik suatu button.
Nama Interface
Method
berkedip - kedip pada suatu objek.
Nama Interface
Tipe event
Mendeteksi event yang terjadi saat user memilih suatu pilihan pada
objek JCheckBox atau JBComboBox
Deskripsi Mendeteksi event saat user mengetikan keyboard.
Nama Interface MouseListener
Digunakan pada Semua komponen swing
Deskripsi Mendeteksi event yang ditrigger pada saat user mengeklik mouse, atau
ketika mouse memasuki dan meninggalkan daerah komponen.
Nama Interface MouseMotionListener
Method addMoutionListener()
Deskripsi Mendeteksi event ketika user menggerakan mouse, khususnya pada
saat melalui komponen.
ActionEvent ActionListener actionPerformed(ActionEvent e)
AdjustmentEvent AdjustmentListener adjustmentValueChanged(AdjustmentEvent)
D. Menambahkan Fungsi Fungsi adalah sebuah prosedur yang mempunyai sebuah tujuan utama, yaitu mengolah data
dan menampilkannya sesuai dengan hasil olahan tersebut. Contoh fungsi dari event :
User Action Source Object Tipe Event
Mengeklik suatu button JButton ActionEvent
Mengubah Text JTextComponen TextEvent
suatu komponen text field
Memilih satu atau banyak JList ListSelectionEvent
item
9
diberi icon, atau icon
disembunyikan
focus atau kehilangan focus
MouseDitekan, dilepaskan, Component MouseEvent
diklik atau ketika mouse
memasuki atau keluar dari
Tugas
Buatlah sebuah program yang di dalamnya terdapat sebuah event dan fungsi yang merupakan
suatu turunan / inheritas (disertai bagan) dan tentunya mengandung objek serta class, tema
bebas! Disimpan dengan nama masing – masing dan dikumpulkan sebelum mid semester genap
kelas XI!
KD 7 PEMBUATAN VISUALISASI
Visualisasi data adalah seni dan sains. Visualisasi data mengacu pada teknik yang digunakan
untuk mengkomunikasi data atau informasi dengan membuatnya sebagai objek visual misalnya,
titik, garis, atau batang dalam grafik. Menurut Friedman (2008), tujuan utama dari visualisasi
data adalah untuk mengkomunikasikan informasi secara jelas dan efektif dengan cara grafis.
A. Sistem Koordinat dan Objek Grafis
Koordinat dapat diartikan sebagai tata keseimbangan yang membantu di dalam menentukan
suatu kondisi dengan nilai dan batas dalam konteks geometri.
Terdapat 3 macam sistem koordinat yang harus diperhatikan, yaitu :
1. Koordinat Nyata, yaitu koordinat yang pada saat itu objek berada
2. Koordinat Sistem, adalah suatu yang abstrak dan biasanya digunakan untuk perhitungan
data yang hasilnya perlu ditampilkan kembali pada layar atau di atas kertas.
3. Koordinat Tampilan atau Layar, yaitu koordinat yang dipakai untuk mengatur
penampilan suatu objek pada layar, baik itu layar komputer maupun layar lainnya.
Sistem koordinat sealau dikaitkan dengan dimensi, dimana :
0D,dimensike0
1D,dimensike1
2D,dimensike2
3D,dimensike3
4D,dimensike4
5D, dimensi ke 5, dan seterusnya
Sebuah titik secara umum sering disebut dimensi ke 0, garis dimensi ke 1, bidang dimensi ke
2, kubus dimensi ke 3, dan seterusnya. Untuk kebutuhan grafik umumnya menggunakan dimensi
ke 3. Untuk 2 dimensi dan 3 dimensi yang dibedakan dengan jumlah sumbu koordinat yang
dimiliki oleh masing - masing sistem.
Sistem 2 Dimensi memiliki 2 sumbu koordinat, yaitu sumbu x dan sumbu y,
sedangkan sistem koordinat 3 dimensi memiliki 3 buah sumbu koordinat, yaitu x, y, dan z.
Pada grafik java dasar, terdapat beberapa objek grafik yang nilai koordinat pada grafik itu
adalah bilangan bulat (integer).
B. Objek 2 Dimensi
Objek grafik 2 dimensi adalah sekumpulan titik – titik 2 dimensi yang dihubungkan dengan
garis lurus, baik berupa polyline, polygon, atau kurva. Objek grafik dimensi adalah gambar 2
dimensi yang sumbu x dan sumbu y, atau sumbu koordinat cartesius dua dimensi. Dua sumbu
yang saling bertegak lurus antar satu dengan yang lain, yang keduanya terletak dalam satu
bidang (bidang xy).
Model Grafik 2D merupakan kombinasi dari model geometri (disebut sebagai grafik vektor),
gambar digital (raster graphics), fungsi matematika, dan sebagainya. Komponen - komponen ini
dapat dimodifikasi dan dimanipulasi oleh transformasi geometri dua dimensi, seperti translasi,
rotasi, dan dilatasi.
Model - model yang digunakan pada disain grafis 2D biasanya tidak mendukung bentuk - bentuk
tiga-dimensi, atau fenomena yang bersifat tiga dimensi, seperti pencahayaan, bayangan,
pantulan, refraksi, dan sebagainya. Namun demikian, mereka dapat membuat model berlapis-
lapis (layer); nyata, translusen, dan transparan, yang dapat ditumpuk dalam urutan tertentu.
Urutan tersebut biasanya didefinisikan dengan angka (kedalaman lapisan, atau jarak dari si
penglihat).
package visualisasi;
import java.awt.*;
import javax.swing.*;
import java.util.Random;
@Override
super.paintComponents(g);
//membuat garis
JFrame frame = new JFrame("Pixel");
Buatlah tampilan bus (sederhana) menggunakan visualisasi grafik 2 dimensi. Catat scriptnya di
kertas folio, kumpulkan beserta flashdisk sebelum mid semester genap kelas XI!
13
C. Gambar pada Window
Dalam membuat sebuah aplikasi, alangkah lebih baiknya apabila ada gambar untuk
mempercantik tampilan halaman aplikasi yang dibuat. Hal itu ditambahkan agar para pemakai
aplikasi tidak jenuh dengan hal yang monoton angka dan huruf, agar calon pemakai aplikasi
:
Pertama – tama, siapkan gambar yang akan disisipkan, simpan di dalam folder projek dan
buat folder baru dengan nama img (…/src/img).
Gambar 7.3 Tampilan Setelah Menambahkan Folder Baru Berisi Gambar
Setelah itu buat projek baru dan JFrame Form baru. Kemudian drag jlabel, klik kanan properties.
Pilih icon, cari lokasi gambar yang akan disisipkan dan klik ok.
Gambar 7.4. Tampilan Setelah Disisipkan Gambar
Selesai. Sekarang merapikan tampilan gambar. Pertama hapus tulisan jlabel1, bukan klik delete
pada jlabel1 tapi klik kanan pada jlabel1 kemudian edit teks.
Selanjutnya merapikan gambar dengan menggunakan navigator (jika belum ada klik menu
window > navigator atau Ctrl+7). Klik navigator, kemudian pada JFrame klik kanan pilih set
14
layout > absolute layout (berfungsi sebagai align in front of text, behind teks, dll pada Microsoft
office word). Begitu seterusnya menambahkan gambar 2, 3, dst.
Output :
Tugas 7.2.
Buatlah tampilan seperti pada gambar diatas, rekam cara pembuatan dan beri keterangan di
setiap langkah – langkah pembuatannya!
D. Visualisasi dengan Navigasi
Masih berhubungan dengan mempercantik tampilan aplikasi yang akan dibuat. Pada
pertemuan sebelumnya menambahkan gambar, logo, dll, kali ini akan menambahkan icon.
Caranya hampir sama dengan menyisipkan gambar, namun penambahan icon disisipkan pada
icon. Misalnya menambahkan icon logout untuk tombol logout.
Pertama, simpan icon yang diinginkan lalu tambahkan di dalam folder (…/src/img). Lakukan
seperti pada penyimpanan gambar. Kemudian tambahkan jbutton klik kanan properties
tambahkan icon (cari icon yang telah disimpan) klik ok lalu close.
Gambar 7.6. Tombol Logout
Untuk mengatur ukuran icon agar besarnya proporsional (sesuai gambar icon tersebut), maka
hilangkan tulisan logout, klik kanan edit teks delete tulisan logout. Jika ukurannya masih saja
belum sesuai keinginan, maka lakukan resize manual di aplikasi editor gambar save dan input
gambar ulang, atau klik kanan properties, atur ukuran x, y, widht, dan hight sampai sesuai
keinginan. Kemudian untuk memberikan action logout (keluar dari halaman menu), maka
tambahkan script berikut pada source atau double klik pada tombol :
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { //login
15
menu d = new menu(); //untuk masuk pada halaman yang akan dituju setelah klik tombol //
// login
String user = jUser.getText();
String pass = jPass.getText();
dispose();
// kembali ke halaman login
Tugas 7.3.
Buatlah tampilan seperti pada gambar di bawah ini (kalender, tombol input, tombol logout,
tombol print, tombol delete, tombol tambah dan tombol profile / author), beri script untuk
masing – masing tombol. Rekam cara pembuatan dan beri keterangan setiap langkah – langkah
pembuatannya. Kumpulkan pada pertemuan pertama mapel pemrograman desktop setelah
prakerin!
16
KD 8 PEMROGRAMAN BASISDATA DESKTOP
Dalam bab ini kita akan membicarakan tentang akses database pada pemrograman
desktop. Basisdata dalam pemrograman desktop menggunakan JDBC (Java Database
Connectivity) sebagai konektornya dan MySQL sebagai database server. Cara penggunannya
mulai dari membuka koneksi sampai melakukan operasi baca, tulis, dan hapus data dari database.
Design sederhana bertujuan untuk memudahkan pemahaman. Pemahaman JDBC adalah mutlak
diperlukan bagi seorang programmer database. Karena jika programmer membuat aplikasi
database, misalnya visual basic / PHP dengan database SQL Server atau MySQL, dalam hal ini
JDBC mampu membuat aplikasi bisa berjalan di atas semua sistem database, hanya cukup
dengan memasang driver JDBC dari database tersebut.
JDBC adalah sebuah nama dari sebuah produk yang ada dalam Java, seperti
dokumentasi yang dikeluarkan oleh Sun Microsystem sendiri dalam situs resminya.
Lengkapnya adalah JDBC API yaitu Application Programming Interface, yang menyediakan
akses data secara universal dan independent. Bekerja dengan JDBC secara umum adalah sebagai
berikut:
Membuat koneksi ke database yang direpresentasikan sebagai objek java.sql.Connection.
Membuat objek java.sql.Statement yang akan digunakan untuk mengirimkan perintah SQL
ke database.
Menjalankan metode yang bersesuaian dari objek java.sql.Statement, seperti executeQuery()
untuk membaca atau executeUpdate() untuk menulis ke tabel.
Perlu ada beberapa tahapan agar bisa melakukan operasi ke dalam database, antara lain
pengenalan dirver, pembuatan koneksi / hubungan, statement / perintah SQL baru, kemudian
operasi baca dengan excecuteQuery ataupun operasi tulis dengan executeUpdate(). Setiap tahap
dan pekerjaan yang berbeda - beda tersebut dilakukan oleh kelas yang berbeda, mulai dari
DriverManager, Connection, Statement, PreparedStatement, Resulset.
A. Penambahan Data pada Tabel Pertama – tama download database server MySQL terlebih dahulu, aktifkan melalui xampp
dan operasikanlah melalui browser dengan mengetikkan localhost/phpmyadmin kemudian
membuat database baru yang akan dipanggil pada aplikasi desktop yang telah dibuat (aplikasi
absen yang telah dibuat pada materi sebelumnya). Apabila database telah dibuat, selanjutnya
buat koneksi netbeans ke database. Caranya tambahkan terlebih dahulu library MySQL JDBC
driver dengan mengikuti langkah berikut :
17
Klik kanan library pada program aplikasi yang telah dibuat, pilih add library, cari MySQL JDBC
driver dan klik import / add library.
1. Membangun koneksi
Langkah awal sebelum membangun koneksi, yaitu dengan membuat package dan class
baru untuk koneksi terlebih dahulu. Kemudian tambahkan import java.sql.*; di baris paling
atas. Setelah itu lakukan koneksi ke database yang melibatkan dua langkah: Meload driver
dan membuat koneksi itu sendiri. Cara meload driver sangat mudah, pertama letakkan file jar
database driver ke dalam classpath. Kemudian load driver dengan menambahkan kode
berikut :
Memanggil method Class.forName secara otomatis membuat instance dari database driver,
class DriverManager secara otomatis juga dipanggil untuk mengelola class database driver.
Jadi tidak perlu menggunakan statement new untuk membuat instance dari class database
driver tersebut. Langkah berikutnya adalah membuat koneksi ke database menggunakan
database driver yang sudah diload. Parameter yang digunakan untuk menentukan driver yang
sesuai adalah URL. Aplikasi yang akan melakukan koneksi ke database menyediakan URL
pengenal dari server database jdbc:mysql://[host]:[port]/[database], tambahkan juga
username dan password seperti berikut :
Connection c = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_absen",
dan driver. Tugasnya mengawasi driver yang tersedia dan menangani pembuatan koneksi
antara database dan driver. Untuk membuat koneksi harus memasukkan kode didalam blok
try catch dengan cara klik kanan pilih try catch.
2. Statement
Statement merupakan class yang terdapat pada paket java.sql yang dapat digunakan
sebagai pengeeksekusi perintah - perintah SQL, misalnya INSERT, UPDATE, DELETE,
SELECT dalam MySQL. Sebuah objek Statement dibuat dengan menggunakan metode
Statement statement = connection.createStatement();
Metode yang digunakan bergantung pada statement SQL-nya.
a. Metode executeQuery
Metode ini untuk statement yang menghasilkan sebuah result set tunggal, seperti
SELECT.
Metode ini digunakan menjalankan statement INSERT, UPDATE, atau DELETE
dan juga statement DDL (Data Definition language) seperti CREATE TABLE, DROP
TABLE dan ALTER TABLE. Efek dari INSERT, UPDATE atau DELETE adalah
memodifikasi satu atau lebih kolom dalam nol atau lebih baris dalam satu tabel.
c. Metode execute
Metode ini digunakan untuk menjalankan statement mengembalikan lebih dari satu
result set, lebih dari satu update count (nilai kebalian dari executeUpdate) atau kombinasi
dari keduanya. Karena merupakan fitur advanced, jarang pemrograman menggunakanya.
4. Result set
Sebuah object ResultSet adalah object java yang berisi hasil - hasil sewaktu menjalankan
query SQL. Hasilnya berupa garis - garis yang memenuhi kondisi query tersebut. Data yang
disimpan dalam object ResultSet diambil melalui serangkaian metode get yang mengizinkan
akses keberbagai kolom dari baris.
Setelah membuat database dan membuat koneksi, langkah selanjutnya adalah membuat class
control dan class JFrame / JDialog baru untuk meletakkan form / table yang akan diisi. Class
control berisi perintah untuk menjalankan class J yang telah dibuat. Jangan lupa untuk import
table di class J dan class control masih dalam extend class koneksi seperti berikut :
import java.sql.ResultSet;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
public siswaKontrol()throws Exception{
}
String Kelas, String No_HP, String Alamat_Email) {
try {
‘”+Tanggal_Lahir+”’, ‘”+Alamat+”’, ‘”+Kelas+”’, ‘”+No_HP+”’, ‘”+Alamat_Email+”’
St.execute(simpan);
Sedangkan untuk class J, jangan lupa untuk import :
import javax.security.auth.Refreshable;
import javax.swing.*;
import koneksi.siswaKontrol;
import java.text.SimpleDateFormat; // jika dibutuhkan
import javax.swing.table.DefaultTableModel;
import koneksi.koneksi;
Class tersebut masih dalam extend JDialog. Setelah itu buat statement class control, class
koneksi dan buat methode table, seperti berikut :
Private javax.swing.table.DefaultTableModel defaultTableModel;
super(parent, modal);
20
private void tbsiswaMouseClicked(java.awt.event.MouseEvent evt) {
Kemudian panggil table yang telah dibuat dengan memasukkan perintah berikut :
Public final void setTabel(){
21
Praktikanlah langkah – langkah yang telah dicontohkan di atas. Rekam cara pembuatan dan beri
keterangan setiap langkah – langkah pembuatannya. Kumpulkan hasil program, database, dan
hasil rekaman pada pertemuan pertama mapel pemrograman desktop setelah prakerin!
Db siap
22
B. Pencarian dan Penampilan Data Class JForm yang telah di buat di praktikum sebelumnya terdapat kolom cari, untuk
actionnya silahkan buat method cariData seperti script berikut dan panggil di tombol cari :
Setelah itu isikan script berikut pada class control yang telah dibuat pada praktikum
sebelumnya :
public ResultSet cariID(String id) throws SQLException{
String cari = "SELECT * FROM tambah where NIS LIKE '%"+id+"%' ORDER BY NIS
ASC";
Script control :
st.execute(delete);
}
}
D. View Data View data dapat dilihat pada database yang telah terkoneksi.
23
E. Report JasperReports adalah library reporting paling populer di Java, kepopuleran JasperReports
sangat ditunjang dengan adanya tools visual designer yaitu iReport. Dengan menggunakan
iReports, membuat report menjadi sangat cepat dan akurat. Feature - feature JasperReports juga
sudah sangat lengkap, berikut daftar featurenya yang ada pada iReport :
Pixel - perfect page - oriented atau continuous output untuk web atau print.
Dashboards, tables, crosstabs, charts dan gauges
Web - based and pixel - perfect reports
Report output dalam format PDF, XML, HTML, CSV, XLS, RTF, TXT
Sub - reports dapat dengan mudah digunakan untuk menampilkan layout yang kompleks
Support barcode
Styles library
Tidak ada batasan ukuran report
Conditional printing
Internationalized dan Localizable
Untuk mulai bekerja dengan JasperReports kita perlu mendownload iReport terlebih dahulu.
Setelah proses download selesai, kemudian silahkan install iReport. Setelah instalasi selesai,
jalankan iReport.
Langkah pertama adalah dengan membuat report baru dari iReport. Pilih menu File -
New, kemudian di dialog yang muncul pilih Report - Blank A4 (jenis kertas disesuaikan dengan
laporan yang akan dibuat), simpan fle reportnya dengan nama report.jrxml. Setelah proses
:
24
Keterangan :
- Report Inspector : yang berisi komponen - komponen yang ada dalam report. Bagian
terpenting yang berhubungan dengan kode yang telah dibuat adalah Parameters, Fields dan
Variables. Kemudian di bagian tengah ada Band atau area dari report, ada title, page header,
column header, detail, colomn footer dan summary.
- Sebelah kanan ada pallete yang berisi komponen - komponen report seperti garis, text,
subreport, kotak, gambar dan lain - lainya. Biasanya untuk laporan keuangan komponen yang
diletakkan dalam report cukup minimalis, hal ini dimaksudkan untuk menghemat tinta ketika
diprint dikertas.
- Properties yang digunakan untuk mengedit property dari komponen report.
- Band Title digunakan untuk meletakkan judul dari report, komponen yang digunakan untuk
judul adalah static text yang diubah font - nya agar kelihatan lebih besar.
- Band Page Header digunakan ketika akan menampilkan sesuatu yang selalu ada di setiap
halaman, misalnya nomer halaman report dan tanggal transaksi.
- Band Column Header digunakan untuk menampilkan header column dari reportnya.
- Band Detail berisi field - field yang akan ditampilkan, jadi ketika akan membuat tiga buah
field yaitu nama barang, jumlah dan subtotal untuk ditampilkan di report.
- Band Column Footer digunakan untuk menampilkan sesuatu di setiap kolom selesai, dalam
report ini tidak digunakan.
- Band Page Footer digunakan untuk menampilkan sesuatu di bagian bawah page, bisa juga
digunakan untuk menampilkan halaman atau sub total setiap halaman report.
- Band Summary digunakan untuk menampilkan sesuatu di akhir dari report, misalnya
menampilkan grand total atau misalnya tempat untuk tanda tangan, dsb.
Setelah mengetahui bagian - bagian dari iReport, mulai untuk menyusun reportnya dari
membuat Field. Untuk bekerja dengan jasperReport, dibutuhkan database yang sudah dibuat
sebelumnya. Langkah - langkahnya adalah :
1. Klik report datasource
2. Klik new dan pilih database JDBC Connection. Kemudian next
25
3. Masukkan nama, JDBC URL, Server address, dan username. Kemudian centang save
password dan save.
- Name adalah nama source yang dibuat (isi bebas)
- JDBC Driver adalah library connector yang dipakai.
- JDBC URL adalah URL database. Ganti MYDATABASE menjadi database yang sudah
dibuat
- Password kosongkan jika database tidak memakai password, jangan lupa centang Save
password agar sistem tidak menanyakan password.
Setelah diisi, klik tombol test yang ada dibawah samping save. Jika hasilnya seperti gambar
dibawah, artinya settingan yang dimasuukan salah atau service MySQL belum dijalankan.
Jika koneksi benar :
27
Ketika sudah benar, maka akan muncul pesan seperti gambar diatas. Save setting database
baru selesai dan hasilnya akan muncul tampilan seperti berikut :
Perintah untuk memanggil report adalah :
a. String nama = "/[letak_package]/[nama_laporan].jasper";
Ket:
String [nama_objek] untuk mendefinisikan letak dari laporan kita. formatnya adalah
/paket/nama_laporan.jasper. Kenapa .jasper?
Kasus yang sering terjadi, ketika aplikasi sudah dibuild jadi .jar, jasper yang dibuat tidak
terpanggil. Untuk mengantisipasi, pemanggilan diubah dari JRXML menjadi .jasper
karena ketika akan memanggil JRXML, sistem harus mengkonvert laporan terlebih
dahulu menjadi .jasper.
Ket:
param.put("[nama_parameter_diDesain_laporan]",komponen.fungsiGet());
d. JasperPrint print = JasperFillManager.fillReport(inputStream, param, con);
e. JasperViewer.viewReport(print, false);
f. JasperViewer.setDefaultLookAndFeelDecorated(true);
Perintah diatas harus sesuai urutan dan harus berada di block try catch. Contoh:
28
Lanjutkanlah tugas 8.1 yang sudah dibuat sebelumnya hingga hasil print (ireport)! Selamat
mengerjakan.
MODUL
A. Class dan Objek
B. Objek 2 Dimensi
C. Gambar pada Window
D. Visualisasi dengan Navigasi
C. Penghapusan Data
D. View Data