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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.25 Desain Form Data Distributor Keterangan : Tabel 1.11 Daftar Propertis yang digunakan Pallete 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.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Jasperreport-2.0.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Commons-javaflow-20060411. Ada properti Extensions anda MIME Types.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Setelah anda mengambil semua file yang dibutuhkan seperti diatas maka langkah selanjutnya anda harus melakukan pengidentifikasian berkas jrxml pada NetBeans dengan cara berikut:  Buka menu tools -> Options. sehingga muncul jendela XML Object – Extensions and MIME Types. kemudian tean Add.5.7. Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 94 . sehingga muncul jendela Advanced Options. lihat jendela bagian kanan.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Commons-digester-1. Pada kotak isian item. Dan tutup jendela-jendela Options tersebut.2.1. sehingga jrxml tersebut masuk dalam daftar item List. tekan pada tombol… yang ada di sampingnya.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Commons-collections-2.1.1. sehingga muncul jendela Options.0.  Masih pada jendela Advanced Options. masukkan jrxml.jar pada direktori d:\Aplikasi Penjualan\AplikasiPenjualan\lib Commons-beanutils-1.0.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Commons-logging-api-1. perhatikan sebelah kiri.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Commons-logging-1.7.jar pada direktori d:\ Aplikasi Penjualan \AplikasiPenjualan\lib Jdt-compiler-3. lalu klik tombol OK. pilih pada node IDE Configuration -> System -> Object Types -> XML Objects. Pada jendela tersebut klik Advanced Option.  Dalam jendela Advanced Options.2.

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

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

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

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.1.6-bin seperti gambar berikut: Gambar 1.Gambar 1.

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

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

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

kemudian silahkan anda is Query seperti gambar dibawah ini: Gambar 1.63 Tampilan Query 5.62 Tampilan New Report steps 2 4. Klik tombol Next maka akan tampil seperti gambar dibawah ini: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 102 . Ubahlah Connection / Data Source sesuai dengan koneksi yang anda buat .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 . Klik tombol Next seperti Gambar dibawah : Gambar 1.64 Tampilan Hasil Query 6.Gambar 1.

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

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

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

11 Daftar Propertis yang digunakan Pallete Label1 TextField1 Button1 Button2 Button3 Button4 Button6 Propertis Edit Text No.72 Desain Form Daftar Report Keterangan : Tabel 1. 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.

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

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

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

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

Sign up to vote on this title
UsefulNot useful