bab iv aplikasi penggajian

85
BAB IV HASIL PENELITIAN DAN PEMBAHASAN 4.1 Profil Mitra Sejahtera Berawal PT. Bank Central Asia, Tbk di Samarinda membangun kesejahteraan bersama, maka pada tanggal 9 Januari 2008 dukungan penuh dari management berdirilah koperasi di lingkungan PT. Bank Central Asia, Tbk. Badan usaha ini bernama “Mitra Sejahtera” Koperasi Karyawan BCA yang berlokasi di alamat jalan Jendral Sudirman No. 30 Kota Samarinda Provinsi Kalimantan Timur. Koperasi Mitra Sejahtera dikelola oleh 33 orang karyawan, telah memiliki beberapa kegiatan usaha yang siap melaksanakan tugas kapanpun dan dimanapun dibutuhkan. Adapun usaha retail yaitu kegiatan usaha yang transaksinya banyak dilakukan antara koperasi dengan anggotanya, mulai dari barang kebutuhan sehari-hari, peralatan / perabot rumah tangga, kebutuhan ATK, makanan, air minum. 4.1.1 Visi dan Misi Mitra Sejahtera 34

Upload: azri-dewi

Post on 10-Nov-2015

52 views

Category:

Documents


3 download

DESCRIPTION

aplikasi penggajian dengan metode waterfall

TRANSCRIPT

35

BAB IVHASIL PENELITIAN DAN PEMBAHASAN4.1Profil Mitra SejahteraBerawal PT. Bank Central Asia, Tbk di Samarinda membangun kesejahteraan bersama, maka pada tanggal 9 Januari 2008 dukungan penuh dari management berdirilah koperasi di lingkungan PT. Bank Central Asia, Tbk. Badan usaha ini bernama Mitra Sejahtera Koperasi Karyawan BCA yang berlokasi di alamat jalan Jendral Sudirman No. 30 Kota Samarinda Provinsi Kalimantan Timur. Koperasi Mitra Sejahtera dikelola oleh 33 orang karyawan, telah memiliki beberapa kegiatan usaha yang siap melaksanakan tugas kapanpun dan dimanapun dibutuhkan.Adapun usaha retail yaitu kegiatan usaha yang transaksinya banyak dilakukan antara koperasi dengan anggotanya, mulai dari barang kebutuhan sehari-hari, peralatan / perabot rumah tangga, kebutuhan ATK, makanan, air minum.4.1.1Visi dan Misi Mitra SejahteraVisi yaitu menjadikan Mitra Sejahtera Koperasi Karyawan BCA dengan tujuan untuk mengembangkan kesejahteraan anggota pada khususnya dan kemajuan kerja pada umumnya, dalam rangka menggalang terlaksananya masyarakat adil dan makmur berdasarkan pancasila.Misi berawal dari azas kekeluargaan dan gotong royong serta sebuah keinginan yang tulus dari karyawan untuk dapat mewujudkan kesejahteraan bersama.

4.1.2Struktur OrganisasiStruktur organisasi adalah suatu gambaran yang memperlihatkan suatu susunan yang logis, tertib dan memperlihatkan hubungan-hubungan yang serasi. Setiap organisasi yang besar maupun yang kecil sudah pasti mempunyai struktur organisasi yang berbeda-beda antara organisasi satu dengan yang lainnya. Dengan memiliki struktur organisasi yang baik akan mudah dicapai apa yang menjadi salah satu tujuan dari organisasi tersebut. Karena dengan struktur organisasi segala tugas dari masing-masing bagian akan terkoordinir dengan baik pula.Pada gambar 4.1 merupakan struktur organisasi yang terdapat di Mitra Sejahtera Koperasi Karyawan BCA sebagai berikut :

Gambar 4.1 Struktur Organisasi Mitra Sejahtera Koperasi Karyawan BCA4.2Hasil Penelitian4.2.1Perancangan Sistem (System Enginering)1. Flow Of Document (FOD) sistem yang berjalanPada gambar 4.2 dapat dilihat bahwa sistem ini melibatkan 3 entitas yaitu Karyawan, Administrasi, dan Pimpinan. Alur dokumen yang berjalan pada aplikasi penggajian karyawan Mitra Sejahtera adalah sebagai berikut :1. Dimulai karyawan menyerahkan data dengan mengisi data karyawan, kemudian hasil data karyawan dikumpulkan untuk diserahkan kepada bagian administrasi.2. Bagian administrasi menerima data karyawan. Lalu administrasi memiliki data karyawan, data jabatan, dan data presensi. Administrasi melakukan pengisian data masing-masing sehingga menghasilkan daftar karyawan, daftar jabatan, daftar presensi.3. Untuk melakukan proses penggajian dibutuhkan data karyawan, data jabatan, data presensi, data penggajian, dan data PPh (Pajak Penghasilan).4. Dari Proses Penggajian menghasilkan daftar penggajian, daftar PPh (Pajak Penghasilan), dan slip gaji. Slip gaji akan diserahkan kepada karyawan.5. Pada proses laporan untuk daftar karyawan menghasilkan laporan data karyawan sedangkan daftar karyawan, daftar penggajian, dan daftar PPh menghasilkan laporan penggajian.6. Laporan data karyawan dan laporan data penggajian diserahkan kepada pimpinan.

Gambar 4.2 Flow of Document (FOD) sistem yang sedang berjalan2. Flow Of Document (FOD) sistem yang diusulkanPada gambar 4.3 dapat dilihat bahwa sistem ini melibatkan 3 entitas yaitu Karyawan, Administrasi, dan Pimpinan. Alur dokumen yang diusulkan pada aplikasi penggajian karyawan Mitra Sejahtera adalah sebagai berikut :1. Dimulai karyawan menyerahkan data dengan mengisi data karyawan, kemudian hasil data karyawan dikumpulkan untuk diserahkan kepada bagian administrasi.2. Bagian administrasi memiliki data karyawan, data jabatan, data presensi kemudian diproses masing-masing disimpan kedalam database.3. Dari proses penggajian didapatkan database karyawan, database jabatan, database presensi, data penggajian dan data PPh (Pajak Penghasilan) sehingga disimpan kedalam database penggajian dan database PPh.4. Dalam proses penggajian menghasilkan slip gaji yang akan diserahkan kepada karyawan.5. Pada proses laporan pada didapatkan database karyawan menghasilkan laporan data karyawan.6. Database karyawan, database penggajian dan database PPh diproses menghasilkan laporan data penggajian.7. Database presensi diproses menghasilkan laporan data presensi.8. Laporan data karyawan, lapoaran data penggajian, dan laporan data presensi akan diserahkan kepada pimpinan.

Gambar 4.3 Flow Of Document (FOD) yang diusulkan3. Context Diagram (CD)Pada gambar 4.4 aplikasi penggajian karyawan Mitra Sejahtera Koperasi Karyawan BCA dalam rancangan Context Diagram terdapat 3 entitas yang dibuat yaitu karyawan, adminitrasi, dan pimpinan. Karyawan memberikan data karyawan yang akan diserahkan untuk penggajian. Administrasi menginputkan data jabatan, data presensi, data penggajian dan data PPh (Pajak Penghasilan). Output yang diterima yaitu slip gaji yang yang diserahkan kepada karyawan sedangkan laporan data karyawan laporan data presensi dan laporan penggajian diserahkan kepada pimpinan.

Gambar 4.4 Context Diagram (CD) Aplikasi Penggajian

4. Data Flow Diagram (DFD) Level 0Pada gambar 4.5 sistem penggajian karyawan dijelaskan sebagai berikut :1. Proses isi data jabatan, entitas adminitrasi melakukan pendataan jabatan dan tersimpan dalam data store jabatan.2. Proses isi data presensi, entitas adminitrasi melakukan pendataan presensi yang sebelumnya mengambil data karyawan dari data store karyawan kemudian tersimpan kedalam data store presensi.3. Proses isi data karyawan, entitas karyawan melakukan pendataan karyawan beserta jabatan yang diambil dari data store jabatan dan disimpan kedalam data store karyawan.4. Proses isi data PPh , entitas adminitrasi melakukan pendataan PPh dari data store kemudian disimpan dalam data store PPh.

5. Proses isi data penggajian , proses ini mengambil data gaji dari entitas administrasi dan dari data store jabatan, presensi, dan karyawan kemudian disimpan dalam data store penggajian.6. Proses slip gaji, Proses ini diambil dari data store penggajian menghasilkan slip gaji yang akan di berikan pada karyawan.7. Proses laporan, data store karyawan, data store penggajian, data store presensi dan data store PPh menghasilkan laporan data karyawan, laporan data presensi, dan laporan penggajian yang akan diserahkan kepada pimpinan.

Gambar 4.5 DFD Level 0 Aplikasi Penggajian

5. Data Flow Diagram (DFD) Level 1Pada gambar 4.6 ini menjelaskan secara ringkas bahwa hasil dari sistem penggajian ini berupa slip gaji yang diberikan kepada karyawan kemudian proses laporan berupa laporan data karyawan laporan data presensi, dan laporan data penggajian diberikan kepada pimpinan.

Gambar 4.6 DFD Level 1 Aplikasi Penggajian6. Hierarchy Input Process Output (HIPO)

Gambar 4.7 Hierarchy Input Process Output (HIPO)

Pada gambar 4.7 aplikasi penggajian Mitra Sejahtera terdapat 5 proses yaitu pendataan jabatan, pendataan presensi, pendataan karyawan, proses penggajian, dan laporan. Dari proses penggajian maka dikeluarkan slip gaji. Dari Laporan dikeluarkan Laporan Data Karyawan Laporan Data Presensi, dan Laporan data penggajian berdasarkan data karyawan, data penggajian, dan data PPH (Pajak Penghasilan).4.2.2Analisa (Analysis)Analisa adalah tahapan awal yang harus di lakukan untuk mengidentifikasi berbagai permasalahan yang ada pada aplikasi serta kebutuhan informasi bagi pemakainya.1. Analisa DataAnalisa Data yaitu analisis mengenai data apa saja yang akan diproses, baik sebagai masukan maupun keluaran. Dalam menganalisa data, hal yang dibutuhkan yaitu beberapa data yang diperoleh dari Mitra Sejahtera Koperasi Karyawan BCA. Adapun data yang diperlukan antara lain :1)data jabatan, data presensi dan data karyawan sebagai inputan2)bentuk output berupa laporan daftar karyawan, laporan daftar gaji karyawan, laporan daftar presensi dan slip gaji karyawan.2. Analisa KebutuhanAnalisis Kebutuhan adalah analisa untuk mengetahui kebutuhan dalam membangun sebuah aplikasi penggajian karyawan, dari sini akan dilakukan analisa kebutuhan fungsional tujuannya untuk melihat fungsi atau kegunaan dari aplikasi yang akan dibuat. Kemudian dilakukan analisa baik dari segi perangkat lunak maupun perangkat keras, yang bertujuan untuk melihat spesikasi minimum dari software dan hardware yang digunakan setelah aplikasi dibuat.3. Analisa Teknologi1) Analisa Perangkat Keras (Hardware)Spesifikasi perangkat keras dalam implementasi pembuatan aplikasi penggajian karyawan meliputi :1) Processor Intel Core i3 CPU @ 2.30GHz2) Memory 2 GB3) Harddisk 500 GB2) Analisa Perangkat Lunak (Software)Spesifikasi perangkat lunak dalam implementasi pembuatan aplikasi penggajian karyawan meliputi :1) Sistem Operasi Windows 72) Microsoft Visual Basic 6.03) Microsoft Access 20074) Crystal Report 8.54.2.3Perancangan (Design)1. Struktur Database1. Nama Tabel: tbkaryawanPrimary Key: NIKKeterangan: Tabel yang digunakan untuk menyimpan data karyawan

Tabel 4.1 Tabel KaryawanNoNama FieldTypeUkuran FieldKeterangan

1NikText9Kode Karyawan

2NamaText50Nama Karyawan

3AlamatText50Alamat Karyawan

4TelpText13Telp Karyawan

5jenis_kelaminText12Jenis Kelamin Karyawan

6kd_jabatanText8Kode Jabatan

7nama_jabatanText25Nama Jabatan

8StatusText20Status Karyawan

9jml_anakNumberLong IntegerJumlah Anak

2. Nama Tabel: tbjabatanPrimary Key: kd_jabatanKeterangan: Tabel yang digunakan untuk menyimpan data jabatan

Tabel 4.2 Tabel JabatanNoNama FieldTypeUkuran FieldKeterangan

1kd_jabatanText8Kode Jabatan

2nama_jabatanText25Nama Jabatan

3GapokCurrency-Gaji Pokok

4tj_jabatanCurrency-Tunjangan Jabatan

3. Nama Tabel: tbpresensiForeign Key: NIKKeterangan: Tabel yang digunakan untuk menyimpan data presensi

Tabel 4.3 Tabel PresensiNoNama FieldTypeUkuran FieldKeterangan

1NikText9Kode Karyawan

2NamaText50Nama Karyawan

3periode_awalDate/Time-Periode Presensi Awal

4periode_akhirDate/Time-Periode Presensi Akhir

5jml_hari_kerjaText3Jumlah Hari Kerja

6Jml_jam_lemburText3Jumlah Jam Lembur

4. Tabel Nama: tb_gajiPrimary Key: no_slipKeterangan: Tabel yang digunakan untuk menyimpan data penggajianTabel 4.4 Tabel PenggajianNoNama FieldTypeUkuran FieldKeterangan

1no_slipText15No Slip Gaji

2Periode_awalDate/Time-Periode Gaji

3NikText9Kode Karyawan

4NamaText50Nama Karyawan

5nama_jabatanText25Nama Jabatan

6GapokCurrency-Gaji Pokok

7tj_mahalCurrency-Tunjangan Kemahalan

8tj_maktransCurrency-Tunjangan Makan & Transportasi

9uang_lemburCurrency-Uang Lembur

10uang_maklemburCurrency-Uang Makan Lembur

11tj_jabatanCurrency-Tunjangan Jabatan

12jml_pinjamanCurrency-Jumlah Pinjaman

13PphCurrency-PPH

14pot_tokoCurrency-Potongan Toko

15gaji_brutoCurrency-Gaji Bruto

16jml_potCurrency-Jumlah Potongan

17total_gajiCurrency-Total Gaji

5. Tabel Nama: tbdetailpphForeign Key: no_slipKeterangan: Tabel yang digunakan untuk meyimpan data PPhTabel 4.5 Tabel Detail PPHNoNama FieldTypeUkuran FieldKeterangan

1No_slipText15Nomor Slip Gaji

2JamsostekCurrency-Jamsostek

3wp_sendiriCurrency-Wajib Pajak Sendiri

4wp_nikahCurrency-Wajib Pajak Nikah

5wp_anakCurrency-Wajib Pajak Anak

6biaya_jabatanCurrency-Biaya Jabatan

7hasil_pajakCurrency-Penghasilan Kena Pajak

2.Form form Input1) Tampilan Menu UtamaPada gambar 4.8 tampilan menu utama di aplikasi penggajian karyawan Mitra Sejahtera terdapat beberapa menu yaitu menu file, menu transaksi, dan menu laporan. Pada menu file terdiri dari sub menu data karyawan, sub menu data jabatan, dan sub menu data presensi. Pada menu transaksi terdapat sub menu penggajian. Kemudian di menu laporan terdapat sub menu laporan data karyawan, sub menu laporan data penggajian, dan sub menu slip gaji.

Gambar 4.8 Tampilan Menu Utama2) Tampilan Input Data KaryawanPada gambar 4.9 adalah form input data karyawan dapat dilihat ada kolom input terdiri dari nik, nama, alamat, nomor telepon atau handphone, jenis kelamin, kode jabatan, nama jabatan, status, dan jumlah anak. Memiliki 4 tombol yaitu tombol input sekaligus tombol simpan, tombol hapus, tombol batal dan tombol keluar. Terdapat pencarian yang digunakan untuk mencari data berdasarkan nama karyawan. Ada tabel digunakan sebagai menampilkan daftar karyawan dari inputan-inputan karyawan yang telah disimpan. Dijelaskan bahwa untuk menginput data karyawan dimulai dari input NIK yang terdiri dari 9 digit yatitu 4 digit awal merupakan tahun masuk karyawan. Dilanjutkan 2 digit dari bulan masuk karyawan dan 3 digit dari urutan. Kemudian kolom lainnya berupa identitas karyawan yang harus diisi.

Gambar 4.9 Form Input Data Karyawan3) Tampilan Input JabatanPada gambar 4.10 adalah form Input data jabatan terdapat kode jabatan, nama jabatan, gaji pokok dan tunjangan jabatan. Memiliki 4 tombol yaitu tombol input sekaligus tombol simpan, tombol hapus, tombol batal dan tombol keluar. Terdapat pencarian yang digunakan untuk mencari data berdasarkan nama jabatan. Ada tabel yang digunakan sebagai menampilkan daftar jabatan dari inputan-inputan jabatan yang telah disimpan.Form ini dimulai dengan mengisi kode jabatan yaitu mengisi 4 digit yang diawali dengan huruf J kemudian 3 digit berupa urutan jabatan. Selanjutnya dengan mengisi nama jabatan, gaji pokok, dan tunjangan jabatan. Inputan-inputan ini yang akan nantinya digunakan pada form inputan data karyawan.

Gambar 4.10 Form Input Data Jabatan4) Tampilan Input Data PresensiPada form input data presensi memiliki tanggal presensi, nama, nik, jumlah hari kerja, dan jumlah jam lembur. Ada 4 tombol yang digunakan tombol input serta tombol simpan, tombol edit, tombol hapus dan tombol keluar. Ada pencarian yang digunakan berdasarkan mencari nama jabatan. Kemudian tabel dari hasil simpan inputan-inputan data presensi karyawan.

Gambar 4.11 Form Input Data Presensi3. Form Form Proses TransaksiDi dalam tampilan transaksi penggajian memiliki proses penggajian dijelaskan berdasarkan perincian gaji bruto dan perincian potongan sebagai berikut :1) Gaji pokok dan tunjangan jabatan pada transaksi penggajian dilakukan penginputan otomatis berdasarkan jabatan pada karyawan yang diambil daftar jabatan.2) Tunjangan makan dan transportasi terinput otomatis berdasarkan perhitungan:Tunjangan Makan dan Transportasi = jumlah hari kerja Rp 9090.3) Uang lembur berdasarkan perhitungan : Uang Lembur Keterangan : 173 = jumlah jam per bulan4) Uang makan lembur berdasarkan perhitungan :Uang Makan Lembur .Keterangan : 8 = jumlah jam lembur per hari5) Tunjangan kemahalan yaitu tambahan gaji sebagai bantuan untuk kenaikkan harga kebutuhan sehari-hari.6) Pada PPh 21 berdasarkan perhitungan dapat dilihat gambar 4.12 :Gaji bulanan = gaji bruto + BPJSBiaya Jabatan = 5% gaji per bulanPenghasilan Tidak Kena Pajak (PTKP) = WP sendiri + WP Nikah + WP AnakPKP Bulanan = (gaji bulanan biaya jabatan) - PTKP PPh 21 = 5% PKP bulanan7) Pinjaman jika karyawan terutang pada bulan tersebut.8) Potongan toko jika karyawan melakukan pembelian dengan pemotongan gaji pada bulan tersebut.9) Gaji bruto didapat dari keseluruhan yaitu : Gaji Bruto = gaji pokok + tunjangan jabatan + tunjangan makan dan transportasi + uang lembur + uang makan lembur + tunjangan kemahalan.10) Jumlah potongan didapat dari perhitungan :Jumlah Potongan = PPh 21 + pinjaman + potongan toko.11) Total berdasarkan perhitungan :Total gaji bruto jumlah potongan.Untuk pengoperasian pada form ini memiliki 4 tombol yaitu tombol input, tombol hapus, tombol batal dan tombol cetak. Ada pencarian yang berdasarkan mencari nomor slip gaji dan nama.

Gambar 4.12 Form Transaksi PenggajianUntuk awal menggunakan menekan tombol input dalam penggajian karyawan. Untuk nomor slip secara otomatis dengan muncul angka 10 digit berurutan. Nomor slip berdasarkan tanggal tahun dan bulan kemudian dengan urutan. Mengatur tanggal transaksi gaji kemudian mencari nik karyawan pada combobox yang didapatkan dari daftar karyawan maka akan muncul nama beserta nama jabatan. Hari kerja dan jam lembur didapat dari data presensi sehingga saat memilih nik karyawan maka muncul hari kerja dan jam lembur sesuai dengan bulan dan tahun.

Gambar 4.13 Form Detail PPh 21Untuk PPH 21 memiliki perhitungan tersendiri secara detail dengan mengenter textbox PPh 21 maka masuk ke form detail PPh 21 lihat pada gambar 4.13. Jika mencetak slip gaji maka dengan menekan tombol cetak maka muncul sebuah form dengan memilih nomor slip gaji atau NIK beserta periode atau tanggal gaji.

Gambar 4.14 Tampilan Form Cetak Slip Gaji di transaksi penggajianSelanjutnya keluar slip gaji karyawan yang telah ditentukan.

Gambar 4.15 Slip Gaji Karyawan4. Output / Laporan1) Tampilan Laporan Data Karyawanpada form laporan data karyawan berfungsi untuk mencetak data karyawan secara keseluruhan seperti gambar 4.16.

Gambar 4.16 Form Laporan Data KaryawanPada form tersebut memiliki 2 tombol yaitu tombol cetak berguna untuk mencetak laporan data karyawan dan tombol keluar untuk keluar dari form tersebut.Gambar 4.17 Laporan Data Karyawan2) Tampilan Laporan Data PenggajianPada gambar 4.18 merupakan form untuk mencetak data penggajian dengan memilih bulan penggajian atau keseluruhan penggajian berdasarkan tahun.

Gambar 4.18 Form Laporan Data PenggajianMaka dengan menekan tombol cetak sesuai dengan pilihan di form tersebut muncul laporan data penggajian. Seperti yang terlihat pada gambar 4.19. Gambar 4.19 Laporan Data Penggajian3) Laporan Data PresensiPada gambar 4.20 merupakan form untuk mencetak data presensi dengan memilih bulan presensi atau keseluruhan presensi berdasarkan tahun.

Gambar 4.20 Form Laporan Data PresensiMaka dengan menekan tombol cetak sesuai dengan pilihan di form tersebut muncul laporan data presensi. Seperti yang terlihat pada gambar 4.21.Gambar 4.21 Laporan Data Presensi

4.2.4Pengkodean (Coding)1. Menu UtamaPrivate Sub MNGAJI_Click()LAP_GAJI.ShowEnd Sub

Private Sub MNJABATAN_Click()JABATAN.ShowEnd Sub

Private Sub MNKELUAR_Click()EndEnd Sub

Private Sub MNLPEGAWAI_Click()LAP_KARYAWAN.ShowEnd SubPrivate Sub MNLPRESENSI_Click()LAP_PRESENSI.ShowEnd Sub

Private Sub MNPEGAWAI_Click() PEGAWAI.Show End Sub

Private Sub MNPEMINJAMAN_Click()PINJAMAN.ShowEnd Sub

Private Sub MNPENGGAJIAN_Click()GAJI.ShowEnd Sub

Private Sub MNPRESENSI_Click()PRESENSI.ShowEnd Sub

Private Sub Timer1_Timer()StatusBar1.Panels(5).Text = Format(Now, "HH:MM:SS")End Sub

2. Input Data KaryawanPrivate Sub CJABATAN_Click()Call BukaDBRSKARYAWAN.Open "Select * from tbjabatan where kd_jabatan='" & CJABATAN & "'", ConnIf RSKARYAWAN.EOF Then 'CJABATAN.SetFocusElseTNMJABATAN = RSKARYAWAN!nama_jabatanEnd IfEnd SubPrivate Sub CJABATAN_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then CSTATUS.SetFocusCall BukaDBRSKARYAWAN.Open "Select * from tbjabatan where kd_jabatan='" & CJABATAN & "'", ConnIf RSKARYAWAN.EOF Then CJABATAN.SetFocusElseTNMJABATAN = RSKARYAWAN!nama_jabatan End IfEnd SubPrivate Sub CJENIS_KELAMIN_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then CJABATAN.SetFocusEnd SubPrivate Sub CMDEDIT_Click()If CmdEdit.Caption = "&Edit" ThenCmdInput.Enabled = FalseCmdEdit.Caption = "&Simpan"CmdHapus.Enabled = FalseCmdKeluar.Caption = "&Batal" SiapIsi TCARI_NAMA.SetFocus Else If TNAMA = "" Or TALAMAT = "" Or TTELP = "" Or CJENIS_KELAMIN = "" Or CJABATAN = "" Or CSTATUS = "" Or TJML_ANAK = "" ThenMsgBox "Masih Ada Data Yang Kosong" Else Dim SQLEdit As String SQLEdit = "Update tbkaryawan Set nama= '" & TNAMA & "', alamat='" & TALAMAT & "',telp='" & TTELP & "',jenis_kelamin='" & CJENIS_KELAMIN & "',kd_jabatan='" & CJABATAN & "',nama_jabatan='" & TNMJABATAN & "',status='" & CSTATUS & "',jml_anak='" & TJML_ANAK & "' where nik='" & TNIP & "'" Conn.Execute SQLEdit Call KondisiAwal Form_Activate End IfEnd IfEnd SubPrivate Sub CmdHapus_Click()If CmdHapus.Caption = "&Hapus" ThenCmdInput.Enabled = FalseCmdEdit.Enabled = False CmdKeluar.Caption = "&Batal" KosongkanText SiapIsi TCARI_NAMA.SetFocus End If End SubPrivate Sub CMDINPUT_Click() If CmdInput.Caption = "&Input" Then CmdInput.Caption = "&Simpan" CmdEdit.Enabled = False CmdHapus.Enabled = False CmdKeluar.Caption = "&Batal" SiapIsi KosongkanText TNIP.SetFocus ElseIf TNIP = "" Or TNAMA = "" Or TALAMAT = "" Or TTELP = "" Or CJENIS_KELAMIN = "" Or CJABATAN = "" Or TNMJABATAN = "" Or CSTATUS = "" Or TJML_ANAK = "" ThenMsgBox "Data Belum Lengkap...!"ElseDim SQLTambah As StringSQLTambah = "Insert Into tbkaryawan (nik,nama,alamat,telp,jenis_kelamin,kd_jabatan,nama_jabatan,status,jml_anak) values ('" & TNIP & "','" & TNAMA & "','" & TALAMAT & "','" & TTELP & "','" & CJENIS_KELAMIN & "','" & CJABATAN & "','" & TNMJABATAN & "','" & CSTATUS & "','" & TJML_ANAK & "')"Conn.Execute SQLTambahCall KondisiAwalForm_ActivateEnd IfEnd IfEnd Sub

Private Sub CMDKELUAR_Click()Select Case CmdKeluar.CaptionCase "&Keluar"Unload MeCase "&Batal" TidakSiapIsiKondisiAwalEnd SelectEnd SubPrivate Sub CSTATUS_KeyPress(KeyAscii As Integer)KeyAscii = Asc(UCase(Chr(KeyAscii)))If KeyAscii = 13 Then TJML_ANAK.SetFocus If CSTATUS = "BELUM MENIKAH" Then TJML_ANAK.Text = "0"End SubPrivate Sub DataGrid1_KeyDown(KeyCode As Integer, Shift As Integer)Select Case KeyCodeCase vbKeyReturnIf CmdEdit.Caption = "&Simpan" ThenCall SelectAllVisible1TNAMA.SetFocusElseIf CmdHapus.Caption = "&Hapus" ThenCall SelectAllVisible2End IfCase vbKeyEscapeKondisiAwalCmdHapus.SetFocusEnd SelectEnd SubSub SelectAllVisible1()If TNIP DataGrid1.Columns(0) ThenTNIP = DataGrid1.Columns(0)Call CariDataTNIP.Enabled = FalseTNIP = DataGrid1.Columns(0)TNAMA = DataGrid1.Columns(1)TALAMAT = DataGrid1.Columns(2)TTELP = DataGrid1.Columns(3)CJENIS_KELAMIN = DataGrid1.Columns(4)CJABATAN = DataGrid1.Columns(5)TNMJABATAN = DataGrid1.Columns(6)CSTATUS = DataGrid1.Columns(7)TJML_ANAK = DataGrid1.Columns(8)TNAMA.SetFocusEnd IfEnd SubSub SelectAllVisible2()If TNIP DataGrid1.Columns(0) ThenTNIP = DataGrid1.Columns(0)Call CariDataTNIP.Enabled = FalseTNIP = DataGrid1.Columns(0)TNAMA = DataGrid1.Columns(1)TALAMAT = DataGrid1.Columns(2)TTELP = DataGrid1.Columns(3)CJENIS_KELAMIN = DataGrid1.Columns(4)CJABATAN = DataGrid1.Columns(5)TNMJABATAN = DataGrid1.Columns(6)CSTATUS = DataGrid1.Columns(7)TJML_ANAK = DataGrid1.Columns(8)Pesan = MsgBox("Yakin akan dihapus..?", vbYesNo, "Konfirmasi")If Pesan = vbYes ThenDim SQLHapus As StringSQLHapus = "Delete From tbkaryawan where nik= '" & TNIP & "'"Conn.Execute SQLHapusDataGrid1.RefreshKondisiAwalCmdHapus.SetFocusElseKondisiAwalCmdHapus.SetFocusEnd IfEnd IfEnd SubPrivate Sub Form_Activate()Call BukaDBAdodc1.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DatabaseGaji.mdb"Adodc1.RecordSource = "SELECT * FROM tbkaryawan ORDER BY nik"Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshEnd SubSub Form_Load()TNIP.MaxLength = 9TNAMA.MaxLength = 30TTELP.MaxLength = 13Call BukaDBRSKARYAWAN.Open "SELECT DISTINCT kd_jabatan FROM tbjabatan ORDER BY kd_jabatan", ConnRSKARYAWAN.MoveFirstDo While Not RSKARYAWAN.EOFCJABATAN.AddItem RSKARYAWAN!kd_jabatanRSKARYAWAN.MoveNextLoopCSTATUS.AddItem "MENIKAH"CSTATUS.AddItem "BELUM MENIKAH"CJENIS_KELAMIN.AddItem "LAKI-LAKI"CJENIS_KELAMIN.AddItem "PEREMPUAN"KondisiAwalEnd SubFunction CariData()Call BukaDBRSKARYAWAN.Open "Select * From tbkaryawan where nik='" & TNIP & "'", ConnEnd FunctionPrivate Sub TampilkanData()With RSKARYAWANIf Not RSKARYAWAN.EOF ThenTNAMA = RSKARYAWAN!namaTALAMAT = RSKARYAWAN!alamatTTELP = RSKARYAWAN!telpCJENIS_KELAMIN = RSKARYAWAN!jenis_kelaminCJABATAN = RSKARYAWAN!kd_jabatanTNMJABATAN = RSKARYAWAN!nama_jabatanCSTATUS = RSKARYAWAN!StatusTJML_ANAK = RSKARYAWAN!jml_anakEnd IfEnd WithEnd SubPrivate Sub KosongkanText()TNIP = ""TNAMA = ""TALAMAT = ""TTELP = ""CJENIS_KELAMIN = ""CJABATAN = ""TNMJABATAN = ""CSTATUS = ""TJML_ANAK = ""TCARI_NAMA = ""End SubPrivate Sub SiapIsi()TNIP.Enabled = TrueTNAMA.Enabled = TrueTALAMAT.Enabled = TrueTTELP.Enabled = TrueCJENIS_KELAMIN.Enabled = TrueCJABATAN.Enabled = TrueTNMJABATAN.Enabled = TrueCSTATUS.Enabled = TrueTJML_ANAK.Enabled = TrueTCARI_NAMA.Enabled = TrueEnd SubPrivate Sub TidakSiapIsi()TNIP.Enabled = FalseTNAMA.Enabled = FalseTALAMAT.Enabled = FalseTTELP.Enabled = FalseCJENIS_KELAMIN.Enabled = FalseCJABATAN.Enabled = FalseTNMJABATAN.Enabled = FalseCSTATUS.Enabled = FalseTJML_ANAK.Enabled = FalseEnd SubPrivate Sub KondisiAwal()KosongkanTextTidakSiapIsiCmdInput.Caption = "&Input"CmdEdit.Caption = "&Edit"CmdHapus.Caption = "&Hapus"CmdKeluar.Caption = "&Keluar"CmdInput.Enabled = TrueCmdEdit.Enabled = TrueCmdHapus.Enabled = TrueEnd SubPrivate Sub TALAMAT_KeyPress(KeyAscii As Integer)KeyAscii = Asc(UCase(Chr(KeyAscii)))If KeyAscii = 13 Then TTELP.SetFocusEnd SubPrivate Sub TCARI_NAMA_Change()Adodc1.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DatabaseGaji.mdb"Adodc1.RecordSource = "select * from tbkaryawan where nama like '%" & TCARI_NAMA & "%'"Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshEnd SubPrivate Sub TCARI_NAMA_KeyPress(KeyAscii As Integer)If KeyAscii = 13 Then DataGrid1.SetFocusEnd SubPrivate Sub TJML_ANAK_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If CmdInput.Enabled = True Then CmdInput.SetFocus ElseIf CmdEdit.Enabled = True Then CmdEdit.SetFocus End If End IfIf Not (KeyAscii >= Asc("0") And KeyAscii = Asc("0") And KeyAscii = Asc("0") And KeyAscii = Asc("0") And KeyAscii = Asc("0") And KeyAscii = Asc("0") And KeyAscii = Asc("0") And Keyascii = Asc("0") And KeyAscii = Asc("0") And KeyAscii