Anda di halaman 1dari 79

IMPLEMENTASI DELPHI DAN MYSQL PADA APLIKASI DATA

PENDIDIK DAN TENAGA KEPENDIDIKAN LEMBAGA PENJAMIN


MUTU PENDIDIKAN PROVINSI KALIMANTAN SELATAN

Laporan Kerja Praktik

Untuk Memenuhi Persyaratan


Dalam Menyelesaikan Strata-1 Ilmu Komputer

Oleh :
Evi Nadya Prisilla
J1F109212

PROGRAM STUDI ILMU KOMPUTER


FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS LAMBUNG MANGKURAT
BANJARBARU, 2013

LEMBAR PENGESAHAN
LAPORAN KERJA PRAKTIK

IMPLEMENTASI DELPHI DAN MYSQL PADA APLIKASI DATA


PENDIDIK DAN TENAGA KEPENDIDIKAN LEMBAGA PENJAMIN
MUTU PENDIDIKAN PROVINSI KALIMANTAN SELATAN
Oleh :
Evi Nadya Prisilla
J1F109212
Disetujui oleh pembimbing untuk memenuhi tugas mata kuliah Kerja Praktik
(PKL) dalam rangka syarat untuk menyelesaikan mata kuliah tersebut pada
tanggal :

Juni 2013, di Banjarbaru.

Pembimbing Internal,

Pembimbing Eksternal,

H. Irwan Budiman S.T, M.Kom

Jumali, S.Pd.

NIP. 19770325 200812 1 001

NIP. 19600109 198303 1 005


Mengetahui,

Ketua Program Studi Ilmu Komputer

Dodon T. Nugrahadi, S.Kom, M.Eng


NIP.19800112 200912 1 002
2

ABSTRAK

IMPLEMENTASI DELPHI DAN MYSQL PADA APLIKASI DATA PENDIDIK


DAN

TENAGA

KEPENDIDIKAN

LEMBAGA

PENJAMIN

MUTU

PENDIDIKAN PROVINSI KALIMANTAN SELATAN


(Oleh :Evi Nadya Prisilla; Pembimbing : H. Irwan Budiman S.T, M.Kom.; 2013;
xx halaman)
Bagian PSI sebuah instansi adalah bagian yang menangani keperluan sistem
informasi sebuah instansi, termasuk pendataan. Data yang banyak kerap kali
diperlukan efektifitas dalam pengelolaannya. Sistem informasi merupakan solusi
utama untuk menunjang kinerja sebuah instansi. Selain didukung dengan database
yang baik, sebuah sistem informasi juga memerlukan antar muka menarik dan
mudah dioperasikan. Pengoperasian yang baik tidak lepas dari kode program yang
ditambahkan pada aplikasi, agar aplikasi dapat berjalan. Sebagai penunjang
pendidikan Lembaga Penjamin Mutu Pendidikan Kalimantan Selatan perlu
menerapkan sistem informasi. Dalam kasus ini akan dibuat aplikasi pendataan
yang dapat membantu menyelesaikan permasalahan bagian PSI dalam mengelola
data-data pendidik dan tenaga kependidikan yang dibangun dengan menggunakan
aplikasi pemograman Delphi XE. Oleh karena itu dipilihlah topik Implementasi
Delphi dan MySQL pada Aplikasi Data Pendidik dan Tenaga Kependidikan
Lembaga Penjamin Mutu Pendidikan Provinsi Kalimantan Selatan.

Kata Kunci : Delphi XE, MySQL, aplikasi data pendidik

KATA PENGANTAR
Puji dan Syukur kehadirat Allah SWT, karena atas berkat dan rahmat-Nya
penyusun dapat melaksanakan kerja praktik dan menyelesaikan Laporan Kerja
Praktik di Lembaga Penjamin Mutu Pendidikan Provinsi Kalimantan Selatan,
Banjarbaru.
Dalam melaksanakan Kerja Praktik dan penyusunan laporan ini, penyusun
banyak mendapat bimbingan dan bantuan dari berbagai pihak. Maka dalam
kesempatan ini penyusun banyak mengucapkan terimakasih kepada :
1. Bapak Dodon T. Nugrahadi, S.Kom, M.Eng selaku Ketua Program Studi
Ilmu Komputer.
2. Bapak H. Irwan Budiman S.T, M.Kom selaku dosen pembimbing internal.
3. Bapak Jumali, S.Pd. selaku dosen pembimbing eksternal
4. Seluruh teman-teman yang telah banyak membantu.
Mengingat keterbatasan yang dimiliki, tentu saja laporan praktik ini jauh
dari sempurna, baik dari segi disiplin ilmu, teknik penyajian maupun dari segi tata
bahasanya. Namun demikian sangat diharapkan kritikan dan saran untuk
menambah pengetahuan dalam menulis laporan ini.
Penyusun berharap apa yang disampaikan dapat memberikan sesuatu yang
bermanfaat bagi kita semua. Aamin.

Banjarbaru,

2013

Penyusun

DAFTAR ISI
LEMBAR PENGESAHAN.....................................................................................ii
ABSTRAK..............................................................................................................iii
KATA PENGANTAR..............................................................................................iv
DAFTAR ISI............................................................................................................v
DAFTAR TABEL.................................................................................................viii
DAFTAR GAMBAR..............................................................................................ix
DAFTAR LAMPIRAN...........................................................................................xi
BAB I.......................................................................................................................1
1.1 Latar belakang..............................................................................................1
1.2 Tujuan...........................................................................................................2
1.3 Manfaat........................................................................................................2
BAB II......................................................................................................................4
2.1 Sejarah dan Perkembangannya.....................................................................4
2.1.1 Visi........................................................................................................5
2.1.2 Misi.......................................................................................................5
2.2 Struktur Organisasi.......................................................................................6
2.3 Kegiatan Unit tempat Kerja Praktik.............................................................7
BAB III..................................................................................................................12
3.1 Sistem Informasi........................................................................................12
3.2 Bahasa Delphi............................................................................................13
5

3.2.1 Sejarah Delphi.....................................................................................13


3.2.2 Tampilan Delphi XE...........................................................................14
3.2.3 Struktur Pemrogramn Delphi..............................................................18
3.3 Sistem Basis Data.......................................................................................19
3.4 Perancangan Sistem....................................................................................19
DFD (Data Flow Diagram)....................................................................................19
ERD (Entity Relationship Diagram)......................................................................21
3.5 Ragam Dialog.............................................................................................22
BAB IV..................................................................................................................33
4.1 Waktu dan Tempat......................................................................................33
4.2 Bentuk Kerja Praktik..................................................................................33
4.3 Prosedur Kerja............................................................................................33
BAB V....................................................................................................................35
5.1 Evaluasi Pelaksanaan Kerja Praktek..........................................................35
5.2 Hasil Pengamatan.......................................................................................36
5.2.1 Permasalahan.......................................................................................36
5.2.2 Tujuan..................................................................................................36
5.2.3 Manfaat...............................................................................................36
5.2.4 Teknologi.............................................................................................37
5.2.5 Teknik Pengumpulan Informasi..........................................................37
5.2.6 Karakteristik User...............................................................................37
6

5.2.7 Batasan User terhadap Aplikasi..........................................................38


5.2.8 Fitur-Fitur Absensi Data Pendidik dan Tenaga Kependidikan............38
BAB VI..................................................................................................................39
6.1 Deskripsi Sistem.........................................................................................39
6.2 Pembuatan Sistem......................................................................................39
BAB VII.................................................................................................................48
7.1 Kesimpulan................................................................................................48
7.2 Saran...........................................................................................................48
DAFTAR PUSTAKA.............................................................................................49
LAMPIRAN...........................................................................................................50
DOKUMENTASI...................................................................................................69

DAFTAR TABEL

Tabel 3.1 Keuntungan dan kerugian penggunaan dialog berbasis perintah tunggal
................................................................................................................................26
Tabel 3.2 Keuntungan dan kerugian penggunaan antarmuka berbasis bahasa alami.
................................................................................................................................27
Tabel 3.3 Keuntungan dan kerugian Sistem menu tarik (pulldown).....................29
Tabel 3.4 Keuntungan dan Kerugian Penggunaann Dialog Berbasis Pengisian
Borang. ..................................................................................................................30
Tabel 3.5 Keuntungan dan Kerugian Dialog Berbasis Manipulasi Langsung.......31

DAFTAR GAMBAR

Gambar 2.1 Stuktur Organisasi................................................................................7


Gambar 4.1 Tampilan Delphi.................................................................................14
Gambar 4.2 Tampilan Menu Bar............................................................................14
Gambar 4.3 Tampilan Tools Bar............................................................................14
Gambar 4.4 Tampilan Component Palette.............................................................15
Gambar 4.5 Tampilan Object Tree View................................................................16
Gambar 4.6 Tampilan Object Inspector.................................................................16
Gambar 4.7 Tampilan Form...................................................................................17
Gambar 4.8 Tampilan Code Editor........................................................................18
Gambar 3.1 Entitas eksternal.................................................................................20
Gambar 3.2 Penyimpanan data..............................................................................20
Gambar 3.3 Proses.................................................................................................20
Gambar 3.4 Aliran data..........................................................................................20
Gambar 6.1. Form Login........................................................................................39
Gambar 6.2 Form Utama.......................................................................................40
Gambar 6.3. Form Wilayah....................................................................................41
Gambar 6.4. Form Sekolah....................................................................................42
Gambar 6.5. Form Pegawai Tab Input Data...........................................................43

Gambar 6.6. Form Pegawai Tab Data Tabel..........................................................44


Gambar 6.7. Form PraCetakLaporan.....................................................................45
Gambar 6.8. Form User..........................................................................................46
Gambar 6.9. Laporan.............................................................................................47

10

DAFTAR LAMPIRAN

1. Coding
2. Dokumentasi
3. Surat Permohonan Pribadi
4. Pendaftaran KP
5. Rencana Kerja KP
6. Surat Rekomendasi KP Dosen PA
7. Usulan Kegiatan KP
8. Daftar Hadir KP
9. Berita Acara Selesai KP
10. Pendaftaran Seminar KP
11. Rekomendasi Nilai KP
12. Daftar Hadir Seminar
13. Penilaian Laporan dan Seminar KP
14. Penilaian Pembimbing Eksternal
15. Nilai KP

11

BAB I
PENDAHULUAN

1.1 Latar belakang


Fakultas Matematika dan Ilmu Pengetahuan Alam melakukan pembinaan
terhadap mahasiswa melalui kegiatan kerja praktik. Kegiatan kerja praktik
merupakan kegiatan akademik yang merupakan salah satu mata kuliah wajib
berupa praktik di lingkungan industri/ pabrik/ instansi yang setara dengan 2 satuan
kredit semester (SKS), dan harus diambil oleh mahasiswa yang telah memperoleh
SKS minimal 110 SKS. Kegiatan ini diharapkan mampu memenuhi dan
menjawab tantangan pasar kerja serta menyiapkan mahasiswa agar akrab dan
mengetahui seluk beluk dunia kerja serta dapat mengembangkan kemampuan
dalam menerapkan teori-teori yang diperoleh dalam bangku kuliah. Di akhir
kegiatan mahasiswa diwajibkan untuk menulis laporan kerja praktik dan
melakukan seminar/sosialisasi hasil kerja praktik.
Sebagian besar instansi pemerintah dan perusahaan swasta di Kalimantan
Selatan, berpusat didua kota yaitu di Banjarmasin dan Banjarbaru. Layaknya
perusahaan dan instansi yang berada di era globalisasi, perusahaan dan instansi
dituntut untuk mengikuti perkembangan teknologi informasi untuk mendukung
jalannya birokrasi. Namun tidak semua perusahaan dan instansi yang terdapat di
Banjarbaru yang sudah menerapkan teknologi Informasi secara menyeluruh dalam
aktifitas kerjanya. Lembaga Penjamin Mutu Pendidikan (LPMP) Kalimantan

12

Selatan, Sebagai Lembaga Penjaminan Mutu Pendidikan di Kalimantan Selatan


maka tak pelak lagi lembaga ini dituntut agar selalu update terhadap teknologi
yang ada.
1.2 Tujuan
Adapun tujuan dari umum pelaksanaan Kerja Praktik ini adalah sebagai
berikut :
(1) Sebagai syarat untuk menyelesaikan studi
(2) Membina mahasiswa/i untuk bisa menjadi sarana yang berkualitas.
(3) Meningkatkan dan mengembangkan kemampuan dari mahasiswa/i
tersebut dan menerapkan pembelajaran yang diperoleh pada saat
perkuliahan.
Adapun tujuan khusus pelaksanaan Kerja Praktik ini adalah sebagai
berikut :
(1) Memberikan pembelajaran kepada mahasiswa/i bagaimana dunia kerja
yang sebenarnya.
(2) Menerapkan ilmu yang didapatkan selama menimba ilmu dibangku
kuliah.
1.3 Manfaat
Manfaat yang diperoleh dari kerja praktik ini adalah sebagai berikut :
(1) Mengetahui keadaan dunia kerja.
(2) Memperoleh keterampilan dan pengetahuan baru yang tidak didapat
dibangku kuliah.
(3) Pembelajaran mahasiswa agar dapat bekerjasama dengan baik.
(4) Menjadi pendorong pengembangan diri, dalam rangka membantu
menyelesaikan permasalahan di tempat kerja praktik
2

BAB II
KEADAAN UMUM INSTANSI TEMPAT KERJA PRAKTIK

2.1 Sejarah dan Perkembangannya


Lembaga Penjaminan Mutu Pendidikan (LPMP) Kalimantan Selatan
dibentuk berdasarkan Peraturan Menteri Pendidikan Nasional No. 07 tahun 2007.
Sebelumnya, Lembaga Penjaminan Mutu Pendidikan (LPMP) Kalimantan Selatan
bernama Balai Penataran Guru (BPG) Banjarmasin dan Lembaga Penjamin Mutu
Pendidikan (LPMP) Kalimantan Selatan. LPMP Kalimantan Selatan terletak di
Jalan Gotong Royong No. 85 Banjarbaru.
Balai Penataran Guru Banjarmasin pada awal berdirinya diatur oleh
Keputusan Menteri Pendidikan dan Kebudayaan Republik Indonesia Nomor
0116/O/1977 tanggal 23 April 1977 tentang Tata Kerja Balai Penataran Guru dan
Tenaga Teknis Regional. Selanjutnya melalui Keputusan Mendikbud Nomor
0181/O/1979 tanggal 20 Agustus 1979 Balai Penataran Guru dan Tenaga Teknis
Regional diubah menjadi Balai Penataran Guru. Struktur organisasi BPG saat itu
diatur menurut Keputusan Mendikbud Nomor 0203/O/1978 tanggal 23 Juli 1978,
yang susunan organisasinya belum mencerminkan lembaga penataran karena
belum tampak adanya tenaga fungsional. Dalam perkembangan selanjutnya,
fungsi dan peranan BPG Banjarmasin semakin meningkat setelah terbit
Keputusan Mendikbud Nomor 024/O/1991 tenggal 2 Mei 1991 tentang Struktur
Organisasi dan Tata Kerja Balai Penataran Guru yang didalamnya memuat pula
jabatan structural dan fungsionalnya dalam BPG. Dalam perkembangannya BPG
3

berubah menjadi Lembaga Penjamin Mutu Pendidikan Kalimantan Selatan.


Lembaga Penjamin Mutu Pendidikan Kalimantan Selatan dibentuk berdasarkan
Keputusan Menteri Pendidikan Nasional Nomor 087/O/2003 tanggal 4 Juli 2003
sebagai lembaga yang bertujuan agar pelaksanaan pendidikan di Kalimantan
Selatan sesuai dengan standar, norma, kriteria dan prosedur yang ditetapkan oleh
pemerintah pusat.
Seiring dengan perkembangan zaman dan tuntutan masyarakat terhadap
peningkatan mutu pendidikan, pemerintah melalui Departemen Pendidikan
Nasional melakukan restrukturisasi dan refungsionalisasi Badan Penataran Guru
Banjarmasin dan Lembaga Penjamin Mutu Pendidikan Kalimantan Selatan
menjadi Lembaga Penjaminan Mutu Pendidikan (LPMP) Kalimantan Selatan.
Lembaga Penjaminan Mutu Pendidikan Kalimantan Selatan merupakan Unit
Pelaksana Teknis (UPT) pusat di bawah Ditjen Peningkatan Mutu Pendidik dan
Tenaga Kependidikan (PMPTK).
2.1.1

Visi

Visi dari Lembaga Penjamin Mutu Pendidikan: Terwujudnya lembaga


yang professional dalam melaksanakan penjaminan mutu pendidikan dasar dan
menengah termasuk TK/RA menuju standar nasional berwawasan global.
2.1.2

Misi

Misi dari Lembaga Penjamin Mutu Pendidikan adalah sebagai berikut :


(1) Mewujudkan SDM yang profesional dalam melakukan penjaminan
mutu pendidikan.
(2) Melakukan pemetaan, pengkajian dan supervisi mutu pendidikan di
provinsi.

(3) Memfasilitasi satuan pendidikan di dalam melaksanakan MBS di


provinsi.
(4) Memfasilitasi

peningkatan

kompetensi

pendidik

dan

tenaga

kependidikan di provinsi menuju standar nasional pendidikan.


(5) Melaksanakan kerjasama dengan instansi terkait dalam usaha
pengembangan mutu pendidikan di provinsi.
(6) Mewujudkan sistem informasi mutu pendidikan yang handal dalam
melakukan akses layanan data.
2.2 Struktur Organisasi
Berdasarkan Peraturan Menteri Pendidikan Nasional Republik Indonesia
nomor 7 Tahun 2007 tentang organisasi dan tata kerja Lembaga Penjaminan Mutu
Pendidikan, susunan organisasi LPMP terdiri atas:
a.
b.
c.
d.
e.
f.

Kepala;
Subbagian Umum;
Seksi Sistem Informasi;
Seksi Pemetaan Mutu dan Supervisi;
Seksi Fasilitasi Peningkatan Mutu Pendidikan; dan
Kelompok Jabatan Fungsional.

Struktur Organisasi dan tata kerja pada Kantor LPMP Kalimantan Selatan
adalah sebagai berikut :

KEPALA

KASUBBAG UMUM

SEKSI PROGRAM DAN SISTEM


SEKSI INFORMASI
PEMETAAN MUTU DAN SUPERVISI
SEKSI FASILITASI SUMBER DAYA

FUNGSIONALITAS WIDYAISWARA

Gambar 2.1 Stuktur Organisasi

2.3 Kegiatan Unit tempat Kerja Praktik


Bahwa dalam rangka efisiensi dan efektivitas pelaksanaan tugas
pemerintahan, pembangunan dan kemasyarakatan, agar berdaya guna dan berhasil
guna, sesuai dengan tugas dan fungsi pokok LPMP Kalimantan Selatan, maka
tugas tugas yang ada pada bagian adalah sebagai berikut :
1. Kepala LPMP
Menurut Permendiknas nomor 7 tahun 2007, Setiap pimpinan
satuan organisasi di lingkungan LPMP dalam melaksanakan tugasnya
wajib :
a. Menerapkan prinsip koordinasi, integrasi, dan sinkronisasi serta
bekerja sama baik dalam lingkup internal maupun eksternal;
b. Melaksanakan akuntabilitas kinerja;
c. Menyusun laporan pelaksanaan tugas sesuai dengan ketentuan
peraturan perundang-undangan;

d. Menyampaikan laporan pelaksanaan tugas kepada atasan secara


berjenjang.
Kepala LPMP menyampaikan hasil pemetaan mutu pendidikan
dasar dan menengah termasuk TK, RA, atau bentuk lain yang
sederajat, serta supervisi dan fasilitasi sumberdaya pendidikan terhadap
satuan pendidikan kepada pemerintah provinsi, pemerintah kabupaten,
dan pemerintah kota.
2. Kepala Sub Bagian Umum
Kepala Sub bagian Umum mempunyai tugas melakukan
koordinasi dan menyusun program pada sub-sub bagian yang ada di
bagian umum yang meliputi urusan kepegawaian, perlengkapan,
perencanaan,

keuangan,

ketatausahaan,

ketatalaksanaan,

dan

kerumahtanggaan LPMP
a. Urusan Kepegawaian
Menyusun program kerja urusan kepegawaian dan memberikan
Pelayanan administrasi kepegawaian dengan tertib, cepat tepat pada
waktunya, serta melaksanakan tugas-tugas lain yang diberikan oleh
atasan sesuai dengan ketentuan yang berlaku.
b. Urusan Perlengkapan
Menyusun rencana, membagi tugas, member petunjuk dan
menilai pelaksanaan kegiatan urusan perlengkapan serta menyusun
rencana kebutuhan dan pengadaan, pemeliharaan, perawatan sarana
dan prasarana serta melaksanakan tugas-tugas lain yang diberikan oleh
atasan.

c. Urusan Tata Laksana


Menyusun program kerja urusan tata laksana, melaksanakan
kegiatan administrasi ketatausahaan, mengkoordinasikan pelaksanaan
pengelolaan persuratan dan keprotokolan, serta melaksanakan tugastugas lain yang diberikan oleh atasan berdasarkan ketentuan yang
beralaku
d. Urusan Rumah Tangga
Melaksanakan

tugas

kerumahtanggaan

(Wisma)

dan

melaksanakan tugas-tugas lain yang diberikan oleh atasan berdasarkan


ketentuan yang berlaku.
e. Urusan Perencanaan
Menyusun program kerjaurusan perencanaan, menyusun dan
menghimpun program Subbag Umum dan seksi-seksi sebagai bahan
program kerja lembaga dan melaksanakan tugas-tugas lain yang
diberikan oleh atasan.
f. Urusan Keuangan
Menyusun rencana, membagitugas, member petunjuk dalam
pelaksanaan kegiatan urusan keuangan dan melaksanakan tugas yang
diberikan oleh atasan.
g. Urusan Perpustakaan
Menyusun rencana kerja, mengkoodinir penyelenggaraan
perpustakaan, melaksanakan 5 K pada ruang perpustakaan dan
lingkungan serta melaksanakan tugas-tugas lain yang diberikan oleh
atasan berdasarkan ketentuan yang berlaku.

3. Kepala Seksi Program danSistem Informasi


Kepala Seksi Program dan Sistem Informasi mempunyai tugas
melakukan penyusunan program, pengembangan, dan pengelolaan
sistem informasi mutu pendidikan termasuk TK, RA, atau bentuk lain
yang sederajat.
Rumusan Tugas, Melakukan Pemetaan dan Pengolahan Data
Pendidikan Dasar dan Menengah, Pengembangan Sistem Informasi
Mutu Pendidikan Dasar dan Menengah, Menyusun rencana, membagi
tugas, memberikan petunjuk, mengkoordinasi kegiatan bawahan serta
menyusun

program

kerjaSeksi

Data

danInformasi

di

LembagaPenjaminMutuPendidikan Kalimantan Selatan


4. Kepala Seksi Pemetaan Mutu dan Supervisi
Kepala Seksi Pemetaan Mutu dan Supervisi mempunyai tugas
melakukan pemetaan, analisis dan supervise penjaminan mutu satuan
pendidikan termasuk TK, RA, atau bentuk lain yang sederajat dalam
pencapaian standar mutu pendidikan nasional.
Rumusan Tugas, Menyusun rencana program, memberikan
petunjuk, Mengkoordinasikan dan menilai staf seksi kajian mutu
pendidikan serta melaksanakan program pengembangan peningkatan
mutu pendidikan dasar dan menengah.

5. Kepala Seksi Fasilitasi Sumber Daya Pendidikan

Kepala Seksi Fasilitasi Sumber daya Pendidikan mempunyai


tugas melakukan fasilitasi sumber daya pendidikan terhadap satuan
pendidikan dasar dan menengah termasuk TK, RA, atau bentuk lain
yang sederajat dalam penjaminan mutu pendidikan.
6. Kelompok Jabatan Fungsional
Kelompok Jabatan Fungsional terdiri atas sejumlah jabatan
fungsional yang terbagi dalam berbagai kelompok sesuai dengan
bidang tugasnya. Kelompok Jabatan Fungsional dipimpin oleh seorang
tenaga fungsional sebagai koordinator yang ditunjuk oleh dan
bertanggung jawab kepada Kepala LPMP. Jumlah dan jenis jabatan
fungsional ditentukan berdasarkan kebutuhan dan beban kerja.
Kelompok jabatan fungsional mempunyai tugas melaksanakan
sebagian tugas dan fungsinya sesuai dengan bidang keahlian masingmasing.
BAB III
TINJAUAN PUSTAKA

3.1 Sistem Informasi


Menurut Sutedjo (2002), sistem adalah kumpulan elemen yang saling
berhubungan satu sama lain yang membentuk satu kesatuan dalam usaha
mencapai suatu tujuan. Sedangkan menurut Sutanta (2003), sistem adalah
sekumpulan elemen atau subsistem yangsaling bekerjasama atau yang
dihubungkan dengan cara-cara tertentu sehingga membentuksatu kesatuan untuk
melaksanakan suatu fungsi guna mencapai suatu tujuan.
10

MenurutSutedjo (2002), informasi adalah hasil pemrosesan data yang


diperoleh dari setiap elemen sistem tersebut menjadi bentuk yang mudah
dipahami dan merupakanpengetahuan yang relevan yang dibutuhkan oleh orang
untuk menambah pemahamannyaterhadap fakta-fakta yang ada. Sedangkan
menurut Sutanta (2003), informasi merupakanhasil pengolahan data sehingga
menjadi bentuk yang penting bagi penerimanya danmempunyai kegunaan sebagai
dasar dalam pengambilan keputusan yang dapat dirasakanakibatnya secara
langsung saat itu juga atau secara tidak langsung pada saat mendatang.
Sistem informasi adalah kumpulan elemen yang saling berhubungan satu
sama lain yang membentuk satu kesatuan untuk mengintegrasikan data,
memproses dan menyimpanserta mendistribusikan informasi (Sutedjo, 2002).
Sistem informasi adalah suatu tipe khusus dari sistem kerja yang fungsi
internalnya terbatas pada pemrosesan informasi dengan melakukan enam tipe
operasi: menangkap(capturing), mentransmisikan (transmitting), menyimpan
(storing),

mengambil

(retrieving),

memanipulasi

(manipulating),

dan

menampilkan (displaying) informasi Jogiyanto (2007). Menurut Eko (2000),


sistem informasi merupakan suatu kumpulan dari komponen-komponen dalam
perusahaan atau organisasi yang berhubungan dengan proses penciptaan dan
pengaliran informasi.
3.2 Bahasa Delphi
3.2.1

Sejarah Delphi
Delphi merupakan salah satu bahasa pemrograman tingkat tinggi

berbasis Windows.Delphi digolongkan ke dalam bahasa pemrograman visual yang


menitik beratkan pada pemrograman berorientasi objek (Objek Oriented
11

Programming). Membuat program dengan delphi tidaklah terlalu sulit, karena


bahasa pemrograman ini dikembangkan dengan menggunakan bahasa Pascal.
Dalam perkembangannya delphi memiliki beberapa objek-objek yang
canggih, dalam bentuk kontrol program yang dikelompokkan ke dalam
toolboxyang biasa disebut dengan Component Pallette. Menggunakan bahasa
pemrograman delphi kita dapat menghasilkan program-program canggih, dimulai
dari pemrograman multimedia, grafis sampai dengan pemrogaman database yang
menggunakan jaringan. Bahkan dengan delphi kita pun dapat membuat program
yang dapat mengakses data dari internet (Gunawan Imam, 2010).
3.2.2

Tampilan Delphi XE
Tampilan Delphi secara umum berbeda dengan tampilan bahasa

pemrograman lain. Delphi tidak memiliki form utama atau form induk. Semua
fasilitas toolbox dan tool window pada delphi terpisah dari menu utama.

Gambar 4.1 Tampilan Delphi

a. Menu Bar

Menu Bar pada delphi berisi berbagai macam perintah untuk proses
pembuatan program Aplikasi. Menu-menu yang mempunyai kesamaan jenis
perintah dasar, dikelompokkan dalam satu sub menu.
12

Gambar 4.2 Tampilan Menu Bar

b. Tools Bar

Toolbar berisi ikon-ikon yang mewakili perintah-perintah dasar yang


ada pada menu bar. Misalnya perintah menyimpan, cukup dilakukan dengan
cara mengklik ikon bergambar disket.
Gambar 4.3 Tampilan Tools Bar

c. Component Pallete

Commonent Pallete merupakan suatu wadah atau tempat yang


digunakan untuk menampung semua objek-objek yang ada dalam delphi.
Fasilitas ini sangat penting dan sangat membantu ketika proses pembuatan
desain tampilan program. Semua hal-hal yang kita butuhkan pada saat
mendesain tampilan program ada dalam fasilitas ini.

Gambar 4.4 Tampilan Component Palette

d. Object Tree View / Structure

Object Tree View berpungsi untuk menampilkan keterangan atau


menginformasikan semua objek atau kontrol program yang digunakan
dalam membuat desain form. Jika kita lupa nama-nama yang diberikan pada
13

suatu objek dalam format, kita cukup melihat isi objek dalam objek tree
view.

Gambar 4.5 Tampilan Object Tree View

e. Object Inspector

Object Inspector merupakan jendela yang memberikan infromasi


mengenai properties atau attribute objek yang seadang aktif. Pada saat
pembuatan program, jendela ini sangat berguna ketika mengubah atau
menentukan setting objek yang digunakan dalam program.
Bagian ini terdiri dari 2 bagian, bagian pertama menampung properties
masing-masing objek yang ada dalam delphi. Sedangkan bagian kedua
berfungsi menampung berbagai macam event yang ada dalam suatu objek.

Gambar 4.6 Tampilan Object Inspector

f.

Form

14

Form dalam pemrograman visual bisa diibaratkan sebagai suatu kain


kanvas yang siap untuk dilukis. Form merupakan suatu dasar atau pondasi
yang akan digunakan dalam pembuatan desain tampilan program. Ketika
membuat desain program, kita membutuhkan objek-objek yang ada dalam
component pallete untuk ditempatkan ke dalam form.

Gambar 4.7 Tampilan Form

g. Code Editor

Kode Editor adalah jendela yang digunakan untuk melakukan


pembuatan dan pengeditan kode-kode program. Pada delphi untuk
memunculkan kode program dan form secara bergantian cukup menekan
F12 pada keyboard.

Gambar 4.8 Tampilan Code Editor

15

3.2.3

Struktur Pemrogramn Delphi

a. Unit
Struktur program delphi dibangun berdasarkan struktur program Pascal, yang
menitik beratkan pada struktur pemrograman dengan berorientasi pada objek.
Objek dalam pascal ditulis ke dalam sebuah file yang disebut dengan Unit, Unit
inilah yang nantinya akan digunakan sebagai acuan dalam pembuatan program
menggunakan Pascal. Unit dalam pascal berupa kode-kode program, sedangkan
Unit dalam Delphi digunakan untuk menyimpan pendeklarasian form dalam
bentuk class.
Class yang dideklarasikan dalam unit, oleh delphi akan diterjemahkan sebagai
sebuah form dan objek lain yang digunakan dari component pallete. Setiap form
yang digunakan dalam delphi pasti akan dideklarasikan dalam unit secara
otomatis oleh software ini.
b.

Project
Dalam sebuah pembuatan program aplikasi, delphi bisa terdiri dari beberapa
file. Apapunbentuk file komponen yang diogunakan dalam pembuatan program
delphi, pasti akan disimpan dalam sebuah file dalam bentuk unit. File-file unit
tersebut, disatukan dengan kode-kode program yang dibangun ke dalam satu file
yang disebut dengan Project (Gunawan Imam, 2010).
3.3 Sistem Basis Data
Basis data adalah suatu susunan/kumpulan data operasional lengkap dari
suatu organisasi/perusahaan yang diorganisir/dikelola dan disimpan secara

16

terintegrasi dengan menggunakan metode tertentu menggunakan komputer


sehingga mampu menyediakan informasi optional yang diperlukan pemakainya
(Marlinda,2004).
Sistem Basis Data adalah suatu sistem menyusun dan mengelola recordrecord menggunakan komputer untuk menyimpan atau merekam serta memelihara
data operasional lengkap sebuah organisasi/perusahaan sehingga mampu
menyediakan informasi yang optimal yang diperlukan pemakai untuk proses
mengambil keputusan (Marlinda,2004).
3.4 Perancangan Sistem
Dalam melakukan perancangan sistem, ada dua model yang dipergunakan
yaitu process modelling dengan menggunakan Data Flow Diagram (DFD) dan
data modelling dengan menggunakan Entity Relationship Diagram (ERD).
DFD (Data Flow Diagram)
DFD merupakan penggambaran sistem yang menggunakan bentuk symbol
untuk menggambarkan aliran data dalam suatu proses yang saling berhubungan.
Beberapa simbol yang dipergunakan untukmenggambarkan sistem antara lain:
(1) External Entity, merupakan simbol yang mewakili elemen yang
berada di luar sistem, tetapi memiliki hubungan interaksi dengan
sistem.

Gambar 3.1 Entitas eksternal

(2) Data Store, merupakan simbol yang mewakilitempat penyimpanan


dari data dan dapatdipergunakan bila dibutuhkan.
17

Gambar 3.2 Penyimpanan data

(3) Proses, merupakan simbol yang mewakili kegiatanuntuk mengubah


data menjadi informasi ataumasukan untuk data lain.

Gambar 3.3 Proses

(4) Data flow, merupakan simbol yang mewakili arahaliran data yang
berasal dari satu proses, data storeatau elemen lingkungan menuju ke
satu proses, datastore atau enviromental element lainnya.

Gambar 3.4 Aliran data

18

Permodelan sistem dengan menggunakan DFD memiliki level yang


menandai penggambaran sistem mulai dari umum hingga detail. Level yang
menandai

hubungan

yang

paling

umum

dan

menggambarkan

sistem

secarakeseluruhan disebut context diagram. Dari context diagram selanjutnya


dapatdiuraikan ke dalam DFD level 0, 1, hingga level dimana proses dianggap
cukupdetail dan jelas serta tidak bisa diuraikan lebih detail(Sutedjo, 2002).
ERD (Entity Relationship Diagram)
Pada perancangan konseptual diperlukan suatu pendekatan yang
digunakan untuk menggambarkan hubungan antardata. Hubungan tersebut dapat
dinyatakan dalam bentuk model E-R (ERD). Mengingat model tersebut
merupakan dasar penting dalam perancangan database (Kadir, 2008).
ERD

merupakan

mendokumentasikan

data

data
sistem.

modeling

yang

Dokumentasi

dipergunakan

dilakukan

dengan

untuk
cara

menentukan kelompok data apa saja yang terdapat dalam tiap entity dan
bagaimana hubungan antara entity satu dengan lainnya. Entity dapat berupa
environmental element, resource dan transaksi yang sangat diperlukan dan
didokumentasikan dalam bentuk data (Sutedjo, 2002).
ERD merupakan suatu model yang digunakan untuk menggambarkan data
dalam bentuk entitas, atribut dan hubungan antar entitas.Model dinyatakan dalam
bentuk diagram. ERD tidak mencerminkan bentuk fisik yang nantinya
akandisimpan dalam database, melainkan hanya bersifat konseptual. Itu sebabnya
ERD tidak bergantung pada produk DBMS yang digunakan (Kadir, 2008).
Entitas adalah sesuatu dalam dunia nyata yang keberadaannya tidak
bergantung pada yang lain. Entitas dapat berupa sesuatu yang nyata ataupun
abstrak (berupa suatu konsep).Entitas dapat berupa seseorang, sebuah tempat,
19

sebuah objek, sebuah kejadian atau suatu konsep.Setiap entitas dinyatakan oleh
sejumlah atribut.Atribut adalah properti atau karakteristik yang terdapat pada
setiap entitas (Kadir, 2008).
3.5 Ragam Dialog
Ragam dialog adalah cara yang digunakan untuk mengorganisasikan
berbagai teknik dialog/komunikasi Manusia-Komputer.
3.5.1 Ragam Dialog Interaktif
Karakteristik Ragam Dialog adalah sebagai berikut :
1.

Inisiatif
Merupakan sifat dasar dari sembarang dialog, karena inisiatif akan
menentukan keseluruhan ragam komuniaksi sehingga dapat ditentukan
tipe-tipe pengguna yang dituju oleh sistem yang dibangun. Dua jenis
inisiatif yang paling sering digunakan oleh inisiatif oleh komputer dan
inisiatif oleh pengguna.

Dalam inisiatif komputer, pengguna

memberikan

tanggapan atas arahan dari komputer.

pertanyaan

yang

mempunyai

jawaban ya/tidak.

Misalnya :
Sedangkan

inisiatif oleh pengguna mempunyai sifat keterbukaan yang lebih luas.


Misalnya adalah command line.
2.

Keluwesan
Sistem yang luwes atau fleksibel adalah sistem yang mempunyai
kemampuan untuk mencapai suatu tujuan lewat cara yang berbeda.

3. Kompleksitas

20

Kompleksitas disini dimaksudkan tidak perlu membuat antarmuka


lebih dari yang diperlukan, karena tidak ada keuntungan yang dapat
diperoleh, malahan akan menjadikan implementasinya menjadi lebih
sukar.
4. Kekuatan
Kekuatan didefinisaikan sebagai jumlah kerja yang dapat dilakukan
oleh sistem untuk setiap perintah yang diberikan oleh pengguna.
5. Beban Informasi
Ragam dialog ayng terjadi antara komputer dengan manusia menitik
beratkan pada penyajian informasi yang dihasilkan komputer kepada
pengguna. Agar penyampaian informasi itu dapat berdayaguna dan
berhasil guna, beban informasi yang terkandung di dalam suatu ragam
dialog seharusnya disesuaikan dengan aras pengguna. Jika beban itu
terlalu tinggi, pengguna akan merasa terbebani yang berakibat negatif
dalam hal kemampuan pengolahan kognitif dan tingkah laku pengguna
terhadap sistem ang dimaksud.

Jika bebannya terlalu rendah,

pengguna akan merasa bahwa sistemnya seolah-olah menyembunyikan


kinerja penggunanya sendiri.
6. Konsistensi
Konsistensi merupakan atribut yang sangat penting untuk membantu
pengguna dalam mengembangkan mentalitas yang diperlukan dalam
pengoperasian sebuah sistem komputer. Konsistensi sangat diperlukan
untuk mempermudah pembelajaran dan pengoperasian.
7. Umpan balik

21

Umpan balik adalah respon dari sistem sistem atas suatu perintah.
Ketika sebuah program aplikasi sedang dijalankan, pengguna
seringkali harus menunggu sampai komputer menampilkan hasil yang
ia inginkan.

Tetapi, pada program komputer yang tidak ramah,

pengguna sering harus menunggu proses yang sedang berjalan,


sementara pengguna tidak mengetahui status proses saat itu, apakah
sedang melakukan komputasi, sedang mencetak hasil, atau bahkan
komputernya macet (hang) karena suatu sebab. Program yang
demikian tidak baik menurut ukuran pengguna, karena program tidak
memberikan umpan balik kepada pengguna akan apa yang akan ia
kerjakan saat itu.
8. Observabilitas
Sistem dikatakan mempunyai sifat obsevbilitas apabila sistem itu
berfungsi secara benar dan nampak sederhana bagi pengguna,
meskipun sesungguhnys pengolahan secara internalnya sangat rumit.
9. Kontrolabilitas
Kontrolabilitas merupakan kebalikan dari observabilitas, dan hal ini
berimplikasi bahwa sistem selalu berada dibawah kontrol pengguna.
10. Efisiensi
Efisiensi dalam sistem komputer melibatan unjuk kerja manusia dan
komputer secara bersama-sama adalah throughput yang diperoleh dari
kerjasama antara manusia dan komputer.

11. Keseimbangan

22

Strategi yang diambil dalam perancangan sembarang sistem sistem


manusia-komputer haruslah dapat membagi-bagi pekerjaan antara
manusia dan komputer seoptimal mungkin

23

3.5.2 Kategori Ragam Dialog Interaktif


1. Dialog Berbasis Perintah Tunggal
Dialog berbasis perintah tunggal (Command Line Language)
merupakan ragam yang paling konvensional. Perintah-perintah tunggal
yang dapat dioperasikan bisanya tergantung dari sistem komputer yang
dipakai, dan berada dalam suatu doamain yang disebut bahsa perintah
(common language).Dialog berbasis perintah tunggal adalah dialog
yang bersifat inisiatif oleh pengguna.Bahasa perintah harus dirancang
sedemikian rupa sehingga mereka mempunyai sifat alamiah, yakni
mudah dipelajari dan diingat oleh kebanyakan pengguna.
Tabel 3.1 Keuntungan dan kerugian penggunaan dialog berbasis perintah tunggal

2. Dialog Berbasis Bahasa Pemrogaman


Dalam keadaan tertentu, penggunaan dialog berbasis perintah tunggal
sering tidak memadai, khususnya ketika pengguna harus memberikan
sederetan perintah-perintah yang sama setiap kali ia menjalankan
program aplikasi tersebut. Dialog berbasis bahasa pemrograman
merupakan ragam dialog yang memungkinkan pengguna untuk
mengemas sejumlah perintah ke dalam suatu berkas yan sering disebut
dengan batch file. Contoh dBASE

3. Antarmuka Berbasis Bahasa Alami


24

Pada film fiksi ilmiah, komunikasi antara manusia dengan komputer


lewat suatu bahasa ucapan yang secara jelas memanfaatkan bahasa
alami (natural language).

Dengan melihat pada perbedaan bahasa

yang digunakan oleh manusia dan komputer, maka sebuah sistem yang
mengimplementasikan dialog berbasis bahasa alami perlu mempunyai
sebuah sistem penterjemah yang dapat menterjemahkan suatu kalimat
pada dua arah. Ketika manusia memberikan instruksi, sistem
penterjemah harus menerjemahkan instruksi tersebut ke dalam format
instruksi lain yang dapat dimengerti oleh komputer. Sebaliknya, ketika
komputer akan memberikan jawaban, sistem penterjemah harus
mampu menterjemahkan format instruksi komputer menjadi pesan
yang dimengerti oleh manusia.

Dari sisi pengguna, tentunya ia

menginginkan keluwesan yang sebesar-besarnya dalam memberikan


instruksi kepada komputer. Tetapi, dari sisi perancang sistem, semakin
luwes bahasa alami yang dikehendaki oleh pengguna, semakin rumit
pula sistem penterjemah yang harus disiapkan.
Tabel 3.2 Keuntungan dan kerugian penggunaan antarmuka berbasis bahasa alami.

4. Sistem Menu

25

Sistem menu merupakan pilihan yang tepat untuk menunjukkan


kemampuan dan fasilitas yang dimiliki oleh sebuah program aplikasi
kepada pengguna. Menu adalah daftar sejumlah pilihan dalam jumlah
terbatas, yang biasanya berupa suatu kalimat atau kumpulan beberapa
kata.

Ditinjau dari teknik penampilan pilihan-pilihan pada sebuah

sistem menu, dikenal dua jenis sistem menu:


a.

Sistem menu datar Dalam sistem menu datar, kemampuan dan


fasilitas yang dimiliki oleh suatu program aplikasi akan
ditampilkan secara lengkap, dan biasanya menggunakan kalimatkalimat yang cukup panjang.

b.

Sistem menu tarik (pulldown)


Sistem menu tarik (pulldown) yang berbasis pada struktur hirarki
pilihan (struktur
dasarnya

adalah

pohon
sistem

pilihan).
menu

Sebuah menu tarik pada


yang

pilihan-pilihannya

dikelompokkan menurut menurut kategori tertentu atau menurut


cara tertentu sehingga mereka membentuk semacam hirarki
pilihan.

Pada hirarki paling tinggi, pilihan-pilihan itu disebut

dengan pilihan/menu utama. Sebagian atau semua pilihan/menu


utama dapat mempunyai salah satu atau lebih subpilihan/submenu.
Sebuah subpilihan/submenu dari suatu pilihan/menu utama dapat
mempunyai satu atau labih sub-subpilihan, dan seterusnya.
Struktur ini membentuk semacam struktur pohon. Dalam sistem
menu datar, kemampuan dan fasilitas yang dimiliki oleh suatu

26

program aplikasi akan ditampilkan secara lengkap, dan biasanya


menggunakan kalimat-kalimat yang cukup panjang.
Tabel 3.3 Keuntungan dan kerugian Sistem menu tarik (pulldown).

5. Dialog Berbasis Pengisian Borang


Teknik dialog pengisian borang (form-filling dialogue) merupakan
suatu penerapan langsung dari aktifitas pengisian borang dalam
kehidupan sehari-hari dimana pengguna akan dihadapkan pada suatu
bentuk borang yang ada di layar komputer yang mereka gunakan.
Perlman membuat perbedaan antara menu dan borang.
a. Menu adalah dialog yang menampilkan sejumlah alternatif pilihan
yang pilihan-pilihan itu dapat dipilih pengguna dengan cara
tertentu pada setiap daur aktifitas.
b. Borang adalah tampilan dari sejumlah persyaratan (requirement)
yang menampilkan sejumlah opsion dan berbagai nilai para meter
yang telah ditentukan dan dintegrasikan ke dalam sebuah tampilan
pada layar.

27

Tabel 3.4 Keuntungan dan Kerugian Penggunaann Dialog Berbasis Pengisian Borang.

6. Antarmuka Berbasis Ikon


Antarmuka sering memanfaatkan simbol-simbol dan tanda-tanda ini
untuk memberitahukan pengguna akan kemampuan dan fasilitas yang
dimiliki oleh suatu program aplikasi.

Ragam dialog yang banyak

menggunakan simbol-simbol dan tanda-tanda untuk menunjukkan


suatu aktifitas tertentu disebut dengan antarmuka berbasis ikon (iconbased user interface).
Secara teknis, antarmuka berbasis ikon boleh dikatakan merupakan
variasi dari antarmuka berbasis menu. Setiap ikon menunjukkan satu
aktifitas

sementara

pada

system

menu,

sebuah

menu

juga

menunjukkan satu aktifitas. Perbedaannya terletak pada cara penyajian


pilihan itu. Pada system menu, pilihan aktifitas dinyatakan secara
tekstual, sementara pada antarmuka berbasis ikon, pilihan aktifitas
28

dinyatakan dengan suatu tanda atau symbol yang disebut pictogram


atau ikon.

7. Sistem Penjendelaan
Secara umum yang disebut dengan jendela (window) adalah bagian
dari layar yang digunakan untuk menampilkan suatu informasi.
Informasi disini dapat berupa informasi tekstual maupun grafis. Untuk
menunjukkan daerah yang digunakan untuk menampilkan suatu
informasi, biasanya daerah yang umumnya berupa persegi panjang
dibatasi dengan semacam garis pembatas dengan ketebalan tertentu.
Sistem penjendelaan adalah sistem antarmuka yang memungkinkan
pengguna untuk menampilkan berbagai informasi baik sendiri-sendiri
maupun secara bersama-sama ke dalam bagianbagian layar yang
tidak saling mempengaruhi.
8. Manipulasi Langsung
Karakteristik yang sangat penting dari ragam dialog ini adalah adanya
penyajian langsung suatu aktifitas oleh sistem kepada pengguna
sehingga aktifitas itu akan dikerjakan oleh sistem komputer ketika
pengguna memberikan instruksi lewat manipulasi langsung dari
semacam kenyataan maya (virtual reality) yang terpampang lewat
tampilan yang muncul di layar.
Tabel 3.5 Keuntungan dan Kerugian Dialog Berbasis Manipulasi Langsung

29

9. Antarmuka Berbasis Interaksi Grafis


Secara umum cukup sulit membedakan antarmuka berbasis manipulasi
langsung dengan antarmuka berbasis interaksi grafis. Pada programprogram

yang

berkemampuan

hypertext,

program

akan

memberitahupengguna bahwa pengguna dapat melakukan links ke teks


atau dokumen yang lain. Ketika kursor mouse berada pada teks yang
yang mempunyai link ke teks lain, maka bentuk kursor biasanya
berubah (umumnya berubah menjadi bentuk tangan menunjuk).
Keuntungan dan kerugian teknik antarmuka berbasis interaksi grafis
sama

dengan

keuntungan

dan

kerugian

teknik

antarmuka

menggunakan manipulasi langsung

30

BAB IV
METODE KERJA PRAKTIK

4.1 Waktu dan Tempat


Waktu pelaksanaan Kerja Praktik ini berjalan dengan baik dan lancar, lama
waktu pelaksanaan tepat 2 bulan terhitung dari tanggal 8 Oktober 2012 sampai
dengan 8 Desember 2012. Kerja Praktik (KP) kali ini bertempat di Lembaga
Penjaminan Mutu Pendidikan (LPMP) Provinsi Kalimantan Selatan dengan
menempati bagian PSI (Program dan Sistem Informasi).
4.2 Bentuk Kerja Praktik
Adapun bentuk Kerja Praktik yang dilakukan selama KP di LPMP
Kalimantan Selatan adalah mengerjakan pekerjaan kantor, yaitu membackup data
profil tenaga pendidik di Provinsi Kalimantan Selatan, mengumpulkan data hasil
UKG (Uji Kompetensi Guru) per-kabupaten se-Kalimantan Selatan, selain itu
membantu pekerjaan staf di bagian PSI (Program dan Sistem Informasi).
4.3 Prosedur Kerja
Kerja Praktik dilakukan dengan mengikuti aturan instansi tersebut. Setiap
hari mahasiswa KP melakukan kegiatannya sesuai dengan arahan dari atasan dan
pembimbing eksternal. Disini kami dilatih untuk bisa memahami dan mempelajari
bagaimana sistem informasi pada bagian PSI tersebut. Disini saya di ajarkan
untuk melakukan pembackupan data profil tenaga pendidik di Provinsi
Kalimantan Selatan. Pembackupan data dilakukan setelah data tenaga pendidik
dikelola oleh masing-masing sekolah di tiap kecamatan dan dikumpulkan per
31

kabupaten. Setelah data pendidik dikelola dan dikumpulkan kemudian diserahkan


ke LPMP tingkat provinsi.
BAB V
PELAKSANAAN KERJA PRAKTEK

5.1 Evaluasi Pelaksanaan Kerja Praktek


Seperti tujuan awalnya pelaksanaan kerja praktik yang berlangsung selama
2 bulan ini diarahkan agar mahasiswa mendapatkan pengalaman dalam dunia
kerja. Mahasiswa ditempatkan di bagian PSI, untuk membantu kegiatan
pembackupan data pendidik seluruh kabupaten di Provinsi Kalimantan Selatan
tahun 2012. Selain itu dalam pelaksanaannya mahasiswa juga membuat program
recovery di bagian PSI yang sebelumnya telah disediakan oleh LPMP Pusat.
Adapun kendala-kendala yang ditemukan selama pelaksanaan kerja
praktik adalah sebagai berikut:
1. Banyaknya data pendidik yang harus di backup.
2. Kesalahan dalam pembackupan data.
3. Kurangnya sarana dan prasarana yang digunakan untuk melakukan
pembackupan data sehingga waktu yang digunakan kurang efektif.
Berikut ini pemecahan masalah untuk mengatasi kendala-kendala tersebut,
yaitu :
1. Pemeriksaan data-data pada saat pembackupan data sebelum diserahkan
pada atasan.
2. Memberikan masukan kepada atasan agar menambahkan sarana dan
prasarana guna untuk menunjang pekerjaan tersebut.

32

5.2 Hasil Pengamatan


Sistem informasi data pendidik dan tenaga kependidikan merupakan
aplikasi yang sederhana. Aplikasi ini menggunakan bahasa pemrograman Delphi
dengan interface yang dirancang sesederhana mungkin agar mempermudah user
dalam pengggunaannya. Aplikasi dibuat untuk mempermudah pegawai dalam
melakukan penginputan dan penyimpanan data pendidik dan tenaga kependidikan.
5.2.1

Permasalahan
Kendala-kendala pada saat pembuatan program aplikasi data pendidik dan

tenaga kependidikan ini adalah :


(1) Penyesuaian program berbasis web yang harus dialih bahasa ke
pemrograman visual berbasis dekstop dengan menggunakan database
access.
5.2.2

Tujuan
Tujuan pembuatan aplikasi pendidik dan tenaga kependidikan ini adalah :
(1) Untuk membantu pegawai dalam pengarsipan data pendidik dan
tenaga kependidikan
(2) Untuk memudahkan pegawai dalam membuat laporan data pendidik
dan tenaga kependidikan
(3) Memudahkan dalam pencarian berkas data pendidik dan tenaga
kependidikan

5.2.3

Manfaat
Manfaat dari aplikasi data pendidik dan tenaga kependidikan
adalah :
(1) Membuat pencarian dan pendataan laporan pendidik dan tenaga
kependidikan menjadi lebih mudah.

33

(2) Apabila data pendidik dan tenaga kependidikan yang berupa lembar
koreksi data manual tersebut hilang, maka arsip masih terdapat di
dalam komputer.
5.2.4

Teknologi
Teknologi yang digunakan didalam pembuatan aplikasi pembukuan ini

adalah :
(1) MySQL
(2) Delphi XE
5.2.5

Teknik Pengumpulan Informasi


Dalam mengumpulkan informasi, metodologi yang digunakan adalah :

a) Wawancara
Wawancara
dengan

jalan

merupakan
mengadakan

suatu

teknik

komunikasi

pengumpulan

data

dengan sumber data.

Komunikasi tersebut dilakukan dengan dialog (Tanya jawab) secara lisan,


baik langsung ,maupun tidak langsung.
b) Observasi
Observasi adalah pengamatan langsung para pembuat keputusan
berikut lingkungan fisiknya dan pengamatan langsung suatu kegiatan yang
sedang berjalan.
5.2.6

Karakteristik User
User yang terlibat dan mempunyai hak akses untuk sistem informasi ini

adalah sebagai berikut:


User

Keterangan

34

Admi

Admin merupakan staf atau pegawai yang telah diberi

kepercayaan oleh pimpinan setempat serta


mempunyai hak lebih seperti untuk manajemen
data Pegawai
Tabel 5.1 User Sistem

5.2.7

Batasan User terhadap Aplikasi


Batasan Sistem pada Aplikasi Data Pendidik dan Tenaga
Kependidikan :
Admin
a) Login
b) Kelola data pendidik dan tenaga kependidikan
c) Pembuatan laporan

5.2.8

Fitur-Fitur Absensi Data Pendidik dan Tenaga Kependidikan


Fitur-fitur utama dari Aplikasi Data Pendidik dan Tenaga Kependidikan,

antara lain :
1. Aplikasi ini dapat mengelola data pendidik dan tenaga kependidikan.
2. Data pendidik dan tenaga kependidikan bisa dilihat secara keseluruhan
dalam bentuk laporan yang kemudian bisa dicetak.
3. Pencarian data pendidik dan tenaga kependidikan yang sudah disimpan.
4. Aplikasi ini dapat mengelola data pendidik dan tenaga kependidikan
(tambah, simpan, hapus, ubah).

35

BAB VI
PERANCANGAN DAN PEMBUATAN SISTEM

6.1 Deskripsi Sistem


Aplikasi Data Pendidik dan Tenaga Kependidikan pada Lembaga
Penjamin Mutu Pendidikan Kalimantan Selatan ini berguna untuk penyimpanan
data mengenai profil pendidik dan tenaga kependidikan. Aplikasi ini hanya dapat
digunakan oleh admin dan user. Untuk setiap data pendidik dan tenaga
kependidikan yang sudah mengisi lembar koreksi data, di inputkan kembali oleh
user terhadap aplikasi. User juga dapat melakukan pencetakan laporan data
pendidik dan tenaga kependidikan. Aplikasi data pendidik dan tenaga
kependidikan ini dibuat dengan menggunakan Delphi XE2 dan MySQL sebagai
databasenya.
6.2 Pembuatan Sistem
Berikut ini adalah hasil aplikasi yang dibuat menggunakan Delphi XE2 :
a) Form Login
Form Login ini berfungsi untuk memberikan batasan terhadap pengaksesan
menu utama.

Gambar 6.1. Form Login

36

Untuk source code bisa dilihat pada lampiran Coding pada Form Login.
b) Form Utama
Form Utama berfungsi sebagai navigasi untuk melakukan pemilihan form
satu ke form lainnya.

Gambar 6.2 Form Utama

Keterangan :
1) Menu Bar Master berfungsi untuk menampilkan Button Wilayah, Rumah
dan Pegawai
2) Menu Bar Laporan berfungsi menampilkan Button Pegawai untuk
mencetak laporan
3) Menu Bar Manage berfungsi menampilkan Button User untuk menambah
data user
4) Button Wilayah berfungsi untuk menampilkan Form Wilayah
5) Button Sekolah berfungsi untuk menampilkan Form Sekolah
6) Button PTK berfungsi untuk menampilkan Form Data Pendidik dan
Tenaga Kependidikan
Untuk Source Code bisa dilihat pada Lampiran Coding pada Form
Utama.
c) Form Wilayah
37

Form Wilayah ini berfungsi untuk melakukan penambahan, penyimpanan,


penghapusan dan pengeditan pada data wilayah.

Gambar 6.3. Form Wilayah

Untuk Source Code bisa dilihat pada Lampiran Coding Form Wilayah
Keterangan :
1) Pada form ini terdapat 3 panel, yaitu panel provinsi, kabupaten/kota,
2)
3)
4)
5)

kelurahan/kecamatan.
Button tambah berfungsi untuk menambahkan data PTN.
Button simpan berfungsi untuk menyimpan data yang sudah diinputkan.
Button hapus berfungsi untuk menghapus data.
Button ubah berfungsi untuk mengedit data apabila men double klik pada

datagrid.
6) Button batal berfungsi untuk membatalkan proses atau sebagai refresh.
d) Form Sekolah
Form Sekolah ini berfungsi untuk melakukan penambahan, penyimpanan,
penghapusan, pengeditan dan pencarian sesuai kategori yang dipilih pada data
sekolah.
38

Gambar 6.4. Form Sekolah

Untuk Source Code bisa dilihat pada Lampiran Coding pada Form
Sekolah.
e) Form Pegawai (PTK)
Form Pegawai ini memiliki dua tab, yaitu tab input data yang berfungsi
untuk melakukan penambahan, penyimpanan data pendidik dan tenaga
kependidikan dan tab data tabel yang berfungsi untuk melakukan pencarian sesuai
kategori yang dipilih pada data PTK.

39

Gambar 6.5. Form Pegawai Tab Input Data

Keterangan :
1)
2)
3)
4)

Tab input data berfungsi untuk menginputkan data.


Button tambah berfungsi untuk menambahkan data yang diinputkan.
Button simpan berfungsi untuk menyimpan data yang sudah diinputkan.
Button batal berfungsi untuk membatalkan proses atau sebagai refresh.

40

Gambar 6.6. Form Pegawai Tab Data Tabel

Keterangan :
1) Tab data tabel berfungsi untuk melihat hasil dari penyimpanan pada input
data.
2) Pencarian berfungsi untuk menampilkan data yang sudah disimpan
berdasarkan kategori yang dipilih.
3) Button hapus berfungsi untuk menghapus data PTK. Button hapus ini akan
berfungsi apabila user atau admin men double klik datagrid yang akan di
hapus.
4) Button edit berfungsi untuk mengedit data PTK. Button edit akan
berfungsi apabila user atau admin men double klik datagrid yang akan di
edit, kemudian muncul button oke, tidak, dan refresh.
Untuk Source Code bisa dilihat pada Lampiran Coding pada Form
Pegawai.

f) Form PraCetakLaporan
Form PraCetakLaporan ini berfungsi untuk melihat dan melakukan
pencetakan laporan berdasarkan data sekolah.

Gambar 6.7. Form PraCetakLaporan

Keterangan :

41

1) Saat form tampil, program meminta user atau admin memilih kategori data
sekolah mana yang akan dicetak.
Untuk Source Code bisa dilihat pada Lampiran Coding pada Form
PraCetakLaporan.
g) Form User
Form ini berfungsi untuk penambahan, penyimpanan, penghapusan,
pengeditan dan pencarian data user sesuai kategori yang dibuat oleh admin.

Gambar 6.8. Form User

Keterangan :
1) Pada tampilan form user, berfungsi untuk menambahkan user baru
yang dilakukan oleh admin.
2) Button tambah berfungsi untuk menambahkan user baru dengan
menginputkan username, password, dan nama.
42

3) Button simpan berfungsi untuk menyimpan data user baru setelah


semua data diisi dengan lengkap.
4) Button hapus berfungsi untuk menghapus data user, setelah admin
men double klik pada datagrid.
5) Button ubah berfungsi untuk mengedit data user yang telah
disimpan, apabila admin men double klik datagrid yang sudah
disimpan.
6) Button batal berfungsi untuk mengembalikan keadaan proses awal
pada tampilan form atau merefresh.
Untuk Source Code bisa dilihat pada lampiran Coding pada Form User.
h) Laporan
Form Laporan berfungsi untuk melakukan pencetakan laporan tentang data
pendidik dan tenaga kependidikan. Untuk laporan ini menggunakan QReport.

43

Gambar 6.9. Laporan

BAB VII
PENUTUP

7.1

Kesimpulan
Dari pembahasan di atas dapat disimpulkan bahwa dengan adanya

pembuatan aplikasi data pendidik dan tenaga kependidikan menjadi lebih baik.

44

Meskipun dengan kendala terhadap pengimplementasian, namun program ini juga


memilik kelebihan, yaitu:
(1) Membantu meringankan pekerjaan di tempat kerja praktik.
(2) Penyimpanan dan pengorganisasian data serta laporan lebih mudah
dan cepat.
(3) Menghasilkan aplikasi yang user friendly.
7.2

Saran
Tahap analisa dan desain sistem Aplikasi Data Pendidik dan Tenaga

Kependidikan sudah dilakukan sesuai kebutuhan instansi setempat. Namun karena


ketidaksempurnaan aplikasi ini, maka diperlukan tahap-tahap perbaikan agar
aplikasi menjadi sempurna.
DAFTAR PUSTAKA

Eko, R. (2000). Manajemen Sistem Informasi dan Teknologi Informasi. Jakarta:


PT Elex Media Komputindo.
Ichwan, M. (2011). Pemrograman Basis Data Delphi 7 dan MySQL. Bandung:
Informatika.
Jogiyanto, H. M. (2007). Model Kesuksesan Sistem Teknologi Informasi.
Yogyakarta: Andi.
Kadir, A. (2008). Dasar Perancangan dan Implementasi Database Relasional.
Yogyakarta: Penerbit ANDI.
Marlinda, L. (2004). Sistem Basis Data. Yogyakarta: Andi.
Sutanta, E. (2003). Sistem Informasi Manajemen (Edisi pertama ed.). Yogyakarta:
Graha Ilmu.
Sutedjo, B. (2002). Perencanaan dan Pembangunan Sistem Informasi.
Yogyakarta: Andi.

45

LAMPIRAN

Form Login
procedure TF_Login.bt_batalClick(Sender: TObject);
begin
e_username.Clear;
e_password.Clear;
e_username.SetFocus;
end;
procedure TF_Login.bt_loginClick(Sender: TObject);
begin
if ((e_username.Text='admin') or (e_username.Text='Admin'))
and
((e_password.Text='admin')
or
(e_password.Text='Admin')) then
begin
Application.MessageBox('Selamat Datang Admin','Information');
F_Login.Hide;
F_Utama.Show;
end else
begin
dm.execSQL(dm.AQPublic,'select * from t_user where
username='+QuotedStr(e_username.Text)+'
and
password='+QuotedStr(e_password.Text));
if dm.AQPublic.IsEmpty then
begin
Application.MessageBox('Username atau Password
Salah','Information');
bt_batalClick(self);
end else
begin
Application.MessageBox('Selamat Datang di Aplikasi Data
Pendidik dan Tenaga Kependidikan','Information');
F_Login.Hide;
F_Utama.Show;
F_Utama.bt_user.Enabled:=false;
end;
end;
end;
procedure TF_Login.e_passwordKeyPress(Sender: TObject; var Key:
Char);
begin
if Key=#13 then
bt_loginClick(self);
end;
end.

Form Utama
procedure tutupForm;
begin
f_wilayah.close;

46

f_sekolah.close;
f_pegawai.close;
F_PraCetakLaporan.Close;
F_User.Close;
end;
procedure TF_Utama.bt_userClick(Sender: TObject);
begin
tutupForm;
F_User.show;
end;
procedure TF_Utama.FormClose(Sender:
TCloseAction);
begin
Application.Terminate;
end;

TObject;

var

Action:

procedure TF_Utama.sBitBtn10Click(Sender: TObject);


begin
tutupForm;
F_PraCetakLaporan.show;
end;
procedure TF_Utama.sBitBtn1Click(Sender: TObject);
begin
tutupForm;
F_Wilayah.Show;
end;
procedure TF_Utama.sBitBtn2Click(Sender: TObject);
begin
tutupForm;
F_Sekolah.Show;
end;
procedure TF_Utama.sBitBtn3Click(Sender: TObject);
begin
tutupForm;
F_Pegawai.show;
end;
end.

Form Wilayah
procedure awalprovinsi;
begin
with F_Wilayah do
begin
e_idprovinsi.Clear;
e_provinsi.Clear;
gb_input1.Enabled:=false;
bt_tambah1.Enabled:=true;
bt_simpan1.Enabled:=false;
bt_hapus1.Enabled:=false;
bt_ubah1.Enabled:=false;
e_idprovinsi.Enabled:=true;
end;
end;

47

procedure awalkabupaten;
begin
with F_Wilayah do
begin
e_idkabupatenkota.Clear;
e_kabupatenkota.Clear;
cb_provinsi.ItemIndex:=-1;
gb_input2.Enabled:=false;
bt_tambah2.Enabled:=true;
bt_simpan2.Enabled:=false;
bt_hapus2.Enabled:=false;
bt_ubah2.Enabled:=false;
e_idkabupatenkota.Enabled:=true;
end;
end;
procedure awalkelurahan;
begin
with F_Wilayah do
begin
e_idkelurahankecamatan.Clear;
e_kelurahankecamatan.Clear;
cb_kabupatenkota.ItemIndex:=-1;
gb_input3.Enabled:=false;
bt_tambah3.Enabled:=true;
bt_simpan3.Enabled:=false;
bt_hapus3.Enabled:=false;
bt_ubah3.Enabled:=false;
e_idkelurahankecamatan.Enabled:=true;
dm.execSQL(dm.AQKelurahan,'select
kel.id_kelurahan_kecamatan,
kel.kelurahan_kecamatan,kab.kabupaten_kota
from
t_kelurahan_kecamatan as kel, t_kabupaten_kota as kab
where kel.id_kabupaten_kota=kab.id_kabupaten_kota');
end;
end;
procedure isicb;
var i:integer;
begin
F_Wilayah.cb_provinsi.Clear;
F_Wilayah.cb_kabupatenkota.Clear;
DM.execSQL(DM.AQCB,'select provinsi from t_provinsi');
DM.AQCB.First;
for i:=1 to dm.AQCB.RecordCount do
begin
F_Wilayah.cb_provinsi.Items.Add(DM.AQCB.Fields[0].AsString);
DM.AQCB.Next;
end;
DM.execSQL(DM.AQCB,'select
kabupaten_kota
from
t_kabupaten_kota');
DM.AQCB.First;
for i:=1 to dm.AQCB.RecordCount do
begin
F_Wilayah.cb_kabupatenkota.Items.Add(DM.AQCB.Fields[0].AsSt
ring);
DM.AQCB.Next;
end;
end;

48

procedure refreshtabel;
begin
with dm do
begin
dm.execSQL(DM.AQProvinsi,'select * from t_provinsi');
dm.execSQL(DM.AQKabupaten,'select
kbp.id_kabupaten_kota,kbp.kabupaten_kota,prov.provinsi
from t_kabupaten_kota as kbp, t_provinsi as prov where
kbp.id_provinsi=prov.id_provinsi');
dm.execSQL(DM.AQKelurahan,'select
kel.id_kelurahan_kecamatan,
kel.kelurahan_kecamatan,kab.kabupaten_kota
from
t_kelurahan_kecamatan as kel, t_kabupaten_kota as kab
where kel.id_kabupaten_kota=kab.id_kabupaten_kota');
end;
end;
procedure TF_Wilayah.bt_batal1Click(Sender: TObject);
begin
awalprovinsi;
refreshtabel;
isicb;
end;
procedure TF_Wilayah.bt_batal2Click(Sender: TObject);
begin
awalkabupaten;
refreshtabel;
isicb;
end;
procedure TF_Wilayah.bt_batal3Click(Sender: TObject);
begin
awalkelurahan;
end;
procedure TF_Wilayah.bt_hapus1Click(Sender: TObject);
begin
if MessageDlg('Anda yakin ingin menghapus data
ini?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
begin
DM.executeSQL(DM.AQProvinsi,'delete from t_provinsi where
id_provinsi='+QuotedStr(e_idprovinsi.Text));
bt_batal1Click(self);
Application.MessageBox('Data berhasil dihapus','Information');
end;
end;
procedure TF_Wilayah.bt_hapus2Click(Sender: TObject);
begin
if MessageDlg('Anda yakin ingin menghapus data
ini?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
begin
DM.executeSQL(DM.AQKabupaten,'delete
from
t_kabupaten_kota
where
id_kabupaten_kota='+QuotedStr(e_idkabupatenkota.Text));
bt_batal2Click(self);
Application.MessageBox('Data berhasil dihapus','Information');
end;
end;
procedure TF_Wilayah.bt_hapus3Click(Sender: TObject);

49

begin
if MessageDlg('Anda yakin ingin menghapus data
ini?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
begin
DM.executeSQL(DM.AQKelurahan,'delete
from
t_kelurahan_kecamatan
where
id_kelurahan_kecamatan='+QuotedStr(e_idkelurahankecam
atan.Text));
awalkelurahan;
Application.MessageBox('Data berhasil dihapus','Information');
end;
end;
procedure TF_Wilayah.bt_simpan1Click(Sender: TObject);
var query : string;
begin
if e_idprovinsi.Text='' then
begin
Application.MessageBox('Id Provinsi Kosong','Information');
e_idprovinsi.SetFocus;
end else
if e_provinsi.Text='' then
begin
Application.MessageBox('Provinsi Kosong','Information');
e_provinsi.SetFocus;
end else
begin
query:='insert
into
t_provinsi
values('+QuotedStr(e_idprovinsi.Text)
+','+QuotedStr(e_provinsi.Text)+')';
DM.insertdata(query); //untuk input data
bt_batal1Click(self);
Application.MessageBox('Data
berhasil
disimpan','Information');
end;
end;
procedure TF_Wilayah.bt_simpan2Click(Sender: TObject);
var query,idprovinsi : string;
begin
if e_idkabupatenkota.Text='' then
begin
Application.MessageBox('Id
Kabupaten
/
Kota
Kosong','Information');
e_idkabupatenkota.SetFocus;
end else
if e_kabupatenkota.Text='' then
begin
Application.MessageBox('Kabupaten
/
Kota
Kosong','Information');
e_kabupatenkota.SetFocus;
end else
if cb_provinsi.ItemIndex=-1 then
begin
Application.MessageBox('Pilih Provinsi','Information');
cb_provinsi.SetFocus;
end else
begin
DM.execSQL(DM.AQPublic,'select * from t_kabupaten_kota
where
id_kabupaten_kota='+QuotedStr(e_idkabupatenkota.Text));
if dm.AQPublic.RecordCount<>0 then
begin

50

Application.MessageBox('Id Kabupaten Kota sudah


ada','Information');
e_idkabupatenkota.Clear; e_idkabupatenkota.SetFocus;
end else
begin
DM.execSQL(DM.AQPublic,'select * from t_provinsi where
provinsi='+QuotedStr(cb_provinsi.Text));
idprovinsi := DM.AQPublic.Fields[0].AsString;
query:='insert
into
t_kabupaten_kota
values('+QuotedStr(e_idkabupatenkota.Text)
+','+QuotedStr(e_kabupatenkota.Text)
+','+QuotedStr(idprovinsi)+')';
DM.insertdata(query);
bt_batal2Click(self);
Application.MessageBox('Data
berhasil
disimpan','Information');
end;
end;
end;
procedure TF_Wilayah.bt_simpan3Click(Sender: TObject);
var query,idkabupaten : string;
begin
if e_idkelurahankecamatan.Text='' then
begin
Application.MessageBox('Id Kelurahan / Kecamatan
Kosong','Information');
e_idkelurahankecamatan.SetFocus;
end else
if e_kelurahankecamatan.Text='' then
begin
Application.MessageBox('Kelurahan
/
Kecamatan
Kosong','Information');
e_kelurahankecamatan.SetFocus;
end else
if cb_kabupatenkota.ItemIndex=-1 then
begin
Application.MessageBox('Pilih Kabupaten / Kota','Information');
cb_provinsi.SetFocus;
end else
begin
DM.execSQL(DM.AQPublic,'select * from t_kelurahan_kecamatan
where
id_kelurahan_kecamatan='+QuotedStr(e_idkelurahankecam
atan.Text));
if dm.AQPublic.RecordCount<>0 then
begin
Application.MessageBox('Id Kelurahan / Kecamatan sudah
ada','Information');
e_idkelurahankecamatan.Clear;
e_idkelurahankecamatan.SetFocus;
end else
begin
DM.execSQL(DM.AQPublic,'select * from t_kabupaten_kota
where
kabupaten_kota='+QuotedStr(cb_kabupatenkota.Text));
idkabupaten := DM.AQPublic.Fields[0].AsString;
query:='insert
into
t_kelurahan_kecamatan
values('+QuotedStr(e_idkelurahankecamatan.Text)
+','+QuotedStr(e_kelurahankecamatan.Text)
+','+QuotedStr(idkabupaten)+')';
DM.insertdata(query);
awalkelurahan;

51

Application.MessageBox('Data
disimpan','Information');
end;
end;
end;

berhasil

procedure TF_Wilayah.bt_tambah1Click(Sender: TObject);


begin
gb_input1.Enabled:=true;
e_idprovinsi.Enabled:=true;
e_idprovinsi.SetFocus;
bt_simpan1.Enabled:=true;
bt_hapus1.Enabled:=false;
bt_ubah1.Enabled:=false;
bt_tambah1.Enabled:=false;
end;
procedure TF_Wilayah.bt_tambah2Click(Sender: TObject);
begin
gb_input2.Enabled:=true;
e_idkabupatenkota.Enabled:=true;
e_idkabupatenkota.SetFocus;
bt_simpan2.Enabled:=true;
bt_hapus2.Enabled:=false;
bt_ubah2.Enabled:=false;
bt_tambah2.Enabled:=false;
end;
procedure TF_Wilayah.bt_tambah3Click(Sender: TObject);
begin
gb_input3.Enabled:=true;
e_idkelurahankecamatan.Enabled:=true;
e_idkelurahankecamatan.SetFocus;
bt_simpan3.Enabled:=true;
bt_hapus3.Enabled:=false;
bt_ubah3.Enabled:=false;
bt_tambah3.Enabled:=false;
end;
procedure TF_Wilayah.bt_ubah1Click(Sender: TObject);
begin
DM.executeSQL(DM.AQProvinsi,'update t_provinsi set
provinsi='+QuotedStr(e_provinsi.Text)+'
where
id_provinsi='+QuotedStr(e_idprovinsi.Text));
bt_batal1Click(self);
Application.MessageBox('Data berhasil diubah','Information');
end;
procedure TF_Wilayah.bt_ubah2Click(Sender: TObject);
var idprovinsi : string;
begin
DM.execSQL(DM.AQPublic,'select * from t_provinsi
provinsi='+QuotedStr(cb_provinsi.Text));
idprovinsi := DM.AQPublic.Fields[0].AsString;

where

DM.executeSQL(DM.AQKabupaten,'update t_kabupaten_kota set


kabupaten_kota='+QuotedStr(e_kabupatenkota.Text)+',
id_provinsi='+QuotedStr(idprovinsi)+'
where
id_kabupaten_kota='+QuotedStr(e_idkabupatenkota.Text));
bt_batal2Click(self);
Application.MessageBox('Data berhasil diubah','Information');
end;

52

procedure TF_Wilayah.bt_ubah3Click(Sender: TObject);


var idkabupatenkota : string;
begin
DM.execSQL(DM.AQPublic,'select * from t_kabupaten_kota where
kabupaten_kota='+QuotedStr(cb_kabupatenkota.Text));
idkabupatenkota := DM.AQPublic.Fields[0].AsString;
DM.executeSQL(DM.AQKelurahan,'update
t_kelurahan_kecamatan
set
kelurahan_kecamatan='+QuotedStr(e_kelurahankecamatan.
Text)+', id_kabupaten_kota='+QuotedStr(idkabupatenkota)
+'
where
id_kelurahan_kecamatan='+QuotedStr(e_idkelurahankecam
atan.Text));
awalkelurahan;
Application.MessageBox('Data berhasil diubah','Information');
end;
procedure TF_Wilayah.DBGrid1DblClick(Sender: TObject);
begin
e_idprovinsi.Text:=DM.AQProvinsi.Fields[0].AsString;
e_provinsi.Text:=DM.AQProvinsi.Fields[1].AsString;
gb_input1.Enabled:=true;
e_idprovinsi.Enabled:=false;
bt_tambah1.Enabled:=false;
bt_simpan1.Enabled:=false;
bt_hapus1.Enabled:=true;
bt_ubah1.Enabled:=true;
end;
procedure TF_Wilayah.DBGrid2DblClick(Sender: TObject);
begin
e_idkabupatenkota.Text:=DM.AQKabupaten.Fields[0].AsString;
e_kabupatenkota.Text:=DM.AQKabupaten.Fields[1].AsString;
cb_provinsi.ItemIndex:=cb_provinsi.Items.IndexOf(DM.AQKabupa
ten.Fields[2].AsString);
gb_input2.Enabled:=true;
e_idkabupatenkota.Enabled:=false;
bt_tambah2.Enabled:=false;
bt_simpan2.Enabled:=false;
bt_hapus2.Enabled:=true;
bt_ubah2.Enabled:=true;
end;
procedure TF_Wilayah.DBGrid3DblClick(Sender: TObject);
begin
e_idkelurahankecamatan.Text:=DM.AQKelurahan.Fields[0].AsStrin
g;
e_kelurahankecamatan.Text:=DM.AQKelurahan.Fields[1].AsString
;
cb_kabupatenkota.ItemIndex:=cb_kabupatenkota.Items.IndexOf(
DM.AQKelurahan.Fields[2].AsString);
gb_input3.Enabled:=true;
e_idkelurahankecamatan.Enabled:=false;
bt_tambah3.Enabled:=false;
bt_simpan3.Enabled:=false;
bt_hapus3.Enabled:=true;
bt_ubah3.Enabled:=true;
end;

53

procedure TF_Wilayah.FormShow(Sender: TObject);


begin
awalprovinsi;
awalkabupaten;
awalkelurahan;
refreshtabel;
isicb
end;
end.

Form Sekolah
procedure isicbprovinsi;
var i:integer;
begin
F_Sekolah.cb_provinsi.Clear;
DM.execSQL(DM.AQCB,'select * from t_provinsi');
DM.AQCB.First;
for i:=1 to dm.AQCB.RecordCount do
begin
F_Sekolah.cb_provinsi.Items.Add(DM.AQCB.Fields[0].AsString+'
- '+dm.AQCB.Fields[1].AsString);
DM.AQCB.Next;
end;
end;
procedure isicbkabupaten;
var i,indeks:integer;
id : string;
begin
F_Sekolah.cb_kabupatenkota.Clear;
indeks:=Pos(' - ',F_Sekolah.cb_provinsi.Text);
id:=Copy(F_Sekolah.cb_provinsi.Text,0,indeks-1);
DM.execSQL(DM.AQCB,'select * from t_kabupaten_kota where
id_provinsi='+QuotedStr(id));
DM.AQCB.First;
for i:=1 to dm.AQCB.RecordCount do
begin
F_Sekolah.cb_kabupatenkota.Items.Add(DM.AQCB.Fields[0].AsSt
ring+' - '+dm.AQCB.Fields[1].AsString);
DM.AQCB.Next;
end;
end;
procedure isicbkelurahan;
var i,indeks:integer;
id : string;
begin
F_Sekolah.cb_kelurahankecamatan.Clear;
indeks:=Pos(' - ',F_Sekolah.cb_kabupatenkota.Text);
id:=Copy(F_Sekolah.cb_kabupatenkota.Text,0,indeks-1);
DM.execSQL(DM.AQCB,'select * from t_kelurahan_kecamatan
where id_kabupaten_kota='+QuotedStr(id));
DM.AQCB.First;
for i:=1 to dm.AQCB.RecordCount do
begin
F_Sekolah.cb_kelurahankecamatan.Items.Add(DM.AQCB.Fields[0
].AsString+' - '+dm.AQCB.Fields[1].AsString);

54

DM.AQCB.Next;
end;
end;
procedure TF_Sekolah.bt_batalClick(Sender: TObject);
begin
awal;
isicbprovinsi;
end;
procedure TF_Sekolah.bt_hapusClick(Sender: TObject);
begin
if MessageDlg('Anda yakin ingin menghapus data
ini?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
begin
DM.executeSQL(DM.AQSekolah,'delete from t_sekolah where
nss='+QuotedStr(e_nss.Text));
awal;
Application.MessageBox('Data berhasil dihapus','Information');
end;
end;
procedure TF_Sekolah.bt_simpanClick(Sender: TObject);
var query,idkelurahan : string;
indeks : integer;
begin
if e_nss.Text='' then
begin
Application.MessageBox('NSS Kosong','Information');
e_nss.SetFocus;
end else
if e_nama.Text='' then
begin
Application.MessageBox('Nama Kosong','Information');
e_nama.SetFocus;
end else
if m_alamat.Lines.Text='' then
begin
Application.MessageBox('Alamat Kosong','Information');
m_alamat.SetFocus;
end else
if cb_provinsi.ItemIndex=-1 then
begin
Application.MessageBox('Pilih Provinsi','Information');
cb_provinsi.SetFocus;
end else
if cb_kabupatenkota.ItemIndex=-1 then
begin
Application.MessageBox('Pilih Kabupaten / Kota','Information');
cb_kabupatenkota.SetFocus;
end else
if cb_kelurahankecamatan.ItemIndex=-1 then
begin
Application.MessageBox('Pilih
Kelurahan
/
Kecamatan','Information');
cb_kelurahankecamatan.SetFocus;
end else
begin
DM.execSQL(DM.AQPublic,'select * from t_sekolah where
nss='+QuotedStr(e_nss.Text));
if dm.AQPublic.RecordCount<>0 then
begin
Application.MessageBox('NSS sudah ada','Information');

55

e_nss.Clear; e_nss.SetFocus;
end else
begin
indeks:=Pos(' - ',cb_kelurahankecamatan.Text);
idkelurahan:=Copy(cb_kelurahankecamatan.Text,0,indeks-1);
query:='insert into t_sekolah values('+QuotedStr(e_nss.Text)
+','+QuotedStr(e_nama.Text)
+','+QuotedStr(m_alamat.Lines.Text)
+','+QuotedStr(idkelurahan)+')';
DM.insertdata(query);
awal;
Application.MessageBox('Data
berhasil
disimpan','Information');
end;
end;
end;
procedure TF_Sekolah.bt_tambahClick(Sender: TObject);
begin
gb_input.Enabled:=true;
e_nss.Enabled:=true;
e_nss.SetFocus;
bt_simpan.Enabled:=true;
bt_hapus.Enabled:=false;
bt_ubah.Enabled:=false;
bt_tambah.Enabled:=false;
end;
procedure TF_Sekolah.bt_ubahClick(Sender: TObject);
var indeks : integer;
idkelurahan : string;
begin
if cb_kelurahankecamatan.ItemIndex=-1 then
begin
Application.MessageBox('Data Kelurahan / Kecamatan
Kosong','Information');
end else
begin
indeks:=Pos(' - ',cb_kelurahankecamatan.Text);
idkelurahan:=Copy(cb_kelurahankecamatan.Text,0,indeks-1);
DM.executeSQL(DM.AQSekolah,'update t_sekolah set
nama='+QuotedStr(e_nama.Text)+',
alamat='+QuotedStr(m_alamat.Lines.Text)+',
id_kelurahan_kecamatan='+QuotedStr(idkelurahan)+' where
nss='+QuotedStr(e_nss.Text));
awal;
Application.MessageBox('Data berhasil diubah','Information');
end;
end;
procedure TF_Sekolah.cb_kabupatenkotaChange(Sender: TObject);
begin
if cb_kabupatenkota.ItemIndex=-1 then
begin
cb_kelurahankecamatan.Clear;
end else isicbkelurahan;
end;
procedure TF_Sekolah.cb_provinsiChange(Sender: TObject);
begin
if cb_provinsi.ItemIndex=-1 then
begin
cb_provinsi.Clear;

56

cb_kabupatenkota.Clear;
end else isicbkabupaten;
end;
procedure TF_Sekolah.DBGrid1DblClick(Sender: TObject);
begin
e_nss.Text:=DM.AQSekolah.Fields[0].AsString;
e_nama.Text:=DM.AQSekolah.Fields[1].AsString;
m_alamat.Lines.Text:=DM.AQSekolah.Fields[2].AsString;
gb_input.Enabled:=true;
e_nss.Enabled:=false;
bt_tambah.Enabled:=false;
bt_simpan.Enabled:=false;
bt_hapus.Enabled:=true;
bt_ubah.Enabled:=true;
end;
procedure TF_Sekolah.e_cariChange(Sender: TObject);
var query:string;
begin
if cb_cari.ItemIndex=-1 then
begin
Application.MessageBox('Pilih Kategori Pencarian','Information');
cb_cari.SetFocus;
end else
if cb_cari.ItemIndex=0 then
begin
query:='select
*
from
t_sekolah
where
nss
like
"%'+e_cari.Text+'%"';
DM.execSQL(DM.AQSekolah,query);
end else
if cb_cari.ItemIndex=1 then
begin
query:='select * from t_sekolah where nama like
"%'+e_cari.Text+'%"';
DM.execSQL(DM.AQSekolah,query);
end;
end;
procedure TF_Sekolah.FormShow(Sender: TObject);
begin
awal;
isicbprovinsi;
end;
end.

Form Pegawai (PTK)


procedure awal;
begin
with F_Pegawai do
begin
cb_sekolah.ItemIndex:=-1;
e_nuptk.Clear;
e_namalengkap.Clear;
cb_jeniskelamin.ItemIndex:=-1;
e_nip.Clear;
e_tempatlahir.Clear;
e_tanggallahir.Clear;

57

e_noktp.Clear;
cb_agama.ItemIndex:=-1;
cb_statuskawin.ItemIndex:=-1;
e_jumlahanak.Clear;
cb_tugaspokok.ItemIndex:=-1;
m_alamatrumah.Lines.Clear;
e_telp.Clear;
e_tmtpns.Clear;
e_pangkatgolongan.Clear;
e_tmtgolongan.Clear;
e_tmtpendidik.Clear;
cb_statuskepegawaianguru.ItemIndex:=-1;
cb_jenisguru.ItemIndex:=-1;
e_jumlahjam.Clear;
e_tmtdisekolahguru.Clear;
cb_jabatanutama.ItemIndex:=-1;
e_tmtdisekolahformal.Clear;
e_tmtdisekolahkepalasekolah.Clear;
cb_status.ItemIndex:=-1;
cb_statuskepegawaianpengawassekolah.ItemIndex:=-1;
cb_jabatanutamanonformal.ItemIndex:=-1;
cb_statusnonformal.ItemIndex:=-1;
e_bidangyangdiajarkan.Clear;
gb_guru.Enabled:=false;
gb_formal.Enabled:=false;
gb_nonformal.Enabled:=false;
gb_input.Enabled:=false;
bt_tambah.Enabled:=true;
bt_simpan.Enabled:=false;
e_nuptk.Enabled:=true;
dm.execSQL(DM.AQPegawai,'select * from t_pegawai');
end;
end;
function cekKondisi:boolean;
var cek : boolean;
begin
cek:=true;
with F_Pegawai do
begin
if cb_sekolah.ItemIndex=-1 then
begin
Application.MessageBox('Data Sekolah Kosong','Information');
cb_sekolah.SetFocus; cek:=false;
end else
if e_nuptk.Text='' then
begin
Application.MessageBox('Data NUPTK Kosong','Information');
e_nuptk.SetFocus; cek:=false;
end else
if e_namalengkap.Text='' then
begin
Application.MessageBox('Data Nama Lengkap
Kosong','Information'); e_namalengkap.SetFocus; cek:=false;
end else
if cb_jeniskelamin.ItemIndex=-1 then
begin

58

Application.MessageBox('Data Jenis Kelamin


Kosong','Information'); cb_jeniskelamin.SetFocus; cek:=false;
end else
if e_nip.Text='' then
begin
Application.MessageBox('Data NIP/NIGB/NIK/NIY/NIGK
Kosong','Information'); e_nip.SetFocus; cek:=false;
end else
if e_tempatlahir.Text='' then
begin
Application.MessageBox('Data Tempat Lahir
Kosong','Information'); e_tempatlahir.SetFocus; cek:=false;
end else
if e_tanggallahir.Text=' / / ' then
begin
Application.MessageBox('Data Tanggal Lahir
Kosong','Information'); e_tanggallahir.SetFocus; cek:=false;
end else
if e_noktp.Text='' then
begin
Application.MessageBox('Data No KTP Lahir
Kosong','Information'); e_noktp.SetFocus; cek:=false;
end else
if cb_agama.ItemIndex=-1 then
begin
Application.MessageBox('Data Agama Kosong','Information');
cb_agama.SetFocus; cek:=false;
end else
if cb_statuskawin.ItemIndex=-1 then
begin
Application.MessageBox('Data Status Kawin
Kosong','Information'); cb_statuskawin.SetFocus; cek:=false;
end else
if e_jumlahanak.Text='' then
begin
Application.MessageBox('Data Jumlah Anak
Kosong','Information'); e_jumlahanak.SetFocus; cek:=false;
end else
if cb_tugaspokok.ItemIndex=-1 then
begin
Application.MessageBox('Data Tugas Pokok
Kosong','Information'); e_tanggallahir.SetFocus; cek:=false;
end else
if m_alamatrumah.Lines.Text='' then
begin
Application.MessageBox('Data Alamat Rumah
Kosong','Information'); e_tanggallahir.SetFocus; cek:=false;
end else
if e_telp.Text='' then
begin
Application.MessageBox('Data Telp Kosong','Information');
e_telp.SetFocus; cek:=false;
end else
if cb_tugaspokok.ItemIndex=0 then
begin
if cb_statuskepegawaianguru.ItemIndex=-1 then
begin
Application.MessageBox('Data Status Kepegawaian Jika Guru
Kosong','Information'); cb_statuskepegawaianguru.SetFocus;
cek:=false;
end else
if cb_jenisguru.ItemIndex=-1 then
begin

59

Application.MessageBox('Data Jenis Guru


Kosong','Information'); cb_jenisguru.SetFocus; cek:=false;
end else
if e_jumlahjam.Text='' then
begin
Application.MessageBox('Data Jumlah Jam
Kosong','Information'); e_jumlahjam.SetFocus; cek:=false;
end else
if e_tmtdisekolahguru.Text=' / / ' then
begin
Application.MessageBox('TMT Di Sekolah Guru
Kosong','Information');
e_tmtdisekolahguru.SetFocus;
cek:=false;
end;
end else
if cb_tugaspokok.ItemIndex=1 then
begin
if cb_jabatanutama.ItemIndex=-1 then
begin
Application.MessageBox('Data Jabatan Utama
Kosong','Information');
cb_jabatanutama.SetFocus;
cek:=false;
end else
if e_tmtdisekolahformal.Text=' / / ' then
begin
Application.MessageBox('Data TMT Di Sekolah
Kosong','Information');
e_tmtdisekolahformal.SetFocus;
cek:=false;
end else
if
(cb_jabatanutama.ItemIndex=0)
and
(e_tmtdisekolahkepalasekolah.Text=' / / ') then
begin
Application.MessageBox('Data TMT Di Sekolah Kepala
Sekolah
Kosong','Information');
e_tmtdisekolahkepalasekolah.SetFocus; cek:=false;
end else
if
(cb_jabatanutama.ItemIndex=10)
and
(cb_status.ItemIndex=-1) then
begin
Application.MessageBox('Data Status Kosong','Information');
cb_status.SetFocus; cek:=false;
end else
if
(cb_jabatanutama.ItemIndex=10)
and
(cb_statuskepegawaianpengawassekolah.ItemIndex=-1)
then
begin
Application.MessageBox('Data Status Kepegawaian
Pengawas
Sekolah
Kosong','Information');
cb_statuskepegawaianpengawassekolah.SetFocus;
cek:=false;
end;
end else
if cb_tugaspokok.ItemIndex=2 then
begin
if cb_jabatanutamanonformal.ItemIndex=-1 then
begin
Application.MessageBox('Data Jabatan Utama
Kosong','Information'); cb_jabatanutamanonformal.SetFocus;
cek:=false;
end else
if cb_statusnonformal.ItemIndex=-1 then
begin
Application.MessageBox('Data Status Kosong','Information');

60

cb_statusnonformal.SetFocus; cek:=false;
end else
if e_bidangyangdiajarkan.Text='' then
begin
Application.MessageBox('Data Bidang yang diajarkan
Kosong','Information');
e_bidangyangdiajarkan.SetFocus;
cek:=false;
end;
end;
end;
result:=cek;
end;
procedure isicbsekolah;
var i : integer;
begin
F_Pegawai.cb_sekolah.Clear;
DM.execSQL(DM.AQCB,'select * from t_sekolah');
DM.AQCB.First;
for i:=1 to dm.AQCB.RecordCount do
begin
F_Pegawai.cb_sekolah.Items.Add(DM.AQCB.Fields[0].AsString+'
- '+dm.AQCB.Fields[1].AsString);
DM.AQCB.Next;
end;
end;
procedure TF_Pegawai.bt_batalClick(Sender: TObject);
begin
awal;
isicbsekolah;
end;
procedure TF_Pegawai.bt_simpanClick(Sender: TObject);
var query,ttl,nss : string;
cek : boolean;
indeks : integer;
begin
cek :=cekKondisi;
if cek then
begin
DM.execSQL(DM.AQPublic,'select * from t_pegawai where
nuptk='+QuotedStr(e_nuptk.Text));
if dm.AQPublic.RecordCount<>0 then
begin
Application.MessageBox('NUPTK sudah ada','Information');
e_nuptk.Clear; e_nuptk.SetFocus;
end else
begin
ttl:=e_tempatlahir.Text+', '+e_tanggallahir.Text;
indeks:=Pos(' - ',cb_sekolah.Text);
nss:=Copy(cb_sekolah.Text,0,indeks-1);
query:='insert
into
t_pegawai
values('+QuotedStr(e_nuptk.Text)
+','+QuotedStr(e_namalengkap.Text)+','+QuotedStr(nss)
+','+QuotedStr(cb_jeniskelamin.Text)
+','+QuotedStr(e_nip.Text)+
','+QuotedStr(ttl)+','+QuotedStr(e_noktp.Text)
+','+QuotedStr(cb_agama.Text)
+','+QuotedStr(cb_statuskawin.Text)
+','+QuotedStr(e_jumlahanak.Text)
+','+QuotedStr(cb_tugaspokok.Text)

61

+','+QuotedStr(m_alamatrumah.Lines.Text)
+','+QuotedStr(e_telp.Text)+')';
DM.insertdata(query);
if e_pangkatgolongan.Text<>'' then
begin
query:='insert
into
t_detailpns
values('+QuotedStr(e_nuptk.Text)+','+QuotedStr(e_nip.Text)
+','+QuotedStr(e_tmtpns.Text)
+','+QuotedStr(e_pangkatgolongan.Text)
+','+QuotedStr(e_tmtgolongan.Text)
+','+QuotedStr(e_tmtpendidik.Text)+')';
DM.insertdata(query);
end;
if cb_tugaspokok.ItemIndex=0 then
begin
query:='insert
into
t_detailguru
values('+QuotedStr(e_nuptk.Text)
+','+QuotedStr(cb_statuskepegawaianguru.Text)
+','+QuotedStr(cb_jenisguru.Text)
+','+QuotedStr(e_jumlahjam.Text)
+','+QuotedStr(e_tmtdisekolahguru.Text)+')';
DM.insertdata(query);
end;
if cb_tugaspokok.ItemIndex=1 then
begin
query:='insert
into
values('+QuotedStr(e_nuptk.Text)
+','+QuotedStr(cb_jabatanutama.Text)
+','+QuotedStr(e_tmtdisekolahformal.Text)+')';
DM.insertdata(query);
end;

t_detailtkf

if cb_jabatanutama.ItemIndex=0 then
begin
query:='insert
into
t_detailkepsek
values('+QuotedStr(e_nuptk.Text)
+','+QuotedStr(e_tmtdisekolahkepalasekolah.Text)+')';
DM.insertdata(query);
end;
if cb_jabatanutama.ItemIndex=10 then
begin
query:='insert into t_detailpengawassekolah
values('+QuotedStr(e_nuptk.Text)
+','+QuotedStr(cb_status.Text)
+','+QuotedStr(cb_statuskepegawaianpengawassekolah.Text
)+')';
DM.insertdata(query);
end;
if cb_tugaspokok.ItemIndex=2 then
begin
query:='insert
into
t_detailtknf
values('+QuotedStr(e_nuptk.Text)
+','+QuotedStr(cb_jabatanutamanonformal.Text)
+','+QuotedStr(cb_statusnonformal.Text)
+','+QuotedStr(e_bidangyangdiajarkan.Text)+')';
DM.insertdata(query);
end;

62

awal;
Application.MessageBox('Data
disimpan','Information');
end;
end;
end;

berhasil

procedure TF_Pegawai.bt_tambahClick(Sender: TObject);


begin
gb_input.Enabled:=true;
bt_simpan.Enabled:=true;
bt_tambah.Enabled:=false;
end;
procedure TF_Pegawai.cb_jabatanutamaChange(Sender: TObject);
begin
if cb_jabatanutama.ItemIndex=0 then
e_tmtdisekolahkepalasekolah.Enabled:=true
else e_tmtdisekolahkepalasekolah.Enabled:=false;
if cb_jabatanutama.ItemIndex=10 then
begin
cb_status.Enabled:=true;
cb_statuskepegawaianpengawassekolah.Enabled:=true;
end else
begin
cb_status.Enabled:=false;
cb_statuskepegawaianpengawassekolah.Enabled:=false;
end;
end;
procedure TF_Pegawai.cb_tugaspokokChange(Sender: TObject);
begin
if cb_tugaspokok.ItemIndex=0 then
begin
gb_guru.Enabled:=true;
gb_formal.Enabled:=false;
gb_nonformal.Enabled:=false;
end else
if cb_tugaspokok.ItemIndex=1 then
begin
gb_guru.Enabled:=False;
gb_formal.Enabled:=true;
gb_nonformal.Enabled:=false;
end else
if cb_tugaspokok.ItemIndex=2 then
begin
gb_guru.Enabled:=false;
gb_formal.Enabled:=false;
gb_nonformal.Enabled:=true;
end;
end;
procedure TF_Pegawai.e_cariChange(Sender: TObject);
var query:string;
begin
if cb_cari.ItemIndex=-1 then
begin
Application.MessageBox('Pilih Kategori Pencarian','Information');
cb_cari.SetFocus;
end else

63

if cb_cari.ItemIndex=0 then
begin
query:='select * from t_pegawai where nuptk like
"%'+e_cari.Text+'%"';
DM.execSQL(DM.AQPegawai,query);
end else
if cb_cari.ItemIndex=1 then
begin
query:='select * from t_pegawai where nama_lengkap like
"%'+e_cari.Text+'%"';
DM.execSQL(DM.AQPegawai,query);
end else
if cb_cari.ItemIndex=2 then
begin
query:='select * from t_pegawai where no_ktp like
"%'+e_cari.Text+'%"';
DM.execSQL(DM.AQPegawai,query);
end;
end;
procedure TF_Pegawai.FormShow(Sender: TObject);
begin
awal;
isicbsekolah;
end;
end.

Form PraCetakLaporan
procedure awal;
begin
with F_PraCetakLaporan do
begin
cb_datasekolah.ItemIndex:=-1;
end;
end;
procedure isicbsekolah;
var i : integer;
begin
F_PraCetakLaporan.cb_datasekolah.Clear;
DM.execSQL(DM.AQCB,'select * from t_sekolah');
DM.AQCB.First;
F_PraCetakLaporan.cb_datasekolah.Items.Add('Semua');
for i:=1 to dm.AQCB.RecordCount do
begin
F_PraCetakLaporan.cb_datasekolah.Items.Add(DM.AQCB.Fields[
0].AsString+' - '+dm.AQCB.Fields[1].AsString);
DM.AQCB.Next;
end;
end;
procedure TF_PraCetakLaporan.bt_batalClick(Sender: TObject);
var indeks : integer;
nss : string;
begin
if cb_datasekolah.ItemIndex=-1 then
begin
Application.MessageBox('Pilih Data Sekolah','Information');
end else
if cb_datasekolah.ItemIndex=0 then

64

begin
dm.execSQL(dm.AQPegawai,'select * from t_pegawai');
if dm.AQPegawai.IsEmpty then
Application.MessageBox('Data Kosong','Information')
else f_Laporan.QuickRep2.Preview;
end else
begin
indeks:=Pos(' - ',cb_datasekolah.Text);
nss:=Copy(cb_datasekolah.Text,0,indeks-1);
dm.execSQL(dm.AQPegawai,'select * from t_pegawai where
nss='+QuotedStr(nss));
if dm.AQPegawai.IsEmpty then
Application.MessageBox('Data Kosong','Information')
else f_Laporan.QuickRep2.Preview;
end;
end;
procedure TF_PraCetakLaporan.FormShow(Sender: TObject);
begin
awal;
isicbsekolah;
end;
end.

Form User
procedure awal;
begin
with F_User do
begin
e_username.Clear;
e_password.Clear;
e_nama.Clear;
gb_input.Enabled:=false;
bt_tambah.Enabled:=true;
bt_simpan.Enabled:=false;
bt_hapus.Enabled:=false;
bt_ubah.Enabled:=false;
e_username.Enabled:=true;
dm.execSQL(dm.AQUser,'select * from t_user');
end;
end;
procedure TF_User.bt_batalClick(Sender: TObject);
begin
awal;
end;
procedure TF_User.bt_hapusClick(Sender: TObject);
begin
if MessageDlg('Anda yakin ingin menghapus data
ini?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
begin
DM.executeSQL(DM.AQUser,'delete from t_user where
username='+QuotedStr(e_username.Text));
awal;
Application.MessageBox('Data berhasil dihapus','Information');
end;
end;

65

procedure TF_User.bt_simpanClick(Sender: TObject);


var query : string;
begin
if e_username.Text='' then
begin
Application.MessageBox('Username Kosong','Information');
e_username.SetFocus;
end else
if e_password.Text='' then
begin
Application.MessageBox('Password Kosong','Information');
e_password.SetFocus;
end else
begin
query:='insert
into
t_user
values('+QuotedStr(e_username.Text)
+','+QuotedStr(e_password.Text)
+','+QuotedStr(e_nama.Text)+')';
DM.insertdata(query);
awal;
Application.MessageBox('Data
berhasil
disimpan','Information');
end;
end;
procedure TF_User.bt_tambahClick(Sender: TObject);
begin
gb_input.Enabled:=true;
e_username.Enabled:=true;
e_username.SetFocus;
bt_simpan.Enabled:=true;
bt_hapus.Enabled:=false;
bt_ubah.Enabled:=false;
bt_tambah.Enabled:=false;
end;
procedure TF_User.bt_ubahClick(Sender: TObject);
begin
DM.executeSQL(DM.AQUser,'update
t_user
set
password='+QuotedStr(e_password.Text)+',
nama='+QuotedStr(e_nama.Text)+'
where
username='+QuotedStr(e_username.Text));
awal;
Application.MessageBox('Data berhasil diubah','Information');
end;
procedure TF_User.DBGrid1DblClick(Sender: TObject);
begin
e_username.Text:=DM.AQUser.Fields[0].AsString;
e_password.Text:=DM.AQUser.Fields[1].AsString;
e_nama.Text:=DM.AQUser.Fields[2].AsString;
gb_input.Enabled:=true;
e_username.Enabled:=false;
bt_tambah.Enabled:=false;
bt_simpan.Enabled:=false;
bt_hapus.Enabled:=true;
bt_ubah.Enabled:=true;
end;
procedure TF_User.e_cariChange(Sender: TObject);
var query:string;
begin

66

if cb_cari.ItemIndex=-1 then
begin
Application.MessageBox('Pilih Kategori Pencarian','Information');
cb_cari.SetFocus;
end else
if cb_cari.ItemIndex=0 then
begin
query:='select * from t_user where username like
"%'+e_cari.Text+'%"';
DM.execSQL(DM.AQUser,query);
end else
if cb_cari.ItemIndex=1 then
begin
query:='select * from t_user where password like
"%'+e_cari.Text+'%"';
DM.execSQL(DM.AQUser,query);
end else
if cb_cari.ItemIndex=2 then
begin
query:='select
*
from
t_user
where
nama
like
"%'+e_cari.Text+'%"';
DM.execSQL(DM.AQUser,query);
end
end;
procedure TF_User.FormShow(Sender: TObject);
begin
awal;
end;
end.

DOKUMENTASI

Pembackupan Data Pendidik dan Tenaga Kependidikan

67

68

Anda mungkin juga menyukai