Monday, July 7, 2014

Pada tugas UAS yang kedua ini saya akan membuat aplikasi Trasaksi Tiket Kereta Api sederhana.


Program Pendukung :
-          Netbeans
-          Xampp

Step 1
Buka localhost/phpmyadmin di firefox kemudian buat database baru dengan nama dbkereta.







Step 2
Buat tabel dengan nama tbtiket dan isikan 9 untuk jumlah kolom yang akan dibuat.

 



Step 3
Kemudian isikan ke 9 kolom yang telah dibuat seperti gambar berikut :











Jika sudah silahkan tekan tombol Save untuk menyimpan field yang telah kita isikan.
Apabila langkah diatas telah dilalui berati database telah selesai dibuat dan siap digunakan. Langkah selanjutnya adalah membuat Master/Detail Sample Form di NetBeans.

Step 3
Sebelum membuat form kita buka Program NetBeans, selanjutnya klik File New ProjectJavaJava Application, kemudian berikan nama project dengan nama UAS_2.

Setelah project sudah dibuat, kemudian buat file Master/Detail Sample Form seperti gambar berikut: 


























Step 4
Tunggu sampai selesai, setelah selesai maka akan muncul form seperti gambar berikut :




















Step 5
Tambahkan field form di atas seperti gambar berikut :














 
  1. Setelah sudah di tambahkan, klik kanan pada Combo Kode Kereta Api – Properties – find Properties Model – isi seperti ini “- Pilih Kode -, TR111, TR222, TR333 
  2. Kemudian klik kanan pada Combo Jurusan – Properties – find Properties Model – isi seperti ini “- Pilih Jurusan -, Gambir - Madiun, Gambir - Semarang, Gambir - Yogyakarta, Pasar Senen - Madiun, Pasar Senen - Solo, Pasar Senen - Tegal, Tanah Abang - Semarang, Tanah Abang - Solo, Tanah Abang - Yogyakarta"
Step 6
Code – 1 















Code – 2
Kode dibawah ini adalah function kode untuk memilih Kode Kereta Api, jika kita pilih Kode Kereta Api maka Nama Kereta Api akan terisi otomatis dan Jurusan akan berubah sesuai Kode Kereta Api yang kita pilih.
private void kode() {
        String kode = String.valueOf(cmbKode.getSelectedItem());
        switch(kode) {
            case "- Pilih Kode -" : 
                cmbJurusan.removeAllItems();
                cmbJurusan.addItem("- Pilih Jurusan -");
                cmbJurusan.addItem("Gambir - Madiun");
                cmbJurusan.addItem("Gambir - Semarang");
                cmbJurusan.addItem("Gambir - Yogyakarta");                
                cmbJurusan.addItem("Pasar Senen - Madiun");
                cmbJurusan.addItem("Pasar Senen - Solo");
                cmbJurusan.addItem("Pasar Senen - Tegal");
                cmbJurusan.addItem("Tanah Abang - Semarang");
                cmbJurusan.addItem("Tanah Abang - Solo");
                cmbJurusan.addItem("Tanah Abang - Yogyakarta");                
            break;
            case "TR111" :
                namaKeretaApiField.setText("Mata Maja");
                cmbJurusan.removeAllItems();
                cmbJurusan.addItem("- Pilih Jurusan -");
                cmbJurusan.addItem("Pasar Senen - Madiun");
                cmbJurusan.addItem("Pasar Senen - Solo");
                cmbJurusan.addItem("Pasar Senen - Tegal");
            break;
            case "TR222" :
                namaKeretaApiField.setText("Brantas");
                cmbJurusan.removeAllItems();
                cmbJurusan.addItem("- Pilih Jurusan -");
                cmbJurusan.addItem("Tanah Abang - Semarang");
                cmbJurusan.addItem("Tanah Abang - Solo");
                cmbJurusan.addItem("Tanah Abang - Yogyakarta");
            break;
            case "TR333" :
                namaKeretaApiField.setText("Bengawan");
                cmbJurusan.removeAllItems();
                cmbJurusan.addItem("- Pilih Jurusan -");
                cmbJurusan.addItem("Gambir - Madiun");
                cmbJurusan.addItem("Gambir - Semarang");
                cmbJurusan.addItem("Gambir - Yogyakarta");
            break;
        }
        if(kode == "- Pilih Kode -") {
            kodeKeretaApiField.setText("");
            namaKeretaApiField.setText("");
        } else {
            kodeKeretaApiField.setText(kode);
        }
    }
Code – 3
Kode dibawah ini adalah function jurusan untuk memilih Jurusan.
private void jurusan() {
        int jrs = cmbJurusan.getSelectedIndex();
        String jrsn = String.valueOf(cmbJurusan.getSelectedItem());
        switch(jrs) {
            case 0: tfTiket = 0; break;
            case 1: tfTiket = 150000; break;
            case 2: tfTiket = 125000; break; 
            case 3: tfTiket = 100000; break;
            case 4: tfTiket = 125000; break;
            case 5: tfTiket = 100000; break; 
            case 6: tfTiket = 75000; break;
            case 7: tfTiket = 110000; break;
            case 8: tfTiket = 125000; break; 
            case 9: tfTiket = 100000; break;
        }
        if(jrsn == "- Pilih Jurusan -") {
            jurusanField.setText("");
        } else {
            jurusanField.setText(jrsn);
        }
    }
Code – 4
Kode dibawah ini adalah function anak untuk memilih Jenis Penumpang Anak - anak.
private void anak() {
        try {
            if(jenis1.isSelected() == true) {
                jenisPenumpangField.setText("Anak - anak");
                resTfTiket = String.valueOf(tfTiket);
                tarifTiketField.setText(resTfTiket);
            }
        } catch(Exception e) { }
    }
Code – 5
Kode dibawah ini adalah function dewasa untuk memilih Jenis Penumpang Dewasa.
private void dewasa() {
        try {
            if(jenis2.isSelected() == true) {
                jenisPenumpangField.setText("Dewasa");
                tfTiket    = tfTiket+10000;
                resTfTiket = String.valueOf(tfTiket);
                tarifTiketField.setText(resTfTiket);
            }
        } catch(Exception e) { }    
    }
Code – 6
Kode dibawah ini adalah function clear untuk membersihkan field pada form.
private void clear() {
        jurusanField.setText("");
        jenis.clearSelection();
        jenisPenumpangField.setText("");
        tarifTiketField.setText("");
        qtyField.setText("");
        totalField.setText("");
    }
Code – 7
Kode dibawah ini adalah function event Kode Kereta Api untuk memilih Kode Kereta Api.
private void cmbKodeItemStateChanged(java.awt.event.ItemEvent evt) {                                         
        try {
            clear();
            kode();
            if(jenis1.isSelected() == true) {
                anak();
            } else {
                dewasa();
            }
        } catch(Exception e) {}
    }
Code – 8
Kode dibawah ini adalah function event Jurusan untuk memilih Jurusan.
private void cmbJurusanItemStateChanged(java.awt.event.ItemEvent evt) {                                            
        try {
            jurusan();
            if(jenis1.isSelected() == true) {
                anak();
            } else {
                dewasa();
            }

        } catch(Exception e) {}
    }
Code – 9
Kode dibawah ini adalah function event Anak untuk memilih Jenis Penumpang Anak.
private void jenis1ActionPerformed(java.awt.event.ActionEvent evt) {                                       
        try {
            anak();
        } catch(Exception e) { }
    }
Code – 10
Kode dibawah ini adalah function event Dewasa untuk memilih Jenis Penumpang Dewasa.
private void jenis2ActionPerformed(java.awt.event.ActionEvent evt) {                                       
        try {
            dewasa();
        } catch(Exception e) { }
}
Code – 11
Kode dibawah ini adalah function event Quantity, jika kita menuliskan quantity pada field qty maka field Total akan otamatis terhitung.
private void qtyFieldFocusLost(java.awt.event.FocusEvent evt) {                                   
        int qty = Integer.parseInt(qtyField.getText());
        tfTiket = tfTiket*qty;
        resTfTiket = String.valueOf(tfTiket);
        totalField.setText(resTfTiket);
    }
Code – 12
Kode dibawah ini adalah function event Save, ketika kita sudah selesai mengisi form tersebut dan form tersebut belum lengkap Nama Penumpang nya maka aka nada alert “Silahkah isi Nama Penumpang terlebih dahulu!”.
private void saveButtonActionPerformed(java.awt.event.ActionEvent evt) {                                           
        try {
            if(namaPenumpangField.getText().equals("")) {
                JOptionPane.showMessageDialog(null, "Silahkah isi Nama Penumpang terlebih dahulu!");
            } else {
                entityManager.getTransaction().commit();
                entityManager.getTransaction().begin();
            }
        } catch (RollbackException rex) {
            rex.printStackTrace();
            entityManager.getTransaction().begin();
            List merged = new ArrayList(list.size());
            for (uas_2.Tbtiket t : list) {
                merged.add(entityManager.merge(t));
            }
            list.clear();
            list.addAll(merged);
        }
    }
Newer Post
Previous
This is the last post.