MERANCANG DATABASE PENJUALAN

Sebagai tempat studi kasus dari aplikasi yang akan dibuat adalah penjualan barang . Dengan adanya aplikasi ini, diharapkan dapat mempermudah dalam pengecekan stok barang dan transaksi barang masuk dan penjualan barang. Dari gambaran di atas, yang perlu anda buat adalah sebuah aplikasi yang dapat membantu untuk pencatatan setiap transaksi yang dilakukan, mulai dari data jenis barang, data barang, data petugas, data distributor, data barang masuk dan data penjualan barang.

Membuat Database dan Tabel
Pada gambaran sebelumnya, sekarang anda perlu memikirkan seberapa besar database yang akan diperlukan. Dari hasil pemikiran tersebut anda akan mengira-ira berapa dan apa tabel yang akan digunaka sebagai media penyimpanan datanya.

 Membuat Database Dari analisis kami, untuk membuat aplikasi ini kita membutuhkan 6 tabel. Terdiri atas 4 tabel master dan 2 tabel transaksi. keenam tabe tersebut berada di dalam nama database dbretail. C:\Documents and Setting> mysql –uroot -p; Enter Password:masukkan password anda Mysql> CREATE DATABASE dbretail; Query OK, 1 row affected (0.00 sec) Selanjutnya, aktifkanlah database yang terbuat dengan perintah berikut: Mysql> USE dbretail; Database changed Pernyataan “Database changed” di atas menandakan anda sekarang telah aktif di dalam database dbretail.  Membuat Tabel tbljenis Tabel Jenis Barang digunakan untuk merekam data semua jenis barang. Dengan cara ini, kita dapat mengelompokkan jenis barang.Berikut desain tabelnya.
Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 1

Tabel 1.1 Struktur Tabel tbljenis Kolom kodejenis * jenis Tipe Data Char Varchar Panjang 4 60

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut: mysql> create table tbljenis( kodejenis char(4) not null primary key, jenis varchar(60) ); Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tbljenis.

 Membuat Tabel tblpetugas Tabel petugas digunakan untuk merekam data semua petugas. Dengan cara ini, kita dapat mengetahui petugas jaga parkir.Berikut desain tabelnya. Tabel 1.2 Struktur Tabel tblpetugas Kolom idpetugas * namapetugas alamat email telpon Tipe Data Char Varchar Varchar Varchar Char Panjang 6 80 100 80 15

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut: mysql> create table tblpetugas( idpetugas char(6) not null primary key, namapetugas varchar(80), alamat varchar(100), email varchar(80), telpon char(10) ); Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tblpetugas.
Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 2

 Membuat Tabel tbldistributor Tabel distributor digunakan untuk merekam data semua distributor. Dengan cara ini, kita dapat mengetahui distributor pemasok barang.Berikut desain tabelnya. Tabel 1.3 Struktur Tabel tbldistributor Kolom iddistributor * namadistributor alamat kotaasal email telpon Tipe Data Char Varchar Varchar Varchar Varchar Char Panjang 6 80 100 80 80 15

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut: mysql> create table tbldistributor( iddistributor char(6) not null primary key, namadistributor varchar(80), alamat varchar(100), kotasal varchar(80), email varchar(80), telpon char(10) ); Setelah perintah membuat tabel di atas dijalankan, sekarang anda telah memiliki tabel baru bernama tbldistributor.

 Membuat Tabel tblbarang Tabel Barang digunakan untuk merekam semua data barang Dengan cara ini, kita dapat mengetahui semua data barang yang ada digudang. Berikut desain tabelnya. Tabel 1.4 Struktur Tabel tblbarang Kolom kodebarang * namabarang kodejenis ** Harganet Hargajual stok Tipe Data Char Varchar Char Double Double Smallint Panjang 4 100 4 4

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA

3

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Gambar 1.20. sehingga muncul jendela New File. 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.32 Membuat Objek Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 72 . Buatlah file baru dalam paket AplikasiPenjualan. Pilih New -> JFrame Form…. dengan cara klik kanan paket Penjualan.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

58 Pemilihan JDBC Selanjutnya.59 Pengisian Konfigurasi Database Untuk memastikan hasil dari koneksi database yang sudah dibuat klik tombol Test jika benar maka akan tampil seperti gambar dibawah: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 100 . Sehingga muncul jendela seperti pada gambar berikut. Gambar 1.Selanjutnya tekan tombol New pada sebelah kanan. Gambar 1. sehingga muncul jendela seperti gambar berikut. pilih Database JDBC dan klik tombol Next.

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

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

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

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

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

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

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

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

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

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

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

Sign up to vote on this title
UsefulNot useful