BAB 4 HASIL DAN PEMBAHASAN 4.1 Implementasi Database Berikut ini adalah basis data dari rancangan tabel yang telah dibuat kedalam MySql Server. Gambar 4.1 Struktur Tabel Data Wajib Pajak 48 49 Gambar 4.2 Struktur Tabel Data Tagihan Gambar 4.3 Struktur Tabel Data Pembayaran 50 Gambar 4.4 Struktur Tabel Data Kelas Bumi Gambar 4.5 Struktur Tabel Data Kelas Bangunan 51 4.2 Implementasi Sistem Aplikasi desktop yang dibangun terdiri dari beberapa form yakni form login, form menu, form pendaftaran wajib pajak, form tagihan PBB, form pembayaran PBB, form pencarian, dan form cetak laporan. 4.2.1 Form Login Gambar 4.6 Form Login Pada form ini, user dapat memasukkan user name dan password untuk bisa masuk kedalam aplikasi. Setelah memasukkan data yang dibutuhkan, user dapat memilih tombol masuk untuk masuk ke dalam aplikasi maupun tombol keluar untuk membatalkan dan keluar dari aplikasi. 52 4.2.2 Form Menu Gambar 4.7 Form Menu Utama Setelah melakukan proses login, maka form ini akan muncul dan user dapat melakukan navigasi antar form dari form ini. 4.2.3 Form Pendaftaran Wajib Pajak Gambar 4.8 Form Pendaftaran Wajib Pajak 53 Pada form ini, user dapat melakukan proses pendaftaran wajib pajak yang juga merupakan dasar dari semua kegiatan dalam aplikasi ini. Hal ini disebabkan karena data wajib pajak diperlukan dalam pencatatan tagiha, dan juga pembayaran PBB. User dapat memasukkan data wajib pajak yang kemudian akan disimpan dengan memilih tombol Simpan. Kemudian jika sudah disimpan, maka data yang baru saja di simpan dan dimasukkan ke dalam database akan secara otomatis muncul pada datagridview yang terletak di samping kanan bawah form. Untuk memasukkan data baru, user dapat memilih tombol Input Baru supaya tiap kolom kembali kosong. User dapat keluar dan kembali ke menu utama dengan memilih tombol Keluar. 4.2.4 Form Tagihan PBB Gambar 4.9 Form Tagihan PBB 54 Pada form ini, user dapat menyimpan data tagihan tiap tahunnya pada wajib pajak yang sudah didaftarkan dan disimpan datanya. User cukup memilih NOP maupun nama yang sudah tersedia pada datagridview disamping kiri atas, lalu memasukkan tahu yang diinginkan. Kemudian user dapat memasukkan data bumi dan bangunan seperti luas dan kelasnya yang kemudian dapat dihitung secara otomatis dan menghasilkan besaran tagihan pajak bagi wajib pajak. Proses penyimpanan, input data baru, dan keluar masih sama dengan form pendaftaran wajib pajak, yakni dengan memilih salah satu dari tiga tombol yang tersedia di bawah. Setelah data berhasil dimasukkan kedalam database maka secara otomatis data tagihan wajib pajak dari tiap tahunnya akan muncul pada datagridview di sudut kanan bawah form. 4.2.5 Form Pembayaran PBB Gambar 4.10 Form Pembayaran PBB Pada form ini, user dapat melakukan penyimpanan data pembayaran PBB. User hanya perlu memilih NOP pada datagridview di sisi kiri form yang kemudian data wajib pajak yang dipilih akan secara otomati terisikan pada kolom-kolom yang ada dan juga 55 menampilkan status pembayaran pada datagridview pada sisi kanan. Setelah data berhasil dimasukkan ke dalam database maka status pembayaran pada datagridview di sisi kanan pun akan ikut berubah, dari yang sebelumnya belum lunas menjadi lunas. 56 Kode Program 1 Input Data Pembayaran private void buttonTambah_Click(object sender, EventArgs e) { 1. string Tanggal_Pembayaran; 2. Tanggal_Pembayaran = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); 3. string ID_Pembayaran; 4. ID_Pembayaran = textNOP.Text + '.' + textTahun.Text; 5. if (textNOP.Text == "" && textNamaWP.Text == "" && textNoSTTS.Text == "" && textNoSTS.Text == "" && textPenanggungJawab.Text == "" && textTahun.Text == "" && textBayar.Text == "") { { MessageBox.Show("Masukkan Data Wajib Pajak Terlebih Dahulu", "Peringatan", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } 6. else if (cek_Tagihan(textNOP.Text, textTahun.Text) == false) { MessageBox.Show("NOP Belum terdaftar"); } 7. else if (cek_Pembayaran(textNOP.Text, textTahun.Text) == true) { MessageBox.Show("Tagihan Sudah Dibayar"); } 8. else { 9. MySqlConnection konek = new MySqlConnection(connectionString); try { konek.Open(); 10. MySqlTransaction sqltran = konek.BeginTransaction(); 11. MySqlCommand command = konek.CreateCommand(); command.Transaction = sqltran; 12. command.CommandText = "insert into pembayaran values ('" + ID_Pembayaran + "','" + textNOP.Text + "','" + textTahun.Text + "','" + textNoSTTS.Text + "','" + textNoSTS.Text + "','" + textPenanggungJawab.Text + "','" + textBayar.Text + "','" + Tanggal_Pembayaran + "')"; command.ExecuteNonQuery(); command.CommandText = "update tagihan set Status_Pembayaran = 'Lunas' where NOP = '" + textNOP.Text + "' and Tahun = '" + textTahun.Text + "'"; command.ExecuteNonQuery(); 13. sqltran.Commit(); } catch (Exception ex) { MessageBox.Show("Simpan gagal!", ex.ToString()); } finally { konek.Close(); konek.Open(); MySqlDataAdapter dataAdapter = new MySqlDataAdapter("select NOP, Tahun,Tagihan_Pembayaran, Status_Pembayaran from tagihan where 14. 15. 16. NOP = ('" + textNOP.Text + "')", konek); DataSet ds = new DataSet(); dataAdapter.Fill(ds, "pembayaran"); Pembayaran2DGV.DataSource = ds; Pembayaran2DGV.DataMember = "pembayaran"; Pembayaran2DGV.Refresh(); konek.Close(); 17. } } } 57 Kode program 1 menjelaskan fungsi penyimpanan data pembayaran pajak bumi dan bangunan ke dalam database. Pada baris program pertama hingga ke empat berfungsi untuk menetapkan format bagi tanggal dan juga format bagi ID Pembayaran yang berguna sebagai primary key pada database. Baris program ke lima hingga ke delapan berfungsi untuk penanganan kesalahan, seperti jika data tidak dimasukkan, maupun jika data tagihan untuk tahun pembayaran yang hendak dimasukkan belum dibuat, dan juga jika data pembayaran yang dimasukkan sudah ada pada database. Baris ke sembilan berfungsi untuk membuat koneksi dengan database. Baris program ke sepuluh dan sebelas berfungsi untuk menentukan cara eksekusi query mysql yang akan dipakai karena program akan menjalankan dua query secara berurutan. Kemudian baris program ke dua belas merupakan query mysql yang di pakai dalam menjalankan proses memasukkan data kedalam database. Baris program ke lima belas berfungsi untuk penanganan kesalahan dalam proses penyimpanan data kedalam database. Dan baris program ke enam belas sampai tujuh belas berfungsi untuk menampilkan kembali data yang sudah dimasukkan kedalam datagridview pada aplikasi sebagai tanda data berhasil dimasukkan. 58 4.2.6 Form Pencarian Gambar 4.11 Form Pencarian Data Wajib Pajak Gambar 4.12 Form Pencarian Data Tagihan 59 Gambar 4.13 Form Pencarian Data Pembayaran Form pencarian terdiri dari 3 bagian atau dengan kata lain tab, dimana tiap tab merupakan form mandiri untuk tiap pencarian data seperti data wajib pajak, tagihan, maupun pembayaran. Tampilan tiap tab dibuat hampir mirip dengan form yang dituju agar user dapat menggunakan form pencarian dengan cepat. Form ini memungkinkan user untuk merubah maupun menghapus data-data yang sudah ada pada database. 60 4.2.7 Form Cetak Laporan Gambar 4.14 Form Cetak Laporan Form ini berfungsi untuk membantu user dalam pembuatan laporan pembayaran PBB dari data yang ada pada database. User hanya perlu memasukkan kriteria yang diinginkan pada kolom yang tersedia dan kemudian menampilkan hasil pencarian berdasarkan kriteria yang sudah ditentukan dengan memilih tombol Lihat Data. Kemudian untuk membuat data tersebut menjadi laporan, user hanya perlu memilih tombol Cetak. Hasil pembuatan laporan akan muncul pada samping kanan form yang kemudian dapat di cetak maupun disimpan dalam bentuk yang diinginkan user seperti dalam format PDF maupun DOC. 4.3 Pengujian Pengujian sistem dilakukan dengan metode black-box testing yang berfokus pada persyaratan fungsional sistem. Metode ini mengkaji beberapa aspek fundamental dari suatu sistem dengan sedikit memperhatikan struktur logis dari perangkat lunak yang 61 dilakukan pada antarmuka sistem (Pressman, 2010). Beberapa jenis kesalahan yang dapat diidentifikasi adalah fungsi tidak benar atau hilang, kesalahan antar muka, kesalahan pada struktur data (pengaksesan basis data), kesalahan performasi, kesalahan inisialisasi dan akhir program. Hasil pengujian dapat dilihat pada tabel 1. Tabel 4.1 Hasil Pengujian Sistem dengan Metode Black-Box Testing Aktivitas Input Output Login -Username benar dan password benar. -Username kosong dan password kosong. -Username dan password salah. -Semua data diisi dengan lengkap dan benar. -Ada data yang dibiarkan kosong. -Memasukkan data yang sudah ada pada database. -Login berhasil. Menambahkan Data Wajib Pajak Menambahkan Data Tagihan Menambahkan Data Pembayaran -Semua data diisi dengan lengkap dan benar. -Ada data yang dibiarkan kosong. -Memasukkan data yang sudah ada pada database. -Memasukkan data dengan NOP yang belum didaftarkan. -Semua data diisi dengan lengkap dan benar. -Ada data yang dibiarkan kosong. Status Pengujia n Valid -Login gagal. -Login gagal. -Data berhasil disimpan. Valid -Data gagal disimpan dan muncul peringatan. -Data gagal disimpan dan muncul peringatan. -Data berhasil disimpan. Valid -Data gagal disimpan dan muncul peringatan. -Data gagal disimpan dan muncul peringatan. -Data gagal disimpan dan muncul peringatan. -Data berhasil disimpan. -Data gagal Valid 62 -Memasukkan data yang sudah ada pada database. -Memasukkan data dengan NOP yang belum ada. -Memasukkan data dengan tagihan yang belum ada. disimpan dan muncul peringatan. -Data gagal disimpan dan muncul peringatan. -Data gagal disimpan dan muncul peringatan. Pencarian Pembuatan Laporan -Kata kunci di kosongkan. -Kata kunci pencarian ditemukan dalam database. -Kata kunci pencarian tidak ditemukan. -Kata kunci pencarian dikosongkan. -Kata kunci pencarian ditemukan dalam database. -Pembuatan laporan dijalankan. -Data gagal disimpan dan muncul peringatan. -Menampilkan seluruh data. Valid -Menampilkan data sesuai kata kunci. -Data tidak ditampilkan. -Menampilkan seluruh data yang dimasukkan pada hari tersebut. -Menampilkan data sesuai dengan kriteria pencarian. -Laporan dibuat dari pencarian. Valid