topbella

Minggu, 21 Juli 2013

FORM DETAIL BARANG UNTUK SISTEM

Langkah - Langkah Membuat Form Detail Barang dan Harga Jual Barang untuk Menjalankan Sistem menggunakan Netbeans

     Sistem ini akan berjalan dengan membuat form terlebih dahulu. Dalam form inilah pengguna dapat membuat, mengedit, menampung, meng-update bahkan menghapus data yang ada. Sistem ini akan berjalan secara berkesinambungan sesuai dengan apa yang dibutuhkan pengguna.

Form Keempat dan Kelima :
Form Detail Barang
Form Harga Jual Barang

Keterangan :
Untuk membuat form tersebut dibutuhkan Palette untuk mendesignnya. Ada juga palette yang dibutuhkan untuk menunjang pembuatan form ini. Semua palette harus memiliki variabel nama supaya mudah di panggil. Seperti :
Form Detail Barang
Text Field dari Label Id Transaksi : txtid_tran
Text Field dari Label Id Barang : txt_idbarang
Combo Box dari Label Kategori Barang : combo_kat
Combo Box dari Label Nama Barang : combobarang
Text Field dari Label Harga Beli Satuan : txthrgabeli
Text Field dari Label Jumlah : txt_jumlah
JDate Chooser dari Label Tanggal Kadaluarsa : txt_tglkadaluarsa
Radio Button dari Label Tanggal Kadaluarsa Button Ada : ada
Radio Button dari Label Tanggal Kadaluarsa Button Tidak Ada : tdk_ada
Table : tbl_det_pengadaan
Text Field dari Label TOTAL TRANSAKSI : txt_total
Button dari Home : jButton1
Button dari Back : btnback
Button dari Delete : btndel
Button dari Edit : btnedit
Button dari Insert : btninsert

Form Harga Jual Barang
Text Field dari Label Id Barang : id_brg
Text Field dari Label HARGA JUAL : txthrgjual
Button dari Set Harga : btnsetharga
Table : tbl_harga_jual
Text Field dari Label Searching : txt_search
Button dari Refresh : btnrefresh

Untuk bisa menjalankan form di atas dibutuhkan script sebagai berikut :

package toko_barang;

import Toko.Koneksi.Koneksi;
import java.sql.ResultSet;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.table.DefaultTableModel;
import sun.applet.Main;

public class DetailBarang extends javax.swing.JFrame {

    Koneksi koneksi;
    Statement statement;
    ResultSet resultSet;
    private String id_pengadaan,id_edit,ubah;
    int jml_awal;
    double total_transaksi;

    public DetailBarang(String idTransaksi) {
        super ("DETAIL TRANSAKSI PENGADAAN");
        initComponents();
        koneksi=new Koneksi();
         this.id_pengadaan=idTransaksi;
        txt_idtran.setText(id_pengadaan);
        select(id_pengadaan);
        select_hargajual();
        totalTransaksi(id_pengadaan);
        kategoritocombobox();
        txt_idtran.setEnabled(false);
        txt_idbarang.setEnabled(false);
       
        combobarang.removeAllItems();
        combobarang.addItem("-->pilih<--");
    }

    private void kategoritocombobox(){
        try{
            combo_kat.removeAllItems();
             combo_kat.addItem("-->pilih<--");
            String sql="select kategori from kategori";
            resultSet=statement.executeQuery(sql);
            while(resultSet.next()){
                combo_kat.addItem(resultSet.getString(1));
            }
        }
        catch(Exception e){
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

    public void select(String data){
        Object header[]={"ID_TRANSAKSI","ID_BARANG","NAMA BARANG","HARGA BELI","HARGA JUAL","JUMLAH","KADALUARSA"};
        DefaultTableModel tdp=new DefaultTableModel(null,header);
        tbl_det_pengadaan.setModel(tdp);

        int baris=tbl_det_pengadaan.getRowCount();
        for (int i = 0; i < baris; i++) {
            tdp.removeRow(i);
        }

        String sql="SELECT r.id_pengadaan, r.id_barang, b.nama_barang, r.harga_beli_satuan, b.harga_jual, r.jumlah,"
                + " r.tanggal_kadaluarsa FROM rel_pengadaan_barang r, barang b WHERE r.id_pengadaan='"+data+"' AND r.id_barang=b.id_barang";
        try{
            statement=koneksi.conn.createStatement();
            resultSet=statement.executeQuery(sql);
            while(resultSet.next()){
                String kolom1=resultSet.getString(1);
                String kolom2=resultSet.getString(2);
                String kolom3=resultSet.getString(3);
                String kolom4=resultSet.getString(4);
                String kolom5=resultSet.getString(5);
                String kolom6=resultSet.getString(6);
                String kolom7=resultSet.getString(7);
                String kolom[]={kolom1,kolom2,kolom3,kolom4,kolom5,kolom6,kolom7};
                tdp.addRow(kolom);

            }

        }catch(Exception e){
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

    public void select_hargajual(){
        Object header[]={"ID_BARANG","NAMA BARANG","HARGA BELI TERMAHAL","HARGA JUAL"};
        DefaultTableModel thj=new DefaultTableModel(null,header);
        tbl_harga_jual.setModel(thj);

        int baris=tbl_harga_jual.getRowCount();
        for (int i = 0; i < baris; i++) {
            thj.removeRow(i);
        }

        String queryHargaJual="select r.id_barang,b.nama_barang,max(r.harga_beli_satuan),b.harga_jual from rel_pengadaan_barang r,barang b where b.id_barang=r.id_barang group by id_barang";
        try{
            statement=koneksi.conn.createStatement();
            resultSet=statement.executeQuery(queryHargaJual);
            while(resultSet.next()){
                String kolom1=resultSet.getString(1);
                String kolom2=resultSet.getString(2);
                String kolom3=resultSet.getString(3);
                String kolom4=resultSet.getString(4);
                String kolom[]={kolom1,kolom2,kolom3,kolom4};
                thj.addRow(kolom);

            }

        }catch(Exception e){
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

    private void updatedata(){
        String harga_jual=txthrgjual.getText().toString();
        String id_barang=id_brg.getText().toString();
        String sql="update barang set harga_jual = '"+harga_jual+"' where id_barang = '"+id_barang+"'";
        try {
            statement.executeUpdate(sql);
        } catch (Exception e) {
             JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

    private void clear_hargajual(){
        id_brg.setText("");
        txthrgjual.setText("");
    }

    private void insertdata(){
        String id_transaksi=txt_idtran.getText().toString();
        String id_barang=txt_idbarang.getText().toString();
        String nama_barang=combobarang.getSelectedItem().toString();
        String hrga_bli=txthrgabeli.getText().toString();
        String jumlah=txt_jumlah.getText().toString();
        String sql=null;
        if(ada.isSelected()){
            SimpleDateFormat dateformat=new SimpleDateFormat ("yyyy-MM-dd");
            String tanggal=dateformat.format(txt_tglkadaluarsa.getDate());
           sql = "INSERT INTO rel_pengadaan_barang VALUES ('" + id_transaksi + "', '" + id_barang + "', '" 
                   + jumlah + "', '" + hrga_bli + "','" + 
                   tanggal + "','" + jumlah + "')";

        }
        else if (tdk_ada.isSelected()) {
          // sql = "INSERT INTO rel_pengadaan_barang VALUES ('" + txtIdTransaksi.getText() + "', '" + txtIdBarang.getText() + "', '" + comboKategori.getSelectedItem().toString() + "', '" + comboNamaBarang.getSelectedItem().toString()+"','"+txtHargaBeli.getText()+ "',0,null)";
         sql = "INSERT INTO rel_pengadaan_barang VALUES ('" + id_transaksi + "', '" + id_barang
                 + "', '" + jumlah + "', '" + hrga_bli + "','Tidak ada','" + jumlah + "')";

        }
        
        try {
            statement.executeUpdate(sql);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

    private void clear_detpengadaan(){
        txt_idbarang.setText("");
        txthrgabeli.setText("");
        txt_jumlah.setText("");
        txt_tglkadaluarsa.setDate(null);
    }

    public void deletedata(){
        String id_transaksi=txt_idtran.getText().toString();
        String id_barang=txt_idbarang.getText().toString();
        String sql="delete from rel_pengadaan_barang where id_pengadaan = '"+id_transaksi+"' AND id_barang='"+id_barang+"'" ;
        try {
            statement=koneksi.conn.createStatement();
            statement.execute(sql);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

    private void updateTransaksi(){
        String id_transaksi=txt_idtran.getText().toString();
        String id_barang=txt_idbarang.getText().toString();
        String nama_barang=combobarang.getSelectedItem().toString();
        String hrga_bli=txthrgabeli.getText().toString();
        String jumlah=txt_jumlah.getText().toString();
        String sql=null;
        if(ada.isSelected()){
            SimpleDateFormat dateformat=new SimpleDateFormat ("yyyy-MM-dd");
            String tanggal=dateformat.format(txt_tglkadaluarsa.getDate());
            sql="update rel_pengadaan_barang set id_barang ='"+id_barang+"', jumlah = '"+jumlah+"', harga_beli_satuan = '"+hrga_bli+"', tanggal_kadaluarsa = '"+tanggal+"' where id_pengadaan='"+id_transaksi+"' and id_barang='"+id_edit+"'";
        }
        else if(tdk_ada.isSelected()){
            sql="update rel_pengadaan_barang set id_barang ='"+id_barang+"', jumlah = '"+jumlah+"', harga_beli_satuan = '"+hrga_bli+"', tanggal_kadaluarsa = NULL where id_pengadaan='"+id_transaksi+"' and id_barang='"+id_edit+"'";
        }
        try {
            statement.executeUpdate(sql);
        } catch (Exception e) {
             JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

    public void Search() {
        Object header[] = {"ID BARANG", "NAMA BARANG", "HARGA BELI TERMAHAL", "HARGA JUAL"};
        DefaultTableModel defaultTable = new DefaultTableModel(null, header);
        tbl_harga_jual.setModel(defaultTable);

        String cari = txt_search.getText();
        String sql = "select b.id_barang, b.nama_barang, max(r.harga_beli_satuan),b.harga_jual from rel_pengadaan_barang r, barang b "
                + "where b.id_barang = r.id_barang  and b.id_barang LIKE '%" + cari + "%' or b.nama_barang LIKE '%" + cari + "%'";
        try {
            statement = koneksi.conn.createStatement();
            resultSet = statement.executeQuery(sql);
            while (resultSet.next()) {
                String idBarang = resultSet.getString(1);
                String namaBarang = resultSet.getString(2);
                String maxHarga = resultSet.getString(3);
                String harga_jual = resultSet.getString(4);

                String kolom[] = {idBarang, namaBarang, maxHarga, harga_jual};
                defaultTable.addRow(kolom);
            }
        } catch (Exception e) {
            System.out.println("Terjadi kesalahan, karena " + e.getMessage());
            JOptionPane.showMessageDialog(null, "Terjadi kesalahan, karena " + e.getMessage());
        }
    }

    private void totalTransaksi(String data) {
        String sql_select = "SELECT SUM(JUMLAH*HARGA_BELI_SATUAN) FROM rel_pengadaan_barang WHERE ID_PENGADAAN='" + data + "'";
        try {
            statement = koneksi.conn.createStatement();
            resultSet = statement.executeQuery(sql_select);

            while (resultSet.next()) {
                txt_total.setText(resultSet.getString(1));
                total_transaksi = resultSet.getDouble(1);
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

    private void updateTotalTransaksi(){
        String sql="UPDATE pengadaan SET TOTAL_TRANSAKSI = '"+total_transaksi+"' WHERE ID_PENGADAAN = '"+id_pengadaan+"'";
        try {
            statement=koneksi.conn.createStatement();
            statement.executeUpdate(sql);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

    private void updateStokBarang(String ubah){
        int jml=0, stok=0;
        String sql_select="SELECT stok from barang WHERE ID_BARANG='"+txt_idbarang.getText()+"'";
        try {
            statement=koneksi.conn.createStatement();
            resultSet=statement.executeQuery(sql_select);
            while(resultSet.next()){
                jml=Integer.parseInt(resultSet.getString(1));
            }

            if(ubah.equals("insert")){
                stok=jml+Integer.parseInt(txt_jumlah.getText());
            }
            else if(ubah.equals("edit")){
                stok=(jml-jml_awal)+Integer.parseInt(txt_jumlah.getText());
            }
            else if(ubah.equals("delete")){ 
                stok=jml-Integer.parseInt(txt_jumlah.getText());
            }

            String sql_update="UPDATE barang SET STOK='"+stok+"' WHERE ID_BARANG='"+txt_idbarang.getText()+"'";
            try {
                statement=koneksi.conn.createStatement();
                statement.executeUpdate(sql_update);

            } catch (Exception e) {
                JOptionPane.showMessageDialog(null, e.getMessage());
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

0 komentar:

Posting Komentar

Datos personales