• Tidak ada hasil yang ditemukan

Tabel 1.12 Daftar Propertis yang digunakan

Pallete Propertis

Edit Text Change Variable Name

Label1 Tanggal Penjualan jLabel1

Label2 No.Faktur jLabel2

Label3 ID Petugas jLabel3

Label4 Nama Petugas jLabel4

Label5 Kode Barang jLabel8

Label6 Nama Barang jLabel9

Label7 Harga Jual jLabel10

Label8 Stok jLabel11

Label9 Jumlah jLabel12

Label10 Sub Total Rp jLabel13

Label11 Total Rp jLabel14

TextField1 - TglPenjualan

TextField2 - NoFaktur

ComboBox1 - IDPetugas

TextField3 - NamaPetugas

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 75 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 FrmPenjualan extends javax.swing.JFrame {

Database dbsetting;

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

/** Creates new form FrmPenjualan */ public FrmPenjualan() { 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; } TextField4 - NamaBarang TextField5 - HargaJual TextField6 - Stok TextField7 - Jumlah TextField8 - SubTotal TextField9 - 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 76

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(); TanggalOtomatis(); SetEditOff(); TampilComboBarang(); TampilComboPetugas(); }

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

};

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 77 return canEdit[columnIndex]; } }; }

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,tbldetailpenjualan.jumlah,tbldetailpenjualan.subtotal,tblpenjualan.nofaktur " + "FROM tblbarang,tbldetailpenjualan,tblpenjualan WHERE

tblbarang.kodebarang=tbldetailpenjualan.kodebarang " + "AND tblpenjualan.nofaktur=tbldetailpenjualan.nofaktur" + "AND tbldetailpenjualan.nofaktur='"+NoFaktur.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()); }

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 78

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,tbldetailpenjualan.jumlah,tbldetailpenjualan.subtotal,tblpenjualan.nofaktur " + "FROM tblbarang, tbldetailpenjualan, tblpenjualan " +

"WHERE tblbarang.kodebarang=tbldetailpenjualan.kodebarang " + "AND tblpenjualan.nofaktur=tbldetailpenjualan.nofaktur " +

"AND tbldetailpenjualan.nofaktur='" + NoFaktur.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); NoFaktur.setText(""); NamaPetugas.setText(""); IDPetugas.setSelectedIndex(0); KodeBarang.setSelectedIndex(0); NamaBarang.setText("");

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 79 HargaJual.setText(""); Jumlah.setText(""); Stok.setText(""); Bayar.setText("0"); Sisa.setText("0"); Total.setText("0"); SubTotal.setText("0"); }

public void BersihDetail(){ KodeBarang.setSelectedIndex(0); NamaBarang.setText(""); HargaJual.setText(""); Stok.setText(""); Jumlah.setText(""); SubTotal.setText("0"); }

public void SetEditOff(){ NoFaktur.setEnabled(false); TglPenjualan.setEnabled(false); IDPetugas.setEnabled(false); KodeBarang.setEnabled(false); Jumlah.setEnabled(false); Hitung.setEnabled(false); CariData.setEnabled(false); AddItem.setEnabled(false); }

public void SetEditOn(){ NoFaktur.setEnabled(true); TglPenjualan.setEnabled(true); IDPetugas.setEnabled(true); KodeBarang.setEnabled(true); Jumlah.setEnabled(true); SaveTransaction.setEnabled(true); CariData.setEnabled(true); Hitung.setEnabled(true); AddItem.setEnabled(true); }

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 80

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 {

Connection kon = DriverManager.getConnection(database,user,pass); 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 kodebarang dengan cara klik kanan pilih events -> item -> itemStatChanged.

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 81 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); }

9. 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) { }

}

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

public void TanggalOtomatis(){

Date tanggal = new Date();

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

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 82

11. 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)); }

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

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)); }

13. Buatlah kode program untuk menampilkan perhitungan sisa bayar dengan cara klik kanan textfield bayar - > events -> charet -> charetUpdate.

private void BayarCaretUpdate(javax.swing.event.CaretEvent evt) {

// TODO add your handling code here: double a; double b; double c; a = Double.parseDouble(Bayar.getText()); b = Double.parseDouble(Total.getText()); c = a - b; Sisa.setText(String.valueOf(c)); }

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 83

14. 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();

NoFaktur.requestFocus(); BersihData();

}

15. 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=NoFaktur.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 tbldetailpenjualan values('"+NoFaktur.getText()+"',"+ "'"+KodeBarang.getSelectedItem()+"',"+ "'"+Jumlah.getText()+"',"+ "'"+SubTotal.getText()+"')"; stt.executeUpdate(SQL); 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();

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 84 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(); KodeBarang.requestFocus(); } catch (Exception ex) {

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

}

}

16. 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=NoFaktur.getText();

if ((NM.isEmpty())) {

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

}else { try {

Class.forName(driver);

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

String SQL = "insert into tblpenjualan values('"+NoFaktur.getText()+"',"+ "'"+TglPenjualan.getText()+"',"+ "'"+IDPetugas.getSelectedItem()+"',"+ "'"+Bayar.getText()+"',"+ "'"+Sisa.getText()+"',"+ "'"+Total.getText()+"')"; stt.executeUpdate(SQL); stt.close();

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 85

kon.close(); BersihData(); SetEditOff();

SaveTransaction.setEnabled(false); } catch (Exception ex) {

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

}

}

17. 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(); }

18. 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 tblpenjualan where nofaktur='"+NoFaktur.getText().toString()+"'"; ResultSet res = stt.executeQuery(SQL); res.absolute(1); TampilGridDetail(); TglPenjualan.setText(res.getString("tglpenjualan")); IDPetugas.setSelectedItem(res.getString("idpetugas")); Bayar.setText(res.getString("bayar")); Sisa.setText(res.getString("sisa")); Total.setText(res.getString("total")); SaveTransaction.setEnabled(false); NoFaktur.setEnabled(false);

Membuat Program Aplikasi Penjualan Barang Menggunakan JAVA 86

CariData.setEnabled(false); } catch (SQLException ex) { }

}

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

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

// TODO add your handling code here: BersihData();

SetEditOff();

}

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

Dokumen terkait