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.
Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 1

Tabel 1.1 Struktur Tabel tbljenis Kolom kodejenis * jenis Tipe Data Char Varchar Panjang 4 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 idpetugas * namapetugas alamat email telpon Tipe Data Char Varchar Varchar Varchar Char Panjang 6 80 100 80 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.
Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 2

 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 iddistributor * namadistributor alamat kotaasal email telpon Tipe Data Char Varchar Varchar Varchar Varchar Char Panjang 6 80 100 80 80 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 kodebarang * namabarang kodejenis ** Harganet Hargajual stok Tipe Data Char Varchar Char Double Double Smallint Panjang 4 100 4 4

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA

3

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 4 . Berikut desain tabelnya. Setelah perintah membuat tabel di atas dijalankan.5 Struktur Tabel tblbrgmasuk Kolom nonota * tglmasuk iddistributor ** Idpetugas** total Tipe Data Char Varchar Char Char Double Panjang 10 30 6 6 - Dari desain tabel di atas. idpetugas char(6). tglmasuk varchar(30). anda dapat membuat dalam MySQL menggunakan perintah berikut: mysql> create table tblbrgmasuk( nonota char(10) not null primary key. Setelah perintah membuat tabel di atas dijalankan. Tabel 1. hargajual double. namabarang varchar(100).Dari desain tabel di atas. anda dapat membuat dalam MySQL menggunakan perintah berikut: mysql> create table tblbarang( kodebarang char(4) not null primary key. sekarang anda telah memiliki tabel baru bernama tblbrgmasuk. sekarang anda telah memiliki tabel baru bernama tblbarang.  Membuat Tabel tblbrgmasuk Tabel Barang masuk digunakan untuk merekam semua data barang masuk Dengan cara ini. iddistributor char(6). total double). kodejenis char(4). harganet double. stok smallint(20) ). kita dapat mengetahui semua data barang masuk yang ada digudang.

anda dapat membuat dalam MySQL menggunakan perintah berikut: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 5 .  Membuat Tabel tblpenjualan Tabel Penjualan digunakan untuk merekam semua transaksi penjualan Dengan cara ini. Tabel 1. Tabel 1. kita dapat mengetahui semua data barang yang sudah terjual atau belum terjual. Setelah perintah membuat tabel di atas dijalankan. Dengan cara ini. subtotal double). Berikut desain tabelnya. anda dapat membuat dalam MySQL menggunakan perintah berikut: mysql> create table tbldetailbrgmasuk( nonota char(10) not null. Membuat Tabel tbldetailbrgmasuk Tabel Detail Barang Masuk digunakan untuk merekam jumlah data barang masuk. sekarang anda telah memiliki tabel baru bernama tbldetailbrgmasuk.7 Struktur Tabel tblpenjualan Kolom nofaktur * Tglpenjualan idpetugas ** bayar sisa total Tipe Data Char Varchar Char Double Double Double Panjang 10 30 6 - Dari desain tabel di atas. kita dapat mengetahui semua data barang yang baru diorder. kodebarang char(4) not null. Berikut desain tabelnya.6 Struktur Tabel tbldetailbrgmasuk Kolom nonota ** Kodebarang** jumlah subtotal Tipe Data Char Char Smallint Double Panjang 10 4 4 - Dari desain tabel di atas. jumlah smallint(4).

8 Struktur Tabel tbldetailpenjualan Kolom nofaktur ** Kodebarang** jumlah subtotal Tipe Data Char Char Smallint Double Panjang 10 4 4 - Dari desain tabel di atas. sekarang anda telah memiliki tabel baru bernama tbldetailpenjualan. tglpenjualan varchar(30). Setelah perintah membuat tabel di atas dijalankan. Berikut desain tabelnya. Tabel 1.mysql> create table tblpenjualan( nofaktur char(10) not null primary key. sisa double.  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. bayar double. idpetugas char(6). jumlah smallint(4). subtotal double). anda dapat membuat dalam MySQL menggunakan perintah berikut: mysql> create table tbldetailpenjualan( nofaktur char(10) not null. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 6 . Setelah perintah membuat tabel di atas dijalankan. total double). sekarang anda telah memiliki tabel baru bernama tblpenjualan. kodebarang char(4) not null.

sedangkan (FK) adalah kunci tamu dengan diwujudkan arah panahnya.1 Hubungan Antar Tabel pada dbretail Tanda (PK) menunjukkan kunci utama. Berikut bebarapa penjelasan relasi tabel tersebut. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 7 .Relasi Antar Tabel TblDetailBrgMasuk NoNota KodeBarang Jumlah Subtotal TblJenis PK KodeJenis Jenis TblBarang PK KodeBarang NamaBarang KodeJenis HargaNet HargaJual Stok TblBrgMasuk PK NoNota TglMasuk IDDistributor IDPetugas Total PK TblDistributor IDDistributor NamaDistributor Alamat KotaAsal Email Telpon TblPetugas PK TblPenjualan PK NoFaktur TglPenjualan IDPetugas Bayar Sisa Total IDPetugas NamaPetugas Alamat Emali Telpon TblDetailPenjualan NoFaktur KodeBarang Jumlah Subtotal Gambar 1.

Ketergantungan Mesin     Sistem Opersai Windows/Linux Netbeans 6.1. Anda bisa membaca bab ini sebagai penjelasan lengkap dan langkah pembuatannya.0 Jasper Report 2. dikhawatirkan anda bisa tersesat sejauh-jauhnya. Instal MySQL dan tool admin lewat Browser Client.1-ml-javase-windows. Pada aplikasi yang dibuat.0. Dalam hal ini kami menggunakan Windows XP untuk uji coba.4 MySQL(AppServ2. yang mesti anda pasang adalah sebagai berikut. bukan keharusan tetapi sangat dianjurkan bagi anda membaca buku edisi sebelumnya. akan terjadi proses transaksi barang masuk dan transaksi penjualan barang. Dalam hal ini setidaknya anda harus memasang Netbeans 6.3 boleh menggunakan versi lain) Ketergantungan Module/com objek maupun resource lain  mysql-connector-java-5. 2. Instal netbeans 6 nama file installer-nya netbeans-6. ikuti petunjuk dan jangan lupa untuk menyimpan nama password atau userMembuat Program Aplikasi Penjualan Barang Menggunakan JAVA 8 . klik ganda kemudian lanjutkan dialognya sampai selesai. Untuk sistem operasi tentunya anda bisa menggunakan Windows/Linux. Tentunya ada proses perhitungan pembelian dan penjualan barang. Nama filenya appserv-win322.10. Dalam bonus CD buku ini.0 Tentunya untuk bisa memasangnya juga harus anda penuhi system requirement dari aplikasi tersebut.5. juga telah disertakan hasil studi kasus dan komponen pendukung untuk pembuatan aplikasi yang dibahas pada bab ini. yaitu dengan objek kasus pada penjualan barang.MEMBUAT APLIKASI PENJUALAN BARANG Mulai dari bab ini kami akan membimbing anda untuk membuat proyek lengkap.exe.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.10. Dependency Dependency ata ketergantungan adalah sebuah syarat ketersediaan sebuah tool berupa modul terpisah maupun aplikasi lain agar bisa menjalankan aplikasi yang dimaksud. Adapun tool yang lain.0. 1.exe. Kalau tidak mengikuti petunjuk ini. Catatan: Anda tidak harus mengikuti langkah-langkah instalasi jika sudah memiliki versi yang sama. Dalam buku tidak terlalu banyak memberikan hal-hal yang dasar.

Jika sampai lupa. database.ini menggunakan notepade kemudian simapan dengan nama database. sehingga muncul sebuah jendela New Project.ini database.ini # Setting JDBC # getDriver JDBC DBDriver=com. Misalnya kami membuat folder D:\Aplikasi Penjualan Barang. 2. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 9 . Buatlah folder dengan nama folder lib pada direktori D:\Aplikasi Penjualan Barang\AplikasiPenjualan\lib. lalu buat project beru melalui menu File –> New Project.nya agar Anda bisa mengakses halaman admin. 3. Bukalah editor Netbeans. Berikut langkah membuat koneksi database.ini: 1. Pada kolom Categories pilih Java.mysql.ini dibuat menggunakan Notepade.ini digunakan untuk menghubungkan database MySQL dengan JAVA.ini.jdbc. kemudian tekan tombol Next untuk melanjutkan.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. anda selamanya tidak bisa membuka database anda sendiri. Siapkan folder khusus untuk membuat kode. 2. Selanjutnya pada kolom projects pilih Java Application. Syntax Database. Buatlah koneksi database.  Membuat Koneksi Database.

Netbeans secara default Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 10 . Isilah Project Name (sebagai nama proyek). Application Class (nama file atau kelas).3 Penambahan File Project Dari gambar di atas. dan nama kelas utama seperti berikut ini. Project Location (folder atau lokasi program). Gambar 1. perhatikan isian Application Class yang terisi otomatis ketika anda memberikan nilai pada nama Project name: “AplikasiPenjualan”.Gambar 1.2 Jendela New Project 3.

menyiapkan paket bernama AplikasiPenjualan dan kelas utama Main. Dalam aplikasi ini. kita akan memasang distribusi file sebagai komponen penghubung database. 6. 4. karena dengan begitu integritas dan fleksibilitas untuk pengembangan program sangat mudah. Mungkin anda pernah memahami bagaimana file dll dalam windows bekerja. Pada kolom Choose Application Shell pilih Basic Application. 5. Dengan adanya sebuah dll tertentu. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 11 .java. klik tombol Finish.java dengan cara klik kanan New -> Java Class .1. 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. anda bisa menyesuaikan foldernya dengan computer anda. kemudian masukkan kode program seperti dibawah ini.6-bin. Jiksa sudah. Berarti kita membuat kelas AplikasiPenjualan berada dalam paket AplikasiPenjualan. bisa dipakai secara bersama-sama oleh aplikasi lain. Langkah selanjutnya kita akan membuat Database. Gambar 1.4 Tampilan Pertama Project Baru Memasang File Jar(Setting Class Path) Memasang file jar ke dalam aplikasi adalah pekerjaan yang sangat penting.

"Error".ini")). JOptionPane. mypanel.load(new FileInputStream("lib/database. } return strNamePanel.util. System. System. myLanguage.Gambar 1. public Database(){ } public String SettingPanel(String nmPanel){ try { mypanel = new Properties().5 Membuat Java Class File package penjualan. import java.io. } catch (Exception e) { JOptionPane. private String strNamePanel.println(e.JOptionPane. import java."Tidak ada koneksi".err.INFORMATION_MESSAGE).swing. strNamePanel = mypanel.Properties.exit(0).getMessage()). import javax. } } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 12 . /** * * @author REVOLPER */ public class Database { public Properties mypanel.showMessageDialog(null.FileInputStream.getProperty(nmPanel).

Buatlah file baru dalam paket AplikasiPenjualan..7 Membuat Objek Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 13 .. Pilih New -> JFrame Form..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. Gambar 1. Dari jendela Project pilih Libraries kemudian klik kanan pilih Add JAR/Folder… kemudian klik Open. Caranya adalah: 1. Anda harus memasang driver-nya. Memasang Driver MySQL Untuk bisa melakukan hubungan atau koneksi dengan database MySQL. Gambar 1. dengan cara klik kanan paket AplikasiPenjualan. Lakukan beberapa langkah berikut ini: 1.

Gambar 1. isikan FrmJenis pada kotak isian Class Name. Pada jendela New JFrame Form.2. dan Package pilih aplikasipenjualan.8 Menentukan Nama Form JFrame Form Gambar 1.9 Desain Form Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 14 . lalu tekan tombol Finish untuk mengakhiri.

Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.9 Daftar Propertis yang digunakan Pallete Label1 Label2 Text Field1 Text Field2 Button1 Button2 Button3 Button4 Button5 Button6 Table Edit Text Kode Jenis Jenis Barang KodeJenis Jenis Add New Save Update Delete Cancel Close Propertis Change Variable Name jLabel1 jLabel2 KodeJenis Jenis AddNew Save Update Delete Cancel Close Table Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 15 .10 Desain Form Jenis Barang Keterangan : Tabel 1.3.

SettingPanel("DBDatabase"). new int[]{90.getScreenSize().height){ frameSize. Buatlah kode program diatas // Variables declaration . (screenSize.swing. } 3.width=screenSize.SettingPanel("DBDriver").height > screenSize.*.awt.height=screenSize.swing.do not modify untuk menampilkan data pada tabel seperti berikut: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 16 . import java. database = dbsetting.height) / 4).Syntax Program 1.user. } this.frameSize. Pada bagian public class FrmJenis extends javax. private Object tabel. Dimension frameSize=this.width) / 2. Dimension screenSize=Toolkit.setModel(tableModel).pass. 2.*.JFrame { Database dbsetting.width){ frameSize. import java. import javax.getSize().swing.SettingPanel("DBPassword"). import java. /** Creates new form FrmJenis */ public FrmJenis() { initComponents(). dbsetting = new Database(). Tabel(table.JFrame tambahkan kode berikut: public class FrmJenis extends javax.SettingPanel("DBUsername").370}).awt.setLocation((screenSize. user = dbsetting. if(frameSize.*.event. driver = dbsetting.height.width . setDefaultTable().width.*.getDefaultToolkit(). String driver. Pada bagian import tambahkan dibawah baris package penjuaan sepeti kode berikut: package penjualan.width > screenSize.sql.height = screenSize. table. } if(frameSize. SetEditOff().database. pass = dbsetting.

forName(driver). while(res. } }.next()){ data[0] = res.setRowHeight(17). } String data[]=new String[2]. Connection kon = DriverManager. stt.i < kolom.table.swing.executeQuery(SQL).swing.close().table.setAutoResizeMode(JTable. false. } } private javax.swing. data[1] = res.user.DefaultTableModel getDefaultTabelModel() { return new javax. kon.getString(1).DefaultTableModel( new Object[][] {}. int lebar[] ) { tb. int columnIndex){ return canEdit[columnIndex].close().Private javax. for(int i=0. ResultSet res = stt.table.createStatement(). private void setDefaultTable() { String stat ="".swing. private void Tabel(javax.getConnection(database.JTable tb.addRow(data). Statement stt = kon.DefaultTableModel tableModel=getDefaultTabelModel().getString(2). try { Class.AUTO_RESIZE_OFF). tableModel. public boolean isCellEditable(int rowIndex. false.i++) { javax. int kolom=tb.pass).getColumnModel(). String SQL = "SELECT * FROM tbljenis". } catch (Exception ex) { Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 17 .table. } res.swing.getColumnCount()."Jenis Barang"} ){ boolean[] canEdit = new boolean[]{ false.TableColumn tbc=tb. new String [] {"Kode Jenis". tb.setPreferredWidth(lebar[i]).close().getColumn(i). tbc. false }.

} public void SetEditOff(){ KodeJenis. } public void SetEditOn(){ KodeJenis. Buatlah kode program AddNew dengan mengklik kanan button AddNew ->evens -> action -> ActionPerformed. dan SetEditON disembarang tempat yang memiliki space kosong seperti berikut ini: public void BersihData(){ KodeJenis. Jenis.setEnabled(false).setEnabled(true).setEnabled(false). Jenis.System.getMessage()). private void AddNewActionPerformed(java.setEnabled(false).getSelectedRow().SetEditOff. } 6. } } 4. KodeJenis.println(ex. Delete.getValueAt(row. Jenis. Delete. Save. public void Tampil(){ row = table.setText("").requestFocus().toString()). SetEditOn(). 1). Buatlah kode program untuk menampilkan data yang sudah tersimpan di database. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 18 . Update.setText("").toString()). } 5.setEnabled(true).setEnabled(true).setEnabled(true). Buatlah perintah BersihData. Update.event.setEnabled(false). 0).setEnabled(true).err. SetEditOn().ActionEvent evt) { // TODO add your handling code here: BersihData(). Jenis.awt.setEnabled(false).setText(tableModel.getValueAt(row.setText(tableModel. letakkan disembarang tempat yang memiliki space kosong seperti berikut ini: int row = 0. KodeJenis. Save.

close().err. data[0] = KodeJenis."data tidak boleh kosong. private void SaveActionPerformed(java.insertRow(0. Save. SetEditOff(). "+ " ' "+Jenis. } catch (Exception ex) { System. tableModel. data).close().getMessage()).forName(driver).isEmpty())) {JOptionPane. }else { try { Class.println(ex. } } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 19 .showMessageDialog(null.getConnection(database. Statement stt = kon.pass).awt. BersihData(). String SQL = "insert into tbljenis values(' "+KodeJenis.user. data[1] = Jenis.ActionEvent evt) { // TODO add your handling code here: String KJ=KodeJenis.requestFocus(). dengan mengklik kanan table(grid) ->evens -> Mouse -> private void tableMouseClicked(java. kon.7.MouseEvent evt) { // TODO add your handling code here: if (evt.createStatement().executeUpdate(SQL). stt.event.getText().event. stt. silahkan dilengkapi"). Buatlah kode program even Click MouseClicked. Connection kon = DriverManager.isEmpty()) | (J. String J=Jenis.getText().getText()+" ' .awt.getText(). Buatlah kode program save dengan mengklik kanan button save ->evens -> action -> ActionPerformed.getText()+"')".getClickCount()==1) { Tampil(). if ((KJ. KodeJenis. } } } 8.getText().setEnabled(false).

requestFocus(). if ((KJ.showMessageDialog(null. data[0] = KodeJenis.insertRow(row.getText()+" ' ".getText(). private void DeleteActionPerformed(java.data).isEmpty()) | (J. tableModel. KodeJenis.requestFocus(). silahkan dilengkapi"). Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 20 .9. } } } 10.getText(). BersihData(). if ((KJ. }else { try { Class.getText().ActionEvent evt) { // TODO add your handling code here: String KJ=KodeJenis.forName(driver).user. stt. private void UpdateActionPerformed(java.getText().getText(). data[1] = Jenis.showMessageDialog(null.isEmpty())) {JOptionPane. silahkan dilengkapi"). Statement stt = kon. stt.getConnection(database.event. } catch (Exception ex) { System.getMessage()).println(ex. tableModel.awt.createStatement(). Connection kon = DriverManager. String SQL = "Update tbljenis set jenis=' "+Jenis. String J=Jenis.isEmpty()) | (J.getText()+" ' "+ "Where kodejenis=' "+KodeJenis.close(). SetEditOff().executeUpdate(SQL)."data tidak boleh kosong. kon. Buatlah kode program Update dengan mengklik kanan button Update ->evens -> action -> ActionPerformed.getText().event.pass). Save.awt.isEmpty())) {JOptionPane. String J=Jenis.removeRow(row).ActionEvent evt) { // TODO add your handling code here: String KJ=KodeJenis. KodeJenis. Buatlah kode program Delete dengan mengklik kanan button Delete ->evens -> action -> ActionPerformed.close().err."data tidak boleh kosong.setEnabled(false).

JOptionPane.awt. } 13.user. } } } 11. SetEditOff().}else { try { Class.event. private void CloseActionPerformed(java.INFORMATION_MESSAGE)==JOptionPane.event. Connection kon = DriverManager.err. } 12. stt.getConnection(database.toString()+"'".getText(). "Information".createStatement(). BersihData(). Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed. String SQL = "Delete From tbljenis Where kodejenis='"+KodeJenis. SetEditOff(). Buatlah kode program Cancel dengan mengklik kanan button Cancel ->evens -> action -> ActionPerformed.setEnabled(false).executeUpdate(SQL).getMessage()).forName(driver).removeRow(row). data[1] = Jenis."This application will be close \n if you press button OK". stt.close().dispose().awt.pass).OK_OPTION) this.OK_CANCEL_OPTION.close(). } catch (Exception ex) { System. private void CancelActionPerformed(java. kon. tableModel.println(ex. Jalankan Program kemudian klik menu Data Jenis Barang maka akan tampil seperti berikut: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 21 .ActionEvent evt) { // TODO add your handling code here: BersihData().getText().showConfirmDialog(null.getText(). Save. Statement stt = kon.ActionEvent evt) { // TODO add your handling code here: if(JOptionPane.JOptionPane. data[0] = KodeJenis.

dengan cara klik kanan paket Penjualan. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 22 . dan Package pilih aplikasipenjualan. Gambar 1. Buatlah file baru dalam paket AplikasiPenjualan. Pilih New -> JFrame Form….Gambar 1. lalu tekan tombol Finish untuk mengakhiri. Pada jendela New JFrame Form. sehingga muncul jendela New File. isikan FrmBarang pada kotak isian Class Name.11 Tampilan Program Data Jenis Barang Membuat Desain Form Data Barang 1.12 Membuat Objek Baru 2.

14 Desain Form Baru 3. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 23 .13 Menentukan Nama Form JFrame Form Gambar 1.Gambar 1.

9 Daftar Propertis yang digunakan Pallete Label1 Label2 Label3 Label4 Label5 Label6 Label7 Label8 Label9 TextField1 Text Field2 ComboBox1 TextField3 TextField4 Edit Text Kode Barang Nama Barang Kode Jenis Barang Jenis Barang Harga Net Harga Jual Stok Rp Rp Propertis Change Variable Name jLabel1 jLabel2 jLabel3 jLabel4 jLabel5 jLabel6 jLabel7 jLabel8 jLabel9 KodeBarang NamaBarang KodeJenis Jenis HargaNet 24 Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA .15 Desain Form Data Barang Keterangan : Tabel 1.Gambar 1.

getSize().height) / 6).swing. (screenSize.swing. import java. String driver.width){ frameSize.height=screenSize. import java.height = screenSize. private Object tabel.pass. /** Creates new form FrmBarang */ public FrmBarang() { initComponents(). //setting untuk memanggil koneksi Database.width > screenSize.width) / 2.height > screenSize. import javax.JFrame { Database dbsetting.*.getScreenSize().getDefaultToolkit().JFrame tambahkan kode berikut: public class FrmBarang extends javax.awt.TextField5 TextField6 Button1 Button2 Button3 Button4 Button5 Button6 Table Add New Save Update Delete Cancel Close - HargaJual Stok AddNew Save Update Delete Cancel Close table Syntax Program 1.frameSize. Dimension screenSize=Toolkit.event.database.ini Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 25 .width=screenSize.width.width . import java. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut: package penjualan.*.swing.awt. } if(frameSize.height){ frameSize. Dimension frameSize=this.setLocation((screenSize.user. } this. Pada bagian public class FrmBarang extends javax.userLogin.sql. if(frameSize.*.*. 2.height.

table. tbc. false. new int[]{90.setModel(tableModel).setPreferredWidth(lebar[i]).dbsetting = new Database(). int lebar[] ) { tb. tb.swing. } 3.setRowHeight(17).i++) { javax."Kode Jenis"."Harga NET". int kolom=tb. } } private javax. false }."Harga Jual". private void Tabel(javax."Nama Barang".swing. SetEditOff(). pass = dbsetting.getColumnCount().swing.70}).table.getColumn(i). } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 26 .90.300.swing.90.do not modify untuk menampilkan data pada tabel seperti berikut: private javax.table.getColumnModel().SettingPanel("DBPassword"). table. Tabel(table.table.90. TampilComboJenis(). setDefaultTable().DefaultTableModel( new Object[][] {}.TableColumn tbc=tb.DefaultTableModel tableModel=getDefaultTabelModel(). public boolean isCellEditable(int rowIndex.SettingPanel("DBUsername"). new String [] {"Kode Barang".swing. Buatlah kode program diatas // Variables declaration . for(int i=0.JTable tb. } }.SettingPanel("DBDatabase").i < kolom. driver = dbsetting. false.SettingPanel("DBDriver"). user = dbsetting.setAutoResizeMode(JTable.AUTO_RESIZE_OFF). database = dbsetting.DefaultTableModel getDefaultTabelModel() { return new javax."Stok"} ){ boolean[] canEdit = new boolean[]{ false. int columnIndex){ return canEdit[columnIndex].

toString()).close(). SetEditOn().forName(driver). letakkan disembarang tempat yang memiliki space kosong seperti berikut ini: int row = 0.createStatement(). } res.setEnabled(true). 5). data[5] = res.setEnabled(false). Connection kon = DriverManager.setText(tableModel. kon. private void setDefaultTable() { String stat ="". 0). public void Tampil(){ row = table. Update. 1).getString(4). KodeBarang.toString()). HargaJual. 4).getConnection(database.pass). Buatlah kode program untuk menampilkan data yang sudah tersimpan di database. 3).close(). } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 27 .println(ex.getString(5). while(res.executeQuery(SQL).toString()). String SQL = "SELECT * FROM tblbarang".getValueAt(row. stt.getMessage()).user.setEnabled(true).setText(tableModel.getValueAt(row.getString(6). Statement stt = kon.next()){ data[0] = res.toString()). NamaBarang. HargaNet. tableModel.toString()). data[3] = res.getValueAt(row. data[4] = res.setText(tableModel.toString()). ResultSet res = stt. Save.getString(2).addRow(data).close().err.setSelectedItem(tableModel.getSelectedRow(). 2).getValueAt(row.String data[]=new String[6]. Delete. try { Class.setText(tableModel.getValueAt(row. KodeJenis. data[1] = res. } } 4.getString(3).setText(tableModel. } catch (Exception ex) { System. Stok.getString(1).getValueAt(row. data[2] = res.

Buatlah kode program AddNew dengan mengklik kanan button AddNew ->evens -> action -> ActionPerformed. } public void SetEditOn(){ KodeBarang. HargaNet.setEnabled(true). } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 28 .setEnabled(true). HargaNet.setText(""). HargaNet. KodeBarang.setText("").setEnabled(false). dan SetEditON disembarang tempat yang memiliki space kosong seperti berikut ini: public void BersihData(){ KodeBarang. } public void SetEditOff(){ KodeBarang. KodeJenis.setEnabled(true).setText("0").setEnabled(false). Delete. NamaBarang.setEnabled(true).setText("").setEnabled(true). private void AddNewActionPerformed(java. KodeJenis.ActionEvent evt) { // TODO add your handling code here: BersihData().setEnabled(false).setText(""). Save. HargaJual.setText(""). Stok. } 6.setEnabled(false).5. Jenis. Stok. NamaBarang.setEnabled(false). HargaJual. KodeJenis.event.setEnabled(true).awt. Update. SetEditOn().setEnabled(false).setSelectedIndex(0).SetEditOff. Buatlah perintah BersihData.setEnabled(true). Stok. HargaJual.requestFocus().setEnabled(false).setEnabled(false). NamaBarang.

getString("kodejenis")).getString("jenis")). ResultSet res = stt. Butlah kode program tambahan untuk menampilkan data pada kombo kodejenis dengan membuat private baru seperti berikut.ItemEvent evt) { // TODO add your handling code here: try { Connection kon = DriverManager. public void TampilComboJenis(){ try { Connection kon = DriverManager. private void SaveActionPerformed(java.toString()+"'".event.awt. ResultSet res = stt. res.toString(). Buatlah kode program save dengan mengklik kanan button save ->events -> action -> ActionPerformed.CONCUR_UPDATABLE). Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 29 .createStatement(ResultSet. Buatlah perintah untuk menampilkan data pada kombo jenis dengan mengklik kanan kombojenis -> events -> item -> itemStateChange.executeQuery(SQL).getSelectedItem().getText().user.getSelectedItem(). String NB=NamaBarang. String SQL = "SELECT * FROM tbljenis".7.TYPE_SCROLL_INSENSITIVE.executeQuery(SQL). Jenis.TYPE_SCROLL_INSENSITIVE. while(res. } catch (SQLException ex) { } } 8.createStatement(ResultSet.getText(). String SQL = "SELECT * FROM tbljenis where kodejenis='"+ KodeJenis.getConnection(database. } } catch (SQLException ex) { } } 9.user.event.setText(res.awt. Statement stt = kon.CONCUR_UPDATABLE). ResultSet. private void KodeJenisItemStateChanged(java.getConnection(database.pass).ActionEvent evt) { // TODO add your handling code here: String KB=KodeBarang. ResultSet.pass). Statement stt = kon. String KJ=KodeJenis.addItem(res.absolute(1).next()){ KodeJenis.

data[2] = KodeJenis."data tidak boleh kosong.getText().getText().isEmpty())|(ST. }else { try { Class.getText()+"'.requestFocus(). data[3] = HargaNet.getText().getSelectedItem()+"'.getText()."+ "'"+NamaBarang."+ "'"+KodeJenis.forName(driver).executeUpdate(SQL). stt. if ((KB. BersihData().getText(). data[5] = Stok. tableModel. silahkan dilengkapi").getSelectedItem().isEmpty()) |(HN. String ST=Stok. kon."+ "'"+Stok. stt. Statement stt = kon.user.pass). Connection kon = DriverManager. SetEditOff(). data[4] = HargaJual. } } } 10.showMessageDialog(null.isEmpty())) { JOptionPane.close().getText()+"'. data[1] = NamaBarang.isEmpty()) |(KJ. String HJ=HargaJual.getText(). dengan mengklik kanan table(grid) ->evens -> Mouse -> Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 30 . Save.getMessage()).println(ex. data[0] = KodeBarang."+ "'"+HargaJual.setEnabled(false).insertRow(0. data).getText().getText()+"'.createStatement().String HN=HargaNet.close()."+ "'"+HargaNet.getText()+"'.isEmpty()) | (NB.getConnection(database.toString(). } catch (Exception ex) { System. KodeBarang. String SQL = "insert into tblbarang values('"+KodeBarang.getText()+"')".err.isEmpty())|(HJ.getText(). Buatlah kode program even Click MouseClicked.

"+ "hargajual='"+HargaJual.getText(). if ((KB."+ "harganet='"+HargaNet.private void tableMouseClicked(java.pass). String KJ=KodeJenis. data[3] = HargaNet.createStatement(). }else { try { Class.getText()+"'. } } 11. silahkan dilengkapi"). data[0] = KodeBarang. data[4] = HargaJual. stt. KodeBarang.isEmpty()) |(HN.getText(). String HN=HargaNet.user.getConnection(database.executeUpdate(SQL).getText().getText().getClickCount()==1) { Tampil().isEmpty())|(HJ. String ST=Stok.awt."data tidak boleh kosong. Buatlah kode program Update dengan mengklik kanan button Update ->evens -> action -> ActionPerformed.getText(). String SQL = "Update tblbarang Set namabarang='"+NamaBarang. Connection kon = DriverManager.showMessageDialog(null.forName(driver). data[2] = KodeJenis. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 31 .isEmpty()) |(KJ.getText().event.getText().toString()."+ "stok='"+Stok.getText()+"'". String NB=NamaBarang."+ "kodejenis='"+KodeJenis.isEmpty())) { JOptionPane.isEmpty())|(ST.getText().getSelectedItem().getSelectedItem().getText()+"'. private void UpdateActionPerformed(java.getText()+"'"+ "Where kodebarang='"+KodeBarang.ActionEvent evt) { // TODO add your handling code here: String KB=KodeBarang.toString().isEmpty()) | (NB.getText().MouseEvent evt) { // TODO add your handling code here: if (evt.getSelectedItem()+"'.awt.requestFocus(). Statement stt = kon.event. String HJ=HargaJual. data[1] = NamaBarang.getText()+"'.

Buatlah kode program Delete dengan mengklik kanan button Delete ->evens -> action -> ActionPerformed.isEmpty()) |(KJ.isEmpty()) |(HN. stt. String HJ=HargaJual.getText().showMessageDialog(null. String HN=HargaNet.event.println(ex.data). Connection kon = DriverManager. data[0] = KodeBarang.close().getText().ActionEvent evt) { // TODO add your handling code here: String KB=KodeBarang. String ST=Stok. }else { try { Class. silahkan dilengkapi"). stt.getText(). tableModel.user. tableModel. data[1] = NamaBarang. if ((KB.isEmpty()) | (NB.data[5] = Stok. data[3] = HargaNet.err.setEnabled(false).isEmpty())) { JOptionPane.getText().getSelectedItem().getMessage()).pass).getText().forName(driver).getText().getText().getSelectedItem(). } } } 12. BersihData().getText(). private void DeleteActionPerformed(java. Statement stt = kon. kon.toString(). String KJ=KodeJenis. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 32 .isEmpty())|(ST.executeUpdate(SQL).removeRow(row).getConnection(database.toString()+"'".requestFocus().createStatement().isEmpty())|(HJ. Save.toString(). data[2] = KodeJenis. } catch (Exception ex) { System."data tidak boleh kosong.insertRow(row. String SQL = "Delete From tblbarang Where kodebarang='"+KodeBarang.getText(). KodeBarang. String NB=NamaBarang.getText().awt.close(). SetEditOff().

INFORMATION_MESSAGE)==JOptionPane. kon. } } } 13.getText().err."Information".close().event. SetEditOff(). JOptionPane.ActionEvent evt) { // TODO add your handling code here: BersihData().OK_OPTI ON) this.awt.getText(). tableModel.getMessage()).dispose(). } 15. Save. SetEditOff(). BersihData(). Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed.event.OK_CANCEL_OPTION. private void CloseActionPerformed(java.println(ex. } catch (Exception ex) { System. private void CancelActionPerformed(java. stt.JOptionPane. } 14.removeRow(row)."This application will be close \n if you press button OK".setEnabled(false). data[5] = Stok.data[4] = HargaJual. Buatlah kode program Cancel dengan mengklik kanan button Cancel -> events -> Action -> ActionPerformed. Jalankan Program kemudian klik menu Data Barang maka akan tampil seperti berikut: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 33 .showConfirmDialog(null.close().ActionEvent evt) { // TODO add your handling code here: if(JOptionPane.awt.

16 Tampilan Data Barang Membuat Desain Form Data Petugas 1. Buatlah file baru dalam paket AplikasiPenjualan.Gambar 1. Gambar 1. dengan cara klik kanan paket Penjualan. sehingga muncul jendela New File. Pilih New -> JFrame Form….17 Membuat Objek Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 34 .

lalu tekan tombol Finish untuk mengakhiri.19 Desain Form Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 35 .2. isikan FrmPetugas pada kotak isian Class Name. dan Package pilih aplikasipenjualan. Pada jendela New JFrame Form. Gambar 1.18 Menentukan Nama Form JFrame Form Gambar 1.

20 Desain Form Data Petugas Keterangan : Tabel 1.10 Daftar Propertis yang digunakan Pallete Label1 Label2 Label3 Label4 Label5 TextField1 Text Field2 TextArea1 TextField3 Edit Text ID Petugas Nama Petugas Alamat Petugas E-Mail Telpon Propertis Change Variable Name jLabel1 jLabel2 jLabel3 jLabel4 jLabel5 IDPetugas NamaPetugas Alamat Email 36 Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA .3. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.

width . if(frameSize.swing.awt.*.event.setLocation((screenSize. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut: package penjualan.getScreenSize().getDefaultToolkit().width > screenSize.height) / 6).TextField4 Button1 Button2 Button3 Button4 Button5 Button6 Table Add New Save Update Delete Cancel Close - Telpon AddNew Save Update Delete Cancel Close table Syntax Program 1.width.*.*. (screenSize. String driver.JFrame tambahkan kode berikut: public class Frmpetugas extends javax. //setting untuk memanggil koneksi Database. import javax. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 37 .width){ frameSize.awt.user.height){ frameSize.swing. } this.height=screenSize.*. Dimension screenSize=Toolkit. import java.sql. private Object tabel.userLogin. import java.pass.ini dbsetting = new Database().JFrame { Database dbsetting.height > screenSize.height.height = screenSize. Dimension frameSize=this. 2.frameSize.width) / 2. import java. } if(frameSize.getSize().swing. /** Creates new form Frmpetugas */ public Frmpetugas() { initComponents().width=screenSize. Pada bagian public class FrmPetugas extends javax.database.

"Telpon"} ){ boolean[] canEdit = new boolean[]{ false.setRowHeight(17).setAutoResizeMode(JTable. user = dbsetting."Alamat E-Mail". Tabel(table. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 38 . false }. } 3.getColumnModel().table.swing. int columnIndex){ return canEdit[columnIndex].SettingPanel("DBUsername").table.i++) { javax. false."Nama Petugas". } } private javax.do not modify untuk menampilkan data pada tabel seperti berikut: private javax.SettingPanel("DBPassword"). setDefaultTable().swing.340.getColumnCount(). SetEditOff().DefaultTableModel( new Object[][] {}. } }. public boolean isCellEditable(int rowIndex.AUTO_RESIZE_OFF). Buatlah kode program diatas // Variables declaration .DefaultTableModel getDefaultTabelModel() { return new javax. int lebar[] ) { tb. tbc.getColumn(i).swing. int kolom=tb. new int[]{90. false. private void Tabel(javax. tb.i < kolom. for(int i=0.driver = dbsetting. pass = dbsetting.JTable tb.SettingPanel("DBDriver").table. database = dbsetting.DefaultTableModel tableModel=getDefaultTabelModel().SettingPanel("DBDatabase").setPreferredWidth(lebar[i]). table.300.100}).table.swing.swing.setModel(tableModel). new String [] {"ID Petugas"."Alamat Petugas".260.TableColumn tbc=tb.

data[4] = res. Email. 3). data[3] = res. SetEditOn().getValueAt(row. IDPetugas. public void Tampil(){ row = table.next()){ data[0] = res. 1).close().getString(4).toString()).toString()).toString()).setText(tableModel.setEnabled(false).getMessage()).err. 0).pass).getString(5). ResultSet res = stt.getValueAt(row.getSelectedRow(). String SQL = "SELECT * FROM tblpetugas". while(res.setText(tableModel.setText(tableModel.getValueAt(row. data[2] = res.println(ex.getString(3). Statement stt = kon. kon.setText(tableModel.createStatement().forName(driver). Connection kon = DriverManager. 4). } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 39 .toString()). Delete. NamaPetugas.executeQuery(SQL). } catch (Exception ex) { System.addRow(data).toString()).setEnabled(true).close(). 2). } res. stt. private void setDefaultTable() { String stat ="".getConnection(database. Telpon. } } 4.setText(tableModel. try { Class. letakkan disembarang tempat yang memiliki space kosong seperti berikut ini: int row = 0. Save.String data[]=new String[5].user.close().getString(2). Buatlah kode program untuk menampilkan data yang sudah tersimpan di database. Update.getValueAt(row. Alamat. data[1] = res. tableModel.getString(1).setEnabled(true).getValueAt(row.

setEnabled(true). NamaPetugas. Telpon. Update.ActionEvent evt) { // TODO add your handling code here: BersihData(). Alamat. } 6.setEnabled(false). private void AddNewActionPerformed(java.event. } public void SetEditOff(){ IDPetugas. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 40 . dan SetEditON disembarang tempat yang memiliki space kosong seperti berikut ini: public void BersihData(){ IDPetugas. Telpon.setText(""). Save. NamaPetugas.setText(""). IDPetugas. Alamat.setEnabled(true).setEnabled(true). Telpon. Delete.setText(""). NamaPetugas.awt.setEnabled(false). Email.setText("").setEnabled(true). Alamat.setEnabled(false). Email.SetEditOff. Buatlah kode program AddNew dengan mengklik kanan button AddNew ->evens -> action -> ActionPerformed.setEnabled(true). Buatlah perintah BersihData.setEnabled(false). Email.setEnabled(false).requestFocus().setEnabled(false). } public void SetEditOn(){ IDPetugas.setEnabled(true). SetEditOn().setEnabled(false).setText("").5.

data[0] = IDPetugas.isEmpty()) |(AM. private void SaveActionPerformed(java. Connection kon = DriverManager. String EM=Email.getText(). SetEditOff()."+ "'"+Email. silahkan dilengkapi").println(ex.getText()."+ "'"+NamaPetugas.getText()+"')". data[1] = NamaPetugas.awt.pass).isEmpty())|(TP. stt.isEmpty()) | (NM. IDPetugas.getText()+"'.getText(). Save. data).getText(). kon. tableModel.getText()+"'.getText().getText().close().insertRow(0. data[3] = Email.setEnabled(false).getMessage()). String AM=Alamat. Buatlah kode program save dengan mengklik kanan button save ->events -> action -> ActionPerformed.executeUpdate(SQL). Statement stt = kon.getText(). if ((ID. } catch (Exception ex) { System. data[4] = Telpon. String NM=NamaPetugas.getText()+"'. String TP=Telpon.getText().isEmpty()) |(EM."+ "'"+Telpon.close(). data[2] = Alamat."+ "'"+Alamat.getConnection(database.forName(driver). stt.isEmpty())) { JOptionPane.event.showMessageDialog(null.getText()."data tidak boleh kosong.requestFocus().getText()+"'. } } } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 41 .user.7. BersihData(). String SQL = "insert into tblpetugas values('"+IDPetugas.err. }else { try { Class.getText().createStatement().ActionEvent evt) { // TODO add your handling code here: String ID=IDPetugas.

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 42 . silahkan dilengkapi").isEmpty()) |(EM.getClickCount()==1) { Tampil().getText()."+ "telpon='"+Telpon.showMessageDialog(null.getText(). }else { try { Class.event.awt. tableModel. String TP=Telpon.user. String NM=NamaPetugas.executeUpdate(SQL). data[3] = Email.isEmpty()) | (NM. String SQL = "Update tblpetugas set namapetugas='"+NamaPetugas.createStatement().isEmpty())|(TP.ActionEvent evt) { // TODO add your handling code here: String ID=IDPetugas. Statement stt = kon. private void tableMouseClicked(java. String AM=Alamat. data[0] = IDPetugas.event.getText()+"'"+ "Where idpetugas='"+IDPetugas. if ((ID.removeRow(row).getText(). Buatlah kode program even Click dengan mengklik kanan table(grid) ->evens -> Mouse -> MouseClicked."data tidak boleh kosong. data[2] = Alamat.getConnection(database.forName(driver).getText().pass).requestFocus()."+ "email='"+Email. IDPetugas.getText().getText()+"'.getText(). Connection kon = DriverManager."+ "alamat='"+Alamat. } } 9. stt.8. private void UpdateActionPerformed(java.getText().isEmpty()) |(AM. data[1] = NamaPetugas.getText()+"'. String EM=Email. Buatlah kode program Update dengan mengklik kanan button Update ->evens -> action -> ActionPerformed.awt.getText().getText().getText()+"'.getText()+"'".isEmpty())) { JOptionPane. data[4] = Telpon.getText().MouseEvent evt) { // TODO add your handling code here: if (evt.

createStatement(). stt.getText().getText().isEmpty()) |(AM. tableModel.toString()+"'". private void DeleteActionPerformed(java.executeUpdate(SQL). data[4] = Telpon. data[1] = NamaPetugas.setEnabled(false)."data tidak boleh kosong.forName(driver). Save. String AM=Alamat. String SQL = "Delete From tblpetugas Where idpetugas='"+IDPetugas.pass).close().getText().getText(). if ((ID. } } } 10.getMessage()). data[3] = Email. silahkan dilengkapi").getText(). data[2] = Alamat.isEmpty())|(TP.getText().getText(). Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 43 .getText(). } catch (Exception ex) { System. String TP=Telpon.data). Connection kon = DriverManager.getText(). String EM=Email.insertRow(row. data[0] = IDPetugas.event. }else { try { Class. BersihData(). Statement stt = kon.removeRow(row).getText().requestFocus().isEmpty()) | (NM.getConnection(database. kon.getText().ActionEvent evt) { // TODO add your handling code here: String ID=IDPetugas.isEmpty())) { JOptionPane.tableModel. String NM=NamaPetugas.user.println(ex. Buatlah kode program Delete dengan mengklik kanan button Delete ->evens -> action -> ActionPerformed.close().err. SetEditOff().showMessageDialog(null.awt. stt.isEmpty()) |(EM. IDPetugas.

private void CloseActionPerformed(java.close(). BersihData().OK_OPTI ON) this. JOptionPane. Buatlah kode program Cancel dengan mengklik kanan button Cancel -> events -> Action -> ActionPerformed.println(ex.awt.event. } catch (Exception ex) { System.close()."Information".stt. } } } 11.ActionEvent evt) { // TODO add your handling code here: BersihData().OK_CANCEL_OPTION.setEnabled(false).JOptionPane. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed. } 12.showConfirmDialog(null. kon.ActionEvent evt) { // TODO add your handling code here: if(JOptionPane. SetEditOff().dispose().err.awt. } 13.event. Jalankan Program kemudian klik menu Data Petugas maka akan tampil seperti berikut: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 44 .getMessage()).INFORMATION_MESSAGE)==JOptionPane. Save. SetEditOff()."This application will be close \n if you press button OK". private void CancelActionPerformed(java.

Pada jendela New JFrame Form. Pilih New -> JFrame Form….21 Tampilan Form Data Petugas Membuat Desain Form Data Distributor 1.Gambar 1. Buatlah file baru dalam paket AplikasiPenjualan. sehingga muncul jendela New File.22 Membuat Objek Baru 2. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 45 . lalu tekan tombol Finish untuk mengakhiri. dan Package pilih aplikasipenjualan. Gambar 1. dengan cara klik kanan paket Penjualan. isikan FrmDistributor pada kotak isian Class Name.

24 Desain Form Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 46 .23 Menentukan Nama Form JFrame Form Gambar 1.Gambar 1.

11 Daftar Propertis yang digunakan Pallete Label1 Label2 Label3 Label4 Label5 Label6 TextField1 TextField2 TextArea1 TextField3 Edit Text ID Distributor Nama Distributor Alamat Distributor Kota Asal E-Mail Telpon Propertis Change Variable Name jLabel1 jLabel2 jLabel3 jLabel4 jLabel5 jLabel6 IDDistributor NamaDistributor Alamat KotaAsal 47 Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA . Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.3.25 Desain Form Data Distributor Keterangan : Tabel 1.

swing.user.height = screenSize.setLocation((screenSize.awt.userLogin. } if(frameSize.getSize().getDefaultToolkit().height.getScreenSize().width=screenSize.sql.height){ frameSize.width > screenSize. 2.width .event.swing.ini Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 48 .swing.pass. Dimension screenSize=Toolkit.database.height > screenSize. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut: package penjualan. //setting untuk memanggil koneksi Database. Dimension frameSize=this.width) / 2. /** Creates new form Frmdistributor */ public Frmdistributor() { initComponents(). } this. import javax.width.frameSize. private Object tabel. if(frameSize. String driver.JFrame { Database dbsetting. import java.*.*.awt. Pada bagian public class FrmDistributor extends javax.height) / 6). import java. (screenSize.JFrame tambahkan kode berikut: public class Frmdistributor extends javax.TextField4 TextField5 Button1 Button2 Button3 Button4 Button5 Button6 Table Add New Save Update Delete Cancel Close - Email Telpon AddNew Save Update Delete Cancel Close table Syntax Program 1.width){ frameSize.height=screenSize. import java.*.*.

tbc. Tabel(table. false }. false. Buatlah kode program diatas // Variables declaration .setModel(tableModel).DefaultTableModel( new Object[][] {}.table."Telpon"} ){ boolean[] canEdit = new boolean[]{ false.300.SettingPanel("DBDatabase")."Alamat Distributor". table.AUTO_RESIZE_OFF).SettingPanel("DBDriver").SettingPanel("DBUsername").setAutoResizeMode(JTable.setPreferredWidth(lebar[i]).i++) { javax. database = dbsetting. } }.table. new int[]{90.table.do not modify untuk menampilkan data pada tabel seperti berikut: private javax.260. int kolom=tb.JTable tb. user = dbsetting. pass = dbsetting.getColumn(i). } } private javax. setDefaultTable(). private void Tabel(javax.swing. SetEditOff().table. public boolean isCellEditable(int rowIndex. "Alamat E-Mail".swing.100}). } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 49 .DefaultTableModel tableModel=getDefaultTabelModel(). } 3.260.DefaultTableModel getDefaultTabelModel() { return new javax.setRowHeight(17).TableColumn tbc=tb. driver = dbsetting.340.i < kolom.swing.dbsetting = new Database(). for(int i=0. false. int lebar[] ) { tb.SettingPanel("DBPassword").getColumnModel().getColumnCount()."Kota Asal"."Nama Distributor". tb.swing.swing. new String [] {"ID Distributor". int columnIndex){ return canEdit[columnIndex].

getString(3).close().forName(driver). data[3] = res. data[1] = res. String SQL = "SELECT * FROM tbldistributor". data[4] = res.pass).getValueAt(row.addRow(data). data[5] = res.executeQuery(SQL). Connection kon = DriverManager. while(res. ResultSet res = stt. private void setDefaultTable() { String stat ="".user. 1).setText(tableModel.toString()).getValueAt(row.setEnabled(true). } res. 0).getValueAt(row. kon. stt. Save.toString()). } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 50 .setText(tableModel. } } 4.getMessage()).setText(tableModel.String data[]=new String[6]. 2).getConnection(database.getString(6). try { Class.close().setText(tableModel.err. SetEditOn().setText(tableModel. Telpon.getValueAt(row. 5).toString()). Email. 3).close(). Alamat.setEnabled(true). tableModel. KotaAsal. public void Tampil(){ row = table.toString()).setEnabled(false). data[2] = res.getValueAt(row.toString()).getString(2).println(ex. 4).getString(4). Delete.next()){ data[0] = res.getString(1). Update.setText(tableModel.getValueAt(row.getString(5). letakkan disembarang tempat yang memiliki space kosong seperti berikut ini: int row = 0.getSelectedRow().toString()).createStatement(). Buatlah kode program untuk menampilkan data yang sudah tersimpan di database. IDDistributor. NamaDistributor. } catch (Exception ex) { System. Statement stt = kon.

setEnabled(false). Save. Alamat. SetEditOn().setEnabled(false). Update.setEnabled(false). private void AddNewActionPerformed(java.setText("").setText("").setEnabled(false). Email. Telpon. Email. NamaDistributor. Telpon.setEnabled(true). Buatlah kode program AddNew dengan mengklik kanan button AddNew ->evens -> action -> ActionPerformed. IDDistributor. } public void SetEditOff(){ IDDistributor.setText(""). Alamat.setEnabled(true). Buatlah perintah BersihData. Telpon. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 51 .ActionEvent evt) { // TODO add your handling code here: BersihData(). } 6.setEnabled(true).setText("").setEnabled(true).setEnabled(false).setEnabled(true).setEnabled(false). Alamat.setText(""). Email.SetEditOff. Delete.setEnabled(false). NamaDistributor. } public void SetEditOn(){ IDDistributor. KotaAsal.awt. KotaAsal.setEnabled(true).5. NamaDistributor.setText("").event. KotaAsal. dan SetEditON disembarang tempat yang memiliki space kosong seperti berikut ini: public void BersihData(){ IDDistributor.setEnabled(false).requestFocus().setEnabled(true).

getText()+"'."+ "'"+KotaAsal.isEmpty()) |(KA. BersihData()."+ "'"+Email.getText()+"'.getText(). }else { try { Class. IDDistributor.showMessageDialog(null.getText(). data[4] = Email.getText()."data tidak boleh kosong. Buatlah kode program save dengan mengklik kanan button save ->events -> action -> ActionPerformed. private void SaveActionPerformed(java. data[1] = NamaDistributor.isEmpty())|(TP.isEmpty()) | (ND.close(). Connection kon = DriverManager.getText()+"'.isEmpty())|(EM."+ "'"+NamaDistributor.getText(). Statement stt = kon. stt. SetEditOff().getConnection(database.isEmpty()) |(AM. data).getText().executeUpdate(SQL).insertRow(0.setEnabled(false).getText()+"'. data[5] = Telpon.isEmpty())) { JOptionPane. String ND=NamaDistributor."+ "'"+Telpon.close().forName(driver).getText().awt. Save.getText()+"'.pass). tableModel. data[0] = IDDistributor. String TP=Telpon. stt.ActionEvent evt) { // TODO add your handling code here: String ID=IDDistributor. kon.user.createStatement().getText()+"')".requestFocus().getText(). silahkan dilengkapi"). String AM=Alamat. String SQL = "insert into tbldistributor values('"+IDDistributor.getText(). data[2] = Alamat.getText(). String EM=Email. if ((ID.getText(). String KA=KotaAsal."+ "'"+Alamat.getText().getText(). data[3] = KotaAsal.7.event. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 52 .

silahkan dilengkapi")."+ "kotaasal='"+KotaAsal.isEmpty())|(EM.err.getConnection(database.createStatement().getText().getText().getClickCount()==1) { Tampil()."+ "alamat='"+Alamat.event.println(ex.} catch (Exception ex) { System."data tidak boleh kosong. String TP=Telpon.getText(). String ND=NamaDistributor. String KA=KotaAsal.awt.getText().isEmpty())) { JOptionPane. Buatlah kode program Update dengan mengklik kanan button Update ->evens -> action -> ActionPerformed.getText()+"'.isEmpty())|(TP.getText()+"'. Statement stt = kon.requestFocus().getText().isEmpty()) | (ND. Buatlah kode program even Click dengan mengklik kanan table(grid) ->evens -> Mouse -> MouseClicked.forName(driver). String EM=Email.event. String SQL = "Update tbldistributor Set namadistributor='"+NamaDistributor.getText()+"'. private void UpdateActionPerformed(java. }else { try { Class.ActionEvent evt) { // TODO add your handling code here: String ID=IDDistributor.isEmpty()) |(AM.user. private void tableMouseClicked(java."+ Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 53 .awt.isEmpty()) |(KA.getMessage()). if ((ID. } } 9. Connection kon = DriverManager.MouseEvent evt) { // TODO add your handling code here: if (evt. } } } 8.showMessageDialog(null.getText(). IDDistributor.pass). String AM=Alamat.

"email='"+Email. SetEditOff().executeUpdate(SQL).close().isEmpty()) | (ND.event. kon.getText(). data[5] = Telpon.awt.getText().isEmpty()) |(KA. } catch (Exception ex) { System.isEmpty())|(EM. tableModel.getText(). IDDistributor.getText().removeRow(row).println(ex.getText(). Buatlah kode program Delete dengan mengklik kanan button Delete ->evens -> action -> ActionPerformed. BersihData(). data[1] = NamaDistributor.insertRow(row. String TP=Telpon.getText(). data[0] = IDDistributor.getText(). String KA=KotaAsal.getText()+"'"+ "Where iddistributor='"+IDDistributor.getText()+"'".data).getText().close(). String EM=Email. data[2] = Alamat. if ((ID."data tidak boleh kosong. data[3] = KotaAsal.isEmpty()) |(AM."+ "telpon='"+Telpon.getText(). Save. stt.isEmpty())) { JOptionPane. String ND=NamaDistributor. data[4] = Email.getText(). }else { Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 54 . stt.getText().isEmpty())|(TP.requestFocus().getMessage()). tableModel.getText(). private void DeleteActionPerformed(java.setEnabled(false).err.getText()+"'.showMessageDialog(null. silahkan dilengkapi"). String AM=Alamat. } } } 10.ActionEvent evt) { // TODO add your handling code here: String ID=IDDistributor.

event. } 12. stt. JOptionPane.INFORMATION_MESSAGE)==JOptionPane. Save. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed. private void CloseActionPerformed(java.OK_OPTI ON) this.removeRow(row). Buatlah kode program Cancel dengan mengklik kanan button Cancel -> events -> Action -> ActionPerformed. data[2] = Alamat.getText(). Statement stt = kon. data[3] = KotaAsal.getConnection(database.err.executeUpdate(SQL).pass)."This application will be close \n if you press button OK". Connection kon = DriverManager.user.getText().createStatement(). Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 55 .close().close(). BersihData().showConfirmDialog(null. data[1] = NamaDistributor.OK_CANCEL_OPTION.dispose().getText(). kon.getText(). String SQL = "Delete From tbldistributor Where iddistributor='"+IDDistributor. } } } 11.getText().getText()."Information".getMessage()). } catch (Exception ex) { System.forName(driver). tableModel. SetEditOff(). data[0] = IDDistributor. data[4] = Email.println(ex.JOptionPane.setEnabled(false).awt. stt.toString()+"'". data[5] = Telpon.getText().try { Class.ActionEvent evt) { // TODO add your handling code here: if(JOptionPane.

event. SetEditOff().26 Tampilan Form Data Distributor Membuat Desain Form Data Barang Masuk 1. Pilih New -> JFrame Form….private void CancelActionPerformed(java. sehingga muncul jendela New File. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 56 .ActionEvent evt) { // TODO add your handling code here: BersihData(). dengan cara klik kanan paket Penjualan.awt. Buatlah file baru dalam paket AplikasiPenjualan. } 13. Jalankan Program kemudian klik menu Data Distributor maka akan tampil seperti berikut: Gambar 1.

27 Membuat Objek Baru 2. Gambar 1.Gambar 1. lalu tekan tombol Finish untuk mengakhiri. dan Package pilih aplikasipenjualan. Pada jendela New JFrame Form. isikan FrmBrgMasuk pada kotak isian Class Name.28 Menentukan Nama Form JFrame Form Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 57 .

Gambar 1. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.30 Desain Form Data Barang Masuk Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 58 .29 Desain Form Baru 3.

11 Daftar Propertis yang digunakan Pallete Label1 Label2 Label3 Label4 Label5 Label6 Label7 Label8 Label9 Label10 Label11 Label12 Label13 Label14 TextField1 TextField2 ComboBox1 TextField3 ComboBox2 TextField4 TextField5 ComboBox3 TextField6 TextField7 TextField8 TextField9 TextField10 TextField11 Button1 Button2 Button3 Button4 Button5 Button6 Table Edit Text Tanggal Barang Masuk No.Nota ID Petugas Nama Petugas ID Distributor Nama Distributor Kota Asal Kode Barang Nama Barang Harga Jual Stok Jumlah Sub Total Rp Total Rp Cari Data Hitung Add Item Add New Save Transaction Close Propertis Change Variable Name jLabel1 jLabel2 jLabel3 jLabel4 jLabel5 jLabel6 jLabel7 jLabel8 jLabel9 jLabel10 jLabel11 jLabel12 jLabel13 jLabel14 TglMasuk NoNota IDPetugas NamaPetugas IDDistributor NamaDistributor KotaAsal KodeBarang NamaBarang HargaJual Stok Jumlah SubTotal Total CariData Hitung AddItem AddNew SaveTransaction Close table Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 59 .Keterangan : Tabel 1.

String driver.width=screenSize.setModel(tableModel). import javax. Tabel(table.getSize(). new int[]{90.database.getScreenSize(). pass = dbsetting.SettingPanel("DBUsername").awt.90}).SettingPanel("DBPassword").getDefaultToolkit().*.300. user = dbsetting.JFrame { Database dbsetting. SetEditOff(). /** Creates new form FrmBrgMasuk */ public FrmBrgMasuk() { initComponents().width.sql.ini dbsetting = new Database(). driver = dbsetting.*.swing.height=screenSize. Dimension frameSize=this.user. } this.60.width) / 2.*. import java.event.frameSize.width){ frameSize.userLogin. 2.height){ frameSize.swing. TanggalOtomatis(). if(frameSize. setDefaultTable().SettingPanel("DBDriver").height > screenSize. //setting untuk memanggil koneksi Database.90. Dimension screenSize=Toolkit. } if(frameSize.60. private Object tabel.Syntax Program 1.SettingPanel("DBDatabase").width > screenSize.width . database = dbsetting. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut: package penjualan. (screenSize. Pada bagian public class FrmBrgMasuk extends javax.swing. import java.pass.awt. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 60 .height = screenSize.JFrame tambahkan kode berikut: public class FrmBrgMasuk extends javax.setLocation((screenSize. import java. table.*.height.height) / 10).

do not modify untuk menampilkan data pada tabel seperti berikut: private javax. tb.swing.swing.i++) { javax. int lebar[] ) { tb.setPreferredWidth(lebar[i])."Nama Barang".i < kolom.getColumnCount(). private void Tabel(javax."Sub Total"} ){ boolean[] canEdit = new boolean[]{ false."Jumlah". int kolom=tb.swing.TableColumn tbc=tb.table. for(int i=0.getColumn(i). Buatlah kode program diatas // Variables declaration .DefaultTableModel tableModel=getDefaultTabelModel(). new String [] {"Kode Barang". TampilComboPetugas(). TampilComboDistributor(). } 3.table.JTable tb.DefaultTableModel getDefaultTabelModel() { return new javax."Harga Jual". int columnIndex){ return canEdit[columnIndex].AUTO_RESIZE_OFF).getColumnModel().swing. false }.DefaultTableModel( new Object[][] {}. } }.setRowHeight(17). false. tbc.setAutoResizeMode(JTable. false.table. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 61 ."Stok". public boolean isCellEditable(int rowIndex.table. } } private javax.swing.TampilComboBarang().

hargajual.getString(5). kon. data[4] = res.subtotal.kodebarang=tbldetailbrgmasuk.getText()+"'".hargajual.tblbrgmasuk.tblbarang.err. data[2] = res.getConnection(database. data[1] = res. try { Class.tblbrgmasuk.forName(driver).nonota" + "AND tbldetailbrgmasuk.jumlah. String SQL = "SELECT tblbarang.executeQuery(SQL).user. stt.namabarang. } res.stok.tbldetailbrgmasuk.getString(3).addRow(data).tblbarang.user.pass).close().getString(1).tblbarang.tbldetailbrgmasuk.jumlah.forName(driver).kodebarang.stok. data[3] = res." + "tblbarang. Buatlah private baru TampilGridDetail kemudian buat kode program seperti berikut: private void TampilGridDetail(){ String stat ="".tbldetailbrgmasuk.tblbarang.getString(4).pass). String SQL = "SELECT tblbarang.nonota " + Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 62 . tableModel.nonota='"+NoNota.kodebarang.println(ex.createStatement(). Connection kon = DriverManager.nonota=tbldetailbrgmasuk." + "tblbarang.nonota " + "FROM tblbarang. while(res.namabarang.tbldetailbrgmasuk. Statement stt = kon.getString(2). } } 4.close(). ResultSet res = stt.getString(6).kodebarang " + "AND tblbrgmasuk.getConnection(database. } catch (Exception ex) { System.tbldetailbrgmasuk.next()){ data[0] = res. data[5] = res.close().createStatement(). private void setDefaultTable() { String stat ="".getMessage()).String data[]=new String[6].subtotal. Connection kon = DriverManager. try { Class. Statement stt = kon.tblbrgmasuk WHERE tblbarang.

getString(5). dan SetEditON disembarang tempat yang memiliki space kosong seperti berikut ini: public void BersihData(){ tableModel. NoNota. tableModel.nonota " + "AND tbldetailbrgmasuk. KotaAsal. NamaBarang. } } 5.getMessage()). Jumlah.setText("0")."FROM tblbarang. data[3] = res. kon. Stok.getString(4).setText("").setText("").next()){ data[0] = res. IDPetugas.getString(1). SubTotal. NamaPetugas. KodeBarang.close().kodebarang " + "AND tblbrgmasuk. } res. NamaDistributor.toString()+"'". } catch (Exception ex) { System.nonota='"+NoNota. data[2] = res.getString(3).setText("0").setText(""). HargaJual.setText(""). data[5] = res. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 63 .nonota=tbldetailbrgmasuk.close(). stt.setSelectedIndex(0). IDDistributor.addRow(data).setText("").executeQuery(SQL). data[1] = res.kodebarang=tbldetailbrgmasuk.tbldetailbrgmasuk. Total. data[4] = res.BersihDetail.setText(""). ResultSet res = stt. while(res.close().tblbrgmasuk WHERE tblbarang.err.getString(6).setText(""). Buatlah perintah BersihData.getText().setRowCount(0).println(ex.setSelectedIndex(0).setSelectedIndex(0).SetEditOff.getString(2).setText("").

Buatlah kode program pada kombobox idpetugas dengan cara klik kanan pilih events -> item -> itemStatChanged. AddItem.setEnabled(false). private void IDPetugasItemStateChanged(java.setEnabled(true). IDPetugas. CariData.setEnabled(true). } public void SetEditOff(){ NoNota. TglMasuk.setEnabled(false).setEnabled(false).setEnabled(true).public void BersihDetail(){ KodeBarang. IDDistributor. Stok.setEnabled(true). AddItem.user. } public void SetEditOn(){ NoNota.setText(""). KodeBarang. NamaBarang.setEnabled(true). Jumlah.setEnabled(true).pass). Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 64 .setEnabled(true). HargaJual.setEnabled(true).setSelectedIndex(0).awt. CariData.setEnabled(false). SubTotal.setEnabled(false).ItemEvent evt) { // TODO add your handling code here: try { Connection kon = DriverManager. KodeBarang.event.setEnabled(false).setEnabled(true).setEnabled(false).setText(""). IDDistributor.setEnabled(false). SaveTransaction.setEnabled(false).setEnabled(true).getConnection(database.setText(""). IDPetugas. Hitung. Jumlah. Hitung. TglMasuk. Jumlah.setText(""). } 6.setText("0").

createStatement(ResultSet. } catch (SQLException ex) { } } 7. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 65 .TYPE_SCROLL_INSENSITIVE.setText(res.event.TYPE_SCROLL_INSENSITIVE.getString("kotaasal")).awt.createStatement(ResultSet. ResultSet res = stt.user.executeQuery(SQL).toString()+"'". res. NamaDistributor. } } catch (SQLException ex) { } } 8.setText(res.absolute(1).pass). while(res. res. String SQL = "SELECT * FROM tblpetugas".ItemEvent evt) { // TODO add your handling code here: try { Connection kon = DriverManager.CONCUR_UPDATABLE). String SQL = "SELECT * FROM tblpetugas where idpetugas='"+ IDPetugas.getString("idpetugas")). String SQL = "SELECT * FROM tbldistributor where iddistributor='"+ IDDistributor.CONCUR_UPDATABLE).user.TYPE_SCROLL_INSENSITIVE. KotaAsal.getSelectedItem().setText(res.getString("namadistributor")).getString("namapetugas")).Statement stt = kon. ResultSet.getConnection(database. ResultSet.CONCUR_UPDATABLE).pass).getSelectedItem().addItem(res. Statement stt = kon.executeQuery(SQL).next()){ IDPetugas.createStatement(ResultSet. NamaPetugas. Statement stt = kon.executeQuery(SQL). Buatlah kode program pada kombobox iddistributor dengan cara klik kanan pilih events -> item -> itemStatChanged. ResultSet. Buatlah private baru untuk menampilakn data pada kombobox idpetugas seperti berikut: public void TampilComboPetugas(){ try { Connection kon = DriverManager. private void IDDistributorItemStateChanged(java.absolute(1).getConnection(database. ResultSet res = stt. ResultSet res = stt.toString()+"'".

getConnection(database.getString("hargajual")). Buatlah private baru untuk menampilakn data pada kombobox iddistributor seperti berikut: public void TampilComboDistributor(){ try { Connection kon = DriverManager.createStatement(ResultSet. Stok.requestFocus().TYPE_SCROLL_INSENSITIVE. NamaBarang. ResultSet res = stt.setText(res.} catch (SQLException ex) { } } 9.next()){ IDDistributor.setText(res.getSelectedItem().createStatement(ResultSet. String SQL = "SELECT * FROM tblbarang where kodebarang='"+ KodeBarang.absolute(1). ResultSet res = stt.setEnabled(true). String SQL = "SELECT * FROM tbldistributor".getString("namabarang")).awt.executeQuery(SQL). AddItem. ResultSet. } } catch (SQLException ex) { } } 10.getConnection(database. ResultSet.TYPE_SCROLL_INSENSITIVE.executeQuery(SQL).getString("iddistributor")). Buatlah kode program pada kombobox kodebarang dengan cara klik kanan pilih events -> item -> itemStatChanged.event. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 66 .CONCUR_UPDATABLE). Statement stt = kon. Statement stt = kon.toString()+"'".user.pass).ItemEvent evt) { // TODO add your handling code here: try { Connection kon = DriverManager. } catch (SQLException ex) { } Jumlah. while(res.CONCUR_UPDATABLE).setText(res. private void KodeBarangItemStateChanged(java. res.user.getString("stok")).pass).addItem(res. HargaJual.

while(res. Buatlah private baru untuk menampilakn data pada kombobox iddistributor seperti berikut: public void TampilComboBarang(){ try { Connection kon = DriverManager.format("%1$td:%1$tb:%1$tY". c = a * b.CONCUR_UPDATABLE). } 13. Buatlah kode program untuk menampilkan perhitungan subtotal dengan mengkilik button hitung -> events -> action -> ActionPerformed.getConnection(database.getString("kodebarang")). b = Integer. private void HitungActionPerformed(java.getText()).tanggal))).valueOf(c)). TglMasuk.getText()).setText(String. ResultSet.setText(""+ (String. } } catch (SQLException ex) { } } 12.TYPE_SCROLL_INSENSITIVE. Statement stt = kon. } 14.user.awt.pass). double c. Buatlah private baru untuk menampilkan tanggal otomatis seperti berikut: public void TanggalOtomatis(){ Date tanggal = new Date(). Buatlah kode program untuk menampilkan total dengan cara klik kanan textfield subtotal -> events -> charet -> charetUpdate. SubTotal. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 67 .parseInt(HargaJual. String SQL = "SELECT * FROM tblbarang".parseInt(Jumlah.next()){ KodeBarang. a = Integer.addItem(res.createStatement(ResultSet. int b.executeQuery(SQL). ResultSet res = stt.event.11.ActionEvent evt) { // TODO add your handling code here: int a.

} 16.event.ActionEvent evt) { // TODO add your handling code here: SetEditOn().requestFocus(). String SQL = "insert into tbldetailbrgmasuk values('"+NoNota.toString().createStatement(). NoNota.user."+ "'"+SubTotal. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 68 .valueOf(e))."+ "'"+KodeBarang.pass). Connection kon = DriverManager.setText(String.parseDouble(Total.CaretEvent evt) { // TODO add your handling code here: double d."data tidak boleh kosong.getText().isEmpty())) { JOptionPane.ActionEvent evt) { // TODO add your handling code here: String NM=NoNota.isEmpty()) |(JM.showMessageDialog(null.requestFocus(). Buatlah kode program Add Item dengan mengklik kanan button save ->events -> action -> ActionPerformed.swing. if ((NM. String JM=Jumlah.getText().getText()+"')". Buatlah kode program AddNew dengan mengklik kanan button AddNew ->events -> action -> ActionPerformed.isEmpty()) | (KB.awt. String KB=KodeBarang. } 15.getSelectedItem(). KodeBarang.parseDouble(SubTotal.getSelectedItem()+"'.getText()).getText()).event.event. Statement stt = kon. private void AddNewActionPerformed(java. private void AddItemActionPerformed(java. silahkan dilengkapi").private void SubTotalCaretUpdate(javax. }else { try { Class. e.awt.executeUpdate(SQL). Total.getText()+"'.getText()+"'. stt. e = e+d. BersihData().getConnection(database. d = Double. e = Double.forName(driver)."+ "'"+Jumlah.

data[0] = KodeBarang. stt. BersihDetail().executeUpdate(SQL1).getSelectedItem().pass). KodeBarang.getText().toString()+"'". kon.forName(driver). data[2] = HargaJual.requestFocus().requestFocus().getText().getText(). data).toString(). tableModel.insertRow(0.getMessage()).user. Connection kon1 = DriverManager.close().getConnection(database.getText().getText(). String SQL1 = "Update tblbarang Set stok=stok + '"+Jumlah.setEnabled(false). data[3] = Stok. Statement stt1 = kon. AddItem.println(ex.createStatement(). stt1. KodeBarang. data[1] = NamaBarang.err. } } } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 69 .getText()+"'" + "Where kodebarang='"+KodeBarang.getSelectedItem(). data[4] = Jumlah.Class. //TampilGrid(). } catch (Exception ex) { System. data[5] = SubTotal.close().

close().user.getText(). } catch (Exception ex) { System. String SQL = "insert into tblbrgmasuk values('"+NoNota. stt. kon. Statement stt = kon.getSelectedItem()+"'."+ "'"+Total. silahkan dilengkapi").getText()+"')". if ((NM.forName(driver). SaveTransaction. SetEditOff().isEmpty())) { JOptionPane.17."+ "'"+IDPetugas.getText()+"'.awt.close(). } } } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 70 . Connection kon = DriverManager.createStatement(). NoNota. private void SaveTransactionActionPerformed(java.ActionEvent evt) { // TODO add your handling code here: String NM=NoNota."data tidak boleh kosong."+ "'"+IDDistributor.getMessage()).println(ex.requestFocus().err.getSelectedItem()+"'."+ "'"+TglMasuk.getText()+"'.setEnabled(false).executeUpdate(SQL).event.showMessageDialog(null. BersihData(). }else { try { Class. Buatlah kode program SaveTransaction dengan mengklik kanan button save ->events -> action -> ActionPerformed.getConnection(database.pass). stt.

Statement stt = kon.setEnabled(false).absolute(1).createStatement(ResultSet.user.setEnabled(false). Buatlah kode program Cari Data dengan mengklik kanan button Cancel -> events -> Action -> ActionPerformed. String SQL = "SELECT * FROM tblbrgmasuk where nonota='"+NoNota.event.OK_CANCEL_OPTION.getText(). CariData.dispose().awt. private void CloseActionPerformed(java. TglMasuk. NoNota.pass).event. } catch (SQLException ex) { } } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 71 . Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed."This application will be close \n if you press button OK".JOptionPane.ActionEvent evt) { // TODO add your handling code here: try { Connection kon = DriverManager.getString("iddistributor")).setSelectedItem(res. Total.18. } 19.TYPE_SCROLL_INSENSITIVE.getConnection(database.getString("total")).getString("tglmasuk")).INFORMATION_MESSAGE)==JOptionPane.CONCUR_UPDATABLE). SaveTransaction. JOptionPane.setText(res.showConfirmDialog(null. IDDistributor.toString()+"'". IDPetugas.OK_OPTI ON) this.ActionEvent evt) { // TODO add your handling code here: if(JOptionPane.getString("idpetugas")).setText(res. TampilGridDetail()."Information". ResultSet.awt. private void CariDataActionPerformed(java.setEnabled(false). res.executeQuery(SQL). ResultSet res = stt.setSelectedItem(res.

31 Tampilan Form Data Barang Masuk Membuat Desain Form Data Penjualan 1. sehingga muncul jendela New File. Gambar 1.32 Membuat Objek Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 72 . dengan cara klik kanan paket Penjualan. Pilih New -> JFrame Form….20. Buatlah file baru dalam paket AplikasiPenjualan. Jalankan Program kemudian klik menu Data Barang Masuk maka akan tampil seperti berikut: Gambar 1.

lalu tekan tombol Finish untuk mengakhiri. Gambar 1.2.33 Menentukan Nama Form JFrame Form Gambar 1.34 Desain Form Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 73 . isikan FrmPenjualan pada kotak isian Class Name. dan Package pilih aplikasipenjualan. Pada jendela New JFrame Form.

Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.3.35 Desain Form Data Penjualan Barang Keterangan : Tabel 1.12 Daftar Propertis yang digunakan Pallete Label1 Label2 Label3 Label4 Label5 Label6 Label7 Label8 Label9 Label10 Label11 TextField1 TextField2 ComboBox1 TextField3 ComboBox2 Edit Text Tanggal Penjualan No.Faktur ID Petugas Nama Petugas Kode Barang Nama Barang Harga Jual Stok Jumlah Sub Total Rp Total Rp Propertis Change Variable Name jLabel1 jLabel2 jLabel3 jLabel4 jLabel8 jLabel9 jLabel10 jLabel11 jLabel12 jLabel13 jLabel14 TglPenjualan NoFaktur IDPetugas NamaPetugas KodeBarang 74 Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA .

user. String driver.height=screenSize.height > screenSize.JFrame tambahkan kode berikut: public class FrmPenjualan extends javax.*. if(frameSize. Dimension screenSize=Toolkit. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut: package penjualan. /** Creates new form FrmPenjualan */ public FrmPenjualan() { initComponents(). } if(frameSize. 2.awt.userLogin.width > screenSize. Pada bagian public class FrmBrgMasuk extends javax.database.JFrame { Database dbsetting.event.height.swing.awt.*.width. Dimension frameSize=this.height){ frameSize.getSize().swing. private Object tabel.swing.sql. import javax.getDefaultToolkit().*.getScreenSize(). import java.width=screenSize.TextField4 TextField5 TextField6 TextField7 TextField8 TextField9 Button1 Button2 Button3 Button4 Button5 Button6 Table Cari Data Hitung Add Item Add New Save Transaction Close - NamaBarang HargaJual Stok Jumlah SubTotal Total CariData Hitung AddItem AddNew SaveTransaction Close table Syntax Program 1. import java. import java.pass. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 75 .width){ frameSize.*.

for(int i=0.DefaultTableModel( new Object[][] {}.SettingPanel("DBUsername").ini dbsetting = new Database().setLocation((screenSize."Stok". } } private javax.table. table.swing. (screenSize. false. tb.do not modify untuk menampilkan data pada tabel seperti berikut: private javax.60. tbc. Buatlah kode program diatas // Variables declaration .setPreferredWidth(lebar[i]).width) / 2.300. user = dbsetting."Harga Jual".setRowHeight(17).60. TanggalOtomatis().AUTO_RESIZE_OFF).setAutoResizeMode(JTable.frameSize.SettingPanel("DBPassword").i++) { javax.height = screenSize. int columnIndex){ Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 76 .swing.JTable tb. new String [] {"Kode Barang".DefaultTableModel getDefaultTabelModel() { return new javax.height) / 10).this.DefaultTableModel tableModel=getDefaultTabelModel(). Tabel(table.swing. false }.setModel(tableModel).table.TableColumn tbc=tb. false.SettingPanel("DBDatabase").90}). driver = dbsetting.getColumnCount(). SetEditOff(). private void Tabel(javax. } 3.i < kolom. int kolom=tb."Jumlah".table.getColumnModel().swing."Sub Total"} ){ boolean[] canEdit = new boolean[]{ false.90. new int[]{90. pass = dbsetting.width ."Nama Barang". setDefaultTable(). TampilComboBarang().SettingPanel("DBDriver"). //setting untuk memanggil koneksi Database. public boolean isCellEditable(int rowIndex.table.swing.getColumn(i). database = dbsetting. TampilComboPetugas(). int lebar[] ) { tb.

tbldetailpenjualan.println(ex.createStatement().close(). try { Class.kodebarang " + "AND tblpenjualan.nofaktur " + "FROM tblbarang. Statement stt = kon.close().err. } String data[]=new String[6].getString(5).getString(4).tblpenjualan WHERE tblbarang.addRow(data). ResultSet res = stt." + "tblbarang.nofaktur=tbldetailpenjualan. tableModel.hargajual.getString(2). } catch (Exception ex) { System. data[4] = res.tblbarang. } }. while(res. data[1] = res.getConnection(database.stok.close().getString(6). String SQL = "SELECT tblbarang.getString(1).kodebarang=tbldetailpenjualan.return canEdit[columnIndex].kodebarang.forName(driver).subtotal.getText()+"'". } } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 77 . kon.user.getMessage()).next()){ data[0] = res. data[5] = res. data[2] = res.nofaktur" + "AND tbldetailpenjualan. Connection kon = DriverManager. data[3] = res.tbldetailpenjualan. private void setDefaultTable() { String stat ="".getString(3).namabarang.tbldetailpenjualan.jumlah.pass). } res.nofaktur='"+NoFaktur.tblbarang. stt.executeQuery(SQL).tblpenjualan.

kodebarang. data[1] = res.namabarang. tbldetailpenjualan. ResultSet res = stt. } } 5.close(). data[3] = res.kodebarang=tbldetailpenjualan.getConnection(database.createStatement(). IDPetugas. String SQL = "SELECT tblbarang.getString(6).forName(driver).tbldetailpenjualan. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 78 .getString(5).executeQuery(SQL).kodebarang " + "AND tblpenjualan.BersihDetail.subtotal.getString(3).getString(1).nofaktur " + "FROM tblbarang.setSelectedIndex(0). data[4] = res.getString(2). Buatlah private baru TampilGridDetail kemudian buat kode program seperti berikut: private void TampilGridDetail(){ String stat ="". dan SetEditON disembarang tempat yang memiliki space kosong seperti berikut ini: public void BersihData(){ tableModel.setText(""). Connection kon = DriverManager. KodeBarang. Statement stt = kon. NamaPetugas.getString(4).tbldetailpenjualan.nofaktur " + "AND tbldetailpenjualan.hargajual. kon.addRow(data).tblbarang. Buatlah perintah BersihData.close().tblpenjualan. tableModel.getText().toString() + "'". data[2] = res.println(ex. tblpenjualan " + "WHERE tblbarang." +"tblbarang.SetEditOff.nofaktur=tbldetailpenjualan. while(res.nofaktur='" + NoFaktur.setSelectedIndex(0).tblbarang.setText("").next()){ data[0] = res. } catch (Exception ex) { System.getMessage()).jumlah. NamaBarang. data[5] = res. try { Class.user.close().pass). } res.setRowCount(0). stt.stok.setText("").4. NoFaktur.err.

AddItem.setText("0"). Bayar. CariData.setText("").setText("").setEnabled(true). } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 79 .setText("").setEnabled(false). HargaJual.setEnabled(false).setText("0").setEnabled(true). Jumlah. Jumlah. } public void BersihDetail(){ KodeBarang.setEnabled(false). KodeBarang.setSelectedIndex(0).setEnabled(true).setEnabled(true). Stok. TglPenjualan. KodeBarang.setText(""). Total. Hitung. Stok. TglPenjualan.setEnabled(false). Jumlah.setText("0"). Jumlah.setText("0").setEnabled(false). Hitung. Sisa. } public void SetEditOn(){ NoFaktur.setEnabled(true).setEnabled(true).setEnabled(false). AddItem.setEnabled(true). IDPetugas.setEnabled(true).setText(""). IDPetugas.setText("0"). CariData. } public void SetEditOff(){ NoFaktur.setText(""). NamaBarang. SubTotal. SaveTransaction.HargaJual. SubTotal.setEnabled(false).setEnabled(true).setText("").setEnabled(false).

ResultSet. res. } catch (SQLException ex) { } } 7.getConnection(database.6.setText(res.next()){ IDPetugas.getConnection(database.executeQuery(SQL). Statement stt = kon. private void IDPetugasItemStateChanged(java. String SQL = "SELECT * FROM tblpetugas where idpetugas='"+ IDPetugas. ResultSet res = stt.getString("namapetugas")). Buatlah kode program pada kombobox idpetugas dengan cara klik kanan pilih events -> item -> itemStatChanged. Statement stt = kon.pass).CONCUR_UPDATABLE). Buatlah private baru untuk menampilakn data pada kombobox idpetugas seperti berikut: public void TampilComboPetugas(){ try { Connection kon = DriverManager. ResultSet res = stt.addItem(res.absolute(1).getSelectedItem(). String SQL = "SELECT * FROM tblpetugas".user. NamaPetugas. } } catch (SQLException ex) { } } 8. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 80 .TYPE_SCROLL_INSENSITIVE.createStatement(ResultSet.toString()+"'".user.executeQuery(SQL).CONCUR_UPDATABLE). ResultSet.pass).createStatement(ResultSet.event.TYPE_SCROLL_INSENSITIVE. Buatlah kode program pada kombobox kodebarang dengan cara klik kanan pilih events -> item -> itemStatChanged.getString("idpetugas")). while(res.awt.ItemEvent evt) { // TODO add your handling code here: try { Connection kon = DriverManager.

setText(res. HargaJual.TYPE_SCROLL_INSENSITIVE. Buatlah private baru untuk menampilkan tanggal otomatis seperti berikut: public void TanggalOtomatis(){ Date tanggal = new Date().setText(""+ (String. Statement stt = kon. Statement stt = kon. TglPenjualan.CONCUR_UPDATABLE).CONCUR_UPDATABLE).getSelectedItem().executeQuery(SQL).createStatement(ResultSet.getConnection(database.user.requestFocus().pass).setText(res. res.createStatement(ResultSet. String SQL = "SELECT * FROM tblbarang".TYPE_SCROLL_INSENSITIVE. } catch (SQLException ex) { } Jumlah.getString("stok")).getString("kodebarang")). } } catch (SQLException ex) { } } 10. Stok.getString("namabarang")). ResultSet. ResultSet res = stt.getString("hargajual")).tanggal))).awt. Buatlah private baru untuk menampilakn data pada kombobox iddistributor seperti berikut: public void TampilComboBarang(){ try { Connection kon = DriverManager. while(res. } 9.addItem(res.ItemEvent evt) { // TODO add your handling code here: try { Connection kon = DriverManager. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 81 .executeQuery(SQL).toString()+"'".setText(res.next()){ KodeBarang.setEnabled(true). ResultSet. ResultSet res = stt.event. AddItem.private void KodeBarangItemStateChanged(java.pass).user.format("%1$td:%1$tb:%1$tY".absolute(1). String SQL = "SELECT * FROM tblbarang where kodebarang='"+ KodeBarang. NamaBarang.getConnection(database.

Sisa.CaretEvent evt) { // TODO add your handling code here: double a.event.setText(String.CaretEvent evt) { // TODO add your handling code here: double d. Buatlah kode program untuk menampilkan perhitungan sisa bayar dengan cara klik kanan textfield bayar > events -> charet -> charetUpdate. b = Double.b. double b.event.valueOf(e)). a = Integer.parseDouble(Total. a = Double.getText()). int b.awt. Buatlah kode program untuk menampilkan total dengan cara klik kanan textfield subtotal -> events -> charet -> charetUpdate.ActionEvent evt) { // TODO add your handling code here: int a. d = Double.swing. SubTotal.valueOf(c)). private void BayarCaretUpdate(javax.swing. private void HitungActionPerformed(java. c = a * b.setText(String.11.parseInt(Jumlah. Total.getText()). double c.valueOf(c)). e = Double.parseDouble(Bayar. Buatlah kode program untuk menampilkan perhitungan subtotal dengan mengkilik button hitung -> events -> action -> ActionPerformed.getText()). private void SubTotalCaretUpdate(javax.getText()).event.getText()). } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 82 . double c. } 13.parseDouble(SubTotal. c = a .parseInt(HargaJual. b = Integer. } 12.getText()). e.parseDouble(Total.setText(String. e = e+d.

createStatement().14. String KB=KodeBarang. Connection kon = DriverManager."+ "'"+SubTotal.getSelectedItem()+"'.toString()+"'".getSelectedItem(). Statement stt = kon.user.ActionEvent evt) { // TODO add your handling code here: String NM=NoFaktur."+ "'"+KodeBarang. BersihData().isEmpty())) { JOptionPane.getSelectedItem()."data tidak boleh kosong. silahkan dilengkapi"). Class.showMessageDialog(null."+ "'"+Jumlah.getText()+"')".executeUpdate(SQL1). }else { try { Class.getText().getText()+"'.getConnection(database.ActionEvent evt) { // TODO add your handling code here: SetEditOn(). data[0] = KodeBarang.'"+Jumlah. Buatlah kode program AddNew dengan mengklik kanan button AddNew ->events -> action -> ActionPerformed.requestFocus().getText(). Connection kon1 = DriverManager.pass). KodeBarang.pass). private void AddItemActionPerformed(java.isEmpty()) | (KB.awt.event. if ((NM.awt. Buatlah kode program Add Item dengan mengklik kanan button save ->events -> action -> ActionPerformed. private void AddNewActionPerformed(java. String JM=Jumlah. Statement stt1 = kon.createStatement(). String SQL = "insert into tbldetailpenjualan values('"+NoFaktur.requestFocus().getConnection(database. } 15.getText()+"'.forName(driver).getText()+"'" + "Where kodebarang='"+KodeBarang.toString(). NoFaktur. data[1] = NamaBarang.event. stt1.getText().isEmpty()) |(JM.user.toString().executeUpdate(SQL). String SQL1 = "Update tblbarang Set stok=stok .getSelectedItem(). stt.forName(driver). Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 83 .

requestFocus().getText(). private void SaveTransactionActionPerformed(java."+ "'"+Total.executeUpdate(SQL). tableModel."+ "'"+TglPenjualan. Statement stt = kon.data[2] = HargaJual.close().setEnabled(false). stt. Connection kon = DriverManager."data tidak boleh kosong.pass). KodeBarang. stt.isEmpty())) { JOptionPane.user."+ "'"+Sisa. data[3] = Stok. } } } 16.getConnection(database. if ((NM.createStatement().forName(driver). NoFaktur.getText()+"'.insertRow(0. BersihDetail().close().println(ex.requestFocus(). Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 84 . data[4] = Jumlah.getText()+"'.getText().getText(). String SQL = "insert into tblpenjualan values('"+NoFaktur. silahkan dilengkapi").close()."+ "'"+Bayar.getMessage()).getText().getText()+"'.getText()+"')". kon.err. AddItem. Buatlah kode program SaveTransaction dengan mengklik kanan button save ->events -> action -> ActionPerformed.getText()+"'. KodeBarang.requestFocus().awt. data). data[5] = SubTotal.ActionEvent evt) { // TODO add your handling code here: String NM=NoFaktur. }else { try { Class.showMessageDialog(null.getSelectedItem()+"'. stt.event.getText(). } catch (Exception ex) { System."+ "'"+IDPetugas.

OK_CANCEL_OPTION.awt.createStatement(ResultSet.getText().absolute(1).showConfirmDialog(null. Bayar. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed.event. ResultSet res = stt. Total.setEnabled(false).awt. NoFaktur.println(ex.executeQuery(SQL). String SQL = "SELECT * FROM tblpenjualan where nofaktur='"+NoFaktur. } } } 17.setEnabled(false).CONCUR_UPDATABLE).OK_OPTI ON) this.getString("sisa")). SaveTransaction.getString("tglpenjualan")).toString()+"'".close().dispose().ActionEvent evt) { // TODO add your handling code here: if(JOptionPane."This application will be close \n if you press button OK". TglPenjualan.getString("idpetugas")). TampilGridDetail().event.setText(res. Buatlah kode program Cari Data dengan mengklik kanan button Cancel -> events -> Action -> ActionPerformed.ActionEvent evt) { // TODO add your handling code here: try { Connection kon = DriverManager.setEnabled(false).user. JOptionPane. ResultSet. Statement stt = kon. BersihData().JOptionPane.getConnection(database.getString("bayar")). private void CloseActionPerformed(java.err. private void CariDataActionPerformed(java.INFORMATION_MESSAGE)==JOptionPane.TYPE_SCROLL_INSENSITIVE. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 85 .setSelectedItem(res. } 18."Information". res. Sisa.pass). } catch (Exception ex) { System.setText(res.kon. IDPetugas. SaveTransaction.setText(res. SetEditOff().getMessage()).getString("total")).setText(res.

event.setEnabled(false). private void CancelActionPerformed(java.36 Tampilan Form Data Penjualan Barang Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 86 . } catch (SQLException ex) { } } 19. Jalankan Program kemudian klik menu DataBarang Masuk maka akan tampil seperti berikut: Gambar 1. Buatlah kode program Cancel dengan mengklik kanan button Cancel -> events -> Action -> ActionPerformed.awt.ActionEvent evt) { // TODO add your handling code here: BersihData().CariData. } 20. SetEditOff().

dengan cara klik kanan paket Penjualan. Gambar 1. Pilih New -> JFrame Form…. Pada jendela New JFrame Form. Gambar 1. Buatlah file baru dalam paket AplikasiPenjualan. sehingga muncul jendela New File. isikan FrmDistributor pada kotak isian Class Name.38 Menentukan Nama Form JFrame Form Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 87 . dan Package pilih aplikasipenjualan.37 Membuat Objek Baru 2. lalu tekan tombol Finish untuk mengakhiri.Membuat Menu Utama 1.

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
Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 88

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

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA

89

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
Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 90

} Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 91 .event.setVisible(true).ActionEvent evt) { // TODO add your handling code here: new FrmJenis(). Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data jenis barang ->events ->Action -> ActionPerformed.Menu Report Gambar 1. private void MenuJenisBarangActionPerformed(java.12 Daftar Propertis yang digunakan Pallete Menu Bar1 Menu Item1 Menu Item2 Menu Item3 Menu Item4 Menu Item5 Menu Bar2 Menu Item1 Menu Item2 Menu Bar3 Menu Item1 Edit Text File Data Jenis Barang Data Barang Data Distributor Data Petugas Exit Transaksi Data Barang Masuk Data Penjualan Barang Report Daftar Report Propertis Change Variable Name jMenu1 MenuJenisBarang MenuBarang MenuDistributor MenuPetugas MenuExit jMenu2 MenuBarangMasuk MenuPenjualan jMenu3 Daftar Report Syntax Program 1.46 Tampilan Menu Report Keterangan : Tabel 1.awt.

ActionEvent evt) { // TODO add your handling code here: new FrmBrgMasuk(). } 4.setVisible(true).setVisible(true).event.2. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data distributor ->events ->Action -> ActionPerformed.ActionEvent evt) { // TODO add your handling code here: new Frmdistributor().event.ActionEvent evt) { // TODO add your handling code here: new FrmBarang().awt. } 5. private void MenuDistributorActionPerformed(java. private void MenuBarangActionPerformed(java. private void MenuBarangMasukActionPerformed(java. } 3.setVisible(true). Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data barang ->events ->Action -> ActionPerformed. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 92 .awt. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data petugas ->events ->Action -> ActionPerformed.ActionEvent evt) { // TODO add your handling code here: new Frmpetugas(). Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data barang masuk ->events ->Action -> ActionPerformed. private void MenuPetugasActionPerformed(java.awt.event.setVisible(true).awt.event.

6. } MEMBUAT LAPORAN Jika program aplikasi sudah selesai dibuat.TXT dan XML.ODT.HTML. Subreport. private void MenuPenjualanActionPerformed(java. Komponen yang Digunakan Untuk Membuat Report : Silahkan klik kanan Libraries pilih Add JAR/Folder maka akan tampil seperti berikut: Gambar 1. Mengenal JasperReport JasperReport adalah sebuah tool yang sangat powerfull untuk membuat laporan dalam bentuk PDF.CSV. anda bisa membuat berbagai laporan berbentuk Chart. Dengan kemampuan dan fleksibilitasnya yang sangat tinggi. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data penjualan barang ->events ->Action -> ActionPerformed.ActionEvent evt) { // TODO add your handling code here: new FrmPenjualan(). dan kemampuan lain yang anda butuhkan.setVisible(true). kini giliran kita membuat halaman laporan dari semua data yang ada.RTF. Crosstabs. Berikut selengkapnya.XLS.awt.47 direktory Add JAR/Folder Adapun file-file Jasper Report Engine yang harus dipilih adalah sebagai berikut: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 93 .event.

jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Commons-digester-1.7. sehingga muncul jendela Advanced Options.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Commons-logging-1. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 94 . sehingga muncul jendela Options. lalu klik tombol OK. kemudian tean Add.0.2.7.1.5. Dan tutup jendela-jendela Options tersebut.0. Ada properti Extensions anda MIME Types.Jasperreport-2.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Jdt-compiler-3. tekan pada tombol… yang ada di sampingnya.0. sehingga jrxml tersebut masuk dalam daftar item List.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Commons-javaflow-20060411. Pada jendela tersebut klik Advanced Option.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Commons-collections-2.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Commons-logging-api-1. Pada kotak isian item.  Masih pada jendela Advanced Options. sehingga muncul jendela XML Object – Extensions and MIME Types.  Dalam jendela Advanced Options. perhatikan sebelah kiri.jar pada direktori d:\Aplikasi Penjualan\AplikasiPenjualan\lib Commons-beanutils-1.1.2.1. lihat jendela bagian kanan. pilih pada node IDE Configuration -> System -> Object Types -> XML Objects. masukkan jrxml.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.

Pembuat program ini adalah Giulio Toffoli pada tahun 2005. dengan fasilitas ini anda bisa membuat report dengan drag and drop.49 Jendela Permulaan Pemasangan IReport Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 95 . jika sudah ada silahkan klik ganda file IReport-nb-0.Gambar 1. Gambar 1.9. program ini lagi-lagi open source. Sama dengan JasperReports. Anda bisa mendapatkan informasi dan distribusi filenya pada alamat http://ireport.sourceforget.net. ini adalah distribusi yang mendukung NetBeans. Instalasi IReport dan Konfigurasi Databasenya Untuk menginstal IReport sebelumnya anda harus mempunya file install JasperReport.exe. sangat memudahkan pengguna NetBeans. bahkan secara otomatis (wizard). Artinya.1-windows-installer. Jadi.48 Berkas yang Dikenali Editor NetBeans Mengenal IReports IReport adalah sebuah tool yang digunakan untuk membuat desain laporan pada JasperReports.

51 Jendela Pemilihan Feature IReport Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 96 .Gambar 1.50 Jendela Lisensi IReport Gambar 1.

1 -> iReport-nb-0.53 Jendela Splash Screen IReport Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 97 .1.9.9.Gambar 1. Jalankan program iReport dengan cara masuk ke dalam Start menu Windows. Pilih JasperSoft > iReport-nb-0. sehingga muncul jendela pembuka seperti pada gambar berkut diikuti dengan halaman utama Gambar 1.52 Jendela Lokasi Program File IReport Silahkan anda lanjutkan dengan mengklik tombol Next dan ikuti semua dialognya sampai selesai.

1.6-bin dengan cara klik Tools -> Options -> classpath klik tombol Add JAR silahkan anda ambil komponen mysql-connector-java-5.Gambar 1.54 Tampilan IReport Setelah tampil jendela menu iReport anda harus memanggil koneksi mysql-connector-java5.55 Tampilan Add JAR/Path to the classpath Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 98 .6-bin seperti gambar berikut: Gambar 1.1.

Gambar 1. buatlah dulu sebuah koneksi agar bisa membuka database anda.56 Tampilan Komponen yang sudah dipanggil Gambar di atas adalah jendela iReport pertama kali. Sebelum membuat laporan. Gambar 1.57 Jendela Daftar Konfigurasi Koneksi Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 99 . sehingga muncul jendela seperti gambar berkut. Dengan cara: pilih menu Tool -> Report Datasource.

58 Pemilihan JDBC Selanjutnya. sehingga muncul jendela seperti 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: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 100 . pilih Database JDBC dan klik tombol Next. Sehingga muncul jendela seperti pada gambar berikut. Gambar 1.Selanjutnya tekan tombol New pada sebelah kanan.

3.Gambar 1. Kemudian Klik tombol Next untuk melanjutkan perintah seperti gambar dibawah: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 101 . Klik File -> Report Wizard maka akan tampil seperti gambar dibawah : Gambar 1.61 Tampilan New Report 2.60 Testing Koneksi Database Membuat Laporan Setelah anda selesai membuat koneksi database langkah selanjutnya silahkan anda membuat laporan seperti berikut 1. Ubahlah Report Name dan Location untuk menentukan dimana anda akan meletakkan laporan.

63 Tampilan Query 5. Klik tombol Next maka akan tampil seperti gambar dibawah ini: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 102 .Gambar 1. kemudian silahkan anda is Query seperti gambar dibawah ini: Gambar 1. Ubahlah Connection / Data Source sesuai dengan koneksi yang anda buat .62 Tampilan New Report steps 2 4.

64 Tampilan Hasil Query 6. Klik tombol Next maka akan tampil pilihan Layout/jenis report yang anda inginkan seperti gambar dibawah ini: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 103 . Klik tombol Next seperti Gambar dibawah : Gambar 1.Gambar 1.65 Tampilan Hasil Query 7.

67 Tampilan Report 8.66 Tampilan Layout Report Gambar 1.Gambar 1. Untuk melihat hasil tekan Preview maka akan tampil seperti gambar dibawah ini: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 104 .

Buatlah file baru dalam paket AplikasiPenjualan. sehingga muncul jendela New File. dan Package pilih aplikasipenjualan.Gambar 1. Sebagai latihan silahkan anda buat report barang masuk dan report penjualan Membuat Desain Form Report 1.69 Membuat Objek Baru 2. Pilih New -> JFrame Form…. Gambar 1. dengan cara klik kanan paket Penjualan. Pada jendela New JFrame Form. isikan FrmDaftarReport pada kotak isian Class Name. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 105 . lalu tekan tombol Finish untuk mengakhiri.68 Tampilan Report Preview 9.

71 Desain Form Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 106 .Gambar 1.70 Menentukan Nama Form JFrame Form Gambar 1.

3.11 Daftar Propertis yang digunakan Pallete Label1 TextField1 Button1 Button2 Button3 Button4 Button6 Propertis Edit Text No.Faktur Cetak Report Barang Cetak Report Barang Masuk Cetak Report Penjualan Cetak Close Change Variable Name jLabel1 NoFaktur CariData Hitung AddItem AddNew Close Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 107 .72 Desain Form Daftar Report Keterangan : Tabel 1. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.

Connection.sf.pass.Syntax Program 1. private Object tabel.awt.*. import java.user.awt. String driver.*.height){ frameSize. import javax. Dimension screenSize=Toolkit.database.JRLoader.getSize(). import java.sf.HashMap.*.JasperPrint.io.height=screenSize.swing. import javax.JasperViewer.sql.getDefaultToolkit(). import net. import java.sql.frameSize.sf.JasperReport. import net. } this. Pada bagian public class FrmDaftarReport extends javax.JasperFillManager.height > screenSize.JOptionPane. if(frameSize.userLogin. import net.sf. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 108 .swing.sql.width > screenSize.util.JFrame { Database dbsetting. } if(frameSize. import java.width){ frameSize. import net.engine.sf. import java.JFrame tambahkan kode berikut: public class FrmDaftarReport extends javax. import java.File. import net.jasperreports. import javax.event.*.jasperreports. 2. import java.width .swing.swing. Pada bagian import tambahkan dibawah baris package AplikasiPenjualan sepeti kode berikut: package penjualan.engine.width) / 2.JOptionPane.engine.engine.jasperreports. /** Creates new form FrmDaftarReport */ public FrmDaftarReport() { initComponents().height.setLocation((screenSize.width=screenSize.width.DriverManager.swing.util.view. Dimension frameSize=this.jasperreports.getScreenSize().jasperreports.

getPath()). //setting untuk memanggil koneksi Database. HashMap parameter = new HashMap(). pass = dbsetting.awt.loadObject(reportfile.getConnection(database. private void CetakBarangActionPerformed(java. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 109 .awt.jasper".JOptionPane.SettingPanel("DBDatabase"). JasperViewer.ActionEvent evt) { // TODO add your handling code here: try{ String NamaFile="src/report/RptBrgMasuk. File reportfile = new File(NamaFile). JasperViewer. Buatlah kode program CetakBarang dengan mengklik kanan button AddNew ->evens -> action -> ActionPerformed. con). JasperPrint jasperPrint =JasperFillManager.showMessageDialog(null.pass).jasper". JasperReport jasperReport =(JasperReport)JRLoader.height = screenSize. Buatlah kode program CetakBarangMasuk dengan mengklik kanan button AddNew ->evens -> action -> ActionPerformed.ini dbsetting = new Database().height) / 6). } catch (Exception e) { JOptionPane. "Data tidak dapat dicetak !".setDefaultLookAndFeelDecorated(true).SettingPanel("DBDriver"). Class. database = dbsetting.(screenSize.false).forName(driver).ERROR_MESSAGE).ActionEvent evt) { // TODO add your handling code here: try{ String NamaFile="src/report/RptBarang.event. user = dbsetting.user. driver = dbsetting.event.SettingPanel("DBUsername"). Connection con = DriverManager. } 3.SettingPanel("DBPassword"). "Cetak Data".fillReport(jasperReport. HashMap parameter = new HashMap(). private void CetakBarangMasukActionPerformed(java. parameter. } } 4.viewReport(jasperPrint.

Connection con = DriverManager. } catch (Exception e) { JOptionPane. Buatlah kode program CetakPenjualanALL dengan mengklik kanan button AddNew ->evens -> action -> ActionPerformed. "Data tidak dapat dicetak !". parameter.false). } catch (Exception e) { JOptionPane.user. "Data tidak dapat dicetak !".event.getPath()).loadObject(reportfile.ERROR_MESSAGE).forName(driver).setDefaultLookAndFeelDecorated(true).fillReport(jasperReport. HashMap parameter = new HashMap().getPath()).user. } } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 110 . JasperViewer. con).fillReport(jasperReport.awt.showMessageDialog(null.loadObject(reportfile. } } 5. JasperPrint jasperPrint =JasperFillManager.viewReport(jasperPrint.viewReport(jasperPrint.getConnection(database. File reportfile = new File(NamaFile).pass). JasperViewer. Class.ActionEvent evt) { // TODO add your handling code here: try{ String NamaFile="src/report/RptPenjualan. "Cetak Data".false).JOptionPane. private void CetakPenjualanAllActionPerformed(java.setDefaultLookAndFeelDecorated(true). JasperViewer. File reportfile = new File(NamaFile).JOptionPane.ERROR_MESSAGE).pass). JasperViewer. JasperReport jasperReport =(JasperReport)JRLoader.forName(driver).getConnection(database. con). JasperPrint jasperPrint =JasperFillManager. "Cetak Data".Class. JasperReport jasperReport =(JasperReport)JRLoader.showMessageDialog(null.jasper". Connection con = DriverManager. parameter.

setDefaultLookAndFeelDecorated(true).JOptionPane.ActionEvent evt) { // TODO add your handling code here: try{ String NamaFile="src/report/RptPenjualanKode1.JOptionPane. JasperReport jasperReport =(JasperReport)JRLoader. private void CloseActionPerformed(java.INFORMATION_MESSAGE)= =JOptionPane.getPath()).event.put("NoFaktur". Connection con = DriverManager.viewReport(jasperPrint. } } 7.ERROR_MESSAGE).getConnection(database. "Cetak Data".loadObject(reportfile.event. "Data tidak dapat dicetak !".fillReport(jasperReport. Class.user.pass).getText()). } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 111 . File reportfile = new File(NamaFile). private void CetakActionPerformed(java."This application will be close \n if you press button OK".JOptionPane.false). Buatlah kode program CetakPenjualanKode dengan mengklik kanan button AddNew ->evens -> action -> ActionPerformed. JasperViewer. parameter.showConfirmDialog(null. parameter.OK_CANCEL_OPTION. con).OK_OPTION) this. JasperPrint jasperPrint =JasperFillManager. JasperViewer.NoFaktur.awt.showMessageDialog(null.6. } catch (Exception e) { JOptionPane.dispose().awt. Buatlah kode program Close dengan mengklik kanan button AddNew ->evens -> action -> ActionPerformed.ActionEvent evt) { // TODO add your handling code here: if(JOptionPane. HashMap parameter = new HashMap().forName(driver)."Information".jasper".

Sign up to vote on this title
UsefulNot useful

Master Your Semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master Your Semester with a Special Offer from Scribd & The New York Times

Cancel anytime.