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

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

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

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

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

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

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

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

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

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

Lakukan beberapa langkah berikut ini: 1. Anda harus memasang driver-nya. Pilih New -> JFrame Form. Dari jendela Project pilih Libraries kemudian klik kanan pilih Add JAR/Folder… kemudian klik Open. Caranya adalah: 1.6 Penentuan File Driver MySQL sendiri  Membuat Desain Form Data Jenis Barang Sekarang saatnya membuat form data jenis barang agar petugas dapat mengetahu dan menginput jenis barang. Gambar 1... Memasang Driver MySQL Untuk bisa melakukan hubungan atau koneksi dengan database MySQL. Gambar 1. Buatlah file baru dalam paket AplikasiPenjualan..7 Membuat Objek Baru Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 13 . dengan cara klik kanan paket AplikasiPenjualan.

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

10 Desain Form Jenis Barang Keterangan : Tabel 1.3. 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 .

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

getText().event. private void CloseActionPerformed(java.removeRow(row). 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[5] = Stok. stt.setEnabled(false). private void CancelActionPerformed(java.event.println(ex. } 15.INFORMATION_MESSAGE)==JOptionPane. SetEditOff(). } catch (Exception ex) { System. BersihData(). Buatlah kode program Cancel dengan mengklik kanan button Cancel -> events -> Action -> ActionPerformed. } 14. Save.getMessage()).close().OK_OPTI ON) this. tableModel. kon. } } } 13.JOptionPane.awt.ActionEvent evt) { // TODO add your handling code here: BersihData().data[4] = HargaJual.OK_CANCEL_OPTION. JOptionPane. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed.getText().err."Information".awt.showConfirmDialog(null.close().dispose().ActionEvent evt) { // TODO add your handling code here: if(JOptionPane. SetEditOff().

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Nota ID Petugas Nama Petugas ID Distributor Nama Distributor Kota Asal Kode Barang Nama Barang Harga Jual Stok Jumlah Sub Total Rp Total Rp Cari Data Hitung Add Item Add New Save Transaction Close Propertis Change Variable Name jLabel1 jLabel2 jLabel3 jLabel4 jLabel5 jLabel6 jLabel7 jLabel8 jLabel9 jLabel10 jLabel11 jLabel12 jLabel13 jLabel14 TglMasuk NoNota IDPetugas NamaPetugas IDDistributor NamaDistributor KotaAsal KodeBarang NamaBarang HargaJual Stok Jumlah SubTotal Total CariData Hitung AddItem AddNew SaveTransaction Close table Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 59 .Keterangan : Tabel 1.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.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Gambar 1.39 Desain Form Baru

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

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

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

Gambar 1.42 Tampilan Menu Item pada saat di drag

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA

89

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

Gambar 1.44 Tampilan Menu File
Menu Transaksi

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

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

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

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

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

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

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

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

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

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

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

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

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

Klik tombol Next maka akan tampil pilihan Layout/jenis report yang anda inginkan seperti gambar dibawah ini: Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 103 . Klik tombol Next seperti Gambar dibawah : Gambar 1.65 Tampilan Hasil Query 7.64 Tampilan Hasil Query 6.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.67 Tampilan Report 8.Gambar 1.

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

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

Faktur Cetak Report Barang Cetak Report Barang Masuk Cetak Report Penjualan Cetak Close Change Variable Name jLabel1 NoFaktur CariData Hitung AddItem AddNew Close Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 107 .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.3.

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

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

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

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

Sign up to vote on this title
UsefulNot useful

Master Your Semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

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

Cancel anytime.