Baik langsung saja buka MS Access anda, pertama sekali kita buat terlebih dahulu sebuah database dengan nama POS.mdb, simpan kemudian buat sebuah table dengan nama Barang kemudian desain field-fieldnya seperti dibawah ini.
Jika sudah selesai membuat dan mendesain database, sekarang anda buka Netbeans anda. Pada box Category pilih Java, pada box Projects pilih Java Desktop Aplication lalu pilih Next.
Pada Project Name ganti menjadi PointOfSale, sedangkan pada Project Location, Project Folder dan Application Class biarkan seperti itu. Pada box Choose Application Shell pilih Basic Application.
Kemudian pilih Finish dan hasilnya akan tampak seperti dibawah ini.
Tambahkan sebuah menulist untuk memanggil form Barang nantinya dengan cara klik kanan pada menubar yang terdapat pada Tab Inspector sebelah kiri jendela Netbeans anda kemudian pilih Add Menu.
Pada menulist yang telah kita buat tadi, klik kanan kemudian Edit Text ganti menjadi Data. Tambahkan lagi sebuah menulist dengan cara klik kanan pada menu item yang kita buat tadi lalu pilih Add From Pallet => Menu Item.
Pada sub menu
item yang baru kita buat tadi, ganti keterangannya dengan cara klik
kanan pilih Edit Text ganti menjadi Barang. Hasilnya seperti gambar
dibawah ini.
Selanjutnya kita
tambahkan sebuat object form, pada tab Projects klik kanan di sub root
tree pointofsale pilih New => JFrame Form. Pada Class name ganti
menjadi frmBarang lalu pilih Finish.
Sekarang kita
desain frmBarang dengan menambahkan beberapa komponen seperti
JTextField, JLabel, JButton dan JTable, kemudian pada objek JTextField
ganti setiap namanya dengan cara klik kanan pada objek JTextField =>
Change Varible Name dan ganti name sesuai dengan fungsinya. Berikut
hasil desainnya.
Sekarang mulai membuat kodingnya, langkah selanjutnya kita buat sebuah sintak untuk memanggil frmBarang dengan cara kembali ke form utama klik kanan pada sub menu item pilih Events => Action => actionPerformed. Lalu ketikkan sintak berikut ini
private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: frmBarang frm = new frmBarang(); frm.setVisible(true); }
Pada Class Name ganti menjadi clsKoneksi kemudian Finish. Kemudian ketikkan sintak atau koding dibawah ini.
package pointofsale; import java.sql.*; import javax.swing.JOptionPane; public class clsKoneksi { Connection Conn = null; ResultSet rs = null; PreparedStatement pst = null; public static Connection Koneksi(){ try{ Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”); Connection Conn = DriverManager.getConnection(“jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)}; DBQ=POS.mdb”); return Conn; }catch(Exception e){ JOptionPane.showMessageDialog(null, e); return null; } } }
Ok string koneksi sudah selesai, sekarang kita mulai membuat perintah SQL seperti Insert, Update, Select dan Delete.
Kembali lagi ke frmBarang klik kanan pada objek JButton Simpan pilih Events => Action => actionPerformed
Kemudian ketikkan sintak dibawah ini.
Kembali lagi ke frmBarang klik kanan pada objek JButton Simpan pilih Events => Action => actionPerformed
Kemudian ketikkan sintak dibawah ini.
private void btnSimpanActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: String sql = “insert into barang values(‘" + txtKodeBrg.getText() + "‘,'" + txtNamaBrg.getText() +"‘,'" + txtHrgBeli.getText() + "','" + txtHrgJual.getText() + "','" + txtQty.getText() + "')"; try { pst = Conn.prepareStatement(sql); pst.execute(); JOptionPane.showMessageDialog(null,"Data Sudah Disimpan!"); Tampil_Data(); } catch(Exception e) { JOptionPane.showMessageDialog(null, e); } }
package pointofsale; import java.sql.*; import javax.swing.JOptionPane; import net.proteanit.sql.DbUtils; public class frmBarang extends javax.swing.JFrame { /** Creates new form frmBarang */ public frmBarang() { initComponents(); } Connection Conn = null; ResultSet rs = null; PreparedStatement pst = null; @SuppressWarnings(“unchecked”) private void initComponents() { jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); jLabel3 = new javax.swing.JLabel(); jLabel4 = new javax.swing.JLabel(); jLabel5 = new javax.swing.JLabel(); txtKodeBrg = new javax.swing.JTextField(); txtNamaBrg = new javax.swing.JTextField(); txtHrgBeli = new javax.swing.JTextField(); txtHrgJual = new javax.swing.JTextField(); txtQty = new javax.swing.JTextField(); jScrollPane1 = new javax.swing.JScrollPane(); tblBarang = new javax.swing.JTable(); btnSimpan = new javax.swing.JButton(); btnUbah = new javax.swing.JButton(); Hapus = new javax.swing.JButton(); btnCari = new javax.swing.JButton(); Keluar = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); setName(“Form”); // NOI18N addWindowListener(new java.awt.event.WindowAdapter() { public void windowOpened(java.awt.event.WindowEvent evt) { formWindowOpened(evt); } }); org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance(pointofsale.PointOfSaleApp.class).getContext().getResourceMap(frmBarang.class); jLabel1.setText(resourceMap.getString(“jLabel1.text”)); // NOI18N jLabel1.setName(“jLabel1”); // NOI18N jLabel2.setText(resourceMap.getString(“jLabel2.text”)); // NOI18N jLabel2.setName(“jLabel2”); // NOI18N jLabel3.setText(resourceMap.getString(“jLabel3.text”)); // NOI18N jLabel3.setName(“jLabel3”); // NOI18N jLabel4.setText(resourceMap.getString(“jLabel4.text”)); // NOI18N jLabel4.setName(“jLabel4”); // NOI18N jLabel5.setText(resourceMap.getString(“jLabel5.text”)); // NOI18N jLabel5.setName(“jLabel5”); // NOI18N txtKodeBrg.setText(resourceMap.getString(“txtKodeBrg.text”)); // NOI18N txtKodeBrg.setName(“txtKodeBrg”); // NOI18N txtNamaBrg.setName(“txtNamaBrg”); // NOI18N txtHrgBeli.setText(resourceMap.getString(“txtHrgBeli.text”)); // NOI18N txtHrgBeli.setName(“txtHrgBeli”); // NOI18N txtHrgJual.setText(resourceMap.getString(“txtHrgJual.text”)); // NOI18N txtHrgJual.setName(“txtHrgJual”); // NOI18N txtQty.setText(resourceMap.getString(“txtQty.text”)); // NOI18N txtQty.setName(“txtQty”); // NOI18N jScrollPane1.setName(“jScrollPane1”); // NOI18N tblBarang.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {null, null, null, null}, {null, null, null, null}, {null, null, null, null}, {null, null, null, null} }, new String [] { “Title 1”, “Title 2”, “Title 3”, “Title 4” } )); tblBarang.setName(“tblBarang”); // NOI18N jScrollPane1.setViewportView(tblBarang); btnSimpan.setText(resourceMap.getString(“btnSimpan.text”)); // NOI18N btnSimpan.setName(“btnSimpan”); // NOI18N btnSimpan.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnSimpanActionPerformed(evt); } }); btnUbah.setText(resourceMap.getString(“btnUbah.text”)); // NOI18N btnUbah.setName(“btnUbah”); // NOI18N btnUbah.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnUbahActionPerformed(evt); } }); Hapus.setText(resourceMap.getString(“Hapus.text”)); // NOI18N Hapus.setName(“Hapus”); // NOI18N Hapus.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { HapusActionPerformed(evt); } }); btnCari.setText(resourceMap.getString(“btnCari.text”)); // NOI18N btnCari.setName(“btnCari”); // NOI18N btnCari.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnCariActionPerformed(evt); } }); Keluar.setText(resourceMap.getString(“Keluar.text”)); // NOI18N Keluar.setName(“Keluar”); // NOI18N Keluar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { KeluarActionPerformed(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(48, 48, 48) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jLabel5) .addComponent(jLabel4) .addComponent(jLabel3) .addComponent(jLabel2) .addComponent(jLabel1)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap()) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(txtQty, javax.swing.GroupLayout.DEFAULT_SIZE, 452, Short.MAX_VALUE) .addComponent(txtHrgJual, javax.swing.GroupLayout.DEFAULT_SIZE, 452, Short.MAX_VALUE) .addComponent(txtNamaBrg, javax.swing.GroupLayout.DEFAULT_SIZE, 452, Short.MAX_VALUE) .addComponent(txtHrgBeli, javax.swing.GroupLayout.DEFAULT_SIZE, 452, Short.MAX_VALUE) .addComponent(txtKodeBrg, javax.swing.GroupLayout.DEFAULT_SIZE, 452, Short.MAX_VALUE)) .addGap(88, 88, 88)))) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addContainerGap(185, Short.MAX_VALUE) .addComponent(btnSimpan) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(btnUbah) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Hapus) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(btnCari) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(Keluar) .addGap(159, 159, 159)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(42, 42, 42) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel1) .addComponent(txtKodeBrg, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel2) .addComponent(txtNamaBrg, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel3) .addComponent(txtHrgBeli, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel4) .addComponent(txtHrgJual, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel5) .addComponent(txtQty, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(18, 18, 18) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(btnSimpan) .addComponent(btnUbah) .addComponent(Hapus) .addComponent(btnCari) .addComponent(Keluar)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 172, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(19, 19, 19)) ); pack(); }// private void formWindowOpened(java.awt.event.WindowEvent evt) { // TODO add your handling code here: Conn = clsKoneksi.Koneksi(); super.setLocationRelativeTo(null); Tampil_Data(); } private void btnSimpanActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: String sql = “insert into barang values(‘” + txtKodeBrg.getText() + “‘,'” + txtNamaBrg.getText() +”‘,'” + txtHrgBeli.getText() + “‘,'” + txtHrgJual.getText() + “‘,'” + txtQty.getText() + “‘)”; try { pst = Conn.prepareStatement(sql); pst.execute(); JOptionPane.showMessageDialog(null,”Data Sudah Disimpan!”); Tampil_Data(); } catch(Exception e) { JOptionPane.showMessageDialog(null, e); } } private void KeluarActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: dispose(); } private void btnUbahActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: String sql = “update barang set NamaBrg= ‘” + txtNamaBrg.getText() +”‘,HrgBeli='” + txtHrgBeli.getText() + “‘,” + “HrgJual='” + txtHrgJual.getText() + “‘,” + “Qty='” + txtQty.getText() + “‘” + ” where KODEBRG='” + txtKodeBrg.getText() + “‘”; try { pst = Conn.prepareStatement(sql); pst.execute(); JOptionPane.showMessageDialog(null,”Data Sudah Disimpan!”); Tampil_Data(); } catch(Exception e) { JOptionPane.showMessageDialog(null, e); } } private void btnCariActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: String cari =”select * from barang where kodebrg='” + txtKodeBrg.getText() + “‘”; try { pst = Conn.prepareStatement(cari); rs = pst.executeQuery(); if (rs.next()) { txtKodeBrg.setText(rs.getString(“kodebrg”)); txtNamaBrg.setText(rs.getString(“namabrg”)); txtHrgBeli.setText(rs.getString(“Hrgbeli”)); txtHrgJual.setText(rs.getString(“hrgjual”)); txtQty.setText(rs.getString(“qty”)); } else { JOptionPane.showMessageDialog(null, “Data yang dicari tidak ada”); } }catch(Exception e) { JOptionPane.showMessageDialog(null, e); } } private void HapusActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: String sql = “delete from barang where kodebrg='” + txtKodeBrg.getText() + “‘”; try { int replay = JOptionPane.showConfirmDialog(this, “Yakin akan menghapus data dengan Kode Barang = ‘” + txtKodeBrg.getText() + “‘”, “KOnfirmasi”,JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE); if (replay== JOptionPane.YES_OPTION) { pst = Conn.prepareStatement(sql); pst.execute(); JOptionPane.showMessageDialog(null,”Data Dengan Kode Barang = ‘” + txtKodeBrg.getText() + “‘ Berhasil Dihapus!”,”Perhatian”,JOptionPane.INFORMATION_MESSAGE); Tampil_Data(); Bersih(); } } catch(Exception e) { JOptionPane.showMessageDialog(null, e); } } /** * @param args the command line arguments */ public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new frmBarang().setVisible(true); } }); } private void Tampil_Data() { String sql = “select * from barang order by kodebrg asc”; try { pst = Conn.prepareStatement(sql); rs = pst.executeQuery(); tblBarang.setModel(DbUtils.resultSetToTableModel(rs)); } catch(Exception e) { JOptionPane.showMessageDialog(null, e); } } private void Bersih() { txtKodeBrg.setText(“”); txtNamaBrg.setText(“”); txtHrgBeli.setText(“”); txtHrgJual.setText(“”); txtQty.setText(“”); txtKodeBrg.requestFocus(); } // Variables declaration – do not modify private javax.swing.JButton Hapus; private javax.swing.JButton Keluar; private javax.swing.JButton btnCari; private javax.swing.JButton btnSimpan; private javax.swing.JButton btnUbah; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel5; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JTable tblBarang; private javax.swing.JTextField txtHrgBeli; private javax.swing.JTextField txtHrgJual; private javax.swing.JTextField txtKodeBrg; private javax.swing.JTextField txtNamaBrg; private javax.swing.JTextField txtQty; // End of variables declaration }Dan berikut hasil dari program yang saya buat tadi. Untuk lebih jelas, silahkan download contoh programnya disini http://www.4shared.com/rar/3eb8x6SCba/PointOfSale.html
Semoga bermanfaat. Database , Pemrograman
Tidak ada komentar:
Posting Komentar