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

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

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

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

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.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 . sedangkan (FK) adalah kunci tamu dengan diwujudkan arah panahnya.

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

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

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

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

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

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

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

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 .3. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.10 Desain Form Jenis Barang Keterangan : Tabel 1.

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

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

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

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

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

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

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

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.14 Desain Form Baru 3.

15 Desain Form Data Barang Keterangan : Tabel 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 .

(screenSize.width=screenSize.pass.event.height) / 6).setLocation((screenSize. } this.JFrame tambahkan kode berikut: public class FrmBarang extends javax.getSize(). Dimension frameSize=this. String driver. /** Creates new form FrmBarang */ public FrmBarang() { initComponents().swing.height = screenSize. //setting untuk memanggil koneksi Database. Dimension screenSize=Toolkit.width){ frameSize.swing.*.getDefaultToolkit().sql. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut: package penjualan.awt. import java.height){ frameSize.swing. private Object tabel. } if(frameSize.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.getScreenSize().height=screenSize.JFrame { Database dbsetting.awt.*.width) / 2.height.width.*.*. import java.height > screenSize.width > screenSize.frameSize.ini Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 25 .user.database. if(frameSize. import java.width . Pada bagian public class FrmBarang extends javax. 2.userLogin. import javax.

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

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

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

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

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

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

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

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

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

isikan FrmPetugas pada kotak isian Class Name.19 Desain Form Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 35 . lalu tekan tombol Finish untuk mengakhiri.18 Menentukan Nama Form JFrame Form Gambar 1. dan Package pilih aplikasipenjualan. Pada jendela New JFrame Form.2. Gambar 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.20 Desain Form Data Petugas Keterangan : Tabel 1.

(screenSize.user.awt.width){ frameSize.getScreenSize().getSize(). } if(frameSize.*. private Object tabel.database.JFrame { Database dbsetting.width. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 37 .swing.awt.width .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.frameSize.sql.width=screenSize. import javax. import java.event. //setting untuk memanggil koneksi Database.height.userLogin. import java.height=screenSize.height) / 6). if(frameSize. Dimension screenSize=Toolkit.*.width > screenSize. import java.swing.height > screenSize. String driver.swing.getDefaultToolkit().ini dbsetting = new Database().JFrame tambahkan kode berikut: public class Frmpetugas extends javax. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut: package penjualan. /** Creates new form Frmpetugas */ public Frmpetugas() { initComponents().height){ frameSize. } this.*.pass.width) / 2.setLocation((screenSize.height = screenSize. Pada bagian public class FrmPetugas extends javax. 2.*. Dimension frameSize=this.

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

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

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

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

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

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

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

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

24 Desain Form Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 46 .Gambar 1.23 Menentukan Nama Form JFrame Form 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 .25 Desain Form Data Distributor Keterangan : Tabel 1. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.3.

height. import java.*.getScreenSize(). import java. 2.height) / 6).width){ frameSize. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut: package penjualan.pass. import javax. } if(frameSize.height){ frameSize.width . } this. /** Creates new form Frmdistributor */ public Frmdistributor() { initComponents().user.setLocation((screenSize. //setting untuk memanggil koneksi Database.height=screenSize. Pada bagian public class FrmDistributor extends javax.database.swing.getDefaultToolkit().JFrame { Database dbsetting.frameSize.JFrame tambahkan kode berikut: public class Frmdistributor extends javax. import java.userLogin.swing.sql. private Object tabel.ini Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 48 .awt.getSize().swing.width.width > screenSize. Dimension screenSize=Toolkit.height > screenSize.height = screenSize.*. Dimension frameSize=this.width=screenSize. String driver.*.width) / 2.event.*. (screenSize. if(frameSize.awt.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.

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

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

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

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

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

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

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

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

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

30 Desain Form Data Barang Masuk Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 58 .Gambar 1. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.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.Keterangan : Tabel 1.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 .

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.35 Desain Form Data Penjualan Barang Keterangan : Tabel 1.3.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 .

database.awt.swing.*.width.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.*.JFrame tambahkan kode berikut: public class FrmPenjualan extends javax. String driver. private Object tabel.userLogin. Pada bagian public class FrmBrgMasuk extends javax. import java.width > screenSize.height){ frameSize. Dimension screenSize=Toolkit.sql.getSize().user.*.pass. import javax.getScreenSize(). Dimension frameSize=this.event. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 75 .height.width=screenSize.getDefaultToolkit(). if(frameSize. 2.*. import java.JFrame { Database dbsetting. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut: package penjualan.swing.height > screenSize.width){ frameSize. /** Creates new form FrmPenjualan */ public FrmPenjualan() { initComponents(). } if(frameSize.swing.height=screenSize.awt.

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

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

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

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

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

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

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

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

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

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

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

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

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

ActionEvent evt) { // TODO add your handling code here: new FrmJenis().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.setVisible(true).event. private void MenuJenisBarangActionPerformed(java.Menu Report Gambar 1.46 Tampilan Menu Report Keterangan : Tabel 1.awt. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data jenis barang ->events ->Action -> ActionPerformed. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 91 .

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

Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data penjualan barang ->events ->Action -> ActionPerformed.awt.event. Berikut selengkapnya.CSV.6.RTF. kini giliran kita membuat halaman laporan dari semua data yang ada.HTML.setVisible(true).ActionEvent evt) { // TODO add your handling code here: new FrmPenjualan(). Dengan kemampuan dan fleksibilitasnya yang sangat tinggi.TXT dan XML. Mengenal JasperReport JasperReport adalah sebuah tool yang sangat powerfull untuk membuat laporan dalam bentuk PDF. } MEMBUAT LAPORAN Jika program aplikasi sudah selesai dibuat. anda bisa membuat berbagai laporan berbentuk Chart. Crosstabs. Subreport. dan kemampuan lain yang anda butuhkan.XLS.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 .ODT. 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.

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

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

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

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

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

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

Gambar 1. sehingga muncul jendela seperti gambar berikut.58 Pemilihan JDBC Selanjutnya.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 .Selanjutnya tekan tombol New pada sebelah kanan. pilih Database JDBC dan klik tombol Next. Sehingga muncul jendela seperti pada gambar berikut. Gambar 1.

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

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

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 .64 Tampilan Hasil Query 6.65 Tampilan Hasil Query 7. Klik tombol Next seperti Gambar dibawah : Gambar 1.Gambar 1.

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

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

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

3.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.11 Daftar Propertis yang digunakan Pallete Label1 TextField1 Button1 Button2 Button3 Button4 Button6 Propertis Edit Text No. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.

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

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

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

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

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.