7 1. Pendahuluan
Badan Keuangan Daerah (BKD) Kota Salatiga adalah suatu Badan Pemerintah Daerah Kota Salatiga yang bertugas dalam keuangan Kota Salatiga. Salah Satu tugas dari BKD Kota Salatiga adalah mengatur dan mengelola Bea Perolehan Hak atas Tanah dan Bangunan (BPHTB) di Kota Salatiga. BPHTB adalah pajak atas perolehan hak atas tanah dan/atau bangunan. Dalam prosesnya wajib pajak, notaris, atau Pejabat Pembuat Akta Tanah (PPAT) mendaftarkan berkas BPHTB yang di dalamnya temasuk harga transaksi atau harga pasar. Harga tersebut merupakan dasar pengenaan pajak BPHTB. Untuk menentukan nilai pasar, BKD Kota Salatiga masih menggunakan aplikasi berbasis desktop, yang perhitungannya menggunakan rata-rata dari data tansaksi yang pernah terjadi di sekitar tempat objek pajak berada.
Namun hasilnya masih belum akurat, dimana kondisi suatu objek pajak tidak selalu sama dengan sekitarnya. Selain itu juga dilakukan pengecekan lapangan. Tetapi dalam pelaksanaannya masih terdapat manipulasi saat pengecekan lapangan dan wawancara, yang dilakukan oleh wajib pajak atas harga transaksi atau harga pasar.
Hal ini menyebabkan Pemerintah Daerah Kota Salatiga mengalami kerugian.
Dari permasalahan yang ada maka diperlukan sebuah aplikasi untuk menentukan harga pasar dengan menggunakan perbandingan antara beberapa data pembanding. Dengan aplikasi tersebut, Badan Keuangan Daerah Kota Salatiga dapat menentukan harga pasar dengan akurat sebagai acuan pengenaan pajak BPHTB sehingga dapat mempermudah dalam menentukan pengenaan pajak BPHTB yang wajar atas suatu berkas BPHTB.
Berdasarkan latar belakang tersebut, maka dilakukan penelitian membangun aplikasi penentuan harga pasar pada Bea Perolehan Hak atas Tanah dan Bangunan (BPHTB) di Badan Keuangan Daerah Kota Salatiga, menggunakan Framework CodeIgniter. Website dipilih sebagai platform aplikasi ini karena dapat diakses di semua perangkat yang terhubung dengan internet tanpa penginstalan terlebih dahulu serta bersifat open source. Penggunaan Framework CodeIgniter pada aplikasi ini dikarenakan dapat mempermudah pembangun dengan adanya konsep Model-View-Controller (MVC), yang membuat proses penulisan kode program lebih cepat dan terstruktur.
2. Tinjauan Pustaka
Pada penelitian yang berjudul Mekanisme dalam Menentukan Nilai Pasar pada Pemungutan BPHTB atas Waris di Kota Surabaya oleh Dinas Pendapatan dan Pengelolaan Keuangan Kota Surabaya, membahas bagaimana mekanisme dalam menentukan nilai pasar pada pemungutan BPHTB atas waris di Kota Surabaya oleh Dinas Pendapatan dan Pengelolaan Keuangan (Dispenda) Kota Surabaya yang mana menggunakan tiga metode atau pendekatan dalam menentukan nilai pasar, yaitu pendekatan data pasar, biaya, dan pendapatan. Selain itu, dihasilkan bahwa mekanisme yang dilakukan Dispenda dalam menentukan nilai pasar tersebut telah mencerminkan keadilan karena penilai telah memiliki dasar atau tolak ukur serta ilmu untuk menentukan nilai pasar tersebut. Dasar dan aturan yang digunakan oleh para penilai yaitu Peraturan Daerah Kota Surabaya Nomor 11 Tahun 2010 tentang BPHTB dan Peraturan Walikota Kota Surabaya Nomor 3 Tahun 2015 tentang Klasifikasi dan Besarnya Nilai Jual Objek Pajak (NJOP) sebagai dasar pengenaan Pajak Bumi dan Bangunan (PBB) perkotaan Tahun 2015 di Kota Surabaya [1].
8
Pada penelitian yang berjudul Menetapkan Pilihan Nilai Jual Objek Pajak Bumi dan Bangunan sebagai Dasar Penghitungan Bea Perolehan Hak atas Tanah dan Bangunan, membahas bagaimana perbedaan rentang nilai transaksi dengan Nilai Jual Objek Pajak (NJOP) Pajak Bumi Dan Banguan (PBB) dalam Surat Pemberitahuan Pajak Terhutang (SPPT) PBB dan nilai yang dapat dipilih untuk ditetapkan sebagai dasar penghitungan BPHTB. Penelitian ini adalah penelitian normatif yang didukung dengan data primer. Dalam penelitian ini disimpulkan bahwa nilai transaksi pada umumnya lebih tinggi dari NJOP PBB yang tercantum dalam SPPT PBB serta supaya terdapat kepastian dalam pembayaran BPHTB, perlu ditetapkan nilai yang wajar pada NJOP PBB yang tercantum dalam SPPT PBB untuk digunakan sebagai dasar penghitungan BPHTB [2].
Dari kedua penelitian sebelumnya, didapatkan bahwa penentuan nilai pasar mencerminkan keadilan apabila memiliki dasar atau tolak ukur serta ilmu untuk menentukan nilai pasar. Selain itu, penentuan nilai pasar pada umumnya lebih tinggi dari NJOP PBB yang tercantum dalam SPPT PBB. Dari dua penelitian di atas, maka pada penelitian ini dilakukan pembangunan aplikasi berbasis web untuk menentukan nilai pasar pada BPHTB. Jika dibandingkan dengan kedua penelitian di atas yang belum membangun aplikasi untuk menentukan nilai pasar, penelitian ini dilakukan untuk membangun aplikasi untuk menentukan nilai pasar berbasis web dengan studi kasus di BKD Kota Salatiga. Aplikasi ini menggunakan perbandingan dari beberapa data pembanding yang memiliki variabel-variabel beserta persentase yang sesuai dengan kondisi objek pembanding, untuk didapatkan harga pasar yang wajar. Variabel-variabel beserta persentase yang digunakan dalam aplikasi ini didapatkan dari hasil observasi dan wawancara kepada Kepala Subbidang Pelayanan, Pengolahan Data dan Informasi BKD Kota Salatiga. Dengan aplikasi ini diharapkan dapat mempermudah pejabat pajak BKD Kota Salatiga dalam menentukan nilai pasar yang akurat sebagai acuan pengenaan pajak BPHTB, sehingga dapat mempermudah dalam menentukan pengenaan pajak BPHTB yang wajar atas suatu berkas BPHTB.
Bea Perolehan Hak atas Tanah dan Bangunan (BPHTB) adalah pajak atas perolehan hak atas tanah dan/atau bangunan. Perolehan yang dimaksud adalah perbuatan atau peristiwa hukum yang mengakibatkan diperolehanya hak atas tanah dan/atau bangunan oleh orang pribadi atau Badan. Perolehan tersebut meliputi pemindahan hak karena jual beli, tukar menukar, hibah, hibah wasiat, waris, pemasukan dalam perseroan atau badan hukum lain, pemisahan hak yang mengakibatkan peralihan, penunjukan pembeli dalam lelang, pelaksanaan putusan hakim yang mempunyai kekuatan hukum tetap, penggabungan usaha, peleburan usaha, pemekaran usaha, dan hadiah, serta pemberian hak baru karena kelanjutan pelepasan hak dan di luar pelepasan hak. Hak atas tanah dan/atau bangunan adalah hak atas tanah, termasuk hak pengelolaan, beserta bangunan di atasnya sebagaimana dimaksud dalam undang-undang di bidang pertanahan dan bangunan.
Hak tersebut meliputi hak milik, hak guna usaha, hak guna bangunan, hak pakai, hak milik atas satuan rumah susun, dan hak pengelolaan [3].
CodeIgniter adalah sebuah framework aplikasi web yang bersifat open source, yang digunakan untuk membangun aplikasi Hypertext Preprocessor (PHP) dinamis. Tujuan utama pengembangan CodeIgniter adalah untuk membantu developer untuk mengerjakan aplikasi lebih cepat daripada menulis semua kode dari awal. CodeIgniter menyediakan berbagai macam library yang dapat mempermudah dalam pengembangan. CodeIgniter diperkenalkan kepada publik pada tanggal 28 Februari 2006.
9
CodeIgniter sangat ringan, terstruktur, mudah dipelajari, dokumentasi lengkap, dan mempunyai dukungan yang luar biasa dari forum CodeIgniter. Selain itu CodeIgniter juga memiliki fitur-fitur lainnya, antara lain menggunakan Pattern Model-View-Controller (MVC), Uniform Resource Locator (URL) friendly, dan kemudahan. Dengan menggunakan Pattern MVC, struktur kode yang dihasilkan menjadi lebih terstruktur dan memiliki standar yang jelas. URL friendly maksudnya URL yang dihasilkan sangat ramah, yang mana pada CodeIgniter diminimalisasi penggunaan $_GET dan diganti dengan Uniform Resource Identifier (URI).
Kemudian kemudahan yang dimaksud adalah kemudahan dalam mempelajari, membuat library dan helper, memodifikasi, serta mengintegrasikan library dan helper [4].
3. Metode Penelitian
Tahapan yang dilakukan dalam penelitian ini dapat dilihat pada Gambar 1.
Gambar 1 Tahapan Penelitian
Gambar 1 menunjukkan tahapan penelitian yang dijelaskan sebagai berikut:
Tahap pertama adalah Identifikasi Masalah, dimana pada tahap ini dilakukan observasi di Badan Keuangan Daerah Kota Salatiga dan wawancara terhadap Kepala Subbidang Pelayanan, Pengolahan Data dan Informasi Badan Keuangan Daerah Kota Salatiga yaitu Bapak Fajar Agus Widigdo, S.Kom. Berdasar hasil wawancara didapatkan bahwa permasalahan penentuan nilai pasar, parameter- parameter, variabel-variabel berserta persentase yang digunakan, serta cara perhitungannya pada Bea Perolehan Hak atas Tanah dan Bangunan (BPHTB) masih dengan merata-rata transaksi harga pasar di sekitar subjek pajak dan melakukan survei lapangan, sehingga dibutuhkan perhitungan yang lebih akurat berdasarkan kriteria-kriteria (parameter maupun variabel) yang mempengaruhi harga pasar.
Tahap kedua yaitu Perancangan Sistem, tahap ketiga yaitu Pembangunan Sistem, dan tahap keempat yaitu Pengujian Sistem dilakukan dengan menggunakan model proses prototype.
Identifikasi Masalah
Perancangan Sistem
Pengujian Sistem
Penulisan Artikel Ilmiah Identifikasi Masalah
Perancangan Sistem
Pembangunan Sistem
Pengujian Sistem
Penulisan Artikel Ilmiah
10
Model proses prototype adalah adalah bagian dari produk yang mengaplikasikan logika dan fisik antarmuka eksternal. Konsumen dalam hal ini berperan sebagai pengguna atau user dari sebuah aplikasi menggunakan prototype dan menyediakan masukan untuk tim pengembang sebelum pengembangan dan implementasi sistem aplikasi dibangun. Dengan menggunakan pendekatan ini, konsumen dan tim pengembang aplikasi dapat mengklarifikasi kebutuhan dan interpretasi mereka [5].
Gambar 2 Tahapan Model Prototyping [5]
Tahap-tahapan dalam model prototype sebagai berikut:
1. Pengumpulan Kebutuhan
Kasubbid Pelayanan, Pengolahan Data dan Informasi Badan Keuangan Daerah (BKD) Kota Salatiga yang pada penelitian ini adalah pelanggan dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibangun.
Kebutuhan pada aplikasi yang akan dibangun adalah dapat menghitung harga pasar berdasarkan persentase dari variabel-variabel yang dimiliki oleh suatu objek pajak.
2. Membangun Prototyping
Membangun prototyping dengan membuat perancangan sementara yang berfokus pada penyajian kepada Kasubbid Pelayanan, Pengolahan Data dan Informasi. Perancangan tersebut Unified Modelling Language (UML).
UML bersifat scalability, yaitu objek lebih mudah dipakai untuk menggambarkan sistem yang besar dan komplek. UML juga bersifat dynamic modelling, yaitu model dapat digunakan untuk pemodelan sistem dinamis dan real time [6].
Use case diagram merupakan diagram yang menjelaskan manfaat sistem, jika dilihat dari sudut pandang orang atau sesuatu yang berada di luar sistem yang sedang dibangun (aktor). Jenis diagram ini dapat digunakan untuk menangkap requirements system dan untuk memahami bagaimana sistem seharusnya bekerja [7]. Use case diagram sistem ditunjukkan pada Gambar 3.
11
Gambar 3 Use Case Diagram Aplikasi
Gambar 3 menunjukkan bahwa semua user dapat melihat berkas BPHTB.
Kasubbid Penetapan memiliki akses yaitu melakukan perbandingan, dimulai dari melihat dan memilih berkas BPHTB yang akan dicari nilai pasarnya, kemudian dapat melihat dan memilih data pembanding, serta dapat menambah data pembanding dan mencetak hasil perbandingan. Selain itu Kasubbid Penetapan dapat melihat hasil cek lapangan. Front Office (FO) memiliki akses dalam mengolah berkas BPHTB dari mulai menambah, mengubah, mencetak tanda terima, mencetak verifikasi pembayaran, dan memasukkan pembayaran. Kemudian yang memiliki akses mengubah berkas BPHTB (memverifikasi dan menyatakan revisi) adalah Kasubbid Pelayanan dan Kasubbid Penetapan. Sedangkan untuk Kabid Pendapatan juga mengubah berkas BPHTB (mensahkan). Tim Lapangan dapat menambah dan melihat hasil cek lapangan.
memilih berkas BPHTB melihat data pembanding
memilih data pembanding mencetak hasil
perbandingan
menambah data pembanding
menambah hasil cek lapangan menambah
mencetak tanda terima mencetak verifikasi
pembayaran memasukkan pembayaran
Mengolah Cek Lapangan
<<extend>>
Tim Lapangan
Membandingkan
<<extend>>
<<extend>> <<extend>>
<<extend>>
<<extend>>
melihat hasil cek lapangan
<<extend>>
Mengolah Berkas BPHTB
<<extend>>
<<extend>>
<<extend>>
<<extend>>
FO
melihat berkas BPHTB
<<extend>>
Kasubbid Pelayanan
Kabid Pendapatan
Kasubbid Penetapan
mengubah
<<extend>>
12
Gambar 4 Activity Diagram Submenu Perkiraan Harga Pasar
Gambar 4 merupakan activity diagram aplikasi pada submenu Perkiraan Harga Pasar, dimana Kasubbid Penetapan harus memilih berkas BPHTB yang akan dicari perkiraan harga pasarnya. Kemudian dapat melihat detail data pembanding serta memilih pembanding. Selanjutnya akan diproses dan terlihat hasil perbandingan.
Terakhir menambahkan data hasil perbandingan ke database serta dapat mencetak hasil perbandingan tersebut.
Selain use case diagram dan activity diagram dibuatlah class diagram. Class diagram merupakan diagram yang membantu dalam visualisasi struktur kelas-kelas dari suatu sistem. Dalam diagram ini, diperlihatkan hubungan antar kelas dan penjelasan detail tiap-tiap kelas [6]. Dengan sebuah class diagram dapat digambarkan relasi-relasi diantara setiap data di dalam sistem. Di dalam class diagram ini juga terdapat gambaran tentang objek-objek yang ada di dalam sistem beserta dengan atributnya masing-masing dan operasi-operasi yang dapat dialakukannya. Berikut adalah class diagram pada Aplikasi Penentuan Nilai Pasar.
Gambar 5 Class Diagram Aplikasi
Pilih Berkas BPHTB
Lihat Detail Pembanding Pilih
Pilih Pilih Aksi
Pilih Proses
Pilih Simpan
Pilih Cetak
Tampil Halaman Pilih Berkas BPHTB
Tampil Halaman Pilih Pembanding
Tampilan Detail Pembanding
Perbanding an
Tampil Halaman Perbandingan
Proses Perbandingan
Tampil Hasil Perbandingan
Insert Perbandingan
Tampil Halaman Cetak Hasil
Cek Data Valid
Select Tabel banding, berkas, sspd, ppat, jenis_perolehan
Select Tabel banding, berkas, sspd, ppat, jenis_perolehan
Select Tabel berkas, sspd, ppat
Select Tabel berkas, sspd, ppat
Insert Data Tidak
Ya
Database Sistem
Kasubbid Penetapan
13
Class Diagram di atas menunjukkan bahwa dalam proses perbandingan terdapat hubungan antara 8 model, yaitu model berkas, sspd, ppat, jenis_perolehan, banding, param, variabel, dan hasil. Model berkas, sspd, ppat, dan jenis_perolehan adalah model dari berkas utama yang akan dicari perkiraan harga pasarnya.
Kemudian model banding adalah model yang menampung variabel-variabel yang dimiliki oleh suatu berkas yang menjadi bahan perbandingan. Model variabel dan param merupakan dua model yang terkait yang menjadi acuan dalam model banding. Terakhir adalah model hasil yang mana menjadi model tempat menampung hasil dari perbandingan yang dilakukan.
3. Evaluasi Prototyping
Evaluasi ini dilakukan oleh Kasubbid Pelayanan, Pengolahan Data dan Informasi BKD Kota Salatiga apakah prototyping yang telah dibangun sudah sesuai dengan keinginan Kasubbid Pelayanan, Pengolahan Data dan Informasi BKD Kota Salatiga. Pada tahap ini, dilakukan evaluasi terhadap parameter, variabel, serta persentase yang digunakan untuk menentukan harga pasar. Parameter, variabel, dan persentase tersebut pada Tabel 1.
Tabel 1 Data Parameter, Variabel, dan Persentase Pembanding
No. Parameter Variabel Persentase
1. Sumber Data PPAT (+) 15%
Notaris (+) 10%
PPAT (PMA) / Masyarakat 0%
2. Waktu Transaksi Nilai Inflasi
2017 ( rata2 bulanan s/d November) 3,83%
2016 3,53%
2015 6,38%
2014 6,42%
2013 6,97%
2012 4,28%
2011 5,38%
2010 5,13%
2009 4,90%
2008 10,31%
2007 7,22%
2006 6,79%
2005 17,70%
2004 4,26%
2003 4,83%
3. Masalah Pendanaan Tunai 0%
Kredit 11%
4.
Hak Yang
Terkandung HM/C Yasan < Th 60 10%
Dalam Property HGB 5%
HP 2,5%
C 0%
5. Posisi Site Depan 5%
14
Tengah 2,5%
Belakang 0%
Tepi Sungai (-)2,5%
6. Jarak dari pemukiman 0-50 m 10%
Penduduk 51-100 m 5,0%
>100 m 0%
7. Jarak dari Akses Jalan 0-50 m 5%
Aspal / Besar 51-100 m 2,5%
>100 m 0%
8. Kondisi Penjualan Normal (+)0%
Terpaksa (-)10%
9. Peruntukan lahan Pertanian Basah (-)10%
Pertanian Kering (-)5%
Non Pertanian Eks Basah (-)2,5%
Non Pertanian asli kering 0%
10. Kepadatan Penduduk Kalicacing 11,99%
Kelurahan Gendongan 10,83%
Salatiga 9,78%
Kutowinangun 8,77%
Mangunsari 6,70%
Tegalrejo 6,47%
Ledok 6,38%
Sidorejo Lor 6,15%
Cebongan 4,10%
Tingkir Tengah 3,57%
Dukuh 3,32%
Tingkir Lor 3,29%
Blotongan 3,20%
Kauman Kidul 2,17%
Kalibening 2,15%
Sidorejo Kidul 2,10%
Noborejo 1,91%
Pulutan 1,82%
Randuacir 1,48%
Kecandran 1,46%
Kumpulrejo 1,30%
Bugel 1,08%
11. Tingkat Investasi Cebongan 26,07%
Ledok 20,00%
Mangunsari 11,81%
Noborejo 0,86%
Kutowinangun 0,67%
Tingkir Tengah 0,47%
Kalicacing 0,15%
15
Gendongan 0,09%
Sidorejo Lor 0,09%
Dukuh 0,08%
Kecandran 0,07%
Tingkir Lor 0,06%
Salatiga 0,05%
Kauman Kidul 0,04%
Sidorejo Kidul 0,04%
Blotongan 0,04%
Kalibening 0,03%
Kumpulrejo 0,02%
Bugel 0,01%
Randuacir 0,01%
Tegalrejo 0,01%
Pulutan 0,003%
12. Tingkat Produktivitas 3 Kali Panen (-)15%
2 Kali Panen (-)10%
1 Kali Panen (-)5%
Tidak Produktif 0%
13. Kontur Lahan Datar 5%
Kemiringan < = 5o 0%
Kemiringan > 5o <= 10o (-)5%
Kemiringan > 10o <= 30o (-)10%
Kemiringan > 30o (-)15%
14. Zona Zona Perumahan 10%
Zona Industri 5%
Zona Pertanian 0%
15. Tampak Muka Tampak Muka Lebar 2,50%
Tampak Muka Sempit 0%
16. Akses Jalan Akses Jalan Aspal 5%
Akses Jalan Beton 2,50%
Akses Jalan Tanah 0%
17. Posisi terhadap Jalan Sejajar Jalan 5%
Di Atas Jalan 2,50%
Di Bawah Jalan 0%
18. Dekat Dekat Pemakaman (-)2,5%
Dekat TPA/TPS (-)5%
Tidak Dekat Pemakaman dan 0%
TPA/TPS
Karena prototyping yang telah dibangun sudah sesuai keinginan Kasubbid Pelayanan, Pengolahan Data dan Informasi BKD Kota Salatiga, maka dilanjutkan ke tahap berikutnya.
16 4. Mengkodekan Sistem
Dalam tahap ini prototyping yang sudah disepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai yaitu Bahasa Pemrograman PHP (Hypertext Preprocessor) dengan Framework CodeIgniter.
5. Menguji Sistem dan Pengujian Kode
Setelah sistem sudah menjadi suatu perangkat lunak yang siap pakai, harus diuji dahulu sebelum digunakan. Pengujian dilakukan dengan mendemokan aplikasi kepada Kasubbid Pelayanan, Pengolahan Data dan Informasi BKD Kota Salatiga. Tahap ini akan dijelasakan di bab 4.
6. Evaluasi Sistem
Pelanggan mengevaluasi apakah sistem yang sudah jadi sudah sesuai dengan yang diharapkan. Tahap ini akan dijelasakan di bab 4.
7. Menggunakan Sistem
Perangkat lunak yang telah diuji dan diterima Kasubbid Pelayanan, Pengolahan Data dan Informasi Badan Keuangan Daerah (BKD) Kota Salatiga, diserahkan kepada BKD Kota Salatiga.
Tahapan terakhir adalah Penulisan Artikel Ilmiah.
4. Hasil dan Pembahasan
Aplikasi Penentuan Harga Pasar diimplementasikan dalam bentuk web yang dibangun dengan model prototping, untuk mempermudah Kasubbid Penetapan BKD Kota Salatiga dalam melihat perkiraan harga pasar atas suatu objek pajak dimanapun dan kapanpun. Penggunaan Framework CodeIgniter dalam pembangunan aplikasi ini, mempermudah pembangun dalam proses penulisan kode program dengan lebih cepat dan terstruktur dengan konsep Model-View-Controller (MVC). Dalam konsep tersebut model dapat mengakses database, view berfungsi dalam hal tampilan, dan controller memiliki fungsi-fungsi yang mengatur jalannya aplikasi serta menghubungkan model dan view.
Pada aplikasi ini terdapat 6 user yaitu Front Office (FO), Kasubbid Pelayanan, Kasubbid Penetapan, Kabid Pendapatan, Tim Lapangan, dan Admin. Admin memiliki hak akses penuh pada aplikasi ini. FO bertugas dalam pengelolaan berkas BPHTB, Kasubbid Pelayanan bertugas memverifikasi kelengkapan berkas BPHTB, Kasubbid Penetapan bertugas memverifikasi penetapan pajak BPHTB dan menentukan perkiraan harga pasar, Tim Lapangan bertugas memasukkan data hasil cek lapangan dan wawancara berkaitan dengan objek pajak, dan Kabid Pendapatan bertugas mensahkan pajak BPHTB. Sebelum masuk ke aplikasi, diharuskan login terlebih dahulu. Form login ditunjukkan pada Gambar 6.
17
Gambar 6 Form Login
Gambar 5 adalah form login yang memiliki dua text field yaitu username dan password. Admin harus memasukkan username dan password yang sesuai dengan yang ada di database. Kode program form login terdapat pada Kode Program 1.
Kode Program 1 Controller Login
Kode Program 1 merupakan controller fungsi untuk memvalidasi username dan password dari database. Username dan password akan diperiksa di database,
1. public function aksi_login() {
2. $username = $this->security->xss_clean($this->input-
>post('username'));
3. $password = $this->security->xss_clean($this->input-
>post('password'));
4. $q_cek = $this->db->query("SELECT * FROM user WHERE username = '".$username."' AND password = '".$password."'");
5. $j_cek = $q_cek->num_rows();
6. $d_cek = $q_cek->row();
7. if($j_cek > 0){
8. $data_session = array(
9. 'admin_kd_petugas' => $d_cek->kd_petugas,
10. 'admin_nama' => $d_cek->nama_petugas,
11. 'admin_kd_jabatan' => $d_cek->kd_jabatan,
12. 'admin_user' => $d_cek->username,
13. 'admin_nip' => $d_cek->nama_petugas,
14. 'foto' => $d_cek->photo,
15. 'admin_level' => $d_cek->level,
16. 'admin_valid' => true
17. );
18. $this->session->set_userdata($data_session);
19. if ($this->session->userdata("admin_level") == "Super Admin" || $this->session->userdata("admin_level") == "FO") {
20. redirect(base_url());
21. } else {
22. redirect('index.php/proses/home2');
23. }
24. } else {
25. $this->session->set_flashdata("k", "<div id=\"alert\"
class=\"alert alert-error\">username or password is not valid</div>");
26. redirect('index.php/proses/login');
27. }
28. }
18
apabila ada maka dibuatlah session dan diarahkan ke halaman utama, apabila tidak akan ada pemberitahuan bahwa username dan password tidak valid dan diarahkan ke form login.
Setelah berhasil login, maka sistem akan mengarahkan admin ke halaman utama. Halaman utama tersebut memberikan informasi mengenai berkas BPHTB.
Gambar 7 Halaman Utama
Gambar 7 merupakan halaman utama pada aplikasi yang memberikan informasi mengenai berkas BPHTB. Pada halaman utama terdapat menu Pendaftaran yang digunakan oleh Front Office (FO) dalam mengelola berkas BPHTB. Menu Survei Lapangan digunakan oleh Tim Lapangan saat memasukkan hasil cek lapangan. Menu Penetapan digunakan Oleh Kasubbid Penetapan dalam menverifikasi penetapan pajak dan menentukan perkiraan harga pasar.
Untuk menentukan perkiraan harga pasar admin ataupun Kasubbid Penetapan harus masuk ke menu Penetapan. Dalam menu ini terdapat submenu Data Pembanding, Perkiraan Harga Pasar, dan Lihat Hasil Perkiraan Harga Pasar. Ketiga submenu tersebut saling berkaitan. Dalam submenu Data Pembanding ditampilkan berkas BPHTB kemudian dapat melihat detail berkas dan dapat menambah data pembanding atas berkas yang dipilih.
Gambar 8 Submenu Data Pembanding
19
Gambar 8 merupakan submenu Data Pembanding yang menampilkan berkas BPHTB beserta informasi yang terdapat di dalamnya. Pada submenu ini terdapat fungsi untuk melihat detail berkas BPHTB dan menambah data pembanding atas berkas yang dipilih. Dalam penambahan data pembanding dilakukan dengan memilih variabel-variabel pembanding yang telah ada pada database tabel banding.
Kode program 2 Fungsi Insert Data Pembanding
Kode Program 2 merupakan fungsi insert data pembanding, yang akan menambahkan data pembanding pada tabel banding. Sebelum melakukan insert pada tabel banding, dilakukan pengecekan atas id berkas BPHHTB pada tabel banding. Apabila data pembanding dengan id berkas tersebut belum ada, maka dilakukan insert pada tabel banding, namun apabila data pembanding dengan id berkas tersebut sudah ada, maka akan ada pemberitahuan bahwa data pembanding telah ada dan diarahkan ke tampilan submenu Data Pembanding.
1. public function InsertPembanding() { 2. $data_pembanding = array (
3. "idberkas" => $this->input->post('idberkas'), 4. "tglin_banding" => date('Y-m-d'),
5. "id_var1" => $this->input->post('id_var1'), 6. "id_var2" => $this->input->post('id_var2'), 7. "id_var3" => $this->input->post('id_var3'), 8. "id_var4" => $this->input->post('id_var4'), 9. "id_var5" => $this->input->post('id_var5'), 10. "id_var6" => $this->input->post('id_var6'), 11. "id_var7" => $this->input->post('id_var7'), 12. "id_var8" => $this->input->post('id_var8'), 13. "id_var9" => $this->input->post('id_var9'), 14. "id_var10" => $this->input->post('id_var10'), 15. "id_var11" => $this->input->post('id_var11'), 16. "id_var12" => $this->input->post('id_var12'), 17. "id_var13" => $this->input->post('id_var13'), 18. "id_var14" => $this->input->post('id_var14'), 19. "id_var15" => $this->input->post('id_var15'), 20. "id_var16" => $this->input->post('id_var16'), 21. "id_var17" => $this->input->post('id_var17'), 22. "id_var18" => $this->input->post('id_var18')
23. );
24. $cek_banding = $this->db->get_where('banding', array("idberkas"
=> $this->input->post('idberkas')));
25. $count3 = $cek_banding->num_rows();
26. if ($count3 === 0) {
27. $this->proses->insertPembanding($data_pembanding, 'banding');
28. $this->session->set_flashdata("k", "<div class=\"alert alert-success\" id=\"alert\">Data Pembanding Berhasil
Ditambahkan.</div>");
29. redirect("index.php/proses/pembanding");
30. } else {
31. $this->session->set_flashdata("k", "<div class=\"alert alert-warning\" id=\"alert\">Data Pembanding Sudah Ada.</div>");
32. redirect("index.php/proses/pembanding");
33. }
34. }
20
Gambar 9 Submenu Perkiraan Harga Pasar
Gambar 9 merupakan submenu Perkiraan Harga Pasar yang menampilkan berkas BPHTB yang akan dipilih untuk dicari perkiraan harga pasarnya.
Dilanjutkan dengan pemilihan tiga buah data pembanding yang akan digunakan sebagai acauan dalam perhitungan untuk menentukan harga pasar. Saat memilih data pembanding dapat dilihat informasi mengenai data pembanding tersebut dan dapat pula dilihat detailnya.
Gambar 10 Hasil Perbandingan pada Submenu Perkiraan Harga Pasar
Gambar 10 merupakan bagian dari submenu Perkiraan Harga Pasar, yang berupa hasil perbandingan harga adjustment dengan harga penawaran subjek properti. Harga adjustment didapatkan dari perhitungan atas ketiga data pembanding yang telah dipilih, sedangkan harga penawaran adalah harga pasar atas objek tanah yang dimasukkan saat pendaftaran berkas BPHTB. Dari hasil perbandingan didapatkan selisih harga adjustment dengan harga penawaran, serta persentase selisihnya. Harga penawaran dapat dikatakan wajar apabila persentase selisihnya kurang dari atau sama dengan 5%. Apabila persentase selisihnya tidak wajar, maka harga penawaran tersebut harus direvisi oleh wajib pajak ataupun PPAT yang bersangkutan.
21 Kode program 3 Fungsi Insert Perbandingan
Kode Program 3 merupakan fungsi insert perbandingan yang akan menambahkan hasil perbandingan atas ketiga data pembanding yang telah dipilih dengan berkas BPHTB yang dicari perkiraan harga pasarnya, pada tabel hasil.
Gambar 11 Cetak Hasil pada Submenu Lihat Hasil Perkiraan Harga Pasar
Gambar 11 merupakan tampilan cetak hasil perbandingan pada submenu Lihat Perkiraan Harga Pasar yang berisi detail berkas BPHTB yang dicari perkiraan harga
1. public function insertPerbandingan() { 2. $data_perbandingan = array (
3. "idberkas" => $this->input->post('idb'), 4. "id_banding1" => $this->input->post('idban1'), 5. "id_banding2" => $this->input->post('idban2'), 6. "id_banding3" => $this->input->post('idban3'), 7. "tgl" => date('Y-m-d'),
8. "adj1" => $this->input->post('adj1'), 9. "adj2" => $this->input->post('adj2'), 10. "adj3" => $this->input->post('adj3'),
11. "harga_subjekpm" => $this->input->post('harga_subjekpm'), 12. "harga_penawaran" => $this->input-
>post('harga_penawaran'),
13. "harga_adj1" => $this->input->post('harga_adj1'), 14. "harga_adj2" => $this->input->post('harga_adj2'), 15. "harga_adj3" => $this->input->post('harga_adj3'),
16. "indikasi_rata2" => $this->input->post('indikasi_rata2'), 17. "luas_subjek" => $this->input->post('luas_subjek'), 18. "nilai_subjek" => $this->input->post('nilai_subjek'), 19. "selisih" => $this->input->post('selisih'),
20. "selisih_persen" => $this->input->post('selisih_persen')
21. );
22. $cek_hasil = $this->db->get_where('hasil', array("idberkas" =>
$this->input->post('idberkas'), "id_banding1" => $this->input-
>post('idban1'), "id_banding2" => $this->input->post('idban2'),
"id_banding3" => $this->input->post('idban3') ));
23. $count3 = $cek_hasil->num_rows();
24. if ($count3 === 0) {
25. $this->proses->insertPerbandingan($data_perbandingan, 'hasil');
26. } else {
27. $this->session->set_flashdata("k", "<div class=\"alert alert-warning\" id=\"alert\">Data Perbandingan Sudah Ada.</div>");
28. redirect("index.php/proses/pilihBerkas");
29. }
30. redirect("index.php/proses/CetakHasil");
31. }
22
pasarnya serta hasil dari perbandingan harga adjustment dengan harga penawaran subjek properti.
Tahap terakhir sebelum penulisan jurnal adalah pengujian sistem. Pengujian sistem ini dilakukan menggunakan alpha testing dan beta testing. Pengujian alpha dilakukan oleh tim internal pada lingkungan internal dengan pengembang tetap mengawasi apabila terjadi kesalahan. Pengujian beta dilakukan oleh pengguna akhir pada suatu lingkungan yang tidak dikontrol oleh pengembang [8]. Pengujian alpha aplikasi ini dilakukan dengan menggunakan metode black box. Hasil dari pengujian alpha dengan black box ditunjukkan pada Tabel 2.
Tabel 2 Hasil Pengujian Alpha Menggunakan Metode Black Box Fungsi yang
diuji Kondisi Output yang diharapkan
Output yang dihasilkan
sistem
Status Pengujian Login Username dan
password benar
Sukses login Sukses login
Valid Username dan
password salah atau kosong
Gagal login Gagal login
Menampilkan berkas BPHTB
Membuka halaman submenu Data Pembanding
Sukses
tampilkan data
Sukses
tampilkan data Valid
Menampilkan detail berkas BPHTB
Membuka halaman Detail Data
Sukses tampilkan data
Sukses
tampilkan data Valid
Menampilkan halaman Tambah Data Pembanding
Membuka halaman Tambah Data Pembanding
Sukses tampilkan data
Sukses tampilkan data
Valid
Tambah data pembanding
Mengisi form dengan benar
Sukses tambah data
Sukses tambah
data Valid
Menampilkan dan memilih berkas BPHTB untuk dicari perkiraan harga pasar
Membuka halaman submenu Perkiraan Harga Pasar
Sukses tampilkan data dan memilih data
Sukses tampilkan data dan memilih
data Valid
Menampilkan dan memilih pembanding untuk mencari perkiraan harga pasar
Membuka halaman Pilih Pembanding
Sukses tampilkan data dan memilih data
Sukses tampilkan data dan memilih
data Valid
Menampilkan detail data pembanding
Membuka halaman Detail Pembanding
Sukses tampilkan data
Sukses
tampilkan data Valid
Menampilkan perhitungan dan hasil perbandingan
Membuka halaman Perbandingan
Sukses hitung dan tampilkan data
Sukses hitung dan tampilkan
data Valid
23 Tambah data
hasil
perbandingan
Tahapan dilakukan dengan benar
Sukses tambah data
Sukses tambah
data Valid
Mencetak hasil perbandingan
Membuka halaman Cetak Hasil
Sukses tampilkan dan cetak data
Sukses tampilkan dan cetak data
Valid
Menampilkan hasil perkiraan harga pasar
Membuka halaman submenu Lihat Hasil Perkiraan Harga Pasar
Sukses tampilkan data
Sukses tampilkan data
Valid
Tabel 2 menunjukkan seluruh status pengujian pada aplikasi ini valid. Hal ini berarti aplikasi ini berjalan seperti yang diharapkan. Dari pengujian alpha dengan black box pada aplikasi ini dapat disimpulkan bahwa aplikasi penentuan nilai pasar pada BPHTB di Badan Keuangan Daerah Kota Salatiga telah memenuhi seluruh kondisi yang diperlukan dengan hasil yang diharapkan.
Setelah dilakukan pengujian alpha, pengujian beta diperlukan untuk mendapat hasil kelayakan aplikasi. Pengujian beta dilakukan dengan wawancara dengan semua user pada sistem ini, terkhusus dengan Kasubbid Pelayanan, Pengolahan Data dan Informasi Badan Keuangan Daerah Kota Salatiga.
Tabel 3 Hasil Pengujian Beta dengan Wawancara
No Pertanyaan
Jawaban
Ya Tidak
1 Bagaimana kinerja sistem? v
2 Apakah semua fitur dapat diakses dengan baik? v 3 Apakah user dapat menggunakan dengan baik? v 4 Apakah sistem dapat membantu menentukan nilai pasar? v 5 Apakah hasil perkiraan nilai pasar relevan dengan kondisi
sekarang? v
Tabel 3 merupakan hasil pengujian beta yang dilakukan dengan wawancara kepada semua user pada sistem ini, terkhusus kepada Kasubbid Pelayanan, Pengolahan Data dan Informasi Badan Keuangan Daerah Kota Salatiga. Dari semua yang ditanyakan mendapat hasil yang baik. Maka dapat disimpulkan bahwa aplikasi penentuan nilai pasar pada BPHTB di Badan Keuangan Daerah Kota Salatiga berjalan dengan baik.
5. Simpulan
Berdasarkan penelitian yang telah dilakukan maka disimpulkan bahwa aplikasi penentuan nilai pasar pada BPHTB di Badan Keuangan Daerah Kota Salatiga telah berhasil dibangun menggunakan Bahasa Pemrograman PHP dengan Framework CodeIgniter. Penggunaan Framework CodeIgniter dalam pembangunan aplikasi ini, mempermudah pembangun dalam proses penulisan kode program dengan lebih cepat dan terstruktur dengan konsep Model-View-Controller (MVC), terutama pada proses perhitungan perbandingan.
24
Berdasarkan hasil wawancara terhadap Kasubbid Pelayanan, Pengolahan Data dan Informasi Badan Keuangan Daerah Kota Salatiga, terkait aplikasi yang telah dibangun, aplikasi ini dapat membantu Badan Keuangan Daerah Kota Salatiga dalam menentukan nilai pasar yang akurat sebagai acuan pengenaan pajak BPHTB, sehingga dapat mempermudah dalam menentukan pengenaan pajak BPHTB yang wajar atas suatu berkas BPHTB.
Untuk penelitian selanjutnya, aplikasi penentuan nilai pasar dapat dikembangkan dengan menambah fitur untuk menambah parameter, variabel, dan persentase sehingga didapatkan hasil yang lebih akurat serta fitur untuk terhubung dengan database yang berkaitan dengan tanah dan bangunan di Badan Pertanahan Nasional (BPN).
6. Daftar Pustaka
[1] Maulidah, Z., dkk., 2015, Mekanisme dalam Menentukan Nilai Pasar pada Pemungutan BPHTB atas Waris di Kota Surabaya oleh Dinas Pendapatan dan Pengelolaan Keuangan Kota Surabaya. Malang: Fakultas Hukum, Universitas Brawijaya.
[2] Murjiyanto, R., & Samun Ismaya, 2016, Menetapkan Pilihan Nilai Jual Objek Pajak Bumi dan Bangunan sebagai Dasar Penghitungan Bea Perolehan Hak atas Tanah dan Bangunan, Jurnal Hukum IUS QUIA IUSTUM, 23(1), http://journal.uii.ac.id/index.php/IUSTUM/article/view/5078.
[3] Peraturan Daerah Kota Salatiga Nomor 1 Tahun 2011.
[4] Id, Ibnu Daqiqil, 2011, Framework Codeigniter Sebuah Panduan dan Best Practice,
https://www.researchgate.net/publication/317069471_Framework_Codeignite r_-_Panduan_dan_Best_Practice.
[5] Pressman, R.S., 2010, Software Engineering: A Practitioner’s Approach 7th ed, Amerika Serikat: McGraw-Hill.
[6] Anandhata, Servasius Wisnu., 2013. Aplikasi Manajemen Operasi Pada Unit Dagang Pupuk Organik Berbasis Web Menggunakan CakePHP. Salatiga:
Program Studi Teknik Informatika FTI UKSW.
[7] Nugroho, A. 2010, Mengembangkan Aplikasi Basis Data Menggunakan C# + SQL Server, Yogyakarta : Andi Offset.
[8] Hariyanto, Bambang. 2004. Rekayasa Sistem Berorientasi Objek. Bandung:
Informatika.