• Tidak ada hasil yang ditemukan

Gambar 1.30 Desain Form Data Barang Masuk

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 59

Keterangan :

Tabel 1.11 Daftar Propertis yang digunakan

Pallete Propertis

Edit Text Change Variable Name

Label1 Tanggal Barang Masuk jLabel1

Label2 No.Nota jLabel2

Label3 ID Petugas jLabel3

Label4 Nama Petugas jLabel4

Label5 ID Distributor jLabel5

Label6 Nama Distributor jLabel6

Label7 Kota Asal jLabel7

Label8 Kode Barang jLabel8

Label9 Nama Barang jLabel9

Label10 Harga Jual jLabel10

Label11 Stok jLabel11

Label12 Jumlah jLabel12

Label13 Sub Total Rp jLabel13

Label14 Total Rp jLabel14

TextField1 - TglMasuk TextField2 - NoNota ComboBox1 - IDPetugas TextField3 - NamaPetugas ComboBox2 - IDDistributor TextField4 - NamaDistributor TextField5 - KotaAsal ComboBox3 - KodeBarang TextField6 - NamaBarang TextField7 - HargaJual TextField8 - Stok TextField9 - Jumlah TextField10 - SubTotal TextField11 - Total

Button1 Cari Data CariData

Button2 Hitung Hitung

Button3 Add Item AddItem

Button4 Add New AddNew

Button5 Save Transaction SaveTransaction

Button6 Close Close

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 60 Syntax Program

1. Pada bagian import tambahkan dibawah baris package aplikasipenjualan sepeti kode berikut:

package penjualan;

import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.sql.*;

2. Pada bagian public class FrmBrgMasuk extends javax.swing.JFrame tambahkan kode berikut:

public class FrmBrgMasuk extends javax.swing.JFrame {

Database dbsetting;

String driver,database,user,pass,userLogin; private Object tabel;

/** Creates new form FrmBrgMasuk */ public FrmBrgMasuk() { initComponents(); Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize=this.getSize(); if(frameSize.height > screenSize.height){ frameSize.height=screenSize.height; } if(frameSize.width > screenSize.width){ frameSize.width=screenSize.width; } this.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height = screenSize.height) / 10);

//setting untuk memanggil koneksi Database.ini dbsetting = new Database();

driver = dbsetting.SettingPanel("DBDriver"); database = dbsetting.SettingPanel("DBDatabase"); user = dbsetting.SettingPanel("DBUsername"); pass = dbsetting.SettingPanel("DBPassword"); table.setModel(tableModel);

Tabel(table, new int[]{90,300,90,60,60,90}); setDefaultTable();

SetEditOff(); TanggalOtomatis();

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 61 TampilComboBarang(); TampilComboPetugas(); TampilComboDistributor(); }

3. Buatlah kode program diatas // Variables declaration - do not modify untuk menampilkan data pada tabel seperti berikut:

private javax.swing.table.DefaultTableModel tableModel=getDefaultTabelModel();

private void Tabel(javax.swing.JTable tb, int lebar[] ) { tb.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); int kolom=tb.getColumnCount();

for(int i=0;i < kolom;i++) {

javax.swing.table.TableColumn tbc=tb.getColumnModel().getColumn(i); tbc.setPreferredWidth(lebar[i]); tb.setRowHeight(17); } }

private javax.swing.table.DefaultTableModel getDefaultTabelModel() {

return new javax.swing.table.DefaultTableModel( new Object[][] {},

new String [] {"Kode Barang","Nama Barang","Harga Jual","Stok","Jumlah","Sub Total"} ){

boolean[] canEdit = new boolean[]{ false, false, false, false

};

public boolean isCellEditable(int rowIndex, int columnIndex){ return canEdit[columnIndex];

} }; }

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 62

String data[]=new String[6]; private void setDefaultTable() {

String stat =""; try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass); Statement stt = kon.createStatement();

String SQL = "SELECT tblbarang.kodebarang,tblbarang.namabarang,tblbarang.hargajual," + "tblbarang.stok,tbldetailbrgmasuk.jumlah,tbldetailbrgmasuk.subtotal,tblbrgmasuk.nonota " + "FROM tblbarang,tbldetailbrgmasuk,tblbrgmasuk WHERE

tblbarang.kodebarang=tbldetailbrgmasuk.kodebarang " + "AND tblbrgmasuk.nonota=tbldetailbrgmasuk.nonota" + "AND tbldetailbrgmasuk.nonota='"+NoNota.getText()+"'"; ResultSet res = stt.executeQuery(SQL);

while(res.next()){ data[0] = res.getString(1); data[1] = res.getString(2); data[2] = res.getString(3); data[3] = res.getString(4); data[4] = res.getString(5); data[5] = res.getString(6); tableModel.addRow(data); } res.close(); stt.close(); kon.close();

} catch (Exception ex) {

System.err.println(ex.getMessage()); }

}

4. Buatlah private baru TampilGridDetail kemudian buat kode program seperti berikut:

private void TampilGridDetail(){

String stat =""; try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass); Statement stt = kon.createStatement();

String SQL = "SELECT tblbarang.kodebarang,tblbarang.namabarang,tblbarang.hargajual," + "tblbarang.stok,tbldetailbrgmasuk.jumlah,tbldetailbrgmasuk.subtotal,tblbrgmasuk.nonota " +

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 63

"FROM tblbarang,tbldetailbrgmasuk,tblbrgmasuk WHERE tblbarang.kodebarang=tbldetailbrgmasuk.kodebarang " + "AND tblbrgmasuk.nonota=tbldetailbrgmasuk.nonota " +

"AND tbldetailbrgmasuk.nonota='"+NoNota.getText().toString()+"'"; ResultSet res = stt.executeQuery(SQL);

while(res.next()){ data[0] = res.getString(1); data[1] = res.getString(2); data[2] = res.getString(3); data[3] = res.getString(4); data[4] = res.getString(5); data[5] = res.getString(6); tableModel.addRow(data); } res.close(); stt.close(); kon.close();

} catch (Exception ex) {

System.err.println(ex.getMessage()); }

}

5. Buatlah perintah BersihData,BersihDetail,SetEditOff, dan SetEditON disembarang tempat yang memiliki space kosong seperti berikut ini:

public void BersihData(){ tableModel.setRowCount(0); NoNota.setText(""); IDDistributor.setSelectedIndex(0); NamaPetugas.setText(""); IDPetugas.setSelectedIndex(0); NamaDistributor.setText(""); KotaAsal.setText(""); KodeBarang.setSelectedIndex(0); NamaBarang.setText(""); HargaJual.setText(""); Jumlah.setText(""); Stok.setText(""); SubTotal.setText("0"); Total.setText("0"); }

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 64 public void BersihDetail(){

KodeBarang.setSelectedIndex(0); NamaBarang.setText(""); HargaJual.setText(""); Stok.setText(""); Jumlah.setText(""); SubTotal.setText("0"); }

public void SetEditOff(){ NoNota.setEnabled(false); TglMasuk.setEnabled(false); IDDistributor.setEnabled(false); IDPetugas.setEnabled(false); KodeBarang.setEnabled(false); Jumlah.setEnabled(false); Hitung.setEnabled(false); CariData.setEnabled(false); AddItem.setEnabled(false); }

public void SetEditOn(){ NoNota.setEnabled(true); TglMasuk.setEnabled(true); IDDistributor.setEnabled(true); IDPetugas.setEnabled(true); KodeBarang.setEnabled(true); Jumlah.setEnabled(true); SaveTransaction.setEnabled(true); CariData.setEnabled(true); Hitung.setEnabled(true); AddItem.setEnabled(true); }

6. Buatlah kode program pada kombobox idpetugas dengan cara klik kanan pilih events -> item -> itemStatChanged.

private void IDPetugasItemStateChanged(java.awt.event.ItemEvent evt) {

// TODO add your handling code here: try {

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 65

Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblpetugas where idpetugas='"+ IDPetugas.getSelectedItem().toString()+"'";

ResultSet res = stt.executeQuery(SQL); res.absolute(1);

NamaPetugas.setText(res.getString("namapetugas")); } catch (SQLException ex) {

} }

7. Buatlah private baru untuk menampilakn data pada kombobox idpetugas seperti berikut:

public void TampilComboPetugas(){

try {

Connection kon = DriverManager.getConnection(database,user,pass); Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblpetugas"; ResultSet res = stt.executeQuery(SQL); while(res.next()){

IDPetugas.addItem(res.getString("idpetugas")); }

} catch (SQLException ex) { }

}

8. Buatlah kode program pada kombobox iddistributor dengan cara klik kanan pilih events -> item -> itemStatChanged.

private void IDDistributorItemStateChanged(java.awt.event.ItemEvent evt) {

// TODO add your handling code here: try {

Connection kon = DriverManager.getConnection(database,user,pass); Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tbldistributor where iddistributor='"+ IDDistributor.getSelectedItem().toString()+"'";

ResultSet res = stt.executeQuery(SQL); res.absolute(1);

NamaDistributor.setText(res.getString("namadistributor")); KotaAsal.setText(res.getString("kotaasal"));

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 66

} catch (SQLException ex) { }

}

9. Buatlah private baru untuk menampilakn data pada kombobox iddistributor seperti berikut:

public void TampilComboDistributor(){

try {

Connection kon = DriverManager.getConnection(database,user,pass); Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tbldistributor"; ResultSet res = stt.executeQuery(SQL);

while(res.next()){

IDDistributor.addItem(res.getString("iddistributor")); }

} catch (SQLException ex) { }

}

10. Buatlah kode program pada kombobox kodebarang dengan cara klik kanan pilih events -> item -> itemStatChanged.

private void KodeBarangItemStateChanged(java.awt.event.ItemEvent evt) {

// TODO add your handling code here: try {

Connection kon = DriverManager.getConnection(database,user,pass); Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblbarang where kodebarang='"+ KodeBarang.getSelectedItem().toString()+"'";

ResultSet res = stt.executeQuery(SQL); res.absolute(1);

NamaBarang.setText(res.getString("namabarang")); HargaJual.setText(res.getString("hargajual")); Stok.setText(res.getString("stok"));

} catch (SQLException ex) { }

Jumlah.requestFocus(); AddItem.setEnabled(true); }

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 67

11. Buatlah private baru untuk menampilakn data pada kombobox iddistributor seperti berikut:

public void TampilComboBarang(){

try {

Connection kon = DriverManager.getConnection(database,user,pass); Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblbarang"; ResultSet res = stt.executeQuery(SQL); while(res.next()){

KodeBarang.addItem(res.getString("kodebarang")); }

} catch (SQLException ex) { }

}

12. Buatlah private baru untuk menampilkan tanggal otomatis seperti berikut:

public void TanggalOtomatis(){

Date tanggal = new Date();

TglMasuk.setText(""+ (String.format("%1$td:%1$tb:%1$tY",tanggal))); }

13. Buatlah kode program untuk menampilkan perhitungan subtotal dengan mengkilik button hitung -> events -> action -> ActionPerformed.

private void HitungActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here: int a; int b; double c; a = Integer.parseInt(HargaJual.getText()); b = Integer.parseInt(Jumlah.getText()); c = a * b; SubTotal.setText(String.valueOf(c)); }

14. Buatlah kode program untuk menampilkan total dengan cara klik kanan textfield subtotal -> events -> charet -> charetUpdate.

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 68 private void SubTotalCaretUpdate(javax.swing.event.CaretEvent evt) {

// TODO add your handling code here: double d, e; d = Double.parseDouble(SubTotal.getText()); e = Double.parseDouble(Total.getText()); e = e+d; Total.setText(String.valueOf(e)); }

15. Buatlah kode program AddNew dengan mengklik kanan button AddNew ->events -> action -> ActionPerformed.

private void AddNewActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:

SetEditOn();

NoNota.requestFocus(); BersihData();

}

16. Buatlah kode program Add Item dengan mengklik kanan button save ->events -> action -> ActionPerformed.

private void AddItemActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here: String NM=NoNota.getText();

String KB=KodeBarang.getSelectedItem().toString(); String JM=Jumlah.getText();

if ((NM.isEmpty()) | (KB.isEmpty()) |(JM.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi"); KodeBarang.requestFocus();

}else { try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass); Statement stt = kon.createStatement();

String SQL = "insert into tbldetailbrgmasuk values('"+NoNota.getText()+"',"+ "'"+KodeBarang.getSelectedItem()+"',"+

"'"+Jumlah.getText()+"',"+ "'"+SubTotal.getText()+"')"; stt.executeUpdate(SQL);

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 69

Class.forName(driver);

Connection kon1 = DriverManager.getConnection(database,user,pass); Statement stt1 = kon.createStatement();

String SQL1 = "Update tblbarang Set stok=stok + '"+Jumlah.getText()+"'" + "Where kodebarang='"+KodeBarang.getSelectedItem().toString()+"'"; stt1.executeUpdate(SQL1); data[0] = KodeBarang.getSelectedItem().toString(); data[1] = NamaBarang.getText(); data[2] = HargaJual.getText(); data[3] = Stok.getText(); data[4] = Jumlah.getText(); data[5] = SubTotal.getText(); tableModel.insertRow(0, data); stt.close(); kon.close(); KodeBarang.requestFocus(); AddItem.setEnabled(false); BersihDetail(); //TampilGrid(); KodeBarang.requestFocus(); } catch (Exception ex) {

System.err.println(ex.getMessage()); }

}

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 70

17. Buatlah kode program SaveTransaction dengan mengklik kanan button save ->events -> action -> ActionPerformed.

private void SaveTransactionActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:

String NM=NoNota.getText();

if ((NM.isEmpty())) {

JOptionPane.showMessageDialog(null,"data tidak boleh kosong, silahkan dilengkapi"); NoNota.requestFocus();

}else { try {

Class.forName(driver);

Connection kon = DriverManager.getConnection(database,user,pass); Statement stt = kon.createStatement();

String SQL = "insert into tblbrgmasuk values('"+NoNota.getText()+"',"+ "'"+TglMasuk.getText()+"',"+ "'"+IDDistributor.getSelectedItem()+"',"+ "'"+IDPetugas.getSelectedItem()+"',"+ "'"+Total.getText()+"')"; stt.executeUpdate(SQL); stt.close(); kon.close(); BersihData(); SetEditOff(); SaveTransaction.setEnabled(false); } catch (Exception ex) {

System.err.println(ex.getMessage()); } } }

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 71

18. Buatlah kode program Close dengan mengklik kanan button Close ->evens -> action -> ActionPerformed.

private void CloseActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if(JOptionPane.showConfirmDialog(null,"This application will be close \n if you press button OK","Information", JOptionPane.OK_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE)==JOptionPane.OK_OPTI ON) this.dispose(); }

19. Buatlah kode program Cari Data dengan mengklik kanan button Cancel -> events -> Action -> ActionPerformed.

private void CariDataActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here: try {

Connection kon = DriverManager.getConnection(database,user,pass); Statement stt = kon.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

String SQL = "SELECT * FROM tblbrgmasuk where nonota='"+NoNota.getText().toString()+"'"; ResultSet res = stt.executeQuery(SQL);

res.absolute(1); TglMasuk.setText(res.getString("tglmasuk")); IDPetugas.setSelectedItem(res.getString("idpetugas")); IDDistributor.setSelectedItem(res.getString("iddistributor")); Total.setText(res.getString("total")); TampilGridDetail(); SaveTransaction.setEnabled(false); NoNota.setEnabled(false); CariData.setEnabled(false); } catch (SQLException ex) { }

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 72

20. Jalankan Program kemudian klik menu Data Barang Masuk maka akan tampil seperti berikut:

Dokumen terkait