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. 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
2
Sehingga Tampilan Projeknya seperti ini :
>> 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;
6
}
} catch (Exception ex) {
}
return jumlah;
}
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 .
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 form_barang() {
initComponents();
setLocationRelativeTo(this);
koneksi();
tampilData();
nonaktif();
buatnomor();
}
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();
}
}
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]
// Klik kanan pada “bupdate1” > Events > Action > actionPerformed[bupdate1ActionPerformed]
tabModel.getValueAt(jtabelbarang.getSelectedRow(),0)+"'");
tampilData();
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Diperbaharui.");
bersih();
}catch(Exception e){
e.printStackTrace();
} }
13
// Klik kanan pada “bhapus1” > Events > Action >
actionPerformed[bhapus1ActionPerformed]
// Klik kanan pada “bhapus1” > Events > Mouse > MouseClicked
[jtabelbarangMouseClicked]
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]
15
Klik Kanan pada “cmbjenis” > Properties
}
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]
// Klik kanan pada “tp” > Events > Key> KeyPressed [tpKeyPressed]
// Klik kanan pada “bupdate” > Events > Action > ActionPerformed [bupdateActionPerformed]
// Klik kanan pada “bkeluar” > Events > Action > ActionPerformed [bkeluarActionPerformed]
19
public static void main(String args[]) {
/*
* Set the Nimbus look and feel
*/
java.awt.EventQueue.invokeLater(new Runnable() {
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]
22
// Klik kanan pada “tp” > Events > Key> KeyPressed [tpKeyPressed]
// Klik kanan pada “bhapus” > Events > Action > actionPerformed[bhapusActionPerformed]
// Klik kanan pada “bganti” > Events > Action > actionPerformed[bgantiActionPerformed]
// Klik kanan pada “bkeluar” > Events > Action > actionPerformed[bkeluarActionPerformed]
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();
}
}
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]
// Klik kanan pada “bcari” > Events > Action > ActionPerformed [bcariActionPerformed]
28
}catch(Exception e){
e.printStackTrace();
}
}
// Klik kanan pada “brefresh” > Events > Action > ActionPerformed [brefreshActionPerformed]
// Klik kanan pada “btambah” > Events > Action > ActionPerformed
[btambahActionPerformed]
// Klik kanan pada “bsimpan” > Events > Action > ActionPerformed [bsimpanActionPerformed]
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]
// Klik kanan pada “bupdate” > Events > Action > ActionPerformed [bupdateActionPerformed]
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]
30
// Klik kanan pada “cmbjk” > Events > Action > ActionPerformed [cmbjkActionPerformed]
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]
34
// Klik kanan pada “bcari” > Events >Action> ActionPerformed [bcariActionPerformed]
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();
}
}
tabModel.getValueAt(jTablemember.getSelectedRow(),0)+"'");
tampilData();
36
JOptionPane.showMessageDialog(rootPane, "Data Berhasil Diperbaharui.");
bersih();
}catch(Exception e){
e.printStackTrace();
}
}
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]
tampilData();
kosongkanform();
JOptionPane.showMessageDialog(rootPane, "Data Anda berhasil disimpan");
}catch(Exception e){
e.printStackTrace(); } }
39
// Klik kanan pada “bhapus” > Events > Action > actionPerformed[bhapusActionPerformed]
// Klik kanan pada “bcari” > Events > Action > actionPerformed[bcariActionPerformed]
// Klik kanan pada “bkeluar” > Events > Action > actionPerformed[bkeluarActionPerformed]
this.dispose(); }
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]
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();
}
}
this.dispose();
}
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);
}
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);
}
}
46
public void aktiflogin()
{
cmbusername.setEnabled(true);
tpass.setEnabled(true);
mlogin.setEnabled(true);
jmreset.setEnabled(true);
}
}
}
47
mlogin.setEnabled(false);
}
else
{
JOptionPane.showMessageDialog(null, "Mohon Maaf, Password User Salah..!");
tpass.setText("");
tpass.requestFocus();
}
} catch (Exception e) {
}
}
// Klik kanan pada “jmlogin” > Events > Action > ActionPerformed [jmloginActionPerformed]
48
// Klik kanan pada “jmbarang” > Events > Action > ActionPerformed [jmbarangActionPerformed]
// Klik kanan pada “jmkasir” > Events > Action > ActionPerformed [jmkasirActionPerformed]
// Klik kanan pada “jmmember” > Events > Action > ActionPerformed
[jmmemberActionPerformed]
// Klik kanan pada “jmadmin” > Events > Action > ActionPerformed [jmadminActionPerformed]
// Klik kanan pada “jmuser” > Events > Action > ActionPerformed [jmuserActionPerformed]
// Klik kanan pada “jmtransaksi” > Events > Action > ActionPerformed
[jmtransaksiActionPerformed]
// Klik kanan pada “jmlaporan” > Events > Action > ActionPerformed
[jmlaporanActionPerformed]
49
new form_laporan().show(); // TODO add your handling code here:
}
// Klik kanan pada “jmkeluar” > Events > Action > ActionPerformed
[jmkeluarActionPerformed]
// Klik kanan pada “jmlogout” > Events > Action > ActionPerformed
[jmlogoutActionPerformed]
// Klik kanan pada “cmbusername” > Events > Action > ActionPerformed
[cmbusernameActionPerformed]
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]
} 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]
} 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]
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;
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();
}
54
ttgl_beli.setText(y.format(x));
}
jjam.setText(waktu+":"+menit+":"+detik+"");
}
};
new Timer(1000, taskPerformer).start();
}
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]
// Klik kanan pada “cmbkode_kasir” > Events > Item > ItemStateChanged
[cmbkode_kasirItemStateChanged]
}catch(Exception e){
e.printStackTrace();
} // TODO add your handling code here:
}
60
// Klik kanan pada “cmbkode_kasir” > Events > Action > ActionPerformed
[cmbkode_kasirActionPerformed]
// Klik kanan pada “bnext1” > Events > Action > ActionPerformed
[bnext1ActionPerformed]
// Klik kanan pada “cmbkodebarang” > Events > Action > ActionPerformed
[cmbkodebarangActionPerformed]
// Klik kanan pada “cmbkodebarang” > Events > Item > ItemStateChanged
[cmbkodebarangItemStateChanged]
}catch(Exception e){
e.printStackTrace();
} }
61
// Klik kanan pada “bcari” > Events > Action > ActionPerformed
[bcariActionPerformed]
// Klik kanan pada “btambah” > Events > Action > ActionPerformed
[btambahActionPerformed]
// Klik kanan pada “bbeli” > Events > Action > ActionPerformed [bbeliActionPerformed]
tampilrincian();
//hapus view rincian
try{
Statement stmr;
stmr=cn.createStatement();
stmr.executeUpdate("drop view rincian");
}catch(Exception e){
e.printStackTrace();
}
}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();
}
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]
aktifmember();
cmbkodemember.requestFocus();
bnext2.setEnabled(false);
}
// Klik kanan pada “cmbkodemember” > Events > Action > ActionPerformed
[cmbkodememberActionPerformed]
// Klik kanan pada “cmbkodemember” > Events > Item > ItemStateChanged
[cmbkodememberItemStateChanged]
}catch(Exception e){
e.printStackTrace();
}
}
// Klik kanan pada “bcari1” > Events > Action > ActionPerformed
[bcari1ActionPerformed]
64
// Klik kanan pada “bdaftarmember” > Events > Action > ActionPerformed
[bdaftarmemberActionPerformed]
// Klik kanan pada “bcari1” > Events > Action > ActionPerformed
[bcari1ActionPerformed]
// Klik kanan pada “bnext3” > Events > Action > ActionPerformed
[bnext3ActionPerformed]
bnext3.setEnabled(false);
tubay.setEnabled(true);
tukem.setEnabled(true);
tubay.requestFocus();// TODO add your handling code here:
}
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]
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]
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]
67
// Klik kanan pada “tubay” > Events > Action > ActionPerformed
[tubayActionPerformed]
// Klik kanan pada “tubay” > Events > Key > KeyPressed [tubayKeyPressed]
// Klik kanan pada “bsimpan” > Events > Action > ActionPerformed
[bsimpanActionPerformed]
68
}catch(Exception e){
e.printStackTrace();
} }
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,
>> 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 {
73
//Klik kanan pada “buser” >Events > Action > actionPerformed[buserActionPerformed]
74
//Klik kanan pada “bbarang” >Events > Action > actionPerformed[bbarangActionPerformed]
75
//Klik kanan pada “bkeluar” >Events > Action > actionPerformed[bkeluarActionPerformed]
Jika laporan tidak tampil dan ada peringatan kode merah pada
panel Output,
Demikian mengenai panduan membuat Program aplikasi Pembelian Barang dengan menggunakan
Java Netbeans dan phpMyAdmin.
Blog : www.mamanmulyadi.blogspot.com
Email : mmulyadi751@gmail.com
76