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

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

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

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

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 7 . 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.Relasi Antar Tabel TblDetailBrgMasuk NoNota KodeBarang Jumlah Subtotal TblJenis PK KodeJenis Jenis TblBarang PK KodeBarang NamaBarang KodeJenis HargaNet HargaJual Stok TblBrgMasuk PK NoNota TglMasuk IDDistributor IDPetugas Total PK TblDistributor IDDistributor NamaDistributor Alamat KotaAsal Email Telpon TblPetugas PK TblPenjualan PK NoFaktur TglPenjualan IDPetugas Bayar Sisa Total IDPetugas NamaPetugas Alamat Emali Telpon TblDetailPenjualan NoFaktur KodeBarang Jumlah Subtotal Gambar 1.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

35 Desain Form Data Penjualan Barang Keterangan : Tabel 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. Desainlah form yang baru anda ciptakan seperti gambar dibawah ini: Gambar 1.Faktur ID Petugas Nama Petugas Kode Barang Nama Barang Harga Jual Stok Jumlah Sub Total Rp Total Rp Propertis Change Variable Name jLabel1 jLabel2 jLabel3 jLabel4 jLabel8 jLabel9 jLabel10 jLabel11 jLabel12 jLabel13 jLabel14 TglPenjualan NoFaktur IDPetugas NamaPetugas KodeBarang 74 Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA .3.

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

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

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

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

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

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

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

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

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

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

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

} catch (SQLException ex) { } } 19. Jalankan Program kemudian klik menu DataBarang Masuk maka akan tampil seperti berikut: Gambar 1. } 20. private void CancelActionPerformed(java.ActionEvent evt) { // TODO add your handling code here: BersihData(). 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 .CariData.awt.setEnabled(false).event. SetEditOff().

Buatlah file baru dalam paket AplikasiPenjualan. Pilih New -> JFrame Form…. Gambar 1.Membuat Menu Utama 1. isikan FrmDistributor pada kotak isian Class Name. sehingga muncul jendela New File. dengan cara klik kanan paket Penjualan. lalu tekan tombol Finish untuk mengakhiri. Pada jendela New JFrame Form.38 Menentukan Nama Form JFrame Form Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 87 . dan Package pilih aplikasipenjualan.37 Membuat Objek Baru 2. 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).ActionEvent evt) { // TODO add your handling code here: new FrmJenis(). private void MenuJenisBarangActionPerformed(java. } Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 91 .event.Menu Report Gambar 1.12 Daftar Propertis yang digunakan Pallete Menu Bar1 Menu Item1 Menu Item2 Menu Item3 Menu Item4 Menu Item5 Menu Bar2 Menu Item1 Menu Item2 Menu Bar3 Menu Item1 Edit Text File Data Jenis Barang Data Barang Data Distributor Data Petugas Exit Transaksi Data Barang Masuk Data Penjualan Barang Report Daftar Report Propertis Change Variable Name jMenu1 MenuJenisBarang MenuBarang MenuDistributor MenuPetugas MenuExit jMenu2 MenuBarangMasuk MenuPenjualan jMenu3 Daftar Report Syntax Program 1.46 Tampilan Menu Report Keterangan : Tabel 1. Buatlah kode program untuk sub menu data jenis barang dengan cara klik kanan sub menu data jenis barang ->events ->Action -> ActionPerformed.awt.

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

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

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

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

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

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

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

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

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

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

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

65 Tampilan Hasil Query 7.Gambar 1.64 Tampilan Hasil Query 6. 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.

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

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

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

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

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

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

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

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

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.