Anda di halaman 1dari 77

PROGRAM APLIKASI

PEMBELIAN
BARANG
( Java Netbeans &
phpMyAdmin )
KangMaman
Adalah seorang mahasiswa lulusan Universitas Bina Sarana
Informatika Karawang 2015 Program Studi Manajemen
Informatika. Dengan melakoni dunia program (khususnya
Desktop) maka Ebook tutorial ini dibuat. Salah satu tujuan
dari penyusunan tutorial ini adalah agar dunia Programing
bisa lebih dikenal dan diminati oleh siapa saja, Ini adalah
Blog : bagian dari Projek latihan selama kuliah, jadi masih ada yang
mamanmulyadi.blogspot.com perlu dikembangkan lebih lanjut. Semoga Bermanfaat.

Email :
mmulyadi751@gmail.com

9/16/2015
Salam Sukses.

Berikut adalah Tutorial mengenai cara membuat Program Aplikasi Pembelian Barang
dengan menggunakan Java Netbeans dan phpMyAdmin.

A). APLIKASI YANG DIPERLUKAN:


 OS Window 7.
 Java Netbeans IDE 7.1
 XAMPP Control Panel v3.2.1
 iReport 3.5.2.

B). MEMBUAT DATABASE PADA PHPMYADMIN (XAMPP.).


Database dibuat dengan nama : db_tugas_java. Berikut adalah tabel-tabel yang telah dibuat :

a. Tabel : user
Field Type Length keterangan
No Varchar 5 Primary key
Username Varchar 20
Password Varchar 20

b. Tabel : admin
Field Type Length keterangan
No Varchar 5 Primary key
Username Varchar 20
Password Varchar 20

c. Tabel : barang
Field Type Length keterangan
Kode_barang Varchar 9 Primary key
Nama_barang Varchar 50
Harga_beli int
Harga_jual int
quantity int

d. Tabel : karyawan
Field Type Length keterangan
Nik Varchar 9 Primary key
Nama Varchar 50
Alamat Varchar 50
jk Varchar 10
1
e. Tabel : Pelanggan
Field Type Length keterangan
Kode_Pel Varchar 9 Primary key
Nama_Pel Varchar 50
Alt_Pel Varchar 50
Telp_Pel Varchar 15

f. Tabel : trans_jual
Field Type Length keterangan
No_Faktur Varchar 9 Foreign key
Qty_Jual Varchar 50
Kode_Barang Varchar 50 Foreign Key

g. Tabel : rincian
Field Type Length keterangan
No_faktur Varchar 9 Foreign key
Qty_jual Varchar 50
Kode_barang Varchar 50 Foreign key
Nama_barang Varchar 10
Harga_jual int 11
jumlah bigint 20

“Atau bisa anda download database nya di “Disini” kemudian tinggal di


import ke phpMyadmin.” Lihat di Blog

C). MEMBUAT JAVA PROJECT.


Jalankan Netbeans-nya, Pilih Menu “File > New Project”. Perhatikan Gambar Berikut :

2
Sehingga Tampilan Projeknya seperti ini :

>> Buat juga dengan nama java package “uts_uas.laporan”.

>> Tambahkan MySQL JDBC Driver Pada Libraries Projek, (Lihat gambar dibawah ini !)

3
>> Tambahkan juga File .jar Pada Libraries Projek, (Lihat gambar dibawah ini !)

4
D). MEMBUAT JAVA CLASS.
1. Buat Kelas dengan nama “Koneksi”,

5
Dan Masukkan Coding dibawah ini ..

package uts_uas;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

/**
*
* @author Syauqil
*/
public class Koneksi {

Connection connection;
String url = "jdbc:mysql://localhost:3306/db_tugas_java";
String user = "root";
String pass = "";
private Statement statement;

public Connection getConnection(){


try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
connection = DriverManager.getConnection(url, user, pass);
} catch (Exception e) {
}
return connection;
}

public ResultSet exQuer(String sql){


ResultSet rs = null;
try {
statement = connection.createStatement();
rs = statement.executeQuery(sql);
} catch (Exception ex) {
ex.printStackTrace();
}
return rs;
}

public int row(ResultSet rs){


int jumlah = 0;
try {
while (rs.next()) {
jumlah +=1;

6
}
} catch (Exception ex) {

}
return jumlah;
}

public final void tampilTabel(JTable table, String[]kepala, String sql){


ResultSet rs = exQuer(sql);
int jumlahRow = row(exQuer(sql));
int baris = 0;
table.setModel(new DefaultTableModel(kepala, jumlahRow));
try {
while (rs.next()) {
for(int i = 0; i<kepala.length; i++){
table.setValueAt(rs.getString(i+1), baris, i);
}
baris++;
}
} catch (Exception ex) {
ex.printStackTrace();
}
}

2. Buat Kelas dengan nama “UTS_UAS”, Dan Masukkan Coding dibawah ini ..

package uts_uas;

/**
*
* @author KangMaman
*/
public class UTS_UAS {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
new form_menu_utama().setVisible(true);
// TODO code application logic here
}
}

7
E). RANCANGAN FORM.
>> Cara membuat Form Baru , ( Perhatikan gambar dibawah ini. ).

8
>> Cara Mengganti Nama Variabel .

1. Form Data Barang


Buat Form baru dengan nama “form_barang”. Beri nama variable sesuai gambar dibawah ini.

9
>> Coding

package uts_uas;

import java.awt.event.KeyEvent;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

public class form_barang extends javax.swing.JFrame {


Connection cn=null;
ResultSet rsbrg=null;
DefaultTableModel tabModel;

public form_barang() {
initComponents();
setLocationRelativeTo(this);
koneksi();
tampilData();
nonaktif();
buatnomor();
}

public void buatnomor(){


try{
Statement st = cn.createStatement();
ResultSet rs = st.executeQuery("SELECT kode_barang FROM barang ORDER
BY kode_barang DESC");

if (rs.next()) {
String kd_brg = rs.getString("kode_barang").substring(1);
String AN = "" + (Integer.parseInt(kd_brg) + 1);
String Nol = "";

if(AN.length()==1)
{Nol = "00";}
else if(AN.length()==2)
{Nol = "0";}
else if(AN.length()==3)
{Nol = "";}
tkode.setText("B" + Nol + AN);//sesuaikan dengan variable namenya
} else {
tkode.setText("B001");//sesuaikan dengan variable namenya

10
}
rs.close();
}catch (Exception e){

}
}

void bersih(){
tkode.setText("");
tnama.setText("");
cmbjenis.setSelectedItem("pilih");
thargabeli.setText(null);
thargajual.setText("");
tstok.setText("");

void nonaktif(){
bsimpan.setEnabled(false);
bhapus1.setEnabled(false);
bupdate1.setEnabled(false);
tkode.setEnabled(false);
tnama.setEnabled(false);
cmbjenis.setEnabled(false);
thargabeli.setEnabled(false);
thargajual.setEnabled(false);
tstok.setEnabled(false);
}

void aktif(){

tkode.setEnabled(true);
tnama.setEnabled(true);
cmbjenis.setEnabled(true);
thargabeli.setEnabled(true);
thargajual.setEnabled(true);
tstok.setEnabled(true);
}

void koneksi(){
try{
//aktif driver
Class.forName("com.mysql.jdbc.Driver");

cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/db_tugas_java","root","");
Object[] judul_kolom={"Kode","Nama Barang","Jenis","Harga Jual","Harga
Beli","Stok"};
tabModel=new DefaultTableModel(null,judul_kolom);
11
jtabelbarang.setModel(tabModel);
tampilData();
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}

void tampilData(){
try{
Statement stm; //membuat statemen stm
stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from barang");//mengambil data barang
while (rsbrg.next()){
Object[] data={rsbrg.getString("kode_barang"),
rsbrg.getString("nama_barang"),
rsbrg.getString("jenis"),
rsbrg.getString("harga_beli"),
rsbrg.getString("harga_jual"),
rsbrg.getString("stok")
};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “bsimpan” > Events > Action >


actionPerformed[bsimpanActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("insert into barang set kode_barang='"+tkode.getText()+"',"+
"nama_barang='"+tnama.getText()+"',"+
"jenis='"+cmbjenis.getSelectedItem()+"',"+
"harga_beli='"+thargabeli.getText()+"',"+
"harga_jual='"+thargajual.getText()+"',"+
"stok='"+tstok.getText()+"'");

tampilData();
bersih();
bsimpan.setEnabled(false);

12
btambah.setEnabled(true);
btambah.requestFocus();
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Disimpan");
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “btambah” > Events > Action > actionPerformed[bstambahActionPerformed]

private void btambahActionPerformed(java.awt.event.ActionEvent evt)


{
bersih();
aktif();
buatnomor();
tkode.setEnabled(false);
btambah.setEnabled(false);
tnama.requestFocus(); }

// Klik kanan pada “bupdate1” > Events > Action > actionPerformed[bupdate1ActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("update barang set kode_barang='"+tkode.getText()+"',"+
"nama_barang='"+tnama.getText()+"',"+
"jenis='"+cmbjenis.getSelectedItem()+"',"+
"harga_beli='"+thargabeli.getText()+"',"+
"harga_jual='"+thargajual.getText()+"',"+
"stok='"+tstok.getText()+"'where kode_barang='"+

tabModel.getValueAt(jtabelbarang.getSelectedRow(),0)+"'");
tampilData();
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Diperbaharui.");
bersih();
}catch(Exception e){
e.printStackTrace();
} }

// Klik kanan pada “bexit” > Events > Action >


actionPerformed[bexitActionPerformed]

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


this.dispose();
}

13
// Klik kanan pada “bhapus1” > Events > Action >
actionPerformed[bhapus1ActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("delete from barang where kode_barang='"+
tabModel.getValueAt(jtabelbarang.getSelectedRow(),0)+"'");
tampilData();
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Dihapus");
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “bhapus1” > Events > Mouse > MouseClicked
[jtabelbarangMouseClicked]

private void jtabelbarangMouseClicked(java.awt.event.MouseEvent evt)


{
tkode.setText(tabModel.getValueAt(jtabelbarang.getSelectedRow(),0)+"");
tnama.setText(tabModel.getValueAt(jtabelbarang.getSelectedRow(),1)+"");
cmbjenis.setSelectedItem(tabModel.getValueAt(jtabelbarang.getSelectedRow(),2)+"");
thargabeli.setText(tabModel.getValueAt(jtabelbarang.getSelectedRow(),3)+"");
thargajual.setText(tabModel.getValueAt(jtabelbarang.getSelectedRow(),4)+"");
tstok.setText(tabModel.getValueAt(jtabelbarang.getSelectedRow(),5)+"");
bsimpan.setEnabled(false);
bupdate1.setEnabled(true);
bhapus1.setEnabled(true);
}

// Klik kanan pada “bcari” > Events > Action >


actionPerformed[bcariActionPerformed]

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


try{
Statement stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from barang where nama_barang like
'%"+tcari.getText()+"%'");
while (rsbrg.next()){

14
Object[] data={rsbrg.getString("kode_barang"),
rsbrg.getString("nama_barang"),
rsbrg.getString("jenis"),
rsbrg.getString("harga_beli"),
rsbrg.getString("harga_jual"),
rsbrg.getString("stok")
};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
}
}
// Klik kanan pada “tcari” > Events > Key > KeyPressed [tcariKeyPressed]

private void tcariKeyPressed(java.awt.event.KeyEvent evt) {


if(evt.getKeyCode() == KeyEvent.VK_ENTER){
try{
Statement stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from barang where nama_barang like
'%"+tcari.getText()+"%'");
while (rsbrg.next()){
Object[] data={rsbrg.getString("kode_barang"),
rsbrg.getString("nama_barang"),
rsbrg.getString("jenis"),
rsbrg.getString("harga_beli"),
rsbrg.getString("harga_jual"),
rsbrg.getString("stok")
};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
} } }

// Klik kanan pada “brefresh” > Events > Action >


actionPerformed[brefreshActionPerformed]

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


tampilData(); // TODO add your handling code here:
}

15
Klik Kanan pada “cmbjenis” > Properties

// Klik kanan pada “cmbjenis” > Events > Action >


actionPerformed[cmbjenisActionPerformed]

private void cmbjenisActionPerformed(java.awt.event.ActionEvent evt)


{
bsimpan.setEnabled(true); }

public static void main(String args[]) {

Look and feel setting code (optional)


/*
java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {


new form_barang().setVisible(true);
}
});

}
16
2. Form Data Admin.
Buat Form baru dengan nama “form_admin”. Beri nama variable sesuai gambar dibawah ini.

>> Coding.
package uts_uas;
import java.awt.Frame;
import java.awt.event.KeyEvent;
import java.sql.*;
import javax.swing.*;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

/**
*
* @author KangMaman
*/
public class form_admin extends javax.swing.JFrame {
Connection cn=null;
ResultSet rsbarang=null;
DefaultTableModel tabModel;

/**
17
* Creates new form form_admin
*/
public form_admin() {
initComponents();
koneksi();
tampiladmin();
setLocationRelativeTo(this);
}

void koneksi(){
try{
//aktif driver
Class.forName("com.mysql.jdbc.Driver");
//konek database
cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/db_tugas_java","root","");
Object[] judul_kolom = {"ID","Nama","password"};
tabModel=new DefaultTableModel(null,judul_kolom);
tabel_admin.setModel(tabModel);
// tampilData();
}
catch(ClassNotFoundException e){
e.printStackTrace();
}
catch(Exception e){
e.printStackTrace();
}
}

void tampiladmin(){
try{
Statement stm; //buat stm
stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbarang=stm.executeQuery("select * from admin");//mengambil data barang
while(rsbarang.next()){
Object[] data={rsbarang.getString("ID"),
rsbarang.getString("username"),
rsbarang.getString("password")
};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
} }

18
// Klik kanan pada “tabel_admin” > Events > Mouser > MouseClicked
[tabel_adminMouseClicked]

private void tabel_adminMouseClicked(java.awt.event.MouseEvent evt) {


lno.setText(tabModel.getValueAt(tabel_admin.getSelectedRow(), 0) + "");
lu.setText(tabModel.getValueAt(tabel_admin.getSelectedRow(), 1) + "");
tp.setText(tabModel.getValueAt(tabel_admin.getSelectedRow(), 2) + "");
tp.requestFocus();
}

// Klik kanan pada “tp” > Events > Key> KeyPressed [tpKeyPressed]

private void tpKeyPressed(java.awt.event.KeyEvent evt) {


if(evt.getKeyCode() == KeyEvent.VK_ENTER){
try {
Statement stm = cn.createStatement();
stm.executeUpdate("update admin set ID='" + lno.getText() + "',"
+ "username='" + lu.getText() + "',"
+ "password='" + tp.getText() + "'where ID='"
+ tabModel.getValueAt(tabel_admin.getSelectedRow(), 0) + "'");
tampiladmin();

JOptionPane.showMessageDialog(null, "Data Berhasil DiPerbaharui...");


} catch (Exception e) {
e.printStackTrace();
} } }

// Klik kanan pada “bupdate” > Events > Action > ActionPerformed [bupdateActionPerformed]

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


try {
Statement stm = cn.createStatement();
stm.executeUpdate("update admin set ID='" + lno.getText() + "',"
+ "username='" + lu.getText() + "',"
+ "password='" + tp.getText() + "'where ID='"
+ tabModel.getValueAt(tabel_admin.getSelectedRow(), 0) + "'");
tampiladmin();

JOptionPane.showMessageDialog(null, "Data Berhasil DiPerbaharui...");


} catch (Exception e) {
e.printStackTrace(); } }

// Klik kanan pada “bkeluar” > Events > Action > ActionPerformed [bkeluarActionPerformed]

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


this.dispose(); }

19
public static void main(String args[]) {
/*
* Set the Nimbus look and feel
*/
java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {


new form_admin().setVisible(true);
} });
}

3. Form Data User.


Buat Form baru dengan nama “form_user”. Beri nama variable sesuai gambar dibawah ini.

20
>> Coding.

package uts_uas;

import java.awt.event.KeyEvent;
import java.beans.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

/**
*
* @author KangMaman
*/
public class form_user extends javax.swing.JFrame {
Connection cn=null;
ResultSet rsbarang=null;
DefaultTableModel tabModel;
/**
* Creates new form form_user
*/
public form_user() {
initComponents();
koneksi();
tampiluser();
setLocationRelativeTo(this);
bhapus.setEnabled(false);
bganti.setEnabled(false);
bersih();
}
void bersih(){
tno.setText("");
tu.setText("");
tp.setText("");
}

void koneksi(){
try{
//aktif driver
Class.forName("com.mysql.jdbc.Driver");
//konek database
cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/db_tugas_java","root","");
Object[] judul_kolom = {"ID","Nama","password"};
21
tabModel=new DefaultTableModel(null,judul_kolom);
tabel_user.setModel(tabModel);
// tampilData();
}
catch(ClassNotFoundException e){
e.printStackTrace();
}
catch(Exception e){
JOptionPane.showMessageDialog(rootPane, "Perangkat Database Belum Tersambung ,
Periksa Kembali.");
e.printStackTrace();
}
}

void tampiluser(){
try{
java.sql.Statement stm; //buat stm
stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbarang=stm.executeQuery("select * from user");//mengambil data barang
while(rsbarang.next()){
Object[] data={rsbarang.getString("ID"),
rsbarang.getString("username"),
rsbarang.getString("password")
};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();

}
}

// Klik kanan pada “tabel_user” > Events > Mouser > MouseClicked [tabel_userMouseClicked]

private void tabel_userMouseClicked(java.awt.event.MouseEvent evt) {


tno.setText(tabModel.getValueAt(tabel_user.getSelectedRow(), 0) + "");
tu.setText(tabModel.getValueAt(tabel_user.getSelectedRow(), 1) + "");
tp.setText(tabModel.getValueAt(tabel_user.getSelectedRow(), 2) + "");
bhapus.setEnabled(true);
bganti.setEnabled(true);
tp.requestFocus();

22
// Klik kanan pada “tp” > Events > Key> KeyPressed [tpKeyPressed]

private void tpKeyPressed(java.awt.event.KeyEvent evt) {


if(evt.getKeyCode() == KeyEvent.VK_ENTER){
try {
java.sql.Statement stm = cn.createStatement();
stm.executeUpdate("update user set ID='" + tno.getText() + "',"
+ "username='" + tu.getText() + "',"
+ "password='" + tp.getText() + "'where no='"
+ tabModel.getValueAt(tabel_user.getSelectedRow(), 0) + "'");
tampiluser();

JOptionPane.showMessageDialog(null, "Data Berhasil DiPerbaharui...");


} catch (Exception e) {
e.printStackTrace();
} } }

// Klik kanan pada “bhapus” > Events > Action > actionPerformed[bhapusActionPerformed]

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


try{
java.sql.Statement stm=cn.createStatement();
stm.executeUpdate("delete from user where ID='"+
tabModel.getValueAt(tabel_user.getSelectedRow(),0)+"'");
tampiluser();
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Dihapus");
bhapus.setEnabled(false);
bersih();
}catch(Exception e){
e.printStackTrace();
} }

// Klik kanan pada “bganti” > Events > Action > actionPerformed[bgantiActionPerformed]

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


try {
java.sql.Statement stm = cn.createStatement();
stm.executeUpdate("update user set ID='" + tno.getText() + "',"
+ "username='" + tu.getText() + "',"
+ "password='" + tp.getText() + "'where ID='"
+ tabModel.getValueAt(tabel_user.getSelectedRow(), 0) + "'");
tampiluser();
bersih();
bganti.setEnabled(false);
JOptionPane.showMessageDialog(null, "Data Berhasil DiPerbaharui...");
23
} catch (Exception e) {
e.printStackTrace();
} }

// Klik kanan pada “bkeluar” > Events > Action > actionPerformed[bkeluarActionPerformed]

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


this.dispose();
}

public static void main(String args[]) {


java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {


new form_user().setVisible(true);
} }); }

4. Form Data Kasir.


Buat Form baru dengan nama “form_kasir”. Beri nama variable sesuai gambar dibawah ini.

24
Klik Kanan pada “cmbjk” > Properties

>> Coding.
package uts_uas;

import java.awt.event.KeyEvent;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

/**
*
* @author KangMaman
*/
public class form_kasir extends javax.swing.JFrame {
Connection cn=null;
ResultSet rsbrg=null;
DefaultTableModel tabModel;
/**
* Creates new form form_karyawan
*/
public form_kasir() {
25
initComponents();
setLocationRelativeTo(this);
koneksi();
tampilData();
nonaktif();
buatnomor();
}

void koneksi(){
try{
//aktif driver
Class.forName("com.mysql.jdbc.Driver");
cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/db_tugas_java","root","");
Object[] judul_kolom={"Nik","Nama","alamat","jk","No.Telpon"};
tabModel=new DefaultTableModel(null,judul_kolom);
jTableKaryawan.setModel(tabModel);
tampilData();
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}

public void buatnomor(){


try{
Statement st = cn.createStatement();
ResultSet rs = st.executeQuery("SELECT nik FROM kasir ORDER BY nik DESC");

if (rs.next()) {
String nik = rs.getString("nik").substring(1);
String AN = "" + (Integer.parseInt(nik) + 1);
String Nol = "";

if(AN.length()==1)
{Nol = "00";}
else if(AN.length()==2)
{Nol = "0";}
else if(AN.length()==3)
{Nol = "";}
tnik.setText("K" + Nol + AN);//sesuaikan dengan variable namenya
} else {
tnik.setText("K001");//sesuaikan dengan variable namenya
}
rs.close();
}catch (Exception e){
26
}
}

void bersih(){
tnik.setText("");
tnama.setText("");
cmbjk.setSelectedItem("pilih");
talamat.setText("");
ttelp.setText("");

void nonaktif(){
bsimpan.setEnabled(false);
bhapus.setEnabled(false);
bupdate.setEnabled(false);
tnik.setEnabled(false);
tnama.setEnabled(false);
cmbjk.setEnabled(false);
talamat.setEnabled(false);
ttelp.setEnabled(false);

void aktif(){

tnik.setEnabled(true);
tnama.setEnabled(true);
cmbjk.setEnabled(true);
talamat.setEnabled(true );
ttelp.setEnabled(true);
}

void tampilData(){
try{
Statement stm; //membuat statemen stm
stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from kasir");//mengambil data
while (rsbrg.next()){
Object[] data={rsbrg.getString("nik"),
rsbrg.getString("nama"),
rsbrg.getString("alamat"),
rsbrg.getString("jk"),
rsbrg.getString("telp")

};
27
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “tcari” > Events > Key > KeyPressed [tcariKeyPressed]

private void tcariKeyPressed(java.awt.event.KeyEvent evt) {


if(evt.getKeyCode() == KeyEvent.VK_ENTER){
try{
Statement stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from kasir where nama like '%"+tcari.getText()+"%'");
while (rsbrg.next()){
Object[] data={rsbrg.getString("nik"),
rsbrg.getString("nama"),
rsbrg.getString("alamat"),
rsbrg.getString("jk"),
rsbrg.getString("telp")
};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
} // TODO add your handling code here:
}
}

// Klik kanan pada “bcari” > Events > Action > ActionPerformed [bcariActionPerformed]

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


try{
Statement stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from kasir where nama like '%"+tcari.getText()+"%'");
while (rsbrg.next()){
Object[] data={rsbrg.getString("nik"),
rsbrg.getString("nama"),
rsbrg.getString("alamat"),
rsbrg.getString("jk"),
rsbrg.getString("telp")
};
tabModel.addRow(data);
}

28
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “brefresh” > Events > Action > ActionPerformed [brefreshActionPerformed]

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


tampilData();

// Klik kanan pada “btambah” > Events > Action > ActionPerformed
[btambahActionPerformed]

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


bersih();
aktif();
buatnomor();
tnik.setEnabled(false);
btambah.setEnabled(false);
tnama.requestFocus();
}

// Klik kanan pada “bsimpan” > Events > Action > ActionPerformed [bsimpanActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("insert into kasir set nik='"+tnik.getText()+"',"+
"nama='"+tnama.getText()+"',"+
"jk='"+cmbjk.getSelectedItem()+"',"+
"telp='"+ttelp.getText()+"',"+
"alamat='"+talamat.getText()+"'");

tampilData();
bsimpan.setEnabled(false);
btambah.setEnabled(true);
btambah.requestFocus();
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Disimpan");
}catch(Exception e){
e.printStackTrace();
}
}

29
// Klik kanan pada “bhapus” > Events > Action > ActionPerformed [bhapusActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("delete from kasir where nik='"+
tabModel.getValueAt(jTableKaryawan.getSelectedRow(),0)+"'");
tampilData();
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Dihapus");
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “bupdate” > Events > Action > ActionPerformed [bupdateActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("update kasir set nik='"+tnik.getText()+"',"+
"nama='"+tnama.getText()+"',"+
"jk='"+cmbjk.getSelectedItem()+"',"+
"telp='"+ttelp.getText()+"',"+
"alamat='"+talamat.getText()+"'where nik='"+

tabModel.getValueAt(jTableKaryawan.getSelectedRow(),0)+"'");
tampilData();
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Diperbaharui.");
bersih();
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “bmenuutama” > Events > Action > ActionPerformed
[bmenuutamaActionPerformed]

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


this.dispose();
}

30
// Klik kanan pada “cmbjk” > Events > Action > ActionPerformed [cmbjkActionPerformed]

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


bsimpan.setEnabled(true);
cmbjk.requestFocus(); }

// Klik kanan pada “Tablekasir” > Events > Mouse> MouseClicked


[TablekasirMouseClicked]

private void jTablekasirMouseClicked(java.awt.event.MouseEvent evt) {


tnik.setText(tabModel.getValueAt(jTablekasir.getSelectedRow(),0)+"");
tnama.setText(tabModel.getValueAt(jTablekasir.getSelectedRow(),1)+"");
cmbjk.setSelectedItem(tabModel.getValueAt(jTablekasir.getSelectedRow(),3)+"");
talamat.setText(tabModel.getValueAt(jTablekasir.getSelectedRow(),2)+"");
ttelp.setText(tabModel.getValueAt(jTablekasir.getSelectedRow(),4)+"");
bsimpan.setEnabled(false);
bupdate.setEnabled(true);
bhapus.setEnabled(true); }

5. Form Data Member.


Buat Form baru dengan nama “form_member”. Beri nama variable sesuai gambar dibawah ini.

31
>> Coding
package uts_uas;

import java.awt.event.KeyEvent;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

/**
*
* @author KangMaman
*/
public class form_member extends javax.swing.JFrame {
Connection cn=null;
ResultSet rsbrg=null;
DefaultTableModel tabModel;
/**
* Creates new form form_karyawan
*/
public form_member() {
initComponents();
setLocationRelativeTo(this);
koneksi();
tampilData();
nonaktif();
buatnomor();
}

void koneksi(){
try{
//aktif driver
Class.forName("com.mysql.jdbc.Driver");
cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/db_tugas_java","root","");
Object[] judul_kolom={"Kode","Nama","Alamat","No.Telpon"};
tabModel=new DefaultTableModel(null,judul_kolom);
jTablemember.setModel(tabModel);
tampilData();
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}

32
public void buatnomor(){
try{
Statement st = cn.createStatement();
ResultSet rs = st.executeQuery("SELECT kode FROM member ORDER BY kode DESC");

if (rs.next()) {
String kd_member = rs.getString("kode").substring(1);
String AN = "" + (Integer.parseInt(kd_member) + 1);
String Nol = "";

if(AN.length()==1)
{Nol = "00";}
else if(AN.length()==2)
{Nol = "0";}
else if(AN.length()==3)
{Nol = "";}
tkodemember.setText("M" + Nol + AN);//sesuaikan dengan variable namenya
} else {
tkodemember.setText("M001");//sesuaikan dengan variable namenya
}
rs.close();
}catch (Exception e){

}
}

void bersih(){
tkodemember.setText("");
tnama.setText("");
talamat.setText("");
ttelp.setText("");

void aktif(){
tcari.setEnabled(true );
bcari.setEnabled(true);
brefresh.setEnabled(true);
tkodemember.setEnabled(true);
tnama.setEnabled(true);
talamat.setEnabled(true );
ttelp.setEnabled(true);
}

void nonaktif(){
tcari.setEnabled(false);
bcari.setEnabled(false);
brefresh.setEnabled(false);
33
tkodemember.setEnabled(false);
tnama.setEnabled(false);
talamat.setEnabled(false);
ttelp.setEnabled(false);
bsimpan.setEnabled(false);
bhapus.setEnabled(false);
bupdate.setEnabled(false);
}

void tampilData(){
try{
Statement stm; //membuat statemen stm
stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from member");//mengambil data
while (rsbrg.next()){
Object[] data={rsbrg.getString("Kode"),
rsbrg.getString("Nama"),
rsbrg.getString("Alamat"),
rsbrg.getString("Telpon")
};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “tcari” > Events >Key > KeyPressed [tcariKeyPressed]

private void tcariKeyPressed(java.awt.event.KeyEvent evt) {


if(evt.getKeyCode() == KeyEvent.VK_ENTER){
try{
Statement stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from member where Nama like '%"+tcari.getText()+"%'");
while (rsbrg.next()){
Object[] data={rsbrg.getString("Kode"),
rsbrg.getString("Nama"),
rsbrg.getString("Alamat"),
rsbrg.getString("Telpon")
};
tabModel.addRow(data); }
}catch(Exception e){
e.printStackTrace();
} }
}

34
// Klik kanan pada “bcari” > Events >Action> ActionPerformed [bcariActionPerformed]

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


try{
Statement stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from member where nama like '%"+tcari.getText()+"%'");
while (rsbrg.next()){
Object[] data={rsbrg.getString("Kode"),
rsbrg.getString("Nama"),
rsbrg.getString("Alamat"),
rsbrg.getString("Telpon")
};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “brefresh” > Events >Action> ActionPerformed [brefreshActionPerformed]

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


tampilData();

// Klik kanan pada “btambah” > Events >Action> ActionPerformed [btambahActionPerformed]

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


bersih();
aktif();
buatnomor();
tkodemember.setEnabled(false);
btambah.setEnabled(false);
bsimpan.setEnabled(true);
tnama.requestFocus();
}

// Klik kanan pada “bsimpan” > Events >Action> ActionPerformed [bsimpanActionPerformed]

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


try {

35
Statement stm = cn.createStatement();
stm.executeUpdate("insert into member set Kode='" + tkodemember.getText() + "',"
+ "Nama='" + tnama.getText() + "',"
+ "Alamat='" + talamat.getText() + "',"
+ "Telpon='" + ttelp.getText() + "'");

tampilData();
bersih();
bsimpan.setEnabled(false);
btambah.setEnabled(true);
btambah.requestFocus();
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Disimpan");
} catch (Exception e) {
e.printStackTrace();

}
}

// Klik kanan pada “bhapus” > Events >Action> ActionPerformed [bhapusActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("delete from member where Kode='"+
tabModel.getValueAt(jTablemember.getSelectedRow(),0)+"'");
tampilData();
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Dihapus");
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “bupdate” > Events >Action> ActionPerformed [bupdateActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("update member set Kode='"+tkodemember.getText()+"',"+
"Nama='"+tnama.getText()+"',"+
"Alamat='"+talamat.getText()+"',"+
"Telpon='"+ttelp.getText()+"'where Kode='"+

tabModel.getValueAt(jTablemember.getSelectedRow(),0)+"'");
tampilData();

36
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Diperbaharui.");
bersih();
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “bkeluar” > Events >Action> ActionPerformed [bkeluarActionPerformed]

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


this.dispose();
}

// Klik kanan pada “bkeluar” > Events >Mouse> MouseClicked [jTablememberMouseClicked]

private void jTablememberMouseClicked(java.awt.event.MouseEvent evt) {


tkodemember.setText(tabModel.getValueAt(jTablemember.getSelectedRow(),0)+"");
tnama.setText(tabModel.getValueAt(jTablemember.getSelectedRow(),1)+"");
talamat.setText(tabModel.getValueAt(jTablemember.getSelectedRow(),2)+"");
ttelp.setText(tabModel.getValueAt(jTablemember.getSelectedRow(),3)+"");
bupdate.setEnabled(true);
bhapus.setEnabled(true);

6. Form Pendaftaran Member.


Buat Form baru dengan nama “daftar_member”. Beri nama variable sesuai gambar dibawah ini.

37
>> Coding.
package uts_uas;
import java.sql.*;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
public class daftar_member extends javax.swing.JFrame {
Connection cn=null;
ResultSet rspelanggan=null;
DefaultTableModel tabModel;

public daftar_member() {
initComponents();
koneksi();
setLocationRelativeTo(this);
buatnomor();
}

void koneksi(){
try{
//aktif driver
Class.forName("com.mysql.jdbc.Driver");
cn=DriverManager.getConnection("jdbc:mysql://localhost/db_tugas_java","root","");
Object [] judul_kolom={"Kode","Nama","Alamat","Telpon"};
tabModel=new DefaultTableModel(null,judul_kolom);

}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}
public void buatnomor(){
try{
Statement st = cn.createStatement();
ResultSet rs = st.executeQuery("SELECT kode FROM member ORDER BY kode DESC");

if (rs.next()) {
String kd_member = rs.getString("kode").substring(1);
String AN = "" + (Integer.parseInt(kd_member) + 1);
String Nol = "";

if(AN.length()==1)
{Nol = "00";}
else if(AN.length()==2)
{Nol = "0";}
else if(AN.length()==3)
{Nol = "";}
38
tkode.setText("M" + Nol + AN);//sesuaikan dengan variable namenya
} else {
tkode.setText("M001");//sesuaikan dengan variable namenya
}
rs.close();
}catch (Exception e){
} }

void tampilData(){
try{
Statement stm; //buat stm
stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rspelanggan=stm.executeQuery("select * from member");
while(rspelanggan.next()){
Object [] data={rspelanggan.getString("kode"),
rspelanggan.getString("nama"),
rspelanggan.getString("alamat"),
rspelanggan.getString("telpon")};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
} }

void kosongkanform(){
tkode.setText("");
tnama.setText("");
talamat.setText("");
ttlpon.setText("");
}

// Klik kanan pada “bsimpan” > Events > Action > actionPerformed[bsimpanActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("insert into member set kode='"+tkode.getText()+"',"+
"nama='"+tnama.getText()+"',"+
"alamat='"+talamat.getText()+"',"+
"telpon='"+ttlpon.getText()+"'");

tampilData();
kosongkanform();
JOptionPane.showMessageDialog(rootPane, "Data Anda berhasil disimpan");
}catch(Exception e){
e.printStackTrace(); } }
39
// Klik kanan pada “bhapus” > Events > Action > actionPerformed[bhapusActionPerformed]

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


tkode.setText("");
tnama.setText("");
talamat.setText("");
ttlpon.setText("");
tkode.requestFocus();
}

// Klik kanan pada “bcari” > Events > Action > actionPerformed[bcariActionPerformed]

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


new tabel_member().show();
}

// Klik kanan pada “bkeluar” > Events > Action > actionPerformed[bkeluarActionPerformed]

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

this.dispose(); }

7. Form Tabel Barang.


Buat Form baru dengan nama “tabel_barang”. Beri nama variable sesuai gambar dibawah ini.

40
>> Coding.
package uts_uas;

import java.awt.event.KeyEvent;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.table.DefaultTableModel;

/**
*
* @author KangMaman
*/
public class tabel_barang extends javax.swing.JFrame {
Connection cn=null;
ResultSet rsbrg=null;
DefaultTableModel tabModel;
/**
* Creates new form tabel_barang
*/
public tabel_barang() {
initComponents();
koneksi();
tampilData();
}
void koneksi(){
try{
//aktif driver
Class.forName("com.mysql.jdbc.Driver");
cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/db_tugas_java","root","");
Object[] judul_kolom={"Kode","Nama Barang","Jenis","Harga Beli","Harga Jual","Stok"};
tabModel=new DefaultTableModel(null,judul_kolom);
jtable_barang.setModel(tabModel);
tampilData();
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}
void tampilData(){
try{
Statement stm; //membuat statemen stm
stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from barang");//mengambil data barang
41
while (rsbrg.next()){
Object[] data={rsbrg.getString("kode_barang"),
rsbrg.getString("nama_barang"),
rsbrg.getString("jenis"),
rsbrg.getString("harga_beli"),
rsbrg.getString("harga_jual"),
rsbrg.getString("stok")

};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “tcari” > Events > Key > KeyPressed [tcariKeyPressed]

private void tcariKeyPressed(java.awt.event.KeyEvent evt) {


if(evt.getKeyCode() == KeyEvent.VK_ENTER){
try{
Statement stm=cn.createStatement();
tabModel.getDataVector().removeAllElements();
rsbrg=stm.executeQuery("select * from barang where nama_barang like
'%"+tcari.getText()+"%'");
while (rsbrg.next()){
Object[] data={rsbrg.getString("kode_barang"),
rsbrg.getString("nama_barang"),
rsbrg.getString("jenis"),
rsbrg.getString("harga_beli"),
rsbrg.getString("harga_jual"),
rsbrg.getString("stok")
};
tabModel.addRow(data);
}
}catch(Exception e){
e.printStackTrace();
} } // TODO add your handling code here:
}

// Klik kanan pada “bcari” > Events >Action> ActionPerformed [bcariActionPerformed]

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


try {
Statement stm = cn.createStatement();
tabModel.getDataVector().removeAllElements();

42
rsbrg = stm.executeQuery("select * from barang where nama_barang like '%" +
tcari.getText() + "%'");
while (rsbrg.next()) {
Object[] data = {rsbrg.getString("kode_barang"),
rsbrg.getString("nama_barang"),
rsbrg.getString("jenis"),
rsbrg.getString("harga_beli"),
rsbrg.getString("harga_jual"),
rsbrg.getString("stok")
};
tabModel.addRow(data);
}
} catch (Exception e) {
e.printStackTrace();
}
}

// Klik kanan pada “brefresh” > Events >Action> ActionPerformed [brefreshActionPerformed]

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


tampilData(); }

// Klik kanan pada “bkeluar” > Events >Action> ActionPerformed [bkeluarActionPerformed]

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

this.dispose();
}

7. Form Tabel Member.


Buat Form baru dengan nama “tabel_member”. Beri nama variable sesuai gambar dibawah ini.

“ Untuk form tabel_member,


Buat sama seperti tabel_barang,

Hanya saja, sesuaikan dengan


tabel member pada database-nya

43
8. Form Menu Utama.
Buat Form baru dengan nama “form_menu_utama”. Beri nama variable dan tambahkan menu
item pada masing-masing menu Login, Data Master, Transaksi, Laporan, Keluar, dan Logout
sesuai gambar dibawah ini

>> Coding
package uts_uas;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.sql.Connection;
44
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
import javax.swing.Timer;

/**
*
* @author KangMaman
*/
public class form_menu_utama1 extends javax.swing.JFrame {
public Connection conn;
public Statement stat;
ResultSet rssma=null;
/**
* Creates new form form_menu_utama
*/
public form_menu_utama1() {
initComponents();
nonaktif_menu();
tgl();
Jam();
koneksi();
mlogin.setEnabled(true);
panellogin.setVisible(false);
}

void nonaktif_menu(){
mdatamaster.setEnabled(false);
mtransaksi.setEnabled(false);
mlaporan.setEnabled(false);
mlogout.setEnabled(false);
}

void logout(){
setExtendedState(form_menu_utama1.MAXIMIZED_BOTH);
nonaktif_menu();
tgl();
Jam();
mlogin.setEnabled(true);
panellogin.setVisible(false);
}

public void tgl(){


java.util.Date x =new java.util.Date();
java.text.SimpleDateFormat y =new java.text.SimpleDateFormat("dd-MMM-yyyy");
jtanggal.setText(y.format(x));
}
45
public void Jam(){
ActionListener taskPerformer = new ActionListener() {

public void actionPerformed(ActionEvent evt) {


String nol_jam = "", nol_menit = "",nol_detik = "";

java.util.Date dateTime = new java.util.Date();


int nilai_jam = dateTime.getHours();
int nilai_menit = dateTime.getMinutes();
int nilai_detik = dateTime.getSeconds();

if(nilai_jam <= 9) nol_jam= "0";


if(nilai_menit <= 9) nol_menit= "0";
if(nilai_detik <= 9) nol_detik= "0";

String waktu = nol_jam + Integer.toString(nilai_jam);


String menit = nol_menit + Integer.toString(nilai_menit);
String detik = nol_detik + Integer.toString(nilai_detik);

jjam.setText(waktu+":"+menit+":"+detik+"");
}
};
new Timer(1000, taskPerformer).start();
}
public void admin()
{
mdatamaster.setEnabled(true);
mtransaksi.setEnabled(true);
mlaporan.setEnabled(true);
panellogin.setVisible(false);
}

public void user()


{
mdatamaster.setEnabled(false);
mtransaksi.setEnabled(true);
mlaporan.setEnabled(false);
panellogin.setVisible(false);
}

public void nonaktif()


{
mdatamaster.setEnabled(false);
mtransaksi.setEnabled(false);
mlaporan.setEnabled(false);

}
46
public void aktiflogin()
{

cmbusername.setEnabled(true);
tpass.setEnabled(true);
mlogin.setEnabled(true);
jmreset.setEnabled(true);
}

public void nonaktiflogin()


{
cmbusername.setEnabled(false);
tpass.setEnabled(false);
mlogin.setEnabled(true);
jmreset.setEnabled(false);
}

public void koneksi(){


try {
Class.forName("com.mysql.jdbc.Driver");
conn
=DriverManager.getConnection("jdbc:mysql://localhost:3306/db_tugas_java","root","");
stat = conn.createStatement();
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Mohon Maaf !, Koneksi Database Terputus Dan
Tidak Bisa Diakses, Harap Periksa Kembali..!","Error",JOptionPane.YES_OPTION);
System.out.println(e.getMessage());

}
}

public void cariuser(){


try {
koneksi();
String sql = "Select * from user where username='"+tusername.getText()+"' and
password='" + tpass.getText() + "'";
ResultSet rs = stat.executeQuery(sql);
if (rs.next())
{
JOptionPane.showMessageDialog(null, "Selamat Datang..!, Anda Login Sebagai User.");
user();
tpass.setText("");
nonaktiflogin();
jmreset.setEnabled(true);
jstatus.setText("User");
mlogout.setEnabled(true);

47
mlogin.setEnabled(false);
}
else
{
JOptionPane.showMessageDialog(null, "Mohon Maaf, Password User Salah..!");
tpass.setText("");
tpass.requestFocus();
}

} catch (Exception e) {
}
}

public void cariadmin(){


try {
koneksi();
String sql = "Select * from admin where username='"+tusername.getText() +"' and
password='" + tpass.getText() + "'";
ResultSet rs = stat.executeQuery(sql);
if (rs.next())
{
JOptionPane.showMessageDialog(null, "Selamat Datang..!, Anda Login Sebagai Admin.");
admin();
tpass.setText("");
nonaktiflogin();
jmreset.setEnabled(true);
jstatus.setText("Admin");
mlogout.setEnabled(true);
mlogin.setEnabled(false);
}
else
{
JOptionPane.showMessageDialog(null, "Mohon Maaf, Password Admin Salah..!");
tpass.setText("");
tpass.requestFocus();
}
} catch (Exception e) {
}
}

// Klik kanan pada “jmlogin” > Events > Action > ActionPerformed [jmloginActionPerformed]

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


panellogin.setVisible(true);
aktiflogin();
cmbusername.requestFocus();
}

48
// Klik kanan pada “jmbarang” > Events > Action > ActionPerformed [jmbarangActionPerformed]

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


new form_barang().show();
}

// Klik kanan pada “jmkasir” > Events > Action > ActionPerformed [jmkasirActionPerformed]

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


new form_kasir().show();
}

// Klik kanan pada “jmmember” > Events > Action > ActionPerformed
[jmmemberActionPerformed]

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


new form_member().show(); // TODO add your handling code here:
}

// Klik kanan pada “jmadmin” > Events > Action > ActionPerformed [jmadminActionPerformed]

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


new form_admin().show();
}

// Klik kanan pada “jmuser” > Events > Action > ActionPerformed [jmuserActionPerformed]

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


new form_user().show();
}

// Klik kanan pada “jmtransaksi” > Events > Action > ActionPerformed
[jmtransaksiActionPerformed]

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


new form_pembelian_barang().show();
}

// Klik kanan pada “jmlaporan” > Events > Action > ActionPerformed
[jmlaporanActionPerformed]

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

49
new form_laporan().show(); // TODO add your handling code here:
}

// Klik kanan pada “jmkeluar” > Events > Action > ActionPerformed
[jmkeluarActionPerformed]

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


int x=JOptionPane.showConfirmDialog(null, "Anda Yakin Akan Keluar Dari Aplikasi Ini
?.","Konfirmasi",JOptionPane.YES_NO_OPTION);
if(x==JOptionPane.YES_OPTION)
{
dispose();
}
else
{
return;
}
}

// Klik kanan pada “jmlogout” > Events > Action > ActionPerformed
[jmlogoutActionPerformed]

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


int x=JOptionPane.showConfirmDialog(null, "Anda Yakin Ingin Log Out
?.","Konfirmasi",JOptionPane.YES_NO_OPTION);
if(x==JOptionPane.YES_OPTION)
{
logout();
jstatus.setText(" Belum Login ");
}
else
{
return;
}
// TODO add your handling code here:
}

// Klik kanan pada “cmbusername” > Events > Action > ActionPerformed
[cmbusernameActionPerformed]

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

if (cmbusername.getSelectedItem().equals("Admin")) {

tusername.setText("Admin");

50
tpass.requestFocus();
} else if (cmbusername.getSelectedItem().equals("User")) {
tusername.setText("User");
tpass.requestFocus();
} else {
JOptionPane.showMessageDialog(rootPane, "Anda belum memilih status Login !.");
cmbusername.setSelectedIndex(0);
tusername.setText("");
tpass.setText("");
cmbusername.requestFocus();
}

// Klik kanan pada “tpass” > Events >Key > KeyPressed [tpassKeyPressed]

private void tpassKeyPressed(java.awt.event.KeyEvent evt) {


if (evt.getKeyCode() == KeyEvent.VK_ENTER) {
if (cmbusername.getSelectedItem().equals("Admin")) {
cariadmin();

} else if (cmbusername.getSelectedItem().equals("User")) {
cariuser();

} else {
JOptionPane.showMessageDialog(null, "Mohon Maaf, Username & Password Tidak
Ditemukan.!");
cmbusername.setSelectedIndex(0);
tusername.setText("");
tpass.setText("");
cmbusername.requestFocus();
}
}
}

// Klik kanan pada “blogin” > Events > Action > ActionPerformed [bloginActionPerformed]

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


if (cmbusername.getSelectedItem().equals("Admin")) {
cariadmin();

} else if (cmbusername.getSelectedItem().equals("User")) {
cariuser();

} else {
JOptionPane.showMessageDialog(null, "Mohon Maaf, Username & Password Tidak

51
Ditemukan.!");
cmbusername.setSelectedIndex(0);
tusername.setText("");
tpass.setText("");
cmbusername.requestFocus();
} // TODO add your handling code here:
}

// Klik kanan pada “bkeluar” > Events > Action > ActionPerformed [bkeluarActionPerformed]

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


panellogin.setVisible(false); // TODO add your handling code here:
}

9. Form Data Transaksi


Buat Form baru dengan nama “form_pembelian_barang”. Beri nama variable sesuai gambar
dibawah ini.

52
>> Coding.

package uts_uas;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.sql.*;
53
import javax.swing.JOptionPane;
import javax.swing.Timer;
import javax.swing.table.DefaultTableModel;

public class form_pembelian_barang extends javax.swing.JFrame {


Connection cn=null;
ResultSet rstransaksi=null;
DefaultTableModel tabModelTransaksi;

ResultSet rsfaktur=null;
ResultSet rsFktr=null;
DefaultTableModel tabModelFaktur;

ResultSet rssma=null;
private Object TglPenjualan;

public form_pembelian_barang() {
initComponents();
setLocationRelativeTo(this);
koneksi();
combokasir();
combomember();
comboBrg();
bersih_barang();
bersihmember();
ttotal.setText("0");
tubay.setText("0");
tukem.setText("0");
nonaktiffaktur();
nonaktifbarang();
nonaktifmember();
nonaktifbeli();
bnext1.setEnabled(false);
bnext2.setEnabled(false);
bnext3.setEnabled(false);
Jam();
tgl();
tgl_beli();
no_faktur();
}

public void tgl_beli()


{
java.util.Date x =new java.util.Date();
java.text.SimpleDateFormat y =new java.text.SimpleDateFormat("yyyy/MM/dd");

54
ttgl_beli.setText(y.format(x));
}

public void tgl()


{
java.util.Date x =new java.util.Date();
java.text.SimpleDateFormat y =new java.text.SimpleDateFormat("dd-MMMM-yyyy");
jtanggal.setText(y.format(x));
}

public void Jam(){


ActionListener taskPerformer = new ActionListener() {

public void actionPerformed(ActionEvent evt) {


String nol_jam = "", nol_menit = "",nol_detik = "";

java.util.Date dateTime = new java.util.Date();


int nilai_jam = dateTime.getHours();
int nilai_menit = dateTime.getMinutes();
int nilai_detik = dateTime.getSeconds();

if(nilai_jam <= 9) nol_jam= "0";


if(nilai_menit <= 9) nol_menit= "0";
if(nilai_detik <= 9) nol_detik= "0";

String waktu = nol_jam + Integer.toString(nilai_jam);


String menit = nol_menit + Integer.toString(nilai_menit);
String detik = nol_detik + Integer.toString(nilai_detik);

jjam.setText(waktu+":"+menit+":"+detik+"");
}
};
new Timer(1000, taskPerformer).start();
}

public void no_faktur(){


try{
Statement st = cn.createStatement();
ResultSet rs = st.executeQuery("select no_faktur from faktur order by
no_faktur desc");

if (rs.next()) {
String kd_faktur = rs.getString("no_faktur").substring(1);
String AN = "" + (Integer.parseInt(kd_faktur) + 1);
String Nol = "";

55
if(AN.length()==1)
{Nol = "00";}
else if(AN.length()==2)
{Nol = "0";}
else if(AN.length()==3)
{Nol = "";}
tnofaktur.setText("F" + Nol + AN);//sesuaikan dengan variable namenya
} else {
tnofaktur.setText("F001");//sesuaikan dengan variable namenya
}
rs.close();
}catch (Exception e){

}
}

void nonaktiffaktur(){
tnofaktur.setEnabled(false);
tnamakasir.setEnabled(false);
ttgl_beli.setEnabled(false);
cmbkode_kasir.setEnabled(false);
}
void aktiffaktur(){
tnofaktur.setEnabled(true);
tnamakasir.setEnabled(true);
ttgl_beli.setEnabled(true);
cmbkode_kasir.setEnabled(true);
}
void bersihfaktur(){
tnamakasir.setText("");
ttgl_beli.setText("");

}
void nonaktifmember(){
bdaftarmember.setEnabled(false);
cmbkodemember.setEnabled(false);
tnamamember.setEnabled(false);
talamatmember.setEnabled(false);
tnotelponmember.setEnabled(false);
bcari1.setEnabled(false);
brefresh.setEnabled(false);
}
void aktifmember(){
bdaftarmember.setEnabled(true);
cmbkodemember.setEnabled(true);
tnamamember.setEnabled(true);

56
talamatmember.setEnabled(true);
tnotelponmember.setEnabled(true);
bcari1.setEnabled(true);
brefresh.setEnabled(true);
}
void bersihmember(){
tnamamember.setText("");
talamatmember.setText("");
tnotelponmember.setText("");
}
void nonaktifbarang(){
cmbkodebarang.setEnabled(false);
bcari.setEnabled(false);
tnamabarang.setEnabled(false);
thargabarang.setEnabled(false);
tjumbel.setEnabled(false);
tstok.setEnabled(false);
bbeli.setEnabled(false);
btambah.setEnabled(false);

}
void aktifbarang(){
cmbkodebarang.setEnabled(true);
bcari.setEnabled(true);
tnamabarang.setEnabled(true);
thargabarang.setEnabled(true);
tstok.setEnabled(true);
tjumbel.setEnabled(true);

}
void bersih_barang(){
tnamabarang.setText("");
thargabarang.setText("");
tjumbel.setText("");
tstok.setText("");

}
void nonaktifbeli(){
ttotal.setEnabled(false);
tubay.setEnabled(false);
tukem.setEnabled(false);
bhapus.setEnabled(false);
bedit.setEnabled(false);
bsimpan.setEnabled(false);
}
void aktifbeli(){
57
ttotal.setEnabled(true);
tubay.setEnabled(true);
tukem.setEnabled(true);
bhapus.setEnabled(true);
bedit.setEnabled(true);
bsimpan.setEnabled(true);
}

void koneksi(){
try{
//aktifkan driver
Class.forName("com.mysql.jdbc.Driver");
cn=DriverManager.getConnection("jdbc:mysql://localhost/db_tugas_java",
"root","");
Object[] judul_kolom = {"Kode Barang","Nama Barang","Harga","Qty",
"Subtotal"};
tabModelTransaksi=new DefaultTableModel(null,judul_kolom);
jTableRincian.setModel(tabModelTransaksi);

}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}

void combokasir(){
try {
Statement stmCbNik;
stmCbNik=cn.createStatement();
rsfaktur=stmCbNik.executeQuery("select * from kasir");
while(rsfaktur.next()){
cmbkode_kasir.addItem(rsfaktur.getString("nik"));

}
rsfaktur.close();
stmCbNik.close();

}catch(Exception e){
e.printStackTrace();
}
}

void combomember(){
try {
Statement stmCbPlg;

58
stmCbPlg=cn.createStatement();
rsfaktur=stmCbPlg.executeQuery("select * from member");
while(rsfaktur.next()){
cmbkodemember.addItem(rsfaktur.getString("kode"));

}
rsfaktur.close();
stmCbPlg.close();
}catch(Exception e){
e.printStackTrace();
}
}

void comboBrg(){
try{
Statement stmCbBrg;
stmCbBrg=cn.createStatement();
rstransaksi=stmCbBrg.executeQuery("select * from barang");
while(rstransaksi.next()){
cmbkodebarang.addItem(rstransaksi.getString("kode_barang"));

}
rstransaksi.close();
stmCbBrg.close();

}catch(Exception e){
e.printStackTrace();
}
}
void simpan_faktur(){
try{
Statement stm=cn.createStatement();
stm.executeUpdate("insert into faktur set No_Faktur='"+tnofaktur.getText()+"',"+
"Kode_Pelanggan='"+cmbkode_kasir.getSelectedItem()+"',"+
"Tgl_Jual='"+ttgl_beli.getText()+"',"+
"total_Jual='"+ttotal.getText()+"',"+
"nik='"+cmbkodemember.getSelectedItem()+"'");

}catch(Exception e){
e.printStackTrace();
}
}

void tampilrincian(){
try{
Statement stmr;
stmr=cn.createStatement();
tabModelTransaksi.getDataVector().removeAllElements();
59
rstransaksi=stmr.executeQuery("select
trans_jual.no_faktur,trans_jual.qty_jual,trans_jual.kode_barang,barang.nama_barang,
barang.harga_jual,(barang.harga_jual*trans_jual.qty_jual)as jumlah from trans_jual
inner join barang on barang.kode_barang=trans_jual.kode_barang where
no_faktur='"+tnofaktur.getText()+"'");
while(rstransaksi.next()){
Object[] data={rstransaksi.getString("kode_barang"),
rstransaksi.getString("nama_barang"),
rstransaksi.getString("harga_jual"),
rstransaksi.getString("qty_jual"),
rstransaksi.getString("jumlah")
};
tabModelTransaksi.addRow(data);
}

}catch(Exception e){
e.printStackTrace();

} }
// Klik kanan pada “bmulai” > Events > Action >
actionPerformed[bmulaiActionPerformed]

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


aktiffaktur();
cmbkode_kasir.requestFocus();
bmulai.setEnabled(false);// TODO add your handling code here:
}

// Klik kanan pada “cmbkode_kasir” > Events > Item > ItemStateChanged
[cmbkode_kasirItemStateChanged]

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


try{
Statement stm=cn.createStatement();
rssma=stm.executeQuery("select nama from kasir where
nik='"+cmbkode_kasir.getSelectedItem()+"'");
while(rssma.next()){
tnamakasir.setText(rssma.getString("nama"));
}

}catch(Exception e){
e.printStackTrace();
} // TODO add your handling code here:
}

60
// Klik kanan pada “cmbkode_kasir” > Events > Action > ActionPerformed
[cmbkode_kasirActionPerformed]

private void cmbkode_kasirActionPerformed(java.awt.event.ActionEvent evt)


{
bnext1.setEnabled(true); // TODO add your handling code here:
}

// Klik kanan pada “bnext1” > Events > Action > ActionPerformed
[bnext1ActionPerformed]

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


bnext1.setEnabled(false);
bbeli.setEnabled(false);
aktifbarang();
brefresh.setEnabled(false);
cmbkodebarang.requestFocus();
}

// Klik kanan pada “cmbkodebarang” > Events > Action > ActionPerformed
[cmbkodebarangActionPerformed]

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


tjumbel.requestFocus();
bbeli.setEnabled(true);
}

// Klik kanan pada “cmbkodebarang” > Events > Item > ItemStateChanged
[cmbkodebarangItemStateChanged]

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


try{
Statement stm=cn.createStatement();
rssma=stm.executeQuery("select nama_barang,harga_jual,stok from barang where
kode_barang='"+cmbkodebarang.getSelectedItem()+"'");
while(rssma.next()){
tnamabarang.setText(rssma.getString("nama_barang"));
thargabarang.setText(rssma.getString("harga_jual"));
tstok.setText(rssma.getString("stok"));
}

}catch(Exception e){
e.printStackTrace();
} }

61
// Klik kanan pada “bcari” > Events > Action > ActionPerformed
[bcariActionPerformed]

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


new tabel_barang().show();
}

// Klik kanan pada “btambah” > Events > Action > ActionPerformed
[btambahActionPerformed]

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


bersih_barang();
cmbkodebarang.setEnabled(true);
cmbkodebarang.requestFocus();// TODO add your handling code here:
}

// Klik kanan pada “bbeli” > Events > Action > ActionPerformed [bbeliActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("insert into trans_jual set no_faktur='"+tnofaktur.getText()+"',"+
"kode_barang='"+cmbkodebarang.getSelectedItem()+"',"+
"qty_jual='"+tjumbel.getText()+"'");

tampilrincian();
//hapus view rincian
try{
Statement stmr;
stmr=cn.createStatement();
stmr.executeUpdate("drop view rincian");
}catch(Exception e){
e.printStackTrace();
}

//buat view rincian nested query


try{
Statement stmr;
stmr=cn.createStatement();
stmr.executeUpdate("create view rincian as select
trans_jual.no_faktur,trans_jual.qty_jual,trans_jual.kode_barang,barang.nama_barang,barang.harga_
jual,(barang.harga_jual*trans_jual.qty_jual)as jumlah from trans_jual inner join barang on
barang.kode_barang=trans_jual.kode_barang where no_faktur='"+tnofaktur.getText()+"'");

}catch(Exception e){

62
e.printStackTrace();

//nested query
try{
Statement stmr;
stmr=cn.createStatement();
rstransaksi=stmr.executeQuery("select sum(jumlah) as total from rincian");
while (rstransaksi.next()){
ttotal.setText(rstransaksi.getString("total"));
}
}catch(Exception e){
e.printStackTrace();
}

//Update Total_jual ke tabel faktur


try{
Statement stmr;
stmr=cn.createStatement();
stmr.executeUpdate("update faktur set total_jual='"+ttotal.getText()+"' where
no_faktur='"+tnofaktur.getText()+"'");
}catch(Exception e){
e.printStackTrace();
}

try{
Statement stmr;
stmr=cn.createStatement();
stmr.executeUpdate("update barang set stok=stok-'"+tjumbel.getText()+"'"+ "where
kode_barang='"+cmbkodebarang.getSelectedItem().toString()+"'");
}catch(Exception e){
e.printStackTrace();
}
bersih_barang();
JOptionPane.showMessageDialog(null, "Barang Berhasil Masuk Ke Keranjang Belanja. ");
tampilrincian();
btambah.setEnabled(true);
cmbkodebarang.setEnabled(false);
bbeli.setEnabled(false);
jTableRincian.setEnabled(true);
btambah.requestFocus();
ttotal.setEnabled(true);
bnext2.setEnabled(true);

}catch(Exception e){
e.printStackTrace();
} }
63
// Klik kanan pada “bnext2” > Events > Action > ActionPerformed
[bnext2ActionPerformed]

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

aktifmember();
cmbkodemember.requestFocus();
bnext2.setEnabled(false);
}

// Klik kanan pada “cmbkodemember” > Events > Action > ActionPerformed
[cmbkodememberActionPerformed]

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


bnext3.setEnabled(true);
brefresh.setEnabled(false);
}

// Klik kanan pada “cmbkodemember” > Events > Item > ItemStateChanged
[cmbkodememberItemStateChanged]

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


try{
Statement stm=cn.createStatement();
rssma=stm.executeQuery("select nama,alamat,telpon from member where
kode='"+cmbkodemember.getSelectedItem()+"'");
while(rssma.next()){
tnamamember.setText(rssma.getString("nama"));
talamatmember.setText(rssma.getString("alamat"));
tnotelponmember.setText(rssma.getString("telpon"));
}

}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “bcari1” > Events > Action > ActionPerformed
[bcari1ActionPerformed]

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


new tabel_member().show();
}

64
// Klik kanan pada “bdaftarmember” > Events > Action > ActionPerformed
[bdaftarmemberActionPerformed]

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


new daftar_member().show();
brefresh.setEnabled(true);// TODO add your handling code here:
}

// Klik kanan pada “bcari1” > Events > Action > ActionPerformed
[bcari1ActionPerformed]

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


combomember();
cmbkodemember.requestFocus();
}

// Klik kanan pada “bnext3” > Events > Action > ActionPerformed
[bnext3ActionPerformed]

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

bnext3.setEnabled(false);
tubay.setEnabled(true);
tukem.setEnabled(true);
tubay.requestFocus();// TODO add your handling code here:
}

// Klik kanan pada “jTableRincian” > Events > Mouse> MouseClicked


[jTableRincianMouseClicked]

private void jTableRincianMouseClicked(java.awt.event.MouseEvent evt) {


cmbkodebarang.setSelectedItem(tabModelTransaksi.getValueAt(jTableRincian.getSelectedRow(),0
));
tnamabarang.setText(tabModelTransaksi.getValueAt(jTableRincian.getSelectedRow(),1)+"");
thargabarang.setText(tabModelTransaksi.getValueAt(jTableRincian.getSelectedRow(),2)+"");

tjumbel.setText(tabModelTransaksi.getValueAt(jTableRincian.getSelectedRow(),3)+"");
bbeli.setEnabled(false);
bhapus.setEnabled(true);
bedit.setEnabled(true);
}

65
// Klik kanan pada “bhapus” > Events > Action > ActionPerformed
[bhapusActionPerformed]

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


try{
Statement stmr;
stmr=cn.createStatement();
stmr.executeUpdate("delete from trans_jual where
kode_barang='"+tabModelTransaksi.getValueAt(jTableRincian.getSelectedRow(),0)+"'");
tampilrincian();
bhapus.setEnabled(false);
JOptionPane.showMessageDialog(panel_member, "Item Berhasil Dihapus. !");
}catch(Exception e){

e.printStackTrace();
}

try{
Statement stmr;
stmr=cn.createStatement();
stmr.executeUpdate("update barang set stok=stok+'"+tjumbel.getText()+"'"+
"where kode_barang='"+cmbkodebarang.getSelectedItem().toString()+"'");
}catch(Exception e){
e.printStackTrace();
}
}

// Klik kanan pada “bedit” > Events > Action > ActionPerformed [beditActionPerformed]

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


try{
Statement stmr;
stmr=cn.createStatement();
stmr.executeUpdate("update trans_jual set
kode_barang='"+cmbkodebarang.getSelectedItem()+"',"+
"qty_jual='"+tjumbel.getText()+"' where no_faktur='"+tnofaktur.getText()+"' and
kode_barang ='"+cmbkodebarang.getSelectedItem()+"'");
tampilrincian();
//hapus view rincian
try{
Statement stm;
stm=cn.createStatement();
stm.executeUpdate("drop view rincian");
}catch(Exception e){

e.printStackTrace();
}

66
//buat view rincian nested query
try{
Statement stm;
stm=cn.createStatement();
stm.executeUpdate("create view rincian as select
trans_jual.no_faktur,trans_jual.qty_jual,trans_jual.kode_barang,barang.nama_barang,barang.harga_
jual,(barang.harga_jual*trans_jual.qty_jual)as jumlah from trans_jual inner join barang on
barang.kode_barang=trans_jual.kode_barang where no_faktur='"+tnofaktur.getText()+"'");

}catch(Exception e){
e.printStackTrace();
}
//nested query
try{
Statement stm;
stm=cn.createStatement();
rstransaksi=stm.executeQuery("select sum(jumlah) as total from rincian");
while (rstransaksi.next()){
ttotal.setText(rstransaksi.getString("total"));
}
}catch(Exception e){
e.printStackTrace();
}
}catch(Exception e){
JOptionPane.showConfirmDialog(panel_member, "Item Berhasi Diperbarui. !");
bedit.setEnabled(false);
e.printStackTrace(); } }

// Klik kanan pada “bkeluar” > Events > Action > ActionPerformed
[bkeluarActionPerformed]

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


int x=JOptionPane.showConfirmDialog(null, "Anda Yakin Akan Keluar
?.","Konfirmasi",JOptionPane.YES_NO_OPTION);
if(x==JOptionPane.YES_OPTION)
{
dispose();
}
else
{
return;
}
this.dispose(); }

67
// Klik kanan pada “tubay” > Events > Action > ActionPerformed
[tubayActionPerformed]

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


bhapus.setEnabled(false);
bedit.setEnabled(false); }

// Klik kanan pada “tubay” > Events > Key > KeyPressed [tubayKeyPressed]

private void tubayKeyPressed(java.awt.event.KeyEvent evt) {


if(evt.getKeyCode()==KeyEvent.VK_ENTER){
int ttl=Integer.parseInt(ttotal.getText());
int ubay=Integer.parseInt(tubay.getText());
int kembalian=ubay-ttl;
tukem.setText(String.valueOf(kembalian));
if(ubay<ttl)
{
JOptionPane.showMessageDialog(rootPane,"Mohon Maaf, Uang Anda
Kurang !.");
tubay.setText("");
tukem.setText("");
tubay.requestFocus();
}
else
{
JOptionPane.showMessageDialog(rootPane, " Uang Anda Cukup. Tekan
Tombol Simpan Untuk Menyimpan Data Transaksi Anda. !.");
bsimpan.setEnabled(true);
} } }

// Klik kanan pada “bsimpan” > Events > Action > ActionPerformed
[bsimpanActionPerformed]

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


try{
Statement stm=cn.createStatement();
stm.executeUpdate("insert into faktur set no_faktur='"+tnofaktur.getText()+"',"+
"kode_pelanggan='"+cmbkodemember.getSelectedItem()+"',"+
"tgl_jual='"+ttgl_beli.getText()+"',"+
"total_Jual='"+ttotal.getText()+"',"+
"nik='"+cmbkode_kasir.getSelectedItem()+"'");
tjumbel.requestFocus();
JOptionPane.showMessageDialog(rootPane,"Terima Kasih.. ! Data Pembelian
Barang Berhasil Disimpan. ");
new keranjang_belanja().show();
this.dispose();

68
}catch(Exception e){
e.printStackTrace();
} }

//Paling Bawah form


/**
* @param args the command line arguments
public static void main(String args[]) {

java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new form_pembelian_barang().setVisible(true);
}
}); }

9. Form Laporan
Buat Form baru dengan nama “form_laporan”. Beri nama variable sesuai gambar dibawah ini.

69
Jalankan Aplikasi iReport –nya. Perhatikan gambar dibawah ini.

70
71
“ Lakukan hal yang sama untuk
membuat Laporan Data Admin,
User, Member, Kasir dan
Transaksi “

Jika semua laporan telah dibuat dengan menggunakan iReport, maka file laporan yang ada di
E:\BSI\Projek_UTS_UAS\src\uts_uas\Laporan Akan langsung terlihat di panel Project Netbeans,

Berikut cara menghubungkan dan menampilkan laporan iReport pada Netbeans..

>> Coding.
Buka “form_laporan” di Netbeans.

package uts_uas;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.io.File;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
72
import java.util.HashMap;
import java.util.Map;
import javax.swing.JDialog;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.view.JasperViewer;

/**
*
* @author KangMaman
*/
public class form_laporan extends javax.swing.JFrame {

Koneksi koneksi = new Koneksi();


JasperReport jasperReport;
JasperDesign jasperDesign;
JasperPrint jasperPrint;
Map<String, Object> param = new HashMap<String, Object>();
/**
* Creates new form fomr_laporan
*/
public form_laporan() {
initComponents();
koneksi.getConnection();
setLocationRelativeTo(this);
}

//Klik kanan pada “badmin” >Events > Action > actionPerformed[badminActionPerformed]

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


try {
File file = new File("src/uts_uas/Laporan/admin.jrxml");
jasperDesign = JRXmlLoader.load(file);
param.clear();
jasperReport = JasperCompileManager.compileReport(jasperDesign);
jasperPrint = JasperFillManager.fillReport(jasperReport, param, koneksi.getConnection());
JasperViewer.viewReport(jasperPrint, false);
} catch (Exception e) {
e.printStackTrace();
} // TODO add your handling code here:
}

73
//Klik kanan pada “buser” >Events > Action > actionPerformed[buserActionPerformed]

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


try {
File file = new File("src/uts_uas/Laporan/user.jrxml");
jasperDesign = JRXmlLoader.load(file);
param.clear();
jasperReport = JasperCompileManager.compileReport(jasperDesign);
jasperPrint = JasperFillManager.fillReport(jasperReport, param, koneksi.getConnection());
JasperViewer.viewReport(jasperPrint, false);
} catch (Exception e) {
e.printStackTrace();
} // TODO add your handling code here:
}

//Klik kanan pada “bkasir” >Events > Action > actionPerformed[bkasirActionPerformed]

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


try {
File file = new File("src/uts_uas/Laporan/kasir.jrxml");
jasperDesign = JRXmlLoader.load(file);
param.clear();
jasperReport = JasperCompileManager.compileReport(jasperDesign);
jasperPrint = JasperFillManager.fillReport(jasperReport, param, koneksi.getConnection());
JasperViewer.viewReport(jasperPrint, false);
} catch (Exception e) {
e.printStackTrace();
} // TODO add your handling code here:
}

//Klik kanan pada “bmember” >Events > Action > actionPerformed[bmemberActionPerformed]

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


try {
File file = new File("src/uts_uas/Laporan/member.jrxml");
jasperDesign = JRXmlLoader.load(file);
param.clear();
jasperReport = JasperCompileManager.compileReport(jasperDesign);
jasperPrint = JasperFillManager.fillReport(jasperReport, param, koneksi.getConnection());
JasperViewer.viewReport(jasperPrint, false);
} catch (Exception e) {
e.printStackTrace();
} // TODO add your handling code here:
}

74
//Klik kanan pada “bbarang” >Events > Action > actionPerformed[bbarangActionPerformed]

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


try {
File file = new File("src/uts_uas/Laporan/barang.jrxml");
jasperDesign = JRXmlLoader.load(file);
param.clear();
jasperReport = JasperCompileManager.compileReport(jasperDesign);
jasperPrint = JasperFillManager.fillReport(jasperReport, param, koneksi.getConnection());
JasperViewer.viewReport(jasperPrint, false);
} catch (Exception e) {
e.printStackTrace();
} // TODO add your handling code here:
}

//Klik kanan pada “bfaktur” >Events > Action > actionPerformed[bfakturActionPerformed]

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


try {
File file = new File("src/uts_uas/Laporan/faktur.jrxml");
jasperDesign = JRXmlLoader.load(file);
param.clear();
jasperReport = JasperCompileManager.compileReport(jasperDesign);
jasperPrint = JasperFillManager.fillReport(jasperReport, param, koneksi.getConnection());
JasperViewer.viewReport(jasperPrint, false);
} catch (Exception e) {
e.printStackTrace();
} // TODO add your handling code here:
}

//Klik kanan pada “btransaksi” >Events > Action > actionPerformed[btransaksiActionPerformed]

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


try {
File file = new File("src/uts_uas/Laporan/transaksi.jrxml");
jasperDesign = JRXmlLoader.load(file);
param.clear();
jasperReport = JasperCompileManager.compileReport(jasperDesign);
jasperPrint = JasperFillManager.fillReport(jasperReport, param, koneksi.getConnection());
JasperViewer.viewReport(jasperPrint, false);
} catch (Exception e) {
e.printStackTrace();
} // TODO add your handling code here:
}

75
//Klik kanan pada “bkeluar” >Events > Action > actionPerformed[bkeluarActionPerformed]

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


this.dispose(); // TODO add your handling code here:
}

“ Keberhasilan dalam menampilkan laporan ini

tergantung dari koneksi dan file .jar iReport

yang ada di Libraries Projek pada Netbeans .

Jika laporan tidak tampil dan ada peringatan kode merah pada
panel Output,

periksa kembali nama file laporannya yang ada di baris kode

File file = new File("src/uts_uas/Laporan/barang.jrxml"); “

Demikian mengenai panduan membuat Program aplikasi Pembelian Barang dengan menggunakan
Java Netbeans dan phpMyAdmin.

Kritik & Saran

Blog : www.mamanmulyadi.blogspot.com

Email : mmulyadi751@gmail.com

Sekian Dan Terima Kasih.

76

Anda mungkin juga menyukai