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

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

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

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

1 Hubungan Antar Tabel pada dbretail Tanda (PK) menunjukkan kunci utama. sedangkan (FK) adalah kunci tamu dengan diwujudkan arah panahnya.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. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 7 . Berikut bebarapa penjelasan relasi tabel tersebut.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 .

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 .3.25 Desain Form Data Distributor Keterangan : Tabel 1. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

35 Desain Form Data Penjualan Barang Keterangan : Tabel 1.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 . Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.12 Daftar Propertis yang digunakan Pallete Label1 Label2 Label3 Label4 Label5 Label6 Label7 Label8 Label9 Label10 Label11 TextField1 TextField2 ComboBox1 TextField3 ComboBox2 Edit Text Tanggal Penjualan No.3.

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

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

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

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

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

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

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

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

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

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

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

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

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

Gambar 1.39 Desain Form Baru

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

Gambar 1.40 Tampilan Palette
Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 88

Gambar 1.41 Tampilan Menu Bar yang sudah diletakkan di dalam form 1. Pada Swing Menus pilihlah MenuItem kemudian anda drag ke dalam Menu Bar File

Gambar 1.42 Tampilan Menu Item pada saat di drag

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA

89

Gambar 1.43 Tampilan Menu Item Setelah diletakkan pada menu file 2. Setelah anda paham buatlah menu seperti gambar dibawah ini:
Menu File

Gambar 1.44 Tampilan Menu File
Menu Transaksi

Gambar 1.45 Tampilan Menu Transaksi
Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 90

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

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

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

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

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

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

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

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

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

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

3. Klik File -> Report Wizard maka akan tampil seperti gambar dibawah : Gambar 1.Gambar 1. 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.61 Tampilan New Report 2.60 Testing Koneksi Database Membuat Laporan Setelah anda selesai membuat koneksi database langkah selanjutnya silahkan anda membuat laporan seperti berikut 1.

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

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

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

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

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

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.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 .3.

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

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

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

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

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.