MODUL
PEMOGRAMAN BERORIENTASI OBJEK
1. Aktifkan
xampp start pada apache & mysql.
2. Masuk
pada browser Membuat database di phpmyadmin kasih nama project kasir.
4. Setelah
membuat database,buka aplikasi netbeans dan buat folder baru dengan nama kasir.
5.
Import
Library
6. Buat Class
1. ClassKoneksi.java
Dengan source code:
package input_data;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import
javax.swing.JOptionPane;
public class ClassKoneksi {
private static Connection koneksi;
public static Connection getkoneksi(){
if(koneksi==null){
try {
String url=new String();
String user=new String();
String password=new String();
url="jdbc:mysql://localhost:3306/db_penjualan";
user="root";
password="";
DriverManager.registerDriver(new
com.mysql.jdbc.Driver());
koneksi=DriverManager.getConnection(url,user,password);
}catch (SQLException t){
System.out.println("Eror membuat
koneksi");
}
}
return koneksi;
}
}
2. cls_input_data.java
Dengan Source code:
package input_data;
import java.sql.Connection;
import
java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public
class cls_input_data {
public ResultSet SearchTextList(String
nma)throws SQLException{
Connection c=
ClassKoneksi.getkoneksi();
String sql = "select * from
t_petugas where nama_petugas like ? ";
PreparedStatement p=(PreparedStatement)c.prepareStatement(sql);
p.setString(1,nma +"%");
ResultSet rs = p.executeQuery();
return rs;
}
}
3. cls_input_data1.java
Dengan Source code :
package
input_data;
import
java.sql.Connection;
import
java.sql.PreparedStatement;
import
java.sql.ResultSet;
import
java.sql.SQLException;
import
java.sql.Statement;
public
class cls_input_data1 {
public ResultSet SearchTextList(String
nma)throws SQLException{
Connection c= ClassKoneksi.getkoneksi();
String sql = "select * from
t_barang where barang_nama like ?";
PreparedStatement
p=(PreparedStatement)c.prepareStatement(sql);
p.setString(1,nma +"%");
ResultSet rs = p.executeQuery();
return rs;
}
}
7.
Buatlah
jFrame dengan nama : penjualan
Dengan source code :
public class penjualanamin
extends javax.swing.JFrame {
private DefaultTableModel
model;
public penjualanamin() {
initComponents();
auto_key();
jpetugas.disable();
txtNofa.disable();
TxtKode.disable();
TxtNama.disable();
TxtHJual.disable();
TxtDateTime.hide();
jLabel15.hide();
model =new DefaultTableModel();
TblDetail.setModel(model);
model.addColumn("KODE
Barang");
model.addColumn("Nama
Barang");
model.addColumn("Harga");
model.addColumn("Jumlah");
model.addColumn("Sub Total");
model.addColumn("Jual Time");
//START fungsi tidak menampilkan column
ID barang(0) dan jual time (5)
TblDetail.getColumnModel().getColumn(5).setMinWidth(0);
TblDetail.getColumnModel().getColumn(5).setMaxWidth(0);
TblDetail.getColumnModel().getColumn(5).setWidth(0);
TblDetail.getColumnModel().getColumn(0).setMinWidth(0);
TblDetail.getColumnModel().getColumn(0).setMaxWidth(0);
TblDetail.getColumnModel().getColumn(0).setWidth(0);
loadData();
Date date = new Date();
JdateJual.setDate(date);
}
public String kdptg,kdbrg,nm,jual;
public String getJpetugas() {
return kdptg;
}
public String getTxtKode() {
return kdbrg;
}
public String getTxtNama() {
return nm;
}
public String getTxtHJual() {
return jual;
}
public void itemTerpilih(){
petugas1 fDB = new petugas1();
fDB.fAB = this;
jpetugas.setText(kdptg);
}
public void itemTerpilih1(){
barang br = new barang();
br.fAB = this;
TxtKode.setText(kdbrg);
TxtNama.setText(nm);
TxtHJual.setText(jual);
}
private void Total(){
int jumlahBaris =
TblDetail.getRowCount();
int ttlpinjam = 0, jlhpinjam=0;
int Jlhtotalpinjam;
TableModel tblmodel;
tblmodel = TblDetail.getModel();
for (int i=0; i<jumlahBaris; i++){
Jlhtotalpinjam=Integer.parseInt(tblmodel.getValueAt(i, 3).toString());
jlhpinjam=Jlhtotalpinjam+jlhpinjam;
}
}
public void Batal(){
DefaultTableModel model =
(DefaultTableModel)TblDetail.getModel();
int row = TblDetail.getSelectedRow();
if (row>=0) {
int ok =
JOptionPane.showConfirmDialog(null, "Anda yakin ingin
menghapus","Message",JOptionPane.YES_NO_OPTION);
if (ok==0){
model.removeRow(row);
}
}
Total();
//Proses mengahapus data dari tabel detail
try {
Connection c=
ClassKoneksi.getkoneksi();
String sql="DELETE From
t_jualdetail WHERE no_transaksi='"+this.txtNofa.getText()+"' AND waktu
='"+this.TxtDateTime.getText()+"'";
PreparedStatement
p=(PreparedStatement)c.prepareStatement(sql);
p.executeUpdate();
p.close();
}catch(SQLException e){
System.out.println("Terjadi
Kesalahan");
}finally{
loadData();
JOptionPane.showMessageDialog(this,"Sukses Hapus Data");
}
}
public void Cari_Kode(){
int i=TblDetail.getSelectedRow();
if(i==-1)
{ return; }
String ID=(String)model.getValueAt(i, 0);
TxtKode.setText(ID);
}
public void ShowData(){
try {
Connection c=ClassKoneksi.getkoneksi();
String sql="Select * from
t_jualdetail, t_barang WHERE t_jualdetail.kode_barang = t_barang.barang_id AND
t_jualdetail.kode_barang='"+this.TxtKode.getText()+"'";
Statement st =
ClassKoneksi.getkoneksi().createStatement();
ResultSet rs = st.executeQuery(sql);
while(rs.next()){
this.TxtJumlah.setText(rs.getString("jumlah"));
this.TxtNama.setText(rs.getString("barang_nama"));
this.TxtHJual.setText(rs.getString("jual_harga"));
this.TxtSubTotal.setText(rs.getString("subtotal"));
this.TxtDateTime.setText(rs.getString("waktu"));
}
rs.close(); st.close();}
catch (Exception e) {
System.out.println(e.getMessage());
}
}
public final void loadData(){
model.getDataVector().removeAllElements();
model.fireTableDataChanged();
try{
Connection c= ClassKoneksi.getkoneksi();
Statement s= c.createStatement();
String sql="Select * from
t_jualdetail, t_barang WHERE t_jualdetail.kode_barang = t_barang.barang_id AND
t_jualdetail.no_transaksi='"+this.txtNofa.getText()+"'";
ResultSet r=s.executeQuery(sql);
while(r.next()){
Object[]o=new Object[5];
o[0]=r.getString("kode_barang");
o[1]=r.getString("barang_nama");
o[2]=r.getString("jual_harga");
o[3]=r.getString("jumlah");
o[4]=r.getString("subtotal");
model.addRow(o);
}
r.close();
s.close();
//ShowData();
}catch(SQLException e){
System.out.println("Terjadi
Kesalahan");
}
//menjumlahkan isi colom ke 4 dalam tabel
int total = 0;
for (int i =0; i<
TblDetail.getRowCount(); i++){
int amount = Integer.parseInt((String)TblDetail.getValueAt(i, 4));
total += amount;
}
TxtTotal.setText(""+total);
}
public void AutoSum() {
int a, b, c;
a =
Integer.parseInt(TxtHJual.getText());
b =
Integer.parseInt(TxtJumlah.getText());
c = a*b;
TxtSubTotal.setText(""+c);
}
public void HitungKembali() {
int d, e, f;
d =
Integer.parseInt(TxtTotal.getText());
e =
Integer.parseInt(TxtCash.getText());
f = e-d;
TxtKembali.setText(""+f);
}
public void auto_key(){
try {
java.util.Date tgl = new
java.util.Date();
java.text.SimpleDateFormat kal = new
java.text.SimpleDateFormat("yyMMdd");
java.text.SimpleDateFormat tanggal = new
java.text.SimpleDateFormat("yyyyMMdd");
Connection c=ClassKoneksi.getkoneksi();
String sql = "select
max(no_transaksi) from t_jual WHERE jual_tgl ="+tanggal.format(tgl);
Statement st =
ClassKoneksi.getkoneksi().createStatement();
ResultSet rs = st.executeQuery(sql);
while(rs.next()){
Long a =rs.getLong(1); //mengambil nilai
tertinggi
if(a == 0){
this.txtNofa.setText(kal.format(tgl)+"0000"+(a+1));
}else{
this.txtNofa.setText(""+(a+1));
}
}
rs.close(); st.close();}
catch (Exception e) {
JOptionPane.showMessageDialog(null,
"Terjadi kesalaahan");
}
}
public void Selesai(){
String no_transaksi
=this.txtNofa.getText();
String jual_total=this.TxtTotal.getText();
String jual_cash =this.TxtCash.getText();
String jual_kembali
=this.TxtKembali.getText();
//Date date = new Date();
//JdateJual.setDate(date);
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date tanggal = new Date();
tanggal = JdateJual.getDate();
String jual_tgl =
dateFormat.format(tanggal);
try{
Connection
c=ClassKoneksi.getkoneksi();
String sql="Insert into t_jual
(no_transaksi,jual_tgl,jual_total,jual_cash,jual_kembali) values
(?,?,?,?,?)";
PreparedStatement
p=(PreparedStatement)c.prepareStatement(sql);
p.setString(1,no_transaksi);
p.setString(2,jual_tgl);
p.setString(3,jual_total);
p.setString(4,jual_cash);
p.setString(5,jual_kembali);
p.executeUpdate();
p.close();
}catch(SQLException e){
System.out.println(e);
}finally{
//loadData();
JOptionPane.showMessageDialog(this,"Data Telah
Tersimpan");
}
auto_key();
loadData();
}
public void TambahDetail(){
Date HariSekarang = new Date( );
SimpleDateFormat ft = new SimpleDateFormat
("yyyy-MM-dd hh:mm:ss");
String
kode_petugas =this.jpetugas.getText();
String no_transaksi
=this.txtNofa.getText();
String kode_barang
=this.TxtKode.getText();
String
jual_harga=this.TxtHJual.getText();
String jumlah=this.TxtJumlah.getText();
String subtotal =this.TxtSubTotal.getText();
String DateTime = ft.format(HariSekarang);
try{
Connection
c=ClassKoneksi.getkoneksi();
String sql="Insert into t_jualdetail
(kode_petugas,no_transaksi,kode_barang,jual_harga,jumlah,subtotal,waktu) values
(?,?,?,?,?,?,?)";
PreparedStatement
p=(PreparedStatement)c.prepareStatement(sql);
p.setString(1,kode_petugas);
p.setString(2,no_transaksi);
p.setString(3,kode_barang);
p.setString(4,jual_harga);
p.setString(5,jumlah);
p.setString(6,subtotal);
p.setString(7,DateTime);
p.executeUpdate();
p.close();
}catch(SQLException e){
System.out.println(e);
}finally{
//loadData();
JOptionPane.showMessageDialog(this,"Data Telah
Tersimpan");
}
}
public void cari_id(){
try {
Connection c=ClassKoneksi.getkoneksi();
String sql = "select * from
t_barang, t_satuan where t_barang.barang_satuan = t_satuan.satuan_id AND
t_barang.barang_id='"+this.TxtKode.getText()+"'";
Statement st =
ClassKoneksi.getkoneksi().createStatement();
ResultSet rs = st.executeQuery(sql);
while(rs.next()){
this.TxtNama.setText(rs.getString("barang_nama"));
this.TxtHJual.setText(rs.getString("barang_hjual"));
}
rs.close(); st.close();}
catch (Exception e) {
System.out.println(e.getMessage());
}
}
public
void bersihkan(){
TxtKode.setText("");
TxtNama.setText("");
TxtHJual.setText("");
TxtJumlah.setText("");
TxtCash.setText("");
TxtSubTotal.setText("");
TxtKembali.setText("");
}
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel4.setText("JUMLAH
BARANG");
TxtJumlah.addKeyListener(new
java.awt.event.KeyAdapter() {
public void
keyPressed(java.awt.event.KeyEvent evt) {
TxtJumlahKeyPressed(evt);
}
});
jLabel5.setText("HARGA
JUAL");
jLabel15.setText("DATE
TIME");
btnadd.setText("ADD");
btnadd.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
btnaddActionPerformed(evt);
}
});
BtnSimpan.setText(" SIMPAN");
BtnSimpan.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
BtnSimpanActionPerformed(evt);
}
});
BtnBatal.setText(" HAPUS");
BtnBatal.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
BtnBatalActionPerformed(evt);
}
});
btnkeluar.setText("KELUAR");
btnkeluar.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
btnkeluarActionPerformed(evt);
}
});
jLabel6.setText("TOTAL
BELANJA");
jLabel7.setText("TUNAI");
jLabel8.setText("KEMBALIAN");
jLabel1.setText("KODE
PETUGAS");
jLabel2.setText("TGL
TRANSAKSI");
TxtCash.addKeyListener(new
java.awt.event.KeyAdapter() {
public void
keyPressed(java.awt.event.KeyEvent evt) {
TxtCashKeyPressed(evt);
}
});
btnkodepetugas.setText("SELECT");
btnkodepetugas.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
btnkodepetugasActionPerformed(evt);
}
});
jLabel10.setText("NO
TRANSAKSI");
TblDetail.setModel(new
javax.swing.table.DefaultTableModel(
new Object [][] {
},
new String [] {
"", "",
"", "", ""
}
));
TblDetail.addMouseListener(new
java.awt.event.MouseAdapter() {
public void
mouseClicked(java.awt.event.MouseEvent evt) {
TblDetailMouseClicked(evt);
}
});
jScrollPane1.setViewportView(TblDetail);
jLabel11.setText("KODE
BARANG");
TxtKode.addKeyListener(new
java.awt.event.KeyAdapter() {
public void
keyPressed(java.awt.event.KeyEvent evt) {
TxtKodeKeyPressed(evt);
}
});
jLabel12.setText("SUB
TOTAL");
btnkodebarang.setText("SELECT");
btnkodebarang.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
btnkodebarangActionPerformed(evt);
}
});
jLabel3.setText("NAMA
BARANG");
laporan.setText("LAPORAN");
laporan.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
laporanActionPerformed(evt);
}
});
jLabel9.setFont(new java.awt.Font("CAMPUS
PERSONAL USE", 3, 36)); // NOI18N
jLabel9.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jLabel9.setText("KASIR PENJUALAN
TOKO KU");
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(46, 46, 46)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel9,
javax.swing.GroupLayout.PREFERRED_SIZE, 554, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel15)
.addGap(41, 41, 41)
.addComponent(TxtDateTime, javax.swing.GroupLayout.PREFERRED_SIZE, 206,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING,
false)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(TxtNama, javax.swing.GroupLayout.PREFERRED_SIZE, 173,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel1)
.addComponent(jLabel2)
.addComponent(jLabel10))
.addGap(27, 27, 27)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jpetugas)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(btnkodepetugas))
.addComponent(txtNofa)
.addComponent(JdateJual,
javax.swing.GroupLayout.DEFAULT_SIZE, 174, Short.MAX_VALUE)))
.addComponent(btnkodebarang))
.addGap(28, 28,
28)
.addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 643,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel5)
.addComponent(jLabel4))
.addGap(22, 22, 22)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addComponent(TxtHJual, javax.swing.GroupLayout.DEFAULT_SIZE, 173,
Short.MAX_VALUE)
.addComponent(TxtJumlah)))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel11)
.addComponent(jLabel3)
.addComponent(jLabel12))
.addGap(32, 32, 32)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(TxtSubTotal, javax.swing.GroupLayout.PREFERRED_SIZE, 122,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnadd))
.addComponent(TxtKode, javax.swing.GroupLayout.PREFERRED_SIZE, 100,
javax.swing.GroupLayout.PREFERRED_SIZE))))
.addGap(433,
433, 433)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel6)
.addComponent(jLabel7)
.addComponent(jLabel8))
.addGap(26, 26,
26)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addComponent(TxtTotal, javax.swing.GroupLayout.PREFERRED_SIZE, 126,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(TxtCash, javax.swing.GroupLayout.PREFERRED_SIZE, 126,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(TxtKembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 126,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(layout.createSequentialGroup()
.addComponent(BtnSimpan)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(BtnBatal)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnkeluar)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(laporan)))
.addGap(0, 0,
Short.MAX_VALUE)))
.addContainerGap(19,
Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(64, 64, 64)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(TxtDateTime, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel15)))
.addComponent(jLabel9,
javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel1)
.addComponent(jpetugas,
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(btnkodepetugas))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel10)
.addComponent(txtNofa, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(6, 6, 6)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel2)
.addComponent(JdateJual, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 259,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel11)
.addComponent(TxtKode, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnkodebarang))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(TxtNama, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel5)
.addComponent(TxtHJual,
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(TxtJumlah, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4))
.addGap(11, 11, 11)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel12)
.addComponent(TxtSubTotal, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnadd))
.addGap(1, 6,
Short.MAX_VALUE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addGap(0, 0,
Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel6, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(TxtTotal, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel7)
.addComponent(TxtCash, 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(jLabel8)
.addComponent(TxtKembali, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(12, 12, 12)
.addComponent(laporan))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(BtnSimpan)
.addComponent(BtnBatal)
.addComponent(btnkeluar)))
.addContainerGap())
);
pack();
}// </editor-fold>
private void
TxtJumlahKeyPressed(java.awt.event.KeyEvent evt) {
// TODO add your handling code here:
if (evt.getKeyCode() ==
KeyEvent.VK_ENTER) {
AutoSum();
}
}
private void
btnaddActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
TambahDetail();
loadData();
bersihkan();
}
private void
BtnSimpanActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
Selesai();
bersihkan();
jpetugas.setText("");
}
private void
BtnBatalActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
Batal();
bersihkan();
jpetugas.setText("");
}
private void
btnkeluarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
System.exit(0);
}
private void
TxtCashKeyPressed(java.awt.event.KeyEvent evt) {
// TODO add your handling code here:
if (evt.getKeyCode() ==
KeyEvent.VK_ENTER) {
HitungKembali();
}
}
private void
btnkodepetugasActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
//new petugas1().setVisible(true);
petugas1 tugas = new petugas1();
tugas.fAB = this;
tugas.setVisible(true);
tugas.setResizable(false);
//
this.dispose();
}
private void
TblDetailMouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
this.Cari_Kode();
this.ShowData();
}
private void
TxtKodeKeyPressed(java.awt.event.KeyEvent evt) {
// TODO add your handling code here:
if (evt.getKeyCode() ==
KeyEvent.VK_ENTER) {
cari_id();
}
}
private void
btnkodebarangActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
//new barang().setVisible(true);
barang brg = new barang();
brg.fAB = this;
brg.setVisible(true);
brg.setResizable(false);
}
private void
laporanActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
Connection c=
ClassKoneksi.getkoneksi();
String NamaFile =
"/report/report.jasper";
HashMap hash = new HashMap();
try {
runReportDefault(NamaFile,hash);
} catch (Exception e) {
}
}
public void runReportDefault(String
sourcefilename, HashMap hash) {
Connection c=
ClassKoneksi.getkoneksi();
try {
InputStream report;
report =
getClass().getResourceAsStream(sourcefilename);
JasperPrint jprint =
JasperFillManager.fillReport(report,hash, c);
JasperViewer viewer = new
JasperViewer(jprint, false);
viewer.setFitPageZoomRatio();
viewer.setVisible(true);
} catch (Exception e) {
System.out.print(e.getMessage());
}
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold
defaultstate="collapsed" desc=" Look and feel setting code
(optional) ">
/* If Nimbus (introduced in Java SE 6)
is not available, stay with the default look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for
(javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if
("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(penjualanamin.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(penjualanamin.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(penjualanamin.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch
(javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(penjualanamin.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new
Runnable() {
public void run() {
new
penjualanamin().setVisible(true);
}
});
}
}
8. Buatlah jFrame Form dengan nama : barang
package
Form;
import
input_data.ClassKoneksi;
import
input_data.cls_input_data1;
import
java.awt.HeadlessException;
import
java.sql.Connection;
import
java.sql.DriverManager;
import
java.sql.PreparedStatement;
import
java.sql.ResultSet;
import
java.sql.SQLException;
import
java.sql.Statement;
import
java.util.logging.Level;
import
java.util.logging.Logger;
import
javax.swing.JOptionPane;
import
javax.swing.JTable;
import
javax.swing.table.DefaultTableModel;
import
net.proteanit.sql.DbUtils;
public
class barang extends javax.swing.JFrame {
private Statement stat;
private Connection conek;
private ResultSet hasil;
private String sql="";
public String barang_id,barang_nama,barang_hjual;
DefaultTableModel tabmode;
public static int statusSearching = 0;
public Connection conn;
public penjualanamin fAB = null;
public void koneksi() {
try {
Class.forName("com.mysql.jdbc.Driver");
conn =
DriverManager.getConnection("jdbc:mysql://localhost:3306/db_penjualan",
"root", "");
} catch (ClassNotFoundException |
SQLException e) {
JOptionPane.showMessageDialog(null,
"Koneksi Gagal");
System.out.println(e.getMessage());
}
}
public final void tampildata() {
DefaultTableModel tabelbarang = new
DefaultTableModel();
tabelbarang.addColumn("barang_id");
tabelbarang.addColumn("barang_nama");
tabelbarang.addColumn("barang_hjual");
try {
koneksi();
String sql = "select * from
t_barang";
stat = conn.createStatement();
ResultSet rs = stat.executeQuery(sql);
while (rs.next()) {
tabelbarang.addRow(new
Object[]{
rs.getString(1),
rs.getString(2),
rs.getString(3)
});
}
TblBarang.setModel(tabelbarang);
} catch (Exception e) {
JOptionPane.showMessageDialog(null,
"Ada kesalahan" + e);
}
}
public void tampildatabase(){
Object []baru = {"Kode
Barang","Nama Barang","Harga Jual"};
tabmode = new DefaultTableModel(null,
baru);
TblBarang.setModel(tabmode);
String sql = "SELECT*FROM
t_barang";
try {
Connection conek =
ClassKoneksi.getkoneksi();
Statement stat =
conek.createStatement();
ResultSet hasil =
stat.executeQuery(sql);
while (hasil.next()){
String ID=
hasil.getString("barang_id");
String Nama = hasil.getString("barang_nama");
String Hjual =
hasil.getString("barang_hjual");
String[] data = {ID,Nama,Hjual};
tabmode.addRow(data);
}
} catch (SQLException e) {
}
}
public barang() {
initComponents();
tampildata();
tampildatabase();
}
private void clear(){
jbarang_id.setText("");
jbarang_nama.setText("");
jbarang_hjual.setText("");
}
private void enabled(){
jbarang_id.enable(true);
jbarang_nama.enable(true);
jbarang_hjual.enable(true);
jbarang_id.requestFocus();
}
private void disabled(){
jbarang_id.enable(false);
jbarang_nama.enable(false);
jbarang_hjual.enable(false);
}
@SuppressWarnings("unchecked")
// <editor-fold
defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
BtnEdit = new javax.swing.JButton();
BtnHapus = new javax.swing.JButton();
jbarang_hjual = new
javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
jbarang_nama = new javax.swing.JTextField();
BtnBatal = new javax.swing.JButton();
jLabel3 = new javax.swing.JLabel();
jScrollPane1 = new
javax.swing.JScrollPane();
TblBarang = new javax.swing.JTable();
jLabel5 = new javax.swing.JLabel();
BtnSimpan = new javax.swing.JButton();
jbarang_id = new
javax.swing.JTextField();
jLabel1 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
BtnEdit.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/icon/reload1.png")));
// NOI18N
BtnEdit.setText(" EDIT");
BtnEdit.addMouseListener(new
java.awt.event.MouseAdapter() {
public void
mouseClicked(java.awt.event.MouseEvent evt) {
BtnEditMouseClicked(evt);
}
});
BtnEdit.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
BtnEditActionPerformed(evt);
}
});
BtnHapus.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/icon/remove1.png")));
// NOI18N
BtnHapus.setText(" HAPUS");
BtnHapus.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
BtnHapusActionPerformed(evt);
}
});
jbarang_hjual.setName(""); //
NOI18N
jLabel2.setText("KODE
BARANG");
jbarang_nama.setName(""); //
NOI18N
jbarang_nama.addKeyListener(new
java.awt.event.KeyAdapter() {
public void
keyReleased(java.awt.event.KeyEvent evt) {
jbarang_namaKeyReleased(evt);
}
});
BtnBatal.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/icon/Back1.png"))); //
NOI18N
BtnBatal.setText(" BATAL");
BtnBatal.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
BtnBatalActionPerformed(evt);
}
});
jLabel3.setText("NAMA
BARANG");
TblBarang.setModel(new
javax.swing.table.DefaultTableModel(
new Object [][] {
},
new String [] {
"Title",
"Title", "Title", "Title"
}
));
TblBarang.setRowSelectionAllowed(false);
TblBarang.addMouseListener(new
java.awt.event.MouseAdapter() {
public void
mouseClicked(java.awt.event.MouseEvent evt) {
TblBarangMouseClicked(evt);
}
public void
mouseEntered(java.awt.event.MouseEvent evt) {
TblBarangMouseEntered(evt);
}
});
jScrollPane1.setViewportView(TblBarang);
jLabel5.setText("HARGA
JUAL");
BtnSimpan.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/icon/save.png"))); //
NOI18N
BtnSimpan.setText(" SIMPAN");
BtnSimpan.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
BtnSimpanActionPerformed(evt);
}
});
jbarang_id.setName(""); //
NOI18N
jbarang_id.addActionListener(new
java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
jbarang_idActionPerformed(evt);
}
});
jbarang_id.addKeyListener(new
java.awt.event.KeyAdapter() {
public void
keyPressed(java.awt.event.KeyEvent evt) {
jbarang_idKeyPressed(evt);
}
});
jLabel1.setFont(new
java.awt.Font("Algerian", 1, 24)); // NOI18N
jLabel1.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/icon/barang1.png")));
// NOI18N
jLabel1.setText("BARANG");
jLabel4.setText("CARI");
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(26, 26, 26)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addGroup(layout.createSequentialGroup()
.addComponent(BtnSimpan)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(BtnEdit)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(BtnHapus)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(BtnBatal))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel2)
.addComponent(jLabel3)
.addComponent(jLabel5, javax.swing.GroupLayout.Alignment.LEADING))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jbarang_id)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jbarang_nama)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jLabel4))
.addComponent(jbarang_hjual)
.addGroup(layout.createSequentialGroup()
.addGap(10, 10,
10)
.addComponent(jLabel1)
.addGap(0, 0,
Short.MAX_VALUE))))
.addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE))
.addContainerGap(24,
Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addGap(12, 12, 12)
.addComponent(jLabel1)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(jbarang_id,
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(jbarang_nama,
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel5)
.addComponent(jbarang_hjual, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 149,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(BtnBatal)
.addComponent(BtnHapus)
.addComponent(BtnEdit)
.addComponent(BtnSimpan))
.addContainerGap(25,
Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void
BtnEditActionPerformed(java.awt.event.ActionEvent evt) {
}
private void
BtnHapusActionPerformed(java.awt.event.ActionEvent evt) {
String barang_id =
jbarang_id.getText();
try {
Statement statement
=ClassKoneksi.getkoneksi().createStatement();
statement.executeUpdate("delete from t_barang where
barang_id=('"+barang_id+"')");
clear();
tampildatabase();
JOptionPane.showMessageDialog(null,
"Data Berhasil Dihapus");
}catch (Exception t) {
JOptionPane.showMessageDialog(null,
"Data Gagal Dihapus");
}
}
private void
BtnBatalActionPerformed(java.awt.event.ActionEvent evt) {
clear();
enabled();
BtnSimpan.setEnabled(true);
BtnEdit.setEnabled(true);
}
private void
TblBarangMouseClicked(java.awt.event.MouseEvent evt) {
int tabelbarang =
TblBarang.getSelectedRow();
fAB.kdbrg =
TblBarang.getValueAt(tabelbarang, 0).toString();
fAB.nm =
TblBarang.getValueAt(tabelbarang, 1).toString();
fAB.jual =
TblBarang.getValueAt(tabelbarang, 2).toString();
fAB.itemTerpilih1();
this.dispose();
}
private void
BtnSimpanActionPerformed(java.awt.event.ActionEvent evt) {
if(jbarang_id.getText().trim().equals("")){
JOptionPane.showMessageDialog(null,"Maaf, Kode belum di
isi!");
jbarang_id.requestFocus();
}else
if(jbarang_nama.getText().trim().equals("")){
JOptionPane.showMessageDialog(null,"Maaf, Nama belum di
isi!");
jbarang_nama.requestFocus();
} else if(jbarang_hjual.getText().trim().equals("")){
JOptionPane.showMessageDialog(null,"Maaf, Jumlah belum di
isi!");
jbarang_hjual.requestFocus();
} else{
String barang_id="",
barang_nama ="", barang_hjual ="";
try {
Connection conek
=ClassKoneksi.getkoneksi();
barang_id = jbarang_id.getText();
barang_nama =
jbarang_nama.getText();
barang_hjual=
jbarang_hjual.getText();
String sql = "insert into
t_barang values('"+barang_id+"','"+barang_nama+"',
'"+barang_hjual+"')";
Statement st =
conek.createStatement();
st.executeUpdate(sql);
JOptionPane.showMessageDialog(null,
"Data Berhasil Tersimpan" , "Informasi",
JOptionPane.INFORMATION_MESSAGE);
tampildatabase();
} catch (HeadlessException |
SQLException e) {
JOptionPane.showMessageDialog(null,
"Data Gagal Tersimpan" , "Informasi",
JOptionPane.INFORMATION_MESSAGE);
}
}
clear();
}
private void
jbarang_idActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void jbarang_idKeyPressed(java.awt.event.KeyEvent
evt) {
// TODO add your handling code here:
barang_id = jbarang_id.getText();
int A = evt.getKeyCode();
if (A==10){
try {
sql="SELECT * FROM t_barang WHERE
barang_id='"+barang_id+"'";
Connection conek =
ClassKoneksi.getkoneksi();
stat = conek.createStatement();
hasil =
stat.executeQuery(sql);
while(hasil.next()){
jbarang_nama.setText(hasil.getString("barang_nama"));
jbarang_hjual.setText(hasil.getString("barang_hjual"));
BtnSimpan.enable(false);
BtnEdit.enable(true);
BtnHapus.enable(true);
}
} catch (Exception e) {
JOptionPane.showConfirmDialog(null, "Data Not
Found\n"+e.getMessage());
jbarang_nama.requestFocus();
}
}
}
private void BtnEditMouseClicked(java.awt.event.MouseEvent
evt) {
// TODO add your handling code here:
String barang_id="",
barang_nama ="", barang_hjual ="";
int
ok=JOptionPane.showConfirmDialog(null,"Apakah Yakin Untuk Update Record
ini???","Confirmation",JOptionPane.YES_NO_OPTION);
try{
Connection co =
ClassKoneksi.getkoneksi();
barang_id = jbarang_id.getText();
barang_nama =
jbarang_nama.getText();
barang_hjual=
jbarang_hjual.getText();
String sql="update t_barang
set barang_id=?,barang_nama=?,barang_hjual=? where
barang_id='"+barang_id+"'";
PreparedStatement
st=co.prepareStatement(sql);
if(ok==0){
try {
st.setString(1,jbarang_id.getText());
st.setString(2,jbarang_nama.getText());
st.setString(3,jbarang_hjual.getText());
st.executeUpdate();
tampildatabase();
JOptionPane.showMessageDialog(null,"Update Data Sukses");
}catch (Exception e)
{JOptionPane.showMessageDialog(null, "Update Data Gagal");
}
}else{}
}catch (SQLException e){
System.out.println(e.getMessage());
JOptionPane.showMessageDialog(null, "Tidak ada kesalahan");
}
clear();
}
private void TblBarangMouseEntered(java.awt.event.MouseEvent
evt) {
// TODO add your handling code here:
}
private void
jbarang_namaKeyReleased(java.awt.event.KeyEvent evt) {
// TODO add your handling code here:
String nam = jbarang_nama.getText();
cls_input_data1 data = new
cls_input_data1();
try{
TblBarang.setModel(DbUtils.resultSetToTableModel(data.SearchTextList(nam)))
;
}catch(Exception e){
JOptionPane.showMessageDialog(null,
e);
}
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold
defaultstate="collapsed" desc=" Look and feel setting code
(optional) ">
/* If Nimbus (introduced in Java SE 6)
is not available, stay with the default look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo
info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if
("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(barang.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(barang.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(barang.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch
(javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(barang.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>
//</editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new
Runnable() {
public void run() {
new barang().setVisible(true);
}
});
}
}
9. Buatlah jFrame Form dengan nama : petugas
Dengan Source code :
package
Form;
public
class petugas1 extends javax.swing.JFrame {
private Statement stat;
private Connection conek;
private ResultSet hasil;
private String sql="";
public String
kode_petugas,nama_petugas,user,password;
DefaultTableModel tabmode;
public static int statusSearching = 0;
public Connection conn;
public penjualanamin fAB = null;
//public login1 fAB = null;
public void koneksi() {
try {
Class.forName("com.mysql.jdbc.Driver");
conn =
DriverManager.getConnection("jdbc:mysql://localhost:3306/db_penjualan",
"root", "");
} catch (ClassNotFoundException |
SQLException e) {
JOptionPane.showMessageDialog(null,
"Koneksi Gagal");
System.out.println(e.getMessage());
}
}
public final void tampildata() {
DefaultTableModel tabelpetugas = new
DefaultTableModel();
tabelpetugas.addColumn("kode_petugas");
tabelpetugas.addColumn("nama_petugas");
tabelpetugas.addColumn("user");
tabelpetugas.addColumn("password");
try {
koneksi();
String sql = "select * from
t_petugas";
stat = conn.createStatement();
ResultSet rs =
stat.executeQuery(sql);
while (rs.next()) {
tabelpetugas.addRow(new
Object[]{
rs.getString(1),
rs.getString(2),
rs.getString(3),
rs.getString(4)
});
}
Tblpetugas.setModel(tabelpetugas);
} catch (Exception e) {
JOptionPane.showMessageDialog(null,
"Ada kesalahan" + e);
}
}
public petugas1() {
initComponents();
tampildata();
}
petugas1(Object object, boolean closable) {
throw new
UnsupportedOperationException("Not supported yet."); //To change body
of generated methods, choose Tools | Templates.
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed"
desc="Generated Code">
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jnama_petugas = new
javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
jScrollPane1 = new
javax.swing.JScrollPane();
Tblpetugas = new javax.swing.JTable();
jLabel1.setFont(new
java.awt.Font("Algerian", 1, 24)); // NOI18N
jLabel1.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/icon/PETUGAS1.png")));
// NOI18N
jLabel1.setText("PETUGAS");
jnama_petugas.setName(""); //
NOI18N
jnama_petugas.addKeyListener(new
java.awt.event.KeyAdapter() {
public void
keyPressed(java.awt.event.KeyEvent evt) {
jnama_petugasKeyPressed(evt);
}
public void
keyReleased(java.awt.event.KeyEvent evt) {
jnama_petugasKeyReleased(evt);
}
});
jLabel3.setText("NAMA
PETUGAS");
Tblpetugas.setModel(new
javax.swing.table.DefaultTableModel(
new Object [][] {
},
new String [] {
"Title",
"Title", "Title", "Title"
}
));
Tblpetugas.setRowSelectionAllowed(false);
Tblpetugas.addMouseListener(new
java.awt.event.MouseAdapter() {
public void
mouseClicked(java.awt.event.MouseEvent evt) {
TblpetugasMouseClicked(evt);
}
public void
mouseEntered(java.awt.event.MouseEvent evt) {
TblpetugasMouseEntered(evt);
}
});
jScrollPane1.setViewportView(Tblpetugas);
javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap(25,
Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 353,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel3)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel1)
.addComponent(jnama_petugas))))
.addGap(22, 22, 22))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(jnama_petugas, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 149,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(24,
Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void
TblpetugasMouseClicked(java.awt.event.MouseEvent evt) {
int tabelpetugas =
Tblpetugas.getSelectedRow();
fAB.kdptg = Tblpetugas.getValueAt(tabelpetugas,
0).toString();
fAB.itemTerpilih();
this.dispose();
}
private void
TblpetugasMouseEntered(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
}
private void
jnama_petugasKeyPressed(java.awt.event.KeyEvent evt) {
// TODO add your handling code
here:
}
private void
jnama_petugasKeyReleased(java.awt.event.KeyEvent evt) {
// TODO add your handling code here:
String nama = jnama_petugas.getText();
cls_input_data input = new
cls_input_data();
try{
Tblpetugas.setModel(DbUtils.resultSetToTableModel(input.SearchTextList(nama)))
;
}catch(Exception e){
JOptionPane.showMessageDialog(null,
e);
}
}
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold
defaultstate="collapsed" desc=" Look and feel setting code
(optional) ">
/* If Nimbus (introduced in Java SE 6)
is not available, stay with the default look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for
(javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if
("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(petugas1.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(petugas1.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(petugas1.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch
(javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(petugas1.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
java.awt.EventQueue.invokeLater(new
Runnable() {
public void run() {
new
petugas1().setVisible(true);
}
});
}
}
10. Buat
laporan dengan menggunaka ireport di pulgin pada netbeans
Dengan source code :
<?xml
version="1.0" encoding="UTF-8"?>
<jasperReport
xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports
http://jasperreports.sourceforge.net/xsd/jasperreport.xsd"
name="null" pageWidth="595" pageHeight="842"
columnWidth="535" leftMargin="20"
rightMargin="20" topMargin="20"
bottomMargin="20">
<queryString language="SQL">
<![CDATA[select *from t_jualdetail]]>
</queryString>
<field name="kode_petugas"
class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="no_transaksi"
class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="kode_barang"
class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="jual_harga"
class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="jumlah"
class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="subtotal" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="waktu"
class="java.sql.Timestamp">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="58"
splitType="Stretch">
<line>
<reportElement
x="0" y="8" width="555" height="1"/>
</line>
<line>
<reportElement
positionType="FixRelativeToBottom" x="0" y="51"
width="555" height="1"/>
</line>
<staticText>
<reportElement
x="65" y="13" width="424"
height="35"/>
<textElement
textAlignment="Center">
<font
size="26" isBold="true"/>
</textElement>
<text><![CDATA[LAPORAN
PENJUALAN]]></text>
</staticText>
</band>
</title>
<pageHeader>
<band splitType="Stretch"/>
</pageHeader>
<columnHeader>
<band height="18"
splitType="Stretch">
<staticText>
<reportElement
mode="Opaque" x="0" y="0" width="79"
height="18" forecolor="#FFFFFF"
backcolor="#999999"/>
<textElement>
<font
size="12"/>
</textElement>
<text><![CDATA[Kode
Petugas]]></text>
</staticText>
<staticText>
<reportElement
mode="Opaque" x="79" y="0" width="79"
height="18" forecolor="#FFFFFF"
backcolor="#999999"/>
<textElement>
<font
size="12"/>
</textElement>
<text><![CDATA[No
Transaksi]]></text>
</staticText>
<staticText>
<reportElement
mode="Opaque" x="158" y="0" width="79"
height="18" forecolor="#FFFFFF"
backcolor="#999999"/>
<textElement>
<font
size="12"/>
</textElement>
<text><![CDATA[Kode
Barang]]></text>
</staticText>
<staticText>
<reportElement
mode="Opaque" x="237" y="0" width="79"
height="18" forecolor="#FFFFFF"
backcolor="#999999"/>
<textElement>
<font
size="12"/>
</textElement>
<text><![CDATA[Harga]]></text>
</staticText>
<staticText>
<reportElement
mode="Opaque" x="316" y="0" width="79"
height="18" forecolor="#FFFFFF"
backcolor="#999999"/>
<textElement>
<font
size="12"/>
</textElement>
<text><![CDATA[jumlah]]></text>
</staticText>
<staticText>
<reportElement
mode="Opaque" x="395" y="0" width="79"
height="18" forecolor="#FFFFFF"
backcolor="#999999"/>
<textElement>
<font
size="12"/>
</textElement>
<text><![CDATA[Total
Harga]]></text>
</staticText>
<staticText>
<reportElement
mode="Opaque" x="474" y="0" width="79"
height="18" forecolor="#FFFFFF" backcolor="#999999"/>
<textElement>
<font
size="12"/>
</textElement>
<text><![CDATA[Waktu]]></text>
</staticText>
</band>
</columnHeader>
<detail>
<band height="21"
splitType="Stretch">
<textField>
<reportElement
x="0" y="0" width="79" height="20"/>
<textElement>
<font
size="12"/>
</textElement>
<textFieldExpression class="java.lang.String"><![CDATA[$F{kode_petugas}]]></textFieldExpression>
</textField>
<textField>
<reportElement
x="79" y="0" width="79"
height="20"/>
<textElement>
<font
size="12"/>
</textElement>
<textFieldExpression
class="java.lang.String"><![CDATA[$F{no_transaksi}]]></textFieldExpression>
</textField>
<textField>
<reportElement
x="158" y="0" width="79"
height="20"/>
<textElement>
<font
size="12"/>
</textElement>
<textFieldExpression
class="java.lang.String"><![CDATA[$F{kode_barang}]]></textFieldExpression>
</textField>
<textField>
<reportElement
x="237" y="0" width="79"
height="20"/>
<textElement>
<font
size="12"/>
</textElement>
<textFieldExpression
class="java.lang.String"><![CDATA[$F{jual_harga}]]></textFieldExpression>
</textField>
<textField>
<reportElement
x="316" y="0" width="79"
height="20"/>
<textElement>
<font
size="12"/>
</textElement>
<textFieldExpression class="java.lang.String"><![CDATA[$F{jumlah}]]></textFieldExpression>
</textField>
<textField>
<reportElement
x="395" y="0" width="79"
height="20"/>
<textElement>
<font
size="12"/>
</textElement>
<textFieldExpression
class="java.lang.String"><![CDATA[$F{subtotal}]]></textFieldExpression>
</textField>
<textField>
<reportElement
x="474" y="0" width="79"
height="20"/>
<textElement>
<font
size="12"/>
</textElement>
<textFieldExpression class="java.sql.Timestamp"><![CDATA[$F{waktu}]]></textFieldExpression>
</textField>
</band>
</detail>
<columnFooter>
<band splitType="Stretch"/>
</columnFooter>
<pageFooter>
<band height="25"
splitType="Stretch">
<textField evaluationTime="Report"
pattern="" isBlankWhenNull="false">
<reportElement
key="textField" x="516" y="6"
width="36" height="19" forecolor="#000000"
backcolor="#FFFFFF"/>
<box>
<topPen
lineWidth="0.0" lineStyle="Solid"
lineColor="#000000"/>
<leftPen
lineWidth="0.0" lineStyle="Solid"
lineColor="#000000"/>
<bottomPen
lineWidth="0.0" lineStyle="Solid"
lineColor="#000000"/>
<rightPen
lineWidth="0.0" lineStyle="Solid"
lineColor="#000000"/>
</box>
<textElement>
<font
size="10"/>
</textElement>
<textFieldExpression
class="java.lang.String"><![CDATA["" +
$V{PAGE_NUMBER}]]></textFieldExpression>
</textField>
<textField pattern=""
isBlankWhenNull="false">
<reportElement
key="textField" x="342" y="6"
width="170" height="19" forecolor="#000000"
backcolor="#FFFFFF"/>
<box>
<topPen
lineWidth="0.0" lineStyle="Solid"
lineColor="#000000"/>
<leftPen
lineWidth="0.0" lineStyle="Solid"
lineColor="#000000"/>
<bottomPen
lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
<rightPen
lineWidth="0.0" lineStyle="Solid"
lineColor="#000000"/>
</box>
<textElement
textAlignment="Right">
<font
size="10"/>
</textElement>
<textFieldExpression
class="java.lang.String"><![CDATA["Page " + $V{PAGE_NUMBER}
+ " of "]]></textFieldExpression>
</textField>
<textField pattern=""
isBlankWhenNull="false">
<reportElement
key="textField" x="1" y="6" width="209"
height="19" forecolor="#000000"
backcolor="#FFFFFF"/>
<box>
<topPen lineWidth="0.0"
lineStyle="Solid" lineColor="#000000"/>
<leftPen
lineWidth="0.0" lineStyle="Solid"
lineColor="#000000"/>
<bottomPen
lineWidth="0.0" lineStyle="Solid"
lineColor="#000000"/>
<rightPen
lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
</box>
<textElement>
<font
size="10"/>
</textElement>
<textFieldExpression
class="java.util.Date"><![CDATA[new
Date()]]></textFieldExpression>
</textField>
</band>
</pageFooter>
<summary>
<band splitType="Stretch"/>
</summary>
</jasperReport>
0 komentar:
Posting Komentar