topbella

Minggu, 21 Juli 2013

FORM PENJUALAN BARANG UNTUK SISTEM

Langkah - Langkah Membuat Form Penjualan 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 Ketujuh :
Form Penjualan 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 :
Text Field dari Label Kode Otomatis : txt_idpenjualan
JDate Chooser dari Label Tanggal : txttanggal
Text Field dari Label Cari Id / Nama Barang : txt_cari
Text Field dari Label Id Barang : txt_idbarang
Text Field dari Label Jumlah : txt_jmlh
Text Field dari Label Harga : txt_hrga
Text Filed (tanpa nama) : idHapus
Table 1 : tbl_barangjual
Table 2 : tbl_barangbeli
Button dari Transaksi Baru : btntransaksibaru
Label dari Label Total : txt_tot
Text Filed dari Label Bayar : txt_bayar
Button dari Home : btnkembali
Button dari Insert : btninsert
Button dari Delete : btndelete

Untuk bisa menjalankan form di atas dibutuhkan script sebagai berikut :

package toko_barang;

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

public class form_penjualan_barang extends javax.swing.JFrame {

    Koneksi k;
    Statement statement;
    ResultSet resultSet;
    String idPenjualan, id_barang,ubah;
    int count,jml_awal;

    public form_penjualan_barang() {
        initComponents();
        k = new Koneksi();
        setResizable(false);
        selectTabelHargaJual();
        selectTabelHargaBeli();
        kondisiawal();
    }
    
    # untuk membersihkan text field
    private void clear() {
        txt_idbarang.setText("");
        txt_cari.setText("");
        txt_jmlh.setText("");
        txt_hrga.setText("");
        txt_bayar.setText("");
    }

    # semua action tidak aktif kecuali Button Transaksi Baru dan Home
    private void kondisiawal() {
        btninsert.setEnabled(false);
        btndelete.setEnabled(false);
        txt_idbarang.setEnabled(false);
        txt_jmlh.setEnabled(false);
        tbl_barangbeli.setEnabled(false);
        txt_tot.setEnabled(false);
        txt_bayar.setEnabled(false);
        clear();
        btntransaksibaru.setEnabled(true);
        idPenjualan = "";
    }

    # setelah mengklik Button Transaksi Baru maka semua action akan aktif
    private void kondisiAktif() {
        btninsert.setEnabled(true);
        btndelete.setEnabled(true);
        txt_jmlh.setEnabled(true);
        tbl_barangbeli.setEnabled(true);
        btntransaksibaru.setEnabled(false);
        txt_bayar.setEnabled(true);
        clear();
    }

    private void selectTabelHargaJual(){
        Object header[] = {"ID BARANG","NAMA BARANG","HARGA JUAL","STOK"};
        DefaultTableModel defaultTable = new DefaultTableModel(null,header);
        tbl_barangjual.setModel(defaultTable);

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

        String sql_select = "select id_barang,nama_barang,harga_jual,stok from barang where stok > 0";
        try {
            statement = k.conn.createStatement();
            resultSet = statement.executeQuery(sql_select);

            while(resultSet.next()){
                String idBarang = resultSet.getString(1);
                String namaBarang = resultSet.getString(2);
                String harga_jual = resultSet.getString(3);
                String stok = resultSet.getString(4);

                String kolom[] = {idBarang,namaBarang,harga_jual,stok};
                defaultTable.addRow(kolom);
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

private void selectTabelHargaBeli() {
    Object header[] = {"ID PENJUALAN", "ID BARANG", "NAMA BARANG", "HARGA", "JUMLAH", "TOTAL HARGA"};
        DefaultTableModel defaultTable = new DefaultTableModel(null, header);
        tbl_barangbeli.setModel(defaultTable);

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

       String sql_select = "select r.id_penjualan,r.id_barang,b.nama_barang,b.harga_jual,r.jumlah,r.total_harga " + "from rel_penjualan_barang r, barang b where r.id_barang = b.id_barang and r.id_penjualan ='" + idPenjualan + "'";
        try {
            statement = k.conn.createStatement();
            resultSet = statement.executeQuery(sql_select);

            while (resultSet.next()) {
                String idjual = resultSet.getString(1);
                String idBarang = resultSet.getString(2);
                String namaBarang = resultSet.getString(3);
                String harga = resultSet.getString(4);
                String jml = resultSet.getString(5);
                String total = resultSet.getString(6);

                String kolom[] = {idjual, idBarang, namaBarang, harga, jml, total};
                defaultTable.addRow(kolom);
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
            System.out.println("" + e.getMessage());
        }
    }

    private void searchTabelHargaJual(){
        Object header[] = {"ID BARANG","NAMA BARANG","HARGA JUAL","STOK"};
        DefaultTableModel defaultTable = new DefaultTableModel(null,header);
        tbl_barangjual.setModel(defaultTable);

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

        String sql_select = "select id_barang,nama_barang,harga_jual,stok from barang " + "where stok > 0 and (nama_barang like '%"+txt_cari.getText()+"%' or id_barang like '%"+txt_cari.getText()+"%')";
        try {
            statement = k.conn.createStatement();
            resultSet = statement.executeQuery(sql_select);

            while(resultSet.next()){
                String idBarang = resultSet.getString(1);
                String namaBarang = resultSet.getString(2);
                String harga_jual = resultSet.getString(3);
                String stok = resultSet.getString(4);

                String kolom[] = {idBarang,namaBarang,harga_jual,stok};
                defaultTable.addRow(kolom);
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }

    private String insertTabelPenjualan() {
        try {
            Date date = new Date();
            SimpleDateFormat dateformat=new SimpleDateFormat ("yyyy-MM-dd");
            String tanggal=dateformat.format(date);
            txttanggal.setDate(date);

            SimpleDateFormat dateformat2=new SimpleDateFormat ("dd.MM.yyyy");
            String tanggal2=dateformat2.format(date);
            int count = 100;
            String sqltanggal = "select tanggal_penjualan,id_penjualan from penjualan";
            resultSet = statement.executeQuery(sqltanggal);
            while (resultSet.next()) {
                String data1 = resultSet.getString(1);
                String data2 = resultSet.getString(2);
                if (data1.equals(tanggal)) {
                    if (count == Integer.valueOf(data2.substring(14, 17))) {
                        count++;
                    }
                }
            }
            idPenjualan = "TJ." + tanggal2 + "." + count;
            String sql = "insert into penjualan values('" + idPenjualan + "','"+Form_Login.userLogin+"','" + tanggal + "',0)";
            statement.executeUpdate(sql);

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

    private void insertRelPenjualan() {
        double total = Integer.parseInt(txt_jmlh.getText()) * Double.parseDouble(txt_hrga.getText());

        try {
 String sql = "INSERT INTO rel_penjualan_barang " + "VALUES('" + txt_idbarang.getText() + "','" + idPenjualan + "','" + txt_jmlh.getText() + "','"+hitungLaba()+"','" + total + "')";
            statement = k.conn.createStatement();
            statement.executeUpdate(sql);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
            System.out.println("" + e.getMessage());
        }
    }

private void total_transaksi() {
String total = "SELECT sum(total_harga) from rel_penjualan_barang where id_penjualan ='" + idPenjualan + "'";
        try {
            statement = k.conn.createStatement();
            resultSet = statement.executeQuery(total);

            while (resultSet.next()) {
                txt_tot.setText(resultSet.getString(1));
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
            System.out.println("" + e.getMessage());
        }
    }

    private void updateTotalTransaksi() {
        String sql_update = "UPDATE penjualan SET total_penjualan = '" + txt_tot.getText() + "' WHERE ID_PENJUALAN = '" + idPenjualan + "'";
        try {
            statement = k.conn.createStatement();
            statement.executeUpdate(sql_update);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
            System.out.println("" + e.getMessage());
        }
    }

    private double hitungLaba() throws SQLException {
        Vector<String> vektorIdPengadaan = new Vector();
        Vector<String> vektorIdBarang = new Vector();
        Vector<Integer> jum = new Vector();
        Vector<Double> hargaBeli = new Vector();
        Vector<Double> hargaJual = new Vector();
        double laba = 0;
        try {
            String sql = "select r.id_pengadaan,r.id_barang,r.harga_beli_satuan,b.harga_jual,r.belum_terjual "
                    + "from rel_pengadaan_barang r,barang b "
                    + "where r.id_barang=b.id_barang AND r.id_barang='" + txt_idbarang.getText() + "' and r.belum_terjual>0";
            resultSet = statement.executeQuery(sql);
            while (resultSet.next()) {
                vektorIdPengadaan.addElement(resultSet.getString(1));
                vektorIdBarang.addElement(resultSet.getString(2));
                hargaBeli.addElement(resultSet.getDouble(3));
                hargaJual.addElement(resultSet.getDouble(4));
                jum.addElement(resultSet.getInt(5));
            }
            int jumlah;
            int jumlahJual = Integer.valueOf(txt_jmlh.getText());
            for (int i = 0; i < vektorIdPengadaan.size(); i++) {
                jumlah = jum.elementAt(i) - jumlahJual;
                if (jumlah >= 0) {
                    try {
    String query = "update rel_pengadaan_barang set belum_terjual=" + jumlah + " where id_pengadaan='" + vektorIdPengadaan.elementAt(i) + "' and id_barang='" + vektorIdBarang.elementAt(i) + "'";
                        statement.executeUpdate(query);
                        laba = laba + (hargaJual.elementAt(i) - hargaBeli.elementAt(i)) * jumlahJual;
                    } catch (Exception e) {
                        JOptionPane.showMessageDialog(null, e.getMessage());
                    }
                    break;
                } else {
                    try {
     String query1 = "update rel_pengadaan_barang set belum_terjual=" + 0 + " where id_pengadaan='" + vektorIdPengadaan.elementAt(i) + "' and id_barang='" + vektorIdBarang.elementAt(i) + "'";
                        statement.executeUpdate(query1);
                    } catch (Exception e) {
                        JOptionPane.showMessageDialog(null, e.getMessage());
                    }
                    laba = laba + (hargaJual.elementAt(i) - hargaBeli.elementAt(i)) * jum.elementAt(i);
                    jumlahJual = -1 * jumlah;
                }
            }
        } catch (NumberFormatException n) {
            JOptionPane.showMessageDialog(null, n.getMessage());
        }
        return laba;
    }

    private int cekStok() {
        int stok = 0;
        String total = "SELECT stok from barang where id_barang ='" + id_barang + "'";
        try {
            statement = k.conn.createStatement();
            resultSet = statement.executeQuery(total);

            while (resultSet.next()) {
                stok = Integer.parseInt(resultSet.getString(1));
            }
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
            System.out.println("" + e.getMessage());
        }
        return stok;
    }

    private void UpdateStok(String ubah) {
        int stokBaru = 0;
        try {
            if(ubah.equals("insert")){
                stokBaru = cekStok() - Integer.parseInt(txt_jmlh.getText());
            }else if(ubah.equals("delete")){
                stokBaru=cekStok()+jml_awal;
            }
            String total = "UPDATE barang set stok ='" + stokBaru + "' where id_barang = '" + id_barang + "'";
            statement.executeUpdate(total);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
            System.out.println("" + e.getMessage());
        }
    }

    private void delete(){
        String sql_delete="DELETE FROM rel_penjualan_barang WHERE ID_PENJUALAN='"+idPenjualan+"' AND ID_BARANG='"+idHapus.getText()+"'";
        try {
            statement=k.conn.createStatement();
            statement.executeUpdate(sql_delete);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "Data masih digunakan!!");
            System.out.println(""+e.getMessage());
        }
    }

Supaya action-action pada form yang telah dibuat bisa berfungsi, dibutuhkan script sebagai berikut :
Key Type txt_cari

private void txt_cariKeyTyped(java.awt.event.KeyEvent evt) {                                  
        // TODO add your handling code here:
        searchTabelHargaJual();
    }

Key Pressed txt_jmlh

private void txt_jmlhKeyPressed(java.awt.event.KeyEvent evt) {                                    
        // TODO add your handling code here:
        ubah="insert";
        if(evt.getKeyChar()=='\n'){
            if(Integer.parseInt(txt_jmlh.getText()) <= cekStok()){
                insertRelPenjualan();
                total_transaksi();
                UpdateStok(ubah);
                updateTotalTransaksi();
            }
        }
    }

Mouse Click tbl_barangjual

private void tbl_barangjualMouseClicked(java.awt.event.MouseEvent evt) {                                            
        // TODO add your handling code here:
        id_barang = tbl_barangjual.getValueAt(tbl_barangjual.getSelectedRow(), 0).toString();
        String namaBarang = tbl_barangjual.getValueAt(tbl_barangjual.getSelectedRow(), 1).toString();
        String harga = tbl_barangjual.getValueAt(tbl_barangjual.getSelectedRow(), 2).toString();
        txt_idbarang.setText(id_barang);
        txt_cari.setText(namaBarang);
        txt_hrga.setText(harga);
    }

Mouse Click tbl_barangbeli

private void tbl_barangbeliMouseClicked(java.awt.event.MouseEvent evt) {                                            
        // TODO add your handling code here:
        idHapus.setText(tbl_barangbeli.getValueAt(tbl_barangbeli.getSelectedRow(), 1).toString());
        jml_awal=Integer.valueOf(tbl_barangbeli.getValueAt(tbl_barangbeli.getSelectedRow(), 4).toString());
    }

Button Transaksi Baru

private void btntransaksibaruActionPerformed(java.awt.event.ActionEvent evt) {                                                 
        // TODO add your handling code here:
        kondisiAktif();
        txt_idpenjualan.setText(insertTabelPenjualan());
    }

Key Pressed txt_bayar

private void txt_bayarKeyPressed(java.awt.event.KeyEvent evt) {                                     
        // TODO add your handling code here:
        double sisa = Double.parseDouble(txt_bayar.getText()) - Double.parseDouble(txt_tot.getText());

        if (evt.getKeyChar() == '\n') {
            if (sisa >= 0) {
                if (sisa != 0) {
                    JOptionPane.showMessageDialog(null, "Kembalian Anda = " + sisa);
                } else {
                    JOptionPane.showMessageDialog(null, "Uang anda pas");
                }
                updateTotalTransaksi();
                clear();
                kondisiawal();
                selectTabelHargaBeli();
                selectTabelHargaJual();
            } else {
                JOptionPane.showMessageDialog(null, "Uang anda kurang = " + (sisa * (-1)));
            }
        }
    }

Button Delete

private void btndeleteActionPerformed(java.awt.event.ActionEvent evt) {                                          
        // TODO add your handling code here:
        ubah="delete";
        if(idHapus.getText().equals("")){
            JOptionPane.showMessageDialog(null, "Pilih data yang akan dihapus");
        }
        else{
            int hasil=JOptionPane.showConfirmDialog(null, "Apakah benar anda ingin menghapus kode kategori : "+idHapus.getText(),null,JOptionPane.YES_NO_OPTION);
            if(hasil == JOptionPane.YES_OPTION){
                delete();
                UpdateStok(ubah);
                idHapus.setText("");
                selectTabelHargaBeli();
                selectTabelHargaJual();
            }
            else if(hasil==JOptionPane.NO_OPTION){
                idHapus.setText("");
            }
        }
    }

Button Insert

private void btninsertActionPerformed(java.awt.event.ActionEvent evt) {                                          
        // TODO add your handling code here:
        ubah="insert";
        if (Integer.parseInt(txt_jmlh.getText()) <= cekStok()) {
            insertRelPenjualan();
            total_transaksi();
            UpdateStok(ubah);
            selectTabelHargaJual();
            selectTabelHargaBeli();
            clear();
        } else {
            JOptionPane.showMessageDialog(null, "Stok barang tidak cukup!!");
        }
    }

Button Home

private void btnkembaliActionPerformed(java.awt.event.ActionEvent evt) {                                           
        // TODO add your handling code here:
        new MenuUtama(Form_Login.kondisiLogin).setVisible(true);
        this.dispose();
    }

# menjalankan form
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
                new form_penjualan_barang().setVisible(true);
            }
        });
    }
}

REPORT UNTUK SISTEM

Langkah - Langkah untuk Membuat Report pada Netbeans

Disini, report digunakan untuk membuat sebuah laporan supaya pengguna mudah untuk menganalisis data.

Pertama iyalah cara untuk membuat Report :

1.     Pada tampilan interface klik icon yang terdapat tanda panahnya.


2.     Pilih Database JDBC connection, lalu klik Next > untuk melanjutkan ke tahap berikutnya.


3.     Isi terlebih dahulu Name (untuk nama database (penulisan harus sama dengan database yang terdapat pada MySQL)). Kemudian isi Username dengan root, beri tanda centang pada Save password. Klik Test untuk mencoba apakah connectionnya berhasil atau langsung saja klik Save.


4.     Setelah database dibuat, langkah selanjutnya adalah mengklik icon seperti gambar di bawah ini.

5.     Pilih Template untuk Report yang akan d buat sesuai dengan keinginan.

6.     Setelah muncul kotak Query seperti ini, klik Design query.

7.     Muncul kotak kosong seperti ini. Data-data yanga ada pada database MySQL terdapat di sebelah kiri bawah.


8.     Pilih database sesuai dengan yang akan digunakan. Centang atribut yang ingin digunakan, lalu klik OK.

9.     Setelah muncul seperti gambar di bawah ini langsung saja klik Next >.

10.    Muncul kotak Fields, disini akan diurutkan nama fieldsnya sesuai kebutuhan.

11.    Inilah nama fields yang telah diurutkan. Klik Next > untuk melanjutkan.

12.    Ketika muncul kotak pesan seperti di bawah ini, langsung saja klik Next >.

13.    Ketika muncul kotak pesan seperti ini, maka Report yang dibuat telah sukses. Klik Finish untuk mengakhiri.

Report yang telah dibuat siap untuk dipergunakan sebagaimana mestinya.

REPORT UNTUK LABA RUGI

Langkah - Langkah untuk Membuat Report Laba Rugi untuk Sistem Aplikasi Mini Market Berbasis Desktop

Membuat Report sebenarnya mudah, namun jika pengguna tidak memahami dengan benar maka akan terlihat sulit. Pada bagian ini akan dijelaskan cara pembuatan dan isi source codenya.

1.     Setelah pembuatan Report selesai, sekarang pengguna dapat memodivikasi Template sesuai keinginan (Bisa mengganti gambar ataupun judul dari template tersebut).
2.     Di sebelah kiri terdapat tulisan Report Inspector, klik kanan pada judul Report yang tadi telah dibuat. Pilih Edit Query.
3.     Maka muncul tabel Report query. Isilah query tersebut sesuai dengan keperluan. Lalu klik OK.


Report Laba Rugi telah siap digunakan.

DEFINISI PROGRAM

1.      Definisi Software

Disini dijelaskan beberapa langkah-langkah dan script untuk membuat sebuah program sederhana. Tidak lupa software-software apa saja yang digunakan dalam menunjang pembuatan sistem program tersebut dipaparkan dengan jelas disini. Sistem program yang akan dibuat ialah Sistem Mini Market Berbasis Desktop.

2.      Software Penunjang atau Pendukung Sistem

Software atau perangkat lunak yang digunakan dalam proses penunjang jalannya sistem program yang akan dibuat ialah :

1. Sybase (PowerDesigner 15.2) merupakan tool pemodelan yang dikeluarkan oleh sybase untuk membangun sebuah sistem informasi yang cepat, terstruktur dan efektif. Pada Sybase Power Designer kita dapat melakukan generate database yang semula berupa ER-Diagram atau Conceptual Data Model (CDM) ke dalam bentuk Physical Data Model (PDM) yang selanjutnya bisa kita gunakan untuk membuat sistem basis data.

2. XAMPP 1.8.1 (MySQL) merupakan sebuah perangkat lunak yang dibagikan secara bebas dan mendukung banyak sistem operasi yang berfungsi sebagai server yang berdiri sendiri atau biasa di sebut (localhost), yang terdiri atas program Apache dan MySQL (yang biasanya digunakan hanya ini).

3. Netbeans 7.3 merupakan sebuah aplikasi Integrated Development Environment (IDE) yang berbasiskan Java dari Sun Microsystems yang berjalan di atas swing. Swing merupakan sebuah teknologi Java untuk pengembangan aplikasi desktop yang dapat berjalan pada berbagai macam platform seperti windows, linux, Mac OS X dan Solaris.

4. iReport 4.5.1 merupakan salah satu contoh aplikasi yang dapat digunakan sebagai fasilitator pembuatan report database yang bisa dikombinasikan dengan berbagai aplikasi pemrograman lainnya seperti Java Eclipse, Netbeans, dll.
Itulah penjelasan singkat sotware atau perangkat lunak. Semoga bisa bermanfaat bila pengguna belum tahu jelas apa kegunaan dari software-software di atas.

PEMBUATAN CDM (CONCEPTUAL DATA MODELING) DAN PDM (PHYSICAL DATA MODELING)

Langkah-langkah atau tutorial Pembuatan CDM (Conceptual Data Modeling) dan PDM (Physical Data Modeling)

Untuk membuat CDM dan PDM dibutuhkan sebuah software yaitu Sybase (PowerDesigner 15.2) untuk mendesign CDM dan PDM dari Sistem Mini Market Berbasis Desktop ini.
Inilah langkah-langkah dalam pembuatan CDM dan PDM dari Sistem Mini Market Berbasis Desktop, sebagai berikut :
1.      Membuka aplikasi Sybase (PowerDesigner 15.2).
2.      Memilih model Conceptual Data dari Category item di package Information. Memberi nama untuk workspacenya, misal Toko_Barang.
3.      Mendesign CDM sesuai kebutuhan. Inilah design Sistem Mini Market Berbasis Desktop yang akan digunakan nantinya.
4.      Setelah membuat Conceptual datanya, CDM tadi di generate supaya menjadi PDM (Physical Data Modeling) dengan cara :
                        1.      Pilih Tool pada Menubar.
                        2.      Klik Generate Physical Data Model.
                        3.      Lalu klik OK.
5.      Setelah ter-Generate maka design model tadi berubah menjadi seperti berikut.
Itulah langkah-langkah dari pembuatan CDM dan PDM untuk Sistem Mini Market Berbasis Desktop.



PEMBUATAN DATABASE MENGGUNAKAN MYSQL

Membuat Database Menggunakan MySQL.

  Untuk mengaktifkan databasenya perlu meng-import hasil dari PDM yang telah ter-generate tadi dengan cara sebagai berikut :
1.    Membuka aplikasi XAMPP seperti gambar di bawah ini.
2.    Jika Apache danMySQL telah aktif, maka buka aplikasi browser dan tulis pada Addressbar seperti ini http://localhost/phpmyadmin/
3.    Pilih menu Import untuk meng-import database dari Toko_Barang.
4.    Pada File to Import pilih file yang akan di import. Misalnya Toko_Barang.sql

5.    Setelah di import klik Go. Maka Toko_Barang.sql tadi telah aktif dan bisa digunakan.
6.    Untuk melihat database dari Toko_Barang.sql tadi cukup pilih nama dari database tadi, yaitu Toko_Barang sebagai berikut.
7.    Jika ingin melihat designer dari database Toko_Barang.sql dapat dilakukan dengan cara :
1.      Pilih More pada Menubar.
2.      Lalu pilih Designer, maka akan muncul design dari database tadi.
Database dari Toko_Barang telah siap untuk dioperasikan oleh pengguna sesuai dengan apa yang akan dikerjakan dengan cara memanggil database yang ada ke dalam java.

PEMBUATAN KONEKSI DALAM APLIKASI NETBEANS

Pembuatan Sistem Program berupa Script menggunakan Pemrograman Java Netbeans.

1. Pertama yang harus dilakukan adalah membuka aplikasi dari Netbeans.
2. Setelah terbuka buat project baru. Misal nama project Toko_Barang.
3. Kemudian membuat kelas kunciKoneksi dan kelas Koneksi untuk mengkoneksikan database dengan program yang akan dibuat.

Inilah isi dari class kunciKoneksi :
package Toko.Koneksi;
/**
 *
 * @author LitaQuintha
 */
public interface kunciKoneksi {
    String driver="com.mysql.jdbc.Driver";
    String url="jdbc:mysql://localhost:3306/toko_barang";
    String user="root";
    String password="";
}

Keterangan :
String driver="com.mysql.jdbc.Driver"; ini digunakan untuk memanggil driver jdbc.
String url="jdbc:mysql://localhost:3306/toko_barang"; untuk mengkoneksikan database ke setiap aplikasi.

Kemudian membuat kelas Koneksinya :
package Toko.Koneksi;
import java.awt.HeadlessException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import javax.swing.JOptionPane;

public class Koneksi implements kunciKoneksi {
    public Connection conn ;

  public Koneksi () {
  try {
  Class.forName(driver).newInstance();
  conn = DriverManager.getConnection(url, user, password);

  }
catch (ClassNotFoundException | InstantiationException | IllegalAccessException | SQLException | HeadlessException e)
  {
      JOptionPane.showMessageDialog(null, "error di koneksi"+e.getMessage());
  }
  }
}

Keterangan :
import java.awt.HeadlessException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import javax.swing.JOptionPane;

import diatas ini digunakan untuk menampilkan library.

Script koneksi tersebut sangatlah berpengaruh dalam pembuatan sistem aplikasi ini, sebab jika script tersebut tidak ada maka setiap tabel yang ada pada database tidak dapat di panggil atau dijalankan.

LANGKAH - LANGKAH PEMBUATAN FORM BARU UNTUK SISTEM MINI MARKET MENGGUNAKAN NETBEANS

Langkah - Langkah Membuat Form Baru menggunakan Netbeans

      Penjelasan pembuatan form ada pada halaman ini. Membuat form baru tidaklah sesulit yang dibayangkan.

Untuk form, inilah langkah-langkah untuk membuatnya :
Permisalan :
1. Klik kanan pada Project, pilih New, lalu klik JFrame Form.
2. Setelah itu muncul tabel pemberitahuan, disitu diperuntukkan untuk member nama pada Class Name. Lalu klik Finish.
3. Form tersebut telah siap untuk dimodivikasi atau diisi sesuai keinginan pengguna.

FORM KATEGORI UNTUK SISTEM

Langkah - Langkah Membuat Form Kategori 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 Pertama :
Form Kategori
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 :
Text Field dari Label Kategori : txtkategori
Text Field dari Label Deskripsi : txtdeskripsi
Table : tabelkategori
Button dari Home : bHome
Button dari Insert : bInsert
Button dari Delete : bDelete

Untuk bisa menjalankan form di atas dibutuhkan script sebagai berikut :

package toko_barang;

#memanggil library
import Toko.Koneksi.Koneksi;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

public class Kategori extends javax.swing.JFrame {
Koneksi koneksi;
Statement statement;
ResultSet resultset;
Koneksi conn;
private String iddelet;
public static int kodeLogin;
public Kategori() {

# supaya program bisa dijalankan, data yang dibutuhkan perlu dicantumkan pada konstruktor di bawah ini
 initComponents();
 setResizable(false);
 koneksi=new Koneksi();
       Select();
 }

private void Select(){
       # member nama pada tabel
       String header[]={"KATEGORI","DESKRIPSI"};
       DefaultTableModel defaultTableModel=new DefaultTableModel(null, header);
       tabelkategori.setModel(defaultTableModel);

       int baris=tabelkategori.getSelectedRow();
        for (int i = 0; i < baris; i++) {
            defaultTableModel.removeRow(i);
        }
        # memanggil database tabel kategori dari MySQL
        String sql="select * from kategori";

        try{
        statement=koneksi.conn.createStatement(); 
        resultset=statement.executeQuery(sql);
        while (resultset.next()){

         # untuk mengisi jumlah row yang dibutuhkan sesuai dengan String yang ditulis dibawah
         String kategori=resultset.getString(1);
         String deskripsi=resultset.getString(2);
         Object isi[]={kategori,deskripsi};
         defaultTableModel.addRow(isi);
        }  

    }catch (Exception e){
        # menampilkan pesan (bila ada error akan ketahuan)
        JOptionPane.showMessageDialog(null, e.getMessage());
        System.err.println(""+e.getMessage());
    }
    }

# untuk menginsert data pada tabel dengan mengklik Button Insert
private void Insert(){
        String kategori=txtkategori.getText();
        String deskripsi=txtdeskripsi.getText().toString();
       String sql="insert into kategori values('"+ kategori +"','"+ deskripsi +"')";

        try{
        statement.executeUpdate(sql);
        }
        catch(Exception e){
      # menampilkan pesan (bila ada error akan ketahuan)
       JOptionPane.showMessageDialog(null, e.getMessage());
       }
      }

# untuk mendelete data yang dipilih dengan mengklik Button Delete
private void Delete(){
       String sql="delete from kategori where kategori ='"+txtkategori.getText()+"'";
       try{
       statement.executeUpdate(sql);
       }catch(Exception e){

# menampilkan pesan (bila ada error akan ketahuan)
       JOptionPane.showMessageDialog(null, "Data sudah terpakai di tabel Barang");
      }
     }

# untuk membersihkan kotak text field setelah melakukan proses (Insert dan Delete)
private void Clear(){
    txtkategori.setText("");
    txtdeskripsi.setText("");
    }

Supaya action-action pada form yang telah dibuat bisa berfungsi, dibutuhkan script sebagai berikut :

Button Insert

private void bInsertActionPerformed(java.awt.event.ActionEvent evt) {                                        
       if (txtkategori.getText().equals("") || txtdeskripsi.getText().equals("")) { 
                 JOptionPane.showMessageDialog(null, "lengkapi dulu inputannya"); 
             } 
      else{ 
             Insert() ;
             Select(); 
            Clear() ;
          } 
       }
Button Delete

private void bDeleteActionPerformed(java.awt.event.ActionEvent evt) {                                        
           String idkategori=txtkategori.getText();
        if (txtkategori.getText().equals("")) {
            JOptionPane.showMessageDialog(null, "pilih dulu baris yang akan dihapus");            
        }
        else if (idkategori.equals(iddelet=tabelkategori.getValueAt(tabelkategori.getSelectedRow(), 0).toString())){
            int hasil = JOptionPane.showConfirmDialog(null, "apakah anda ingin menghapus id kategori: "+idkategori, null, JOptionPane.YES_NO_OPTION); 
            if(hasil==JOptionPane.YES_OPTION){
                Delete();
                Select();
                Clear();
            }
            else if (hasil==JOptionPane.NO_OPTION){
                idkategori=null;
                Clear();
              }
          }
       }
Mouse Click tabelkategori

private void tabelkategoriMouseClicked(java.awt.event.MouseEvent evt) {                                           
        iddelet=tabelkategori.getValueAt(tabelkategori.getSelectedRow(), 0).toString();
        txtkategori.setText(iddelet);
       }
Button Home

private void bHomeActionPerformed(java.awt.event.ActionEvent evt) {                                      
        // TODO add your handling code here:
        new MenuUtama(Form_Login.kondisiLogin).setVisible(true);
        this.dispose();
    }

# otak atau yang menjalankan form ini, tanpa main form tidak bisa jalan (errror)
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Kategori().setVisible(true);
            }
        });
    }
}

Datos personales