Latihan10 (Pembuatan Aplikasi Office Supply Order) “PART1”
Pembuatan Aplikasi Office Supply Order
Mungkin ini sebagai latihan pamungkas, karena kita akan memakai segala latihan yang telah di pelajari untuk membuat program aplikasi dengan netbeans.
Pembuatan Database
Pembuatan Class Koneksi
2. Lalu buka netbeans kalian pilih File -> New Project
3.Next
4. isi Project Name: oso_app
5. Pilih tempat penyimpanan
6. Finish
7. Klik kanan pada Source Package,
pilih New àJava Class
8.isi Class Name : koneksi
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package oso_app;
import java.sql.*;
import javax.swing.JOptionPane;
/**
*
* @author UCUP
*/
public class koneksi {
Connection conn;
Statement st;
ResultSet rs;
public Connection setKoneksi()
{
try{
Class.forName(“com.mysql.jdbc.Driver”);
conn=DriverManager.getConnection(“jdbc:mysql://localhost/oso_db”,”root”,””);
st=conn.createStatement();
}
catch(Exception e){
JOptionPane.showMessageDialog(null,”Koneksi Gagal : ” +e);
}
return conn;
}
}
catatan : yang saya beri warna merah tidak usah diketik atau masukkan karna itu script bawaan netbeans.
Pembuatan Form Master Produk
1. Klik Kanan Pada Package Oso_appNew JFrame Form..
2. isi Class Name : Form_Produk, setelah itu pilih Finish
6. Desain Form Produk seperti dibawah ini :
Ketik Script dibawah ini pada tampilan listing:
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package oso_app;
import java.awt.event.KeyEvent;
import java.sql.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import sun.misc.Cleaner;
/**
*
* @author UCUP
*/
public class Form_Produk extends javax.swing.JFrame {
koneksi kon=new koneksi();
private Object [][] dataproduk=null;
private String[]label={“Id Produk”,”Id Kategori”,”Nama Produk”,”Unit Cost”,”Id_Supplier”};
/**
* Creates new form Form_Produk
*/
public Form_Produk() {
initComponents();
kon.setKoneksi();
nonaktif();
BacaTabelProduk();
isiNamaKategori();
isiNamaSupplier();
tid_kategori.setVisible(false);
tid_supplier.setVisible(false);
}
void isiNamaKategori(){
try{
String sql=”Select *From kategori”;
kon.rs=kon.st.executeQuery(sql);
while (kon.rs.next()){
cbkategori.addItem(kon.rs.getString(“nama_kategori”));
}
}catch(SQLException e){
System.out.println(“Koneksi Gagal”+ e.toString());
}
}
void isiNamaSupplier(){
try{
String sql=”Select *From supplier “;
kon.rs=kon.st.executeQuery(sql);
while (kon.rs.next()){
cbsupplier.addItem(kon.rs.getString(“nama_supplier”));
}
}catch(SQLException e){
System.out.println(“Koneksi Gagal”+ e.toString());
}
}
private String idProduk()
{
String no=null;
try{
kon.setKoneksi();
String sql = “Select right(id_produk,3)+1 from produk “;
ResultSet rs = kon.st.executeQuery(sql);
if (rs.next()){
rs.last();
no = rs.getString(1);
while (no.length()<3){
no=”00″+no;
no=”B”+no;
tid_produk.setText(no);
}
}else{
no=”B001″;
tid_produk.setText(no);
}
}catch (Exception e){
}return no;
}
private void BacaTabelProduk(){
try{
String sql=”Select *From produk order by id_produk”;
kon.rs=kon.st.executeQuery(sql);
ResultSetMetaData m=kon.rs.getMetaData();
int kolom=m.getColumnCount();
int baris=0;
while(kon.rs.next()){
baris=kon.rs.getRow();
}
dataproduk=new Object[baris][kolom];
int x=0;
kon.rs.beforeFirst();
while(kon.rs.next()){
dataproduk[x][0]=kon.rs.getString(“id_produk”);
dataproduk[x][1]=kon.rs.getString(“id_kategori”);
dataproduk[x][2]=kon.rs.getString(“nama_produk”);
dataproduk[x][3]=kon.rs.getString(“unitcost”);
dataproduk[x][4]=kon.rs.getString(“id_supplier”);
x++;
}
tbl_produk.setModel(new DefaultTableModel(dataproduk,label));
}
catch(SQLException e){
JOptionPane.showMessageDialog(null, e);
}
}
private void BacaTabelProduk2(){
try{
String sql=”select *from produk where nama_produk like '%” +tcari.getText()+ “%' “;
kon.rs=kon.st.executeQuery(sql);
ResultSetMetaData m=kon.rs.getMetaData();
int kolom=m.getColumnCount();
int baris=0;
while(kon.rs.next()){
baris=kon.rs.getRow();
}
dataproduk=new Object[baris][kolom];
int x=0;
kon.rs.beforeFirst();
while(kon.rs.next()){
dataproduk[x][0]=kon.rs.getString(“id_produk”);
dataproduk[x][1]=kon.rs.getString(“id_kategori”);
dataproduk[x][2]=kon.rs.getString(“nama_produk”);
dataproduk[x][3]=kon.rs.getString(“unitcost”);
dataproduk[x][4]=kon.rs.getString(“id_supplier”);
x++;
}
tbl_produk.setModel(new DefaultTableModel(dataproduk,label));
}
catch(SQLException e){
JOptionPane.showMessageDialog(null, e);
}
}
void isiNamaKategori2(){
try{
kon.setKoneksi();
String sql=”Select *From kategori where id_kategori='”+tid_kategori.getText()+”'”;
kon.rs=kon.st.executeQuery(sql);
if (kon.rs.next()){
cbkategori.setSelectedItem(kon.rs.getString(“nama_kategori”));
}
}catch(SQLException e){
System.out.println(“Koneksi Gagal”+ e.toString());
}
}
void isiNamaSupplier2(){
try{
String sql=”Select *From supplier where id_supplier='”+tid_supplier.getText()+”'”;
kon.rs=kon.st.executeQuery(sql);
if(kon.rs.next()){
cbsupplier.setSelectedItem(kon.rs.getString(“nama_supplier”));
}
}catch(SQLException e){
System.out.println(“Koneksi Gagal”+ e.toString());
}
}
private void setTable(){
int row=tbl_produk.getSelectedRow();
tid_produk.setText((String)tbl_produk.getValueAt(row,0));
tid_kategori.setText((String)tbl_produk.getValueAt(row,1));
tnm_produk.setText((String)tbl_produk.getValueAt(row,2));
tunit_cost.setText((String)tbl_produk.getValueAt(row,3));
tid_supplier.setText((String)tbl_produk.getValueAt(row,4));
}
private void BersihField(){
tunit_cost.setText(“”);
tid_produk.setText(“”);
tnm_produk.setText(“”);
tnm_produk.setText(“”);
tcari.setText(“”);
}
private void aktif(){
tid_produk.setEnabled(true);
tnm_produk.setEnabled(true);
tunit_cost.setEnabled(true);
cbkategori.setEnabled(true);
cbsupplier.setEnabled(true);
}
private void nonaktif(){
tid_produk.setEnabled(false);
tnm_produk.setEnabled(false);
tunit_cost.setEnabled(false);
cbkategori.setEnabled(false);
cbsupplier.setEnabled(false);
bt_edit.setEnabled(false);
bt_update.setEnabled(false);
bt_hapus.setEnabled(false);
bt_simpan.setEnabled(false);
}
private void SimpanData(){
try{
String sql=”insert into produk values('”+tid_produk.getText()+”','”+tid_kategori.getText()+”','”+tnm_produk.getText()+”','”+tunit_cost.getText()+”','”+tid_supplier.getText()+”')”;
kon.st.executeUpdate(sql);
JOptionPane.showMessageDialog(null,”Data berhasil disimpan”);
BersihField();
BacaTabelProduk();
}
catch(SQLException e){
JOptionPane.showMessageDialog(null,e);
}
}
private void EditData(){
try{
String sql=”Update produk set id_produk='”+tid_produk.getText()+”',id_kategori='”+tid_kategori.getText()+”',id_supplier='”+tid_supplier.getText()+”',nama_produk='”+tnm_produk.getText()+”',unitcost='”+tunit_cost.getText()+”' where id_produk='”+tid_produk.getText()+”'”;
kon.st.executeUpdate(sql);
JOptionPane.showMessageDialog(null,”Data berhasil diupdate”);
BersihField();
BacaTabelProduk();
kon.st.close();
}
catch(SQLException e){
JOptionPane.showMessageDialog(null,e);
}
}
private void HapusData(){
try{
String sql=”Delete from produk where id_produk='”+tid_produk.getText()+”'”;
kon.st.executeUpdate(sql);
JOptionPane.showMessageDialog(null,”Data berhasil dihapus”);
BersihField();
BacaTabelProduk();
kon.st.close();
}
catch(SQLException e){
JOptionPane.showMessageDialog(null, e);
}
}
8. Klik kanan pada Jframe, Pilih Events->Window-> WindowActivated
9. Ketik Script dibawah ini :
}
10. Klik Kanan pada bt_keluar, Pilih Events -> Action -> ActionPerformed
}
}
}
}
}
}
16. Klik Kanan pada tcari, Pilih Events -> KeyKeyTyped
Ketik Script dibawah ini :
}
17. Klik Kanan pada tbl_produk, Pilih Events ->Mouse MouseClicked
Ketik Script dibawah ini :
}
Ketik Script dibawah ini :
}
}
}
Silakan lanjut Ke Part 2 berikutnya 🙂
MATERI JAVA NETBEANS
Untuk kalian yang baru belajar java netbeans belajarlah dari materi pertama :
Materi ke-1 : Teori Java Netbeans
Materi ke-2 : Konsep Dasar Class Object
Materi ke-3 : Encapsulation
Materi ke-4 : Pewarisan
Materi ke-5 : Polymorpishm
Materi ke-6 : JFrame dan Objek
Materi ke-7 : Operator
Materi ke-8 : Percabangan
Materi ke-9 : Perulangan
Materi ke-10 : Dasar SQL Java
Materi ke-11 : Pembuatan Aplikasi Supply Part 1
Materi ke-12 : Pembuatan Aplikasi Supply Order Part 2
Materi ke-13 : Pembuatan Aplikasi Supply Order Part 3
Materi ke-14 : Pembuatan Aplikasi Supply Order Final