1 PENGEMBANGAN SISTEM INFORMASI KEPEGAWAIAN STUDI KASUS (KANTOR WALIKOTAMADYA JAKARTA TIMUR) Skripsi Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta Oleh : DAHLIA 102093026417 PROGRAM STUDI SISTEM INFORMASI FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 2008M/1429H
162
Embed
Pengembangan Sistem Informasi Kepegawaian Studi Kasus ... · PDF fileSTUDI KASUS (KANTOR WALIKOTAMADYA JAKARTA TIMUR) Skripsi ... Gambar 4.7. DFD Level 1 Sistem Yang Diusulkan 71 Gambar
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1
PENGEMBANGAN SISTEM INFORMASI KEPEGAWAIAN
STUDI KASUS
(KANTOR WALIKOTAMADYA JAKARTA TIMUR)
Skripsi
Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer
Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh :
DAHLIA
102093026417
PROGRAM STUDI SISTEM INFORMASI
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2008M/1429H
2
PENGEMBANGAN SISTEM INFORMASI KEPEGAWAIAN
STUDI KASUS
(KANTOR WALIKOTAMADYA JAKARTA TIMUR)
DAHLIA
102093026417
Skripsi
Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer
Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
PROGRAM STUDI SISTEM INFORMASI
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
3
2008M/1429H
PENGEMBANGAN SISTEM INFORMASI KEPEGAWAIAN
STUDI KASUS
(KANTOR WALIKOTAMADYA JAKARTA TIMUR)
SKRIPSI
Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer
Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh :
Dahlia
102093026417
Menyetujui,
Pembimbing I Pembimbing II
Nur Aeni Hidayah, MMSI Zainuddin Bey Fananie, MSc
NIP : 150 368 820
Mengetahui,
Ketua Program Studi Sistem Informasi
Ir. M. Qomarul Huda, M.Kom
NIP: 150 326 908
4
PENGESAHAN UJIAN
Skripsi yang berjudul ”Pengembangan Sistem Informasi Kepegawaian Studi Kasus
Kantor Walikotamadya Jakarta Timur” telah diuji dan dinyatakan lulus dalam sidang
munaqosah Fakultas Sains dan Teknologi, UIN Syarif Hidayatullah pada hari Kamis,
dan skripsi ini telah diterima sebagai salah satu syarat untuk memperoleh gelar sarjana
Strata Satu (S1) Program Studi Sistem Informasi.
Jakarta, 4 Desember 2008
Menyetujui,
Penguji I Penguji II
(Ir. M. Qomarul Huda, M.Kom) (A’ang Subiyakto, M.Kom)
NIP : 150 326 908
Pembimbing I Pembimbing II
(Nur Aeni Hidayah, MMSI) (Zainuddin Bey Fananie, MSc)
NIP :150 368 820
Mengetahui,
Dekan Fakultas Ketua Prodi SI
(DR.Syopiansyah Jaya Putra, M.Sis) (Ir. M. Qomarul Huda, M.Kom)
NIP : 150 317 956 NIP : 150 326 908
5
PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-BENAR
HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI
SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU
LEMBAGA MANAPUN.
Jakarta, Desember 2008
Dahlia 102093026417
6
ABSTRAK
Dahlia (102093026417), Pengembangan Sistem Informasi Kepegawaian Studi Kasus
Walikotamadya Jakarta Timur, (Di bawah bimbingan Bpk. Muji Haryadi, S.Hut, MT
(Alm) dan Bpk. Zainuddin Bey Fananie, MSc) Jumlah Halaman: 120, Jumlah
Referensi:10 sumber.
Penggunaan teknologi informasi pada setiap organisasi milik pemerintah
maupun swasta sudah sangat diperlukan saat ini. Penggunaan teknologi informasi
tersebut memberikan dampak positif yang besar bagi peningkatan produktivitas para
pekerja. Pada saat ini pengolahan informasi mengenai kepegawaian pada
Walikotamadya Jakarta Timur masih dilakukan secara semi komputer, artinya data-data
yang didapat melalui form-form isi lalu diinput menggunakan program aplikasi
pengolah data seperti Ms. Word dan Ms. Excel yang hanya bertujuan untuk
dokumentasi tanpa adanya sebuah proses lebih lanjut mengenai data yang ada. Dalam
pengembangan ini menggunakan metode SDLC melalui tahapa-tahapan seperti survei,
analisis, desain, pembuatan, implementasi dan pemeliharaan. SDLC yang peneliti
lakukan berupa analisa masalah, perancangan sistem usulan, input-output, basis data,
implementasi hingga pemeliharaan sistem. Dengan adanya Sistem Informasi
Kepegawaian ini akan mempermudah pelayanan dan pengelolaan data pegawai, data
daftar urut kepangkatan, penilaian pegawai, gaji, absensi, pelatihan jabatan, unit kerja,
pendidikan, mutasi pegawai, pensiun dan kenaikan pangkat pegawai menjadi lebih
cepat, akurat sesuai kebutuhan..
Kata Kunci : Pengembangan, Sistem, Kepegawaian, Walikotamadya, JakTim.`
7
KATA PENGANTAR
Assalamu ‘Alaikum wr. wb.
Puji syukur alhamdulillah kita panjatkan kehadirat Allah SWT, atas rahmat,
taufik, hidayah dan karunia-Nya yang telah diberikan, sehingga penulis dapat
menyelesaikan penulisan skripsi ini. Shalawat dan salam tidak lupa kita curahkan
kepada nabi besar kita Muhammad SAW yang telah membawa umat manusia dari
jaman jahiliyyah hingga jaman yang modern ini.
Penyelesaian skripsi ini disusun atas kerja sama yang baik berbagai pihak.
Untuk itu pada kesempatan ini, penulis mengucapkan banyak terima kasih dengan
setulus hati kepada Bapak (Alm) Muji Haryadi S Hut, MT selaku dosen pembimbing I
beserta Ibu Nur Aeni Hidayah, MMSI selaku pengganti dosen pembimbing I, dan Bapak
Zainuddin Bey Fananie, MSc selaku dosen pembimbing II yang dengan penuh
kesabaran membimbing penulis menyelesaikan skripsi ini. Ungkapan terimakasih juga
penulis sampaikan kepada:
1. Bapak DR. Ir. Sopiansyah Jaya Putra, MSis selaku Dekan Fakultas Sains dan
Teknologi.
2. Bapak Ir. M, Qomarul Huda, M.Kom, selaku Ketua Program Studi Sistem
Informasi atas dukungannya.
3. Para dosen Program Studi Sistem Informasi UIN Syarif Hidayatullah Jakarta,
yang telah mentransfer ilmu pengetahuannya dengan penuh tanggung jawab
mengajarkan berbagai pengetahuan yang bermanfaat bagi penulis, serta staff TU
Akademik Program Studi Sistem Informasi Fakultas Sains dan Teknologi.
8
4. Bapak Moh. Sultoni beserta seluruh staff kepegawaian pada kantor
Walikotamadya Jakarta Timur atas bantuan informasi yang dibutuhkan penulis
dan kerja samanya.
5. Kedua orang tua penulis, adik, paman beserta keluarga yang telah memberikan
dukungan dengan sepenuhnya baik meteril maupun moril.
6. Sahabat-sahabatku Nofiyanti, Ajeng Syamsiah Hajjar, Wahyu yang telah banyak
membantu, mendukung dan mendo’akan. Serta teman-temanku semua dari
Sistem Informasi angkatan 2002 maupun teman-teman lainnya, penulis ucapkan
terimakasih banyak atas dukungannya.
Penulis menyadari bahwa karya ini belum sempurna, untuk itu penulis
mengharapkan saran dan kritik pembaca dan pihak lain dalam penelitian
pengembangan selanjutnya yang lebih baik.
Akhir kata, penulis ucapkan terima kasih bagi pihak-pihak yang telah banyak
membantu, baik atas semua dukungan yang telah diberikan maupun atas segala
respon positif dari para pembaca dalam penulisan skripsi ini.
Wassalamu ‘alkaikum wr.wb.
Jakarta, Desember 2008
Penulis
Dahlia
9
DAFTAR ISI
HALAMAN JUDUL .............................................................................................. i
4.4.12 Perancangan Struktur Menu Tampilan .............................97
4.5 Tahap Implementasi Sistem .........................................................99
4.6 Tahap Pemeliharaan ....................................................................100
BAB V PENUTUP
5.1. Kesimpulan ……………………………………………………101
5.2. Saran …………………………………………………………..101
DAFTAR PUSTAKA ……………………………………………………….. 103
LAMPIRAN -LAMPIRAN………………………………………………….. 104
26
DAFTAR GAMBAR
Gambar 2.1. Unary Relationship …………………………………………..15
Gambar 2.2. Binary Relationship …………………………………….........16
Gambar 2.3. Ternary Relationship ………………………………………...16
Gambar 2.5. Kotak Dialog ………………………………………………...20
Gambar 2.6. Lingkungan Visual Basic 6.0……………………………….. 20
Gambar 3.1. Tahapan Siklus Pengembangan Sistem ……………………...25
Gambar 4.1. Gambar Kodya Jakarta Timur ………………….……………31
Gambar 4.2 Struktur Organisasi .................................................................34
Gambar 4.3a. Flowchart Sistem Kepegawaian ………………………..........47
Gambar 4.3b. Flowchart Mutasi ……………………………………………48
Gambar 4.3c. Flowchart Pensiun …………………………………………...49
Gambar 4.3d. Flowchart Kenaikan Pangkat……………………………….. 50
Gambar 4.4. Diagram Konteks Sistem Yang Berjalan …………………...55
Gambar 4.5. DFD Level 1 Sistem Yang Berjalan ………………………...59
Gambar 4.6. Diagram Konteks Sistem Yang Diusulkan ………………….68
Gambar 4.7. DFD Level 1 Sistem Yang Diusulkan ………………………71
Gambar 4.8. DFD Level 2 Proses 1.0 Sistem Yang Diusulkan …………..74
Gambar 4.9. DFD Level 2 Proses 2.0 Sistem Yang Diusulkan …………..76
Gambar 4.10. DFD Level 2 Proses 3.0 Sistem Yang Diusulkan …………..78
Gambar 4.11. DFD Level 2 Proses 4.0 Sistem Yang Diusulkan …………..79
Gambar 4.12. DFD Level 2 Proses 5.0 Sistem Yang Diusulkan …………..80
Gambar 4.13. ERD Mutasi Yang Belum Dinormalisasikan ………………..84
Gambar 4.14. ERD Kenaikan Pangkat Yang Belum Dinormalisasikan ……85
Gambar 4.15. ERD Pensiun Yang Belum Dinormalisasikan ……………….85
Gambar 4.16. Bentuk Tidak Normal Mutasi (Unnormalized) ………….......86
Gambar 4.17. Bentuk Normal Pertama (1NF) Mutasi .............……………..86
Gambar 4.18. Bentuk Normal Kedua (2NF) Mutasi ....……………………..87
Gambar 4.19. ERD Mutasi Yang Telah Dinormalisasikan .………………...87
27
Gambar 4.20. Bentuk Tidak Normal Kenaikan Pangkat …………………...88
Gambar 4.21. Bentuk Normal Pertama Kenaikan Pangkat ………………..88
Gambar 4.22. Bentuk Normal Kedua Kenaikan Pangkat ………………….88
Gambar 4.23. ERD Kenaikan Pangkat Yang Telah Dinormalisasikan ……89
Gambar 4.24. Bentuk Tidak Normal Pensiun ……………………………...89
Gambar 4.25. Bentuk Normal Pertama Pensiun ………….………………..90
Gambar 4.26. Bentuk Normal Kedua Pensiun …………..………………….90
Gambar 4.27. ERD Pensiun Yang Telah Dinormalisasikan …………..……90
Gambar 4.28. ERD Sistem Kepegawaian ......................................................91
Gambar 4.29. ERD Kedalam Database .........................................................92
Gambar 4.30. Perancangan Menu Keseluruhan .............................................97
Gambar 4.31. Perancangan Menu Utama.......................................................98
Gambar 4.32. Perancangan Menu Master ......................................................98
Gambar 4.33. Perancangan Menu Transaksi .................................................98
Gambar 4.34. Perancangan Menu Laporan....................................................98
Gambar 4.35. Perancangan Menu Tools .......................................................99
28
DAFTAR TABEL
Tabel 2.1. Simbol Flowchart …………………………………..……………12
Tabel 2.2. Komponen DFD …………………………………………..……..14
Tabel 2.3. Komponen ERD ……………………………..…………………..15
Tabel 2.4. Simbol Kamus Data ………………………………..……………19
Tabel 4.1. Wilayah Jakarta Timur ………………………………..…………32
Tabel 4.2. Gaji pokok Gol I & II ……………………………………………39
Tabel 4.3. Gaji pokok Gol III& IV ………………………………………….40
29
DAFTAR LAMPIRAN
Lampiran A : Wawancara ………………………………..…………………….104
Lampiran B : Lampiran Perancangan Input Dan Output ………………………107
Lampiran C : Lampiran Kode Program ………………………………………..111
30
BAB I
PENDAHULUAN
1.1. Latar Belakang Masalah
Perkembangan teknologi informasi yang mencolok selama dasawarsa ini ditandai
dengan semakin pentingnya informasi dan pengolahan data di dalam banyak aspek
kehidupan manusia. Seiring dengan lajunya gerak pembangunan, organisasi publik
maupun swasta semakin banyak yang mampu memanfaatkan teknologi informasi baru
yang dapat menunjang efektifitas, produktivitas dan efisiensi kerja.
Penyelenggaraan pemerintahan yang baik dan peningkatkan pelayanan publik
yang efektif dan efisien membutuhkan pola kebijakan dan perencanaan strategis.
Perencanaan strategis dalam konteks pemanfaatan teknologi informasi yang bersifat
menyeluruh, terpadu serta terkoordinasi dari tingkat Propinsi sampai pada tingkat
Kabupaten bahkan tingkat kecamatan dan kelurahan terkait dengan aspek-aspek
managemen kelembagaan, perangkat keras, perangkat lunak, sumber daya manusia, dan
jaringan komunikasi data.
Dalam rangka mewujudkan hal tersebut, pada Pemerintah Kotamadya Jakarta
Timur menerapkan teknologi informasi khususnya pada sistem kepegawaian dalam
menunjang managemen Pemerintahan pada tingkat Kotamadya terutama untuk
memberikan Informasi data kepegawaian yang diperlukan untuk memudahkan
pengorganisasian data yang dipergunakan dalam menentukan suatu mekanisme Sistem
Informasi (SI) Kepegawaian.
31
Hal ini sangat berguna dalam mempercepat akses ke suatu sistem informasi dan
membuat kinerja suatu organisasi lebih baik, semakin banyaknya staf pegawai yang
berada pada suatu departemen di perlukan suatu sistem yang handal untuk menangani
proses input dan output data. Namun pengolahan data kepegawaian ini masih dilakukan
secara semi terkomputerisasi dan masih banyak mengalami kendala antara lain :
1. Data kepegawaian yang kurang terkontrol dan data informasi pegawai yang
terbatas.
2. Sulitnya menghimpun data pegawai yang dibutuhkan, seperti data daftar
urut kepangkatan pegawai, data penilaian pegawai, data mutasi pegawai,
data pensiun pegawai, data kenaikan pangkat, penggajian pegawai, dan data
absensi pegawai.
3. Pembuatan laporan data pegawai yang ada dan laporan perubahan jumlah
pegawai apabila dibutuhkan.
Untuk mengatasi masalah tersebut diperlukan adanya sistem infomasi yang dapat
mengelola data-data kepegawaian yang ada sehingga menghasilkan informasi yang
cepat dan akurat.
1.2. Perumusan Masalah
Berdasarkan uraian latar belakang diatas, maka dapat disimpulkan masalahnya
adalah :
1. Bagaimana merancang suatu sistem informasi kepegawaian yang dapat
mempermudah dan mempercepat pengelolaan data kepegawaian yang terdiri
32
atas : data pegawai, data daftar urut kepangkatan, data penilaian pagawai,
data absensi, data gaji, data pendidikan, data unit kerja, data pelatihan
jabatan, data mutasi, data pensiun, dan data kenaikan pangkat pegawai.
2. Bagaimana hardware dan software serta sumber daya manusia yang ada
dapat dimanfaatkan dalam mendukung sistem informasi kepegawaian
tersebut.
1.3. Batasan Masalah
Penelitian ini dilaksanakan pada Walikotamadya Jakarta Timur
khususnya pada bagian kepegawaian dan mengingat luasnya permasalahan
Sistem Informasi Kepegawaian Walikota Jakarta Timur, maka penelitian ini
dibatasi pada proses yang berkait dengan pendataan data pegawai, daftar urut
kepangkatan, penilaian pagawai, absensi, gaji, pendidikan, unit kerja, pelatihan
jabatan, mutasi, pensiun, dan kenaikan pangkat pegawai, serta laporan
rekapitulasi pegawai baik pada awal bulan maupun akhir bulan.
1.4. Tujuan Penelitian
Tujuan dari penelitian Sistem Informasi Kepegawaian pada Walikotamadya
Jakarta Timur dapat dirumuskan sebagai berikut:
1. Merancang dan membuat kerangka sistem untuk mengelola data-data
pegawai agar dapat digunakan setiap saat untuk pengelolaan data pegawai di
bagian kepegawaian.
33
2. Memberikan kemudahan bagi staff kepegawaian untuk mengelola data
kepegawaian yang ada dan dapat memberikan informasi yang dibutuhkan
dengan cepat dan akurat.
1.5. Manfaat Penulisan
Dengan diadakannya kegiatan penelitian mengenai Sistem Informasi
Kepegawaian pada Walikotamadya Jakarta Timur, adapun manfaat penulisan dari
penelitian ini:
1. Bagi Penulis
a. Sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer
Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif
Hidayatullah Jakarta.
b. Dapat mengimplementasikan ilmu yang didapat dari bangku kuliah
untuk kepentingan penulis dan lingkungan sekitar.
2. Bagi Pihak Walikotamadya Jakarta Timur
Dengan mengembangkan pembuatan aplikasi yang dilakukan, dapat
membantu kebutuhan akan informasi kepegawaian, yang cepat dalam
menampilkan data yang akurat sesuai dengan keadaan yang sesungguhnya.
3. Bagi Perkembangan Ilmu Pengetahuan
Diharapkan dapat membantu perkembangan implementasi sistem aplikasi
dengan pengolahan basisdata bagi instansi pemerintahan.
34
1.6. Sistematika Penulisan
Skripsi ini terdiri dari V (Lima) Bab yang diuraikan dalam berbagai sub bab.
Adapun sistematika penulisan sebagai berikut:
BAB I PENDAHULUAN
Penulis mengemukakan latar belakang masalah, perumusan masalah,
batasan masalah atau ruang lingkup masalah, tujuan penelitian, manfaat
penulisan dan sistematika penulisan sebagai gambaran secara umum tiap-
tiap bab.
BAB II LANDASAN TEORI
Pada bab ini penulis membahas teori tentang konsep dasar sistem informasi
(pengertian sistem, karakteristik sistem, pengertian informasi, dan
pengertian sistem informasi), pengertian sistem kepegawaian, metode
pengembangan sistem, alat bantu pengembangan sistem, dan pengenalan
dasar aplikasi yang digunakan dalam pengembangan sistem.
BAB III METODOLOGI PENELITIAN
Penulis berusaha mengemukakan subyek penelitian, tempat dan waktu
penelitian, ruang lingkup penelitian, materi penelitian, alat penelitian,
prosedur penelitian, metode-metode pengembangan sistem yang berkaitan
dalam perancangan sistem.
BAB IV ANALISIS DAN PERANCANGAN SISTEM
Penulis mendeskripsikan gambaran umum Kotamadya Jakarta Timur,
analisa masalah, perancangan sistem (DFD, ERD, dan Normalisasi),
struktur file database yang digunakan, perancangan menu, perancangan
35
input dan perancangan output, pengembangan dan persiapan implementasi
sistem yang telah dibuat, serta pelaksanaan implementasi sistem.
BAB V PENUTUP
Dalam bab terakhir penulisan skripsi ini, penulis memberikan kesimpulan dan saran
guna peningkatan dan kemajuan bagi Kotamadya Jakarta Timur dimasa yang akan
datang sebagai penutup.
36
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Sistem Informasi
2.1.1. Pengertian Sistem
Sistem adalah sebuah tatanan (keterpaduan) yang terdiri atas sejumlah
komponen fungsional (dengan satuan fungsi atau tugas khusus) yang saling
berhubungan dan secara bersama-sama bertujuan untuk memenuhi suatu proses
atau pekerjaan tertentu (Ir. Fathansyah, 1999 : 9).
Menurut McLeod (2001 : 11), mendefinisikan “Sistem adalah sekelompok
elemen atau unsur yang terintegrasi dengan maksud yang sama untuk mencapai
suatu tujuan”. Dari dua pengertian di atas maka, penulis dapat menyimpulkan
bahwa pengertian sistem adalah suatu kumpulan elemen-elemen yang saling
berinteraksi dan bekerja sama untuk mencapai suatu tujuan tertentu.
2.1.2. Karakteristik Sistem
Dalam buku Sutabri (2004 : 12-13), suatu sistem memiliki karakteristik dan
sifat sifat tertentu. Adapun karakteristik dari sistem yang dimaksud adalah sebagai
berikut : Komponen Sistem (Components), Batasan Sistem (Boundary),
Lingkungan Luar Sistem (Environtment), Penghubung Sistem (Interface),
Masukan Sistem (Input), Keluaran Sistem (Output), Pengolah Sistem (Proses),
Sasaran Sistem (Objective), Tujuan (Goal).
37
2.1.3. Pengertian Informasi
Di dalam pengembangan sistem informasi harus memiliki dasar dari
informasi tersebut. Maka, dalam penulisan skripsi ini penulis memasukan
pengarang yang bernama Sutabri (2004 : 17), mendefinisikan informasi
merupakan proses lebih lanjut dari data yang sudah memiliki nilai tambah. Dalam
buku Prabowo, dkk (2006 : 19), dituliskan bahwa informasi merupakan data yang
diolah menjadi suatu bentuk yang penting bagi penerima dan mempunyai nilai
nyata bagi pengambilan keputusan saat ini atau akan datang. Dari dua pengertian
diatas penulis dapat menyimpulkan bahwa pengertian Informasi adalah data yang
telah diolah menjadi bentuk yang lebih berguna dan dapat memberikan nilai bagi
yang menerimanya.
2.1.4. Pengertian Sistem Informasi
Dalam buku Sutabri (2005 : 42), mendefinisikan sistem informasi sebagai
berikut: “Sistem informasi adalah suatu sistem didalam suatu organisasi yang
mempertemukan kebutuhan pengolahan transaksi harian yang mendukung fungsi
operasi organisasi yang bersifat manajerial dengan kegiatan strategi dari suatu
organisasi untuk dapat menyediakan kepada pihak luar tertentu dengan laporan-
laporan yang diperlukan”. Dalam buku Prabowo, dkk (2006 : 18), mendefinisikan
sistem informasi adalah suatu sistem yang menerima sumber data sebagai input
(masukan) dan mengolahnya menjadi produk informasi sebagai output (keluaran).
Dari dua definisi diatas penulis dapat menyimpulkan bahwa pengertian
Sistem Informasi adalah sekumpulan elemen-elemen yang saling bekerjasama
38
dalam mengolah data untuk menghasilkan atau menyediakan Informasi guna
mencapai tujuan.
2.1.5. Pengertian Sistem Kepegawaian
”Sistem Informasi kepegawaian atau yang disebut juga dengan Human
Resource Information System adalah suatu suatu sistem yang terdiri dari software
dan hardware yang dirancang untuk menyimpan dan memproses semua informasi
pegawai.” dalam buku Marimin, dkk (2006:50).
2.2. Metode Pengembangan Sistem
Dalam buku Sutabri (2004:56), mendefinisikan siklus hidup pengembangan sistem
(Sistem Development Life Cycle / SDLC) merupakan suatu bentuk yang digunakan
untuk menggambarkan tahapan utama dan langkah-langkah pada tahapan tersebut
dalam proses pengembangan sistem.
Pendekatan daur hidup sistem adalah sebuah alat manajemen yang digunakan
untuk merencanakan dan mengontrol kegiatan pengembangan sistem. Secara garis
besar ada enam tahap yang biasa dijadikan metodologi dalam melaksanakan
pengembangan sistem (Sutabri, 2004 : 60-63) yaitu : tahap survei sistem, tahap analisis
sistem, tahap desain sistem, tahap pembuatan sistem, tahap implementasi sistem dan
tahap pemeliharaan sistem. Dalam mengembangkan sistem informasi kepegawaian ini
menerapkan enam tahap yang ada pada siklus hidup pengembangan sistem (Sistem
Depelopment Life Cycle).
39
1. Tahap Survei Sistem
Tahap ini bertujuan untuk mengidentifikasi dan menentukan masalah,
menetapkan ruang lingkup sistem dan rencana untuk study kelayakan guna
memberikan gambaran mengenai bagaimana memperbaiki masalah yang
ada terebut.
2. Tahap Analisis Sistem
Analisis sistem bertujuan untuk mengidentifikasikan kebutuhan sistem yang
berjalan secara lebih rinci dan lengkap sehingga dapat dimengerti dengan
baik oleh pemakai.
3. Tahap Desain Sistem
Tahap desain sistem bertujuan untuk memberikan informasi tambahan yang
diperlukan oleh programer dan manajemen operasi. Adapun tujuan dari
perancangan sistem secara umum adalah memberikan gambaran secara
umum kepada user tentang sistem yang baru. Sedangkan tujuan
perancangan sistem lebih rinci lagi adalah untuk memenuhi kebutuhan
pemakai sistem serta memberikan gambaran yang jelas dan rancang bangun
yang lengkap kepada pemrogram komputer dan ahli-ahli teknik lainnya
yang terlibat.
4. Tahap Pembuatan Sistem
Berdasarkan desain yang telah dibuat, maka selanjutnya pada tahap ini akan
dibuat konstruksi atau development sistem. Dimana pada tahap ini
dilakukan pembuatan source code dari sistem yang dibangun. Dari semua
tahapan yang ada, tahap konstruksi inilah yang paling banyak melibatkan
40
sumber daya terbesar, terutama dalam hal SDM, biaya dan waktu akhir
dari tahap konstruksi biasanya berupa uji coba sistem.
5. Tahap Implementasi Sistem
Tahap ini merupakan prosedur yang harus dilakukan untuk menyelesaikan
desain sistem yang ada dalam dokumen rancangan sistem yang telah
disetujui, serta menguji, menginstall dan memulai penggunaan sistem yang
baru. Pada tahap ini kegiatan dititik beratkan pada penelitian apakah
konsep sistem yang telah disusun dapat dilaksanakan dengan benar atau
tidak.
6. Tahap Pemeliharaan Sistem
Tahap ini merupakan tahapan dengan aktivitas, dimana harus ada personel
atau divisi perusahaan yang dapat melakukan perubahan atau modifikasi
terhadap sistem informasi sejalan dengan perubahan kebutuhan bisnis
teramat sangat dinamis, untuk melihat apakah sistem masih sesuai dengan
kebutuhan user. Tahap ini bertujuan untuk mengatasi permasalahan-
permasalahan yang terjadi pada sistem, menyediakan dukungan yang
berkelanjutan dan perawatan terhadap sistem.
2.3. Alat Bantu Pengembangan Sistem
2.3.1. Bagan Alir (FlowChart)
Bagan alir atau flowchart merupakan alat berbentuk grafik yang dapat
digunakan untuk menunjukan urutan-urutan kegiatan dari sistem informasi
berbasis komputer (Sutabri, 2004: 161). Masukan sistem Informasi meliputi
41
pemasukan data secara manual, proses computer dan proses output. Proses
keluaran tersebut didistribusikan ke pemakai untuk membuat keputusan atau
menggambarkan sistem Informasi.
Tabel 2.1. Simbol Flowchart (Sumber : Sutabri, 2004: 161)
NO. SIMBOL URAIAN
1.
Simbol dokumen menunjukkan input dan output baik
untuk proses manual, mekanik atau computer.
2.
Simbol manual menunjukkan pekerjaan yang dilakukan
secara manual.
3.
Simbol simpanan offline
file urut angka
file urut huruf
File urut tanggal
Simbol simpanan offline adalah file non komputer yang diarsip berdasarkan urut angka (numerical), urut huruf (alphabetical), urut tanggal (chronological). File nonkomputer yang diarsip berdasarkan urut angka (numerical).
File nonkomputer yang diarsip berdasarkan urut huruf (alphabetical). File nonkomputer yang diarsip berdasarkan urut tanggal (chronological).
4.
Simbol proses berupa kotak menunjukkan kegiatan atau proses yang dilakukan secara komputerisasi.
5.
Simbol database menunjukkan input / output menggunakan database.
6.
Simbol garis alir menunjukkan arus dari proses.
N
A
C
42
7.
Simbol decision menunjukkan pengambilan keputusan
yang digunakan untuk suatu seleksi kondisi didalam sistem.
8.
Simbol penghubung menunjukkan penghubung ke halaman yang sama atau halaman lain.
2.3.2. Data Flow Diagram (DFD)
DFD sering digunakan untuk menggambarkan suatu sistem yang telah ada
atau sistem baru yang akan dikembangkan. Dalam buku Prabowo (2006 : 110),
mendefinisikan “Data Flow Diagram adalah salah satu alat analisis dan teknik
pemodel terbaik untuk menggambarkan proses dan kebutuhan fungsional dari suatu
sistem”.
Untuk mempermudah dalam pembacaan DFD, maka penggambarannya
disusun dalam beberapa tingkatan, yaitu tingkatan dari yang paling tertinggi yang
mempengaruhi sistem tersebut, biasanya dikenal dengan nama diagram konteks atau
diagram level 0 yang menggambarkan proses utama sistem, sampai dengan tingkat
yang paling rendah yang tidak dapat diuraikan lagi.
Dalam buku Sutabri (2004:163), Data Flow Diagram memiliki empat
komponen, yaitu : external entityr, proses, data store dan data flow.
2000/XP/2003, Penerbit PT. Elex Media Komputindo, Kelompok Gramedia.
Jakarta.
Prabowo, Haryo, Tanjung, Hendri, dan Marimin. 2006. SIM Sumber Daya Manusia,
Penerbit PT. Grasindo. Jakarta.
133
LAMPIRAN A
WAWANCARA I
Responden : Bpk. M. Sultoni Tgl : 8 September2006
Penanya : Dahlia Subjek : Bagian Kepegawaian
Walikotamadya Jakarta Timur
Tujuan : Mengetahui latar belakang & lingkungan kerja.
Tindak lanjut : Mengetahui sistem kepegawaian yang sedang berjalan.
Poin utama wawancara :
1. Bisakah anda ceritakan Profil, Tugas dan Fungsi Utama?
2. Bisakah anda ceritakan tentang Struktur Organisasi?
3. Apa tugas dan tanggung jawab dari setiap divisi yang ada?
4. Apakah Walikota sudah menggunakan sistem terkomputerisasi pada setiap
kerjanya?
5. Sebatas manasajakah lingkup sistem terkomputerisasi?
6. Perangkat keras dan perangkat lunak apakah yang digunakan?
7. Apakah sudah menggunakan sistem terkomputerisasi pada sistem
kepegawaiannya?
134
WAWANCARA II
Responden : Bpk. M. Sultoni Tgl :13 Oktober 2006
Penanya : Dahlia Subjek : Bagian Kepegawaian
Walikotamadya Jakarta Timur
Tujuan : Mengetahui prosedur sistem kepegawaian yang berjalan.
Tindak lanjut : Mengetahui alur sistem kepegawaian yang berjalan.
Poin utama :
1. Bagaimana sub bagian kepegawaian memproses data kepegawaian khususnya?
2. Bagaimana sub bagian memproses data yang didapat?
3. Salinan laporan apa saja yang diterima atau dihasilkan dari sub bagian
kepegawaian?
4. Pada sistem yang berjalan ini adakah masalah yang dihadapi?
5. Peraturan apa saja yang berlaku berkenaan dengan kenaikan pangkat, mutasi dan
pensiun?
6. Bagaimana langkah atau cara mengurus kenaikan pangkat, mutasi atau pensiun?
135
WAWANCARA III
Responden : Bpk. M. Sultoni Tgl : 24 November 2006
Penanya : Dahlia Subjek : Bagian Kepegawaian
Walikotamadya Jakarta Timur
Tujuan : Mengetahui keinginan responden terhadap sistem yang diusulkan.
Poin utama wawancara :
1. Apa yang anda harapkan jika ada sistem pengolahan data pada sub bagian
kepegawaian yang bersangkutan dengan masalah yang sering dihadapi?
2. Sistem seperti apa yang anda harapkan?
136
LAMPIRAN B
1. Layar Utama Login
2. Layar Menu Utama
3. Layar Menu Master
137
4. Layar Form Pangkat Dan Golongan
5. Layar Menu Transaksi
6. Layar Form Data Pegawai
138
7. Layar Menu Laporan
8. Layar Form Cetak Laporan Kenaikan Pangkat
9. Layar Menu Tools
139
10. Layar Form Ganti Password
11. Layar Form Tambah/Hapus User
12. Layar Laporan Data Pegawai
140
LAMPIRAN C
1. Form Password
Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim i As Single Private Sub cmdcancel_Click() End End Sub
Private Sub cmdOK_Click() If Len(txtuser.Text) = 0 Then MsgBox "User ID Masih Kosong", vbCritical, "User ID" txtuser.SetFocus Exit Sub End If If Len(txtpas.Text) = 0 Then MsgBox "Password Masih Kosong", vbCritical, "Password"
txtpas.SetFocus Exit Sub End If cekpassword End Sub Private Sub Form_Activate() txtuser.Text = "" txtpas.Text = "" txtuser.SetFocus End Sub Private Sub Form_Load() Set conn = New ADODB.Connection conn.Open "kepegawaian" End Sub Private Sub Form_Unload(Cancel As Integer) conn.Close
Set conn = Nothing End Sub Private Sub txtpas_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then cmdok.SetFocus End If End Sub
Sub cekpassword() Dim sql As String sql = " SELECT * FROM user " & _ " WHERE userid='" & UCase(txtuser.Text) & "'" Set rs = conn.Execute(sql) If rs.EOF Then MsgBox "User Id Tidak Terdaftar", vbOKOnly + vbExclamation, "User ID" txtuser.Text = "" txtuser.SetFocus Else If UCase(rs.Fields("password")) <> txtpas.Text Then MsgBox "Password Anda Salah", vbOKOnly + vbExclamation, "Password" i = i + 1
141
If i = 3 Then MsgBox "Makanya ingetin password dong! Panggil administrator gih...!!!", vbCritical, "ERROR ON PASSWORD" End End If txtpas.Text = "" txtpas.SetFocus Else
frmutama.mnuganti.Enabled = True frmutama.mnulogoff.Enabled = True If rs.Fields("mnanggota") = 1 Then frmutama.mnuanggota.Enabled = True Else frmutama.mnuanggota.Enabled = False End If If rs.Fields("mntransaksi") = 1 Then
frmutama.mnutransaksi.Enabled = True Else frmutama.mnutransaksi.Enabled = False End If If rs.Fields("mnsukarela") = 1 Then frmutama.mnusetoran.Enabled = True Else frmutama.mnusetoran.Enabled = False
End If If rs.Fields("mnsimpanan") = 1 Then frmutama.mnusimpanan.Enabled = True Else frmutama.mnusimpanan.Enabled = False End If If rs.Fields("mnpinjaman") = 1 Then frmutama.mnupinjaman.Enabled = True
Else frmutama.mnupinjaman.Enabled = False End If If rs.Fields("mnangsuran") = 1 Then frmutama.mnuangsuran.Enabled = True Else frmutama.mnuangsuran.Enabled = False End If
If rs.Fields("mnlapangsuran") = 1 Then frmutama.mnulapangsuran.Enabled = True Else frmutama.mnulapangsuran.Enabled = False End If If rs.Fields("mnlappinjaman") = 1 Then frmutama.mnulappinjaman.Enabled = True Else
frmutama.mnulappinjaman.Enabled = False End If If rs.Fields("mnlapsimpanan") = 1 Then frmutama.mnulapsimpanan.Enabled = True Else frmutama.mnulapsimpanan.Enabled = False End If If rs.Fields("mnlaprekap") = 1 Then frmutama.mnurekap.Enabled = True Else
142
frmutama.mnurekap.Enabled = False End If If rs.Fields("mnlaprekap2") = 1 Then frmutama.mnurekapbulanan.Enabled = True Else frmutama.mnurekapbulanan.Enabled = False End If If rs.Fields("mntambah") = 1 Then
frmutama.mnutambah.Enabled = True Else frmutama.mnutambah.Enabled = False End If If rs.Fields("mnlapangsuranperiode") = 1 Then \\frmutama.mnulapangsuranperiode.Enabled = True ' Else frmutama.mnulapangsuranperiode.Enabled = False
' End If If rs.Fields("admin") = 1 Then frmutama.mnutambah.Visible = True Else frmutama.mnutambah.Visible = False End If pasword.Visible = False frmutama.Visible = True
frmutama.Enabled = True frmutama.SetFocus End If End If rs.Close End Sub Private Sub txtuser_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then txtpas.SetFocus End If End Sub
2. Form Menu Utama
Private Sub mnuabsensi_Click()
frmtrxabsensi.Show 1 End Sub Private Sub mnuduk_Click() frmtrxduk.Show 1 End Sub Private Sub mnugaji_Click() frmgaji.Show 1 End Sub
Private Sub mnuganti_Click() frmganti.Show 1 End Sub Private Sub mnukeluar_Click() pasword.Show 1 End Sub Private Sub mnulapmutasi_Click() frmlapmutasi.Show 1
'With frmutama.CrystalReport1
143
' .ReportFileName = App.Path & "\report\rptmutasi.rpt" ' .Formulas(1) = "tglawal='" & Format(TextTglAwal, "dd/mm/yyyy") & "'" ' .Formulas(2) = "tglakhir='" & Format(TextTglAkhir, "dd/mm/yyyy") & "'" ' .RetrieveDataFiles ' .Action = 1 'End With End Sub Private Sub mnulapnaikpangkat_Click()
frmlapnaikpangkat.Show 1 'With frmutama.CrystalReport1 ' .ReportFileName = App.Path & "\report\rptnaikpangkat.rpt" ' .RetrieveDataFiles ' .Action = 1 'End With End Sub Private Sub mnulappenilaian_Click()
frmlappenilaian.Show 1 'With frmutama.CrystalReport1 ' .ReportFileName = App.Path & "\report\rptpenilaian.rpt" ' .RetrieveDataFiles ' .Action = 1 'End With End Sub Private Sub mnulappensiun_Click()
frmlappensiun.Show 1 'With frmutama.CrystalReport1 ' .ReportFileName = App.Path & "\report\rptpensiun.rpt" ' .RetrieveDataFiles ' .Action = 1 'End With End Sub Private Sub mnulaptolak_Click()
frmlaptolaknaikpangkat.Show 1 'With frmutama.CrystalReport1 ' .ReportFileName = App.Path & "\report\rpttolaknaikpangkat.rpt" ' .RetrieveDataFiles ' .Action = 1 'End With End Sub Private Sub mnulatjab_Click()
frmlatjabatan.Show 1 End Sub Private Sub mnumutasi_Click() frmtrxmutasi.Show 1 End Sub Private Sub mnunaikpangkat_Click() frmtrxtolaknaikpangkat.Show 1 End Sub
Private Sub mnupangkat_Click() frmpangkat.Show 1 End Sub Private Sub mnupendidikan_Click() frmpendidikan.Show 1 End Sub Private Sub mnupenilaian_Click() frmtrxpenilaian.Show 1 End Sub Private Sub mnupensiun_Click()
144
frmtrxtolaksetujupensiun.Show 1 End Sub Private Sub mnutambah_Click() frmuser.Show 1 End Sub Private Sub mnutrxpegawai_Click() frmtrxpegawai.Show 1 End Sub
Private Sub mnutrxpendidikan_Click() frmtrxpendidikan.Show 1 End Sub Private Sub mnuunitkerja_Click() frmunitkerja.Show 1 End Sub
3. Form Pangkat dan Golongan
Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim kosong, ada As String Dim idgaji_temp As String Private Sub cmdbatal_Click() bersih End Sub Private Sub cmdhapus_Click()
Dim sql As String On Error GoTo err cari If ada = "0" Then MsgBox "Data Tidak Ada!", vbCritical, "Error" Exit Sub End If sql = "DELETE FROM tblgolongan WHERE idgolongan='" & txtidpangkat.Text & "'"
conn.Execute (sql) bersih Adodc1.Refresh Exit Sub err: MsgBox "Data Sudah Masuk Kedalam Tabel Transaksi", vbCritical, "Fatal Error" Exit Sub End Sub
Private Sub cmdkeluar_Click() Unload Me End Sub Private Sub cmdrefresh_Click() Adodc1.Refresh End Sub Private Sub cmdtambah_Click() cekkosong
cari If kosong = "1" Then Exit Sub End If Dim sql As String If ada = "1" Then MsgBox "Data Sudah Ada!", vbCritical, "Error" Exit Sub
cekkosong cari If kosong = "1" Then Exit Sub End If If ada = "0" Then MsgBox "Data Tidak Ada!", vbCritical, "Error" Exit Sub
End If Dim sql As String sql = "UPDATE tblgolongan SET " & _ "idgaji='" & txtidgaji.Text & "'," & _ "tmt='" & txttmt.Value & "'," & _ "masakerja='" & txtmasa.Text & "'," & _ "catatanmutasi='" & txtcatatan.Text & "'," & _ "keterangan='" & txtketerangan.Text & "'" & _
"WHERE idgolongan='" & txtidpangkat.Text & "'" conn.Execute (sql) bersih Adodc1.Refresh End Sub Private Sub Form_Load() Set conn = New ADODB.Connection conn.Open "kepegawaian"
loadidgaji End Sub Private Sub Form_Unload(Cancel As Integer) conn.Close Set conn = Nothing End Sub Private Sub txtgaji_KeyPress(KeyAscii As Integer) If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbKeyBack) Then
Beep KeyAscii = 0 End If End Sub Private Sub txtcatatan_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Private Sub txtidgaji_Change()
idgaji_temp = Mid(txtidgaji.Text, 1, 5) End Sub Private Sub txtidgaji_Click() loadidgaji idgaji_temp = Mid(txtidgaji.Text, 1, 5) End Sub Private Sub txtidgaji_KeyPress(KeyAscii As Integer) 'If KeyAscii = 13 Then 'Dim sql As String '
146
'sql = "SELECT * FROM tblgaji WHERE idgaji='" & txtidgaji.Text & "'" 'Set rs = conn.Execute(sql) ' If Not rs.EOF Then ' txtgaji = rs.Fields("gaji") ' txtlokasi = rs.Fields("lokasikerja") ' Else ' siapisi ' End If
'End If End Sub Sub siapisi() txtgaji.Text = "" txtlokasi.Text = "" txtgaji.SetFocus End Sub Private Sub txtlokasi_KeyPress(KeyAscii As Integer)
KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Sub bersih() txtidpangkat.Text = "" txtidgaji.Text = "" txtmasa.Text = "" txtcatatan.Text = "" txtketerangan.Text = ""
txtidgaji.SetFocus End Sub Sub cekkosong() If Len(txtidpangkat.Text) = 0 Then MsgBox "Pangkat Harus Diisi!", vbCritical + vbExclamation, "Error" txtidpangkat.SetFocus kosong = "1" Exit Sub
End If If Len(txtidgaji.Text) = 0 Then MsgBox "ID Gaji Harus Diisi!", vbCritical + vbExclamation, "Error" txtidgaji.SetFocus kosong = "1" Exit Sub End If 'If Len(txttmt.Text) = 0 Then
'MsgBox "TMT Harus Diisi!", vbCritical + vbExclamation, "Error" 'txttmt.SetFocus 'kosong = "1" 'Exit Sub 'End If If Len(txtmasa.Text) = 0 Then MsgBox "Masa Kerja Harus Diisi!", vbCritical + vbExclamation, "Error" txtmasa.SetFocus
kosong = "1" Exit Sub End If If Len(txtcatatan.Text) = 0 Then MsgBox "Catatan Mutasi Harus Diisi!", vbCritical + vbExclamation, "Error" txtcatatan.SetFocus kosong = "1" Exit Sub End If If Len(txtketerangan.Text) = 0 Then
147
MsgBox "Keterangan Harus Diisi!", vbCritical + vbExclamation, "Error" txtketerangan.SetFocus kosong = "1" Exit Sub End If End Sub Sub loadidgaji() Dim sql, idgaji(10) As String
Dim gaji(10) As Currency Dim i As Integer i = 1 sql = "SELECT * FROM tblgaji ORDER BY idgaji" Set rs = conn.Execute(sql) Do While Not rs.EOF idgaji(i) = rs.Fields("idgaji") gaji(i) = rs.Fields("gaji")
txtidgaji.AddItem idgaji(i) & " - " & gaji(i) i = i + 1 rs.MoveNext Loop End Sub Private Sub txtidpangkat_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then
Dim sql As String sql = "SELECT * FROM tblgolongan WHERE idgolongan='" & txtidpangkat.Text & "'" Set rs = conn.Execute(sql) If Not rs.EOF Then txtidgaji = rs.Fields("idgaji") txttmt.Value = rs.Fields("tmt") txtmasa = rs.Fields("masakerja") txtcatatan = rs.Fields("catatanmutasi")
txtketerangan = rs.Fields("keterangan") Else siapisi End If End If End Sub Private Sub txtketerangan_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub Private Sub txtmasa_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Sub cari() Dim sql As String sql = "SELECT * FROM tblgolongan WHERE idgolongan='" & txtidpangkat.Text & "'" Set rs = conn.Execute(sql)
If Not rs.EOF Then ada = "1" Else ada = "0" End If End Sub
4. Form Data Pegawai
Dim conn As New ADODB.Connection
148
Dim rs As New ADODB.Recordset Dim kosong, ada As String Dim idgol_temp, idunit_temp, idlat_temp, pendidikan As String Private Sub cmdbatal_Click() bersih End Sub Private Sub cmdhapus_Click() Dim sql As String
cari If ada = "0" Then MsgBox "Data Tidak Ada!", vbCritical, "Error" Exit Sub End If sql = "DELETE FROM tblpegawai WHERE nip='" & txtnip.Text & "'" conn.Execute (sql) bersih
Adodc1.Refresh End Sub Private Sub cmdkeluar_Click() Unload Me End Sub Private Sub cmdprint_Click() If Len(txtnip.Text) = 0 Then MsgBox "NIP Harus Diisi!", vbCritical + vbExclamation, "Error"
txtnip.SetFocus 'kosong = "1" Exit Sub End If With CrystalReport1 .ReportFileName = App.Path & "\report\pegawai.rpt" .SelectionFormula = "{tblpegawai.nip} ='" & txtnip & "'" .RetrieveDataFiles
.Action = 1 End With End Sub Private Sub cmdrefresh_Click() Adodc1.Refresh End Sub Private Sub cmdtambah_Click() cekkosong
cari If kosong = "1" Then Exit Sub End If Dim sql As String If ada = "1" Then MsgBox "Data Sudah Ada!", vbCritical, "Error" Exit Sub
End Sub Private Sub Form_Load() Set conn = New ADODB.Connection conn.Open "kepegawaian" 'loadidgaji With txtkelamin .AddItem "Laki-Laki" .AddItem "Wanita"
End With With txtagama .AddItem "Budha" .AddItem "Hindu" .AddItem "Islam" .AddItem "Katolik" .AddItem "Protestan" .AddItem "Lainnya"
End With loadidgol loadunit loadidlatjab loadidpend End Sub Private Sub Form_Unload(Cancel As Integer) conn.Close Set conn = Nothing End Sub
150
Private Sub txtalamat_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Private Sub txteselon_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Private Sub txtidgaji_Click() idgaji_temp = Mid(txtidgaji.Text, 1, 5)
End Sub Private Sub txtidgaji_KeyPress(KeyAscii As Integer) 'If KeyAscii = 13 Then 'Dim sql As String 'sql = "SELECT * FROM tblgaji WHERE idgaji='" & txtidgaji.Text & "'" 'Set rs = conn.Execute(sql) ' If Not rs.EOF Then ' txtgaji = rs.Fields("gaji")
' txtlokasi = rs.Fields("lokasikerja") ' Else ' siapisi ' End If 'End If End Sub Sub siapisi() txtnama.Text = ""
End Sub Private Sub txtlokasi_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Sub bersih() txtnip.Text = "" txtnama.Text = "" txttempat.Text = ""
Sub cekkosong() If Len(txtnip.Text) = 0 Then MsgBox "NIP Harus Diisi!", vbCritical + vbExclamation, "Error" txtnip.SetFocus kosong = "1" Exit Sub End If 'If Len(txtidgaji.Text) = 0 Then 'MsgBox "ID Gaji Harus Diisi!", vbCritical + vbExclamation, "Error" 'txtidgaji.SetFocus
151
'kosong = "1" 'Exit Sub 'End If If Len(txtnama.Text) = 0 Then MsgBox "Nama Harus Diisi!", vbCritical + vbExclamation, "Error" txtnama.SetFocus kosong = "1" Exit Sub
End If If Len(txttempat.Text) = 0 Then MsgBox "Tempat Lahir Harus Diisi!", vbCritical + vbExclamation, "Error" txttempat.SetFocus kosong = "1" Exit Sub End If If Len(txtrumah.Text) = 0 Then
MsgBox "Alamat Rumah Harus Diisi!", vbCritical + vbExclamation, "Error" txtrumah.SetFocus kosong = "1" Exit Sub End If If Len(txttelprumah.Text) = 0 Then MsgBox "Telepon Rumah Harus Diisi!", vbCritical + vbExclamation, "Error" txttelprumah.SetFocus
kosong = "1" Exit Sub End If If Len(txtjabatan.Text) = 0 Then MsgBox "Jabatan Harus Diisi!", vbCritical + vbExclamation, "Error" txtjabatan.SetFocus kosong = "1" Exit Sub
End If If Len(txteselon.Text) = 0 Then MsgBox "Eselon Harus Diisi!", vbCritical + vbExclamation, "Error" txteselon.SetFocus kosong = "1" Exit Sub End If If Len(txtkantor.Text) = 0 Then
MsgBox "Alamat Kantor Harus Diisi!", vbCritical + vbExclamation, "Error" txtkantor.SetFocus kosong = "1" Exit Sub End If If Len(txttelpkantor.Text) = 0 Then MsgBox "Telepon Kantor Harus Diisi!", vbCritical + vbExclamation, "Error" txttelpkantor.SetFocus
kosong = "1" Exit Sub End If If txtkelamin.Text = "-Pilih Kelamin-" Then MsgBox "Jenis Kelamin Harus Diisi!", vbCritical + vbExclamation, "Error" txtkelamin.SetFocus kosong = "1" Exit Sub End If If txtagama.Text = "-Pilih Agama-" Then
152
MsgBox "Agama Harus Diisi!", vbCritical + vbExclamation, "Error" txtagama.SetFocus kosong = "1" Exit Sub End If If txtidgol.Text = "-Pilih ID Golongan-" Then MsgBox "ID Golongan Harus Diisi!", vbCritical + vbExclamation, "Error" txtidgol.SetFocus
kosong = "1" Exit Sub End If If txtidunit.Text = "-Pilih ID Unit-" Then MsgBox "ID Unit Harus Diisi!", vbCritical + vbExclamation, "Error" txtidunit.SetFocus kosong = "1" Exit Sub
End If If txtidlatjab.Text = "-Pilih ID Latjab-" Then MsgBox "ID Latihan Jabatan Harus Diisi!", vbCritical + vbExclamation, "Error" txtidlatjab.SetFocus kosong = "1" Exit Sub End If End Sub
Private Sub txtidgol_Change() idgol_temp = Mid(txtidgol, 1, 5) End Sub Private Sub txtidgol_Click() idgol_temp = Mid(txtidgol, 1, 5) End Sub Private Sub txtidlatjab_Change() idlat_temp = Mid(txtidlatjab, 1, 5)
End Sub Private Sub txtidlatjab_Click() idlat_temp = Mid(txtidlatjab, 1, 5) End Sub Private Sub txtidpend_Change() pendidikan = Mid(txtidpend, 1, 5) End Sub Private Sub txtidpend_Click()
pendidikan = Mid(txtidpend, 1, 5) End Sub Private Sub txtidunit_Change() idunit_temp = Mid(txtidunit, 1, 5) End Sub Private Sub txtidunit_Click() idunit_temp = Mid(txtidunit, 1, 5) End Sub
Private Sub txtjabatan_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Private Sub txtkantor_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Private Sub txtnama_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub 'Sub loadidgaji()
153
'Dim sql, idgaji(10) As String 'Dim gaji(10) As Currency 'Dim i As Integer 'i = 1 'sql = "SELECT * FROM tblgaji ORDER BY idgaji" 'Set rs = conn.Execute(sql) 'Do While Not rs.EOF 'idgaji(i) = rs.Fields("idgaji")
'gaji(i) = rs.Fields("gaji") 'txtidgaji.AddItem idgaji(i) & " - " & gaji(i) 'i = i + 1 'rs.MoveNext 'Loop 'End Sub Private Sub txtnip_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then sql = "SELECT * FROM tblpegawai WHERE nip='" & txtnip.Text & "'" Set rs = conn.Execute(sql) If Not rs.EOF Then txtnama = rs.Fields("nama") txttempat = rs.Fields("tempat_lahir") DTPicker1 = rs.Fields("tgl_lahir") txtkelamin = rs.Fields("kelamin")
txtidunit = rs.Fields("idunit") txtidlatjab = rs.Fields("idlatjabatan") txtidpend = rs.Fields("pendidikan_terakhir") Else siapisi End If End If End Sub
Private Sub txttelepon_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Private Sub txtnmkantor_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Private Sub txtnmunit_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub Sub cari() Dim sql As String sql = "SELECT * FROM tblpegawai WHERE nip='" & txtnip.Text & "'" Set rs = conn.Execute(sql) If Not rs.EOF Then ada = "1" Else ada = "0" End If
154
End Sub Sub loadidgol() Dim sql, idgol(100) As String Dim idgaji(100) As String Dim i As Integer i = 1 sql = "SELECT * FROM tblgolongan ORDER BY idgolongan" Set rs = conn.Execute(sql)
Do While Not rs.EOF idgol(i) = rs.Fields("idgolongan") idgaji(i) = rs.Fields("idgaji") txtidgol.AddItem idgol(i) & " - " & idgaji(i) i = i + 1 rs.MoveNext Loop End Sub
Sub loadunit() Dim sql, idunit(100) As String Dim namaunit(100) As String Dim i As Integer i = 1 sql = "SELECT * FROM tblunitkerja ORDER BY idunit" Set rs = conn.Execute(sql) Do While Not rs.EOF
idunit(i) = rs.Fields("idunit") namaunit(i) = rs.Fields("namaunit") txtidunit.AddItem idunit(i) & " - " & namaunit(i) i = i + 1 rs.MoveNext Loop End Sub Sub loadidlatjab()
Dim sql, idlat(100) As String Dim latihan(100) As String Dim i As Integer i = 1 sql = "SELECT * FROM tbllatjabatan ORDER BY idlatjabatan" Set rs = conn.Execute(sql) Do While Not rs.EOF idlat(i) = rs.Fields("idlatjabatan")
latihan(i) = rs.Fields("latihan") txtidlatjab.AddItem idlat(i) & " - " & latihan(i) i = i + 1 rs.MoveNext Loop End Sub Private Sub txtrumah_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub Private Sub txttelpkantor_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Private Sub txttempat_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) End Sub Sub loadidpend() Dim sql, idpend(100) As String Dim nama(100) As String
155
Dim i As Integer i = 1 sql = "SELECT * FROM tblpendidikan ORDER BY idpendidikan" Set rs = conn.Execute(sql) Do While Not rs.EOF idpend(i) = rs.Fields("idpendidikan") nama(i) = rs.Fields("jenis") txtidpend.AddItem idpend(i) & " - " & nama(i)
i = i + 1 rs.MoveNext Loop End Sub
5. Form Cetak Laporan Kenaikan Pangkat
Private Sub BtnExit_Click() Unload Me
End Sub Private Sub BtnPrint_Click() If TextTglAwal > TextTglAkhir Then MsgBox "masukan tanggal awal lebih kecil dari tanggal akhir", vbInformation, "Info" TextTglAwal.SetFocus ElseIf TextTglAwal = "" Then MsgBox "masukan tanggal ", vbInformation, "Info" TextTglAwal.SetFocus
.RetrieveDataFiles .Action = 1 End With End If End Sub Private Sub Form_Activate() Me.Top = 0 Me.Left = 0
TextTglAwal = Date TextTglAkhir = Date End Sub
6. Form Ganti Password
Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset Private Sub cmdkeluar_Click()
X = MsgBox("Yakin Ingin Keluar?", vbYesNo + vbExclamation, "Keluar") If X = vbYes Then End Unload Me Else txtid.SetFocus End If
156
End Sub Private Sub cmdkembali_Click() Unload Me End Sub Private Sub cmdubah_Click() Dim sql As String sql = " SELECT * FROM user " & _ " WHERE userid='" & Trim(txtid.Text) & "'"
Set rs = conn.Execute(sql) If rs.EOF Then MsgBox "User ID Tidak Terdaftar", vbInformation, "User ID" txtid.SetFocus Else If rs.Fields("password") <> Trim(txtpasswordlama.Text) Then MsgBox "Password anda salah", vbOKOnly + vbExclamation, "Salah password" txtpasswordlama.SetFocus
txtpasswordlama.Text = "" Else If txtpassword.Text <> txtkonfirmasi.Text Then MsgBox "Password Baru Anda Tidak Sesuai", vbInformation, "Password" txtpassword.SetFocus Else sql = " UPDATE user SET " & _ " password='" & txtpassword.Text & "'" &
End If End If End If End Sub Private Sub Form_Activate() txtid.Text = "" txtpasswordlama.Text = "" txtpassword.Text = ""
txtkonfirmasi = "" txtid.SetFocus End Sub Private Sub Form_Load() Set conn = New ADODB.Connection conn.Open "kepegawaian" End Sub Private Sub Form_Unload(Cancel As Integer)
conn.Close Set conn = Nothing End Sub Private Sub txtid_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then If Len(txtid.Text) = 0 Then MsgBox "User ID Masih Kosong", vbInformation, "User ID" Else txtpasswordlama.SetFocus
157
End If End If End Sub Private Sub txtkonfirmasi_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then If Len(txtkonfirmasi.Text) = 0 Then MsgBox "Password Tidak Boleh Kosong", vbInformation, "Password"
Else cmdubah.SetFocus End If End If End Sub Private Sub txtpassword_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then
If Len(txtpassword.Text) = 0 Then MsgBox "Password Tidak Boleh Kosong", vbInformation, "Password" Else txtkonfirmasi.SetFocus End If End If End Sub Private Sub txtpasswordlama_KeyPress(KeyAscii As Integer)
KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then If Len(txtpasswordlama.Text) = 0 Then MsgBox "Password Masih Kosong", vbInformation, "Password" Else txtpassword.SetFocus End If End If
End Sub
7. Form User
Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset Private Sub cbokelas_Change() chkalllaporan.Value = 0 chkallmaster.Value = 0
chkalltransaksi.Value = 0 If cbokelas.Text = "Admin" Then chkalllaporan.Value = 1 chkallmaster.Value = 1 chkalltransaksi.Value = 1 ElseIf cbokelas.Text = "Kasir" Then chksukarela.Value = 1 chktransaksi.Value = 1
chkpembayaran.Value = 1 ElseIf cbokelas.Text = "Manager" Or cbokelas.Text = "Ketua" Then chkalllaporan.Value = 1 End If End Sub Private Sub cbokelas_Click() chkalllaporan.Value = 0 chkallmaster.Value = 0
chkalltransaksi.Value = 0
158
chksukarela.Value = 0 chkpembayaran.Value = 0 chktransaksi.Value = 0 If cbokelas.Text = "Admin" Then chkalllaporan.Value = 1 chkallmaster.Value = 1 chkalltransaksi.Value = 1 ElseIf cbokelas.Text = "Kasir" Then
chksukarela.Value = 1 chktransaksi.Value = 1 chkpembayaran.Value = 1 ElseIf cbokelas.Text = "Manager" Or cbokelas.Text = "Ketua" Then chkalllaporan.Value = 1 End If End Sub Private Sub chkalllaporan_Click()
End Sub Private Sub chkallmaster_Click() chkanggota.Value = chkallmaster.Value chkmastertr.Value = chkallmaster.Value If chkallmaster.Value = 1 Then chkanggota.Enabled = False chkmastertr.Enabled = False Else
chkanggota.Enabled = True chkmastertr.Enabled = True End If End Sub Private Sub chkalltransaksi_Click() chkpembayaran.Value = chkalltransaksi.Value chkpinjaman.Value = chkalltransaksi.Value chksukarela.Value = chkalltransaksi.Value chktransaksi.Value = chkalltransaksi.Value If chkalltransaksi.Value = 1 Then
chktransaksi.Enabled = True End If End Sub Private Sub cmdbatal_Click() bersih End Sub Private Sub cmdhapus_Click() Dim sql As String
If Len(txtid.Text) = 0 Then MsgBox "User ID Masih Kosong", vbCritical, "User ID" txtid.SetFocus Exit Sub End If sql = " SELECT * FROM user " & _ " WHERE userid='" & txtid & "'" Set rs = conn.Execute(sql)
If rs.EOF Then MsgBox "User ID " + txtid.Text + " Tidak Terdaftar", vbInformation, "User ID" txtid.Text = "" txtid.SetFocus Exit Sub End If X = MsgBox("Yakin Hapus User ID?", vbQuestion + vbYesNo, "Hapus User ID") If X = vbYes Then
sql = " DELETE * FROM user " & _ " WHERE userid='" & txtid & "'" conn.Execute (sql) MsgBox "User ID Sudah Dihapus", vbInformation, "User ID" bersih Else bersih End If
End Sub Private Sub cmdkeluar_Click() X = MsgBox("Yakin Ingin Keluar?", vbQuestion + vbYesNo, "Keluar") If X = vbYes Then End Unload Me Else txtid.SetFocus
End If End Sub Private Sub cmdkembali_Click() Unload Me End Sub Sub bersih() txtid.Text = "" txtpassword.Text = "" txtkonfirmasi.Text = "" chkanggota.Value = 0
Private Sub cmdsimpan_Click() Dim sql As String If Len(txtid.Text) = 0 Then MsgBox "User ID Masih Kosong", vbCritical, "User ID" txtid.SetFocus Exit Sub ElseIf Len(txtpassword.Text) = 0 Then MsgBox "Password Masih Kosong", vbCritical, "Password"
txtpassword.SetFocus Exit Sub ElseIf Len(txtkonfirmasi.Text) = 0 Then MsgBox "Konfirmasi Password Masih Kosong", vbCritical, "Konfirmasi Password" txtkonfirmasi.SetFocus Exit Sub End If sql = " SELECT * FROM user " & _
" WHERE userid='" & txtid & "'" Set rs = conn.Execute(sql) If Not rs.EOF Then MsgBox "User ID " + txtid.Text + " Sudah Terdaftar", vbInformation, "User ID" txtid.Text = "" txtid.SetFocus Exit Sub End If
If txtpassword.Text <> txtkonfirmasi.Text Then MsgBox "Password Anda Tidak Sesuai", vbInformation, "Password" txtpassword.SetFocus txtkonfirmasi.Text = "" txtpassword.Text = "" Exit Sub End If sql = " INSERT INTO user (userid,password,admin)" &_
" VALUES('" & txtid.Text & "','" & txtpassword.Text & "'," & _ " '" & chktambah.Value & "')" conn.Execute (sql) MsgBox "User ID Baru Sukses Dibuat", vbInformation, "User ID" bersih End Sub Private Sub Form_Activate() bersih End Sub Private Sub Form_Load()
161
Set conn = New ADODB.Connection conn.Open "kepegawaian" End Sub Private Sub Form_Unload(Cancel As Integer) conn.Close Set conn = Nothing End Sub Private Sub Image3_Click(Index As Integer)
End Sub Private Sub txtid_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then If Len(txtid.Text) = 0 Then MsgBox "User ID Masih Kosong", vbCritical, "User ID" txtid.SetFocus Else
txtpassword.SetFocus End If End If End Sub Private Sub txtkonfirmasi_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then If Len(txtkonfirmasi.Text) = 0 Then
MsgBox "Konfirmasi Password Masih Kosong", vbCritical, "Konfirmasi Password" txtkonfirmasi.SetFocus Else cmdsimpan.SetFocus End If End If End Sub Private Sub txtpassword_KeyPress(KeyAscii As Integer)
KeyAscii = Asc(UCase(Chr(KeyAscii))) If KeyAscii = 13 Then If Len(txtpassword.Text) = 0 Then MsgBox "Password Masih Kosong", vbCritical, "Password" txtpassword.SetFocus Else txtkonfirmasi.SetFocus End If