BAB III PEMBAHASAN · bulanan, dan tahunan. Setiap kali melakukan transaksi, bagian keuangan akan...

Post on 07-Dec-2020

9 views 0 download

Transcript of BAB III PEMBAHASAN · bulanan, dan tahunan. Setiap kali melakukan transaksi, bagian keuangan akan...

BAB III

PEMBAHASAN

1.1. Tinjauan Perusahaan

Instansi merupakan suatu sistem yang bersifat fisik yang dikelola dengan

mengunakan suatu sistem konseptual atau informasi.Tinjauan instansi merupakan

hal-hal mengenai sejarah terbentuknya instansi, struktur organisasi, serta fungsi

struktur organisasi tersebut.

1.1.1. Sejarah Perusahaan

PT. Nayra Nusa Raya dibentuk oleh menteri hukum dan hak asasi manusia

Republik Indonesia pada tanggal 25 mei 2016. Pendirinya yaitu Bapak Supriyadi

yang menjadi pemilik perusahaan hingga sekarang ini.PT. Nayra Nusa Raya

beralamat di Jl. Tabrani Ahmad Gg. Zuriat No.3 Kel. Sungaijawi Dalam Kec.

Pontianak Barat merupakan perusahaan yang bergerak dibidang perdagangan dan

jasa.

PT.Nayra Nusa Raya merupakan distributor barang-barang keperluan PLN

seperti pengadaan kabel ACSR.PT.Nayra Nusa Raya pasti ingin barangnya dapat

terjual dengan lancar dan mendapatkan keuntungan sesuai yang diharapkan, agar

usaha dagang tersebut tetap eksis dan berkembang, diperlukan strategi dagang dan

pengelolaan yang baik.Strategi penjualan yang dimaksud berupa peningkatan kualitas

marketing, manajemen, pelayanan, dan lain-lain termasukpenerapan teknologi

informasi diperusahaan tersebut.

1.1.2. Strukur Organisasi dan Fungsi

Sumber : PT. Nayra Nusa Raya

Gambar III.1.

Struktur Organisasi

1.1.3. Uraian Tugas dan Tanggungjawab

1. Direktur

Memimpin perusahaan dengan membuat kebijakan-kebijakan perusahaan dan

memilih, menentukan, mengawasi pekerjaan karyawan serta mengatur perusahaan

secara keseluruhan untuk kelangsungan kehidupan perusahaan agar dapat terus maju

dan berkembang.

2. Komanditer

Merencanakan dan mengkoordinir, memimpin dan mengawasi pekerjaan

karyawan pada perusahaan untuk kelangsungan perusahaan agar terus maju dan

berkembang.

3. Keuangan

Memiliki kewenangan sekaligus kewajiban mengatur dana perusahaan agar

efektif digunakan untuk memaksimalkan keuangan usaha sekaligus menjaga

penggunaan dana tersebut secara efisien.

4. Staf

Mempersiapkan instruksi tertulis dan dokumen-dokumen lainnya yang

diperlukan untuk melaksanakan kegiatan berupa realisasi dari rancangan yang telah

ditetapkan.

5. Sertifikat Kopetensi

Meningkatkan prospek karier, meningkatkan keselamatan pribadi tenaga kerja

serta penanggung jawab teknik.

6. K3

Bertanggung jawab dalam keselamatan dan kesehatan kerja pada karyawan.

7. Sertifikat Kopetensi 1

Penanggung jawab keahlian terhadap anggota Saluran Kabel Tegangan

Menegah (SKTM).

8. Sertifikat Kompetensi 2

Penanggung jawab anggota dilapangan.

9. Petugas Lapangan

Petugas Lapangan yang mengkoordinir para anggota.

10. Anggota

Pekerja PLN yang bertugas langsung kelapangan.

1.2. Tinjauan Kasus

PT. Nayra Nusa Raya merupakan distributor barang-barang keperluan PLN

seperti pengadaan kabel ACSR, perdagangan produk lainnya termasuk barang sisa

dan potongan.Mengenai proses pembayaran konsumen kepada pimpinan melalui

petugas kasir, pihak pimpinan memiliki wewenang dalam proses penerimaan laporan

dan pengelolaannya.

Petugas bagian keuangan bertanggungjawab dalam pembuatan nota transaksi

biaya penjualan juga membuat laporan biaya operasional pada perusahaan yang

dilakukan dalam mengelola adminitrasi keuangan berdasarkan perintah pimpinan.

Berkaitan dengan proses pembuatan nota pembelian dan perhitungan jumlah

biaya pengeluaran serta biaya operasional perusahaan yang dicatat oleh bagian

keuangan dalam bentuk buku rekapitulasi di PT. Nayra Nusa Raya sering terjadi

permasalahan berupa ketidakcocokan data ini disebabkan akibat kesalahan manusia

(humam error) dimana terjadi kelalaian yang dilakukan oleh bagian keuangan,

kelalaian yang dilakukan terjadi ketika melakukan pelayanan saat banyaknya

transaksi, sehingga bagian keuangan sering melakukan kesalahan karena kurang teliti

dalam pembuatan nota, perhitungan jumlah total dan pencatatan data ke buku arsip

biaya.

Pada PT. Nayra Nusa Raya juga belum menggunakan sistem komputerisasi,

sehingga jika diadakan pencarian data akan mengalami kesulitan dan membutuhkan

waktu yang cukup lama. Oleh karena itu diperlukannya sebuah sistem yang

terkomputerisasi sebagai pemecahan masalah dari sistem yang lama.

1.2.1. Proses Bisnis Sistem Berjalan

Proses bisnis sistem yang sedang berjalan bertujuan untuk mengetahui lebih

jelas bagaimana kerja suatu sistem dan mengetahui masalah yang dihadapi sistem.

Bagian keuangan melakukan pencatatan hasil biaya operasional harian,

bulanan, dan tahunan. Setiap kali melakukan transaksi, bagian keuangan akan

melakukan pencatatan dan direkap didalam buku, setiap bulan bagian keuangan akan

membuat laporan kemudian di cetak dan diserahkan kepada Direktur. Direktur

memeriksa laporan dan menyetujui jika sudah tidak ada permasalahan dalam

pencatatan tersebut.

1.2.2. Activity diagram

Activity diagram ini untuk menggambarkan rangkaian aliran aktivitas proses

sistem berjalan biaya operasional pada PT. Nayra Nusa Raya. Berikut adalah gambar

activity diagram yang sedang berjalan:

Gambar III.2.

Activity diagram Ilustrasi Sistem Berjalan

1.2.3. Dokumen Masukan

Berikut akan diuraikan bentuk dokumen yang masuk ke dalam sistem:

1. Nama Dokumen : Nota pembelian barang

Fungsi : Untuk mengetahui jumlah pengeluarandana

Sumber : Vendor

Tujuan : Direktur

Media : Kertas

Frekuensi : Setiap ada transaksi pembelian

Jumlah : Satu lembar

Bentuk : Lampiran A-1

2. Nama Dokumen : Struk pembayaran tagihan

Fungsi : Untuk mengetahui jumlah biaya-biaya

Sumber : Kepala Divisi Keuangan

Tujuan : Direktur

Media : Kertas

Frekuensi : Setiap akhir bulan

Jumlah : Tiga lembar

Bentuk : Lampiran A-2

3. Nama Dokumen : Catatan pembayaran gaji

Fungsi : Untuk mengetahui jumlah dana

Sumber : Bagian Keuangan

Tujuan : Direktur

Media : Kertas

Frekuensi : Setiap minggu

Jumlah : Satu lembar

Bentuk : Lampiran A-3

1.2.4. Dokumen Keluaran

Berikut akan diuraikan bentuk dokumen yang keluar ke dalam sistem:

1. Nama Dokumen : Laporan biaya

Fungsi : Untuk mengetahui jumlah biaya

Sumber : Bagian keuangan

Tujuan : Direktur

Media : Kertas

Frekuensi : Setiap akhir bulan

Jumlah : Satu lembar

Bentuk : Lampiran B-1

1.2.5. Permasalahan Pokok

1. Perusahaan saat ini masih menggunakan jasa pihak ketiga dalam penyusunan

laporan akuntansi dan belum adanya sistem akuntansi di internal perusahaan.

2. Pengolahan data memerlukan tenaga maupun waktu yang cukup lama,dan

masih menggunakan catatan buku lalu dipindahkan kedalam Microsoft Office

Excel.

3. Penyimpanan data tidak efektif, sehingga dapat mengakibatkan kerusakan

data dan sulit dalam pencarian data tersebut.

4. Keamanan data belum terjaga dengan baik, sehingga bisa mengakibatkan data

mudah diakses oleh siapa saja.

1.2.6. Pemecahan Masalah

Berdasarkan masalah yang ditemukan, maka penulis memberikan alternatif

pemecahan masalah seperti :

1. Membangun suatu sistem akuntansi biaya operasional, dalam hal ini minimal

terdapat keluaran dalam bentuk jurnal dan buku besar sebagai langkah awal

penyusunan laporan keuangan, serta meminimalkan biaya yang dikeluarkan

untuk pihak ketiga.

2. Membangun sistem pencatatan biaya operasional di PT. Nayra Nusa Raya

dengan menggunakan aplikasi agar memudahkan karyawanmengurangi

kesalahan dalam pencatatan data.

3. Menggunakan aplikasi agar memudahkan karyawan dalam proses pencarian dan

penyimpanandata.

4. Dengan menggunakan aplikasi, data tidak mudah diakses oleh orang lain melain

kan penggunanya saja.

1.3. Analisa Kebutuhan Sofware

Kebutuhan softwaresangatlah diperlukan dalam sebuah badan usaha, dimana

software bisa mempermudah dalam pengolahan data seperti mempermudah pekerjaan

bagian keuangan mengefisienkan waktu dalam pembuatan laporan.

PT.Nayra Nusa Rayamembutuhkan sebuah software atau aplikasi yang

bisamempermudah dalam pengerjaan pengolahan data biaya operasional.Oleh sebab

itu, dalam penjelasan ini penulis ingin mengajukan rancangan sistem usulan yang

dapat mempermudahbagian keuangan dalam mengolah data biaya operasional.

1.3.1. Analisis Kebutuhan

Berdasarkan sistem pencatatan biaya operasional yang berjalan pada PT.

Nayra Nusa Rayamemerlukan beberapa form untuk interface user. Keamanan juga

diperlukan untuk penggunaan sistem usulan sehingga nantinya keamanan data dapat

terjaga.

Berdasarkan prosedur sistem usulan tersebut, maka akan dibutuhkan beberapa

form untuk mengolah data sistem dan laporan pengeluaran biaya operasional pada

PT. Nayra Nusa Raya. Berikut form yang dibutuhkan:

A. Bagian Keuangan :

A1. Mengolah DataLogin

A2. Mengolah Data Jenis Biaya

A3. Mengolah Data Transaksi Biaya Operasional

A4. Mengolah Data Akun

A5. Mengolah dan Mencetak Laporan

B. Direktur

B1. Mengolah Data Login

B2. Mengolah Data User

B3. Melihat Data Transaksi Biaya Operasional

B4. Memeriksa Laporan Jurnal

1.3.2. Use Case Diagram

Dari proses sistem berjalan yang telah dianalisa, penulis dapat memberikan

rancangan bangun sisem dalam bentuk gambaran. Bentuk rancangan sistem untuk

pengeluaran biaya operasional pada PT. Nayra Nusa Rayadalam bentuk Use Case

Diagram, sebagai berikut:

1. Use Case Diagram Halaman Bagian Keuangan

Gambar III.3.

Use Case Diagram Rancangan Sistem

2. Use Case Diagram Halaman Direktur

Gambar.III.4.

Use Case Diagram Rancangan Sistem

Tabel III.1 Deskripsi Use Case Bagian Keuangan

Use Case NarativeHalaman Bagian Keuangan

Kebutuhan : A1-A4

Tujuan Bagian keuangan bisa melihat data yang ada didalam

sistem halaman bagian keuangan dengan melakukan login.

Deskripsi

Sistem ini memungkinkan actor untuk masuk kehalaman bagian keuangan yang didalamnya bagian keuangan dapat

mengolah data user, mengolah data jenis biaya operasional,

mengolah data transaksi biaya operasional, mengolah data transaksi biaya operasional, mengolah data akun dan

mencetak laporan jurnal.

Skenario Utama

Aktor Bagian Keuangan

Kondisi Awal Aktor membuka aplikasi halaman bagian keuangan.

Aksi Aktor Reaksi Sistem

1. Aktor melakukan

Login.

2. Aktor memilih menu

utama.

Sistem ini akan menampilkan tampilan login dan

didalamnya bagian keuangan akan memasukan Username

dan Password. Sistem ini akan menampilkan tampilan menu utama dan

didalamnya bagian keuangan akan memilih menu yang

diinginkan.

3. Aktor memilih data

User

4. Aktor mengolah data

jenisbiayaoperasional

5. Aktor mengolah data

transaksi biaya

operasional.

6. Aktor mengolah data

Sistem ini akan menampilkan tampilan login dan

didalamnya bagian keuangan akan memasukan username

dan password. Sistem ini akan menampilkan tampilan jenis biaya

operasional, dan tampilan tersebut akan diisi oleh bagian

keuangan.

Sistem ini akan menampilakan informasi tampilan data transaksi biaya operasional yang telah diisi dan dihitung

oleh bagian keuangan.

Sistem ini akan menampilkan tampilan akun dan akan diisi oleh bagian keuangan.

Sistem ini akan menampilkan form data jurnal, lalu bagian

keuangan akan mengisi data dan mencetak laporan jurnal.

akun.

7. Aktor mengolah data

jurnal.

Kondisi Akhir Jika perintah sesuai maka sistem akan masuk kedalam aplikasi dan menampilkan apa yang diinginkan.

Tabel III.2 Deskripsi Use Case Halaman Direktur

Use Case Diagram Halaman Direktur

Tujuan Direktur akan melakukan login untuk melihat data yang

telah diolah bagian keuangan didalam sistem tersebut.

Deskripsi Sistem ini memungkinkan direktur untuk masuk kedalam sistem untuk memeriksa semua data, khususnya data-data

yang telah dibuat bagian keuangan yaitu data jenis biaya

operasional, data transaksi biaya operasional, data akun dan data jurnal.

Skenario

Kebutuhan : B1-B4

Aktor Direktur

Aksi Aktor Reaksi Sistem

1. Aktor

melakukanlogin.

Sistem ini akan menampilkan tampilan login yang

mana didalamnya direktur akan memasukan

username dan password

2. Aktor

memilih menu utama.

Sistem ini akan menampilkan tampilan menu utama

dan didalamnya direktur akan memilih menu yang

diinginkan.

3. Aktor

memilih data user

Sistem ini akan menampilkan informasi data user dan diisi oleh direktur.

4. Aktor memilih data

transaksi biaya

Sistem ini akan menampilkan informasi tampilan

data transaksi jenis biaya operasional yang telah diisi dan dihitung, lalu direktur akan melihat laporan

biaya operasional tersebut.

operasional.

5. Aktor

memilih data jurnal

Sistem ini akan menampilkan data jurnal yang akan

diperiksa kembali oleh direktur.

Kondisi Akhir Jika perintah sesuai maka sistem akan masuk

kedalam aplikasi dan menampilkan apa yang

diinginkan.

1.3.3. Activity Diagram

Activity Diagram adalah diagram yang menggambarkan worlflow(aliran

kerja) atau aktivitas dari sebuah sistem atau proses.

1. Activity Diagram Bagian Login

Berikut ini adalah proses usermenjalankan proses login:

Gambar III.5.

Activity Diagram Bagian Login

2. Activity Diagram Halaman Menu utama

Pada proses ini memungkinkanuser untuk masuk kemenu utama.

Gambar III.6.

Activity Diagram BagianMenu utama

3. Activity Diagram Halaman Data User

Pada proses ini user untuk masuk ke data user

Gambar.III.7.

Activity Diagram Halaman Data User

4. Activity Diagram Halaman Data jenis Biaya Operasional

Pada proses ini user mengimput jenis biaya

Gambar.III.8.

Activity Diagram Halaman Data jenis Biaya Operasional

5. Activity DiagramHalaman Data Transaksi Biaya Operasional

Pada proses ini user mengelola data transaksi biaya operasional

Gambar.III.9.

ActivityDiagram Halaman Data Transaksi Biaya Operasional

6. Activity Diagram Halaman Data Akun

Pada proses ini user mengelola data akun

Gambar.III.10.

Activity DiagramHalaman Data Akun

7. Activity DiagramHalaman Data Jurnal

Pada proses ini user membuat data jurnal

Gambar.III.11.

Activity DiagramHalaman Data Jurnal

1.4. Desain

Didalam rancangan sistem diperlukan suatu gambaran seperti ERD, LRSdan

Spesifikasi file.

3.4.1. Entity Relationship Diagram (ERD)

Gambar III.12.

Entity Relationship Diagram (ERD)

3.4.2. Logical Record Structure (LRS)

Gambar III.13.

Logical Record Structure (LRS)

3.4.3. Spesifikasi File

Adapun spesifikasi file yang penulis gunakan dalam biaya operasional pada

PT. Nayra Nusa Raya Pontianak adalah sebagai berikut :

1. Spesifikasi File User

Nama File : Tabel User

Akronim: user

Tipe File : File Master

Organisasi File : Index Sequential

Akses File : Random

Media File : Hardisk

Panjang Record :63.byte

File Key : id_pengguna

Software : Mysql

Tabel III.3

Tabel Data User

No Elemen Data Akronim Type File Size Keterangan

1. 2.

3.

4.

Id Pengguna Nama Pengguna

Password

Hak Akses

id_pengguna nama_pengguna

password

hak_Akses

Varchar Varchar

Varchar

Varchar

10 25

8

20

Primary key

2. Spesifikasi FileJenis Biaya

Nama : Tabel Jenis Biaya

Akronim : jenis_biaya

Tipe File : File Master

Organisasi File : Index Sequential

Akses File : Random

Media File : Hardisk

Panjang Record :35.byte

File Key : kode_jenis

Software : Mysql

Tabel III.4

Tabel Data Jenis Biaya

No Elemen Data Akronim Type File Size Keterangan

1. 2.

Kode Biaya Nama Biaya

kode_biaya nama_biaya

Varchar Varchar

10 25

Primary key

3. Spesifikasi File Transaksi

Nama : Tabel Transaksi

Akronim : transaksi

Tipe File : File Master

Organisasi File : Index Sequential

Akses File : Random

Media File : Hardisk

Panjang Record :30.byte

File Key : no_transaksi

Software : Mysql

Tabel III.5

Tabel Data Transaksi

No Elemen Data Akronim Type File Size Keterangan

1.

2.

3 4.

5.

6.

No Trans

Tgl Trans

Tgl Input Kode Biaya

Jumlah Trans

No Bukti Trans

no_trans

tgl_trans

tgl_input kode_biaya

jumlah_trans

no_bukti_trans

Varchar

Date

Date Varchar

Double

Varchar

10

10

10

Primary key

4. Spesifikasi File Jurnal

Nama : Tabel Jurnal

Akronim : jurnal

Tipe File : File Master

Organisasi File : Index Sequential

Akses File : Random

Media File : Hardisk

Panjang Record :20.byte

File Key : no_jurnal

Software : Mysql

Tabel III.6

Tabel Data Jurnal

No Elemen Data Akronim Type File Size Keterangan

1. 2.

3.

4.

No Jurnal No Transaksi

Jumlah

Tanggal Input

Jurnal

no_jurnal no_transaksi

jumlah

tgl_input_jurnal

Varchar Varchar

Double

Date

10 10

Primary key

5. Spesifikasi File Akun

Nama : Tabel Akun

Akronim : akun

Tipe File : File Master

Organisasi File : Index Sequential

Akses File : Random

Media File : Hardisk

Panjang Record :35.byte

File Key : kode_akun

Software : Mysql

Tabel III.7

Tabel Data Akun

No Elemen Data Akronim Type File Size Keterangan

1. 2.

Kode Akun Nama Akun

kode_akun nama_akun

Varchar Varchar

10 25

Primary key

3.4.4. Sequence Diagram

Sequence Diagram adalah salah satu dari diagram yang ada pada UML,

Sequence diagram ini adalah diagram yang menggambarkan kolaborasi dinamis

antara sejumlah object. Kegunaannya untuk menunjukan rangkaian pesan yang

dikirim antara object juga interaksi antara object.

Adapun sequence diagram untuk biaya operasional pada PT. Nayra Nusa Raya

Pontianak sebagai berikut :

1. Sequence Diagram Halaman Login

Sumber :Hasil Penelitian (2018)

Gambar III.14

Sequence DiagramLogin

2. Sequence Diagram Transaksi

Sumber : Hasil Penelitian (2018)

Gambar III.15

Sequence DiagramTransaksi

3.4.5. Deployment Diagram

Deployment diagram adalah diagram yang digunakan untuk memetakan software ke

processing node.

Sumber : Rancangan (2018)

Gambar III.16Deployment Diagram

3.4.6. User Interface

Berikut ini merupakan tampilan rancangan sistem informasi akuntansi biaya

operasional pada PT. Nayra Nusa Raya Pontianak :

1. Form Login

Sumber : Rancangan (2018)

Gambar III.17 Tampilan Menu Login

2. Form Menu Utama

Sumber : Rancangan (2018)

Gambar III.18 Tampilan Menu Utama

3. Form User

Sumber : Rancangan (2018)

Gambar III.19 Tampilan Data Pengguna

4. Form Transaksi Biaya

Sumber : Rancangan (2018)

Gambar III.21 Tampilan Menu Transaksi Biaya

5. Form Jurnal

Sumber : Rancangan (2018)

Gambar III.22Tampilan Jurnal

6. Form Akun

Sumber : Rancangan (2018)

Gambar III.22 Tampilan Akun

7. Form Jurnal

Sumber : Rancangan (2018)

Gambar III.22 Tampilan Jurnal

8. FormBuku Besar

Sumber : Rancangan (2018)

Gambar III.22 Tampilan Buku Besar

9. Tampilan Laporan Jurnal Umum

Sumber : Rancangan (2018)

Gambar III.22 Tampilan Buku Besar

10. Tampilan Laporan Buku Besar

Sumber : Rancangan (2018)

Gambar III.22 Tampilan Buku Besar

1.5. Implementasi

1.5.1. Code Generation

A. Form Data Login

public void masuk() throws SQLException{

java.sql.Connection conn = new DBConnection().connect();

try{

String sql = "SELECT * FROM user where

nama_pengguna='"+jTextnama.getText()+"'"

+ "AND password='"+jPasswordField1.getText()+"'";

java.sql.Statement stmt= conn.createStatement();

java.sql.ResultSet rslt= stmt.executeQuery(sql);

while(rslt.next()){

nama_pengguna = rslt.getString("nama_pengguna");

hak_akses= rslt.getString("hak_akses");

}

if("0".equals(hak_akses)){

JOptionPane.showMessageDialog(this,"Selamat Datang Sdr/I =

"+nama_pengguna);

new MenuUtama().setVisible(true);

}

if("1".equals(hak_akses)){

JOptionPane.showMessageDialog(this,"Selamat Datang Sdr/I =

"+nama_pengguna);

new MenuUtama().setVisible(true);

}

if(hak_akses == null){

JOptionPane.showMessageDialog(null,"Anda Gagal

Login!!!","Peringatan",JOptionPane.WARNING_MESSAGE);

jTextnama.requestFocusInWindow();

jTextnama.setText("");

jPasswordField1.setText("");

}

}

catch(Exception ex){

}

B.Form Data Transaksi

public Transaksi() {

initComponents();

this.setLocationRelativeTo(null);

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

Dimension frameSize=this.getSize();

if(frameSize.height > screenSize.height){

frameSize.height=screenSize.height;

}

if(frameSize.width > screenSize.width) {

frameSize.width=screenSize.width;

}

this.setLocation((screenSize.width - frameSize.width) / 2,(screenSize.height =

screenSize.height) / 12);

Tampilkan();

auto_number();

tampil_auto();

jDateChooser1.getDate();

jDateChooser2.getDate();

}

private void Tabel(javax.swing.JTable tb, int lebar[] ) {

tb.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

int kolom=tb.getColumnCount();

for(int i=0;i < kolom;i++) {

javax.swing.table.TableColumn tbc=tb.getColumnModel().getColumn(i);

tbc.setPreferredWidth(lebar[i]);

tb.setRowHeight(17);

}

}

public void Tampilkan(){

Object[]

Baris={"No_Transaksi","No_Bukti_Transaksi","Kode_Biaya","Jumlah","Tgl_In

put","Tgl_Transaksi"};

DftTabMode1 = new DefaultTableModel(null, Baris);

table.setModel(DftTabMode1);

Tabel(table, new int[]{100,150,100,80,100,100});

for (int i = 0; i < table.getColumnCount(); i++) {

table.getColumnModel().getColumn(i);

}

//panggil method koneksi

java.sql.Connection conn = new DBConnection().connect();

//untuk menampilkan di table

try{

String sql="Select * from transaksi order by no_transaksi desc";

java.sql.Statement stmt=conn.createStatement();

java.sql.ResultSet rslt=stmt.executeQuery(sql);

while(rslt.next()){

String no_transaksi=rslt.getString("no_transaksi");

String tgl_transaksi=rslt.getString("tgl_bukti_trans");

String tgl_input=rslt.getString("tgl_input");

String kode_biaya=rslt.getString("kode_biaya");

String jumlah=rslt.getString("jumlah_trans");

String no_bukti_transaksi=rslt.getString("no_bukti_trans");

String[]

dataField={no_transaksi,tgl_transaksi,tgl_input,kode_biaya,jumlah,no_bukti_transaksi};

DftTabMode1.addRow(dataField);

}

}catch(Exception ex){}

}

public void auto_number(){

SimpleDateFormat d3 = new SimpleDateFormat("ddMMss");

jTextNoTrans.setText("AK-"+d3.format( new Date()));

}

public void tampil_auto(){

java.sql.Connection conn = new DBConnection().connect();

try {

String sql="select * from jenis_biaya order by kode_biaya desc ";

java.sql.Statement stmt=conn.createStatement();

java.sql.ResultSet rslt=stmt.executeQuery(sql);

while(rslt.next()){

jComboBox2.addItem(rslt.getString("kode_biaya"));

}

rslt.close();

}

catch (SQLException ex) {

}

}

@SuppressWarnings("unchecked")

// <editor-fold defaultstate="collapsed" desc="Generated Code">

private void initComponents() {

jScrollPane1 = new javax.swing.JScrollPane();

jTable1 = new javax.swing.JTable();

backgroundbiru1 = new kelas.backgroundbiru();

panelAlpha1 = new kelas.PanelAlpha();

jLabel1 = new javax.swing.JLabel();

panelWarnaTransparan2 = new kelas.PanelWarnaTransparan();

jLabel2 = new javax.swing.JLabel();

jTextNoTrans = new javax.swing.JTextField();

jLabel3 = new javax.swing.JLabel();

jLabel4 = new javax.swing.JLabel();

buttonImageGlassMerah1 = new kelas.ButtonImageGlassMerah();

buttonImageGlassMerah2 = new kelas.ButtonImageGlassMerah();

jLabel5 = new javax.swing.JLabel();

jLabel7 = new javax.swing.JLabel();

jTextjml = new javax.swing.JTextField();

panelWarnaTransparan1 = new kelas.PanelWarnaTransparan();

jScrollPane2 = new javax.swing.JScrollPane();

table = new javax.swing.JTable();

jLabel8 = new javax.swing.JLabel();

jLabel9 = new javax.swing.JLabel();

jDateChooser1 = new com.toedter.calendar.JDateChooser();

jDateChooser2 = new com.toedter.calendar.JDateChooser();

jTextField1 = new javax.swing.JTextField();

jButton1 = new javax.swing.JButton();

jComboBox2 = new javax.swing.JComboBox<>();

jTextField2 = new javax.swing.JTextField();

jTable1.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(jTable1); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLO

SE);

jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N

jLabel1.setText("Transaksi");

javax.swing.GroupLayout panelAlpha1Layout = new

javax.swing.GroupLayout(panelAlpha1);

panelAlpha1.setLayout(panelAlpha1Layout);

panelAlpha1Layout.setHorizontalGroup(

panelAlpha1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA

DING)

.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,

panelAlpha1Layout.createSequentialGroup()

.addContainerGap(389, Short.MAX_VALUE)

.addComponent(jLabel1)

.addGap(281, 281, 281))

);

panelAlpha1Layout.setVerticalGroup(

panelAlpha1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA

DING)

.addGroup(panelAlpha1Layout.createSequentialGroup()

.addGap(22, 22, 22)

.addComponent(jLabel1)

.addContainerGap(26, Short.MAX_VALUE))

);

jLabel2.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N

jLabel2.setText("No.Transaksi");

jTextNoTrans.setEditable(false);

jTextNoTrans.setFont(new java.awt.Font("Times New Roman", 1, 11)); // NOI18N

jTextNoTrans.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jTextNoTransActionPerformed(evt);

}

});

jLabel3.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N

jLabel3.setText("No.Bukti Transaksi");

jLabel4.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N

buttonImageGlassMerah1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/gambar/Bookmark-

add32.png"))); // NOI18N

buttonImageGlassMerah1.setText("BARU");

buttonImageGlassMerah1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

buttonImageGlassMerah1ActionPerformed(evt);

}

});

buttonImageGlassMerah2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/gambar/Open-Folder-

Accept32.png"))); // NOI18N

buttonImageGlassMerah2.setText("SIMPAN");

buttonImageGlassMerah2.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

buttonImageGlassMerah2ActionPerformed(evt);

}

});

jLabel5.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N

jLabel5.setText("Kode Biaya");

jLabel7.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N

jLabel7.setText("Jumlah");

jTextjml.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jTextjmlActionPerformed(evt);

}

});

table.setModel(new javax.swing.table.DefaultTableModel(

new Object [][] {

{null, null, null, null, null, null, null},

{null, null, null, null, null, null, null},

{null, null, null, null, null, null, null},

{null, null, null, null, null, null, null}

},

new String [] {

"no_trans", "no_bukti_trans", "kd_biaya", "nm_biaya", "jumlah",

"tgl_input", "tgl_trans"

}

));

table.addMouseListener(new java.awt.event.MouseAdapter() {

public void mouseClicked(java.awt.event.MouseEvent evt) {

tableMouseClicked(evt);

}

});

jScrollPane2.setViewportView(table);

javax.swing.GroupLayout panelWarnaTransparan1Layout = new

javax.swing.GroupLayout(panelWarnaTransparan1);

panelWarnaTransparan1.setLayout(panelWarnaTransparan1Layout);

panelWarnaTransparan1Layout.setHorizontalGroup(

panelWarnaTransparan1Layout.createParallelGroup(javax.swing.GroupLayout.Align

ment.LEADING)

.addGroup(panelWarnaTransparan1Layout.createSequentialGroup()

.addGap(21, 21, 21)

.addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 565,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addContainerGap(19, Short.MAX_VALUE))

);

panelWarnaTransparan1Layout.setVerticalGroup(

panelWarnaTransparan1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,

panelWarnaTransparan1Layout.createSequentialGroup()

.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,

Short.MAX_VALUE)

.addComponent(jScrollPane2,

javax.swing.GroupLayout.PREFERRED_SIZE, 91, javax.swing.GroupLayout.PREFERRED_SIZE)

.addContainerGap())

);

jLabel8.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N

jLabel8.setText("Tgl Input");

jLabel9.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N

jLabel9.setText("Tgl Transaksi");

jTextField1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jTextField1ActionPerformed(evt);

}

});

jButton1.setText("Cari");

jButton1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton1ActionPerformed(evt);

}

});

javax.swing.GroupLayout panelWarnaTransparan2Layout = new

javax.swing.GroupLayout(panelWarnaTransparan2);

panelWarnaTransparan2.setLayout(panelWarnaTransparan2Layout);

panelWarnaTransparan2Layout.setHorizontalGroup(

panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(panelWarnaTransparan2Layout.createSequentialGroup()

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupL

ayout.Alignment.TRAILING)

.addGroup(javax.swing.GroupLayout.Alignment.LEADING, panelWarnaTransparan2Layout.createSequentialGroup()

.addGap(169, 169, 169)

.addComponent(jLabel4) .addGap(11, 11, 11)

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.Gro

upLayout.Alignment.LEADING)

.addGroup(panelWarnaTransparan2Layout.createSequentialGroup()

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.Gro

upLayout.Alignment.LEADING) .addComponent(jTextField1,

javax.swing.GroupLayout.PREFERRED_SIZE, 317,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addGroup(panelWarnaTransparan2Layout.createSequentialGroup()

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(jLabel3)

.addComponent(jLabel5)

.addComponent(jLabel7))

.addGap(68, 68, 68)

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.Gro

upLayout.Alignment.LEADING)

.addComponent(jTextjml,

javax.swing.GroupLayout.PREFERRED_SIZE, 168, javax.swing.GroupLayout.PREFERRED_SIZE)

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.Gro

upLayout.Alignment.TRAILING, false)

.addComponent(jTextField2,

javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(jTextNoTrans,

javax.swing.GroupLayout.Alignment.LEADING,

javax.swing.GroupLayout.DEFAULT_SIZE, 149, Short.MAX_VALUE))

.addComponent(jComboBox2,

javax.swing.GroupLayout.PREFERRED_SIZE, 127,

javax.swing.GroupLayout.PREFERRED_SIZE))))

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupL

ayout.Alignment.LEADING)

.addGroup(panelWarnaTransparan2Layout.createSequentialGroup()

.addGap(18, 18, 18)

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupL

ayout.Alignment.LEADING)

.addComponent(jLabel8)

.addComponent(jLabel9))

.addGap(9, 9, 9) .addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.Gro

upLayout.Alignment.LEADING)

.addComponent(jDateChooser2, javax.swing.GroupLayout.PREFERRED_SIZE, 114,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(jDateChooser1,

javax.swing.GroupLayout.PREFERRED_SIZE, 114,

javax.swing.GroupLayout.PREFERRED_SIZE)))

.addGroup(panelWarnaTransparan2Layout.createSequentialGroup()

.addGap(5, 5, 5)

.addComponent(jButton1))))

.addComponent(jLabel2)

.addGroup(panelWarnaTransparan2Layout.createSequentialGroup()

.addGap(17, 17, 17)

.addComponent(buttonImageGlassMerah1,

javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(37, 37, 37)

.addComponent(buttonImageGlassMerah2,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(169, 169, 169))))

.addGroup(javax.swing.GroupLayout.Alignment.LEADING,

panelWarnaTransparan2Layout.createSequentialGroup()

.addGap(95, 95, 95)

.addComponent(panelWarnaTransparan1,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))

.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))

);

panelWarnaTransparan2Layout.setVerticalGroup(

panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(panelWarnaTransparan2Layout.createSequentialGroup()

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelWarnaTransparan2Layout.createSequentialGroup()

.addContainerGap(21, Short.MAX_VALUE)

.addComponent(jDateChooser1,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.Gro

upLayout.Alignment.TRAILING)

.addComponent(jDateChooser2,

javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(jLabel9))

.addGap(37, 37, 37))

.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,

panelWarnaTransparan2Layout.createSequentialGroup()

.addGap(16, 16, 16)

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel2)

.addComponent(jTextNoTrans,

javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(jLabel8))

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.Gro

upLayout.Alignment.BASELINE)

.addComponent(jLabel3)

.addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE))

.addGap(18, 18, 18)))

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.Gro

upLayout.Alignment.LEADING) .addComponent(jComboBox2,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(jLabel5))

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(panelWarnaTransparan2Layout.createSequentialGroup()

.addGap(12, 12, 12) .addComponent(jLabel4))

.addGroup(panelWarnaTransparan2Layout.createSequentialGroup()

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)

.addComponent(jLabel7,

javax.swing.GroupLayout.PREFERRED_SIZE, 37,

javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(panelWarnaTransparan2Layout.createSequentialGroup()

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATE

D) .addComponent(jTextjml,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,

31, Short.MAX_VALUE)

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(jButton1))

.addGap(38, 38, 38)

.addGroup(panelWarnaTransparan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(buttonImageGlassMerah2, javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(buttonImageGlassMerah1,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

.addGap(50, 50, 50)

.addComponent(panelWarnaTransparan1,

javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addContainerGap(37, Short.MAX_VALUE))

);

javax.swing.GroupLayout backgroundbiru1Layout = new javax.swing.GroupLayout(backgroundbiru1);

backgroundbiru1.setLayout(backgroundbiru1Layout);

backgroundbiru1Layout.setHorizontalGroup(

backgroundbiru1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(backgroundbiru1Layout.createSequentialGroup()

.addContainerGap()

.addGroup(backgroundbiru1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(panelWarnaTransparan2, javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

.addGroup(backgroundbiru1Layout.createSequentialGroup()

.addGap(26, 26, 26)

.addComponent(panelAlpha1,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(0, 28, Short.MAX_VALUE)))

.addContainerGap())

);

backgroundbiru1Layout.setVerticalGroup(

backgroundbiru1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.L

EADING)

.addGroup(backgroundbiru1Layout.createSequentialGroup()

.addContainerGap()

.addComponent(panelAlpha1,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

.addGap(18, 18, 18)

.addComponent(panelWarnaTransparan2,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

);

javax.swing.GroupLayout layout = new

javax.swing.GroupLayout(getContentPane());

getContentPane().setLayout(layout);

layout.setHorizontalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addComponent(backgroundbiru1, javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(0, 0, Short.MAX_VALUE))

);

layout.setVerticalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()

.addGap(0, 0, Short.MAX_VALUE)

.addComponent(backgroundbiru1,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

);

pack();

}// </editor-fold>

private void jTextNoTransActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

}

private void buttonImageGlassMerah2ActionPerformed(java.awt.event.ActionEvent

evt) {

// TODO add your handling code here:

java.sql.Connection conn = new DBConnection().connect();

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

String calender = sdf.format(jDateChooser1.getDate());

String calender1 = sdf.format(jDateChooser2.getDate());

int ok=JOptionPane.showConfirmDialog(null,"Apakah Anda

yakin?","Konfirmasi",JOptionPane.YES_NO_OPTION);

if(ok==0){

try{

String sql="insert into transaksi

(no_transaksi,tgl_bukti_trans,tgl_input,kode_biaya,jumlah_trans,no_bukti_trans

)"

+ "values(?,?,?,?,?,?)";

java.sql.PreparedStatement stmt=conn.prepareStatement(sql);

try{

stmt.setString(1,jTextNoTrans.getText());

stmt.setString(2,calender);

stmt.setString(3,calender1);

stmt.setString(4,jComboBox2.getSelectedItem().toString());

stmt.setString(5,jTextjml.getText());

stmt.setString(6,jTextField2.getText());

stmt.executeUpdate();

stmt.isClosed();

stmt.close();

JOptionPane.showMessageDialog(null,"Data berhasil di simpan");

Tampilkan();

}catch(SQLException se){

JOptionPane.showMessageDialog(null, "ERROR" + se.getMessage());

}

stmt.close();

}catch(Exception e){}

}

}

private void tableMouseClicked(java.awt.event.MouseEvent evt) {

// TODO add your handling code here:

if (evt.getClickCount()==1) {

Mouse();

}

}

private void jTextjmlActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

}

private void buttonImageGlassMerah1ActionPerformed(java.awt.event.ActionEvent

evt) {

// TODO add your handling code here:

auto_number();

jComboBox2.requestFocus();

jTextjml.setText("");

jDateChooser1.getDate();

jDateChooser2.getDate();

jTextField2.setText("");

}

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

DefaultTableModel tabel = new DefaultTableModel();

tabel.addColumn("No Transaksi");

tabel.addColumn("Tanggal Transaksi");

tabel.addColumn("Tgl Input");

tabel.addColumn("Kode Biaya");

tabel.addColumn("Jumlah");

tabel.addColumn("No Bukti Transaksi");

try{

java.sql.Connection conn = new DBConnection().connect();

java.sql.Statement stmt = conn.createStatement();

String SQL = "Select * From transaksi WHERE no_transaksi like '%" + jTextField1.getText() + "%'"

+ " or kode_biaya like '%" + jTextField1.getText() + "%'";

java.sql.ResultSet rslt = stmt.executeQuery(SQL);

while (rslt.next()){

tabel.addRow(new Object[]{

rslt.getString(1),

rslt.getString(2),

rslt.getString(3),

rslt.getString(4),

rslt.getString(5),

rslt.getString(6)

});

}

table.setModel(tabel);

}catch (Exception e){

}

}

public void Mouse(){

int baris = table.getSelectedRow();

String no = DftTabMode1.getValueAt(baris, 0).toString();

Date datel = null;

try{

datel = new SimpleDateFormat("yyyy-MM-

dd").parse(DftTabMode1.getValueAt(baris,1).toString());

}catch (ParseException ex){

}

Date date2 = null;

try{

date2 = new SimpleDateFormat("yyyy-MM-

dd").parse(DftTabMode1.getValueAt(baris,2).toString());

}catch (ParseException ex){

}

String kdbiaya = DftTabMode1.getValueAt(baris, 3).toString();

String jmlh = DftTabMode1.getValueAt(baris, 4).toString();

String nobukti = DftTabMode1.getValueAt(baris, 5).toString();

jTextNoTrans.setText(no);

jDateChooser2.setDate(datel);

jDateChooser1.setDate(date2);

jComboBox2.setSelectedItem(kdbiaya);

jTextjml.setText(jmlh);

jTextField2.setText(nobukti);

}

private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

}

1.5.2. Blackbox Testing

A. Form Login

Tabel III.9.

Hasil Pengujian Black BoxTesting Form Login Admin

No. Skenario

pengujian

Test Case Hasil yang

diharapkan

Hasil

pengujian

Kesimpulan

1. Nama user dan Nama user : Sistemakan Sesuai Valid

pass tidak diisi

kemudian tombol

masuk

(kosong)

Password :

(kosong)

menolak akses

dan

menampilkan

pesan “Text Box

Harus Diisi”

Harapan

2. Mengetikan nama

user dan password

tidak diisi atau

kosong kemudian

klik tombol login

Nama User :

supriyadi

Password :

(kosong)

Sistem akan

menolak akses

dan

menampilkan

pesan “Anda

Gagal Login”

Sesuai

Harapan

Valid

3. Nama user tidak

di isi (kosong)

dan Password

diisi kemudian

klik tombol login

Nama user :

supriyadi

Password :

anjang

Sistem akan

menerima akses

login dan akan

menampilkan

pesan “Selamat

Datang sdr/i=

supriyadi”

Sesuai

harapan

Valid

B. Form Transaksi

Tabel III.10.

Hasil Pengujian Black BoxTesting Form Transaksi

No Sekenario Test box Hasil yang di Hasil Kesimpulan

Pengujian harapkan Pengujian

1. Semua text box

tidak diisi

kemudian klik

simpan

NoBukti

Transaksi :

(kosong)

Tgl input :

(kosong)

Tgl transaksi :

(kosong)

Sistem akan

menolak akses

Sesuai

harapan

Valid

2. Mengisi data di

semua text box

dan kemudian klik

simpan

No transaksi :

(otomatis)

No bukti

transaksi :

(input)

Kode biaya :

(Otomatis)

Tgl input

(pilih)

Tgl trasaksi

(pilih)

Jumlah

(input)

Sistem akan

Menerima dan

menampilkan

pesan “Data

Berhasil di

Simpan”

Sesuai

harapan

Valid

3 Mengisi data di

text box kemudian

klik baru

No trans

(nomor)

No bukti trans

(no bukti)

Kode biaya

(Otomatis)

Tgl input

(pilih)

Tgl Transaksi

(pilih)

Jumlah

(input)

Sistem akan

menampilkan

tampilan awal

atau text box

kosong

kembali

Sesuai

harapan

Valid

1.5.3. Spesifikasi Hardware dan Software

Tabel III.11.

Spesifikasi Hardware dan Software

Kebutuhan Keterangan

Sistem Windows 7 64-bit

Processor CPU @ 2.10GHz 2.10 GHz

RAM 2 GB

Harddisk 500 GB

Monitor 14” LED

Keyboard 104

Printer Inkjet

Mouse Standard

Software

Kebutuhan menjalankan aplikasi secara lokal :

Bahasa sriptprogramming : Java Web Server : Xampp v.2.5

DBMS : MySQL