SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K
PENULISAN ILMIAH SISTEM INFORMASI PENDATAAN PEGAWAI DAN PEMBUATAN ID CARD PEGAWAI DENGAN BORLAND DELPHI 6.0 PADA PT.PLN(PERSERO)AREA JARINGAN KEBAYORAN Nama
: Dede Hardiyansyah
NPM
: 10404065
Jurusan
: Sistem Informasi
Pembimbing
: Sunarto Usna, SSi, MMSI
Ditulis guna melengkapi sebagian syarat Untuk mencapai jenjang D III / setara Sarjana Muda STMIK JAKARTA STI&K 2009
LEMBAR PENGESAHAN Judul Penulisan Ilmiah : SISTEM INFORMASI PENDATAAN PEGAWAI DAN PEMBUATAN ID CARD PEGAWAI DENGAN BORLAND DELPHI 6.0 Pada PT. PLN (Persero) Area Jaringan Kebayoran Nama
: Dede Hardiyansyah
NPM
: 10404065
NIRM
: 20043322756650011
Tanggal Sidang
: 12 Februari 2009
Tanggal Lulus
: 12 Februari 2009
Jakarta,
Januari 2009
Menyetujui,
Pembimbing
Koordinator Penulisan Ilmiah
(Sunarto Usna, SSi, MMSI )
( Diyah Ruri Irawati SKom, MMSI )
Ketua Jurusan
( Aqwam Rosadi Kardian, SKom, MM)
i
ABSTRAKSI Dede Hardiyansyah 10404065 PI. Sistem Informasi 2009. Kata Kunci : Sistem Informasi, ID Card Pegawai, Borland Delphi 6.0
PT. PLN (Persero) Area Jaringan Kebayoran adalah salah satu badan usaha milik negara yang bergerak di bidang kelistrikan. Perusahaan ini menjual jasa penggunaan listrik kepada individu maupun perusahaan-perusahaan besar di seluruh Indonesia. Adapun alasan penulis mengambil tema ini adalah karena sistem yang digunakan masih manual, dalam pendataan sampai pembuatan ID Card, dan sistem ini juga memerlukan waktu lebih lama untuk proses pencarian data karena harus mencari berkas-berkas tersebut didalam gudang. Saat penulis diberi kesempatan meneliti datadata sampai hasil laporan yang berkaitan dengan pendataan pegawai pada PT. PLN (Persero), penulis ingin mencoba dan mengusulkan untuk membuat suatu sistem informasi pendataan pegawai yang lebih praktis dan efisien dalam hal waktu dan menghasilkan laporan yang lebih baik dari sebelumnya. Ruang lingkup permasalahan dalam pembuatan KKP ini terbatas hanya pada pembuatan sistem pendataan dan pembuatan ID Card. Tujuan penulisan dalam pembuatan program ini adalah untuk mempermudah kerja Manajer PT. PLN (Persero) yang selalu membutuhkan waktu lama dalam hal pendataan sampai pembuatan laporan dan ID Card tersebut. Untuk itu penulis mengambil sebuah tema dalam KKP ini adalah “SISTEM INFORMASI PENDATAAN PEGAWAI DAN PEMBUATAN ID CARD PEGAWAI DENGAN BORLAND DELPHI 6.0 PADA PT. PLN (Persero) Area Jaringan Kebayoran”.
ii
KATA PENGANTAR
Alhamdulillahirrobbil ‘alamiin, puji dan syukur kita kehadirat Allah SWT atas limpahan anugrah dan rahmatnya, penulis dapat menyelesaikan Penulisan Ilmiah ini yang
berjudul
“SISTEM
INFORMASI
PENDATAAN
PEGAWAI
DAN
PEMBUATAN ID CARD PEGAWAI DENGAN BORLAND DELPHI 6.0 PADA PT. PLN (Persero) Area Jaringan Kebayoran” yang merupakan kewajiban bagi setiap mahasiswa untuk mencapai jenjang setara sarjana muda komputer di Sekolah Tinggi Manajemen Informatika dan Komputer Jakarta STI&K. Pada kesempatan ini penulis mengucapkan terima kasih kepada : 1. Bapak Eko Hardiyanto, SSi., MMSI., Selaku ketua Sekolah Tinggi Manajemen Informatika dan Komputer Jakarta STI&K. 2. Bapak Aqwam Rosadi Kardian, SKom, MM, Selaku Ketua Jurusan Sistem Informatika Sekolah Tinggi Manajemen Informatika dan Komputer Jakarta STI&K. 3. Bapak
Sunarto Usna, SSi, MMSI, selaku pembimbing yang telah banyak
memberikan bimbingan dan pengarahan kepada penulis dari awal hingga terwujudnya penulisan penelitian ilmiah ini. 4. Segenap dosen dan staff pengajar Sekolah Tinggi Manajemen Informatika dan Komputer Jakarta STI&K yang telah menanamkan dasar-dasar pengertian yang berguna. 5. Bapak Drs. Dennis Adnan, M.Si selaku Asisten Manager bidang Administrasi dan Keuangan yang telah mendukung dan mengizinkan penulis untuk mencari informasi mengenai data kepegawaian pada PT. PLN (Persero) Area Jaringan Kebayoran.
iii
6. Kedua orang tua, adik dan kakak yang selama ini mendukung dan memberikan motivasi penulis untuk melanjutkan pendidikan ke jenjang yang lebih tinggi sehingga bisa bermanfaat untuk masa depan nanti. 7. Seluruh teman-teman jurusan Sistem Informasi maupun Manajemen Informatika Angkatan 2004 STI&K JAKARTA dalam saran dan memberikan ide-idenya.
Penulis menyadari dalam penulisan ini masih banyak kekurangan dan masih jauh dari kesempurnaan, tak lain disebabkan oleh keterbatasan yang ada pada diri penulis sendiri. Untuk itu penulis mohon maaf yang sebesar-besarnya, semoga naskah Penulisan Ilmiah ini dapat bermanfaat bagi kita semua, khususnya bagi pihak yang memerlukan. Amiin. Jakarta, januari 2009 Penulis
iv
DAFTAR TABEL
Nama Tabel
Halaman
1. Tabel 2.1, Simbol Diagram Arus Data (DAD) ..........................................
8
2. Tabel 2.2, Simbol Diagram Hubungan Entitas (ERD) ................................
9
3. Tabel 3.1, Spesifikasi File Pegawai ............................................................
24
4. Tabel 3.2, Spesifikasi File Pendidikan ........................................................
24
5. Tabel 3.3, Spesifikasi File Jabatan ..............................................................
25
v
DAFTAR GAMBAR
Nama Gambar
Halaman
1.
Gambar 2.1 Diagram Umum Sistem Informasi ........................................
6
2.
Gambar 2.2 Lima Komponen Sistem Informasi .......................................
7
3.
Gambar 2.3 Cardinality One to One .........................................................
10
4.
Gambar 2.4 Cardinality One to Many ......................................................
10
5.
Gambar 2.5 Cardinality Many to Many ...................................................
10
6.
Gambar 2.6 Tampilan Delphi 6.0 .............................................................
15
7.
Gambar 3.1 Struktur Organisasi ...............................................................
17
8.
Gambar 3.2 Flow Of Document (FOD) Berjalan .....................................
19
9.
Gambar 3.3 Diagram Konteks Berjalan ....................................................
20
10. Gambar 3.4 Diagram Detail Berjalan .......................................................
20
11. Gambar 3.5 Entity Relation Diagram (ERD) ............................................
21
12. Gambar 3.6 Transformasi ERD Ke LRS ..................................................
22
13. Gambar 3.7 Normalisasi 1NF ...................................................................
23
14. Gambar 3.8 Normalisasi 2NF ...................................................................
23
15. Gambar 3.9 Flow Of Document (FOD) Usulan .......................................
26
16. Gambar 3.10 Diagram Konteks Usulan ....................................................
27
17. Gambar 3.11 Diagram Detail Usulan .......................................................
27
18. Gambar 3.12 Diagram Detail Proses 4 level 1 Usulan .............................
28
19. Gambar 3.13 Struktur Tampilan Menu Utama ..........................................
31
20. Gambar 3.14 Form Master Pendidikan .....................................................
31
21. Gambar 3.15 Form Master Jabatan ...........................................................
32
22. Gambar 3.16 Form Master Pegawai .........................................................
32
23. Gambar 3.17 Id Card Pegawai ..................................................................
33
vi
DAFTAR ISI
Halaman Halaman Judul Lembar Pengesahan Abstraksi .........................................................................................................
i
Kata Pengantar .................................................................................................
ii
Daftar Isi .........................................................................................................
vi
Daftar Tabel ....................................................................................................
iv
Daftar Gambar ................................................................................................
v
BAB I: PENDAHULUAN ............................................................................
1
1.1. Latar Belakang Masalah ..........................................................
1
1.2. Rumusan Masalah ....................................................................
1
1.3. Tujuan Penulisan .....................................................................
2
1.4. Batasan Penelitian ....................................................................
2
1.5. Metode Penelitian ....................................................................
2
1.6. Sistematika Penulisan ..............................................................
3
BAB II: LANDASAN TEORI ......................................................................
5
2.1. Konsep Dasar Sistem ...............................................................
5
2.2. Konsep Dasar Sistem Informasi ..............................................
5
2.2.1
Pengertian Informasi ...................................................
5
2.2.2
Pengertian Sistem Informasi ......................................
6
2.3. Perancangan Terstruktur ..........................................................
7
2.4. Sistem Basis Data ...................................................................
9
2.5. Bahasa Pemrograman Borland Delphi 6.0................................
13
BAB III : ANALISA DAN PEMBAHASAN ..............................................
16
3.1. Sejarah Berdirinya Organisasi ..................................................
16
3.2. Struktur Organisasi ...................................................................
17
3.3. Analisa Masukan ......................................................................
17
3.4. Analisa Keluaran ......................................................................
18
3.5. Analisa Proses Berjalan ...........................................................
19
3.5.1. Flow Of Document (FOD) Berjalan ..............................
19
vii
3.5.2. DAD Konteks Berjalan .................................................
20
3.5.3. Diagram Detail Berjalan ................................................
20
3.6. Diagram E-R (Entity Relationship Diagram) .........................
21
3.7. Transformasi Diagram E-R ke LRS..........................................
22
3.8. Normalisasi ...............................................................................
23
3.9. Spesifikasi Database .................................................................
24
3.10. Rancangan Kode ......................................................................
25
3.11. Rancangan Proses Usulan .........................................................
26
3.11.1. Flow Of Document (FOD) Usulan ..............................
26
3.11.2. DAD Konteks Usulan ..................................................
27
3.11.3. Diagram Detail Usulan ................................................
27
3.11.4. Diagram Detail Proses 4 level 1 Usulan .......................
28
3.12. Rancangan Masukan ................................................................
29
3.13. Rancangan Keluaran ................................................................
30
3.14. Rancangan Dialog Layar ..........................................................
31
3.14.1. Struktur Tampilan Menu Utama ....................................
31
3.14.2. Rancangan Layar ..........................................................
31
BAB IV: PENUTUP ......................................................................................
34
4.1 Kesimpulan .................................................................................
34
4.2 Saran ...........................................................................................
34
DAFTAR PUSTAKA ....................................................................................
35
LAMPIRAN ...................................................................................................
36
BAB I PENDAHULUAN
1.1
Latar Belakang Masalah PT. PLN (Persero) Area Jaringan Kebayoran yang bergerak dibidang kelistrikan merupakan perusahaan yang membutuhkan pendataan pegawai yang teratur dan efisien dalam menjalankan kegiatan pendataan tersebut. Dalam hal ini khususnya pada bidang Administrasi dan Keuangan sub bidang Sumber Daya Manusia (SDM) PT. PLN (Persero) Area Jaringan Kebayoran yang mengatur segala sesuatu tentang pendataan pegawai tersebut. Berdasarkan pokok-pokok peraturan yang berlaku mengenai kebijakan perusahaan yang disesuaikan dengan ketentuan terhadap pendataan pegawai. Perusahaan tersebut memerlukan sebuah aplikasi yang dapat mengatur maupun mendevinisikan data berdasarkan persyaratan yang sudah ditetapkan, sedangkan kondisi kerja bidang Administrasi dan Keuangan sub bidang Sumber Daya Manusia (SDM) saat ini masih menggunakan suatu sistem pendataan dengan mencatat data pegawai pada lembar kertas yang sudah di format khusus untuk pendataan pegawai dan diberikan pada setiap pegawai untuk mengisi datanya. Dan tentunya dalam pemrosesan data akan membutuhkan waktu yang lebih lama dan menyebabkan ketidakefisienan seperti yang diharapkan. Karena pentingnya permasalahan yang sudah diterangkan dimuka penulis merasa tertarik yang akhirnya penulis tuangkan dalam Penulisan Ilmiah yang merupakan salah satu syarat dalam menyelesaikan program studi di STI&K, adapun judul yang penulis ambil adalah “Sistem Informasi Pendataan Pegawai dan Pembuatan ID Card Pegawai dengan Borland Delphi 6.0 Pada PT. PLN (Persero) Area Jaringan Kebayoran“.
1.2
Rumusan Masalahan. Seiring dengan perkembangan teknologi dan kemajuan zaman yang ada, mungkin berbagai permasalahan – permasalahan dalam pemrosesan data akan mudah muncul. Berikut adalah permasalahan – permasalahan yang akan penulis angkat, antara lain :
2
a. Apakah dengan pendataan manual yang dipakai saat ini bagian Staff administrasi dapat menyelesaikan pendataan pegawai dengan cepat, sementara banyak pekerjaan lain yang harus diselesaikan pada hari yang sama? b. Apakah untuk pencarian data pegawai yang terjadi sewaktu-waktu tidak membutuhkan waktu lebih lama atau bisa jadi kertas akan mudah hilang atau rusak karena faktor diluar manusia?
1.3
Tujuan Penulisan. Berkaitan dengan uraian diatas maka yang menjadi tujuan penulisan adalah : a. Mengganti Sistem yang sudah ada dengan sistem komputerisasi berdasarkan keperluan, sehingga dapat mempercepat proses pendataan pegawai. b. Sebagai prasyarat untuk menempuh KKP dan menambah pengetahuan penulis dalam analisa sistem dan pembangunan aplikasi program.
1.4
Batasan Masalah. Dalam penulisan ilmiah ini, penulis membatasi masalah pada pembuatan Sistem Informasi Pendataan Pegawai dan Pembuatan ID Card Pegawai Pada PT. PLN (Persero) Area Jaringan Kebayoran dan hanya berhubungan dengan seluruh data pegawai saja. Adapun dalam pembuatan Sistem ini penulis menggunakan program Borland Delphi 6.0 sebagai Interface dan Microsoft Access 2003 sebagai Database.
1.5
Metode Penelitian. Untuk memperoleh akurasi data yang relevan untuk penulisan KKP ini penulis dalam melakukan penelitian menggunakan metode deskripsi yaitu meneliti, mengumpulkan data, dan menganalisa secara langsung ke pada PT. PLN (Persero) Area Jaringan Kebayoran, dengan teknik pengumpulan data sebagai berikut : 1. Observasi yaitu Pengamatan langsung terhadap kegiatan yang sedang berjalan.
3
2. Wawancara kepada beberapa pihak atau bagian organisasi yang terlibat. 3. Studi literature yaitu mempelajari teori yang berkaitan dengan sistem pendataan pegawai. 4. Pengembangan perangkat lunak dilakukan dengan berorientasi aliran data yaitu menggunakan metode Waterfall yang meliputi penelitian masalah, analisis, perancangan, kode program, uji coba perangkat lunak dan implementasi.
1.6
Sistematika Penulisan Untuk mempermudah dalam Penulisan Ilmiah, maka sistematika penulisan ilmiah ini dibagi dalam 4 (empat) bab, dimana tiap-tiap bab terdiri dari beberapa sub bab yang menerangkan isi bab tersebut, yaitu sebagai berikut : B A B I : PENDAHULUAN Bab ini menguraikan segala sesuatu yang berhubungan dengan Penulisan Ilmiah ini, atau gambaran umum tentang permasalahan yang akan dibahas, seperti latar belakang penulisan, pokok permasalahan, tujuan penulisan, batasan masalah, metode penulisan dan sistematika penulisan.
B A B II : LANDASAN TEORI Pada bagian ini berisi konsep dasar sistem, konsep dasar sistem informasi, analisa terstruktur, perancangan terstruktur, sistem basis data, teori-teori pendukung Tugas Akhir dan pembuatan program sehingga dapat bekerja sesuai dengan yang diharapkan.
B A B III : ANALISA DAN PEMBAHASAN Pada Bab ini menjelaskan hal-hal yang berkenaan dengan tinjauan lembaga/perusahaan,
uraian
prosedur,
analisa
keluaran,
analisa
masukan, analisa proses, Rancangan sistem yang terbagi menjadi flow dokumen (FOD) dan DAD (berisi DAD Konteks, DAD Detail dan DAD Detail level 1, 2, dst). Rancangan Database Sistem yang terdiri dari Entity Relationship Diagram (ERD), Logical Record Structure (LRS), Normalisasi (1 NF s.d 3 NF), Struktur Database/Spesifikasi
4
File/Tabel. Rancangan Tampilan layar/Desain Menu Utama, rancangan Masukan (Input) dan Keluaran (output), serta Listing program/Struktur Program.
B A B IV : PENUTUP Pada bagian ini berisi kesimpulan dan saran-saran terhadap sistem baru yang diusulkan.
BAB II LANDASAN TEORI
2.1.
Konsep Dasar Sistem Sistem pada dasarnya adalah sekelompok unsur yang erat hubungannya satu dengan yang lain, yang berfungsi bersama-sama untuk mencapai tujuan tertentu. Secara sederhana sistem dapat diartikan sebagai suatu kumpulan atau himpunan dari unsur, komponen, atau variabel-variabel yang terorganisasi, saling berinteraksi, saling tergantung satu sama lain dan terpadu. Pengertian sistem menurut Gordon B. Davis menyatakan, bahwa : “Sistem bisa berupa abstraksi atau fisis. Sistem yang abstrak adalah susunan yang teratur dari gagasan-gagasan atau konsepsi yang saling tergantung. Sedangkan sistem yang bersifat fisis adalah serangkaian unsur yang bekerjasama untuk mencapai suatu tujuan.” 1 Dari definisi diatas maka dapat diketahui manfaat sistem yaitu untuk menyatukan atau mengintegrasikan semua unsur yang ada dalam suatu ruang lingkup, dimana komponen-komponen tersebut tidak dapat berdiri sendiri. Komponen atau subsistem harus saling berintegrasi dan saling berhubungan untuk membentuk satu kesatuan sehingga sasaran dan tujuan dari sistem tersebut dapat tercapai. Pendekatan sistem yang merupakan kumpulan dari komponen
atau
elemen-elemen
merupakan
definisi
yang
lebih
luas
dibandingkan dengan pendekatan sistem yang prosedural.
2.2.
Konsep Dasar Sistem Informasi 2.2.1
Pengertian Informasi Informasi adalah hasil pengolahan data yang diperoleh dari setiap elemen sistem menjadi bentuk yang mudah dipahami oleh penerimanya dan informasi ini menggambarkan kejadian-kejadian nyata untuk menambah pemahamannya terhadap fakta-fakta yang ada, sehingga dapat digunakan untuk pengambilan suatu keputusan. Sumber informasi adalah data. Data
1
Sutabri, Tata, Analisa Sistem Informasi, Edisi I, Andi Offset, 2004 halaman 10.
6
adalah kenyataan yang menggambarkan kejadian-kejadian dan kesatuan yang nyata. Kualitas dari suatu informasi tergantung dari 3 (tiga) hal yaitu : a. Akurat (accurate) Informasi harus bebas dari kesalahan dan tidak bias atau menyesatkan. Akurat juga berarti bahwa informasi harus jelas mencerminkan maksudnya. b. Tepat waktu (timelines) Informasi yang sampai pada penerima tidak boleh terlambat. Informasi yang sudah usang tidak mempunyai nilai lagi. Karena informasi merupakan landasan didalam pengambilan keputusan. c. Relevan (relevance) Informasi tersebut mempunyai manfaat untuk pemakainya. Relevansi informasi untuk setiap orang, satu dan lainnya pasti berbeda.
2.2.2
Pengertian Sistem Informasi “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.” 2 Manfaat adanya sistem informasi yaitu: a) Menyajikan informasi guna mendukung pengambilan suatu keputusan. b) Menyajikan informasi guna mendukung operasi harian. c) Menyajikan informasi yang berkenaan dengan kepengurusan.
masukan Input
keluaran Pengolahan
Yang dikumpulkan (processing)
Output Yang disajikan
Gambar 2.1 Diagram Umum Sistem Informasi
2
Sutabri, Tata, Analisa Sistem Informasi, Edisi I, Andi Offset, 2004 halaman 36.
7
Hardware (Perangkat Keras)
Software (Perangkat Lunak)
DATA
Procedures (Prosedure)
People (Manusia)
Gambar 2.2 Lima Komponen Sistem Informasi Kelima komponen tersebut dapat diklasifikasikan sebagai berikut : a) Hardware dan Software yang berfungsi sebagai mesin b) People dan procedures yang merupakan manusia dan tatacara menggunakan mesin. c) Data merupakan jembatan penghubung antara manusia dan mesin agar terjadi suatu proses pengolahan data.
2.3.
Perancangan Terstruktur “Metodologi perancangan adalah pendekatan terstruktur yang menggunakan prosedur-prosedur, tehnik-tehnik, kakas-kakas dan dokumentasi untuk mendukung dan memberikan fasilitas proses perancangan.” 3 Produk yang dihasilkan dari perancangan terstruktur pada dasarnya sama dengan yang dihasilkan pada analisa terstruktur, hanya di tambah dengan Diagram Aliran Data/Data Flow Diagram (DAD/DFD). Diagram aliran data merupakan model dari sistem untuk menggambarkan pembagian sistem ke modul yang lebih kecil. Salah satu keuntungan menggunakan diagram aliran data adalah memudahkan pemakai atau user yang kurang menguasai bidang komputer untuk mengerti sistem yang akan dikerjakan, urutannya sebagai berikut : A. Diagram Konteks Adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. B. Diagram Nol (Overview Diagram) Adalah diagram yang menggambarkan proses dari data flow diagram.
3
Hariyanto, Bambang, Sistem Manajemen Basis Data, Cetakan Pertama, Penerbit Informatika Bandung, 2004, halaman 213.
8
C. Diagram Rinci (Level Diagram) Adalah diagram yang menguraikan proses yang ada dalam diagram Nol. Elemen-elemen dasar yang digunakan dalam proses Diagram Aliran Data adalah: Tabel 2.1 Simbol Diagram Arus Data (DAD)
SIMBOL
NAMA
KETERANGAN Sesuatu yang berada diluar sistem, tetapi
Kesatuan Luar
ia memberikan data ke dalam sistem atau
(External Entity)
menerima data dari sistem. External Entity tidak termasuk bagian dari sistem Tempat
mengalir
digambarkan
informasi
dengan
garis
dan yang
menghubungkan komponen dari sistem. Arus Data
Arus data ini mengalir diantara proses,
(Data Flow)
data store dan menunjukkan arus data dari data berupa masukan untuk sistem atau hasil proses sistem. Apa yang dikerjakan oleh sistem. Proses dapat mengolah data atau aliran data masuk menjadi aliran data keluar. Proses
Proses (Process)
berfungsi mentransformasikan satu atau beberapa data masukan menjadi satu atau beberapa data keluaran sesuai dengan spesifikasi yang diinginkan Tempat penyimpanan data yang ada
Simpanan Data
dalam sistem, yang disimbolkan dengan
(Data Store)
sepasang garis sejajar dengan sisi samping terbuka
9
2.4.
Sistem Basis Data Dalam pengertian/mendefinisikan basis data menurut para ahli berbedabeda, diantaranya : 4 •
Menurut Chou mendefinisikan : ”Basis data sebagai kumpulan informasi bermanfaat yang diorganisasikan kedalam tatacara yang khusus”.
•
Menurut Fabbri dan Schwab menyatakan : ”Basis data adalah sistem berkas terpadu yang dirancang terutama untuk meminimalkan pengulangan data ”.
Elemen – elemen dalam Basis Data diantaranya: 1) Diagram Hubungan Antara Entitas (Entity Relatioship Diagram) ERD adalah suatu model jaringan yang menggunakan susunan
data
yang disimpan dalam sistem secara abstrak. ERD merupakan model jaringan data yang menekankan pada struktur–struktur dan relationship data. Elemen-eleman dari Diagram Hubungan Entitas antara lain : Tabel 2.2 Simbol Diagram Hubungan Entitas (ERD) SIMBOL
NAMA
KETERANGAN Digambarkan dengan bentuk persegi panjang. Entitas adalah sesuatu apa saja
Entitas
yang ada dalam sistem, nyata maupun abstrak dimana data disimpan atau dimana terdapat data. Digambarkan dengan sebuah bentuk
Relasi
belah ketupat. Relasi adalah hubungan alamiah yang terjadi antara entitas.
4
Kadir, Abdul, Konsep & Tuntunan Praktis Basis Data, Edisi I, Cetakan Pertama, Andi Offset, 1999, halaman 9.
10
Adalah sifat atau karakteristik dari tiaptiap entitas dan relasi atau elemen data Atribut
dari entitas dan relasi. Atribut ini digunakan untuk penamaan dari bagianbagian yang terdapat dalam entitas. Menghubungkan antara entitas satu
Garis lurus
dengan entitas yang lainnya.
a) Cardinality, adalah merupakan tingkat hubungan yang terjadi antara entity didalam sebuah sistem, dari sejumlah kemungkinan banyaknya hubungan antar entitas tersebut, terdapat 3 macam cardinality yaitu : (1) One to one Bentuknya:
1
1
Gambar 2.3 Cardinality One to One
Adalah tingkat hubungan satu ke satu, dinyatakan dengan satu kejadian pada entitas pertama, hanya mempunyai satu hubungan dengan satu kejadian pada entitas kedua atau sebaliknya.
(2) One to Many Bentuknya:
1
M
Gambar 2.4 Cardinality One to Many
Adalah tingkat hubungan satu ke banyak atau sama dengan banyak ke satu. Tergantung pada arah mana hubungan itu dilihat. (3) Many to Many Bentuknya:
M
N
Gambar 2.5 Cardinality Many to Many
Adalah tingkat hubungan banyak ke banyak terjadi jika kejadian pada sebuah entitas akan mempunyai banyak hubungan dengan kejadian
11
pada entitas lainnya. Baik dilihat dari sisi entity ke pertama maupun dilihat dari sisi entity ke kedua. b) Kunci (Key) merupakan suatu atribut yang unik yang dapat digunakan untuk membedakan suatu entitas dengan entitas yang lainnya dalam suatu himpunan entitas. Dari sudut pandang basis data, perbedaan diantara mereka harus dicerminkan lewat perbedaan dalam nilai atributnya. Nilai–nilai atribut kunci dapat secara unik mengidentifikasi suatu entitas terhadap entitas yang lainnya. Dengan kata lain, tidak ada lebih dari satu entitas memiliki nilai–nilai yang sama untuk semua atributnya. Macam–macam jenis kunci (Key) diantaranya: (1)
Primary Key (Kunci Primer) Adalah satu atribut atau satu set minimal atribut yang tidak hanya mengidentifikasi secara unik suatu kejadian spesifik, tapi juga dapat mewakili setiap kejadian dari suatu entity. Primary Key mempunyai tiga kriteria yakni:
(2)
(a)
Key tersebut lebih natural digunakan sebagai acuan.
(b)
Key tersebut lebih sederhana.
(c)
Key tersebut terjamin keunikannya.
Foreign Key (Kunci Tamu) Merupakan sembarang atribut yang menunjuk kepada Primary Key pada tabel yang lain. Foreign Key terjadi pada suatu relasi yang memiliki Cardinality one to many atau many to many. Foreign Key biasanya selalu diletakan pada tabel/relasi yang mengaruh ke banyak.
2) LRS (Logical Record Structure) LRS di bentuk dengan nomor dari tipe record. Beberapa tipe record di gambarkan oleh kotak empat persegi panjang dengan nama yang unik. LRS juga terdiri dari hubungan diantara tipe record. Dua metode yang dapat dikonversikan ke LRS. Metode lain di mulai dengan ER dan langsung dikonversikan ke LRS.
12
3) Normalisasi Yaitu Proses untuk mengorganisasi file dengan menghilangkan groupgroup elemen yang berulang. Tahap-tahap dalam normalisasi yaitu : i.
Bentuk Normal Pertama (1NF) Bentuk normal pertama biasa dikenakan pada tabel yang belum ternormalisasi. Tabel yang belum ternormalisasi adalah tabel yang memiliki atribut yang berulang.
ii.
Bentuk Normal Kedua (2NF) Bentuk normal kedua didefinisikan berdasarkan dependensi fungsional. Dalam ungkapan yang lebih praktis, bentuk normal kedua mensyaratkan setiap atribut bergantung pada kunci primer.
iii.
Bentuk Normal Ketiga (3NF) Suatu relasi dikatakan dalam bentuk normal ketiga jika sudah dalam bentuk normal kedua dan setiap atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci primer.
iv.
Bentuk Normal Boyce-Codd (BCNF) Suatu relasi disebut memenuhi bentuk normal BCNF jika dan hanya jika semua penentu (determinan) adalah kunci kandidat (atribut yang bersifat unik).
4) Struktur Database/Spesifikasi file Spesifikasi proses memberikan suatu penjelasan yang mendasari kebijaksanaan
pengolahan
suatu
fungsional
primitif
yang
mentransformasikan data keluaran. Dapat diartikan pula sebagai penggambaran
dari
kebijaksanaan
dan
prosedur
yang
mentransformasikan data juga sebagai alat yang efisien untuk menggambarkan algoritma.
13
2.5.
Bahasa Pemrograman Borland Delphi 6.0 Bahasa yang digunakan penulis adalah Borland Delphi 6.0 yang merupakan salah satu program visual yang dikembangkan oleh borland dan diambil dari bahasa pascal. Delphi mempunyai kemampuan manajemen data yang handal. Dengan Delphi, kita dapat menciptakan perangkat lunak yang beroperasi dengan hampir semua jenis basisdata xBase seperti Paradox, dBase atau MS Access. Selain itu, dapat juga menggunakan Delphi untuk membangun solusi dalam pengembangan client-server. Komponen-komponen penting yang ada dalam Borland Delphi 6.0 dapat dikelompokkan sebagai berikut : a. Menu Bar Pada bagian Menu Bar terdapat sebelas menu utama sebagai default dari Dephi 6.0. b. Toolbar Toolbar fungsinya sama seperti fungsi dari menu, hanya saja pada tollbar pilihan-pilihan berbentuk icon. c. Component Palette Component Palette adalah tempat di mana kontrol-kontrol dan komponen diletakkan yang berfungsi membantu user dalam membangun suatu aplikasi. d. Object TreeView Object TreeView adalah tempat untuk melihat daftar dari objek-objek apa saja yang terdapat pada program aplikasi. e. Object Inspector Didalam Object Inspector terdapat property dan event dari setiap objek yang ada pada form sebagai alat untuk mengontrol. f. Project Options Project Options adalah tempat untuk melihat kumpulan form, unit dan beberapa hal yang merupakan komponen penting yang terkait dalam pembangunan program.
14
g. Form Form adalah tempat untuk mendesain suatu tampilan dari program yang akan dibuat atau tampilan interface yang akan dihasilkan oleh program pada saat dijalankan. h. View Unit View Unit adalah tempat untuk melihat kumpulan unit yang dibuat dalam satu program, satu program dapat mempunyai lebih dari satu unit yang akan dijalankan. Dalam Borland Delphi, setiap kali membuat satu form maka otomatis pula di buat satu unit. i. Code Editor Code Editor merupakan sebuah objek yang digunakan untuk menuliskan kode program, berisi algoritma-algoritma, rumus-rumus yang akan dijalankan pada Delphi dan akan membentuk suatu aplikasi. j. Properties Properties digunakan untuk menentukan setingan suatu objek. Suatu objek biasanya mempunyai beberapa properties yang dapat di atur langsung dari lembar properties pada jendela Object Inspector maupun di atur melalui kode program. k. Events Events adalah peristiwa atau kejadian yang di terima oleh suatu objek, misalnya klik, drag, tunjuk dan lain-lain. Events yang di terima objek akan memicu Borland Delphi untuk menjalankan kode program yang ada di dalamnya.
15
Toolbar Menu Bar
Form Code Editor Component Palette
Object TreeView
Properties
Events
View Unit Project Options
Object Inspector
Gambar 2.6 Tampilan Delphi 6.0
BAB III ANALISA DAN PEMBAHASAN
3.1
Sejarah singkat PT. PLN (Persero) Sejarah singkat yang penulis paparkan disini merupakan sejarah singkat PT PLN (Persero) Distribusi Jaya dan Tangerang, mulai dari berdirinya hingga terbentuknya satuan kerja yang merupakan cabang-cabang dari PT PLN (Persero) Distribusi Jaya dan Tangerang. Awalnya bidang listrik mulai digarap oleh perusahaan milik Belanda bernama NV NIGM, dengan pusat pembangkitan listriknya berlokasi di Gambir , yaitu Pusat Listrik Tenaga Uap (PLTU). Selama Pendudukan Jepang (19421945) NV NIGM diambil alih oleh Pemerintah Jepang dan diganti dengan nama Seibu Djawa Djigio Kosha Djakarta Shisha yang kemudian dialihkan ke perusahaan lain bernama Djawa Denki Jogyosha Djakarta Shisha. Pada tanggal 17 Agustus 1945, perusahaan Jepang tersebut berakhir dan terbentuklah Djawatan Listrik dan Gas Tjabang Djakarta. Perusahaan ini sempat dikembalikan lagi kepada pemilik asal yaitu NV NIGM dan pada tahun 1947 namanya berubah menjadi NV OGEM. Pada tanggal 1 Januari 1954 keberadaan NV OGEM pun berakhir dan terbentuklah Perusahaan Listrik Jakarta dengan wilayah kerja daerah Jakarta Raya serta memiliki ranting Kebayoran dan Kabupaten Tangerang. Tahun 1961 dibentuklah Badan Pimpinan Umum Perusahaan Listrik Negara (BPU PLN). Untuk wilayah Jakarta dibentuk Perusahaan Listrik Negara Eksploitasi XII dengan tugas pendistribusian tenaga listrik di Jakarta dan Tangerang, sementara Perusahaan Listrik Negara Eksplotasi XIII mempunyai tugas dalam bidang pembangkitan tenaga listrik (termasuk pusat-pusat pembangkit di luar Jakarta). Tahun 1972 status Perusahaan Listrik Negara diubah menjadi Perusahaan Umum Listrik Negara. Tanggal 8 Agustus 1976, nama PLN Distribusi IV diubah menjadi PLN Distribusi Jakarta Raya dan Tangerang. PLN yang semula bernaung di bawah Departemen Pekerjaan Umum dan Tenaga Listrik, dialihkan di bawah naungan Departemen Pertambangan dan Energi. Sejak Tahun 1982 PLN Distribusi Jakarta Raya dan Tangerang dilengkapi dengan suatu Unit Pengatur Distribusi
17
(UPD), namun baru pada tahun 1987 unit tersebut ditetapkan sebagai satuan kerja dengan nama yang sama. Saat ini PT PLN (Persero) Distribusi Jakarta Raya dan Tangerang memiliki 35 Area Pelayanan, 4 Area Jaringan, dan 1 Area Pengatur Distribusi.
3.2
Struktur Organisasi Berikut ini adalah gambar Struktur Organisasi PT. PLN (Persero) Area Jaringan.
Gambar 3.1 Struktur Organisasi
3.3
Analisa Masukan Tujuan dari analisa masukan ini adalah untuk mengetahui apa saja yang dihasilkan oleh sistem, dimana masukan yang rinci sebagai berikut: a. Nama Masukan
: Data pegawai
Sumber
: Arsip
Fungsi
: Memasukkan data pegawai.
Media
: Kertas
Rangkap
: Dua
Frekuensi
: Setiap ada pegawai baru
18
Volume
: Tidak tentu
Format
: Lampiran A-1
Keterangan
: Untuk pendataan pegawai.
Hasil analisa
: Hasil keluaran sudah cukup baik untuk melengkapi kebutuhan analisa.
3.4
Analisa Keluaran Tujuan dari analisa keluaran ini adalah untuk mengetahui apa saja yang dihasilkan oleh sistem tiap keluaran yang rinci sebagai berikut: a. Nama keluaran : Laporan data pegawai Fungsi
: Melihat data semua pegawai
Media
: Kertas
Distribusi
: Arsip
Rangkap
: Dua
Frekuensi
: Setiap ada pegawai baru
Volume
: Tidak tentu
Format
: Lampiran B-1
Keterangan
: Laporan data perpegawai.
Hasil analisa
: Hasil keluaran sudah cukup baik untuk melengkapi kebutuhan analisa.
19
3.5
Analisa Proses Berjalan 3.5.1
Flow Of Document (FOD) Berjalan
Gambar 3.2 Flow Of Document (FOD) Berjalan
20
3.5.2
Diagram Konteks Berjalan
Gambar 3.3 Diagram Konteks Berjalan
3.5.3
Diagram Detail Berjalan
Gambar 3.4 Diagram Overview Berjalan
21
3.6
Entity Relation Diagram (ERD)
Gambar 3.5 Entity Relation Diagram (ERD)
22
3.7
Transformasi ERD Ke LRS
Gambar 3.6 Transformasi ERD Ke LRS
23
3.8
Normalisasi
a) Normalisasi 1NF Tabel Pendidikan Terakhir Id_Pendidikan Pendidikan
Tabel Jabatan Id_Jabatan Jabatan
Nip Alamat
Tabel Pegawai Tempat Tgl_Lahir
Nama Telepon
Id_Jabatan
Id_Pendidikan
JenisKelamin
Peringkat
Path
Gambar 3.7 Normalisasi 1NF
b) Normalisasi 2NF
Pegawai Pendidikan Terakhir Id_Pendidikan Pendidikan
*
**
* Primarykey ** Foreignkey
Nip Nama Tempat Tgl_Lahir JenisKelamin Alamat Telepon Id_Jabatan Id_Pendidikan Peringkat Path
Jabatan
*
**
Gambar 3.8 Normalisasi 2NF
Id_Jabatan Jabatan
24
3.9
Spesifikasi Database
1. Nama File
: Pegawai.mdb
Media
: Hardisk / disk
Isi
: Data pegawai
Primary Key
: Nip
Panjang Record
: 397
Tabel. 3.1 : Spesifikasi File Pegawai No 1. 2. 3. 4. 4. 5. Option 6. 1 7. 4. 8. Option 9. 1 10.
Nama File Nip Nama Tempat Tgl_Lahir JenisKelamin Option 1 AlamatOption 1 Telepon Id_Pendidikan Option 1 Id_Jabatan Option 1 Peringkat Option 1
T 15 Nomor Telepon T Option 1 5 Option Identitas 1 Pendidikan Terakhir T Option 1 5 Option Identitas 1 Jabatan T Option 1 2 Option Peringkat 1 Jabatan
11.
Path Option 1
T Option 1 255 Option Alamat 1 foto
2. Nama File
Lebar Keterangan Jenis T 10 Nomor Induk Pegawai T 30 Nama Pegawai T 25 Tempat Lahir D Tanggal Lahir T Option 1 10 Option Jenis 1 Kelamin T Option 1 40 Option Alamat 1 Pegawai
: Pendidikan.mdb
Media
: Hardisk / disk
Isi
: Data-data pendidikan terakhir
Primary Key
: Id_Pendidikan
Panjang Record
: 15
Tabel. 3.2 : Spesifikasi File Pendidikan
25
3. Nama File
: Jabatan.mdb
Media
: Hardisk / disk
Isi
: Data-data jabatan
Primary Key
: Id_Jabatan
Panjang Record
: 25
Tabel. 3.3 : Spesifikasi File Jabatan
3.10 Rancangan kode Nip pada tabel pegawai terdiri dari 10 digit - 2 digit pertama menerangkan tahun kelahiran pegawai. - 2 digit berikutnya menerangkan tahun masuk pegawai. - 3 digit berikutnya menerangkan nomor urut pegawai. - Contoh : 5272006 ini menandakan pegawai kelahiran tahun 1952, masuk tahun 1972 dengan nomor urut 006.
Id_Pendidikan pada tabel pendidikan terdiri dari 5 digit - 2 digit dari panjang kode menerangkan kode pendidikan yaitu PD. - 3 digit dari panjang kode menerangkan no urut. - Contoh : PD001
Id_Jabatan pada tabel jabatan terdiri dari 5 digit - 2 digit dari panjang kode menerangkan kode Jabatan yaitu JB. - 3 digit dari panjang kode menerangkan no urut. - Contoh : JB001
26
3.11 Rancangan Proses Usulan 3.11.1 Flow Of Document (FOD) Usulan
Gambar 3.9 Flow Of Document (FOD) Usulan
27
3.11.2 Diagram Konteks Usulan
Gambar 3.10 Diagram Konteks Usulan
3.11.3 Diagram Detail Usulan
Gambar 3.11 Diagram Detail Usulan
28
3.11.4 Diagram Detail Proses 4 Level 1 Usulan
Gambar 3.12 Diagram Detail Proses 4 Level 1 Usulan
29
3.12 Rancangan Masukan Berisi penjelasan dari setiap masukan yang ingin dihasilkan oleh sistem yang di rancang memuat rincian spesifikasi sebagai berikut : 1. Nama Masukan
: Data Pegawai
Sumber
: Pegawai
Fungsi
: Untuk input data pegawai
Media
: Hardisk
Rangkap
:2
Frekuensi
: Setiap kali ada pegawai baru
Volume
: Tidak tentu
Format
: Lampiran C-1
Keterangan
: Form tambah pegawai.
2. Nama Masukan
: Data Keterangan Pendidikan Terakhir
Sumber
: ASMAN ADKEU
Fungsi
: Untuk input data pendidikan
Media
: Hardisk
Rangkap
:1
Frekuensi
: Tidak tentu
Volume
: Tidak tentu
Format
: Lampiran C-2
Keterangan
: Form tambah pendidikan.
3. Nama Masukan
: Data Keterangan Jabatan
Sumber
: ASMAN ADKEU
Fungsi
: Untuk input data jabatan
Media
: Hardisk
Rangkap
:1
30
Frekuensi
: Jika ada perubahan jabatan.
Volume
: Tidak tentu
Format
: Lampiran C-3
Keterangan
: Form tambah jabatan.
3.13 Rancangan Keluaran Berisi penjelasan dari setiap keluaran yang ingin dihasilkan oleh sistem yang di rancang memuat rincian spesifikasi sebagai berikut : 1. Nama Keluaran
: Laporan data pegawai
Fungsi
: Untuk melihat data pegawai
Media
: Hardisk
Distribusi
: Staff administrasi
Rangkap
:2
Frekuensi
: Setiap ada pegawai baru
Volume
: Tidak tentu
Format
: Lampiran D-1
Keterangan
: Dibuat berdasarkan biodata pegawai.
2. Nama Keluaran
: Id Card
Fungsi
: untuk identitas pegawai.
Media
: Hardisk
Distribusi
: Administrasi
Rangkap
: 2
Frekuensi
: Setiap ada pegawai baru dan kehilangan / kerusakan kartu identitas.
Volume
: Tidak tentu
Format
: Lampiran D-2
Keterangan
: Bukti sebagai pegawai perusahaan yang bersangkutan.
31
3.14 Rancangan Dialog Layar 3.14.1. Struktur Tampilan Menu Utama ::: Menu Utama ::: Master Pendidikan
Laporan
Panduan
Data Pegawai
Keluar
Developer
Jabatan Pegawai
Gambar 3.13 Struktur Tampilan Menu Utama
3.14.2 Rancangan Layar Form Master Pendidikan
Gambar 3.14 Form Master Pendidikan
32
Form Master Jabatan
Gambar 3.15 Form Master Jabatan
Form Master Pegawai
Gambar 3.16 Form Master Pegawai
33
Id Card Pegawai
Gambar 3.17 Id Card Pegawai
BAB IV PENUTUP
4.1 Kesimpulan Dari pembahasan tahap-tahap analisa dan perancangan, penulis memahami dan berusaha memecahkan permasalahan pendataan pegawai pada PT. PLN (Persero) Area Jaringan Kebayoran, maka penulis dapat mengambil beberapa kesimpulan antara lain : •
Dengan
sistem
komputerisasi
ini,
maka
staff
administrasi
dapat
menyelesaikan pendataan pegawai lebih cepat dan efisien. •
Pencarian
data
pada
sistem
komputerisasi
tentunya
akan
lebih
mempersingkat waktu dan data dapat dicetak sewaktu-waktu jika diperlukan, terlebih lagi data hanya bisa diakses oleh pihak tertentu untuk menjamin kerahasiaan data tersebut.
4.2 Saran Setelah berusaha semaksimal mungkin untuk menyelesaikan pra tugas akhir ini, maka perkenankanlah penulis untuk untuk memberikan saran seperti apa yang penulis lihat selama penulis melakukan riset, yang sekiranya dapat membantu penggunaan komputerisasi sistem informasi pendataan pegawai pada PT. PLN (Persero) Area Jaringan Kebayoran. Saran–saran tersebut diantaranya adalah : 1. Setelah menggunakan sistem yang telah terkomputerisasi, ketelitian dalam menginput data juga sangat diperlukan agar data yang direkam merupakan salinan data dari dokumen atau sumber. 2. Mengingat banyak dan pentingnya data yang tersimpan dalam database, demi keamanan data, maka perlu dibuat file duplikat (file back up). 3. Untuk memaksimalkan pemakaian dan kelancaran penggunaan aplikasi, diharapkan pemakai dapat memahami kegunaan aplikasi tersebut. Demikianlah saran-saran dari penulis, dimana selebihnya penulis amati sudah cukup baik.
35
DAFTAR PUSTAKA
[1] Al Fatta, Hanif. Analisis dan Perancangan Sistem Informasi, Andi Offset, 2007. [2] Bahri, Kusnassriyanto Saiful dan Wawan Sjachiyanto, Pemrograman Delphi, Cetakan Pertama, Penerbit Informatika Bandung, 2005. [3] Hariyanto, Bambang, Sistem Manajemen Basis Data, Cetakan Pertama, Penerbit Informatika Bandung, 2004. [4] Kadir, Abdul, Konsep & Tuntunan Praktis Basis Data, Edisi Pertama, Cetakan Pertama, Andi Offset, 1999. [5] Marcus, Teddy, dkk., Pemrograman Delphi dengan ADOExpress, Informatika Bandung, 2005. [6] McLeod, Raymond Jr., Management Information Systems, Eight Edition, PrenticeHall International, Inc, 1998. [7] Pacheco, Xavier and Steve Teixiera, Borland Delphi 6.0 Developer’s, Sams Publishing, Inc, 2002. [8] Sutabri, Tata, MM., Analisa Sistem Informasi, Edisi I, Andi Offset, Yogyakarta, 2004. [9] Widiarta, Wisnu, Dari Pascal Ke Java, Cetakan Pertama, Informatika Bandung, 2007.
36
LAMPIRAN Listing Program FORM MENU UTAMA
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, jpeg, ExtCtrls; type TFormMain = class(TForm) procedure Keluar1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Pendidikan1Click(Sender: TObject); procedure Jabatan1Click(Sender: TObject); procedure Guru1Click(Sender: TObject); procedure DataGuru1Click(Sender: TObject); procedure Developer1Click(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); var FormMain: TFormMain;
37
implementation uses PendidikanForm, JabatanForm, PegawaiForm, PegawaiSemuaReport, InfoForm; procedure TFormMain.Keluar1Click(Sender: TObject); begin Application.Terminate; end; procedure TFormMain.FormCreate(Sender: TObject); begin WindowState := wsMaximized; end; procedure TFormMain.Pendidikan1Click(Sender: TObject); begin FormPendidikan.ShowModal; end; procedure TFormMain.Jabatan1Click(Sender: TObject); begin FormJabatan.ShowModal; end; procedure TFormMain.Guru1Click(Sender: TObject); begin FormPegawai.ShowModal; end; procedure TFormMain.DataGuru1Click(Sender: TObject); begin QRSemuaPegawai.qryDftarPegawai.Close; QRSemuaPegawai.qryDftarPegawai.Open; if QRSemuaPegawai.qryDftarPegawai.RecordCount > 0 then QRSemuaPegawai.PreviewModal else ShowMessage('Tidak ada yang dicetak?'); end; procedure TFormMain.Developer1Click(Sender: TObject); begin FormInfo.ShowModal; end; procedure TFormMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin Application.Terminate; end;
38
DATA MODULE interface uses SysUtils, Classes, DB, ADODB, Dialogs, Forms; type TDmPegawai = class(TDataModule) procedure tblPendidikanBeforePost(DataSet: TDataSet); procedure tblJabatanBeforePost(DataSet: TDataSet); procedure DataModuleCreate(Sender: TObject); procedure tblPegawaiBeforePost(DataSet: TDataSet); procedure tblPegawaiCalcFields(DataSet: TDataSet);
public { Public declarations } function GetSQLValue(sqlString, fieldName: String): String; end; var DmPegawai: TDmPegawai; implementation uses PendidikanForm, JabatanForm, PegawaiForm; procedure TDmPegawai.tblPendidikanBeforePost(DataSet: TDataSet); begin if tblPendidikanIdPendidikan.Value = '' then begin ShowMessage('Id Pendidikan tidak boleh kosong?'); Abort; FormPendidikan.DBEdit1.SetFocus; end else if tblPendidikanPendidikan.Value = '' then begin ShowMessage('Pendidikan tidak boleh kosong?'); FormPendidikan.DBEdit2.SetFocus; end end; procedure TDmPegawai.tblJabatanBeforePost(DataSet: TDataSet); begin if tblJabatanIdJabatan.Value = '' then begin ShowMessage('Id Jabatan tidak boleh kosong?'); Abort;
39
FormJabatan.DBEdit1.SetFocus; end else if tblJabatanJabatan.Value = '' then begin ShowMessage('Jabatan tidak boleh kosong?'); FormJabatan.DBEdit2.SetFocus; end end; procedure TDmPegawai.DataModuleCreate(Sender: TObject); begin ADOConnection.Close; //Atur connection string ADOConnection.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;'+ 'Data Source=' + ExtractFileDir(ParamStr(0))+'/Pegawai.mdb;'+ 'Persist Security Info=False;'+ 'Jet OLEDB:Database Password='; try //Buka koneksi database ADOConnection.Connected := True; except on e:Exception do begin ShowMessage('Maaf tidak ada koneksi ke database, mohon diperiksa kembali database anda'); Application.Terminate; end; end; end; procedure TDmPegawai.tblPegawaiBeforePost(DataSet: TDataSet); begin tblPegawaiTglLahir.Value := FormPegawai.DateTimePicker.Date; if tblPegawaiNiP.Value = '' then begin ShowMessage('NIP tidak boleh kosong?'); Abort; FormPegawai.DBEdit1.SetFocus; end; end; function TDmPegawai.GetSQLValue(sqlString, fieldName: String): String; var query: TADOQuery ; begin query := TADOQuery.Create(Nil); query.Connection := ADOConnection;
40
query.SQL.Add(sqlString); try query.Open; Result := query.fieldByName(fieldName).AsString; except on E:Exception do ShowMessage('Ada ganguan pada koneksi database, silahkan periksa' +#13+#10+' kembali atau hubungi Dede?'); end; query.Free; end; procedure TDmPegawai.tblPegawaiCalcFields(DataSet: TDataSet); begin tblPegawaiTempatTglLahir.Value := tblPegawaiTempat.Value+', '+ DateToStr(tblPegawaiTglLahir.value); end; end.
FORM PENDIDIKAN
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, DBCtrls, StdCtrls, Mask, Grids, DBGrids;
41
type TFormPendidikan = class(TForm) procedure FormCreate(Sender: TObject); procedure DBNavigator1Click(Sender: TObject; Button: TNavigateBtn); private { Private declarations } function GenerateKodeNomor: string; end; var FormPendidikan: TFormPendidikan; implementation uses Module; procedure TFormPendidikan.FormCreate(Sender: TObject); begin DmPegawai.tblPendidikan.Open; end; procedure TFormPendidikan.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn); begin if Button = nbInsert then begin DBEdit1.Text := GenerateKodeNomor; DBEdit2.SetFocus; end; end; function TFormPendidikan.GenerateKodeNomor: string; var kode : integer; kodeNomor : string; sudahAda : boolean; begin result := ''; kode := 0; repeat begin inc(kode); kodeNomor := 'PD00'+ VarToStr(kode); sudahAda := DmPegawai.GetSQLValue('SELECT COUNT(*)as total from Pendidikan where '+ 'IdPendidikan = '+QuotedStr(kodeNomor), 'total') > '0'; end;
42
until not sudahAda; result := kodeNomor; end; end.
FORM JABATAN
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Mask, DBCtrls, ExtCtrls, Grids, DBGrids; type TFormJabatan = class(TForm) procedure FormCreate(Sender: TObject); procedure DBNavigator1Click(Sender: TObject; Button: TNavigateBtn); private { Private declarations } function GenerateKodeNomor: string; end; var FormJabatan: TFormJabatan; implementation
43
uses Module; procedure TFormJabatan.FormCreate(Sender: TObject); begin DmPegawai.tblJabatan.Open; end; procedure TFormJabatan.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn); begin if Button = nbInsert then begin DBEdit1.Text := GenerateKodeNomor; DBEdit2.SetFocus; end; end; function TFormJabatan.GenerateKodeNomor: string; var kode : integer; kodeNomor : string; sudahAda : boolean; begin result := ''; kode := 0; repeat begin inc(kode); kodeNomor := 'JB00'+ VarToStr(kode); sudahAda := DmPegawai.GetSQLValue('SELECT COUNT(*)as total from Jabatan where '+ 'IdJabatan = '+QuotedStr(kodeNomor), 'total') > '0'; end; until not sudahAda; result := kodeNomor; end; end.
44
FORM PEGAWAI
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Mask, DBCtrls, ExtCtrls, Grids, DBGrids, Buttons, ExtDlgs,jpeg, ComCtrls; type TFormPegawai = class(TForm) procedure SbFotoClick(Sender: TObject); procedure DBGrid1CellClick(Column: TColumn); procedure FormShow(Sender: TObject); procedure DBNavigator1Click(Sender: TObject; Button: TNavigateBtn); procedure SpeedButton1Click(Sender: TObject); end; var FormPegawai: TFormPegawai; implementation uses Module, KartuReport;
45
procedure TFormPegawai.SbFotoClick(Sender: TObject); begin try OpenPictureDialog.Execute; except on e:Exception do MessageDlg(OpenPictureDialog.FileName, mtError, [mbOK],0); end; if OpenPictureDialog.FileName <> '' then begin Image1.Visible := true; Image1.Picture.LoadFromFile(OpenPictureDialog.FileName); DBEdit7.Text:=OpenPictureDialog.FileName; end; end; procedure TFormPegawai.DBGrid1CellClick(Column: TColumn); begin DateTimePicker.Date := DmPegawai.tblPegawaiTglLahir.Value; if DBEdit7.Text <> '' then begin Image1.Visible := true; Image1.Picture.LoadFromFile(DBEdit7.Text); end else begin Image1.Visible := false; ShowMessage('Foto tidak ditemukan?'); end; end; procedure TFormPegawai.FormShow(Sender: TObject); begin DmPegawai.tblPegawai.Open; if DBEdit7.Text <> '' then begin Image1.Visible := true; Image1.Picture.LoadFromFile(DBEdit7.Text); end; end; procedure TFormPegawai.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn); begin DBEdit1.SetFocus; end; procedure TFormPegawai.SpeedButton1Click(Sender: TObject); begin QRKartuPegawai.qryKartu.Close;
46
QRKartuPegawai.qryKartu.Parameters.ParamValues['Nip']:= DmPegawai.tblPegawaiNiP.Value; QRKartuPegawai.qryKartu.Open; if QRKartuPegawai.qryKartu.RecordCount > 0 then begin QRKartuPegawai.QRImage2.Picture.LoadFromFile(DBEdit7.Text); QRKartuPegawai.PreviewModal; end else ShowMessage('Tidak ada yang dicetak?'); end; end.
47
LAMPIRAN A1
FORM PEGAWAI
Nip
:
Nama
:
Tempat
:
Tgl lahir
:
Jenis Kelamin
:
Alamat
:
Telepon
:
Jabatan
:
Pendidikan
:
Peringkat
:
48
LAMPIRAN B1
49
LAMPIRAN C1
50
LAMPIRAN C2
51
LAMPIRAN C3
52
LAMPIRAN D1
53
LAMPIRAN D2
54
LAMPIRAN