B. Tujuan Penelitian
Tujuan yang ingin dicapai penulis berdasarkan rumusan masalah yang telah
diuraikan sebelumnya antara lain :
1. Membangun Aplikasi pemesanan makanan dan minuman pada restaurant
2. Memudahkan konsumen dalam pemesanan menu makanan dan minuman di
restaurant
C. Sistem perangkat yang digunakan
1. Java
Java adalah bahasa pemrograman yang multi platform dan multi device. Sekali anda
menuliskan sebuah program dengan menggunakan Java, anda dapat
menjalankannya hampir di semua komputer dan perangkat lain yang support Java,
dengan sedikit perubahan atau tanpa perubahan sama sekali dalam kodenya.
Aplikasi dengan berbasis Java ini dikompulasikan ke dalam p-code dan bisa
dijalankan dengan Java Virtual Machine. Fungsionalitas dari Java ini dapat berjalan
dengan platform sistem operasi yang berbeda karena sifatnya yang umum dan non-
spesifik.
2. Netbeans
Netbeans adalah sebuah aplikasi Integrated Development Environment
(IDE) yang berbasiskan Java dari Sun Microsystems yang berjalan di
atas swing. Swing merupakan sebuah teknologi Java untuk
pengembangan aplikasi dekstop yang dapat berjalan pada berbagai
macam platform seperti windows, linux, Mac OS X dan Solaris. Sebuah
IDE merupakan lingkup pemrograman yang di integrasikan ke dalam
suatu aplikasi perangkat lunak yang menyediakan Graphic User Interface
(GUI), suatu kode editor atau text, suatu compiler dan suatu debugger.
3. MySQL
MySQL adalah sebuah implementasi dari sistem manajemen basis data relasional
(RDBMS) yang didistribusikan secara gratis di bawah lisensi GPL (General Public
License). Setiap pengguna dapat secara bebas menggunakan MySQL, namun
dengan batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan yang
bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama
dalam basisdata yang telah ada sebelumnya; SQL (Structured Query Language).
SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk pemilihan atau
seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan
dengan mudah secara otomatis
4. PHPMyAdmin
phpMyAdmin adalah perangkat lunak bebas yang ditulis dalam bahasa
pemrograman PHP yang digunakan untuk menangani
administrasi MySQL melalui website Jejaring Jagat Jembar (World Wide Web) .
phpMyAdmin mendukung berbagai operasi MySQL,
diantaranya (mengelola basis data, tabel-tabel, bidang (fields), relasi (relations),
indeks, pengguna (users), perizinan (permissions), dan lain-lain).
3. Tampilan database.
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;
}
}
//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);
}
TableModel tblmodel;
tblmodel = TblDetail.getModel();
for (int i=0; i<jumlahBaris; i++){
Jlhtotalpinjam=Integer.parseInt(tblmodel.getValueAt(i, 3).toString());
jlhpinjam=Jlhtotalpinjam+jlhpinjam;
}
}
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");
}
}
auto_key();
loadData();
}
public void TambahDetail(){
Date HariSekarang = new Date( );
SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");
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);
}
});
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(46, 46, 46)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRA
ILING)
.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.TRA
ILING, false)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRA
ILING)
.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.LEA
DING)
.addComponent(jLabel1)
.addComponent(jLabel2)
.addComponent(jLabel10))
.addGap(27, 27, 27)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING, 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.LEA
DING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
.addComponent(jLabel5)
.addComponent(jLabel4))
.addGap(22, 22, 22)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING, false)
.addComponent(TxtHJual,
javax.swing.GroupLayout.DEFAULT_SIZE, 173, Short.MAX_VALUE)
.addComponent(TxtJumlah)))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
.addComponent(jLabel11)
.addComponent(jLabel3)
.addComponent(jLabel12))
.addGap(32, 32, 32)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
.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.LEA
DING)
.addComponent(jLabel6)
.addComponent(jLabel7)
.addComponent(jLabel8))
.addGap(26, 26, 26)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING, 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.LEA
DING)
.addGroup(layout.createSequentialGroup()
.addGap(64, 64, 64)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BAS
ELINE)
.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.LEA
DING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRA
ILING)
.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.BAS
ELINE)
.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.TRA
ILING)
.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.LEA
DING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BAS
ELINE)
.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.BAS
ELINE)
.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.BAS
ELINE)
.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.BAS
ELINE)
.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.BAS
ELINE)
.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.LEA
DING)
.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.BAS
ELINE)
.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.BAS
ELINE)
.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.LEA
DING)
.addGroup(layout.createSequentialGroup()
.addGap(12, 12, 12)
.addComponent(laporan))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BAS
ELINE)
.addComponent(BtnSimpan)
.addComponent(BtnBatal)
.addComponent(btnkeluar)))
.addContainerGap())
);
pack();
}// </editor-fold>
//new petugas1().setVisible(true);
/**
* @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.l
ogging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(penjualanamin.class.getName()).log(java.util.l
ogging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(penjualanamin.class.getName()).log(java.util.l
ogging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(penjualanamin.class.getName()).log(java.util.l
ogging.Level.SEVERE, null, ex);
}
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
//</editor-fold>
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;
}
}
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");
public barang() {
initComponents();
tampildata();
tampildatabase();
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
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);
}
});
jLabel4.setText("CARI");
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(26, 26, 26)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING, 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.TRA
ILING)
.addComponent(jLabel2)
.addComponent(jLabel3)
.addComponent(jLabel5,
javax.swing.GroupLayout.Alignment.LEADING))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
.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.BAS
ELINE)
.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.BAS
ELINE)
.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.BAS
ELINE)
.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.BAS
ELINE)
.addComponent(BtnBatal)
.addComponent(BtnHapus)
.addComponent(BtnEdit)
.addComponent(BtnSimpan))
.addContainerGap(25, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
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();
}
barang_id = jbarang_id.getText();
int A = evt.getKeyCode();
if (A==10){
try {
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();
}
}
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>
}
}
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();
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.LEA
DING, 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.LEA
DING)
.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.BAS
ELINE)
.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>
Tblpetugas.setModel(DbUtils.resultSetToTableModel(input.SearchTextList(nama
))) ;
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
java.util.logging.Logger.getLogger(petugas1.class.getName()).log(java.util.loggin
g.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(petugas1.class.getName()).log(java.util.loggin
g.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(petugas1.class.getName()).log(java.util.loggin
g.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(petugas1.class.getName()).log(java.util.loggin
g.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>
BAB 2
PENUTUP
A. KESIMPULAN
Demikian laporan saya buat,dalam memenuhi tugas pemograman berbasis object
pembuatan aplikasi kasir dari ibu guru selama kami PKL 3 bulan,semoga apa yang saya
kerjakan sesuai prosedur yang ada. Semoga apa yang telah saya paparkan di atas dapat
dipahami untuk semua. Baik bagi bapak ibu guru dan teman-teman sekalian. Mungkin itu
saja yang dapat saya sampaikan. Terimakasih.
B. KESAN
Kesan kami dalam mengerjakan tugas program kasir ini,membuat logika kita
berjalan,karena dalam pembuatan program kasir kita membutuhkan logika yang
baik,supaya alur programnya dapat berjalan dengan baik dan mudah di pahami. Dan di sisi
lain adanya tugas yang ibu berikan kepada kami membuat kami di haruskan memahami
bagaimana cara membuat program aplikasi kasir menggunakan netbeans dengan
menggabungkan database yang ada.