PEMBUATAN APLIKASI PENGHITUNGAN PAJAK PENGHASILAN PASAL 21 ORANG PRIBADI BERDASARKAN UNDANG-UNDANG NOMOR 36 TAHUN 2008
OLEH: AGUS PRAMONO PUTRA 107091002863
PROGRAM SARJANA (S1) KOMPUTER PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 2014 M / 1435 H
HALAMAN JUDUL PEMBUATAN APLIKASI PENGHITUNGAN PAJAK PENGHASILAN PASAL 21 ORANG PRIBADI BERDASARKAN UNDANG-UNDANG NOMOR 36 TAHUN 2008
Skripsi Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer Pada Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh : Agus Pramono Putra 107091002863
PROGRAM SARJANA (S1) KOMPUTER PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 2014 M / 1435 H
i
LEMBAR PERSETUJUAN PEMBIMBING
ii
LEMBAR PENGESAHAN UJIAN
iii
LEMBAR PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENARBENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN.
Jakarta, 22 Mei 2014
Agus Pramono Putra 107091002863
iv
ABSTRAK
Agus Pramono Putra, dengan judul Pembuatan Aplikasi Penghitungan Pajak Penghasilan Pasal 21 Orang Pribadi Berdasarkan Undang-Undang Nomor 36 Tahun 2008, dibimbing oleh Siti Ummi Masruroh, M.Sc dan Imam M.Shofi, MT
Pajak adalah iuran wajib yang dipungut oleh pemerintah dari masyarakat (Wajib Pajak) untuk menutupi pengeluaran rutin negara dan biaya pembangunan tanpa balas jasa yang dapat ditunjuk secara langsung (Waluyo, 2008:26). Salah satu jenis pajak yang dikenakan adalah Pajak Penghasilan Orang Pribadi (PPh Orang Pribadi) pasal 21. Dasar pengenaan Pajak Penghasilan pasal 21 ini adalah Undang-Undang Pajak Penghasilan No. 17 Tahun 2000 sebagai mana telah dirubah terakhir dengan Undang-Undang Pajak Penghasilan No. 36 Tahun 2008. Aplikasi Penghitungan Pajak Penghasilan PPh 21 ini dapat dipergunakan untuk membantu perusahaan dalam menghitung PPh 21 OP karyawannya dan dapat mengetahui berapa total jumlah pajak PPh 21 yang harus dibayarkan oleh perusahaan dalam perbulan dan pertahun.
Kata Kunci : Pajak Penghasilan 21, Rapid Application Development (RAD), Code Igniter, JQuery Halaman
: xviii + 112 halaman + V Bab + 40 Gambar + 34 Tabel + 4 Lampiran
v
KATA PENGANTAR
Bismillaahirrahmaanirraahim, Puji dan syukur Penulis panjatkan kehadirat Allah SWT, karena atas berkat , rahmat, dan hidayah-Nya lah, penulis dapat menyelesaikan skripsi ini dengan judul “Pembuatan Aplikasi Penghitungan Pajak Penghasilan Pasal 21 Orang Pribadi Berdasarkan Undang-Undang Nomor 36 Tahun 2008”, sebagai tugas akhir untuk memenuhi mata kuliah skripsi , dan sekaligus sebagai salah satu syarat untuk memperoleh gelar sarjana komputer. Shalawat serta salam semoga tercurah kepada baginda nabi besar kita, suri tauladan kita, Nabi besar panutan orang-orang beriman, nabi besar Muhammad SAW. Juga kepada para keluarganya yang mulia, para sahabatnya yang agung, dan kita sebagai para pengikutnya semoga tetap istiqamah hingga akhir zaman. Skripsi ini dapat penulis selesaikan berkat dukungan, bimbingan, dan bantuan dari berbagai pihak. Dalam kesempatan ini, penulis ingin menyampaikan rasa terima kasih yang tak terbatas kepada : 1. Bapak Dr. Agus Salim, M.Si, selaku Dekan Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta. 2. Ibu Nurhayati, Ph.D dan Bapak Hendra Bayu, M.Kom selaku ketua dan Sekretaris Program Studi Teknik Informatika yang dengan tulus dan sabar membantu kelancaran penyelesaian skripsi ini. 3. Ibu Siti Ummi Masruroh, M.Sc dan Bapak Imam M.Shofi, MT selaku dosen pembimbing pada mata kuliah skripsi yang dengan sangat ikhlas
vi
dan sabar membimbing dan mengarahkan penulis dalam pembuatan skripsi ini. 4. Kepada kedua orang tua yang selalu memberikan dukungan moril dan materil kepada penulis. 5. Teman seperjuangan, sebangsa, dan setanah air TI-C angkatan 2007, TI-B (Networking). 6. Seluruh Dosen Program Studi Teknik Informatika. 7. Komunitas FCBK (FC Barcelona Kaskus), Anggota Stay Hungry Stay Foolish Guild Defence of the Ancient 2, dan Guild Last Exile Cabal Online Indonesia. Penulis menyadari bahwa skripsi ini masih jauh dari sempurna dan tidak lepas dari kesalahan dan kekurangan, oleh karena itu dengan segala kerendahan hati, penulis akan menerima semua saran dan kritik demi kesempurnaan di masa mendatang. Akhirnya, penulis berharap agar skripsi ini dapat bermanfaat bagi semua pihak yang berkepentingan.
Jakarta, 22 Mei 2014
Agus Pramono Putra
vii
DAFTAR ISI
HALAMAN JUDUL .............................................................................................. i LEMBAR PERSETUJUAN PEMBIMBING ..................................................... ii LEMBAR PENGESAHAN UJIAN .................................................................... iii LEMBAR PERNYATAAN ................................................................................. iv ABSTRAK ............................................................................................................. v KATA PENGANTAR .......................................................................................... vi DAFTAR ISI ....................................................................................................... viii DAFTAR GAMBAR .......................................................................................... xiii DAFTAR TABEL ............................................................................................... xv DAFTAR LAMPIRAN ..................................................................................... xvii 1. BAB I PENDAHULUAN .................................................................................. 1 1.1
Latar Belakang .......................................................................................... 1
1.2
Rumusan Masalah ..................................................................................... 3
1.3
Batasan Masalah ....................................................................................... 3
1.4
Tujuan Penelitian ...................................................................................... 4
1.5
Manfaat Penelitian .................................................................................... 4
1.5.1
Manfaat Bagi Penulis ...................................................................... 4
1.5.2
Manfaat Bagi Akademik.................................................................. 5
1.5.3
Manfaat Bagi Pengguna .................................................................. 5
1.6
Metode Penelitian ..................................................................................... 5
1.6.1
Metode Pengumpulan Data ............................................................. 5
1.6.1.1 Studi Pustaka .............................................................................. 5 1.6.1.2 Studi Lapangan ........................................................................... 6 1.6.1.3 Studi Literatur sejenis ................................................................. 6 viii
1.6.2 1.7
Metode Pengembangan Sistem........................................................ 6
Sistematika Penulisan ............................................................................... 7
2. BAB II LANDASAN TEORI ........................................................................... 8 2.1
Pajak .......................................................................................................... 8
2.1.1
Pengertian Pajak .............................................................................. 8
2.1.2
Fungsi Pajak .................................................................................... 9
2.1.3
Sistem Pemungutan Pajak ............................................................... 9
2.2
Undang-Undang Pajak Penghasilan No.36 Tahun 2008......................... 10
2.2.1 2.3
Pengertian Pajak Penghasilan ........................................................ 10
Pajak Penghasilan Pasal 21 ..................................................................... 11
2.3.1
Pengertian Pajak penghasilan Pasal 21.......................................... 11
2.3.2
Wajib pajak PPh Pasal 21 .............................................................. 11
2.3.3
Tidak Termasuk Objek Pajak Penghasilan Pasal 21 ..................... 12
2.3.4
Objek Pajak Penghasilan Pasal 21 ................................................. 13
2.3.5
Pemotongan Pajak PPh Pasal 21 ................................................... 14
2.3.6
Tarif Pajak Penghasilan ................................................................. 16
2.3.7
Pengurangan yang diperbolehkan.................................................. 17
2.3.8
Nomor Pokok Wajib Pajak (NPWP) ............................................. 17
2.3.9
Penghasilan Tidak Kena Pajak (PTKP) ......................................... 18
2.3.10
Contoh Penghitungan PPh 21 ........................................................ 19
2.4
Surat Pemberitahuan (SPT)..................................................................... 20
2.4.1
Pengertian Surat Pemberitahuan (SPT) ......................................... 20
2.4.2
Fungsi Surat Pemberitahuan (SPT) ............................................... 20
2.4.3
Lampiran Surat Pemberitahuan (SPT)........................................... 21
2.4.4
Batas Waktu Surat Pemberitahuan (SPT)...................................... 21
2.4.5
Pembetulan Surat Pemberitahuan (SPT) ....................................... 21 ix
2.4.6 2.5
Sanksi administrasi dan Sanksi Pidana Sehubungan Dengan SPT 22
Surat Setoran Pajak (SSP) ....................................................................... 23
2.5.1
Pengertian Surat Setoran Pajak (SSP) ........................................... 23
2.5.2
Fungsi Surat Setoran Pajak (SSP) ................................................. 23
2.5.3
Tempat pembayaran dan penyetoran pajak ................................... 23
2.5.4
Batas Waktu Pembayaran dan Penyetoran Pajak .......................... 23
2.6
Framework .............................................................................................. 24
2.7
Codeigniter Framework .......................................................................... 25
2.7.1 2.8
Kosep MVC ................................................................................... 27
Rapid Application Development (RAD) ................................................. 29
2.8.1
Konsep Dasar RAD ....................................................................... 29
2.8.2
Fase-fase RAD............................................................................... 30
2.8.3
Kekurangan RAD .......................................................................... 33
2.9
Unified Modeling Language(UML) ....................................................... 33
2.9.1
Definisi UML ................................................................................ 33
2.9.2
Diagram-Diagram UML ................................................................ 34
2.9.3
Keunggulan UML .......................................................................... 48
2.10
JQuery ................................................................................................. 49
2.10.1
Fungsi JQuery................................................................................ 50
2.11
Literatur Sejenis .................................................................................. 52
2.12
Pengujian Black-box ........................................................................... 53
3. BAB III METODOLOGI PENELITIAN ..................................................... 54 3.1
Perusahaan .............................................................................................. 54
3.2
Metode Pengumpulan Data ..................................................................... 57
3.2.1
Studi Pustaka ................................................................................. 57
3.2.2
Studi Lapangan .............................................................................. 58 x
3.2.2.1 Observasi .................................................................................. 58 3.2.2.2 Kuisioner................................................................................... 58 3.2.3 3.3
Studi Literatur Sejenis ................................................................... 58
Metode Pengembangan Sistem ............................................................... 60
3.3.1
Requirement Planning ................................................................... 60
3.3.2
Workshop Design........................................................................... 61
3.3.3
Implementation .............................................................................. 62
3.3.4
Fase RAD ...................................................................................... 63
3.4
Kerangka Berfikir ................................................................................... 64
4. BAB IV HASIL DAN PEMBAHASAN ........................................................ 65 4.1
Fase Requirement Planning .................................................................... 67
4.1.1
Analisis Sistem berjalan ................................................................ 67
4.1.1.1 Perusahaan ................................................................................ 67 4.1.1.2 Flowchart Business Process ...................................................... 68 4.1.1.3 Dokumen-dokumen yang terkait dalam prosedur : .................. 70 4.1.2
Identifikasi Masalah ...................................................................... 70
4.1.3
Solusi Permasalahan ...................................................................... 71
4.1.3.1 Analisa Sistem yang diusulkan ................................................. 71 4.2
Fase Workshop Design ............................................................................ 74
4.2.1
Membuat Use Case Diagram ......................................................... 74
4.2.2
Membuat Use Case Scenario ........................................................ 76
4.2.3
Membuat Activity Diagram............................................................ 83
4.2.4
Membuat Sequence Diagram ........................................................ 93
4.2.5
Desain Basis Data .......................................................................... 96
4.2.5.1 Database Relasional ................................................................. 96 4.2.5.2 Daftar Tabel .............................................................................. 97 xi
4.2.6
Desain Interface ............................................................................. 99
4.2.7
Pengkodean Sistem...................................................................... 102
4.2.8
Fase Implementation .................................................................... 104
4.2.8.1 Spesifikasi Hardware (Perangkat Keras) ............................... 104 4.2.8.2 Spesifikasi Software (Perangkat Lunak) ................................. 104 4.2.8.3 Hasil Pengujian Aplikasi ........................................................ 105 5. BAB V PENUTUP ......................................................................................... 110 5.1
Kesimpulan ........................................................................................... 110
5.2
Saran ..................................................................................................... 110
DAFTAR PUSTAKA ........................................................................................ 111
xii
DAFTAR GAMBAR
Gambar 2.1 Alur MVC pada Code Igniter (Daqiqil, 2011:6) ......................... 28 Gambar 2.2 Ilustrasi Model RAD (Shalahudin dan A.S Rosa, 2013) ............ 30 Gambar 2.3Fase RAD (Kendall dan Kendall, 2010:164) ................................ 32 Gambar 2.4 Contoh Class Diagram untuk Holiday Travel Vehicles ............... 36 Gambar 2.5 Textual Analysis Guidelines ........................................................... 37 Gambar 2.6 Class Diagram Syntax .................................................................... 38 Gambar 2.7 Syntax Untuk Use Case Diagram .................................................. 39 Gambar 2.8 Contoh Use Case Diagram untuk Vehicle Sales System ............ 40 Gambar 2.9 Sequence Diagram Syntax ............................................................. 42 Gambar 2.10 Sequence Diagram ........................................................................ 43 Gambar 2.11 Activity Diagram Syntax ............................................................... 45 Gambar 2.12 Activity Diagram untuk Offer for a Vehicle ................................ 46 Gambar 3.1Struktur Organisasi Perusahaan .................................................. 55 Gambar 3.2 Fase RAD ........................................................................................ 63 Gambar 3.3 Kerangka Berpikir ........................................................................ 64 Gambar 4.1 Flowchart Prosedur Pembayaran dan Pelaporan PPh 21 ......... 68 Gambar 4.2 Analisa Sistem yang diusulkan ..................................................... 72 Gambar 4.3 Flowchart Final .............................................................................. 74 Gambar 4.4 Use Case Diagram .......................................................................... 75 Gambar 4.5 Activity Diagram Hitung ............................................................... 83 Gambar 4.6 Activity Diagram Fungsi e-SPT.................................................... 84 Gambar 4.7 Activity Diagram Fungsi Cetak e-SPT ........................................ 85 Gambar 4.8 Activity Diagram Fungsi Simpan e-SPT ..................................... 86 Gambar 4.9 Activity Diagram Fungsi Reset ..................................................... 87 xiii
Gambar 4.10 Activity Diagram Fungsi Data Karyawan ................................. 88 Gambar 4.11 Activity Diagram Fungsi Edit Data Karyawan ........................ 89 Gambar 4.12 Activity Diagram Fungsi Delete Data Karyawan ..................... 90 Gambar 4.13 Activity Diagram Fungsi Cetak Data Karyawan ...................... 91 Gambar 4.14 Activity Diagram Fungsi Simpan Data Karyawan ................... 92 Gambar 4.15 Sequence Diagram Reset ............................................................. 93 Gambar 4.16 Sequence Diagram e-SPT ............................................................ 94 Gambar 4.17 Sequence Diagram Data Karyawan ........................................... 95 Gambar 4.18 Desain Database Relational ......................................................... 96 Gambar 4.19 Desain Interface Hitung Pajak ................................................... 99 Gambar 4.20 Desain Interface Hitung Pajak 2 .............................................. 100 Gambar 4.21 Desain Interface e-SPT .............................................................. 101 Gambar 4.22 Desain Interface Data Karyawan ............................................. 102 Gambar 0.1 Kuisioner Penelitian I.a ............................................................... A-7 Gambar 0.2 Kuisioner Penelitian I.b............................................................... A-8 Gambar 0.3 Kuisioner Penelitian II .............................................................. B-11 Gambar 0.4 SK Dosen Pembimbing .............................................................. C-12
xiv
DAFTAR TABEL
Table 3.1 Kelebihan dan Kekurangan dalam Literatur Sejenis ..................... 60 Table 4.1 Strategi Penyelesaian ......................................................................... 73 Table 4.2 Use Case Scenario Hitung Pajak....................................................... 76 Table 4.3 Use Case Scenario Reset .................................................................... 77 Table 4.4 Use Case Scenario Hitung.................................................................. 77 Table 4.5 Use Case Scenario Proses e-SPT ....................................................... 78 Table 4.6 Use Case Scenario Proses Cetak e-SPT ............................................ 78 Table 4.7 Use Case Scenario Simpan e-SPT ..................................................... 79 Table 4.8 Use Case Skenario Data Karyawan .................................................. 80 Table 4.9 Use Case Skenario Edit Data Karyawan .......................................... 80 Table 4.10 Use Case Skenario Delete Data Karyawan .................................... 81 Table 4.11 Use Case Skenario Cetak Data Karyawan ..................................... 82 Table 4.12 Use Case Skenario Simpan Data Karyawan .................................. 82 Table 4.13 Tabel tbl_ptkp .................................................................................. 97 Table 4.14 Tabel tbl_setting ............................................................................... 97 Table 4.15 Tabel tb_setting_detail ..................................................................... 98 Table 4.16 tb_admin ........................................................................................... 98 Table 4.17 vw_setting .......................................................................................... 99 Table 4.18 Pengujian Interface User ............................................................... 105 Table 4.19 Pengujian Aplikasi e-SPT .............................................................. 106 Table 4.20 Pengujian Aplikasi Data Karyawan ............................................. 107 Table 4.21 Tabel Pengujian Sistem menggunakan Kuesioner ...................... 108 Table 0.1 Divisi dalam perusahaan ................................................................. A-2 xv
Table 0.2 Keterlibatan dalam penghitungan PPh 21 ..................................... A-3 Table 0.3 Proses Penghitungan PPh 21 secara manual ................................. A-3 Table 0.4 Kesulitan penghitungan PPh21 secara manual ............................. A-4 Table 0.5 Kebutuhan akan aplikasi penghitungan PPh21 ............................ A-4 Table 0.6 Pernah menggunakan aplikasi pajak ............................................. A-4 Table 0.7 Tingkat kepentingan aplikasi bagi pekerjaan ............................... A-5 Table 0.8 Keinginan menggunakan aplikasi PPh21 ...................................... A-5 Table 0.9 Tabel Pengujian Sistem menggunakan Kuesioner ........................ B-9 Table 0.10 Pengkodean pada model .............................................................. D-13 Table 0.11Pengkodean pada Controller ........................................................ D-15 Table 0.12 Pengkodean pada View ................................................................ D-17
xvi
DAFTAR LAMPIRAN
Lampiran Hasil Kuisioner Penelitian I ........................................................... A-1 Lampiran Hasil Kuisioner Penelitian II ......................................................... B-9 SK Dosen Pembimbing Skripsi ...................................................................... C-12 Source Code ..................................................................................................... D-13
xvii
1.BAB I PENDAHULUAN
1.1
Latar Belakang Pajak menurut Undang-Undang Nomor 28 Tahun 2007 tentang Ketentuan
umum dan Tata Cara Perpajakan (UU KUP) adalah kontribusi wajib kepada negara yang terutang oleh orang pribadi atau badan yang bersifat memaksa berdasarkan Undang-Undang, dengan tidak mendapatkan imbalan secara langsung dan digunakan untuk kepentingan negara bagi sebesar-besarnya kemakmuran rakyat. Pembayaran pajak merupakan perwujudan dari kewajiban kenegaraan dan peran serta wajib pajak untuk secara langsung dan bersama-sama melaksanakan kewajiban perpajakan untuk pembiayaan negara dan pembangunan nasional. Salah satu jenis pajak yang dikenakan adalah Pajak Penghasilan orang pribadi (PPh orang pribadi) yaitu pajak yang dikenakan terhadap subjek pajak orang pribadi atas penghasilan yang diterima atau diperoleh dalam tahun pajak. Dasar pengenaan PPh 21 adalah Undang-Undang Pajak Penghasilan No. 17 Tahun 2000 sebagai mana telah diubah terakhir dengan Undang-Undang Pajak Penghasilan No.36 Tahun 2008. Sebagaimana halnya perekonomian dalam suatu rumah tangga atau keluarga, perekonomian negara juga mengenal sumber-sumber penerimaan dan pos-pos pengeluaran. Pajak merupakan sumber utama penerimaan negara. Tanpa pajak sebagian besar kegiatan negara sulit dijalankan. Penggunaan uang pajak
1
2
meliputi belanja pegawai, pembangunan sarana umum seperti jalan-jalan, jembatan, sekolah, rumah sakit dan lain-lain. Penerimaan negara yang berasal dari sektor perpajakan menduduki posisi utama dalam struktur Anggaran Pendapatan dan Belanja Negara (APBN). Artinya, jumlah penerimaan pajak jauh lebih tinggi dari penerimaan-penerimaan negara lainnya (Hasanudin Tatang, 2013:11). Keberhasilan pemungutan pajak oleh negara tidak lepas dari peran pihak ketiga dalam melaksakan kewajiban perpajakan yang menjadi tugasnya yang disebut withholding tax system. Fungsi withholding tax system adalah memanfaatkan pihak ketiga untuk memotong atau memungut sebagai bantuan tenaga bagi pemerintah untuk mengumpulkan pajak guna membiayai anggaran pemerintah. Untuk seorang Wajib Pajak Orang Pribadi (WPOP) yang menjadi karyawan dan memiliki pekerjaan tetap maka fungsi withholding tax system ini dilakukan oleh pemberi kerja. Proses pemotongan PPh 21 itu semakin memakan waktu merunut dari makin banyaknya jumlah karyawan dalam perusahaan/pemberi kerja. Atas dasar pemikiran tersebut penulis ingin membuat suatu aplikasi berbasis Web yang bertujuan untuk membantu pemberi kerja/perusahaan dalam menghitung PPh 21 karyawannya dengan judul “Pembuatan Aplikasi Penghitungan Pajak Penghasilan Pasal 21 Orang Pribadi berdasarkan Undang-Undang Nomor 36 Tahun 2008”
3
1.2
Rumusan Masalah
Dari penjelasan pada latar belakang diatas, maka ditetapkan suatu rumusan masalah yaitu : 1. Bagaimana membuat aplikasi Web penghitungan pajak yang dapat diakses oleh pemberi kerja/perusahaan. 2. Bagaimana membangun suatu aplikasi penghitungan pajak yang mudah digunakan
1.3
Batasan Masalah 1. Pembahasan pajak yang dimaksud hanya pajak yang berlaku dalam lingkup NKRI (Negara Kesatuan Republik Indonesia) saja. 2. Pajak yang diproses hitung dalam aplikasi hanya Pajak Penghasilan pasal 21 orang pribadi yang menerima gaji secara bulanan dan masa kerjanya dihitung selama setahun. 3. Proses penghitungan pajak berdasarkan pada Undang-Undang Nomor 36 Tahun 2008 tentang Pajak Penghasilan. 4. Output dari program berupa tampilan penghitungan PPh 21 5. Hasil penghitungan berupa file SPT dan pdf 6. Pengembangan sistem menggunakan bahasa pemrograman PHP, dengan tools XAMPP versi 3.2.1 sebagai penyedia web server service dan basis data.
4
7. Pengembangan sistem menggunakan framework Codeigniter versi 2.1.4 untuk mempermudah pengkodean dan dokumentasi, dan JQuery versi 1.11.0 sebagai interface. 8. Implementasi Web hanya sampai localhost, belum sampai terimplementasi pada jaringan Internet.
1.4
Tujuan Penelitian 1. Mempermudah menghitung besar pajak penghasilan WPOP tiap bulan dan tahun di perusahaan. 2. Mempersingkat waktu penghitungan PPh 21 bagi pemotong pajak di kerja/perusahaan.
1.5
Manfaat Penelitian 1.5.1 Manfaat Bagi Penulis a)
Menerapkan ilmu-ilmu yang diperoleh selama kuliah seperti Pengenalan Komputer, Rekayasa Perangkat Lunak, Pemrograman berbasis Web, dan Multimedia.
b)
Memperdalam dan memahami ilmu tentang Pajak.
c)
Mengetahui cara penghitungan Pajak Penghasilan Orang Pribadi pasal 21.
d)
Memenuhi salah satu syarat kelulusan mahasiswa Teknik Informatika UIN Syarif Hidayatullah Jakarta.
5
1.5.2 Manfaat Bagi Akademik a)
Mengetahui kemampuan mahasiswa dalam menguasai teori yang telah diperoleh selama kuliah.
b)
Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya dan sebagai bahan evaluasi.
c)
Memberikan
gambaran
tentang
kesiapan
mahasiswa
dalam
menghadapi dunia kerja dari hasil yang diperoleh selama belajar atau kuliah. 1.5.3 Manfaat Bagi Pengguna a)
Tersedia aplikasi untuk menghitung nominal Pajak Penghasilan Orang Pribadi Pasal 21.
b)
Mempermudah pemberi kerja/perusahaan dalam menghitung PPh 21 karyawannya.
c) 1.6
Mempersingkat waktu dalam penghitungan PPh 21.
Metode Penelitian 1.6.1 Metode Pengumpulan Data 1.6.1.1
Studi Pustaka Pada metode ini merupakan metode untuk memperoleh
teori-teori yang menjadi landasan untuk melaksanakan praktek maupun
memperoleh
teori-teori
pendukung
yang
dapat
digabungkan di lapangan, sehingga tercipta kesinambungan antara teori dan praktek yang bersumber dari buku-buku ilmiah, catatan
6
perkuliahan, dan buku lainnya, serta sumber-sumber terkait dari internet. 1.6.1.2
Studi Lapangan
a) Observasi Pengumpulan data dan informasi dengan cara melakukan peninjauan dan pengamatan langsung kegiatan-kegiatan yang berlangsung pada tempat pengambilan data yang bersangkutan.
1.6.1.3
Studi Literatur sejenis Dalam tahapan ini, penulis akan melakukan analisa
perbandingan dari sistem yang digunakan sebelumnya.
1.6.2 Metode Pengembangan Sistem Metode yang digunakan dalam perancangan system manajemen aset
TIK
adalah
dengan
pendekatan
RAD
(Rapid
Application
Development), dimana terdapat tiga fase utama yaitu (Kendall & Kendall, 2010:164) : 1. Requirement Planning 2. Workshop Design 3. Implementation
7
1.7
Sistematika Penulisan Dalam penulisan skripsi dibagi menjadi lima bab yang didalamnya
terdapat beberapa sub pokok bahasan. Sistematika penulisan dari skripsi adalah sebagai berikut: BAB I
Pendahuluan Bab ini berisi latar belakang, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, dan sistematika penulisan.
BAB II
Landasan Teori Bab ini berisi kajian teori yang berkaitan dalam penelitian dan penyusunan yang penulis lakukan.
BAB III
Metodologi Penelitian Bab ini menjelaskan tentang metode yang digunakan penulis dalam melakukan analisa dan pengembangan aplikasi.
BAB IV
Hasil dan Pembahasan Bab ini menjelaskan hasil dari penelitian yang telah dilakukan beserta penjelasan dari aplikasi yang dibuat.
BAB V
Penutup Bab ini berisi berisikan kesimpulan dan saran terhadap penelitian yang dilakukan.
2.BAB II LANDASAN TEORI
2.1
Pajak 2.1.1 Pengertian Pajak Pajak adalah iuran wajib yang dipungut oleh pemerintah dari masyarakat (wajib pajak) untuk menutupi pengeluaran rutin negara dan biaya pembangunan tanpa balas jasa yang dapat ditunjuk secara langsung. (Waluyo, 2008:26). Pengertian pajak menurut beberapa ahli : 1.
Prof Dr Adriani Pajak adalah iuran kepada negara yang dapat dipaksakan, yang terutang oleh wajib pajak membayarnya menurut peraturan dengan tidak mendapat imbalan kembali yang di tunjuk secara langsung.
2.
Prof. DR. Rachmat Sumitro, SH Pajak adalah iuran rakyat kepada kas negara (peralihan kekayaan dari kas negara ke sektor pemerintah berdasarkan undang-undang) dapat dipaksakan dengan tiada mendapat jasa timbal (tegen prestasi) yang langsung dapat ditunjukan dan digunakan untuk membiayai pengeluaran umum.
8
9
Lima unsur pokok dalam definisi pajak : 1. Iuran / pungutan 2. Pajak dipungut berdasarkan undang-undang 3. Pajak dapat dipaksakan 4. Tidak menerima kontraprestasi 5. Untuk membiayai pengeluaran umum pemerintah Pada dasarnya setiap definisi pajak yang dikemukakan para ahli memuat unsur-unsur diatas. Adanya kelima unsur tersebut menjadikan pajak mempunyai kekuatan hukum yang kuat sehingga apabila masyarakat wajib pajak tidak melakukan kewajiban pembayaran pajak sesuai dengan UU perpajakan, maka wajib pajak tersebut dapat dikenakan sanksi administrasi maupun pidana. 2.1.2 Fungsi Pajak Fungsi pajak ada dua yaitu : 1. Fungsi Budgeter (Penerimaan) merupakan fungsi pajak sebagai sumber dana pemerintah untuk biaya-biaya pengeluarannya. 2. Fungsi Regulerent (Mengatur) adalah fungsi pajak sebagai alat untuk mengatur kebijakan pemerintah dibidang sosial ekonomi (Waluyo, 2008:30). 2.1.3 Sistem Pemungutan Pajak a. Official Assessment System Sistem pemungutan pajak yang memberi wewenang kepada pemerintah untuk menentukan besarnya pajak yang terutang oleh wajib
10
pajak. Dalam official assessment system wajib pajak bersifat pasif dan utang pajak timbul setelah dikeluarkan surat ketetapan pajak oleh fiskus (pemotong pajak) b. Self Assessment System Sistem pemungutan pajak yang memberi wewenang kepada wajib pajak untuk menentukan besarnya pajak yang terutang. Dalam Self Assessment System wajib pajak bersifat aktif, mulai dari menghitung, menyetor, dan melaporkan sendiri pajak yang terutang sedangkan fiskus tidak ikut campur, hanya mengawasi. c. With Holding System Sistem pemungutan pajak yang member wewenang kepada pihak ketiga (bukan fiskus dan bukan wajib pajak yang bersangkutan) untuk menentukan besarnya pajak yang terhutang oleh wajib pajak. 2.2
Undang-Undang Pajak Penghasilan No.36 Tahun 2008 2.2.1 Pengertian Pajak Penghasilan Dalam pasal 1 Undang-Undang No.7 Tahun 1983 tentang pajak penghasilan sebagaimana telah diubah terakhir dengan Undang-Undang No.36 Tahun 2008 yang dimaksud dengan pajak penghasilan adalah pajak yang dikenakan terhadap subjek pajak atas penghasilan yang diterima atau diperolehnya dalam tahun pajak. Dalam Waluyo (2008:89) subjek pajak diartikan orang yang dituju oleh undang-undang untuk dikenakan pajak. Undang-Undang pasal 36 Tahun 2008 merupakan Undang-Undang perubahan keempat atas Undang-Undang No.7 tahun 1983 yang mengatur
11
tentang Pajak Penghasilan. Undang-Undang ini mulai diberlakukan sejak tanggal 1 Januari 2009.
2.3
Pajak Penghasilan Pasal 21 2.3.1 Pengertian Pajak penghasilan Pasal 21 “Pajak penghasilan pasal 21 merupakan pajak penghasilan yang dikenakan atas penghasilan berupa gaji, upah, honorarium, tunjangan, dan pembayaran lain dengan nama apapun sehubungan dengan pekerjaan, jasa, atau kegiatan yang dilakukan oleh wajib pajak pribadi dalam negeri”. (Waluyo,2009:38) Dasar pengenaan pajak penghasilan pasal 21 adalah UndangUndang Pajak Penghasilan No.17 Tahun 2000 sebagai mana telah dirubah terakhir dengan Undang-Undang Pajak Penghasilan No.36 Tahun 2008.
2.3.2 Wajib pajak PPh Pasal 21 Menurut Waluyo dan Wirawan B. Ilyas (2001:14) penerimaan penghasilan yang dipotong pajak penghasilan orang pribadi pasal 21 yaitu: a) Pegawai adalah setiap orang pribadi, yang melakukan pekerjaan berdasarkan perjanjian atau kesepakatan kerja baik tertulis maupun tidak tertulis, termasuk yang melakukan pekerjaan dalam jabatan negeri atau Badan Usaha Milik Negara atau Badan Usaha Milik Daerah.
12
b) Penerima uang pensiun adalah orang pribadi atau ahli warisnya yang menerima atau memperoleh imbalan untuk pekerjaan yang dilakukan dimasa lalu, termasuk orang pribadi atau ahli warisnya yang menerima Tabungan Hari Tua. c) Penerima honorarium adalah orang pribadi yang menerima atau memperoleh imbalan sehubungan dengan jasa, jabatan, atau kegiatan yang dilakukan. d) Penerima upah adalah orang pribadi yang menerima upah harian, upah mingguan, upah borongan, atau upah satuan. e) Orang pribadi lainnya yang menerima atau memperoleh penghasilan sehubungan dengan pekerjaan, jasa, dan kegiatan dari pemotong pajak.
2.3.3 Tidak Termasuk Objek Pajak Penghasilan Pasal 21 Dalam Pasal 8 Keputusan Direktorak Jenderal Pajak No. KEP 31/PJ/2009, yang tidak termasuk objek pajak penghasilan Pasal 21, yaitu: a) Pembayaran asuransi dari perusahaan asuransi kesehatan, asuransi kecelakaan, asuransi jiwa, asuransi dwiguna, dan asuransi beasiswa. b) Penerima dalam bentuk natura dan kenikmatan kecuali yang diberikan oleh bukan wajib pajak. c) Iuran pensiun yang dibayarkan kepada dana pensiun yang pendiriannya disahkan Menteri Keuangan serta Iuran Tabungan hari Tua atau Tunjangan Hari Tua (THT).
13
d) Kenikmatan yang berupa pajak yang ditanggung oleh pemberi kerja. e) Zakat yang diterima oleh pribadi yang berhak dari badan atau lembaga amil zakat yang dibentuk atau disahkan oleh Pemerintah. f)
Beasiswa
2.3.4 Objek Pajak Penghasilan Pasal 21 Dalam pasal 3 Peraturan Direktorat Jenderal Pajak No. PER 31/PJ/2009, yang menjadi objek penghasilan adalah : a)
Penghasilan yang diterima atau diperoleh secara teratur berupa gaji, uang pensiun bulanan, upah, honorarium, (termasuk honorarium anggota dewan komisaris atau anggota dewan pengawas) premi bulanan, uang lembur, uang sokongan, uang tunggu, uang ganti rugi, tunjangan istri, tunjangan anak, tunjangan jabatan, tunjangan khusus, tunjangan transportasi, tunjangan pajak, tunjangan pensiun, tunjangan pendidikan anak, beasiswa, premi asuransi yang dibayar pemberi kerja, dan penghasilan teratur lainnya dengan nama apapun.
b) Penghasilan yang diterima atau diperoleh secara tidak teratur berupa jasa produksi, tantiem, gratifikasi, tunjangan cuti, tunjangan hari raya, tunjangan tahun baru, bonus, premi tahunan, dan penghasilan sejenis lainnya yang sifatnya tidak tetap. c)
Upah harian, upah mingguan, upah satuan dan upah borongan.
d) Uang tebusan pensiun, uang pesangon, uang tabungan hari tua, atau jaminan hari tua, dan pembayaran lain sejenis.
14
e)
Honorarium, uang saku, hadiah, atau penghargaan dengan nama dan dalam bentuk apapun, komisi, beasiswa, dan pembayaran lain sebagai imbalan, sehubungan dengan pekerjaan, jasa, dan kegiatan yang dilakukan oleh pihak berwajib dalam negeri.
f)
Gaji, gaji kehormatan, tunjangan-tunjangan lain yang terkait dengan gaji yang diterima oleh pejabat negara dan PNS.
g) Uang pensiun dan tunjangan-tunjangan lain yang bersifat terkait dengan uang pensiun yang diterima oleh pensiunan termasuk janda dan duda dan atau anak-anaknya. h) Penerima dalam bentuk natura dan kenikmatan lainnya dengan nama apapun yang diberikan oleh bukan wajib pajak. 2.3.5 Pemotongan Pajak PPh Pasal 21 Yang dapat melakukan pemotongan pajak antara lain: a) Pemberi kerja yang terdiri dari orang pribadi dan badan, baik merupakan pusat maupun cabang, perwakilan atau unit, bentuk usaha tetap, yang membayar gaji, upah, honorarium, tunjangan, dan pembayaran lain dengan nama apapun, sebagai imbalan sehubungan dengan pekerjaan atau jasa yang dilakukan oleh pegawai atau bukan pegawai. b) Bendaharawan pemerintah termasuk bendaharawan pada pemerintah pusat, pemerintah daerah, instansi atau lembaga pemerintah, lembagalembaga negara lainnya, dan kedutaan besar RI (Republik Indonesia) diluar negeri yang membayar gaji, upah, honorarium, tunjangan, dan
15
pembayaran lain dengan nama apapun, sehubungan dengan pekerjaan atau jabatan, jasa, dan kegiatan. c) Dana pensiun, Badan Penyelenggara Jaminan Sosial, tenaga kerja, dan badan-badan lain yang membayar uang pensiun dan Tabungan Hari Tua atau Jaminan Hari Tua. d) Perusahaan, Badan, dan Bentuk Usaha Tetap, yang membayar honorarium atau pembayaran lain sebagai imbalan sehubungan dengan kegiatan, jasa, termasuk jasa tenaga ahli dengan status wajib pajak dalam negeri yang melakukan pekerjaan bebas dan bertindak untuk dan atas nama persekutuannya. e) Perusahaan, Badan, dan Bentuk Usaha Tetap, yang membayar honorarium atau pembayaran lain sebagai imbalan sehubungan dengan kegiatan, jasa, termasuk jasa tenaga ahli dengan status wajib pajak luar negeri. f)
Yayasan,(termasuk yayasan dibidang kesejahteraan, rumah sakit, pendidikan kesenian, olah raga, kebudayaan), lembaga, kepanitiaan, asosiasi, perkumpulan, organisasi masa, organisasi sosial politik, dan organisasi lainnya dalam bentuk apapun dalam segala bidang kegiatan sebagai pembayaran gaji, upah, honorarium, atau imbalan dengan nama apapun sehubungan dengan pekerjaan, jasa, kegiatan yang dilakukan orang pribadi.
16
g) Perusahaan, Badan, dan Bentuk Usaha Tetap, yang membayarkan honorarium sebagai imbalan lain kepada peserta didik, pelatihan, dan pemagangan. h) Penyelenggara kegiatan (termasuk badan pemerintah, organisasi termasuk organisasi internasional, perkumpulan, orang pribadi serta lembaga lainnya yang menyelenggarakan kegiatan) yang membayar honorarium, hadiah atau penghargaan dalam bentuk apapun kepada wajib pajak orang pribadi dalam negeri berkenaan dengan suatu kegiatan.
2.3.6 Tarif Pajak Penghasilan
Tabel 2.1Tarif Pasal 17 UU Nomor 36 Tahun 2008 Penghasilan Kena Pajak
Tarik Pajak
Sampai dengan Rp 50.000.000
5%
Diatas Rp 50.000.000 s.d Rp
15%
250.000.000 Diatas Rp 250.000.000 s.d Rp
25%
500.000.000 Diatas 500.000.000
30%
Sumber : Undang-Undang Perpajakan No.36 Tahun 2008
17
2.3.7
Pengurangan yang diperbolehkan Dalam pasal 1 Keputusan Jenderal Pajak No. KEP-250/PJ/2009,
yang menjadi pengurangan Pajak Penghasilan Pasal 21 adalah : a) Besarnya biaya jabatan yang dapat dikurangkan dari penghasilan bruto untuk penghitungan pemotongan pajak penghasilan bagi pegawai tetap sebagaimana dimaksud dalam pasal 21 ayat (3) Undang-Undang No. 7 Tahun 1983 tentang Pajak Penghasilan sebagaimana telah beberapa kali diubah terakhir dengan Undang-Undang No. 36 Tahun 2008 ditetapkan sebesar 5% (lima persen) dari penghasilan bruto, setinggi-tingginya Rp 6.000.000 (enam juta rupiah) setahun atau Rp 500.000 (lima ratus ribu) sebulan. b) Besarnya biaya pensiun yang dapat dikurangkan dari penghasilan bruto untuk penghitungan pemotongan pajak penghasilan bagi pensiunan sebagaimana dimaksud dalam pasal 21 ayat (3) UndangUndang No. 7 Tahun 1983 tentang Pajak Penghasilan sebagaimana telah beberapa kali diubah terakhir dengan Undang-Undang No. 36 Tahun 2008 ditetapkan sekitar 5% (lima persen) dari penghasilan bruto, setinggi-tingginya Rp 2.400.000 (dua juta empat ratus ribu) setahun atau Rp 200.000 (dua ratus ribu) sebulan. 2.3.8 Nomor Pokok Wajib Pajak (NPWP) Nomor pokok wajib pajak adalah nomor yang diberikan kepada wajib pajak sebagai sarana dalam administrasi perpajakan yang
18
dipergunakan sebagai tanda pengenal diri atau identitas wajib pajak dalam melaksanakan hak dan kewajibannya. Bagi penerima penghasilan yang dipotong PPh Pasal 21 yang tidak memiliki NPWP, dikenakan pemotong PPh Pasal 21 dengan tarif lebih tinggi 20% daripada tarif yang di terapkap kepada wajib pajak yang memiliki NPWP. Artinya jumlah PPh Pasal 21 yang harus dipotong adalah sebesar 120% dari jumlah yang seharusnya dipotong dalam hal yang bersangkutan memiliki NPWP 2.3.9 Penghasilan Tidak Kena Pajak (PTKP) Besarnya Penghasilan Tidak Kena Pajak (PTKP) dari seorang pegawai dihitung berdasarkan penghasilan netonya dikurangi dengan PTKP. Atas besarnya PTKP dalam Pasal 7 ayat (1) Undang-Undang Perpajakan Nomor 36 Tahun 2008 dan Peraturan Direktorat Jenderal Pajak No. PER-31/PJ/2012 sebagai berikut:
Tabel 2.2PTKP Pasal 7 ayat (1) Undang-Undang Nomor 36 Tahun 2008 Status Pekerja
PTKP (Rp)
Belum Kawin
24.300.000
Kawin, anak 0
26.325.000
Kawin, anak 1
28.350.000
Kawin, anak 2
30.375.000
Kawin, anak 3
32.400.000
Sumber : Undang-Undang Perpajakan Nomor 36 Tahun 2008
19
a) Rp. 24.300.000 (dua puluh empat juta tiga ratus ribu rupiah) untuk diri wajib pajak pribadi. b) Rp. 2.025.000 (dua juta dua puluh lima ribu rupiah) tambahan untuk wajib pajak yang sudah menikah. c) Rp. 24.300.000 (dua puluh empat juta tiga ratus ribu rupiah) tambahan untuk seorang istri yang penghasilannya digabung dengan suami. d) Rp. 2.025.000 (dua juta dua puluh lima ribu rupiah) tambahan untuk setiap anggota keluarga dalam garis keturunan lurus serta anak angkat, yang menjadi tanggungan sepenuhnya. Paling banyak (maksimal) tiga orang untuk setiap keluarga. 2.3.10
Contoh Penghitungan PPh 21
PPh 21 Terhadap Penghasilan Pegawai Tetap Lionel bekerja pada perusahaan PT. MQUC dengan memperoleh gaji sebulan Rp. 5000.000 dan membayar iuran pensiun sebesar Rp. 100.000. Lionel telah menikah dan mempunyai anak satu Perhitungan PPh Pasal 21 Gaji Sebulan
Rp. 5000.000
Pengurangan Biaya Jabatan : 5% x Rp. 5000.000
Rp. 250.000
Iuran Pensiun :
Rp. 100.000
Penghasilan Neto Sebulan Penghasilan Neto Setahun
Rp.
350.000
Rp. 4.650.000 12xRp. 4.650.000
PTKP Setahun Untuk WP sendiri
Rp. 24.300.000
Tambahan WP Kawin
Rp. 2.025.000
Rp.55.800.000
20
Tambahan anak 1
Rp. 2.025.000
Penghasilan Kena Pajak Setahun
Rp.28.350.000 Rp.27.450.000
PPh Pasal 21 Terutang : 5% x Rp. 27.450.000 =
Rp. 1.372.500
PPh Pasal 21 Sebulan = Rp. 1.372.500 : 12
2.4
Rp.
114.375
Surat Pemberitahuan (SPT) 2.4.1 Pengertian Surat Pemberitahuan (SPT) Menurut Pasal 1 angka 10 Undang-Undang No. 16 Tahun 2009 tentang tata cara umum dan tata cara perpajakan menyebutkan bahwa pengertian Surat Pemberitahuan (SPT) adalah surat yang oleh wajib pajak digunakan
untuk
melaporkan
penghitungan
peraturan
perundang-
undangan perpajakan. 2.4.2 Fungsi Surat Pemberitahuan (SPT) a) Fungsi SPT bagi wajib pajak yaitu : 1. Sarana melaporkan dan mempertanggung jawabkan penghitungan pajak yang sebenarnya terhutang. 2. Melaporkan pembayaran atau pelunasan pajak yang telah dilaksanakan sendiri atau melalui pemotongan atau pemungutan pihak lain dalam satu tahun pajak atau bagian tahun pajak. 3. Melaporkan pembayaran dan pemotongan atau pemungutan pribadi atau badan lain dari satu masa pajak, sesuai dengan peraturan perpajakan yang berlaku.
21
b) Fungsi SPT bagi pemungutan atau pemotongan pajak yaitu : Sebagai sarana untuk melaporkan dan mempertanggung jawabkan pajak yang dipotong atau dipungut dan disetorkan. 2.4.3 Lampiran Surat Pemberitahuan (SPT) a) Pengisian Surat Pemberitahuan Pajak Penghasilan oleh wajib pajak yang wajib melakukan pembukuan harus dilengkapi dengan laporan keuangan berupa neraca dan penghitungan rugi laba serta keteranganketerangan lain yang diperlukan untuk menghitung besarnya penghasilan kena pajak. b) Bagi wajib pajak yang menggunakan norma penghitungan, dalam SPT-nya
harus
dilampiri
atau
dilengkapi
penghitungan
dan
pembayaran pajak yang terhutang dalam suatu tahun pajak. 2.4.4 Batas Waktu Surat Pemberitahuan (SPT) a) Untuk Surat Pemberitahuan Masa, selambat-lambatnya dua puluh hari setelah akhir masa pajak. b) Untuk Surat Pemberitahuan Tahunan, selambat-lambatnya tiga bulan setelah akhir tahun pajak. 2.4.5 Pembetulan Surat Pemberitahuan (SPT) Apabila diketahui ada kesalahan dalam SPT wajib pajak dapat melakukan pembetulan SPT atas kemauan sendiri dengan menyampaikan pernyataan tertulis dalam jangka waktu dua tahun saat terhutang pajak atau saat berakhirnya masa pajak dengan syarat Dirjen Pajak belum melakukan pemeriksaan pajak. Dalam hal ini
wajib pajak dikenakan sanksi
22
administrasi berupa bunga sebesar 2% atas jumlah pajak yang kurang bayar, dihitung saat penyampaian SPT berakhir sampai tanggal pembayaran karena pembetulan SPT tersebut.
2.4.6 Sanksi administrasi dan Sanksi Pidana Sehubungan Dengan SPT Kepada wajib pajak yang tidak memenuhi ketentuan yang telah ditetapkan dalam UU sehubungan dengan SPT dikenakan sanksi administrasi dan sanksi pidana yaitu: a) Wajib pajak yang terlambat menyampaikan SPT dikenakan sanksi administrasi berupa untuk SPT masa Rp. 50.000 dan untuk SPT Tahunan sebesar Rp. 100.000 (Pasal 7 UU KUP). b) Pasal 38 Undang-Undang No. 16 Tahun 2009 menyatakan apabila wajib pajak tidak menyampaikan SPT atau menyampaikan SPT tapi isinya tidak benar atau tidak lengkap dalam melampiri keterangan karena kealpaan wajib pajak sehingga dapat menimbulkan kerugian dalam pendapatan negara, dipidana dengan pidana kurungan paling lama satu tahun dan atau denda setinggi-tingginya dua kali jumlah pajak terutang yang tidak atau kurang bayar. c) Pasal 29 UU No. 16 Tahun 2009 menyatakan apabila dengan sengaja wajib pajak tidak menyampaikan SPT dan atau keterangan yang isinya tidak benar atau tidak lengkap sehingga dapat menimbulkan kerugian pada pendapatan negara diancam dengan hukuman penjara paling
23
lama 6 tahun dan denda setinggi-tingginya empat kali jumlah pajak yang terutang yang tidak atau kurang bayar.
2.5
Surat Setoran Pajak (SSP) 2.5.1 Pengertian Surat Setoran Pajak (SSP) Surat Setoran Pajak (SSP) adalah surat yang oleh wajib pajak digunakan untuk melakukan pembayaran atau penyetoran pajak yang terutang ke kas negara atau ketempat pembayaran lain yang telah ditentukan oleh Menteri Keuangan. 2.5.2 Fungsi Surat Setoran Pajak (SSP) a) Sebagai sarana untuk membayar pajak. b) Sebagai bukti dan laporan pembayaran pajak. 2.5.3 Tempat pembayaran dan penyetoran pajak a) Bank-bank yang ditunjuk oleh Direktorat Jenderal Pajak. b) Kantor Pos dan Giro. 2.5.4 Batas Waktu Pembayaran dan Penyetoran Pajak Pembayaran masa untuk PPh Pasal 21 selambat-lambatnya tanggal 10 bulan takwim berikutnya setelah masa pajak berakhir. Pembayaran kekurangan pajak terutang berdasarkan SPT Tahunan harus dibayar selambat-lambatnya 25 bulan ketiga setelah tahun pajak berakhir sebelum SPT tersebut disampaikan ke Kantor Pelayanan Pajak (KPP, SKP, SKPKB, SKPKBT, Surat Keputusan Pembetulan, Surat Keputusan Keberatan dan putusan banding yang menyebabkan jumlah pajak yang
24
harus dibayarkan bertambah, harus dilunasi dalam jangka waktu satu bulan sejak tanggal diterbitkan surat-surat tersebut.
2.6
Framework Framework (kerangka kerja) merupakan kumpulan dari fungsi atau
prosedur dan class dengan tujuan tertentu yang sudah siap digunakan, sehingga mempermudah dan mempercepat pengembang dalam membuat program tanpa harus membuat fungsi atau class dari awal (Ardhana, 2013:22). Framework dapat juga diartikan sebagai koleksi atau kumpulan potongan-potongan program yang disusun atau diorganisasikan sedemikian rupa, sehingga dapat digunakan untuk membantu membuat aplikasi utuh tanpa harus membuat semua kodenya dari awal (Basuki, 2010:3). Kemudahan yang ditawarkan dalam menggunakan framework yaitu sudah tersedianya struktur aplikasi yang baik, seperti standar coding, best practice, design pattern dan common function, sehingga pengembang dapat fokus kepada proses pembangunan sistem tanpa harus berpikir pada masalah struktur aplikasi dan standar coding. Konsekuensi dan tantangan yang dihadapi pengembang dengan menggunakan framework yaitu harus mempelajari lingkungan pengembangan berdasarkan framework yang digunakan, karena setiap framework memiliki lingkungan pengembangannya masing-masing.
25
2.7
Codeigniter Framework Codeigniter (CI) dikembangkan oleh Rick Ellis pendiri ellislab.com. CI
dirilis pertama kali pada tanggal 28 Februari 2006. CI adalah suatu kerangka pengembangan aplikasi dengan menggunakan PHP. Berbagai library atau pustaka untuk pembuatan website dan interface sudah disediakan oleh CI, sehingga dapat membantu mempercepat pengembang dibandingkan jika menulis semua kode program dari awal. CI dikembangkan oleh komunitas dan disebarluaskan ke seluruh dunia dengan lisensi bebas yang dapat diunduh di http://ellislab.com/codeigniter. Kelebihan framework CI diantaranya sebagai berikut (Ardhana, 2013:15): 1. Open Source CI merupakan framework yang gratis untuk digunakan dan dapat dikembangkan secara legal. 2. Multiplatform CI sangat ringan ketika dijalankan pada berbagai platform. Pada bagian sistem utama, CI hanya memerlukan kapasitas yang sedikit untuk server dalam membentuk class library. 3. Efisiensi waktu Dengan adanya struktur dan library yang telah disediakan oleh framework, pengembang dapat fokus pada proses pengembangan sistem yang akan dibangun.
26
4. Menggunakan metode MVC Metode MVC adalah metode dengan cara Model, View, Controller. Metode framework MVC dapat mempermudah membedakan antara tampilan dan program. 5. User Friedly CI sangat mudah digunakan dikarenakan bentuk dan tampilan yang sudah dirancang secara terstruktur. 6. Framework yang lengkap CI dikemas secara lengkap, karena didalamnya terdapat kumpulan class yang ada didalam library yang tersedia, sehingga sangat menunjang dalam pembuatan website, basis data, validasi form data, pembuatan session dan penggunaan XML-RPC. 7. User guide CI telah dilengkapi dengan dokumentasi yang baik dan lengkap, sehingga dapat membantu para pengembang dalam mempelajarinya. 8. Reuse of code Dengan menggunakan framework maka program yang dibuat akan memiliki struktur yang baku, sehingga dapat digunakan kembali pada proyek-proyek lainnya. 9. Berjalan di PHP versi 4 dan 5 CI dikembangkan agar tetap kompatibel dengan PHP versi 4 dan 5.
27
2.7.1 Kosep MVC MVC adalah singkatan dari Model View Controller. MVC merupakan sebuah teknik pemrograman yang memisahkan bisnis logic, data logic dan presentation logic. Adapun komponen-komponen MVC antara lain (Daqiqil, 2011:5) :
1. Model Model berhubungan dengan data dan interaksi ke basis data atau web service. Dalam model ini akan berisi class dan fungsi untuk mengambil, melakukan perubahan dan menghapus data, sehingga komponen model erat kaitannya dengan perintah-perintah query SQL. 2. View Komponen View berhubungan dengan segala sesuatu yang akan ditampilkan ke end user. View dapat dikatakan sebagai halaman website yang dibuat menggunakan HTML dan bantuan CSS atau JavaScript. 3. Controller Controller bertindak sebagai penghubung komponen Model dan View. Di dalam Controller terdapat class-class dan fungsi-fungsi yang memproses permintaan dari View ke dalam struktur data di dalam Model. Tugas dari Controller adalah menyediakan berbagai variabel yang akan ditampilkan di View, memanggil Model untuk melakukan
28
akses ke basis data, menyediakan penanganan kesalahan, mengerjakan proses logika dari aplikasi serta melakukan validasi.
Gambar 2.1 Alur MVC pada Code Igniter (Daqiqil, 2011:6)
Pada dapat dijelaskan alur MVC pada CI, yaitu ketika datang sebuah user request, maka permintaan tersebut akan ditangani oleh Controller, kemudian Controller akan memanggil Model jika memang diperlukan operasi basis data. Hasil dari query oleh Model kemudian akan dikembalikan ke Controller. Selanjutnya Controller akan memanggil View yang tepat dan mengkombinasikannya dengan hasil query Model. Hasil
29
akhir dari operasi ini akan ditampilkan ke web browser yang selanjutnya bisa dilihat oleh user.
2.8
Rapid Application Development (RAD) 2.8.1 Konsep Dasar RAD Rapid Application Development (RAD) adalah model proses pengembangan perangkat lunak yang bersifat inkremental terutama untuk waktu pengerjaan yang pendek (Shalahudin dan A.S Rosa, 2011:34). Model RAD
merupakan adaptasi dari model waterfall versi kecepatan tinggi
dengan menggunakan model waterfall untuk pengembangan setiap komponen perangkat lunak. Model RAD membagi tim pengembang menjadi beberapa untuk mengerjakan beberapa komponen. Setelah kebutuhan perangkat lunak dipahami dan ruang lingkup perangkat lunak dibatasi, kemudian masingmasing tim dapat memulai mengerjakan proyek secara paralel.
30
Gambar 2.2 Ilustrasi Model RAD (Shalahudin dan A.S Rosa, 2013) Model RAD cocok diterapkan pada proyek yang memenuhi kriteria sebagai berikut: 1. Anggota tim sudah berpengalaman mengembangkan perangkat lunak yang sejenis. 2. Pengembang sudah memiliki komponen-komponen sistem yang bisa digunakan kembali dalam proyek tersebut. 2.8.2 Fase-fase RAD Pengembangan sistem dengan menggunakan RAD terdiri dari tiga fase sebagai berikut (Kendall dan Kendall, 2010:164):
31
1. Requirement Planning Requirement Planning merupakan tahap dimana user dan analyst melakukan semacam pertemuan untuk saling bekerja sama dalam mengidentifikasi tujuan dari sistem serta mencari kebutuhan informasi yang timbul dari tujuan tersebut. Pada tahap ini hal terpenting adalah adanya keterlibatan dari kedua belah pihak, bukan hanya sekedar persetujuan akan proposal yang sudah dibuat. Untuk lebih jauh lagi, keterlibatan user bukan hanya dari satu tingkatan pada suatu organisasi, melainkan beberapa tingkatan organisasi, sehingga informasi yang dibutuhkan untuk masing-masing user dapat terpenuhi dengan baik. 2. Workshop Design Pada tahap ini adalah melakukan proses desain dan melakukan perbaikan-perbaikan apabila masih terdapat ketidaksesuaian desain antara user dan analyst. Untuk tahap ini maka keaktifan user yang terlibat sangat menentukan untuk mencapai tujuan, karena user bisa langsung memberikan komentar apabila terdapat ketidaksesuaian pada desain. Apabila memungkinkan, maka tiap-tiap user diberikan satu komputer yang terhubung satu dengan yang lain, sehingga tiap-tiap user bisa melihat desain yang dibuat dan langsung memberikan komentar. Setelah user dan analyst menyetujui desain yang dibuat, kemudian dilanjutkan oleh pengembang dalam pembuatan prototype
32
dari aplikasi yang dimaksud dengan langsung menampilkan kepada user hasilnya dengan cepat. Pada tahap workshop ini membutuhkan waktu beberapa hari, akan tetapi bisa semakin lebih lama, tergantung dari besar kecilnya sistem yang dibuat. Pada selang waktu tersebut, user bisa memberikan tanggapan akan sistem yang sudah dikembangkan untuk selanjutnya dilakukan
perbaikan-perbaikan.
Dengan
demikian
proses
pengembangan suatu sistem membutuhkan waktu yang cepat. 3. Implementation Setelah hasil dari workshop design disepakati dan sistem yang dibangun
telah
disempurnakan
serta
diuji,
maka
kemudian
diperkenalkan kepada organisasi. Proses perubahan yang terjadi dengan adanya sistem aplikasi yang baru ini akan mudah diterima oleh user, karena muncul rasa kepemilikan sistem akibat turut berperan dalam fase workshop design.
Gambar 2.3Fase RAD (Kendall dan Kendall, 2010:164)
33
2.8.3 Kekurangan RAD Model RAD memiliki kelemahan sebagai berikut (Shalahudin dan A.S Rosa, 2011:36): 1. Untuk pembuatan sistem perangkat lunak dengan skala besar maka model RAD akan memerlukan sumber daya manusia yang cukup besar untuk membentuk tim-tim yang mengembangkan komponenkomponen. 2. Jika tidak ada persetujuan untuk mengembangkan perangkat lunak dengan cepat (rapid), maka proyek akan gagal karena akan terjadi kesulitan dalam mendefinisikan kebutuhan. 3. Jika sistem perangkat lunak yang akan dikembangkan tidak bisa dibagi-bagi menjadi beberapa komponen, maka model RAD tidak dapat digunakan karena terlalu banyak campur tangan antar tim. 4. Model RAD tidak cocok digunakan pada sistem perangkat lunak yang memiliki resiko tinggi, misalnya menggunakan teknologi baru yang belum banyak dikenal dan dikuasai pengembang.
2.9
Unified Modeling Language(UML) 2.9.1 Definisi UML Pada perkembangan teknologi perangkat lunak, diperlukan adanya bahasa yang digunakan untuk memodelkan perangkat lunak yang akan dibuat dan perlu adanya standarisasi agar orang diberbagai negara dapat mengerti pemodelan perangkat lunak.
34
Unified Modeling Language (UML) merupakan salah satu bahasa pemodelan untuk pembangunan perangkat lunak yang menggunakan teknik pemrograman berorientasi objek (Shalahudin dan A.S Rosa, 2011:137). UML muncul karena adanya kebutuhan pemodelan visual untuk menspesifikasikan, mengambarkan, membangun dan mendokumentasikan sistem perangkat lunak. UML diaplikasikan untuk maksud tertentu, antara lain sebagai berikut (Widodo dan Herlawati, 2011:6) : 1. Merancang perangkat lunak. 2. Sarana komunikasi antara perangkat lunak dengan bisnis proses. 3. Menjabarkan sistem secara rinci untuk analisis dan mencari apa yang diperlukan sistem. 4. Mendokumentasi sistem yang ada, proses-proses dan organisasinya. 2.9.2 Diagram-Diagram UML Terdapat sembilan diagram pada UML. Kesembilan diagram ini tidak mutlak harus digunakan dalam pengembangan perangkat lunak, semuanya dibuat sesuai kebutuhan. Pada UML dimungkinkan juga menggunakan diagram lain, seperti DFD (Data Flow Diagram) atau ERD (Entity Relationship Diagram). Kesembilan digram yang terdapat pada UML antara lain (Widodo dan Herlawati, 2011:10) :
35
1. Diagram Kelas (Class Diagram) Class diagram adalah static model yang mendukung pandangan statis dari susunan sistem. Class diagram menunjukkan kelas-kelas dan hubungan antara kelas-kelas yang tetap konstan dalam sistem dari waktu ke waktu. Class diagram sangat mirip dengan entity relationship
diagram
menggambarkan
(ERD),
kelas-kelas,
bagaimanapun,
yang
mana
class
termasuk
diagram attributes,
behavior, dan states, ketika entitas pada ERD hanya berupa atribut. Cakupan dari class diagram, seperti ERD, yaitu sistem yang luas (Dennis, dkk: 2010;510). Pembangunan blok utama dari class diagram adalah class, yang mana ditempatkan dan diatur dalam sistem informasi. (Lihat gambar 2.4) Selama analisis, class mengacu ke orang, tempat, kejadian, dan hal-hal mengenai sistem yang akan menangkap informasi. Kemudian, selama desain dan implementasi, kelas-kelas dapat mengacu pada artefak implementasi yang spesifik seperti windows, form, dan object lainnya yang digunakan untuk membangun sistem. Setiap class digambarkan dengan menggunakan tiga bagian kotak dengan nama class di atas, atribut di tengah, dan method (juga disebut operasi) di bawah (Dennis, dkk: 2010;512).
36
Gambar 2.4 Contoh Class Diagram untuk Holiday Travel Vehicles
Beberapa pendekatan berbeda telah disarankan untuk menolong analis dalam mengidentifikasi sekumpulan kandidat kelas-kelas untuk class diagram. Pendekatan yang paling umum adalah textual analysis, analisis dari isi di dalam use case. Seorang analis mulai meninjau ulang use case dan use case diagram. Isi deskripsi di dalam use case diperiksa untuk mengidentifikasi potensial object, attribute, method, dan association. Kata benda pada use case mengusulkan kemungkinan kelas-kelas, ketika kata kerja mengusulkan kemungkinan operasi atau
37
asosiasi. Gambar 2.5 menampilkan suatu ringkasan dari pedoman yang telah kita temukan berguna (Dennis, dkk: 2010;517).
Gambar 2.5 Textual Analysis Guidelines
Tujuan utama dari diagram adalah untuk menunjukkan association atau relationship yang dimiliki oleh satu class dengan dengan class lainnya. Ini digambarkan pada diagram dengan menggambarkan garis di antara kelas-kelas (Lihat gambar 2.6.). Association ini sangat mirip dengan relationship yang ditemukan pada ERD. Association dipelihara oleh references yang mana mirip seperti pointer dan dipelihara secara internal oleh sistem (tidak seperti model relasional di mana relationship dipelihara oleh foreign key dan primary key) (Dennis, dkk: 2010;514).
38
Gambar 2.6 Class Diagram Syntax
2. Diagram Use Case Diagram ini memperlihatkan himpunan use case dan aktor-aktor yang berfungsi untuk mengorganisasi dan memodelkan perilaku suatu sistem yang dibutuhkan serta diharapkan pengguna. Potongan gambar orang yang diberi label pada diagram menunjukkan actor (Lihat gambar 2.7). Seorang actor sama dengan sebuah entitas eksternal yang ditemukan pada DFD—ini merupakan orang atau sistem lain yang berinteraksi dengannya dan mendapat
39
nilai dari sistem. Seorang actor bukanlah pengguna spesifik, tetapi suatu peran yang dapat dimainkan oleh pengguna ketika berinteraksi dengan sistem. Actor adalah eksternal sistem dan menginisiasi sebuah use case (Dennis, dkk:2010;506).
Gambar 2.7 Syntax Untuk Use Case Diagram
Use
case
dihubungkan
kepada
actor melalui
association
relationship. Ini menunjukkan dengan mana use case dan actor berinteraksi. (Lihat gambar 2.8) Sebuah garis digambarkan dari seorang actor ke sebuah use case yang menggambarkan sebuah association. Association secara umum menggambarkan dua cara berkomunikasi antara use case dan actor (Dennis, dkk:2010;506). Sebuah use case, digambarkan oleh sebuah oval, yaitu proses utama yang akan dilakukan oleh sistem yang memberikan keuntungan
40
seorang actor dalam beberapa cara (Lihat gambar 2.8), dan ini dilabelkan oleh sebuah pendeskripsian frase kata kerja (banyak seperti proses DFD). Ada waktu ketika satu use case salah satunya akan menggunakan fungsionalitas atau meng-extends fungsionalitas dari use case lain pada diagram, dan ini ditunjukkan oleh includes atau extends relationship. (Dennis, dkk:2010;507).
Gambar 2.8 Contoh Use Case Diagram untuk Vehicle Sales System Use case dilampirkan di dalam sebuah system boundary, yang mana sebuah kotak yang menggambarkan sistem dan secara jelas melukiskan bagian apa-apa saja dari diagram, baik itu eksternal maupun internal. (Lihat gambar 2.8) Nama dari sistem dapat terlihat di dalam ataupun di atas dari kotak (Dennis, dkk: 2010;507).
41
3. Diagram Interaksi dan Urutan (Sequence Diagram) Sequence diagram mengilustrasikan objek yang berpartisipasi dalam sebuah use case dan message yang melewatinya dari waktu ke waktu untuk satu use case. Sequence diagram adalah dynamic model yang mendukung tampilan dinamis dari sistem yang berkembang. Ini jelas menunjukkan urutan dari message yang lewat di antara objekobjek dalam mendefinisikan suatu interaksi. Sejak sequence diagram menekankan time-based ordering pada aktivitas yang terjadi di antara sekumpulan object, sequence diagram sangat membantu untuk mengerti spesifikasi secara real time dan use case yang rumit (Dennis, dkk: 2010;519). Sequence diagram dapat menjadi sebuah generic sequence diagram yang menunjukkan semua kemungkinan scenario. Scenario adalah suatu jalur tunggal yang dapat dieksekusi yang melalui sebuah use case. Tetapi biasanya setiap analis mengembangkan sekumpulan instance sequence diagram, yang mana menggambarkan satu scenario tunggal dalam use case. Jika analis tertarik dalam mengerti aliran kontrol suatu scenario oleh waktu, analis harus menggunakan sequence diagram untuk menggambarkan informasi ini. Diagram digunakan selama fase analisis dan desain, bagaimanapun, desain diagram diimplementasikan dengan sangat spesifik, sering termasuk database objek atau komponen spesifik GUI (General User Interface) sebagai kelas-kelas. Bagian berikut pertama menyajikan syntax dari
42
sebuah
sequence
diagram
dan
kemudian
mendemonstrasikan
bagaimana sequence diagram harus digambarkan (Dennis, dkk: 2010;519).
Gambar 2.9 Sequence Diagram Syntax
Actor dan object yang berpartisipasi pada sequence diagram ditempatkan di seberang atas dari diagram, digambarkan dengan simbol actor dari use case diagram atau persegi panjang tidak berlabel (Dennis, dkk: 2010;520).
43
Gambar 2.10 Sequence Diagram
Garis putus-putus berjalan secara vertikal di bawah tiap actor dan object untuk menunjukkan lifeline (garis hidup) dari actor/object dari waktu ke waktu. (Lihat gambar 2.10) Kadang-kadang sebuah object membuat sebuah temporary object, dan pada kasus ini sebuah X ditempatkan pada akhir dari lifeline pada titik di mana object dihancurkan atau tidak digambarkan (Dennis, dkk: 2010;521). Sebuah kotak tipis persegi panjang, disebut execution occurrence (eksekusi kejadian), yang dilapisi ke lifeline untuk menunjukkan ketika kelas-kelas mengirim dan menerima message. (Dennis, dkk: 2010;521). Sebuah message adalah komunikasi antara objek-objek yang menyampaikan informasi, dengan harapan bahwa aktivitas yang akan terjadi, dan message yang lewat di antara objek ditunjukkan oleh garis padat yang menghubungkan dua objek, disebut link. Panah pada link
44
menunjukkan ke arah mana message berlalu, dan nilai argumen untuk message ditempatkan ke dalam tanda kurung sesudah nama message. Urutan message berjalan dari atas ke bawah pada satu halaman, maka message ditempatkan lebih tinggi pada diagram yang menunjukkan message terjadi di awal urutan, berlawanan dari message yang lebih rendah yang terjadi kemudian. Ada waktu ketika message yang dikirim hanya jika suatu kondisi bertemu. Pada kasus tersebut, kondisi ditempatkan di antara kumpulan dari [], kondisi ditempatkan di depan nama message (Dennis, dkk: 2010;521). 4. Diagram Aktitas (Activity Diagram) Beberapa dari kelas-kelas dalam class diagram cukup dinamis pada yang mana kelas-kelasitu melalui berbagai macam keadaan selama keberadaan kelas-kelas tersebut. Suatu activity diagram adalah dynamic model yang menunjukkan perbedaan keadaan-keadaan yang mana suatu class tunggal lewat melalui selama hidupnya dalam merespon kejadian, bersamaan dengan respon dan aksinya. Secara khusus, activity diagram tidak digunakan untuk seluruh kelas-kelas, tetapi hanya untuk mendefinisikan kelas-kelas kompleks yang lebih lanjut membantu menyederhanakan desain dari algoritma untuk method classes tersebut. activity diagram menunjukkan perbedaan state (keadaan) dari class dan event apa yang menyebabkan sebuah class untuk berubah dari satu state ke state yang lain. Dibandingkan sequence diagram, activity diagram harusnya digunakan jika
45
pengembang tertarik dalam memahami aspek dinamis dari sebuah class tunggal dan bagaimana instances-nya berkembang seiring waktu, dan tidak dengan bagaimana sebuah use case scenario tertentu dieksekusi lebih dari satu set kelas-kelas (Dennis, dkk:2010;524).
Gambar 2.11 Activity Diagram Syntax Sebuah state adalah sekumpulan nilai-nilai yang mendeskripsikan sebuah objek pada sebuah titik spesifik dalam waktu dan itu merepresentasikan sebuah titik di dalam sebuah kehidupan objek pada yang mana itu memenuhi beberapa kondisi, menampilkan beberapa aksi, atau menunggu sesuatu terjadi. Sebuah state digambarkan oleh sebuah state symbol, yang mana sebuah kotak dengan sudut berbentuk bulat dengan sebuah label deskriptif yang mengomunikasikan suatu keadaan tertentu. Ada dua pengecualian. Sebuah initial state yang
46
digambarkan oleh sebuah lingkaran kecil, padat, berisi dan sebuah objek milik final state digambarkan sebagai sebuah lingkaran mengelilingi lingkaran yang kecil, padat, berisi. Pengecualianpengecualian ini digambarkan ketika sebuah objek dimulai dan diakhiri (Dennis, dkk:2010;524). Attributes atau properties dari sebuah objek mengakibatkan keadaan yang berada di dalam, bagaimanapun, tidak semua attribute atau perubahan attribute akan membuat suatu perbedaan (Dennis, dkk:2010;526). Sebuah event adalah sesuatu yang mengambil tempat pada titik tertentu dalam waktu dan merubah suatu nilai yang mendeskripsikan sebuah objek, yang mana membalikkan perubahan keadaan objek. Hal ini bisa menjadi kondisi yang ditunjuk menjadi benar, tanda terima dari pemanggilan sebuah method oleh sebuah objek, atau bagian dari berlalunya waktu yang telah ditetapkan. State dari objek menentukan secara pasti apa respon yang akan terjadi (Dennis, dkk:2010;526).
Gambar 2.12 Activity Diagram untuk Offer for a Vehicle
47
Anak panah digunakan untuk menghubungkan state symbol, merepresentasikan sebuah transisi di antara states. Sebuah transisi adalah hubungan yang mereprersentasikan pergerakan sebuah objek dari satu state ke state lainnya. Beberapa transisi akan memiliki suatu ‘guard condition’. Suatu ‘guard condition’ adalah sebuah ekspresi Boolean
yang
termasuk
nilai-nilai
attribute,
yang
mana
memperbolehkan suatu transisi hanya jika kondisinya benar. Setiap anak panah dilabelkan dengan nama eventyang sesuai dan dengan bebrapa parameter atau kondisi yang mungkin berlaku (Dennis, dkk:2010;526). 5. Diagram Komunikasi (Communication Diagram) Diagram sebagai pengganti diagram kolabrasi UML yang menekankan organisasi struktural dari objek-objek yang menerima serta mengirim pesan. 6. Diagram Status (Statechart Diagram) Diagram status memperlihatkan keadaan-keadaan pada sistem, memuat status (state), transisi, kejadian serta aktifitas. 7. Diagram Komponen (Component Diagram) Diagram
komponen
memperlihatkan
organisasi
serta
kebergantungan sistem pada komponen-komponen yang telah ada sebelumnya.
48
8. Diagram Deployment Diagram ini memperlihatkan konfigurasi saat aplikasi dijalankan. Diagram deployment berhubungan erat dengan diagram komponen dimana diagram ini memuat satu atau lebih komponen-komponen. Diagram ini berguna saat aplikasi yang dikembangkan, dijalankan pada banyak mesin. 9. Diagram Paket (Package Diagram) Diagram ini memerlihatkan kumpulan kelas-kelas yang merupakan bagian dari diagram komponen. 2.9.3 Keunggulan UML Adi Nugroho (2005) menemukakan bahwa secara umum UML diterapkan dalam pengembangan sistem/perangkat lunak berorientasi objek sebab metodologi UML ini umumnya memiliki keunggulankeunggulan sebagai berikut : a. Uniformity, dengan metodologi UML, para pengembang cukup menggunakan 1 metodologi dari tahap analisis hingga perancangan. Hal ini tidak bisa dilakukan dalam metodologi pengembangan terstruktur. Dengan perkembangan masa kinikearah aplikasi GUI (Graphical User Interface), UML juga memungkinkan kita merancang komponen antarmuka pengguna (User Interface) secara intergrasi bersama dengan perancangan perangkat lunak sekaligus dengan perancangan basisdata.
49
b. Understandability. Dengan metodologi ini kode yang dihasilkan dapat diorganisasi kedalam kelas-kelas yang berhubungan dengan masalah sesungguhnya sehingga lebih mudah dipahami siapapun juga. c. Stability. Kode program yang dihasilkan relatif stabil sepanjang waktu sebab sangat mendekati permasalahan sesungguhnya di lapangan. d. Reusability. Dengan metodolgi berorientasi objek, dimungkinkan pengguna ulang kode, sehingga oada gilirannya akan sangat mempercepat waktu pengembangan perangkat lunak. 2.10 JQuery JQuery merupakan
suatu framework (library)
Javascript
yang
menekankan bagaimana interaksi antara Javascript dan HTML. JQuery pertama kali dirilis pada tahun 2006 oleh John Resig. Pada perkembangannya JQuery tidak sekedar sebagai framework Javascript, namun memiliki kehandalan dan kelebihan yang cukup banyak. Hal tersebut menyebabkan banyak developer web menggunakannya. JQuery memiliki slogan “Write less, do more” yang kurang lebih maksudnya adalah kesederhanaan dalam penulisan code, tapi dengan hasil yang lebih banyak. JQuery merupakan library open source dengan lisensi GNU General Public License dan MIT License. Dari sisi ukurannya, framework JQuery sungguh ramping, hanya sekitar 20 KB dan hanya terdiri dari satu file. Namun demikian, bagi yang menginginkan fungsi lebih, JQuery memungkinkan penambahan
50
fungsionalitas dalam bentuk plugin. Saat ini tersedia ribuan plugin yang dapat diperoleh secara gratis di internet. 2.10.1 Fungsi JQuery 1.
Mengakses bagian halaman tertentu dengan mudah. Tanpa adanya library Javascript khusus, untuk mengakses suatu bagian tertentu dari halaman, harus mengikuti aturan Document Object
Model (DOM) dan pengaksesan harus secara spesifik
menyesuaikan
dengan
struktur
HTML.
Dengan
kata
lain,
pengaksesan bagian tertentu dari halaman sangat tergantung pada struktur dari HTML. JQuery menawarkan cara yang mudah (bahkan sangat mudah) dalam mengakses bagian tertentu dari halaman. Pengaksesan juga tidak terlalu bergantung pada struktur HTML. 2.
Mengubah tampilan bagian halaman tertentu. CSS (Cascading Style Sheet) menawarkan metode yang cukup handal dalam mengatur dan mempercantik halaman web. Namun terkadang CSS punya kelemahan yang cukup mengganggu, yaitu beberapa perintah CSS tidak didukung oleh semua browser. Cukup merepotkan jika kita harus mendesign halaman web dengan beberapa CSS sekaligus. Sekali
lagi JQuery menawarkan solusi untuk
mengatasi hal tersebut. Dengan JQuery, “kesenjangan” yang terjadi antara browser dalam urusan CSS akan tertutup dengan baik.
51
3.
Mengubah isi dari halaman. Jaman dulu (baca:sebelum JQuery lahir) cukup sulit jika kita akan mengubah sebagian isi dari halaman. Mengubah disini dapat berarti mengganti teks, menambahkan teks atau gambar, mengurutkan suatu daftar (list), menghapus baris tabel dan sebagainya. Dengan JQuery, hal tersebut dapat dilakukan dengan hanya beberapa baris perintah.
4.
Merespond interaksi user dalam halaman. Website yang baik tidak cukup digambarkan dengan user-interface dan tampilan yang memukau. Namun lebih dari itu, bagaimana pengunjung dapat berinteraksi dengan website dan dapat mengatur tampilannya sendiri. Interaktivitas sangat bergantung bagaimana pemrograman yang dipakai dalam menangani event-handling. Javascript sendiri memiliki beberapa event-handling seperti onclick untuk menangani event saat terjadi click. Namun demikian, event handling pada Javascript terbatas pada object-object tertentu, dan jenisnya pun terbatas. JQuery melengkapi semuanya dengan tambahan penanganan event-handling yang semakin mudah.
5.
Menambahkan animasi ke halaman. Animasi seringkali disertakan dalam suatu halaman web untuk menambah kecantikannya. Saat ini animasi masih cukup digemari oleh para peselancar situs. Animasi dapat dibuat dalam berbagai gaya, ada yang menggunakan Flash, gambar bergerak (GIF), video, dan sebagainya. Masing-masing tentu memiliki kelebihan dan kekurangan
52
masing-masing. JQuery
sendiri
menawarkan
konsep
animasi
(walaupun masih sederhana) yang cukup apik namun ramah bandwidth alias ringan. Salah satu animasi yang bisa dibuat dengan JQuery adalah fading jika terdapat suatu bagian dari halaman ditambahkan atau dihilangkan. 6.
Mengambil informasi dari server tanpa me-refresh seluruh halaman. Mengambil informasi dari server tanpa refresh halaman merupakan salah satu konsep dasar dari yang namanya AJAX (Asynchronous Javascript and XML). Pada penerapannya, cukup ribet jika harus membangun website dengan konsep AJAX, saat ini banyak library khusus yang berusaha mempermudahnya. JQuery merupakan salah satunya.
7.
Menyederhanakan penulisan Javascript biasa. Semboyan JQuery adalah “Write less, do more” atau dengan kata lain kesederhanaan dalam penulisan code, tetapi menghasilnya tampilan yang lebih. Sebenarnya inilah yang menjadi daya tarik tersendiri buat para pengembang web untuk menggunakan JQuery.
2.11 Literatur Sejenis Dalam melakukan penulisan aplikasi pajak penghasilan berbasis Web penulis telah mengkaji penulisan sejenis yang disusun oleh Syaiful Amarullah Isnaini (NIM : 105091002890) Program Studi Teknik Informatika Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta 2010 dengan judul “Aplikasi
53
Perhitungan Pajak Penghasilan Pasal 21 dan SSP Multi Function Berbasis Web (Studi Kasus: CV. Buana Mitra Consulting)”. Tujuan penulisannya adalah merancang suatu aplikasi perhitungan pajak dan mengimplementasikannya yang berbasis web dan menghasilkan output berupa pdf sehingga perhitungan pajak ini diharapkan dapat membantu CV. Buana Mitra Consulting dalam memberikan fasilitas perhitungan pajak kepada para kliennya. 2.12 Pengujian Black-box Black-box adalah sebuah metode yang digunakan untuk menguji sebuah software pada level interface. Metode ini menguji beberapa aspek mendasar dari sebuah software dengan sedikit memperhatikan struktur logic dasar dari software tersebut (Pressman, 2002:551 ). Metode
pengujian
black-box
disebut
juga
pengujian
perilaku
(behavioraltesting), pengujian ini fokus kepada kebutuhan fungsional dari software. Jadi, teknik pengujian black-box memungkinkan seseorang untuk memperoleh kumpulan dari kondisi masukan yang benar-benar akan menguji semua kebutuhan fungsional dari sebuah program. Pengujian blackbox berusaha menemukan kesalahan dalam kategori sebagai berikut (Pressman:2002;551) : 1. Fungsi-fungsi yang tidak benar atau hilang 2. Kesalahan interface 3. Kesalahan dalam struktur data atau akses database eksternal 4. Kesalahan kinerja 5. Inisialisasi dan kesalahan terminasi
3.BAB III METODOLOGI PENELITIAN
3.1
Perusahaan Perusahaan adalah tempat terjadinya kegiatan produksi dan berkumpulnya
semua faktor produksi. Perusahaan termasuk dalam pemberi kerja yang dapat melakukan pemotongan terhadap PPh 21 para karyawannya. Organisasi Perusahaan Organisasi Perusahaan adalah suatu proses dimana terdapat orangorang yang saling berkomunikasi dan berinteraksi pada perusahaan tersebut. Organisasi Perusahaan juga disebut suatu rangka dasar yang menjadi tempat orang-orang melangsungkan kegiatannya untuk menerima, menyimpan, mengolah, menyajikan informasi, dan merawat aktiva yang mencakup susunan staf, alokasi tugas, dan tanggung jawab dalam mengelola data, memasok informasi untuk pembuatan keputusan dan merawat aktiva. Struktur Organisasi Perusahaan Struktur organisasi bisa didefinisikan merupakan salah satu mekanisme-mekanisme secara formal tentang pengolahan dari pengertian
54
55
organisasi itu sendiri. Struktur organisasi mencakup unsur-unsur seperti spesialisasi kerja, standarisasi, koordinasi, sentralisasi atau desentralisasi dalam pembuatan keputusan dan ukuran satuan kerja. Faktor-faktor yang dapat mempengaruhi pembuatan struktur organisasi : 1.
Strategi organisasi pencapaian tujuan.
2.
Perbedaan teknologi yang digunakan untuk memproduksi output akan membedakan bentuk struktur organisasi.
3.
Kemampuan dan cara berpikir para anggota serta kebutuhan mereka juga lingkungan sekitarnya perlu dipertimbangkan dalam penyusunan struktur perusahaan.
4.
Besarnya organisasi dan satuan kerjanya mempengaruhi struktur organisasi.
Gambar 3.1Struktur Organisasi Perusahaan
56
Berikut ini adalah beberapa pembagian divisi yang ada di dalam perusahaan secara umum. 1. Divisi Produksi Tugas dan tanggung jawab dari divisi ini adalah untuk proses produksi yang ada di dalam perusahaan. Tugas yang dijalankan adalah pengolahan barang yang ada sampai menghasilkan barang yang diproduksi didalam perusahaan tersebut. 2. Divisi Keuangan Divisi ini adalah untuk mengatur keuangan di dalam perusahaan. Divisi keuangan ini akan melihat bagaimana alur uang dari dan keluar dari perusahaan. Tugas yang dijalankan termasuk membuat laporan keuangan, menghitung pajak perusahaan dan karyawan dan juga laporan rugi laba untuk melihat bagaimana keberhasilan dari proses penjalanan tugas di dalam perusahaan. 3. Divisi Marketing Divisi marketing ini disebut juga sebagai divisi pemasaran, yaitu bertugas untuk memasarkan atau mempromosikan produk yang telah diproduksi oleh perusahaan sampai ketangan konsumer. Jadi, kerja dari divisi ini adalah untuk melihat respon pasar terhadap barang yang telah diproduksi. 4. Divisi Personalia Memiliki tugas untuk menjaga sumber daya manusia yang ada di dalam perusahaan. Hal ini dijalankan dari awal proses perekrutan seorang
57
karyawan untuk perusahaan tersebut. Kemudia melakukan tindakan promosi terhadap karyawan, mutasi atau hal yang lainnya.
3.2
Metode Pengumpulan Data Dalam penyusunan skripsi ini, diperlukan data-data serta informasi yang relatif lengkap sebagai bahan yang dapat mendukung kebenaran materi uraian dan pembahasan. Oleh karena itu, sebelum penyusunan skripsi ini dilakukan, maka dilakukan riset atau penelitian terlebih dahulu untuk menjaring data serta informasi yang terkait. Teknik pengumpulan data yang dilakukan dalam skripsi ini adalah sebagai berikut: 3.2.1 Studi Pustaka Pada tahapan pengumpulan data dengan cara studi pustaka, penulis mencari referensi-referensi yang relevan dengan objek yang akan diteliti. Pencarian referensi dilakukan di perpustakaan, toko buku, maupun secara online melalui internet. Setelah mendapatkan referensi-referensi yang relevan
tersebut,
penulis
lalu
mencari
informasi-informasi
yang
dibutuhkan dalam penelitian ini dari referensi-referensi tersebut. Informasi yang didapatkan digunakan dalam penyusunan landasan teori, metodologi
58
penelitian serta pengembangan aplikasinya secara langsung. Pustakapustaka yang dijadikan acuan dapat dilihat pada bagian Daftar Pustaka. 3.2.2 Studi Lapangan 3.2.2.1
Observasi Demi menjaga keakuratan data-data yang penulis sajikan,
penulis melakukan observasi secara online dengan mengunjungi website pemerintah terkait seperti website Direktorat Jenderal Pajak di
www.pajak.go.id,
www.kemenkeu.go.id, Bank
Kementerian
Keuangan
di
Indonesia di www.bi.go.id. Penulis
melihat data dan publikasi yang dikeluarkan secara berkala yang sesuai dengan judul skripsi yang penulis buat. 3.2.2.2 Kuisioner Penyebaran
kuisioner
dilakukan
untuk
mengetahui
permasalahan yang ada. Penyebaran kuisioner dilakukan dua kali. Pertama penulis menyebarkan kuisioner untuk mengetahui masalah yang ada dan mengetahui aplikasi seperti apa yang pengguna inginkan. Kedua, penulis menyebarkan kuisioner untuk melihat tanggapan pengguna terhadap aplikasi yang telah dibuat. 3.2.3 Studi Literatur Sejenis Selain studi pustaka dan studi lapangan, penulis juga melakukan studi literatur sejenis. Penulis melakukan studi literatur sejenis dengan cara mencari mengenai penelitian-penelitian yang telah dilakukan oleh penulis
59
lain, yang mana topiknya relevan dengan topik yang diteliti oleh penulis, kecocokan terhadap maksud dan tujuan dari skripsi penulis, serta implementasi aplikasi dari skripsi penulis. Pencarian studi literatur sejenis dilakukan di perpustakaan maupun online di internet. Penulis melakukan pencarian dengan kata kunci ataupun melalui tujuan dilakukannya penelitian oleh penulis lain. Seperti yang sudah penulis sampaikan dalam Landasan Teori penulis mengambil literatur yang disusun oleh Syaiful Amarullah Isnaini (NIM : 105091002890) Program Studi Teknik Informatika Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta 2010 dengan judul “Aplikasi Perhitungan Pajak Penghasilan Pasal 21 dan SSP Multi Function Berbasis Web (Studi Kasus: CV. Buana Mitra Consulting)”. Tujuan penulisannya adalah
merancang
suatu
aplikasi
perhitungan
pajak
dan
mengimplementasikannya yang berbasis web dan menghasilkan output berupa pdf sehingga perhitungan pajak ini diharapkan dapat membantu CV. Buana Mitra Consulting dalam memberikan fasilitas perhitungan pajak kepada para kliennya menjadi lebih mudah. Adapun kelebihan dan kekurangan dari sistem yang dikembangkan oleh Syaiful Amarullah Isnaini adalah
60
Table 3.1 Kelebihan dan Kekurangan dalam Literatur Sejenis Kelebihan 1. Sistem yang dikembangkan berbasis Web, sehingga mudah untuk diakses.
Kekurangan 1. Tidak menggunakan framework dalam pemrograman. 2. Tidak terintegrasi dengan e-SPT
2. Memiliki banyak fitur seperti
3. Menggunakan
Login
untuk
SPT masa, Halaman Pegawai,
mengakses aplikasi, karena ruang
Halaman Pasal 17, Bukti Potong
lingkupnya terbatas hanya untuk
Tidak Final, Bukti Potong Final,
klien C.V Buana
Halaman Admin, dan Halaman Perubahan Pegawai Tetap.
3.3
Metode Pengembangan Sistem Metode pengembangan yang penulis gunakan adalah RAD atau Rapid
Application Development. Alasan penulis menggunakan metode RAD adalah karena aplikasi yang dikembangkan adalah aplikasi yang sederhana, tidak membutuhkan
analisis
dan
perancangan
secara
mendalam
yang
tidak
membutuhkan waktu yang lama dalam pembuatannya. Sesuai dengan fase-fase RAD yang sudah dijelaskan pada sub bab 2.8.2, fase pengembangan sistem yang penulis lakukan dibagi menjadi tiga. 3.3.1 Requirement Planning Pada fase requirement planning kerjasama antara penulis dan user sangat penting agar solusi dari permasalahan menjadi tepat guna, serta
61
tujuan dari pengembangan aplikasi dapat berjalan dengan baik. sehingga penulis mendapatkan gambaran kebutuhan yang harus tersedia pada aplikasi. Penulis juga melakukan analisis kebutuhan dengan melakukan perbandingan terhadap beberapa aplikasi akademik yang sudah ada. Selanjutnya penulis mencatat gambaran tersebut secara sederhana agar mudah dimengerti dan membuat aplikasi untuk memberikan kemudahan kepada pengguna. 3.3.2 Workshop Design Hasil analisis dari fase requirement planning syarat-syarat diatas dibuatlah rancangan proses-proses yang akan terjadi di dalam sistem. a. Perancangan Proses Pada perancangan proses ini digunakanlah UML (Unified Modelling Language) sebagai tools agar sistem yang dibuat dapat dimanfaatkan secara optimal. UML memiliki beberapa jenis diagram, dalam perancangan ini penulis hanya menggunakan use case diagram, sequence diagram, class diagram dan activity diagram.. b. Perancangan Database Pada perancangan database ini penulis menggunakan database MySQL. c. Perancangan Antarmuka Pemakai (User Interface) Perancangan User Interface memberikan fasilitas komunikasi antar pemakai dan sistem. Untuk perancangan user interface ini penulis menggunakan Micosoft Office Visio 2007
62
d.
Build system Pada tahap build system penulis melakukan pengkodean berdasarkan dokumentasi yang dihasilkan dari tahap design system. Pengkodean yang dilakukan menggunakan bahasa pemrograman PHP dengan framework Codeigniter sebagai pengatur hubungan antara controller, model dan view sebagai framework tampilan interface sistem.
3.3.3 Implementation Pada fase implementation pengembang dan user melakukan pengujian terhadap sistem yang telah dikembangkan menggunakan black-box testing Black-box testing ini menguji apakah input dari aplikasi sesuai dengan output. lebih lanjut. Fase implementation ini dibagi menjadi tiga tahap yaitu sebagai berikut: 1. Spesifikasi hardware dan software yang digunakan 2. Pengujian sistem aplikasi 3. Tanggapan user
63
3.3.4 Fase RAD
Fase Requirement Planning 1. Analisis sistem yang Berjalan 2. Identifikasi masalah 3. Solusi permasalahan
Fase Workshop Design 1. 2. 3. 4. 5. 6.
Membuat use case diagram Membuat use case scenario Membuat Activity diagram Membuat sequence diagram Membuat database relasional Merancang antarmuka / interface
Fase Implementation 1. Spesifikasi hardware dan software 2. Pengujian aplikasi 3. Tanggapan user pada aplikasi
Gambar 3.2 Fase RAD
64
3.4
Kerangka Berfikir Diagram pada gambar 3.3 menjelaskan kerangka berpikir peneliti dalam
melakukan penelitian.
Gambar 3.3 Kerangka Berpikir
65
4.BAB IV HASIL DAN PEMBAHASAN
Dengan judul penelitian “Pembuatan Aplikasi Penghitungan Pajak Penghasilan Pasal 21 Orang Pribadi Berdasarkan Undang-Undang Nomor 36 Tahun 2008”, penulis melakukan penelitian dengan metode pengumpulan data dan metode pengembangan sistem. Metode-metode tersebut akan dijelaskan pada bab ini. A. Metode Pengumpulan Data Pada metode pengumpulan data ini penulis melakukan pengumpulan data dengan 4 cara yaitu observasi, studi pustaka, kuisioner, studi literatur sejenis. 1. Observasi Demi menjaga keakuratan data-data yang penulis sajikan, penulis melakukan observasi secara online dengan mengunjungi website pemerintah terkait seperti website Direktorat Jenderal Pajak di www.pajak.go.id, Kementerian Keuangan di www.kemenkeu.go.id, Bank Indonesia di www.bi.go.id. Penulis melihat data dan publikasi yang dikeluarkan secara berkala yang sesuai dengan judul skripsi penulis.
.
66
2. Studi Pustaka Pada tahapan pengumpulan data dengan cara studi pustaka, penulis mencari referensi-referensi yang relevan dengan objek yang akan diteliti. Pencarian referensi dilakukan di perpustakaan, toko buku, maupun secara online melalui internet. Setelah mendapatkan referensi-referensi yang relevan
tersebut,
penulis
lalu
mencari
informasi-informasi
yang
dibutuhkan dalam penelitian ini dari referensi-referensi tersebut. Informasi yang didapatkan digunakan dalam penyusunan landasan teori, metodologi penelitian serta pengembangan aplikasinya secara langsung. Pustakapustaka yang dijadikan acuan dapat dilihat pada bagian Daftar Pustaka. 3. Kuisioner Penyebaran kuisioner dilakukan untuk mengetahui permasalahan yang ada. Penyebaran kuisioner dilakukan dua kali. Pertama penulis menyebarkan kuisioner untuk mengetahui masalah yang ada dan mengetahui aplikasi seperti apa yang pengguna inginkan. Kedua, penulis menyebarkan kuisioner untuk melihat tanggapan pengguna terhadap aplikasi yang telah dibuat. 4. Studi Literatur Sejenis Penulis melakukan studi literatur terhadap penelitian sejenis. Kemudian penulis menarik kesimpulan dari kekurangan-kekurangan penelitian tersebut dan dikembangkan pada aplikasi yang penulis buat.
67
B. Metode Pengembangan Sistem Pada metode pengembangan sistem ini penulis menggunakan metode RAD yang terdiri dari 3 tahapan yaitu fase Requirement Planning, fase Workshop Design, dan fase Implementation. 4.1
Fase Requirement Planning 4.1.1 Analisis Sistem berjalan 4.1.1.1 Perusahaan Perusahaan adalah tempat terjadinya kegiatan produksi dan berkumpulnya semua faktor produksi. Perusahaan termasuk dalam pemberi kerja yang dapat melakukan pemotongan terhadap PPh 21 para karyawan/pegawai tetapnya. Yang dimaksud dengan pegawai tetap adalah 1. menerima penghasilan dalam jumlah tertentu secara teratur 2. bekerja terus menerus atau sesuai kontrak, ikut mengelola kegiatan perusahaan. 3. Bekerja penuh (full time). Pemotongan PPh 21 dalam suatu perusahaan mencakup beberapa prosedur standar yang melibatkan bagian personalia, bagian perpajakan, bagian keuangan, bank dan kantor pajak. (Robbins, Stephen P., 1994: 22)
68
4.1.1.2 Flowchart Business Process Flowchart adalah bagan-bagan yang mempunyai arus yang menggambarkan langkah-langkah penyelesaian suatu masalah. Untuk mengetahui letak dimana aplikasi dipergunakan perhatikan flowchart dibawah ini.
Gambar 4.1 Flowchart Prosedur Pembayaran dan Pelaporan PPh 21
Berikut adalah prosedur pembayaran dan pelaporan PPh 21 suatu perusahaan : 1.
Dari bagian Payroll membuat data gaji karyawan dan memberikan data tersebut ke bagian Perpajakan.
69
2.
Setelah menerima data gaji dari bagian Payrol maka bagian perpajakan membuat Kertas Kerja yang berisi perhitungan PPh 21 karyawan, lalu input ke dalam sistem e-SPT Pajak dan print-out SPT masa PPh 21.
3.
Kemudian tanda tangan oleh pejabat yang berwenang dan beri stempel perusahaan.
4.
Setelah SPT masa selesai buat Surat Setoran Pajak (SSP) lalu buat Bukti Kas Keluar sebagai dokumen permintaan kas ke bagian Keuangan.
5.
Setelah BKK diterima oleh bagian keuangan, maka terlebih dahulu di cek kelengkapan BKK dan tandatangani oleh pejabat berwenang di bagian pengeluaran kas.
6.
Setelah semua selesai, siapkan giro pembayaran untuk BKK tersebut dan bayarkan ke bank.
7.
Siapkan giro pembayaran dan SSP, setor ke bank dan terima SSP yang sudah di validasi bank.
8.
Setelah pajak disetor ke bank maka laporkan SPT masa disertai lembar ke 3 SSP yang sudah divalidasi ke KPP dan pastikan menerima tanda terima dari KPP.
9.
Jurnal Pengeluaran kas otomatis tercatat di sistem ketika ada pembayaran.
70
4.1.1.3 Dokumen-dokumen yang terkait dalam prosedur : 1. Surat Pemberitahuan (SPT) adalah dokumen perpajakan yang berfungsi sebagai sarana untuk melaporkan pajak yang terutang 2. Data gaji karyawan adalah dokumen yang berisi tentang data karyawan dan juga gaji yang diterima selama 1 bulan. 3. Surat Setoran Pajak (SSP) adalah dokumen perpajakan yang berfungsi sebagai sarana untuk menyetorkan atau membayar pajak yang terutang. 4. Nomor Pokok Wajib Pajak (NPWP) adalah nomor yang diberikan kepada wajib pajak sebagai sarana dalam administrasi perpajakan yang dipergunakan sebagai identitas wajib pajak. 5. Nomor Pengukuhan Pengusaha Kena Pajak (NPPKP) adalah Pengusaha yang melakukan penyerahan Barang Kena Pajak dan atau penyerahan Jasa Kena Pajak yang dikenakan pajak berdasarkan Undang-undang Pajak Pertambahan Nilai 6. Bukti Tanda Terima adalah dokumen yang menyatakan bahwa dokumen perpajakan telah diterima oleh kantor pajak. 4.1.2 Identifikasi Masalah Berdasarkan hasil studi lapangan dan survey yang penulis lakukan terhadap calon user yang dilakukan secara online ditemukan bahwa pemotong pajak di sebuah perusahaan mengalami kesulitan dalam menghitung pajak karyawannya dan kegiatan pemotongan tersebut juga memakan banyak sekali waktu seiring dengan makin banyaknya karyawan
71
pada suatu perusahaan aplikasi penghitungan pajak yang ada juga memuat terlalu banyak form sehingga membingungkan user dan terbatas hanya untuk segmen tertentu saja sehingga memerlukan login terlebih dahulu dan bahkan membayar lebih untuk menggunakan semua fiturnya. Contoh aplikasi online yang beredar adalah
Krishand PPh
21 dan JewelSoft PPh 21. Hal tersebut bertentangan dengan tujuan penelitian yang penulis lakukan, tentang aplikasi pajak yang dapat mempermudah proses hitung dan mempersingkat waktu pemotong dalam menghitung PPh 21 karyawannya.
4.1.3 Solusi Permasalahan 4.1.3.1 Analisa Sistem yang diusulkan Adapun
sistem
aplikasi
yang
diajukan
penulis
menitikberatka pada kesederhanaan, kemudahan serta daya tarik dalam proses penghitungan pajak. User memasukan data gaji karyawan yang diterima dari Payroll Department (Departemen Penggajian) secara manual meliputi NPWP, nama, pekerjaan, status dan tanggungan. Penghasilan user yang meliputi gajipokok, tunjangan dan bonus lainnya. Dan yg terakhir pengeluaran user dari penghasilan yang telah didapat seperti tunjangan hari tua, iuran pensiun, dan lain lain. Setelah itu user dapat langsung menghitung data tersebut yang nantinya akan menghasilkan keluaran berupa penghasilan bruto,
72
penghasilan bersih, PTKP, dan PPh21 terhutang. Selanjutnya user dapat memilih untuk menghitung ulang dengan menekan tombol reset atau mau menghitung jumlah total PPh 21 karyawan yang harus dibayarkan oleh perusahaan. Hasil keluaran berupa SPT masa yang setelah mendapatkan autentifikasi dari petinggi terkait dapat dijadikan SSP. Bukti kas keluar sebagai dokumen permintaan kas ke bagian Keuangan. Dan SSP ini nantinya dapat dipergunakan oleh Finance Department (Departemen Keuangan) untuk melakukan pembayaran pajak melalui KKP terkait.
Gambar 4.2 Analisa Sistem yang diusulkan
73
Sistem aplikasi ini dibangun selain untuk mempermudah para pemotong pajak di perusahaan untuk menghitung PPh 21 para karyawannya, serta mengefisienkan waktu dalam proses tersebut.
Table 4.1 Strategi Penyelesaian No 1.
Sasaran Perbaikan Kemudahan
Pola Solusi
dalam Membangun sistem berbasis Web
mengakses aplikasi
yang dapat diakses dari jaringan internet
dengan
menggunakan
login
tanpa sebagai
pembatasan hak akses user. 2.
Penyederhanaan tampilan.
Karena
aplikasinya
sangat
spesifik maka tampilan yang ada sangat
ringkas
dan
mudah
dipahami user 3.
Kemudahan proses hitung
Langsung
dapat
menampilkan
hasil dari penghitungan 4.
Adanya Output dari aplikasi
File output berupa pdf dan e-SPT
5.
Mempercepat waktu hitung
Automatisasi dimana
user
penghitungan tidak
menghitung secara manual
perlu
74
Gambar 4.3 Flowchart Final
4.2
Fase Workshop Design 4.2.1 Membuat Use Case Diagram Use case diagram menjelaskan kegiatan-kegiatan yang dapat dilakukan oleh sistem dan aktor-aktor yang terlibat didalamnya. Seperti yang dijelaskan pada tabel 4.1 berikut:
75
Tabel 4.1Aktor Sistem No.
Aktor
Deskripsi Aktor yang mengelola dan mengontrol
1
Admin Website Aplikasi Aktor yang melakukan perhitungandi
2
User Website Aplikasi
Gambar 4.4 merupakan use case diagram yang menggambarkan kegiatan-kegiatan yang ada dalam sistem
Gambar 4.4 Use Case Diagram
76
4.2.2 Membuat Use Case Scenario 5. Use Case Scenario Hitung Pajak Table 4.2 Use Case Scenario Hitung Pajak Use Case Name Use Case ID Actor Description
Hitung Pajak 1 User
Precondition
User sistem membuka sistem dengan menggunakan Web browser.
Typical Course of Events
Use case menggambarkan kegiatan pengguna untuk mengakses sistem dan memasukan data karyawan
Actor Action
System Response
1. Input Nama, 2. NPWP, Pekerjaan, No. telp, tahun pajak, Menampilkan status kawin, Data yang di tanggungan, gaji Input pokok, bonus, tunjangan, biaya jabatan, THT, potongan 3. Alternate Courses Conclusion Post Condition
Memasukan Data Karyawan
77
6. Use Case Scenario Reset Table 4.3 Use Case Scenario Reset Use Case Name Use Case ID Actor Description
Precondition Typical Course of Events
Reset 2 User Use case menggambarkan kegiatan pengguna untuk menghapus semua input pada kolom isian User mengisi kolom isian Actor Action 1. Click tombol Reset
System Response 2. Melakukan proses Reset 3. Menampilkan kolom isian yang kembali kosong
Alternate Courses Conclusion User melakukan reset Post Condition
7. Use Case Hitung Table 4.4 Use Case Scenario Hitung Use Case Name Use Case ID Actor Description Precondition
Hitung 3 User Use case menggambarkan kegiatan pengguna untuk melakukan penghitungan data User memasukan input data karyawan pada kolom yang tersedia
Typical Course of Events
Actor Action 1. Click Hitung
3 Alternate Courses
System Response 2. Menampilkan hasil penghitungan 4.
Jika ada kolom yang kosong, maka sistem
78
Conclusion Post Condition
akan memberikan peringatan Use case menggambarkan User melakukan proses penghitungan Terdapat hasil penghitungan
8. Use Case Scenario Proses e-SPT
Table 4.5 Use Case Scenario Proses e-SPT Use Case Name Use Case ID Actor Description Precondition Typical Course of Events
e-SPT 4 User Use case menggambarkan kegiatan pengguna untuk menampilkan form e-SPT
Actor Action 1. Click e-SPT
System Response 2. Menampilkan form e-SPT
Alternate Courses Use case menggambarkan User menampilkan Conclusion form e-SPT Masukan data karyawan dari Hitung Pajak ke Post Condition e-SPT
9. Use Case Scenario Proses Cetak e-SPT Table 4.6 Use Case Scenario Proses Cetak e-SPT Use Case Name Use Case ID Actor Description
Cetak e-SPT 5 User Use case menggambarkan kegiatan pengguna untuk mencetak/printout e-SPT
79
Precondition
User membuka form e-SPT dengan mengklik tombol e-SPT
Typical Course of Events
Actor Action 1. Click tombol Cetak e-SPT
System Response 2.
Mencetak e-SPT
4.
3
Alternate Courses Use case menggambarkan User mencetak eConclusion SPT Post Condition
10.Use Case Scenario Simpan e-SPT Table 4.7 Use Case Scenario Simpan e-SPT Use Case Name Use Case ID Actor Description
Simpan e-SPT 6 User
Precondition
User membuka form e-SPT dengan mengklik tombol e-SPT
Use case menggambarkan kegiatan User untuk menyimpan e-SPT
Typical Course of Events
Actor Action
System Response
Click Simpan
2. Menyimpan eSPT dalam format PDF
1.
Alternate Courses Conclusion Post Condition
User menyimpan file e-SPT
80
11.Use Case Skenario Data Karyawan Table 4.8 Use Case Skenario Data Karyawan Use Case Name Use Case ID Actor Description
Data Karyawan 6 User Use case menggambarkan kegiatan pengguna untuk menampilkan halaman Data Karyawan
Precondition Typical Course of Events
Actor Action 1.
ClickData Karyawan
System Response 2. Menampilkan halaman Data karyawan
Alternate Courses Conclusion Post Condition
User mengakses halaman Data Karyawan
12.Use Case Skenario Edit Data Karyawan Table 4.9 Use Case Skenario Edit Data Karyawan Use Case Name Use Case ID Actor Description
Edit Data Karyawan 6 User
Precondition
User mengakses halaman Data Karyawan dengan mengklik tombol Data Karyawan pada halaman Hitung Pajak
Typical Course of Events
Use case menggambarkan kegiatan User untuk mengedit Data Karyawan
Actor Action
System Response
81
1.
ClickData Karyawan
2. Menampilkan halaman Data karyawan
Alternate Courses Conclusion Post Condition
User mengakses halaman Data Karyawan Menampilkan halaman Hitung Pajak
13.Use Case Skenario Delete Data Karyawan Table 4.10 Use Case Skenario Delete Data Karyawan Use Case Name Use Case ID Actor Description
Delete Data Karyawan 6 User
Precondition
User mengakses halaman Data Karyawan dengan mengklik tombol Data Karyawan pada halaman Hitung Pajak
Use case menggambarkan kegiatan User untuk menghapus salah satu Data Karyawan
Typical Course of Events
Actor Action 1.
Click Delete
System Response 2. Menghapus Data Karyawan
Alternate Courses Conclusion Post Condition
User dapat menghapus Data Karyawan
82
14.Use Case Skenario Cetak Data Karyawan Table 4.11 Use Case Skenario Cetak Data Karyawan Use Case Name Use Case ID Actor Description
Cetak Data Karyawan 6 User
Precondition
User mengakses halaman Data Karyawan dengan mengklik tombol Data Karyawan pada halaman Hitung Pajak
Use case menggambarkan kegiatan User untuk mencetak Data Karyawan
Typical Course of Events
Actor Action 1.
Click Cetak
System Response 2. Mencetak Karyawan
Data
Alternate Courses Conclusion Post Condition
User dapat mencetak Data Karyawan
15. Use Case Skenario Simpan Data Karyawan Table 4.12 Use Case Skenario Simpan Data Karyawan Use Case Name Use Case ID Actor Description
Simpan Data Karyawan 6 User
Precondition
User mengakses halaman Data Karyawan dengan mengklik tombol Data Karyawan pada halaman Hitung Pajak
Typical Course of Events
Use case menggambarkan kegiatan User untuk menyimpan Data Karyawan
Actor Action
System Response
83
1.
Click Simpan
2. Menyimpan Data Karyawan 3. Tersimpan dalam format PDF
Alternate Courses Conclusion Post Condition
User dapat menyimpan Data Karyawan Tersimpan dalam format PDF
4.2.3 Membuat Activity Diagram 1. Activity Diagram Fungsi Hitung
Gambar 4.5 Activity Diagram Hitung
Keterangan gambar: activity diagram Gambar 4.5 menjelaskan aktifitas Hitung. Dimana yang harus dilakukan User yaitu memasukan input Data Karyawan kedalam form yang terdapat di Halaman Hitung. Selanjutnya user dapat click tombol Hitung untuk dapat melihat hasil dari perhitungan pajak berdasarkan input data karyawan tadi.
84
2. Activity Diagram Fungsi e-SPT
Gambar 4.6 Activity Diagram Fungsi e-SPT
Keterangan
gambar:
activity
diagram
pada
Gambar
4.6
menjelaskan aktifitas dari User untuk memanggil form e-SPT. Pada Halaman Hitung Pajak, User click e-SPT lalu akan keluar form pengisian e-SPT. Pengisian form e-SPT menurut data karyawan dan hasil hitung yang sebelumnya telah dilakukan.
85
3. Activity Diagram Fungsi Cetak e-SPT
Gambar 4.7 Activity Diagram Fungsi Cetak e-SPT
Keterangan gambar: activity diagram Gambar 4.7 menjelaskan aktifitas User dalam mencetak e-SPT. Setelah hasil hitung didapat maka User meng-click Cetak pada halaman e-SPT. Hasil cetakan berupa print out.
86
4. Activity Diagram Fungsi Simpan e-SPT
Gambar 4.8 Activity Diagram Fungsi Simpan e-SPT
Keterangan gambar: activity diagram Gambar 4.8 menjelaskan aktifitas User dalam menyimpan e-SPT yang telah dihitung. Pada halaman e-SPT user dapat meng-click Simpan yang selanjutnya file e-SPT dapat disimpan di storage dengan format pdf.
87
5. Activity Diagram Fungsi Reset
Gambar 4.9 Activity Diagram Fungsi Reset
Keterangan gambar: activity diagram Gambar 4.9 menjelaskan aktifitas User dalam melakukan fungsi reset. User yang telah melakukan penghitungan dapat melakukan proses penghitungan lagi dengan melakukan reset terlebih dahulu. Pada halaman Hitung user click Reset lalu akan muncul box konfirmasi apakah proses reset dilakukan atau tidak. Jika user memilih Ya maka data dalam kolom input akan hilang.
88
6. Activity Diagram Fungsi Data Karyawan
Gambar 4.10 Activity Diagram Fungsi Data Karyawan
Keterangan gambar: activity diagram Gambar 4.10 menjelaskan aktifitas User pada halaman Hitung user meng-click Data Karyawan. Halaman Data Karyawan akan keluar dan user dapat melihat data dari karyawan yang telah dihitung pajaknya
89
7. Activity Diagram Fungsi Edit Data Karyawan
Gambar 4.11 Activity Diagram Fungsi Edit Data Karyawan
Keterangan gambar: activity diagram Gambar 4.11 menjelaskan aktifitas User untuk melakukan perubahan (Edit) pada Data Karyawan. Pada halaman Hitung User meng-click Data Karyawan. Setelah halaman Data Karyawan keluar user dapat meng-click Edit. Selanjutnya user akan dibawa ke halaman Hitung lagi dan dapat memasukan data terbaru.
90
8. Activity Diagram Fungsi Delete Data Karyawan
Gambar 4.12 Activity Diagram Fungsi Delete Data Karyawan
Keterangan gambar: activity diagram Gambar 4.12 menjelaskan aktifitas User mendelete Data Karyawan. Pada halaman Hitung user meng-click Data Karyawan. Lalu muncul halaman Data Karyawan, setelah itu user dapat meng-click Delete. Setelah itu akan muncul kotak konfirmasi apakah proses akan dilanjutkan atau tidak. Jika user memilih Tidak maka akan kembali ke halaman Data Karyawan. Jika user memilih Ya maka data akan dihapus dari basis data.
91
9. Activity Diagram Fungsi Cetak Data Karyawan
Gambar 4.13 Activity Diagram Fungsi Cetak Data Karyawan
Keterangan gambar: activity diagram Gambar 4.13 menjelaskan aktifitas User untuk melakukan proses cetak Data Karyawan. Pada halaman Hitung user meng-click Data Karyawan. Setelah halaman Data Karyawan muncul user dapat meng-click Cetak untuk melakukan proses pencetakan (print out).
92
10.Activity Diagram Fungsi Simpan Data Karyawan
Gambar 4.14 Activity Diagram Fungsi Simpan Data Karyawan
Keterangan gambar: activity diagram Gambar 4.14 menjelaskan aktifitas User dalam melakukan Simpan Data Karyawan. Pada halaman Hitung user meng-click Data Karyawan. Setelah halaman Data Karyawan ini muncul maka user dapat meng-click Simpan untuk melakukan proses penyimpanan Data Karyawan di Storage dalam format pdf.
93
4.2.4
Membuat Sequence Diagram
Gambar 4.15 Sequence Diagram Reset
Keterangan gambar : user sudah berada didalam aplikasi, lalu user dapat mengisi data karyawan yang akan dihitung pajaknya didalam form hitung yang sudah tersedia. Setelah selesai memasukkan semua data karyawan, user dapat memilih menu hitung untuk memulai proses penghitungan. Tampilan hasil hitung akan muncul dengan hasil penghitungan tadi, selanjutnya jika user mendapati ada kesalahan data yang dimasukkan maka user dapat memilih menu reset yang akan menghapus data yang tadi telah dimasukkan dan user dapat memasukkan data baru.
94
Gambar 4.16 Sequence Diagram e-SPT
Keterangan gambar : user sudah berada didalam aplikasi, lalu user dapat mengisi data karyawan yang akan dihitung pajaknya didalam form hitung yang sudah tersedia. Setelah selesai memasukkan semua data karyawan, user dapat memilih menu hitung untuk memulai proses penghitungan. Tampilan hasil hitung akan muncul dengan hasil penghitungan tadi, selanjutnya jika user mendapati ada kesalahan data yang dimasukkan maka user dapat memilih menu reset yang akan menghapus data yang tadi telah dimasukkan dan user dapat memasukkan data baru. Selanjutnya user dapat memilih menu e-SPT untuk menampilkan hasil penghitungan kedalam form e-SPT. Di form e-SPT user dapat memilih untuk menyimpan data tersebut kedalam pdf atau langsung mencetaknya.
95
Gambar 4.17 Sequence Diagram Data Karyawan
Keterangan gambar : user sudah berada didalam aplikasi, lalu user dapat mengisi data karyawan yang akan dihitung pajaknya didalam form hitung yang sudah tersedia. Setelah selesai memasukkan semua data karyawan, user dapat memilih menu hitung untuk memulai proses penghitungan. Tampilan hasil hitung akan muncul dengan hasil penghitungan tadi, selanjutnya jika user mendapati ada kesalahan data yang dimasukkan maka user dapat memilih menu reset yang akan menghapus data yang tadi telah dimasukkan dan user dapat memasukkan data baru. User dapat memilih menu data karyawan untuk melihat seluruh data hasil penghitungan yang telah dilakukan. Tampilan form data karyawan ditampilkan disitu user dapat melakukan pengecekan apakah sudah sesuai atau masih ada data
96
karyawan yang salah atau kurang, jika itu terjadi maka user dapat memilih menu edit untuk kembali melakukan proses penghitungan atau delete untuk menghapus data karyawan. Setelah semua dirasa tepat user dapat memilih menu cetak untuk mencetak printout data karyawan atau memilih menu simpan untuk menyimpan data karyawan kedalam file pdf.
4.2.5 Desain Basis Data 4.2.5.1 Database Relasional
Gambar 4.18 Desain Database Relational
97
4.2.5.2 Daftar Tabel 1. Tabel tbl_ptkp Tabel tb_ptkp berisikan informasi mengenai PTKP (Penghasilan Tidak Kena Pajak). Property dari field-field pada tabel tb_dept dapat dilihat pada Table 4.13 Tabel tbl_ptkp Nama Field rowid_ptkp nama_ptkp ket_ptkp status_setting
Property int(11) AUTO_INCREMENT PK varchar(50) varchar(80) int(11)
2. Tabel tbl_setting Tabel tbl_setting berisikan informasi mengenai kolom identitas. Property dari field-field pada tabel tbl_setting dapat dilihat pada 4.10
Table 4.14 Tabel tbl_setting Nama Field rowid_setting_detail Value_setting ket_settng status_ptkp
Property int(11) Float text int(11)
value_ptkp
float
AUTO_INCREMENT PK
98
3. Tabel tb_setting_detail berisikan informasi mengenai. Property dari field-field pada tabel tb_setting_detail dapat dilihat pada 4.11
Table 4.15 Tabel tb_setting_detail Nama Field rowid_ptkp nama_ptkp Tahun_setting_detail tbl_setting_rowid_setting
Property int(11) AUTO_INCREMENT PK varchar(50) Int(11) int(11)
4. Tabel tb_admin
Table 4.16 tb_admin Nama Field rowid_admin username password status_admin
Property int(11) AUTO_INCREMENT varchar(50) text int(11)
PK
99
5. Tabel vw_setting
Table 4.17 vw_setting Nama Field rowid_setting Nama Ket_setting status_setting Value_setting Tahun_setting_detail Rowed_setting_detail
Property int(11) varchar(50) text int(11) float int(11) int(11)
AUTO_INCREMENT
4.2.6 Desain Interface 1. Desain Interface Hitung Pajak
Gambar 4.19 Desain Interface Hitung Pajak
PK
100
Gambar 4.20 Desain Interface Hitung Pajak 2
101
2. Desain Interface e-SPT
Gambar 4.21 Desain Interface e-SPT
102
3. Desain Interface Data Karyawan
Gambar 4.22 Desain Interface Data Karyawan
4.2.7 Pengkodean Sistem Pada framework Codeigniter yang menggunakan konsep MVC, pengkodean sistem dibagi menjadi pengkodean model, view dan controller. Tabel 4.10 Contoh Pengkodean Model 1
103
$this->db->order_by('ket_ptkp','asc'); $this->db->where('status_ptkp', 1); $this->db->where('kode_ptkp', 'NKH'); $query=$this->db->get($this->tbl_name); return $query->result(); } function get_dataTanggungan(){ $this->db->order_by('ket_ptkp','asc'); $this->db->where('status_ptkp', 1); $this->db->where('kode_ptkp', 'ANK'); $query=$this->db->get($this->tbl_name); return $query->result(); } function get_data_group($sortField, $groupField){ $this->db->order_by($sortField,'asc'); $this->db->group_by($groupField); $query=$this->db->get($this->tbl_name); return $query->result(); } function get_data_where($sortField, $whereField, $value){ $this->db->order_by($sortField,'asc'); $this->db->where($whereField, $value); $query=$this->db->get($this->tbl_name); return $query->result(); } function get_data_where_group($sortField, $whereField, $value, $groupField){ $this->db->order_by($sortField,'asc'); $this->db->where($whereField, $value); $this->db->group_by($groupField); $query=$this->db->get($this->tbl_name); return $query->result(); } function record_count() { return $this->db->count_all($this->tbl_name); } function fetch_admin($limit, $start,$groupField) { $this->db->group_by($groupField); $this->db->limit($limit, $start); $query = $this->db->get($this->tbl_name);
104
4.2.8 Fase Implementation 4.2.8.1
Spesifikasi Hardware (Perangkat Keras) Spesifikasi perangkat keras di sisi server pada tahap pengujian adalah sebagai berikut: 1. Prosesor intel i5-460M 2. RAM 2GB 3. HDD 500GB 4. ATI Mobility Radeon HD 5650 Dalam melakukan pengujian, perangkat keras yang digunakan di sisi client adalah sebagai berikut: 1. Prosesor intel i5-460M 2. RAM 2GB 3. HDD 500GB 4. ATI Mobility Radeon HD 5650
4.2.8.2
Spesifikasi Software (Perangkat Lunak) Perangkat lunak yang digunakan di sisi server adalah sebagai berikut: 1. Windows 7 Ultimate 2. XAMPP v3.2.1 Web browser yang digunakan untuk pengujian di sisi client yaitu sebagai berikut: 1. Google Chrome v30.0.1599.69 m, 2. Mozilla Firefox v23.0.
105
4.2.8.3
Hasil Pengujian Aplikasi Dalam pengujian aplikasi penghitungan pajak penghasilan pasal
21 ini, penulis menggunakan black-box testing untuk mengetahui fiturfitur yang dibuat apakah sudah berjalan sesuai dengan yang diinginkan. Cara pengujiannya, hanya dilakukan dengan menjalankan atau mengeksekusi unit atau modul, kemudian diamati apakah hasil dari unit tersebut sesuai dengan proses bisnis yang diinginkan 1. Pengujian Aplikasi User
Table 4.18 Pengujian Interface User No
Test Case
Prasyarat
Hasil yang diharapkan
User mengakses aplikasi
Hasil Uji Coba Sesuai Tidak Sesuai
1.
Akses aplikasi
2.
Input data karyawa n
3.
Hitung
Aplikasi menampilkan form Hitung Pajak User mengisi Jika ada form Sesuai form Hitung penting yang Pajak. tidak terisi maka akan muncul notification pada kolom tersebut User memilih muncul form Sesuai
Pajak
menu Pajak
4
Reset
User
Hitung hasil penghitungan memilih Data
yang Sesuai
106
menu Reset di sudah form
Hitung dimasukkan
Pajak
dalam kolom hitung
pajak
dihapus
2. Pengujian Aplikasi e-SPT
Table 4.19 Pengujian Aplikasi e-SPT No
Test Case
1.
Akses aplikasi
2.
e-SPT
3.
Cetak
Prasyarat
Hasil yang diharapkan
User mengakses aplikasi
Hasil Uji Coba Sesuai Tidak Sesuai
Aplikasi menampilkan form Hitung Pajak User memilih Muncul Sesuai menu E-SPT halaman form e-SPT User memilih Muncul Sesuai menu Cetak
halaman setting print
4
Simpan
User memilih e-SPT menu Simpan
tersimpan dalam format pdf
sesuai
107
3. Pengujian Aplikasi Data Karyawan
Table 4.20 Pengujian Aplikasi Data Karyawan No
Test Case
1.
Akses aplikasi
2.
Data Karyawan
3.
Cetak
Prasyarat
Hasil yang diharapkan
User mengakses aplikasi
Hasil Uji Coba Sesuai Tidak Sesuai
Aplikasi menampilkan form Hitung Pajak User Muncul halaman Sesuai memilih form Data menu Data Karyawan Karyawan User Muncul halaman Sesuai memilih
setting print
menu Cetak 4
Simpan
User
e-SPT tersimpan Sesuai
memilih
dalam format pdf
menu Simpan 5
6
Edit
Delete
User
User Kembali ke Sesuai
memilih
halaman
menu Edit
Hitung
User
Data
Karyawan Sesuai
memilih
yang
tersimpan
menu Delete dalam terhapus
form
database
108
4. Pengujian Sistem Menggunakan Kuesioner Pengujian sistem dengan kuesioner digunakan dengan tujuan untuk kelayakan dari aplikasi yang dibuat. Sebelum melakukan kuesioner kepada tiap responden, terlebih dahulu responden menggunakan aplikasi. Responden berasal dari para karyawan yang berhubungan dengan pajak seperti divisi payroll, finance, dan accounting. Responden yang terkumpul sebanyak 15 orang. Pada kuesioner tersebut terdapat 4 jenjang pilihan yang terdiri dari, SB (sangat baik), B (baik), TB (tidak baik), dan STB (sangat tidak baik).
Table 4.21 Tabel Pengujian Sistem menggunakan Kuesioner SB
B
TB
STB
UJI COBA Dalam Persentase (%) 1. User Interface Aplikasi, layout, warna,
60
20
20
0
form, link menu 2. Kemudahan
Dalam
Penggunaan
Aplikasi (user friendly) 3. Kelengkapan Konten Menu Yang Ada Pada Aplikasi 4. Kemudahan
Dalam
Memahami
Pertanyaan Pada Fasilitas Konsultasi 5. Saran Yang Diberikan Pada Hasil Konsultasi
33,3 46,7 13,3
6,7
33.3 46,7
20
0
46,7
20
20
13,3
46,7
40
13,3
0
109
1. User Interface Aplikasi 9 responden memilih SB, 3 responden memilih B, 3 responden memilih TB, dan 0 responden memilih STB. 2. User Friendly 5 responden memilih SB, 7 responden memilih B, 2 responden memilih TB, dan 1 responden memilih STB. 3. Kelengkapan Konten Menu 5 responden memilih SB, 7 responden memilih B, 3 responden memilih TB, dan 0 responden memilih STB. 4. Kemudahan Dalam Memahami Pertanyaan 7 responden memilih SB, 3 responden memilih B, 3 responden memilih TB, dan 2 responden memilih STB. 5. Saran Yang Diberikan 7 responden memilih SB, 6 responden memilih B, 2 responden memilih TB, dan 0 responden memilih STB.
5.BAB V PENUTUP
5.1
Kesimpulan Berdasarkan pembahasan pada bab-bab sebelumnya, maka penulis dapat
mengambil kesimpulan dari penelitian yang telah dilakukan, bahwa: 1. Aplikasi penghitungan pajak PPh21 yang dapat diakses secara langsung sangat memudahkan user yang ingin menghitung pajak penghasilannya. 2. Menghemat waktu dalam penghitungan PH 21 3. Tampilan yang simple dan disertakannya info tentang pajak menambah pengetahuan user tentang manfaat pentingnya pajak. 4. Output yang berupa SPT dan dapat langsung di serahkan kepada KPP (Kantor Pemungut Pajak) terkait, diharapkan bisa mendorong kesadaran jumlah wajib pajak yang membayar pajak 5.2
Saran 1. Pada perkembangan selanjutnya bisa ditambahkan pasal lain seperti 22, 25, 26 sehingga cakupan aplikasinya menjadi lebih luas. 2. Dilengkapi dengan animasi bergerak yang aktraktif sehingga user menjadi lebih tertarik menggunakan aplikasi. 3. Terdapat pilihan SPT yang lain sehingga user dapat menyesuaikan dengan kebutuhannya.
110
DAFTAR PUSTAKA
A.S Rosa dan Salahuddin M, 2011. Modul Pembelajaran Rekayasa Perangkat Lunak (Terstruktur dan Berorientasi Objek), Bandung: Modula. Achmad Tjahyono, Muhammad Fachri H, Edisi Sembilan, “Perpajakan” UPP STIM YKPN, Jakarta, 2009. Adi Nugroho. 2005. Analisis dan Perancangan Sistem Informasi Dengan Metodologi Berorientasi Objek. Informatika. Bandung. Alan Dennis dkk. 2010. Systems Analysis and Design with UML Version 2.0. An Object-Oriented Approach. Edisi Kedua. America : John Wiley & Sons Alatas, Husein. 2013.Responsive Web Design dengan PHP dan Bootstrap. Yogyakarta : Lokomedia. Ardhana, YM Kusuma. 2013.Pemrograman PHP Codeigniter Black Box. Jakarta : Jasakom. Basuki, Awan Pribadi. 2010.Membagun Web Berbasis PHP dengan Framework Codeihniter. Yogyakarta : Lokomedia. Daqiqil, Ibnu. 2011.Framework Codeigniter Sebuah Panduan dan Best Practice. Pekanbaru. Hasibuan, Malayu. 2005.Manajemen Dasar, Pengertian dan Masalah. Jakarta : PT Bumi Aksara. Kendall, Kenneth E and Kendall, Julie E. 2010.System Analysis and Design. New Delhi : PHI Learning.
111
Pressman, Roger S, 2002, Rekayasa Perangkat Lunak: Pendekatan Praktisi (Buku I). Yogyakarta : Andi. Prof. Gunadi, M. Sc, Ak, Ph.D. 2013. Panduan Komprehensif Pajak Penghasilan. Jakarta : Bee Media. Pudjo Widodo, Herlawati. 2011. Menggunakan UML. Bandung: Informatika. Ridwan, dan Sunarto. 2009. Pengantar Statistika untuk Penelitian Pendidikan, Sosial, Ekonomi, dan Bisnis. Bandung: Alfabeta. Robbins, Stephen P., 1994, Teori Organisasi, Struktur, Desain dan Aplikasi, edisi 3, Arcan,Donaldson. Tatang, Hasanudin. 2013. Pajak Penghasilan Pemotongan/Pemungutan. Surabaya : dbuku. Waluyo, 2008. Akutansi Pajak. Jakarta: Salemba Empat. Waluyo, Didik Budi. 2009. Petunjuk Pemotongan Pajak Penghasilan Pasal 21/26. Jakarta: Salemba Empat.
112
A. Lampiran Hasil Kuisioner Penelitian I
Penyebaran kuisioner pertama menggunakan metode Simple Random Sampling, yaitu metode pengambilan sampel dari anggota populasi secara acak tanpa memperhatikan strata (tingkatan) dalam anggota populasi tersebut. Hal ini dilakukan apabila jumlah anggota populasi dianggap homogen (sejenis). (Ridwan, 2009:58). Perhitungan hasil kuisioner pertama menggunakan metode skala Guttman yaitu skala kumulatif. Jika seseorang menyisahkan pertanyaan yang berbobot lebih berat, ia akan mengiyakan pertanyaan yang kurang berbobot lainnya. Skala Guttman mengukur suatu dimensi saja dari suatu variable yang multidimensi. Skala Guttman disebut juga skala Scalogram yang sangat baik untuk meyakinkan peneliti tentang kesatuan dimensi dan sikap atau sifat yang diteliti, yang sering disebut attribute universal. Pada skala Guttman terdapat beberapa pertanyaan yang diurutkan secara hirarkis atau melihat sikap tertentu seseorang. Jika seseorang menyatakan tidak pada pernyataan sikap tertentu dari sederetan sikap pernyataan itu, ia akan menyatakan lebih dari tidak pada pernyataan berikutnya (Ridwan, 2009:90). Hasil Penyebaran kuisioner dengan hasil aturan perhitungan sebagai berikut:
Pertanyaan dengan menggunakan dua opsi jawaban, memiliki nilai a =2 b=1
Pertanyaan dengan menggunakan tiga opsi jawaban, memiliki nilai
A-1
a=2 b=1 c=0
Range : 100 – 76 = Sangat Perlu 75 – 51 = Perlu 50 – 26 = Biasa 25 – 0 = Tidak perlu
1. Pada divisi apa posisi anda dalam perusahaan? a. Finance b. Accounting c. Human Resource Development (HRD)
Table 0.1 Divisi dalam perusahaan Jawaban
Jumlah Jumlah Responden
Responden
Penjawab (%)
a. Finance b. Accounting
Hasil
5 (25%) 20
15 (75%)
c. HRD
0 (0%)
Perlu* *Poin tingkat jawaban
A-2
2. Apa anda terlibat dengan proses penghitungan pajak penghasilan PPh 21 Karyawan di perusahaan anda? a. Ya b.Tidak Table 0.2 Keterlibatan dalam penghitungan PPh 21 Jawaban
Jumlah Jumlah Responden
Responden
Hasil Penjawab (%)
a. Ya
20 (100%) 20
Sangat Perlu
b. Tidak
0 (0%)
3. Apakah selama ini anda melakukan proses penghitungan PPh 21 secara manual? a. Ya b. Tidak Table 0.3 Proses Penghitungan PPh 21 secara manual Jawaban
Jumlah Jumlah Responden
Responden
Hasil Penjawab (%)
a. Ya
20 (100%) 20
Sangat Perlu
b. Tidak
0 (0%)
4. Apakah anda mengalami kesulitan ketika melakukan penghitungan PPh 21 secara manual? a. Ya b. Tidak
A-3
Table 0.4 Kesulitan penghitungan PPh21 secara manual Jawaban
Jumlah Jumlah Responden
Responden
Hasil Penjawab (%)
a. Ya
20 (100%)
b. Tidak
20
0 (0%)
c. Biasa saja
Sangat Perlu
0 (0%)
5. Apakah anda butuh suatu aplikasi penghitungan pajak PPh 21 di perusahaan anda? a. Butuh
b. Tidak Butuh
Table 0.5 Kebutuhan akan aplikasi penghitungan PPh21 Jawaban
Jumlah Jumlah Responden
Responden
Hasil Penjawab (%)
a. Butuh
20 (100%) 20
Sangat Perlu
b. Tidak Butuh
6. Apakah
0 (0%)
anda
pernah
menggunakan
aplikasi
penghitungan
sebelumnya? a. Pernah
b. Tidak Pernah Table 0.6 Pernah menggunakan aplikasi pajak
Jawaban
Jumlah Jumlah Responden
Responden a. Pernah
Hasil Penjawab (%)
20
20 (100%)
A-4
Sangat Perlu
pajak
b. Tidak Pernah
0 (0%)
7. Seberapa pentingkah aplikasi penghitungan PPh 21 bagi pekerjaan anda? a. Penting
b. Biasa saja c. Tidak Begitu Penting
Table 0.7 Tingkat kepentingan aplikasi bagi pekerjaan Jawaban
Jumlah Jumlah Responden
Responden
Hasil Penjawab (%)
a. Penting
20 (100%)
b. Biasa saja
0 (0%) 20
Sangat Perlu
c. Tidak begitu
0 (0%)
penting
8. Apakah anda ingin aplikasi PPh 21 yang simple dan mudah digunakan? a. Ya b. Tidak Table 0.8 Keinginan menggunakan aplikasi PPh21 Jawaban
Jumlah Jumlah Responden
Responden
Penjawab (%)
a. Ya b. Ragu-ragu
Hasil
20 (100%) 20
0 (0%)
c. Tidak
0 (0%)
A-5
Sangat Perlu
Kesimpulan 1. Divisi yang paling banyak mengisi kuisioner ini adalah divisi accounting mencapai 75%. 2. Tingkat keterlibatan dalam proses penghitungan pajak penghasilan PPh 21 mencapai 100% (sangat perlu). 3. Responden selama ini yang melakukan proses penghitungan secara manual mencapai 100% . (Sangat perlu) 4. Jumlah responden yang mengalami kesulitan ketika melakukan proses penghitungan PPh21 mencapai 100% (Sangat perlu). 5. Responden yang membutuhkan aplikasi penghitungan pajak PPh21 mencapai 100% (Sangat perlu). 6. Jumlah responden yang pernah memakai aplikasi penghitungan PPh21 mencapai 100% (Sangat perlu). 7. Responden yang menyatakan pentingnya suatu aplikasi pajak PPh21 bagi pekerjaan mereka mencapai 100% (Sangat perlu). 8. Responden yang menginginkan aplikasi penghitugnan PPh21 yang simple dan mudah digunakan mencapai 100% (Sangat perlu).
A-6
Kuisioner Penelitian I
Gambar 0.1 Kuisioner Penelitian I.a
A-7
Gambar 0.2 Kuisioner Penelitian I.b
A-8
B. Lampiran Hasil Kuisioner Penelitian II
Responden berasal dari para karyawan yang berhubungan dengan pajak seperti divisi payroll, finance, dan accounting. Responden yang terkumpul sebanyak 15 orang. Pada kuesioner tersebut terdapat 4 jenjang pilihan yang terdiri dari, SB (sangat baik), B (baik), TB (tidak baik), dan STB (sangat tidak baik).
Table 0.9 Tabel Pengujian Sistem menggunakan Kuesioner SB
B
TB
STB
UJI COBA Dalam Persentase (%) 1. User Interface Aplikasi, layout, warna,
60
20
20
0
form, link menu 2. Kemudahan
Dalam
Penggunaan
Aplikasi (user friendly) 3. Kelengkapan Konten Menu Yang Ada Pada Aplikasi 4. Kemudahan
Dalam
Memahami
Pertanyaan Pada Fasilitas Konsultasi 5. Saran Yang Diberikan Pada Hasil Konsultasi
33,3 46,7 13,3
6,7
33.3 46,7
20
0
46,7
20
20
13,3
46,7
40
13,3
0
Kesimpulan : 1. User Interface Aplikasi 9 responden memilih SB, 3 responden memilih B, 3 responden memilih TB, dan 0 responden memilih STB.
A-9
2. User Friendly 5 responden memilih SB, 7 responden memilih B, 2 responden memilih TB, dan 1 responden memilih STB. 3. Kelengkapan Konten Menu 5 responden memilih SB, 7 responden memilih B, 3 responden memilih TB, dan 0 responden memilih STB. 4. Kemudahan Dalam Memahami Pertanyaan 7 responden memilih SB, 3 responden memilih B, 3 responden memilih TB, dan 2 responden memilih STB. 5. Saran Yang Diberikan 7 responden memilih SB, 6 responden memilih B, 2 responden memilih TB, dan 0 responden memilih STB.
A-10
Gambar 0.3 Kuisioner Penelitian II
A-11
C. SK Dosen Pembimbing Skripsi
Gambar 0.4 SK Dosen Pembimbing
A-12
D. Source Code
Table 0.10 Pengkodean pada model 1
db->order_by('ket_ptkp','asc'); $this->db->where('status_ptkp', 1); $this->db->where('kode_ptkp', 'NKH'); $query=$this->db->get($this->tbl_name); return $query->result(); } function get_dataTanggungan(){ $this->db->order_by('ket_ptkp','asc'); $this->db->where('status_ptkp', 1); $this->db->where('kode_ptkp', 'ANK'); $query=$this->db->get($this->tbl_name); return $query->result(); } function get_data_group($sortField, $groupField){ $this->db->order_by($sortField,'asc'); $this->db->group_by($groupField); $query=$this->db->get($this->tbl_name); return $query->result(); } function get_data_where($sortField, $whereField, $value){ $this->db->order_by($sortField,'asc'); $this->db->where($whereField, $value); $query=$this->db->get($this->tbl_name); return $query->result(); } function get_data_where_group($sortField, $whereField, $value, $groupField){ $this->db->order_by($sortField,'asc'); $this->db->where($whereField, $value); $this->db->group_by($groupField); $query=$this->db->get($this->tbl_name);
A-13
return $query->result(); } function record_count() { return $this->db->count_all($this->tbl_name); } function fetch_admin($limit, $start,$groupField) { $this->db->group_by($groupField); $this->db->limit($limit, $start); $query = $this->db->get($this->tbl_name); if ($query->num_rows() > 0) { foreach ($query->result() as $row) { $data[] = $row; } return $data; } return false; } /*function add_data(){ $data=array( 'nama_pt' => $this->input->post('txtname') ); $this->db->insert($this->tbl_name,$data); }*/ function add_data($param){ $arrayParam = explode("~", $param); $data=array( 'username' => $arrayParam[0], 'password' => md5($arrayParam[1]) ); $this->db->insert($this->tbl_name,$data); return $this->db->_error_message(); } /*function upd_data_where($whereField,$value){ $data=array( 'nama_pt' => $this->input->post('txtname') ); $this->db->where($whereField, $value); $this->db->update($this->tbl_name, $data); }*/ function upd_data_where($whereField,$value,$param){ $arrayParam = explode("||", $param); $data=array(
A-14
'nama_pt' => strtoupper($arrayParam[0]) ); $this->db->where($whereField, $value); $this->db->update($this->tbl_name, $data); return $this->db->_error_message(); } /*function get_data_like($sortField){ $this->db->order_by($sortField,'asc'); $this->db->like('nama_pt', >post('txtSearch')); $query=$this->db->get($this->tbl_name); return $query->result(); }*/
$this->input-
function get_data_like($sortField, $param){ $this->db->order_by($sortField,'asc'); $this->db->like('username', $param); $query=$this->db->get($this->tbl_name); return $query->result(); } function delete_data($deleteField, $value){ $this->db->where($deleteField, $value); $this->db->delete($this->tbl_name); return $this->db->_error_message(); } } ?>
Table 0.11Pengkodean pada Controller 1
A-15
* So any other public methods not prefixed with an underscore will * map to /index.php/welcome/<method_name> * @see http://codeigniter.com/user_guide/general/urls.html */ function __construct(){ parent::__construct(); $this->load->helper(array('url','form')); } public function index() { $this->load->view('template/media'); } } /* End of file welcome.php */ /* Location: ./application/controllers/welcome.php */ * @see http://codeigniter.com/user_guide/general/urls.html */ var $template = 'template/media'; function __construct(){ parent::__construct(); $this->load->helper(array("html","form","url","text")); $this->load->model('mdl_ptkp'); $this->load->library("pagination"); $this->load->library('trackback'); error_reporting(E_ALL ^ (E_NOTICE | E_WARNING)); } public function index(){
A-16
$data['content'] = 'vw_home'; $data["tampil"] = $this->mdl_ptkp->get_dataMarital(); $data["tampil02"] = $this->mdl_ptkp>get_dataTanggungan(); $this->load->view($this->template,$data); } } /* End of file welcome.php */ /* Location: ./application/controllers/welcome.php */
Table 0.12 Pengkodean pada View <script type="text/javascript"> var pengBruto =0; var pengBersih =0; var totPemotongan =0; var pengBersihSetahun =0; var ptkp var pkp var pph21
=0; =0; =0;
var layer1 var layer2 var layer3 var layer4
=0; =0; =0; =0;
var npwp
="";
var gapok var tTranport var tMakan var tJabatan var bonus var tLain var thr var lain var bJabatan var tHaritua var pensiun var potLain
=0; =0; =0; =0; =0; =0; =0; =0; =0; =0; =0; =0;
function numberWithCommas(x) { return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, "."); }
A-17
function clearField(){ window.location.reload(true); } function checkNum(fieldId){ var temp = 0; temp = parseInt(document.getElementById(""&fieldId).value); if (temp="NaN"){ $("#"&fieldId).after('<span class="error"> Numeric only!'); document.getElementById(""&fieldId).value temp; } } function initial(){ layer1 layer2 layer3 layer4 npwp
=0; =0; =0; =0; ="";
npwp = document.getElementById("txt_npwp").value; gapok = parseInt(document.getElementById("txt_gapok").value); tTransport = parseInt(document.getElementById("txt_t_transport").value); tMakan = parseInt(document.getElementById("txt_t_makan").value); tJabatan = parseInt(document.getElementById("txt_t_jabatan").value); tLain = parseInt(document.getElementById("txt_t_lainnya").value); bonus = parseInt(document.getElementById("txt_bonus").value); thr = parseInt(document.getElementById("txt_thr").value); lain = parseInt(document.getElementById("txt_lain").value); pengBruto = gapok+tTransport+tMakan+tJabatan+tLain+bonus+thr+lain; bJabatan = parseInt(pengBruto)*5/100; if (bJabatan<=500000){
A-18
=
bJabatan=bJabatan; }else{ bJabatan=500000; } tHaritua = parseInt(document.getElementById("txt_t_haritua").value); pensiun = parseInt(document.getElementById("txt_pensiun").value); potLain = parseInt(document.getElementById("txt_pot_lain").value); totPemotongan = bJabatan+tHaritua+pensiun+potLain; pengBersih = pengBruto-totPemotongan; pengBersihSetahun = pengBersih*12; ptkp = parseInt(document.getElementById("slc_tanggungan").value)+parseInt(do cument.getElementById("slc_status_kawin").value) pkp = pengBersihSetahun-ptkp if (pkp>500000000){ layer1 = pkp*30/100; } if (pkp>250000000 & pkp <=500000000){ layer2 = pkp*25/100; } if (pkp>50000000 & pkp <=250000000){ layer3 = pkp*15/100; } if (pkp>=50000000){ layer4 = pkp*5/100; } pph21 = parseInt(layer1)+parseInt(layer2)+parseInt(layer3)+parseInt(layer4); pph21 = pph21/12; if (npwp==""){ pph21 = pph21*20/100; } document.getElementById("txt_b_jabatan").value numberWithCommas(Math.round(bJabatan)); document.getElementById("txt_peng_bruto").value numberWithCommas(pengBruto); document.getElementById("txt_peng_bersih").value numberWithCommas(pengBersih); document.getElementById("txt_ptkp").value numberWithCommas(ptkp);
A-19
= = = =
document.getElementById("txt_pph21").value numberWithCommas(Math.round(pph21)); //$("#txt_pot_lain").after('<span class="error"> Numeric only!')
=
} /* function simulate(){ var pengBruto=""; pengBruto = ; }/* jQuery(function($){ $("#txt_npwp").mask("999-99-9999"); });*/ <script> jQuery(function($){ $("#txt_npwp").mask("99 - 999 - 999 - 9 - 999 - 999"); $("#txt_tahun_pajak01").mask("9999"); $("#txt_tahun_pajak02").mask("9999"); }); $(document).ready(function () { //called when key is pressed in textbox $("#txt_gapok").keypress(function (e) { //if the letter is not digit then display error and don't type anything if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) { //display error message //$("#errmsg").html("Digits Only").show().fadeOut("slow"); return false; } }); });
id="txt_lain"
-->
Numeric only!'); document.getElementById("txt_gapok").value = gapok; } if (tTransport="NaN"){ $("#txt_t_transport").after('<span class="error"> Numeric only!'); document.getElementById("txt_t_transport").value = ""; } if (tMakan="NaN"){ $("#txt_t_makan").after('<span class="error"> Numeric only!'); document.getElementById("txt_t_makan").value = "";
} if (tJabatan="NaN"){ $("#txt_t_jabatan").after('<span class="error"> Numeric only!'); document.getElementById("txt_t_jabatan").value = ""; } if (tLain="NaN"){ $("#txt_t_lainnya").after('<span class="error"> Numeric only!'); document.getElementById("txt_t_lainnya").value = ""; } if (bonus="NaN"){ $("#txt_bonus").after('<span class="error"> Numeric only!'); document.getElementById("txt_bonus").value = ""; } if (thr="NaN"){ $("#txt_thr").after('<span class="error"> Numeric only!'); document.getElementById("txt_thr").value = ""; } if (lain="NaN"){ $("#txt_lain").after('<span class="error"> Numeric only!'); document.getElementById("txt_lain").value = ""; } else{ }*/ -->