Showing posts with label JAVA. Show all posts
Showing posts with label JAVA. Show all posts

Saturday, March 15, 2014

MERANCANG DATABASE PENJUALAN BARANG MENGGUNAKAN MYSQL

Membuat Database dan Tabel

Untuk membuat sebuah aplikasi perlu dilakukan beberapa analisis data yang akan kita olah menjadi sebuah informasi yang bermanpaat bagi penggunanya. dalam hal ini pertama yang akan kita buat adalah database, sebelumnya anda perlu memikirkan seberapa besar database yang akan diperlukan. Dari hasil pemikiran tersebut anda akan mengira-ira berapa dan apa tabel yang akan digunaka sebagai media penyimpanan datanya.

Membuat Database

Dari beberapa analisis tabel yang diperlukan dalam pembuatan aplikasi penjualan saya memerlukan sekitar enam tabel master dan dua tabel transaksi untuk aplikasi yang akan saya buat. buat database dalam mysql dengan query sebagai berikut:
CREATE DATABASE dbpenjualan;

Selanjutnya, aktifkanlah database yang terbuat dengan perintah berikut
Mysql> USE dbretail;
Database changed
Database changed Pernyataan “Database changed” di atas menandakan anda sekarang telah aktif di dalam database dbpenjualan.

Membuat Tabel jenis
Tabel Jenis Barang digunakan untuk merekam data semua jenis barang. Dengan cara ini, kita dapat mengelompokkan jenis barang adapun struktur tabel jenisnya sebagai berikut

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:
mysql> create table tbljenis(
kodejenis char(4) not null primary key,
jenis varchar(60));

Membuat Tabel tblpetugas

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:
mysql> create table tblpetugas(
idpetugas char(6) not null primary key,
namapetugas varchar(80),
alamat varchar(100),
email varchar(80),
telpon char(10)
);

Membuat Tabel tbldistributor

mysql> create table tbldistributor(
iddistributor char(6) not null primary key,
namadistributor varchar(80),
alamat varchar(100),
kotasal varchar(80),
email varchar(80),
telpon char(10)
);

Membuat Tabel tblbarang

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:
mysql> create table tblbarang(
kodebarang char(4) not null primary key,
namabarang varchar(100),
kodejenis char(4),
harganet double,
hargajual double,
stok smallint(20)
);


Membuat Tabel tblbrgmasuk

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:
mysql> create table tblbrgmasuk(
nonota char(10) not null primary key,
tglmasuk varchar(30),
iddistributor char(6),
idpetugas char(6),
total double);

Membuat Tabel tbldetailbrgmasuk

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:
mysql> create table tbldetailbrgmasuk(
nonota char(10) not null,
kodebarang char(4) not null,
jumlah smallint(4),
subtotal double);

Membuat Tabel tblpenjualan

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:
mysql> create table tblpenjualan(
nofaktur char(10) not null primary key,
tglpenjualan varchar(30),
idpetugas char(6),
bayar double,
sisa double,
total double);

Membuat Tabel tbldetailpenjualan

Dari desain tabel di atas, anda dapat membuat dalam MySQL menggunakan perintah berikut:
mysql> create table tbldetailpenjualan(
nofaktur char(10) not null,
kodebarang char(4) not null,
jumlah smallint(4),
subtotal double);

setelah beberapa tabel dibuat maka relasi antar tabel digambarkan sebagai berikut

Tanda (PK) menunjukkan kunci utama, sedangkan (FK) adalah kunci tamu dengan diwujudkan arah panahnya.
Sekian postingan ku kali ini semoga bermanfaat dan tunggu penjelasan aplikasinya di waktu yang akan datang thank
untuk info selaengkapnya bisa d download di
https://docs.google.com/document/d/1eFS_lrrN0DbUaxPGBs_fMnZAbh5nkddZvAFZOKAGKbk/edit?usp=drive_web

Posted By Firmansyah 10:13 PM

Thursday, March 13, 2014

Contoh Java Membuat Table Pada Netbeans

Filled under:


Kali ini saya akan memberikan contoh membuat table dengan menggunakan netbean
selain itu dalam penggunaannya saya menggunakan database mysql dengan harap dapat menampilkan data dari database mysql kedalam form
silahkan dicoba
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

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;
import java.sql.PreparedStatement;
/**
 *
 * @author vina
 */

public class pulsa2 extends javax.swing.JFrame {
   private Connection con;
   private  Statement stat;
   private PreparedStatement pst;
 
 
 
 
    /**
     * Creates new form pulsa2
     */
    public pulsa2() {
         initComponents();
         koneksi();
         tampilkan();
     
    }
    private void tampilkan(){
    DefaultTableModel tbl_barang=new DefaultTableModel();
    tbl_barang.addColumn("kd_barang");
    tbl_barang.addColumn("nama_barang");
    tbl_barang.addColumn("nama_barang");
    tbl_barang.addColumn("stock");
    try{
        String sql="Select * from barang ";
      ResultSet rs=stat.executeQuery(sql);
      while(rs.next()){
          tbl_barang.addRow(new Object[]{
          rs.getString(1),
          rs.getString(2),
          rs.getString(3)
         
      });
    }
    Tabel_Barang.setModel(tbl_barang);
    }catch(Exception e){
        JOptionPane.showMessageDialog(null, "ada kesalahan");
    }
    }
    private void koneksi(){
        try{
            Class.forName("com.mysql.jdbc.Driver");
            con=DriverManager.getConnection(""+"jdbc:mysql://localhost/pulsa","root","");
            stat=con.createStatement();
            JOptionPane.showMessageDialog(rootPane,"koneksi berhasil");
        }catch(Exception e){
            JOptionPane.showMessageDialog(rootPane,"kesalahan koneksi database");
        }
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                        
    private void initComponents() {

        jScrollPane1 = new javax.swing.JScrollPane();
        Tabel_Barang = new javax.swing.JTable();
        txtsimpan = new javax.swing.JButton();
        txtubah = new javax.swing.JButton();
        txthapus = new javax.swing.JButton();
        bersih = new javax.swing.JButton();
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        txtkd_barang = new javax.swing.JTextField();
        txtnama_barang = new javax.swing.JTextField();
        txtstock = new javax.swing.JTextField();
        txtexit = new javax.swing.JButton();
        jLabel4 = new javax.swing.JLabel();
        txtcari = new javax.swing.JTextField();
        cari = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        Tabel_Barang.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null}
            },
            new String [] {
                "Title 1", "Title 2", "Title 3", "Title 4"
            }
        ));
        jScrollPane1.setViewportView(Tabel_Barang);

        txtsimpan.setText("Simpan");
        txtsimpan.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtsimpanActionPerformed(evt);
            }
        });

        txtubah.setText("Ubah");
        txtubah.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtubahActionPerformed(evt);
            }
        });

        txthapus.setText("Hapus");
        txthapus.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txthapusActionPerformed(evt);
            }
        });

        bersih.setText("Refresh");
        bersih.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                bersihActionPerformed(evt);
            }
        });

        jLabel1.setText("kd_barang");

        jLabel2.setText("nama_barang");

        jLabel3.setText("stock");

        txtnama_barang.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtnama_barangActionPerformed(evt);
            }
        });

        txtexit.setText("exit");
        txtexit.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtexitActionPerformed(evt);
            }
        });

        jLabel4.setText("Cari berdasarkan nama");

        txtcari.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtcariActionPerformed(evt);
            }
        });

        cari.setText("Cari");
        cari.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                cariActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 375, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(layout.createSequentialGroup()
                        .addContainerGap()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(jLabel1)
                                    .addComponent(jLabel3)
                                    .addComponent(jLabel2))
                                .addGap(70, 70, 70)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(txtkd_barang)
                                    .addComponent(txtnama_barang, javax.swing.GroupLayout.DEFAULT_SIZE, 149, Short.MAX_VALUE)
                                    .addComponent(txtstock)))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel4)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addComponent(txtcari, javax.swing.GroupLayout.PREFERRED_SIZE, 148, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(18, 18, 18)
                                .addComponent(cari))))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(txtsimpan)
                        .addGap(18, 18, 18)
                        .addComponent(txtubah)
                        .addGap(18, 18, 18)
                        .addComponent(txthapus)
                        .addGap(18, 18, 18)
                        .addComponent(bersih)
                        .addGap(18, 18, 18)
                        .addComponent(txtexit)))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(16, 16, 16)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel1)
                    .addComponent(txtkd_barang, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel2)
                    .addComponent(txtnama_barang, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel3)
                    .addComponent(txtstock, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(18, 18, 18)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 130, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(37, 37, 37)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(txtsimpan)
                    .addComponent(txtubah)
                    .addComponent(txthapus)
                    .addComponent(bersih)
                    .addComponent(txtexit))
                .addGap(28, 28, 28)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel4)
                    .addComponent(txtcari, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(cari))
                .addContainerGap(93, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>                      

    private void txtnama_barangActionPerformed(java.awt.event.ActionEvent evt) {                                              
       
    }                                            

    private void txthapusActionPerformed(java.awt.event.ActionEvent evt) {                                        
      txtkd_barang.setText("");
        txtnama_barang.setText("");
        txtstock.setText("");
    }                                      

    private void txtsimpanActionPerformed(java.awt.event.ActionEvent evt) {                                        
        // TODO add your handling code here:
        try{
            stat.execute("insert into barang value("
                    +"'"+txtkd_barang.getText()+"',"
                    +"'"+txtnama_barang.getText()+"',"
                    +"'"+txtstock.getText()
                    +"')");
txtkd_barang.requestFocus();
JOptionPane.showMessageDialog(rootPane,"Data berhasil disimpan");
        }catch(Exception e){
            JOptionPane.showMessageDialog(rootPane,"Data gagal disimpan");
        }
    }                                        

    private void txtubahActionPerformed(java.awt.event.ActionEvent evt) {                                      
try{
        String sql ="update barang set kd_barang='"
+txtkd_barang.getText()+"',kd_barng="
+txtnama_barang.getText()+"',nama_barang="
+txtstock.getText()+"',stock=";
pst=conn.PreparedStatement(sql);
pst.executeUpdate();
JOptionPane.showMessageDialog(null,"update");
}catch(Exception e){
JOptionPane.showMessageDialog(null,"e");
}

    }                                      

    private void txtexitActionPerformed(java.awt.event.ActionEvent evt) {                                      
System.exit(0);      
       
    }                                      

    private void bersih(){
        txtkd_barang.setText("");
       txtnama_barang.setText("");
       txtstock.setText("");
    }
    private void bersihActionPerformed(java.awt.event.ActionEvent evt) {                                      
     
    }                                    

    private void txtcariActionPerformed(java.awt.event.ActionEvent evt) {                                      
 // TODO add your handling code here:
    }                                      

    private void cariActionPerformed(java.awt.event.ActionEvent evt) {                                    
             // TODO add your handling code here:
    }                                  

    /**
     * @param args the command line arguments
     */
   
    public static void main(String args[]) {
        /*
         * Set the Nimbus look and feel
         */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /*
         * If Nimbus (introduced in Java SE 6) is not available, stay with the
         * default look and feel. For details see
         * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(pulsa2.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(pulsa2.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(pulsa2.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(pulsa2.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /*
         * Create and display the form
         */
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new pulsa2().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                    
    private javax.swing.JTable Tabel_Barang;
    private javax.swing.JButton bersih;
    private javax.swing.JButton cari;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTextField txtcari;
    private javax.swing.JButton txtexit;
    private javax.swing.JButton txthapus;
    private javax.swing.JTextField txtkd_barang;
    private javax.swing.JTextField txtnama_barang;
    private javax.swing.JButton txtsimpan;
    private javax.swing.JTextField txtstock;
    private javax.swing.JButton txtubah;
    // End of variables declaration                  

    private void cari(String text) {
        throw new UnsupportedOperationException("Not yet implemented");
    }

}

Posted By Firmansyah 2:19 AM