Top Banner
Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 1 MERANCANG DATABASE PENJUALAN Sebagai tempat studi kasus dari aplikasi yang akan dibuat adalah penjualan barang . Dengan adanya aplikasi ini, diharapkan dapat mempermudah dalam pengecekan stok barang dan transaksi barang masuk dan penjualan barang. Dari gambaran di atas, yang perlu anda buat adalah sebuah aplikasi yang dapat membantu untuk pencatatan setiap transaksi yang dilakukan, mulai dari data jenis barang, data barang, data petugas, data distributor, data barang masuk dan data penjualan barang. Membuat Database dan Tabel Pada gambaran sebelumnya, sekarang anda perlu memikirkan seberapa besar database yang akan diperlukan. Dari hasil pemikiran tersebut anda akan mengira-ira berapa dan apa tabel yang akan digunaka sebagai media penyimpanan datanya. Membuat Database Dari analisis kami, untuk membuat aplikasi ini kita membutuhkan 6 tabel. Terdiri atas 4 tabel master dan 2 tabel transaksi. keenam tabe tersebut berada di dalam nama database dbretail. C:\Documents and Setting> mysql uroot -p; Enter Password:masukkan password anda Mysql> CREATE DATABASE dbretail; Query OK, 1 row affected (0.00 sec) Selanjutnya, aktifkanlah database yang terbuat dengan perintah berikut: Mysql> USE dbretail; Database changed Pernyataan “Database changed” di atas menandakan anda sekarang telah aktif di dalam database dbretail. Membuat Tabel tbljenis Tabel Jenis Barang digunakan untuk merekam data semua jenis barang. Dengan cara ini, kita dapat mengelompokkan jenis barang.Berikut desain tabelnya.
111

Membuat Aplikasi Penjualan Menggunakan Java

Feb 08, 2016

Download

Documents

anakpinggiran

Membuat Aplikasi Penjualan Menggunakan Java
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 1

MERANCANG DATABASE PENJUALAN

Sebagai tempat studi kasus dari aplikasi yang akan dibuat adalah penjualan barang . Dengan

adanya aplikasi ini, diharapkan dapat mempermudah dalam pengecekan stok barang dan

transaksi barang masuk dan penjualan barang.

Dari gambaran di atas, yang perlu anda buat adalah sebuah aplikasi yang dapat membantu

untuk pencatatan setiap transaksi yang dilakukan, mulai dari data jenis barang, data barang,

data petugas, data distributor, data barang masuk dan data penjualan barang.

Membuat Database dan Tabel

Pada gambaran sebelumnya, sekarang anda perlu memikirkan seberapa besar database yang

akan diperlukan. Dari hasil pemikiran tersebut anda akan mengira-ira berapa dan apa tabel

yang akan digunaka sebagai media penyimpanan datanya.

Membuat Database

Dari analisis kami, untuk membuat aplikasi ini kita membutuhkan 6 tabel. Terdiri atas 4 tabel

master dan 2 tabel transaksi. keenam tabe tersebut berada di dalam nama database dbretail.

C:\Documents and Setting> mysql –uroot -p;

Enter Password:masukkan password anda

Mysql> CREATE DATABASE dbretail;

Query OK, 1 row affected (0.00 sec)

Selanjutnya, aktifkanlah database yang terbuat dengan perintah berikut:

Mysql> USE dbretail;

Database changed

Pernyataan “Database changed” di atas menandakan anda sekarang telah aktif di dalam database dbretail.

Membuat Tabel tbljenis

Tabel Jenis Barang digunakan untuk merekam data semua jenis barang. Dengan cara ini, kita dapat mengelompokkan jenis barang.Berikut desain tabelnya.

Page 2: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 2

Tabel 1.1 Struktur Tabel tbljenis

Kolom Tipe Data Panjang

kodejenis * Char 4

jenis Varchar 60

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:

mysql> create table tbljenis(

kodejenis char(4) not null primary key,

jenis varchar(60)

);

Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tbljenis.

Membuat Tabel tblpetugas

Tabel petugas digunakan untuk merekam data semua petugas. Dengan cara ini, kita dapat mengetahui petugas jaga parkir.Berikut desain tabelnya.

Tabel 1.2 Struktur Tabel tblpetugas

Kolom Tipe Data Panjang

idpetugas * Char 6

namapetugas Varchar 80

alamat Varchar 100

email Varchar 80

telpon Char 15

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:

mysql> create table tblpetugas(

idpetugas char(6) not null primary key,

namapetugas varchar(80),

alamat varchar(100),

email varchar(80),

telpon char(10)

);

Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tblpetugas.

Page 3: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 3

Membuat Tabel tbldistributor

Tabel distributor digunakan untuk merekam data semua distributor. Dengan cara ini, kita dapat mengetahui distributor pemasok barang.Berikut desain tabelnya.

Tabel 1.3 Struktur Tabel tbldistributor

Kolom Tipe Data Panjang

iddistributor * Char 6

namadistributor Varchar 80

alamat Varchar 100

kotaasal Varchar 80

email Varchar 80

telpon Char 15

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:

mysql> create table tbldistributor(

iddistributor char(6) not null primary key,

namadistributor varchar(80),

alamat varchar(100),

kotasal varchar(80),

email varchar(80),

telpon char(10)

);

Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tbldistributor.

Membuat Tabel tblbarang

Tabel Barang digunakan untuk merekam semua data barang Dengan cara ini, kita dapat mengetahui semua data barang yang ada digudang. Berikut desain tabelnya.

Tabel 1.4 Struktur Tabel tblbarang

Kolom Tipe Data Panjang

kodebarang * Char 4

namabarang Varchar 100

kodejenis ** Char 4

Harganet Double -

Hargajual Double -

stok Smallint 4

Page 4: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 4

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:

mysql> create table tblbarang(

kodebarang char(4) not null primary key,

namabarang varchar(100),

kodejenis char(4),

harganet double,

hargajual double,

stok smallint(20)

);

Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tblbarang.

Membuat Tabel tblbrgmasuk

Tabel Barang masuk digunakan untuk merekam semua data barang masuk Dengan cara ini, kita dapat mengetahui semua data barang masuk yang ada digudang. Berikut desain tabelnya.

Tabel 1.5 Struktur Tabel tblbrgmasuk

Kolom Tipe Data Panjang

nonota * Char 10

tglmasuk Varchar 30

iddistributor ** Char 6

Idpetugas** Char 6

total Double -

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:

mysql> create table tblbrgmasuk(

nonota char(10) not null primary key,

tglmasuk varchar(30),

iddistributor char(6),

idpetugas char(6),

total double);

Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tblbrgmasuk.

Page 5: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 5

Membuat Tabel tbldetailbrgmasuk

Tabel Detail Barang Masuk digunakan untuk merekam jumlah data barang masuk, Dengan cara ini, kita dapat mengetahui semua data barang yang baru diorder. Berikut desain tabelnya.

Tabel 1.6 Struktur Tabel tbldetailbrgmasuk

Kolom Tipe Data Panjang

nonota ** Char 10

Kodebarang** Char 4

jumlah Smallint 4

subtotal Double -

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:

mysql> create table tbldetailbrgmasuk(

nonota char(10) not null,

kodebarang char(4) not null,

jumlah smallint(4),

subtotal double);

Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tbldetailbrgmasuk.

Membuat Tabel tblpenjualan

Tabel Penjualan digunakan untuk merekam semua transaksi penjualan Dengan cara ini, kita dapat mengetahui semua data barang yang sudah terjual atau belum terjual. Berikut desain tabelnya.

Tabel 1.7 Struktur Tabel tblpenjualan

Kolom Tipe Data Panjang

nofaktur * Char 10

Tglpenjualan Varchar 30

idpetugas ** Char 6

bayar Double -

sisa Double -

total Double -

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:

Page 6: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 6

mysql> create table tblpenjualan(

nofaktur char(10) not null primary key,

tglpenjualan varchar(30),

idpetugas char(6),

bayar double,

sisa double,

total double);

Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tblpenjualan.

Membuat Tabel tbldetailpenjualan

Tabel Detail Penjualan digunakan untuk merekam jumlah data barang terjual, Dengan cara ini, kita dapat mengetahui semua data barang yang sudah atau belum terjual. Berikut desain tabelnya.

Tabel 1.8 Struktur Tabel tbldetailpenjualan

Kolom Tipe Data Panjang

nofaktur ** Char 10

Kodebarang** Char 4

jumlah Smallint 4

subtotal Double -

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:

mysql> create table tbldetailpenjualan(

nofaktur char(10) not null,

kodebarang char(4) not null,

jumlah smallint(4),

subtotal double);

Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tbldetailpenjualan.

Page 7: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 7

Relasi Antar Tabel

TblJenis

PK KodeJenis

Jenis

TblBarang

PK KodeBarang

NamaBarang

KodeJenis

HargaNet

HargaJual

Stok

TblPetugas

PK IDPetugas

NamaPetugas

Alamat

Emali

Telpon

TblDistributor

PK IDDistributor

NamaDistributor

Alamat

KotaAsal

Email

Telpon

TblBrgMasuk

PK NoNota

TglMasuk

IDDistributor

IDPetugas

Total

TblDetailBrgMasuk

NoNota

KodeBarang

Jumlah

Subtotal

TblPenjualan

PK NoFaktur

TglPenjualan

IDPetugas

Bayar

Sisa

Total

TblDetailPenjualan

NoFaktur

KodeBarang

Jumlah

Subtotal

Gambar 1.1 Hubungan Antar Tabel pada dbretail

Tanda (PK) menunjukkan kunci utama, sedangkan (FK) adalah kunci tamu dengan diwujudkan arah panahnya. Berikut bebarapa penjelasan relasi tabel tersebut.

Page 8: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 8

MEMBUAT APLIKASI PENJUALAN BARANG

Mulai dari bab ini kami akan membimbing anda untuk membuat proyek lengkap, yaitu dengan objek kasus pada penjualan barang. Pada aplikasi yang dibuat, akan terjadi proses transaksi barang masuk dan transaksi penjualan barang. Tentunya ada proses perhitungan pembelian dan penjualan barang. Dalam bonus CD buku ini, juga telah disertakan hasil studi kasus dan komponen pendukung untuk pembuatan aplikasi yang dibahas pada bab ini. Anda bisa membaca bab ini sebagai penjelasan lengkap dan langkah pembuatannya.

Dependency

Dependency ata ketergantungan adalah sebuah syarat ketersediaan sebuah tool berupa modul terpisah maupun aplikasi lain agar bisa menjalankan aplikasi yang dimaksud. Dalam hal ini setidaknya anda harus memasang Netbeans 6.0 Tentunya untuk bisa memasangnya juga harus anda penuhi system requirement dari aplikasi tersebut. Untuk sistem operasi tentunya anda bisa menggunakan Windows/Linux. Dalam hal ini kami menggunakan Windows XP untuk uji coba. Adapun tool yang lain, yang mesti anda pasang adalah sebagai berikut.

Ketergantungan Mesin

Sistem Opersai Windows/Linux Netbeans 6.0 Jasper Report 2.0.4 MySQL(AppServ2.10.3 boleh menggunakan versi lain)

Ketergantungan Module/com objek maupun resource lain

mysql-connector-java-5.1.6-bin untuk objek database yang siap dipakai Komponen untuk membuat laporan yang sudah disertakan dalam CD

Persiapan Instalasi dan Folder Program Kami sarankan pembaca mengikuti langkah-langkah yang ada dalam buku ini agar tidak mengalami kesulitan/salah jalan. Kalau tidak mengikuti petunjuk ini, dikhawatirkan anda bisa tersesat sejauh-jauhnya. Catatan: Anda tidak harus mengikuti langkah-langkah instalasi jika sudah memiliki versi yang sama. Dalam buku tidak terlalu banyak memberikan hal-hal yang dasar, bukan keharusan tetapi sangat dianjurkan bagi anda membaca buku edisi sebelumnya.

1. Instal netbeans 6 nama file installer-nya netbeans-6.0.1-ml-javase-windows.exe. klik ganda kemudian lanjutkan dialognya sampai selesai.

2. Instal MySQL dan tool admin lewat Browser Client. Nama filenya appserv-win32-2.5.10.exe. ikuti petunjuk dan jangan lupa untuk menyimpan nama password atau user-

Page 9: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 9

nya agar Anda bisa mengakses halaman admin. Jika sampai lupa, anda selamanya tidak bisa membuka database anda sendiri.

3. Siapkan folder khusus untuk membuat kode. Misalnya kami membuat folder D:\Aplikasi Penjualan Barang.

Membuat Koneksi Database.ini

database.ini digunakan untuk menghubungkan database MySQL dengan JAVA, database.ini dibuat menggunakan Notepade.

Berikut langkah membuat koneksi database.ini:

1. Buatlah folder dengan nama folder lib pada direktori D:\Aplikasi Penjualan Barang\AplikasiPenjualan\lib.

2. Buatlah koneksi database.ini menggunakan notepade kemudian simapan dengan nama database.ini. Syntax Database.ini # Setting JDBC # getDriver JDBC DBDriver=com.mysql.jdbc.Driver # getDatabase DBDatabase=jdbc:mysql://localhost/dbretail # Setting username DBUsername=root # Setting password DBPassword=Sesuaikan dengan password anda

Membuat Project

Berikut langkah membuat projek baru :

1. Bukalah editor Netbeans, lalu buat project beru melalui menu File –> New Project, sehingga muncul sebuah jendela New Project.

2. Pada kolom Categories pilih Java. Selanjutnya pada kolom projects pilih Java Application, kemudian tekan tombol Next untuk melanjutkan.

Page 10: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 10

Gambar 1.2 Jendela New Project 3. Isilah Project Name (sebagai nama proyek), Project Location (folder atau lokasi

program), Application Class (nama file atau kelas), dan nama kelas utama seperti berikut ini.

Gambar 1.3 Penambahan File Project

Dari gambar di atas, perhatikan isian Application Class yang terisi otomatis ketika anda memberikan nilai pada nama Project name: “AplikasiPenjualan”. Netbeans secara default

Page 11: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 11

menyiapkan paket bernama AplikasiPenjualan dan kelas utama Main.java. Berarti kita membuat kelas AplikasiPenjualan berada dalam paket AplikasiPenjualan.

4. Pada kolom Choose Application Shell pilih Basic Application, anda bisa menyesuaikan foldernya dengan computer anda.

5. Jiksa sudah, klik tombol Finish.

Gambar 1.4 Tampilan Pertama Project Baru

Memasang File Jar(Setting Class Path)

Memasang file jar ke dalam aplikasi adalah pekerjaan yang sangat penting, karena dengan begitu integritas dan fleksibilitas untuk pengembangan program sangat mudah. Mungkin anda pernah memahami bagaimana file dll dalam windows bekerja. Dengan adanya sebuah dll tertentu, bisa dipakai secara bersama-sama oleh aplikasi lain. Dalam aplikasi ini, kita akan memasang distribusi file sebagai komponen penghubung database. Buatlah susunan folder program dan setingan file jar yang sudah disiapkan:

Buatlah folder lib pada folder D:\Apliksi Penjualan Barang\AplikasiPenjualan\kemudian kopi file mysql-connector-java-5.1.6-bin.

6. Langkah selanjutnya kita akan membuat Database.java dengan cara klik kanan New ->

Java Class , kemudian masukkan kode program seperti dibawah ini.

Page 12: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 12

Gambar 1.5 Membuat Java Class File

package penjualan; import java.io.FileInputStream; import java.util.Properties; import javax.swing.JOptionPane; /** * * @author REVOLPER */ public class Database { public Properties mypanel, myLanguage; private String strNamePanel; public Database(){ } public String SettingPanel(String nmPanel){ try { mypanel = new Properties(); mypanel.load(new FileInputStream("lib/database.ini")); strNamePanel = mypanel.getProperty(nmPanel); } catch (Exception e) { JOptionPane.showMessageDialog(null,"Tidak ada koneksi","Error", JOptionPane.INFORMATION_MESSAGE); System.err.println(e.getMessage()); System.exit(0); } return strNamePanel; } }

Page 13: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 13

Memasang Driver MySQL

Untuk bisa melakukan hubungan atau koneksi dengan database MySQL, Anda harus memasang driver-nya. Caranya adalah:

1. Dari jendela Project pilih Libraries kemudian klik kanan pilih Add JAR/Folder… kemudian klik Open.

Gambar 1.6 Penentuan File Driver MySQL sendiri

Membuat Desain Form Data Jenis Barang Sekarang saatnya membuat form data jenis barang agar petugas dapat mengetahu dan menginput jenis barang. Lakukan beberapa langkah berikut ini:

1. Buatlah file baru dalam paket AplikasiPenjualan, dengan cara klik kanan paket AplikasiPenjualan, Pilih New -> JFrame Form....

Gambar 1.7 Membuat Objek Baru

Page 14: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 14

2. Pada jendela New JFrame Form, isikan FrmJenis pada kotak isian Class Name, dan Package pilih aplikasipenjualan, lalu tekan tombol Finish untuk mengakhiri.

Gambar 1.8 Menentukan Nama Form JFrame Form

Gambar 1.9 Desain Form Baru

Page 15: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 15

3. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini:

Gambar 1.10 Desain Form Jenis Barang

Keterangan :

Tabel 1.9 Daftar Propertis yang digunakan

Pallete Propertis

Edit Text Change Variable Name

Label1 Kode Jenis jLabel1

Label2 Jenis Barang jLabel2

Text Field1 KodeJenis KodeJenis

Text Field2 Jenis Jenis

Button1 Add New AddNew

Button2 Save Save

Button3 Update Update

Button4 Delete Delete

Button5 Cancel Cancel

Button6 Close Close

Table - Table

Page 16: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 16

Syntax Program

1. Pada bagian import tambahkan dibawah baris package penjuaan sepeti kode berikut:

package penjualan;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

2. Pada bagian public class FrmJenis extends javax.swing.JFrame tambahkan kode berikut:

public class FrmJenis extends javax.swing.JFrame {

Database dbsetting;

String driver,database,user,pass;

private Object tabel;

/** Creates new form FrmJenis */

public FrmJenis() {

initComponents();

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

Dimension frameSize=this.getSize();

if(frameSize.height > screenSize.height){

frameSize.height=screenSize.height;

}

if(frameSize.width > screenSize.width){

frameSize.width=screenSize.width;

}

this.setLocation((screenSize.width - frameSize.width) / 2,

(screenSize.height = screenSize.height) / 4);

dbsetting = new Database();

driver = dbsetting.SettingPanel("DBDriver");

database = dbsetting.SettingPanel("DBDatabase");

user = dbsetting.SettingPanel("DBUsername");

pass = dbsetting.SettingPanel("DBPassword");

table.setModel(tableModel);

Tabel(table, new int[]{90,370});

setDefaultTable();

SetEditOff();

}

3. Buatlah kode program diatas // Variables declaration - do not modify untuk menampilkan data pada

tabel seperti berikut:

Page 17: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 17

Private javax.swing.table.DefaultTableModel tableModel=getDefaultTabelModel();

private void Tabel(javax.swing.JTable tb, int lebar[] ) {

tb.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

int kolom=tb.getColumnCount();

for(int i=0;i < kolom;i++) {

javax.swing.table.TableColumn tbc=tb.getColumnModel().getColumn(i);

tbc.setPreferredWidth(lebar[i]);

tb.setRowHeight(17);

}

}

private javax.swing.table.DefaultTableModel getDefaultTabelModel() {

return new javax.swing.table.DefaultTableModel(

new Object[][] {},

new String [] {"Kode Jenis","Jenis Barang"}

){

boolean[] canEdit = new boolean[]{

false, false, false, false

};

public boolean isCellEditable(int rowIndex, int columnIndex){

return canEdit[columnIndex];

}

};

}

String data[]=new String[2];

private void setDefaultTable() {

String stat ="";

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "SELECT * FROM tbljenis";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

data[0] = res.getString(1);

data[1] = res.getString(2);

tableModel.addRow(data);

}

res.close();

stt.close();

kon.close();

} catch (Exception ex) {

Page 18: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 18

System.err.println(ex.getMessage());

}

}

4. Buatlah kode program untuk menampilkan data yang sudah tersimpan di database, letakkan

disembarang tempat yang memiliki space kosong seperti berikut ini:

int row = 0;

public void Tampil(){

row = table.getSelectedRow();

KodeJenis.setText(tableModel.getValueAt(row, 0).toString());

Jenis.setText(tableModel.getValueAt(row, 1).toString());

Save.setEnabled(false);

Update.setEnabled(true);

Delete.setEnabled(true);

SetEditOn();

}

5. Buatlah perintah BersihData,SetEditOff, dan SetEditON disembarang tempat yang memiliki space kosong

seperti berikut ini:

public void BersihData(){

KodeJenis.setText("");

Jenis.setText("");

}

public void SetEditOff(){

KodeJenis.setEnabled(false);

Jenis.setEnabled(false);

}

public void SetEditOn(){

KodeJenis.setEnabled(true);

Jenis.setEnabled(true);

}

6. Buatlah kode program AddNew dengan mengklik kanan button AddNew ->evens -> action ->

ActionPerformed.

private void AddNewActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

BersihData();

KodeJenis.requestFocus();

Save.setEnabled(true);

Update.setEnabled(false);

Delete.setEnabled(false);

SetEditOn();

}

Page 19: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 19

7. Buatlah kode program save dengan mengklik kanan button save ->evens -> action -> ActionPerformed.

private void SaveActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String KJ=KodeJenis.getText();

String J=Jenis.getText();

if ((KJ.isEmpty()) | (J.isEmpty()))

{JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

KodeJenis.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "insert into tbljenis values(' "+KodeJenis.getText()+" ' , "+

" ' "+Jenis.getText()+"')";

stt.executeUpdate(SQL);

data[0] = KodeJenis.getText();

data[1] = Jenis.getText();

tableModel.insertRow(0, data);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

8. Buatlah kode program even Click dengan mengklik kanan table(grid) ->evens -> Mouse ->

MouseClicked.

private void tableMouseClicked(java.awt.event.MouseEvent evt) {

// TODO add your handling code here:

if (evt.getClickCount()==1) {

Tampil();

}

}

Page 20: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 20

9. Buatlah kode program Update dengan mengklik kanan button Update ->evens -> action ->

ActionPerformed.

private void UpdateActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String KJ=KodeJenis.getText();

String J=Jenis.getText();

if ((KJ.isEmpty()) | (J.isEmpty()))

{JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

KodeJenis.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "Update tbljenis set jenis=' "+Jenis.getText()+" ' "+

"Where kodejenis=' "+KodeJenis.getText()+" ' ";

stt.executeUpdate(SQL);

data[0] = KodeJenis.getText();

data[1] = Jenis.getText();

tableModel.removeRow(row);

tableModel.insertRow(row,data);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

10. Buatlah kode program Delete dengan mengklik kanan button Delete ->evens -> action ->

ActionPerformed.

private void DeleteActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String KJ=KodeJenis.getText();

String J=Jenis.getText();

if ((KJ.isEmpty()) | (J.isEmpty()))

{JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

KodeJenis.requestFocus();

Page 21: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 21

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "Delete From tbljenis Where kodejenis='"+KodeJenis.getText().toString()+"'";

stt.executeUpdate(SQL);

data[0] = KodeJenis.getText();

data[1] = Jenis.getText();

tableModel.removeRow(row);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

11. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed.

private void CloseActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if(JOptionPane.showConfirmDialog(null,"This application will be close \n if you press button OK",

"Information",JOptionPane.OK_CANCEL_OPTION,

JOptionPane.INFORMATION_MESSAGE)==JOptionPane.OK_OPTION)

this.dispose();

}

12. Buatlah kode program Cancel dengan mengklik kanan button Cancel ->evens -> action ->

ActionPerformed.

private void CancelActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: BersihData(); SetEditOff();

}

13. Jalankan Program kemudian klik menu Data Jenis Barang maka akan tampil seperti berikut:

Page 22: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 22

Gambar 1.11 Tampilan Program Data Jenis Barang

Membuat Desain Form Data Barang

1. Buatlah file baru dalam paket AplikasiPenjualan, dengan cara klik kanan paket Penjualan, Pilih New -> JFrame Form…, sehingga muncul jendela New File.

Gambar 1.12 Membuat Objek Baru

2. Pada jendela New JFrame Form, isikan FrmBarang pada kotak isian Class Name, dan Package pilih aplikasipenjualan, lalu tekan tombol Finish untuk mengakhiri.

Page 23: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 23

Gambar 1.13 Menentukan Nama Form JFrame Form

Gambar 1.14 Desain Form Baru

3. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini:

Page 24: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 24

Gambar 1.15 Desain Form Data Barang

Keterangan :

Tabel 1.9 Daftar Propertis yang digunakan

Pallete Propertis

Edit Text Change Variable Name

Label1 Kode Barang jLabel1

Label2 Nama Barang jLabel2

Label3 Kode Jenis Barang jLabel3

Label4 Jenis Barang jLabel4

Label5 Harga Net jLabel5

Label6 Harga Jual jLabel6

Label7 Stok jLabel7

Label8 Rp jLabel8

Label9 Rp jLabel9

TextField1 - KodeBarang

Text Field2 - NamaBarang

ComboBox1 - KodeJenis

TextField3 - Jenis

TextField4 - HargaNet

Page 25: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 25

TextField5 - HargaJual

TextField6 - Stok

Button1 Add New AddNew

Button2 Save Save

Button3 Update Update

Button4 Delete Delete

Button5 Cancel Cancel

Button6 Close Close

Table - table

Syntax Program

1. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut:

package penjualan;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

2. Pada bagian public class FrmBarang extends javax.swing.JFrame tambahkan kode berikut:

public class FrmBarang extends javax.swing.JFrame {

Database dbsetting;

String driver,database,user,pass,userLogin;

private Object tabel;

/** Creates new form FrmBarang */

public FrmBarang() {

initComponents();

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

Dimension frameSize=this.getSize();

if(frameSize.height > screenSize.height){

frameSize.height=screenSize.height;

}

if(frameSize.width > screenSize.width){

frameSize.width=screenSize.width;

}

this.setLocation((screenSize.width - frameSize.width) / 2,

(screenSize.height = screenSize.height) / 6);

//setting untuk memanggil koneksi Database.ini

Page 26: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 26

dbsetting = new Database();

driver = dbsetting.SettingPanel("DBDriver");

database = dbsetting.SettingPanel("DBDatabase");

user = dbsetting.SettingPanel("DBUsername");

pass = dbsetting.SettingPanel("DBPassword");

table.setModel(tableModel);

Tabel(table, new int[]{90,300,90,90,90,70});

setDefaultTable();

SetEditOff();

TampilComboJenis();

}

3. Buatlah kode program diatas // Variables declaration - do not modify untuk menampilkan

data pada tabel seperti berikut:

private javax.swing.table.DefaultTableModel tableModel=getDefaultTabelModel();

private void Tabel(javax.swing.JTable tb, int lebar[] ) {

tb.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

int kolom=tb.getColumnCount();

for(int i=0;i < kolom;i++) {

javax.swing.table.TableColumn tbc=tb.getColumnModel().getColumn(i);

tbc.setPreferredWidth(lebar[i]);

tb.setRowHeight(17);

}

}

private javax.swing.table.DefaultTableModel getDefaultTabelModel() {

return new javax.swing.table.DefaultTableModel(

new Object[][] {},

new String [] {"Kode Barang","Nama Barang","Kode Jenis","Harga NET","Harga Jual","Stok"}

){

boolean[] canEdit = new boolean[]{

false, false, false, false

};

public boolean isCellEditable(int rowIndex, int columnIndex){

return canEdit[columnIndex];

}

};

}

Page 27: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 27

String data[]=new String[6];

private void setDefaultTable() {

String stat ="";

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "SELECT * FROM tblbarang";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

data[0] = res.getString(1);

data[1] = res.getString(2);

data[2] = res.getString(3);

data[3] = res.getString(4);

data[4] = res.getString(5);

data[5] = res.getString(6);

tableModel.addRow(data);

}

res.close();

stt.close();

kon.close();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

4. Buatlah kode program untuk menampilkan data yang sudah tersimpan di database, letakkan

disembarang tempat yang memiliki space kosong seperti berikut ini:

int row = 0;

public void Tampil(){

row = table.getSelectedRow();

KodeBarang.setText(tableModel.getValueAt(row, 0).toString());

NamaBarang.setText(tableModel.getValueAt(row, 1).toString());

KodeJenis.setSelectedItem(tableModel.getValueAt(row, 2).toString());

HargaNet.setText(tableModel.getValueAt(row, 3).toString());

HargaJual.setText(tableModel.getValueAt(row, 4).toString());

Stok.setText(tableModel.getValueAt(row, 5).toString());

Save.setEnabled(false);

Update.setEnabled(true);

Delete.setEnabled(true);

SetEditOn();

}

Page 28: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 28

5. Buatlah perintah BersihData,SetEditOff, dan SetEditON disembarang tempat yang memiliki space kosong

seperti berikut ini:

public void BersihData(){

KodeBarang.setText("");

NamaBarang.setText("");

KodeJenis.setSelectedIndex(0);

Jenis.setText("");

HargaNet.setText("");

HargaJual.setText("");

Stok.setText("0");

}

public void SetEditOff(){

KodeBarang.setEnabled(false);

NamaBarang.setEnabled(false);

KodeJenis.setEnabled(false);

HargaNet.setEnabled(false);

HargaJual.setEnabled(false);

Stok.setEnabled(false);

}

public void SetEditOn(){

KodeBarang.setEnabled(true);

NamaBarang.setEnabled(true);

KodeJenis.setEnabled(true);

HargaNet.setEnabled(true);

HargaJual.setEnabled(true);

Stok.setEnabled(true);

}

6. Buatlah kode program AddNew dengan mengklik kanan button AddNew ->evens -> action ->

ActionPerformed.

private void AddNewActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

BersihData();

KodeBarang.requestFocus();

Save.setEnabled(true);

Update.setEnabled(false);

Delete.setEnabled(false);

SetEditOn();

}

Page 29: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 29

7. Buatlah perintah untuk menampilkan data pada kombo jenis dengan mengklik kanan kombojenis ->

events -> item -> itemStateChange.

private void KodeJenisItemStateChanged(java.awt.event.ItemEvent evt) {

// TODO add your handling code here:

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tbljenis where kodejenis='"+

KodeJenis.getSelectedItem().toString()+"'";

ResultSet res = stt.executeQuery(SQL);

res.absolute(1);

Jenis.setText(res.getString("jenis"));

} catch (SQLException ex) {

}

}

8. Butlah kode program tambahan untuk menampilkan data pada kombo kodejenis dengan membuat

private baru seperti berikut.

public void TampilComboJenis(){

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tbljenis";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

KodeJenis.addItem(res.getString("kodejenis"));

}

} catch (SQLException ex) {

}

}

9. Buatlah kode program save dengan mengklik kanan button save ->events -> action -> ActionPerformed.

private void SaveActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String KB=KodeBarang.getText();

String NB=NamaBarang.getText();

String KJ=KodeJenis.getSelectedItem().toString();

Page 30: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 30

String HN=HargaNet.getText();

String HJ=HargaJual.getText();

String ST=Stok.getText();

if ((KB.isEmpty()) | (NB.isEmpty()) |(KJ.isEmpty()) |(HN.isEmpty())|(HJ.isEmpty())|(ST.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

KodeBarang.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "insert into tblbarang values('"+KodeBarang.getText()+"',"+

"'"+NamaBarang.getText()+"',"+

"'"+KodeJenis.getSelectedItem()+"',"+

"'"+HargaNet.getText()+"',"+

"'"+HargaJual.getText()+"',"+

"'"+Stok.getText()+"')";

stt.executeUpdate(SQL);

data[0] = KodeBarang.getText();

data[1] = NamaBarang.getText();

data[2] = KodeJenis.getSelectedItem().toString();

data[3] = HargaNet.getText();

data[4] = HargaJual.getText();

data[5] = Stok.getText();

tableModel.insertRow(0, data);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

10. Buatlah kode program even Click dengan mengklik kanan table(grid) ->evens -> Mouse ->

MouseClicked.

Page 31: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 31

private void tableMouseClicked(java.awt.event.MouseEvent evt) {

// TODO add your handling code here:

if (evt.getClickCount()==1) {

Tampil();

}

}

11. Buatlah kode program Update dengan mengklik kanan button Update ->evens -> action ->

ActionPerformed.

private void UpdateActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String KB=KodeBarang.getText();

String NB=NamaBarang.getText();

String KJ=KodeJenis.getSelectedItem().toString();

String HN=HargaNet.getText();

String HJ=HargaJual.getText();

String ST=Stok.getText();

if ((KB.isEmpty()) | (NB.isEmpty()) |(KJ.isEmpty()) |(HN.isEmpty())|(HJ.isEmpty())|(ST.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

KodeBarang.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "Update tblbarang Set namabarang='"+NamaBarang.getText()+"',"+

"kodejenis='"+KodeJenis.getSelectedItem()+"',"+

"harganet='"+HargaNet.getText()+"',"+

"hargajual='"+HargaJual.getText()+"',"+

"stok='"+Stok.getText()+"'"+

"Where kodebarang='"+KodeBarang.getText()+"'";

stt.executeUpdate(SQL);

data[0] = KodeBarang.getText();

data[1] = NamaBarang.getText();

data[2] = KodeJenis.getSelectedItem().toString();

data[3] = HargaNet.getText();

data[4] = HargaJual.getText();

Page 32: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 32

data[5] = Stok.getText();

tableModel.removeRow(row);

tableModel.insertRow(row,data);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

12. Buatlah kode program Delete dengan mengklik kanan button Delete ->evens -> action ->

ActionPerformed.

private void DeleteActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String KB=KodeBarang.getText();

String NB=NamaBarang.getText();

String KJ=KodeJenis.getSelectedItem().toString();

String HN=HargaNet.getText();

String HJ=HargaJual.getText();

String ST=Stok.getText();

if ((KB.isEmpty()) | (NB.isEmpty()) |(KJ.isEmpty()) |(HN.isEmpty())|(HJ.isEmpty())|(ST.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

KodeBarang.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "Delete From tblbarang Where

kodebarang='"+KodeBarang.getText().toString()+"'";

stt.executeUpdate(SQL);

data[0] = KodeBarang.getText();

data[1] = NamaBarang.getText();

data[2] = KodeJenis.getSelectedItem().toString();

data[3] = HargaNet.getText();

Page 33: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 33

data[4] = HargaJual.getText();

data[5] = Stok.getText();

tableModel.removeRow(row);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

13. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed.

private void CloseActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if(JOptionPane.showConfirmDialog(null,"This application will be close \n if you press button

OK","Information",

JOptionPane.OK_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE)==JOptionPane.OK_OPTI

ON)

this.dispose();

}

14. Buatlah kode program Cancel dengan mengklik kanan button Cancel -> events -> Action ->

ActionPerformed.

private void CancelActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

BersihData();

SetEditOff();

}

15. Jalankan Program kemudian klik menu Data Barang maka akan tampil seperti berikut:

Page 34: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 34

Gambar 1.16 Tampilan Data Barang

Membuat Desain Form Data Petugas

1. Buatlah file baru dalam paket AplikasiPenjualan, dengan cara klik kanan paket Penjualan, Pilih New -> JFrame Form…, sehingga muncul jendela New File.

Gambar 1.17 Membuat Objek Baru

Page 35: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 35

2. Pada jendela New JFrame Form, isikan FrmPetugas pada kotak isian Class Name, dan Package pilih aplikasipenjualan, lalu tekan tombol Finish untuk mengakhiri.

Gambar 1.18 Menentukan Nama Form JFrame Form

Gambar 1.19 Desain Form Baru

Page 36: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 36

3. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini:

Gambar 1.20 Desain Form Data Petugas

Keterangan :

Tabel 1.10 Daftar Propertis yang digunakan

Pallete Propertis

Edit Text Change Variable Name

Label1 ID Petugas jLabel1

Label2 Nama Petugas jLabel2

Label3 Alamat Petugas jLabel3

Label4 E-Mail jLabel4

Label5 Telpon jLabel5

TextField1 - IDPetugas

Text Field2 - NamaPetugas

TextArea1 - Alamat

TextField3 - Email

Page 37: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 37

TextField4 - Telpon

Button1 Add New AddNew

Button2 Save Save

Button3 Update Update

Button4 Delete Delete

Button5 Cancel Cancel

Button6 Close Close

Table - table

Syntax Program

1. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut:

package penjualan;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

2. Pada bagian public class FrmPetugas extends javax.swing.JFrame tambahkan kode berikut:

public class Frmpetugas extends javax.swing.JFrame {

Database dbsetting;

String driver,database,user,pass,userLogin;

private Object tabel;

/** Creates new form Frmpetugas */

public Frmpetugas() {

initComponents();

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

Dimension frameSize=this.getSize();

if(frameSize.height > screenSize.height){

frameSize.height=screenSize.height;

}

if(frameSize.width > screenSize.width){

frameSize.width=screenSize.width;

}

this.setLocation((screenSize.width - frameSize.width) / 2,

(screenSize.height = screenSize.height) / 6);

//setting untuk memanggil koneksi Database.ini

dbsetting = new Database();

Page 38: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 38

driver = dbsetting.SettingPanel("DBDriver");

database = dbsetting.SettingPanel("DBDatabase");

user = dbsetting.SettingPanel("DBUsername");

pass = dbsetting.SettingPanel("DBPassword");

table.setModel(tableModel);

Tabel(table, new int[]{90,300,340,260,100});

setDefaultTable();

SetEditOff();

}

3. Buatlah kode program diatas // Variables declaration - do not modify untuk menampilkan data

pada tabel seperti berikut:

private javax.swing.table.DefaultTableModel tableModel=getDefaultTabelModel();

private void Tabel(javax.swing.JTable tb, int lebar[] ) {

tb.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

int kolom=tb.getColumnCount();

for(int i=0;i < kolom;i++) {

javax.swing.table.TableColumn tbc=tb.getColumnModel().getColumn(i);

tbc.setPreferredWidth(lebar[i]);

tb.setRowHeight(17);

}

}

private javax.swing.table.DefaultTableModel getDefaultTabelModel() {

return new javax.swing.table.DefaultTableModel(

new Object[][] {},

new String [] {"ID Petugas","Nama Petugas","Alamat Petugas","Alamat E-Mail","Telpon"}

){

boolean[] canEdit = new boolean[]{

false, false, false, false

};

public boolean isCellEditable(int rowIndex, int columnIndex){

return canEdit[columnIndex];

}

};

}

Page 39: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 39

String data[]=new String[5];

private void setDefaultTable() {

String stat ="";

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "SELECT * FROM tblpetugas";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

data[0] = res.getString(1);

data[1] = res.getString(2);

data[2] = res.getString(3);

data[3] = res.getString(4);

data[4] = res.getString(5);

tableModel.addRow(data);

}

res.close();

stt.close();

kon.close();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

4. Buatlah kode program untuk menampilkan data yang sudah tersimpan di database, letakkan

disembarang tempat yang memiliki space kosong seperti berikut ini:

int row = 0;

public void Tampil(){

row = table.getSelectedRow();

IDPetugas.setText(tableModel.getValueAt(row, 0).toString());

NamaPetugas.setText(tableModel.getValueAt(row, 1).toString());

Alamat.setText(tableModel.getValueAt(row, 2).toString());

Email.setText(tableModel.getValueAt(row, 3).toString());

Telpon.setText(tableModel.getValueAt(row, 4).toString());

Save.setEnabled(false);

Update.setEnabled(true);

Delete.setEnabled(true);

SetEditOn();

}

Page 40: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 40

5. Buatlah perintah BersihData,SetEditOff, dan SetEditON disembarang tempat yang memiliki space kosong

seperti berikut ini:

public void BersihData(){

IDPetugas.setText("");

NamaPetugas.setText("");

Alamat.setText("");

Email.setText("");

Telpon.setText("");

}

public void SetEditOff(){

IDPetugas.setEnabled(false);

NamaPetugas.setEnabled(false);

Alamat.setEnabled(false);

Email.setEnabled(false);

Telpon.setEnabled(false);

}

public void SetEditOn(){

IDPetugas.setEnabled(true);

NamaPetugas.setEnabled(true);

Alamat.setEnabled(true);

Email.setEnabled(true);

Telpon.setEnabled(true);

}

6. Buatlah kode program AddNew dengan mengklik kanan button AddNew ->evens -> action ->

ActionPerformed.

private void AddNewActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

BersihData();

IDPetugas.requestFocus();

Save.setEnabled(true);

Update.setEnabled(false);

Delete.setEnabled(false);

SetEditOn();

}

Page 41: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 41

7. Buatlah kode program save dengan mengklik kanan button save ->events -> action -> ActionPerformed.

private void SaveActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String ID=IDPetugas.getText();

String NM=NamaPetugas.getText();

String AM=Alamat.getText();

String EM=Email.getText();

String TP=Telpon.getText();

if ((ID.isEmpty()) | (NM.isEmpty()) |(AM.isEmpty()) |(EM.isEmpty())|(TP.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

IDPetugas.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "insert into tblpetugas values('"+IDPetugas.getText()+"',"+

"'"+NamaPetugas.getText()+"',"+

"'"+Alamat.getText()+"',"+

"'"+Email.getText()+"',"+

"'"+Telpon.getText()+"')";

stt.executeUpdate(SQL);

data[0] = IDPetugas.getText();

data[1] = NamaPetugas.getText();

data[2] = Alamat.getText();

data[3] = Email.getText();

data[4] = Telpon.getText();

tableModel.insertRow(0, data);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

Page 42: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 42

8. Buatlah kode program even Click dengan mengklik kanan table(grid) ->evens -> Mouse -> MouseClicked.

private void tableMouseClicked(java.awt.event.MouseEvent evt) {

// TODO add your handling code here:

if (evt.getClickCount()==1) {

Tampil();

}

}

9. Buatlah kode program Update dengan mengklik kanan button Update ->evens -> action ->

ActionPerformed.

private void UpdateActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String ID=IDPetugas.getText();

String NM=NamaPetugas.getText();

String AM=Alamat.getText();

String EM=Email.getText();

String TP=Telpon.getText();

if ((ID.isEmpty()) | (NM.isEmpty()) |(AM.isEmpty()) |(EM.isEmpty())|(TP.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

IDPetugas.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "Update tblpetugas set namapetugas='"+NamaPetugas.getText()+"',"+

"alamat='"+Alamat.getText()+"',"+

"email='"+Email.getText()+"',"+

"telpon='"+Telpon.getText()+"'"+

"Where idpetugas='"+IDPetugas.getText()+"'";

stt.executeUpdate(SQL);

data[0] = IDPetugas.getText();

data[1] = NamaPetugas.getText();

data[2] = Alamat.getText();

data[3] = Email.getText();

data[4] = Telpon.getText();

tableModel.removeRow(row);

Page 43: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 43

tableModel.insertRow(row,data);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

10. Buatlah kode program Delete dengan mengklik kanan button Delete ->evens -> action ->

ActionPerformed.

private void DeleteActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String ID=IDPetugas.getText();

String NM=NamaPetugas.getText();

String AM=Alamat.getText();

String EM=Email.getText();

String TP=Telpon.getText();

if ((ID.isEmpty()) | (NM.isEmpty()) |(AM.isEmpty()) |(EM.isEmpty())|(TP.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

IDPetugas.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "Delete From tblpetugas Where

idpetugas='"+IDPetugas.getText().toString()+"'";

stt.executeUpdate(SQL);

data[0] = IDPetugas.getText();

data[1] = NamaPetugas.getText();

data[2] = Alamat.getText();

data[3] = Email.getText();

data[4] = Telpon.getText();

tableModel.removeRow(row);

Page 44: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 44

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

11. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed.

private void CloseActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if(JOptionPane.showConfirmDialog(null,"This application will be close \n if you press button

OK","Information",

JOptionPane.OK_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE)==JOptionPane.OK_OPTI

ON)

this.dispose();

}

12. Buatlah kode program Cancel dengan mengklik kanan button Cancel -> events -> Action ->

ActionPerformed.

private void CancelActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

BersihData();

SetEditOff();

}

13. Jalankan Program kemudian klik menu Data Petugas maka akan tampil seperti berikut:

Page 45: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 45

Gambar 1.21 Tampilan Form Data Petugas

Membuat Desain Form Data Distributor

1. Buatlah file baru dalam paket AplikasiPenjualan, dengan cara klik kanan paket Penjualan, Pilih New -> JFrame Form…, sehingga muncul jendela New File.

Gambar 1.22 Membuat Objek Baru

2. Pada jendela New JFrame Form, isikan FrmDistributor pada kotak isian Class Name, dan Package pilih aplikasipenjualan, lalu tekan tombol Finish untuk mengakhiri.

Page 46: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 46

Gambar 1.23 Menentukan Nama Form JFrame Form

Gambar 1.24 Desain Form Baru

Page 47: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 47

3. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini:

Gambar 1.25 Desain Form Data Distributor

Keterangan :

Tabel 1.11 Daftar Propertis yang digunakan

Pallete Propertis

Edit Text Change Variable Name

Label1 ID Distributor jLabel1

Label2 Nama Distributor jLabel2

Label3 Alamat Distributor jLabel3

Label4 Kota Asal jLabel4

Label5 E-Mail jLabel5

Label6 Telpon jLabel6

TextField1 - IDDistributor

TextField2 - NamaDistributor

TextArea1 - Alamat

TextField3 - KotaAsal

Page 48: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 48

TextField4 - Email

TextField5 Telpon

Button1 Add New AddNew

Button2 Save Save

Button3 Update Update

Button4 Delete Delete

Button5 Cancel Cancel

Button6 Close Close

Table - table

Syntax Program

1. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut:

package penjualan;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

2. Pada bagian public class FrmDistributor extends javax.swing.JFrame tambahkan kode berikut:

public class Frmdistributor extends javax.swing.JFrame {

Database dbsetting;

String driver,database,user,pass,userLogin;

private Object tabel;

/** Creates new form Frmdistributor */

public Frmdistributor() {

initComponents();

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

Dimension frameSize=this.getSize();

if(frameSize.height > screenSize.height){

frameSize.height=screenSize.height;

}

if(frameSize.width > screenSize.width){

frameSize.width=screenSize.width;

}

this.setLocation((screenSize.width - frameSize.width) / 2,

(screenSize.height = screenSize.height) / 6);

//setting untuk memanggil koneksi Database.ini

Page 49: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 49

dbsetting = new Database();

driver = dbsetting.SettingPanel("DBDriver");

database = dbsetting.SettingPanel("DBDatabase");

user = dbsetting.SettingPanel("DBUsername");

pass = dbsetting.SettingPanel("DBPassword");

table.setModel(tableModel);

Tabel(table, new int[]{90,300,340,260,260,100});

setDefaultTable();

SetEditOff();

}

3. Buatlah kode program diatas // Variables declaration - do not modify untuk menampilkan data

pada tabel seperti berikut:

private javax.swing.table.DefaultTableModel tableModel=getDefaultTabelModel();

private void Tabel(javax.swing.JTable tb, int lebar[] ) {

tb.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

int kolom=tb.getColumnCount();

for(int i=0;i < kolom;i++) {

javax.swing.table.TableColumn tbc=tb.getColumnModel().getColumn(i);

tbc.setPreferredWidth(lebar[i]);

tb.setRowHeight(17);

}

}

private javax.swing.table.DefaultTableModel getDefaultTabelModel() {

return new javax.swing.table.DefaultTableModel(

new Object[][] {},

new String [] {"ID Distributor","Nama Distributor","Alamat Distributor","Kota Asal",

"Alamat E-Mail","Telpon"}

){

boolean[] canEdit = new boolean[]{

false, false, false, false

};

public boolean isCellEditable(int rowIndex, int columnIndex){

return canEdit[columnIndex];

}

};

}

Page 50: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 50

String data[]=new String[6];

private void setDefaultTable() {

String stat ="";

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "SELECT * FROM tbldistributor";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

data[0] = res.getString(1);

data[1] = res.getString(2);

data[2] = res.getString(3);

data[3] = res.getString(4);

data[4] = res.getString(5);

data[5] = res.getString(6);

tableModel.addRow(data);

}

res.close();

stt.close();

kon.close();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

4. Buatlah kode program untuk menampilkan data yang sudah tersimpan di database, letakkan

disembarang tempat yang memiliki space kosong seperti berikut ini:

int row = 0;

public void Tampil(){

row = table.getSelectedRow();

IDDistributor.setText(tableModel.getValueAt(row, 0).toString());

NamaDistributor.setText(tableModel.getValueAt(row, 1).toString());

Alamat.setText(tableModel.getValueAt(row, 2).toString());

KotaAsal.setText(tableModel.getValueAt(row, 3).toString());

Email.setText(tableModel.getValueAt(row, 4).toString());

Telpon.setText(tableModel.getValueAt(row, 5).toString());

Save.setEnabled(false);

Update.setEnabled(true);

Delete.setEnabled(true);

SetEditOn();

}

Page 51: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 51

5. Buatlah perintah BersihData,SetEditOff, dan SetEditON disembarang tempat yang memiliki space kosong

seperti berikut ini:

public void BersihData(){

IDDistributor.setText("");

NamaDistributor.setText("");

Alamat.setText("");

KotaAsal.setText("");

Email.setText("");

Telpon.setText("");

}

public void SetEditOff(){

IDDistributor.setEnabled(false);

NamaDistributor.setEnabled(false);

Alamat.setEnabled(false);

KotaAsal.setEnabled(false);

Email.setEnabled(false);

Telpon.setEnabled(false);

}

public void SetEditOn(){

IDDistributor.setEnabled(true);

NamaDistributor.setEnabled(true);

Alamat.setEnabled(true);

KotaAsal.setEnabled(true);

Email.setEnabled(true);

Telpon.setEnabled(true);

}

6. Buatlah kode program AddNew dengan mengklik kanan button AddNew ->evens -> action ->

ActionPerformed.

private void AddNewActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

BersihData();

IDDistributor.requestFocus();

Save.setEnabled(true);

Update.setEnabled(false);

Delete.setEnabled(false);

SetEditOn();

}

Page 52: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 52

7. Buatlah kode program save dengan mengklik kanan button save ->events -> action -> ActionPerformed.

private void SaveActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String ID=IDDistributor.getText();

String ND=NamaDistributor.getText();

String AM=Alamat.getText();

String KA=KotaAsal.getText();

String EM=Email.getText();

String TP=Telpon.getText();

if ((ID.isEmpty()) | (ND.isEmpty()) |(AM.isEmpty()) |(KA.isEmpty())|(EM.isEmpty())|(TP.isEmpty()))

{

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

IDDistributor.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "insert into tbldistributor values('"+IDDistributor.getText()+"',"+

"'"+NamaDistributor.getText()+"',"+

"'"+Alamat.getText()+"',"+

"'"+KotaAsal.getText()+"',"+

"'"+Email.getText()+"',"+

"'"+Telpon.getText()+"')";

stt.executeUpdate(SQL);

data[0] = IDDistributor.getText();

data[1] = NamaDistributor.getText();

data[2] = Alamat.getText();

data[3] = KotaAsal.getText();

data[4] = Email.getText();

data[5] = Telpon.getText();

tableModel.insertRow(0, data);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

Page 53: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 53

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

8. Buatlah kode program even Click dengan mengklik kanan table(grid) ->evens -> Mouse -> MouseClicked.

private void tableMouseClicked(java.awt.event.MouseEvent evt) {

// TODO add your handling code here:

if (evt.getClickCount()==1) {

Tampil();

}

}

9. Buatlah kode program Update dengan mengklik kanan button Update ->evens -> action ->

ActionPerformed.

private void UpdateActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String ID=IDDistributor.getText();

String ND=NamaDistributor.getText();

String AM=Alamat.getText();

String KA=KotaAsal.getText();

String EM=Email.getText();

String TP=Telpon.getText();

if ((ID.isEmpty()) | (ND.isEmpty()) |(AM.isEmpty())

|(KA.isEmpty())|(EM.isEmpty())|(TP.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

IDDistributor.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "Update tbldistributor Set

namadistributor='"+NamaDistributor.getText()+"',"+

"alamat='"+Alamat.getText()+"',"+

"kotaasal='"+KotaAsal.getText()+"',"+

Page 54: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 54

"email='"+Email.getText()+"',"+

"telpon='"+Telpon.getText()+"'"+

"Where iddistributor='"+IDDistributor.getText()+"'";

stt.executeUpdate(SQL);

data[0] = IDDistributor.getText();

data[1] = NamaDistributor.getText();

data[2] = Alamat.getText();

data[3] = KotaAsal.getText();

data[4] = Email.getText();

data[5] = Telpon.getText();

tableModel.removeRow(row);

tableModel.insertRow(row,data);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

10. Buatlah kode program Delete dengan mengklik kanan button Delete ->evens -> action ->

ActionPerformed.

private void DeleteActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String ID=IDDistributor.getText();

String ND=NamaDistributor.getText();

String AM=Alamat.getText();

String KA=KotaAsal.getText();

String EM=Email.getText();

String TP=Telpon.getText();

if ((ID.isEmpty()) | (ND.isEmpty()) |(AM.isEmpty())

|(KA.isEmpty())|(EM.isEmpty())|(TP.isEmpty()))

{

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

IDDistributor.requestFocus();

}else {

Page 55: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 55

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "Delete From tbldistributor Where

iddistributor='"+IDDistributor.getText().toString()+"'";

stt.executeUpdate(SQL);

data[0] = IDDistributor.getText();

data[1] = NamaDistributor.getText();

data[2] = Alamat.getText();

data[3] = KotaAsal.getText();

data[4] = Email.getText();

data[5] = Telpon.getText();

tableModel.removeRow(row);

stt.close();

kon.close();

BersihData();

Save.setEnabled(false);

SetEditOff();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

11. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed.

private void CloseActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if(JOptionPane.showConfirmDialog(null,"This application will be close \n if you press button

OK","Information",

JOptionPane.OK_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE)==JOptionPane.OK_OPTI

ON)

this.dispose();

}

12. Buatlah kode program Cancel dengan mengklik kanan button Cancel -> events -> Action ->

ActionPerformed.

Page 56: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 56

private void CancelActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

BersihData();

SetEditOff();

}

13. Jalankan Program kemudian klik menu Data Distributor maka akan tampil seperti berikut:

Gambar 1.26 Tampilan Form Data Distributor

Membuat Desain Form Data Barang Masuk

1. Buatlah file baru dalam paket AplikasiPenjualan, dengan cara klik kanan paket Penjualan, Pilih New -> JFrame Form…, sehingga muncul jendela New File.

Page 57: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 57

Gambar 1.27 Membuat Objek Baru

2. Pada jendela New JFrame Form, isikan FrmBrgMasuk pada kotak isian Class Name, dan Package pilih aplikasipenjualan, lalu tekan tombol Finish untuk mengakhiri.

Gambar 1.28 Menentukan Nama Form JFrame Form

Page 58: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 58

Gambar 1.29 Desain Form Baru

3. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini:

Gambar 1.30 Desain Form Data Barang Masuk

Page 59: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 59

Keterangan :

Tabel 1.11 Daftar Propertis yang digunakan

Pallete Propertis

Edit Text Change Variable Name

Label1 Tanggal Barang Masuk jLabel1

Label2 No.Nota jLabel2

Label3 ID Petugas jLabel3

Label4 Nama Petugas jLabel4

Label5 ID Distributor jLabel5

Label6 Nama Distributor jLabel6

Label7 Kota Asal jLabel7

Label8 Kode Barang jLabel8

Label9 Nama Barang jLabel9

Label10 Harga Jual jLabel10

Label11 Stok jLabel11

Label12 Jumlah jLabel12

Label13 Sub Total Rp jLabel13

Label14 Total Rp jLabel14

TextField1 - TglMasuk

TextField2 - NoNota

ComboBox1 - IDPetugas

TextField3 - NamaPetugas

ComboBox2 - IDDistributor

TextField4 - NamaDistributor

TextField5 - KotaAsal

ComboBox3 - KodeBarang

TextField6 - NamaBarang

TextField7 - HargaJual

TextField8 - Stok

TextField9 - Jumlah

TextField10 - SubTotal

TextField11 - Total

Button1 Cari Data CariData

Button2 Hitung Hitung

Button3 Add Item AddItem

Button4 Add New AddNew

Button5 Save Transaction SaveTransaction

Button6 Close Close

Table - table

Page 60: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 60

Syntax Program

1. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut:

package penjualan;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

2. Pada bagian public class FrmBrgMasuk extends javax.swing.JFrame tambahkan kode berikut:

public class FrmBrgMasuk extends javax.swing.JFrame {

Database dbsetting;

String driver,database,user,pass,userLogin;

private Object tabel;

/** Creates new form FrmBrgMasuk */

public FrmBrgMasuk() {

initComponents();

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

Dimension frameSize=this.getSize();

if(frameSize.height > screenSize.height){

frameSize.height=screenSize.height;

}

if(frameSize.width > screenSize.width){

frameSize.width=screenSize.width;

}

this.setLocation((screenSize.width - frameSize.width) / 2,

(screenSize.height = screenSize.height) / 10);

//setting untuk memanggil koneksi Database.ini

dbsetting = new Database();

driver = dbsetting.SettingPanel("DBDriver");

database = dbsetting.SettingPanel("DBDatabase");

user = dbsetting.SettingPanel("DBUsername");

pass = dbsetting.SettingPanel("DBPassword");

table.setModel(tableModel);

Tabel(table, new int[]{90,300,90,60,60,90});

setDefaultTable();

SetEditOff();

TanggalOtomatis();

Page 61: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 61

TampilComboBarang();

TampilComboPetugas();

TampilComboDistributor();

}

3. Buatlah kode program diatas // Variables declaration - do not modify untuk menampilkan data

pada tabel seperti berikut:

private javax.swing.table.DefaultTableModel tableModel=getDefaultTabelModel();

private void Tabel(javax.swing.JTable tb, int lebar[] ) {

tb.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

int kolom=tb.getColumnCount();

for(int i=0;i < kolom;i++) {

javax.swing.table.TableColumn tbc=tb.getColumnModel().getColumn(i);

tbc.setPreferredWidth(lebar[i]);

tb.setRowHeight(17);

}

}

private javax.swing.table.DefaultTableModel getDefaultTabelModel() {

return new javax.swing.table.DefaultTableModel(

new Object[][] {},

new String [] {"Kode Barang","Nama Barang","Harga Jual","Stok","Jumlah","Sub Total"}

){

boolean[] canEdit = new boolean[]{

false, false, false, false

};

public boolean isCellEditable(int rowIndex, int columnIndex){

return canEdit[columnIndex];

}

};

}

Page 62: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 62

String data[]=new String[6];

private void setDefaultTable() {

String stat ="";

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "SELECT tblbarang.kodebarang,tblbarang.namabarang,tblbarang.hargajual," +

"tblbarang.stok,tbldetailbrgmasuk.jumlah,tbldetailbrgmasuk.subtotal,tblbrgmasuk.nonota " +

"FROM tblbarang,tbldetailbrgmasuk,tblbrgmasuk WHERE

tblbarang.kodebarang=tbldetailbrgmasuk.kodebarang " +

"AND tblbrgmasuk.nonota=tbldetailbrgmasuk.nonota" +

"AND tbldetailbrgmasuk.nonota='"+NoNota.getText()+"'";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

data[0] = res.getString(1);

data[1] = res.getString(2);

data[2] = res.getString(3);

data[3] = res.getString(4);

data[4] = res.getString(5);

data[5] = res.getString(6);

tableModel.addRow(data);

}

res.close();

stt.close();

kon.close();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

4. Buatlah private baru TampilGridDetail kemudian buat kode program seperti berikut:

private void TampilGridDetail(){

String stat ="";

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "SELECT tblbarang.kodebarang,tblbarang.namabarang,tblbarang.hargajual," +

"tblbarang.stok,tbldetailbrgmasuk.jumlah,tbldetailbrgmasuk.subtotal,tblbrgmasuk.nonota " +

Page 63: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 63

"FROM tblbarang,tbldetailbrgmasuk,tblbrgmasuk WHERE

tblbarang.kodebarang=tbldetailbrgmasuk.kodebarang " +

"AND tblbrgmasuk.nonota=tbldetailbrgmasuk.nonota " +

"AND tbldetailbrgmasuk.nonota='"+NoNota.getText().toString()+"'";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

data[0] = res.getString(1);

data[1] = res.getString(2);

data[2] = res.getString(3);

data[3] = res.getString(4);

data[4] = res.getString(5);

data[5] = res.getString(6);

tableModel.addRow(data);

}

res.close();

stt.close();

kon.close();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

5. Buatlah perintah BersihData,BersihDetail,SetEditOff, dan SetEditON disembarang tempat yang memiliki

space kosong seperti berikut ini:

public void BersihData(){

tableModel.setRowCount(0);

NoNota.setText("");

IDDistributor.setSelectedIndex(0);

NamaPetugas.setText("");

IDPetugas.setSelectedIndex(0);

NamaDistributor.setText("");

KotaAsal.setText("");

KodeBarang.setSelectedIndex(0);

NamaBarang.setText("");

HargaJual.setText("");

Jumlah.setText("");

Stok.setText("");

SubTotal.setText("0");

Total.setText("0");

}

Page 64: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 64

public void BersihDetail(){

KodeBarang.setSelectedIndex(0);

NamaBarang.setText("");

HargaJual.setText("");

Stok.setText("");

Jumlah.setText("");

SubTotal.setText("0");

}

public void SetEditOff(){

NoNota.setEnabled(false);

TglMasuk.setEnabled(false);

IDDistributor.setEnabled(false);

IDPetugas.setEnabled(false);

KodeBarang.setEnabled(false);

Jumlah.setEnabled(false);

Hitung.setEnabled(false);

CariData.setEnabled(false);

AddItem.setEnabled(false);

}

public void SetEditOn(){

NoNota.setEnabled(true);

TglMasuk.setEnabled(true);

IDDistributor.setEnabled(true);

IDPetugas.setEnabled(true);

KodeBarang.setEnabled(true);

Jumlah.setEnabled(true);

SaveTransaction.setEnabled(true);

CariData.setEnabled(true);

Hitung.setEnabled(true);

AddItem.setEnabled(true);

}

6. Buatlah kode program pada kombobox idpetugas dengan cara klik kanan pilih events -> item ->

itemStatChanged.

private void IDPetugasItemStateChanged(java.awt.event.ItemEvent evt) {

// TODO add your handling code here:

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Page 65: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 65

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblpetugas where idpetugas='"+

IDPetugas.getSelectedItem().toString()+"'";

ResultSet res = stt.executeQuery(SQL);

res.absolute(1);

NamaPetugas.setText(res.getString("namapetugas"));

} catch (SQLException ex) {

}

}

7. Buatlah private baru untuk menampilakn data pada kombobox idpetugas seperti berikut:

public void TampilComboPetugas(){

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblpetugas";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

IDPetugas.addItem(res.getString("idpetugas"));

}

} catch (SQLException ex) {

}

}

8. Buatlah kode program pada kombobox iddistributor dengan cara klik kanan pilih events -> item ->

itemStatChanged.

private void IDDistributorItemStateChanged(java.awt.event.ItemEvent evt) {

// TODO add your handling code here:

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tbldistributor where iddistributor='"+

IDDistributor.getSelectedItem().toString()+"'";

ResultSet res = stt.executeQuery(SQL);

res.absolute(1);

NamaDistributor.setText(res.getString("namadistributor"));

KotaAsal.setText(res.getString("kotaasal"));

Page 66: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 66

} catch (SQLException ex) {

}

}

9. Buatlah private baru untuk menampilakn data pada kombobox iddistributor seperti berikut:

public void TampilComboDistributor(){

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tbldistributor";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

IDDistributor.addItem(res.getString("iddistributor"));

}

} catch (SQLException ex) {

}

}

10. Buatlah kode program pada kombobox kodebarang dengan cara klik kanan pilih events -> item ->

itemStatChanged.

private void KodeBarangItemStateChanged(java.awt.event.ItemEvent evt) {

// TODO add your handling code here:

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblbarang where kodebarang='"+

KodeBarang.getSelectedItem().toString()+"'";

ResultSet res = stt.executeQuery(SQL);

res.absolute(1);

NamaBarang.setText(res.getString("namabarang"));

HargaJual.setText(res.getString("hargajual"));

Stok.setText(res.getString("stok"));

} catch (SQLException ex) {

}

Jumlah.requestFocus();

AddItem.setEnabled(true);

}

Page 67: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 67

11. Buatlah private baru untuk menampilakn data pada kombobox iddistributor seperti berikut:

public void TampilComboBarang(){

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblbarang";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

KodeBarang.addItem(res.getString("kodebarang"));

}

} catch (SQLException ex) {

}

}

12. Buatlah private baru untuk menampilkan tanggal otomatis seperti berikut:

public void TanggalOtomatis(){

Date tanggal = new Date();

TglMasuk.setText(""+ (String.format("%1$td:%1$tb:%1$tY",tanggal)));

}

13. Buatlah kode program untuk menampilkan perhitungan subtotal dengan mengkilik button hitung ->

events -> action -> ActionPerformed.

private void HitungActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

int a;

int b;

double c;

a = Integer.parseInt(HargaJual.getText());

b = Integer.parseInt(Jumlah.getText());

c = a * b;

SubTotal.setText(String.valueOf(c));

}

14. Buatlah kode program untuk menampilkan total dengan cara klik kanan textfield subtotal -> events ->

charet -> charetUpdate.

Page 68: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 68

private void SubTotalCaretUpdate(javax.swing.event.CaretEvent evt) {

// TODO add your handling code here:

double d, e;

d = Double.parseDouble(SubTotal.getText());

e = Double.parseDouble(Total.getText());

e = e+d;

Total.setText(String.valueOf(e));

}

15. Buatlah kode program AddNew dengan mengklik kanan button AddNew ->events -> action ->

ActionPerformed.

private void AddNewActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

SetEditOn();

NoNota.requestFocus();

BersihData();

}

16. Buatlah kode program Add Item dengan mengklik kanan button save ->events -> action ->

ActionPerformed.

private void AddItemActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String NM=NoNota.getText();

String KB=KodeBarang.getSelectedItem().toString();

String JM=Jumlah.getText();

if ((NM.isEmpty()) | (KB.isEmpty()) |(JM.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

KodeBarang.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "insert into tbldetailbrgmasuk values('"+NoNota.getText()+"',"+

"'"+KodeBarang.getSelectedItem()+"',"+

"'"+Jumlah.getText()+"',"+

"'"+SubTotal.getText()+"')";

stt.executeUpdate(SQL);

Page 69: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 69

Class.forName(driver);

Connection kon1 = DriverManager.getConnection(database,user,pass);

Statement stt1 = kon.createStatement();

String SQL1 = "Update tblbarang Set stok=stok + '"+Jumlah.getText()+"'" +

"Where kodebarang='"+KodeBarang.getSelectedItem().toString()+"'";

stt1.executeUpdate(SQL1);

data[0] = KodeBarang.getSelectedItem().toString();

data[1] = NamaBarang.getText();

data[2] = HargaJual.getText();

data[3] = Stok.getText();

data[4] = Jumlah.getText();

data[5] = SubTotal.getText();

tableModel.insertRow(0, data);

stt.close();

kon.close();

KodeBarang.requestFocus();

AddItem.setEnabled(false);

BersihDetail();

//TampilGrid();

KodeBarang.requestFocus();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

Page 70: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 70

17. Buatlah kode program SaveTransaction dengan mengklik kanan button save ->events -> action ->

ActionPerformed.

private void SaveTransactionActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String NM=NoNota.getText();

if ((NM.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

NoNota.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "insert into tblbrgmasuk values('"+NoNota.getText()+"',"+

"'"+TglMasuk.getText()+"',"+

"'"+IDDistributor.getSelectedItem()+"',"+

"'"+IDPetugas.getSelectedItem()+"',"+

"'"+Total.getText()+"')";

stt.executeUpdate(SQL);

stt.close();

kon.close();

BersihData();

SetEditOff();

SaveTransaction.setEnabled(false);

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

Page 71: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 71

18. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed.

private void CloseActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if(JOptionPane.showConfirmDialog(null,"This application will be close \n if you press button

OK","Information",

JOptionPane.OK_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE)==JOptionPane.OK_OPTI

ON)

this.dispose();

}

19. Buatlah kode program Cari Data dengan mengklik kanan button Cancel -> events -> Action ->

ActionPerformed.

private void CariDataActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblbrgmasuk where nonota='"+NoNota.getText().toString()+"'";

ResultSet res = stt.executeQuery(SQL);

res.absolute(1);

TglMasuk.setText(res.getString("tglmasuk"));

IDPetugas.setSelectedItem(res.getString("idpetugas"));

IDDistributor.setSelectedItem(res.getString("iddistributor"));

Total.setText(res.getString("total"));

TampilGridDetail();

SaveTransaction.setEnabled(false);

NoNota.setEnabled(false);

CariData.setEnabled(false);

} catch (SQLException ex) {

}

}

Page 72: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 72

20. Jalankan Program kemudian klik menu Data Barang Masuk maka akan tampil seperti berikut:

Gambar 1.31 Tampilan Form Data Barang Masuk

Membuat Desain Form Data Penjualan

1. Buatlah file baru dalam paket AplikasiPenjualan, dengan cara klik kanan paket Penjualan, Pilih New -> JFrame Form…, sehingga muncul jendela New File.

Gambar 1.32 Membuat Objek Baru

Page 73: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 73

2. Pada jendela New JFrame Form, isikan FrmPenjualan pada kotak isian Class Name, dan Package pilih aplikasipenjualan, lalu tekan tombol Finish untuk mengakhiri.

Gambar 1.33 Menentukan Nama Form JFrame Form

Gambar 1.34 Desain Form Baru

Page 74: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 74

3. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini:

Gambar 1.35 Desain Form Data Penjualan Barang

Keterangan :

Tabel 1.12 Daftar Propertis yang digunakan

Pallete Propertis

Edit Text Change Variable Name

Label1 Tanggal Penjualan jLabel1

Label2 No.Faktur jLabel2

Label3 ID Petugas jLabel3

Label4 Nama Petugas jLabel4

Label5 Kode Barang jLabel8

Label6 Nama Barang jLabel9

Label7 Harga Jual jLabel10

Label8 Stok jLabel11

Label9 Jumlah jLabel12

Label10 Sub Total Rp jLabel13

Label11 Total Rp jLabel14

TextField1 - TglPenjualan

TextField2 - NoFaktur

ComboBox1 - IDPetugas

TextField3 - NamaPetugas

ComboBox2 - KodeBarang

Page 75: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 75

Syntax Program

1. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut:

package penjualan;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

2. Pada bagian public class FrmBrgMasuk extends javax.swing.JFrame tambahkan kode berikut:

public class FrmPenjualan extends javax.swing.JFrame {

Database dbsetting;

String driver,database,user,pass,userLogin;

private Object tabel;

/** Creates new form FrmPenjualan */

public FrmPenjualan() {

initComponents();

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

Dimension frameSize=this.getSize();

if(frameSize.height > screenSize.height){

frameSize.height=screenSize.height;

}

if(frameSize.width > screenSize.width){

frameSize.width=screenSize.width;

}

TextField4 - NamaBarang

TextField5 - HargaJual

TextField6 - Stok

TextField7 - Jumlah

TextField8 - SubTotal

TextField9 - Total

Button1 Cari Data CariData

Button2 Hitung Hitung

Button3 Add Item AddItem

Button4 Add New AddNew

Button5 Save Transaction SaveTransaction

Button6 Close Close

Table - table

Page 76: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 76

this.setLocation((screenSize.width - frameSize.width) / 2,

(screenSize.height = screenSize.height) / 10);

//setting untuk memanggil koneksi Database.ini

dbsetting = new Database();

driver = dbsetting.SettingPanel("DBDriver");

database = dbsetting.SettingPanel("DBDatabase");

user = dbsetting.SettingPanel("DBUsername");

pass = dbsetting.SettingPanel("DBPassword");

table.setModel(tableModel);

Tabel(table, new int[]{90,300,90,60,60,90});

setDefaultTable();

TanggalOtomatis();

SetEditOff();

TampilComboBarang();

TampilComboPetugas();

}

3. Buatlah kode program diatas // Variables declaration - do not modify untuk menampilkan data

pada tabel seperti berikut:

private javax.swing.table.DefaultTableModel tableModel=getDefaultTabelModel();

private void Tabel(javax.swing.JTable tb, int lebar[] ) {

tb.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

int kolom=tb.getColumnCount();

for(int i=0;i < kolom;i++) {

javax.swing.table.TableColumn tbc=tb.getColumnModel().getColumn(i);

tbc.setPreferredWidth(lebar[i]);

tb.setRowHeight(17);

}

}

private javax.swing.table.DefaultTableModel getDefaultTabelModel() {

return new javax.swing.table.DefaultTableModel(

new Object[][] {},

new String [] {"Kode Barang","Nama Barang","Harga Jual","Stok","Jumlah","Sub Total"}

){

boolean[] canEdit = new boolean[]{

false, false, false, false

};

public boolean isCellEditable(int rowIndex, int columnIndex){

Page 77: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 77

return canEdit[columnIndex];

}

};

}

String data[]=new String[6];

private void setDefaultTable() {

String stat ="";

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "SELECT tblbarang.kodebarang,tblbarang.namabarang,tblbarang.hargajual," +

"tblbarang.stok,tbldetailpenjualan.jumlah,tbldetailpenjualan.subtotal,tblpenjualan.nofaktur " +

"FROM tblbarang,tbldetailpenjualan,tblpenjualan WHERE

tblbarang.kodebarang=tbldetailpenjualan.kodebarang " +

"AND tblpenjualan.nofaktur=tbldetailpenjualan.nofaktur" +

"AND tbldetailpenjualan.nofaktur='"+NoFaktur.getText()+"'";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

data[0] = res.getString(1);

data[1] = res.getString(2);

data[2] = res.getString(3);

data[3] = res.getString(4);

data[4] = res.getString(5);

data[5] = res.getString(6);

tableModel.addRow(data);

}

res.close();

stt.close();

kon.close();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

Page 78: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 78

4. Buatlah private baru TampilGridDetail kemudian buat kode program seperti berikut:

private void TampilGridDetail(){

String stat ="";

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "SELECT tblbarang.kodebarang,tblbarang.namabarang,tblbarang.hargajual,"

+"tblbarang.stok,tbldetailpenjualan.jumlah,tbldetailpenjualan.subtotal,tblpenjualan.nofaktur " +

"FROM tblbarang, tbldetailpenjualan, tblpenjualan " +

"WHERE tblbarang.kodebarang=tbldetailpenjualan.kodebarang " +

"AND tblpenjualan.nofaktur=tbldetailpenjualan.nofaktur " +

"AND tbldetailpenjualan.nofaktur='" + NoFaktur.getText().toString() + "'";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

data[0] = res.getString(1);

data[1] = res.getString(2);

data[2] = res.getString(3);

data[3] = res.getString(4);

data[4] = res.getString(5);

data[5] = res.getString(6);

tableModel.addRow(data);

}

res.close();

stt.close();

kon.close();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

5. Buatlah perintah BersihData,BersihDetail,SetEditOff, dan SetEditON disembarang tempat yang memiliki

space kosong seperti berikut ini:

public void BersihData(){

tableModel.setRowCount(0);

NoFaktur.setText("");

NamaPetugas.setText("");

IDPetugas.setSelectedIndex(0);

KodeBarang.setSelectedIndex(0);

NamaBarang.setText("");

Page 79: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 79

HargaJual.setText("");

Jumlah.setText("");

Stok.setText("");

Bayar.setText("0");

Sisa.setText("0");

Total.setText("0");

SubTotal.setText("0");

}

public void BersihDetail(){

KodeBarang.setSelectedIndex(0);

NamaBarang.setText("");

HargaJual.setText("");

Stok.setText("");

Jumlah.setText("");

SubTotal.setText("0");

}

public void SetEditOff(){

NoFaktur.setEnabled(false);

TglPenjualan.setEnabled(false);

IDPetugas.setEnabled(false);

KodeBarang.setEnabled(false);

Jumlah.setEnabled(false);

Hitung.setEnabled(false);

CariData.setEnabled(false);

AddItem.setEnabled(false);

}

public void SetEditOn(){

NoFaktur.setEnabled(true);

TglPenjualan.setEnabled(true);

IDPetugas.setEnabled(true);

KodeBarang.setEnabled(true);

Jumlah.setEnabled(true);

SaveTransaction.setEnabled(true);

CariData.setEnabled(true);

Hitung.setEnabled(true);

AddItem.setEnabled(true);

}

Page 80: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 80

6. Buatlah kode program pada kombobox idpetugas dengan cara klik kanan pilih events -> item ->

itemStatChanged.

private void IDPetugasItemStateChanged(java.awt.event.ItemEvent evt) {

// TODO add your handling code here:

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblpetugas where idpetugas='"+

IDPetugas.getSelectedItem().toString()+"'";

ResultSet res = stt.executeQuery(SQL);

res.absolute(1);

NamaPetugas.setText(res.getString("namapetugas"));

} catch (SQLException ex) {

}

}

7. Buatlah private baru untuk menampilakn data pada kombobox idpetugas seperti berikut:

public void TampilComboPetugas(){

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblpetugas";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

IDPetugas.addItem(res.getString("idpetugas"));

}

} catch (SQLException ex) {

}

}

8. Buatlah kode program pada kombobox kodebarang dengan cara klik kanan pilih events -> item ->

itemStatChanged.

Page 81: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 81

private void KodeBarangItemStateChanged(java.awt.event.ItemEvent evt) {

// TODO add your handling code here:

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblbarang where kodebarang='"+

KodeBarang.getSelectedItem().toString()+"'";

ResultSet res = stt.executeQuery(SQL);

res.absolute(1);

NamaBarang.setText(res.getString("namabarang"));

HargaJual.setText(res.getString("hargajual"));

Stok.setText(res.getString("stok"));

} catch (SQLException ex) {

}

Jumlah.requestFocus();

AddItem.setEnabled(true);

}

9. Buatlah private baru untuk menampilakn data pada kombobox iddistributor seperti berikut:

public void TampilComboBarang(){

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblbarang";

ResultSet res = stt.executeQuery(SQL);

while(res.next()){

KodeBarang.addItem(res.getString("kodebarang"));

}

} catch (SQLException ex) {

}

}

10. Buatlah private baru untuk menampilkan tanggal otomatis seperti berikut:

public void TanggalOtomatis(){

Date tanggal = new Date();

TglPenjualan.setText(""+ (String.format("%1$td:%1$tb:%1$tY",tanggal)));

}

Page 82: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 82

11. Buatlah kode program untuk menampilkan perhitungan subtotal dengan mengkilik button hitung ->

events -> action -> ActionPerformed.

private void HitungActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

int a;

int b;

double c;

a = Integer.parseInt(HargaJual.getText());

b = Integer.parseInt(Jumlah.getText());

c = a * b;

SubTotal.setText(String.valueOf(c));

}

12. Buatlah kode program untuk menampilkan total dengan cara klik kanan textfield subtotal -> events ->

charet -> charetUpdate.

private void SubTotalCaretUpdate(javax.swing.event.CaretEvent evt) {

// TODO add your handling code here:

double d, e;

d = Double.parseDouble(SubTotal.getText());

e = Double.parseDouble(Total.getText());

e = e+d;

Total.setText(String.valueOf(e));

}

13. Buatlah kode program untuk menampilkan perhitungan sisa bayar dengan cara klik kanan textfield bayar -

> events -> charet -> charetUpdate.

private void BayarCaretUpdate(javax.swing.event.CaretEvent evt) {

// TODO add your handling code here:

double a;

double b;

double c;

a = Double.parseDouble(Bayar.getText());

b = Double.parseDouble(Total.getText());

c = a - b;

Sisa.setText(String.valueOf(c));

}

Page 83: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 83

14. Buatlah kode program AddNew dengan mengklik kanan button AddNew ->events -> action ->

ActionPerformed.

private void AddNewActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

SetEditOn();

NoFaktur.requestFocus();

BersihData();

}

15. Buatlah kode program Add Item dengan mengklik kanan button save ->events -> action ->

ActionPerformed.

private void AddItemActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String NM=NoFaktur.getText();

String KB=KodeBarang.getSelectedItem().toString();

String JM=Jumlah.getText();

if ((NM.isEmpty()) | (KB.isEmpty()) |(JM.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

KodeBarang.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "insert into tbldetailpenjualan values('"+NoFaktur.getText()+"',"+

"'"+KodeBarang.getSelectedItem()+"',"+

"'"+Jumlah.getText()+"',"+

"'"+SubTotal.getText()+"')";

stt.executeUpdate(SQL);

Class.forName(driver);

Connection kon1 = DriverManager.getConnection(database,user,pass);

Statement stt1 = kon.createStatement();

String SQL1 = "Update tblbarang Set stok=stok - '"+Jumlah.getText()+"'" +

"Where kodebarang='"+KodeBarang.getSelectedItem().toString()+"'";

stt1.executeUpdate(SQL1);

data[0] = KodeBarang.getSelectedItem().toString();

data[1] = NamaBarang.getText();

Page 84: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 84

data[2] = HargaJual.getText();

data[3] = Stok.getText();

data[4] = Jumlah.getText();

data[5] = SubTotal.getText();

tableModel.insertRow(0, data);

stt.close();

kon.close();

KodeBarang.requestFocus();

AddItem.setEnabled(false);

BersihDetail();

KodeBarang.requestFocus();

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

16. Buatlah kode program SaveTransaction dengan mengklik kanan button save ->events -> action ->

ActionPerformed.

private void SaveTransactionActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String NM=NoFaktur.getText();

if ((NM.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi");

NoFaktur.requestFocus();

}else {

try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement();

String SQL = "insert into tblpenjualan values('"+NoFaktur.getText()+"',"+

"'"+TglPenjualan.getText()+"',"+

"'"+IDPetugas.getSelectedItem()+"',"+

"'"+Bayar.getText()+"',"+

"'"+Sisa.getText()+"',"+

"'"+Total.getText()+"')";

stt.executeUpdate(SQL);

stt.close();

Page 85: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 85

kon.close();

BersihData();

SetEditOff();

SaveTransaction.setEnabled(false);

} catch (Exception ex) {

System.err.println(ex.getMessage());

}

}

}

17. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed.

private void CloseActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if(JOptionPane.showConfirmDialog(null,"This application will be close \n if you press button

OK","Information",

JOptionPane.OK_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE)==JOptionPane.OK_OPTI

ON)

this.dispose();

}

18. Buatlah kode program Cari Data dengan mengklik kanan button Cancel -> events -> Action ->

ActionPerformed.

private void CariDataActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

try {

Connection kon = DriverManager.getConnection(database,user,pass);

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblpenjualan where

nofaktur='"+NoFaktur.getText().toString()+"'";

ResultSet res = stt.executeQuery(SQL);

res.absolute(1);

TampilGridDetail();

TglPenjualan.setText(res.getString("tglpenjualan"));

IDPetugas.setSelectedItem(res.getString("idpetugas"));

Bayar.setText(res.getString("bayar"));

Sisa.setText(res.getString("sisa"));

Total.setText(res.getString("total"));

SaveTransaction.setEnabled(false);

NoFaktur.setEnabled(false);

Page 86: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 86

CariData.setEnabled(false);

} catch (SQLException ex) {

}

}

19. Buatlah kode program Cancel dengan mengklik kanan button Cancel -> events -> Action ->

ActionPerformed.

private void CancelActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

BersihData();

SetEditOff();

}

20. Jalankan Program kemudian klik menu DataBarang Masuk maka akan tampil seperti berikut:

Gambar 1.36 Tampilan Form Data Penjualan Barang

Page 87: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 87

Membuat Menu Utama

1. Buatlah file baru dalam paket AplikasiPenjualan, dengan cara klik kanan paket Penjualan, Pilih New -> JFrame Form…, sehingga muncul jendela New File.

Gambar 1.37 Membuat Objek Baru

2. Pada jendela New JFrame Form, isikan FrmDistributor pada kotak isian Class Name, dan Package pilih aplikasipenjualan, lalu tekan tombol Finish untuk mengakhiri.

Gambar 1.38 Menentukan Nama Form JFrame Form

Page 88: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 88

Gambar 1.39 Desain Form Baru

3. Untuk membuat menu anda pilih Pallete pilih Swing Menus ->MenuBar kemudian anda drag kedalam form yang sudah anda persiapkan.

Gambar 1.40 Tampilan Palette

Page 89: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 89

Gambar 1.41 Tampilan Menu Bar yang sudah diletakkan di dalam form

1. Pada Swing Menus pilihlah MenuItem kemudian anda drag ke dalam Menu Bar File

Gambar 1.42 Tampilan Menu Item pada saat di drag

Page 90: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 90

Gambar 1.43 Tampilan Menu Item Setelah diletakkan pada menu file

2. Setelah anda paham buatlah menu seperti gambar dibawah ini:

Menu File

Gambar 1.44 Tampilan Menu File

Menu Transaksi

Gambar 1.45 Tampilan Menu Transaksi

Page 91: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 91

Menu Report

Gambar 1.46 Tampilan Menu Report

Keterangan :

Tabel 1.12 Daftar Propertis yang digunakan

Pallete Propertis

Edit Text Change Variable Name

Menu Bar1 File jMenu1

Menu Item1 Data Jenis Barang MenuJenisBarang

Menu Item2 Data Barang MenuBarang

Menu Item3 Data Distributor MenuDistributor

Menu Item4 Data Petugas MenuPetugas

Menu Item5 Exit MenuExit

Menu Bar2 Transaksi jMenu2

Menu Item1 Data Barang Masuk MenuBarangMasuk

Menu Item2 Data Penjualan Barang MenuPenjualan

Menu Bar3 Report jMenu3

Menu Item1 Daftar Report Daftar Report

Syntax Program

1. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data

jenis barang ->events ->Action -> ActionPerformed.

private void MenuJenisBarangActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

new FrmJenis().setVisible(true);

}

Page 92: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 92

2. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data

barang ->events ->Action -> ActionPerformed.

private void MenuBarangActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

new FrmBarang().setVisible(true);

}

3. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data

distributor ->events ->Action -> ActionPerformed.

private void MenuDistributorActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

new Frmdistributor().setVisible(true);

}

4. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data

petugas ->events ->Action -> ActionPerformed.

private void MenuPetugasActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

new Frmpetugas().setVisible(true);

}

5. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data

barang masuk ->events ->Action -> ActionPerformed.

private void MenuBarangMasukActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

new FrmBrgMasuk().setVisible(true);

}

Page 93: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 93

6. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data

penjualan barang ->events ->Action -> ActionPerformed.

private void MenuPenjualanActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

new FrmPenjualan().setVisible(true);

}

MEMBUAT LAPORAN

Jika program aplikasi sudah selesai dibuat, kini giliran kita membuat halaman laporan dari

semua data yang ada. Berikut selengkapnya.

Mengenal JasperReport

JasperReport adalah sebuah tool yang sangat powerfull untuk membuat laporan dalam bentuk

PDF,HTML,XLS,RTF,ODT,CSV,TXT dan XML. Dengan kemampuan dan fleksibilitasnya yang sangat

tinggi, anda bisa membuat berbagai laporan berbentuk Chart, Crosstabs, Subreport, dan

kemampuan lain yang anda butuhkan.

Komponen yang Digunakan Untuk Membuat Report :

Silahkan klik kanan Libraries pilih Add JAR/Folder maka akan tampil seperti berikut:

Gambar 1.47 direktory Add JAR/Folder

Adapun file-file Jasper Report Engine yang harus dipilih adalah sebagai berikut:

Page 94: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 94

Jasperreport-2.0.5.jar pada direktori d:\Aplikasi Penjualan\AplikasiPenjualan\lib

Commons-beanutils-1.7.jar pada direktori d:\ Aplikasi Penjualan

\AplikasiPenjualan\lib

Commons-collections-2.1.jar pada direktori d:\ Aplikasi Penjualan

\AplikasiPenjualan\lib

Commons-digester-1.7.jar pada direktori d:\ Aplikasi Penjualan

\AplikasiPenjualan\lib

Commons-logging-1.0.2.jar pada direktori d:\ Aplikasi Penjualan

\AplikasiPenjualan\lib

Commons-logging-api-1.0.2.jar pada direktori d:\ Aplikasi Penjualan

\AplikasiPenjualan\lib

Commons-javaflow-20060411.jar pada direktori d:\ Aplikasi Penjualan

\AplikasiPenjualan\lib

Jdt-compiler-3.1.1.jar pada direktori d:\ Aplikasi Penjualan

\AplikasiPenjualan\lib

Setelah anda mengambil semua file yang dibutuhkan seperti diatas maka langkah selanjutnya

anda harus melakukan pengidentifikasian berkas jrxml pada NetBeans dengan cara berikut:

Buka menu tools -> Options, sehingga muncul jendela Options. Pada jendela tersebut

klik Advanced Option, sehingga muncul jendela Advanced Options.

Dalam jendela Advanced Options, perhatikan sebelah kiri, pilih pada node IDE

Configuration -> System -> Object Types -> XML Objects.

Masih pada jendela Advanced Options, lihat jendela bagian kanan. Ada properti

Extensions anda MIME Types, tekan pada tombol… yang ada di sampingnya, sehingga

muncul jendela XML Object – Extensions and MIME Types. Pada kotak isian item,

masukkan jrxml, kemudian tean Add, sehingga jrxml tersebut masuk dalam daftar item

List, lalu klik tombol OK. Dan tutup jendela-jendela Options tersebut.

Page 95: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 95

Gambar 1.48 Berkas yang Dikenali Editor NetBeans

Mengenal IReports IReport adalah sebuah tool yang digunakan untuk membuat desain laporan pada JasperReports. Artinya, dengan fasilitas ini anda bisa membuat report dengan drag and drop, bahkan secara otomatis (wizard). Sama dengan JasperReports, program ini lagi-lagi open source. Pembuat program ini adalah Giulio Toffoli pada tahun 2005. Anda bisa mendapatkan informasi dan distribusi filenya pada alamat http://ireport.sourceforget.net.

Instalasi IReport dan Konfigurasi Databasenya

Untuk menginstal IReport sebelumnya anda harus mempunya file install JasperReport, jika

sudah ada silahkan klik ganda file IReport-nb-0.9.1-windows-installer.exe. ini adalah distribusi

yang mendukung NetBeans. Jadi, sangat memudahkan pengguna NetBeans.

Gambar 1.49 Jendela Permulaan Pemasangan IReport

Page 96: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 96

Gambar 1.50 Jendela Lisensi IReport

Gambar 1.51 Jendela Pemilihan Feature IReport

Page 97: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 97

Gambar 1.52 Jendela Lokasi Program File IReport Silahkan anda lanjutkan dengan mengklik tombol Next dan ikuti semua dialognya sampai selesai. Jalankan program iReport dengan cara masuk ke dalam Start menu Windows. Pilih JasperSoft -> iReport-nb-0.9.1 -> iReport-nb-0.9.1, sehingga muncul jendela pembuka seperti pada gambar berkut diikuti dengan halaman utama

Gambar 1.53 Jendela Splash Screen IReport

Page 98: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 98

Gambar 1.54 Tampilan IReport

Setelah tampil jendela menu iReport anda harus memanggil koneksi mysql-connector-java-5.1.6-bin dengan cara klik Tools -> Options -> classpath klik tombol Add JAR silahkan anda ambil komponen mysql-connector-java-5.1.6-bin seperti gambar berikut:

Gambar 1.55 Tampilan Add JAR/Path to the classpath

Page 99: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 99

Gambar 1.56 Tampilan Komponen yang sudah dipanggil

Gambar di atas adalah jendela iReport pertama kali. Sebelum membuat laporan, buatlah dulu

sebuah koneksi agar bisa membuka database anda. Dengan cara: pilih menu Tool -> Report

Datasource, sehingga muncul jendela seperti gambar berkut.

Gambar 1.57 Jendela Daftar Konfigurasi Koneksi

Page 100: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 100

Selanjutnya tekan tombol New pada sebelah kanan, sehingga muncul jendela seperti gambar berikut.

Gambar 1.58 Pemilihan JDBC

Selanjutnya, pilih Database JDBC dan klik tombol Next, Sehingga muncul jendela seperti pada gambar berikut.

Gambar 1.59 Pengisian Konfigurasi Database

Untuk memastikan hasil dari koneksi database yang sudah dibuat klik tombol Test jika benar maka akan tampil seperti gambar dibawah:

Page 101: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 101

Gambar 1.60 Testing Koneksi Database

Membuat Laporan Setelah anda selesai membuat koneksi database langkah selanjutnya silahkan anda membuat laporan seperti berikut

1. Klik File -> Report Wizard maka akan tampil seperti gambar dibawah :

Gambar 1.61 Tampilan New Report

2. Ubahlah Report Name dan Location untuk menentukan dimana anda akan meletakkan laporan.

3. Kemudian Klik tombol Next untuk melanjutkan perintah seperti gambar dibawah:

Page 102: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 102

Gambar 1.62 Tampilan New Report steps 2 4. Ubahlah Connection / Data Source sesuai dengan koneksi yang anda buat , kemudian

silahkan anda is Query seperti gambar dibawah ini:

Gambar 1.63 Tampilan Query

5. Klik tombol Next maka akan tampil seperti gambar dibawah ini:

Page 103: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 103

Gambar 1.64 Tampilan Hasil Query 6. Klik tombol Next seperti Gambar dibawah :

Gambar 1.65 Tampilan Hasil Query

7. Klik tombol Next maka akan tampil pilihan Layout/jenis report yang anda inginkan seperti gambar dibawah ini:

Page 104: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 104

Gambar 1.66 Tampilan Layout Report

Gambar 1.67 Tampilan Report

8. Untuk melihat hasil tekan Preview maka akan tampil seperti gambar dibawah ini:

Page 105: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 105

Gambar 1.68 Tampilan Report Preview

9. Sebagai latihan silahkan anda buat report barang masuk dan report penjualan

Membuat Desain Form Report

1. Buatlah file baru dalam paket AplikasiPenjualan, dengan cara klik kanan paket Penjualan, Pilih New -> JFrame Form…, sehingga muncul jendela New File.

Gambar 1.69 Membuat Objek Baru

2. Pada jendela New JFrame Form, isikan FrmDaftarReport pada kotak isian Class Name, dan Package pilih aplikasipenjualan, lalu tekan tombol Finish untuk mengakhiri.

Page 106: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 106

Gambar 1.70 Menentukan Nama Form JFrame Form

Gambar 1.71 Desain Form Baru

Page 107: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 107

3. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini:

Gambar 1.72 Desain Form Daftar Report

Keterangan :

Tabel 1.11 Daftar Propertis yang digunakan

Pallete Propertis

Edit Text Change Variable Name

Label1 No.Faktur jLabel1

TextField1 - NoFaktur

Button1 Cetak Report Barang CariData

Button2 Cetak Report Barang Masuk Hitung

Button3 Cetak Report Penjualan AddItem

Button4 Cetak AddNew

Button6 Close Close

Page 108: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 108

Syntax Program

1. Pada bagian import tambahkan dibawah baris package AplikasiPenjualan sepeti kode berikut:

package penjualan;

import javax.swing.JOptionPane;

import java.util.HashMap;

import net.sf.jasperreports.engine.JasperFillManager;

import net.sf.jasperreports.engine.JasperPrint;

import net.sf.jasperreports.engine.JasperReport;

import net.sf.jasperreports.engine.util.JRLoader;

import net.sf.jasperreports.view.JasperViewer;

import java.io.File;

import java.sql.Connection;

import java.sql.DriverManager;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

import javax.swing.JOptionPane;

2. Pada bagian public class FrmDaftarReport extends javax.swing.JFrame tambahkan kode

berikut:

public class FrmDaftarReport extends javax.swing.JFrame {

Database dbsetting;

String driver,database,user,pass,userLogin;

private Object tabel;

/** Creates new form FrmDaftarReport */

public FrmDaftarReport() {

initComponents();

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

Dimension frameSize=this.getSize();

if(frameSize.height > screenSize.height){

frameSize.height=screenSize.height;

}

if(frameSize.width > screenSize.width){

frameSize.width=screenSize.width;

}

this.setLocation((screenSize.width - frameSize.width) / 2,

Page 109: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 109

(screenSize.height = screenSize.height) / 6);

//setting untuk memanggil koneksi Database.ini

dbsetting = new Database();

driver = dbsetting.SettingPanel("DBDriver");

database = dbsetting.SettingPanel("DBDatabase");

user = dbsetting.SettingPanel("DBUsername");

pass = dbsetting.SettingPanel("DBPassword");

}

3. Buatlah kode program CetakBarang dengan mengklik kanan button AddNew ->evens -> action ->

ActionPerformed.

private void CetakBarangActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

try{

String NamaFile="src/report/RptBarang.jasper";

HashMap parameter = new HashMap();

Class.forName(driver);

Connection con = DriverManager.getConnection(database,user,pass);

File reportfile = new File(NamaFile);

JasperReport jasperReport =(JasperReport)JRLoader.loadObject(reportfile.getPath());

JasperPrint jasperPrint =JasperFillManager.fillReport(jasperReport, parameter, con);

JasperViewer.viewReport(jasperPrint,false);

JasperViewer.setDefaultLookAndFeelDecorated(true);

} catch (Exception e) {

JOptionPane.showMessageDialog(null, "Data tidak dapat dicetak !",

"Cetak Data",JOptionPane.ERROR_MESSAGE);

}

}

4. Buatlah kode program CetakBarangMasuk dengan mengklik kanan button AddNew ->evens -> action ->

ActionPerformed.

private void CetakBarangMasukActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

try{

String NamaFile="src/report/RptBrgMasuk.jasper";

HashMap parameter = new HashMap();

Page 110: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 110

Class.forName(driver);

Connection con = DriverManager.getConnection(database,user,pass);

File reportfile = new File(NamaFile);

JasperReport jasperReport =(JasperReport)JRLoader.loadObject(reportfile.getPath());

JasperPrint jasperPrint =JasperFillManager.fillReport(jasperReport, parameter, con);

JasperViewer.viewReport(jasperPrint,false);

JasperViewer.setDefaultLookAndFeelDecorated(true);

} catch (Exception e) {

JOptionPane.showMessageDialog(null, "Data tidak dapat dicetak !",

"Cetak Data",JOptionPane.ERROR_MESSAGE);

}

}

5. Buatlah kode program CetakPenjualanALL dengan mengklik kanan button AddNew ->evens -> action ->

ActionPerformed.

private void CetakPenjualanAllActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

try{

String NamaFile="src/report/RptPenjualan.jasper";

HashMap parameter = new HashMap();

Class.forName(driver);

Connection con = DriverManager.getConnection(database,user,pass);

File reportfile = new File(NamaFile);

JasperReport jasperReport =(JasperReport)JRLoader.loadObject(reportfile.getPath());

JasperPrint jasperPrint =JasperFillManager.fillReport(jasperReport, parameter, con);

JasperViewer.viewReport(jasperPrint,false);

JasperViewer.setDefaultLookAndFeelDecorated(true);

} catch (Exception e) {

JOptionPane.showMessageDialog(null, "Data tidak dapat dicetak !",

"Cetak Data",JOptionPane.ERROR_MESSAGE);

}

}

Page 111: Membuat Aplikasi Penjualan Menggunakan Java

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 111

6. Buatlah kode program CetakPenjualanKode dengan mengklik kanan button AddNew ->evens -> action ->

ActionPerformed.

private void CetakActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

try{

String NamaFile="src/report/RptPenjualanKode1.jasper";

HashMap parameter = new HashMap();

parameter.put("NoFaktur",NoFaktur.getText());

Class.forName(driver);

Connection con = DriverManager.getConnection(database,user,pass);

File reportfile = new File(NamaFile);

JasperReport jasperReport =(JasperReport)JRLoader.loadObject(reportfile.getPath());

JasperPrint jasperPrint =JasperFillManager.fillReport(jasperReport, parameter, con);

JasperViewer.viewReport(jasperPrint,false);

JasperViewer.setDefaultLookAndFeelDecorated(true);

} catch (Exception e) {

JOptionPane.showMessageDialog(null, "Data tidak dapat dicetak !",

"Cetak Data",JOptionPane.ERROR_MESSAGE);

}

}

7. Buatlah kode program Close dengan mengklik kanan button AddNew ->evens -> action ->

ActionPerformed.

private void CloseActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if(JOptionPane.showConfirmDialog(null,"This application will be close \n if you press button

OK","Information",JOptionPane.OK_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE)=

=JOptionPane.OK_OPTION)

this.dispose();

}