PEMBANGUNAN APLIKASI PANGKALAN DATA DI SEKOLAH SMU KEMALA BHAYANGKARI 1 MEDAN
SKRIPSI
WENTY SUMA 051401095
PROGRAM STUDI S-1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2009
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
PEMBANGUNAN APLIKASI PANGKALAN DATA DI SEKOLAH SMU KEMALA BHAYANGKARI 1 MEDAN SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer
WENTY SUMA 051401095
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2009
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
PERSETUJUAN
Judul
Kategori Nama Nomor Induk Mahasiswa Program Studi Departemen Fakultas
PEMBANGUNAN APLIKASI PANGKALAN DATA DI SEKOLAH SMU KEMALA BHAYANGKARI 1 MEDAN SKRIPSI WENTY SUMA 051401095 SARJANA (S1) ILMU KOMPUTER ILMU KOMPUTER MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA Diluluskan di Medan, Juli 2009
Komisi Pembimbing Pembimbing 2
Pembimbing 1
Drs. Muhammad Firdaus, M.Si NIP. 131273463
Syahril Efendi, S.Si, MIT NIP. 132148612
Diketahui/Disetujui oleh Program Studi S1 Ilmu Komputer Ketua,
Prof. Dr. Muhammad Zarlis NIP 131570434
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
PERNYATAAN
PEMBANGUNAN APLIKASI PANGKALAN DATA DI SEKOLAH SMU KEMALA BHAYANGKARI 1 MEDAN SKRIPSI
Penulis mengakui bahwa skripsi ini adalah hasil karya penulis sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juni 2009
Wenty Suma 051401095
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
PENGHARGAAN
Alhamdulillah wa syukrilah, puji syukur penulis panjatkan ke hadirat Allah SWT, yang telah memberikan rahmat dan ridho-Nya serta segala sesuatunya dalam hidup, sehingga penulis dapat menyelesaikan penyusunan Skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, Program Studi Ilmu Komputer Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara. Shalawat dan Salam penulis hadiahkan kepada Nabi Besar Muhammad SAW. Ucapan terima kasih yang sebesar-besarnya penulis sampaikan kepada Bapak Syahril Efendi, S.Si, MIT sebagai Dosen Pembimbing I dan Bapak Drs. Muhammad Firdaus, M.Si sebagai Dosen Pembimbing II atas bimbingan, saran, masukan kepada penulis untuk menyempurnakan Skripsi ini. Panduan ringkas dan padat dan profesional telah diberikan kepada penulis agar penulis dapat menyelesaikan tugas ini. Selanjutnya kepada para Dosen Penguji Bapak Prof. Dr. Muhammad Zarlis dan Bapak Drs. James P. Marbun, M. Kom atas saran dan kritikan yang sangat berguna bagi Penulis. Ucapan terima kasih juga ditujukan kepada Ketua dan Sekretaris Program Studi Ilmu Komputer, Bapak Prof. Dr. Muhammad Zarlis dan Bapak Syariol Sitorus, S.Si, MIT, Dekan dan Pembantu Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara, semua dosen pada Program Studi Ilmu Komputer FMIPA USU, pegawai di FMIPA USU. Seluruh proses pengerjaan Skripsi ini tidak akan dapat dilalui tanpa dukungan kedua Orang Tua dan Keluarga. Skripsi ini penulis persembahkan untuk Mama Mariaty dan Papa Sugiharto, yang telah memberikan segalanya dalam hidup, dan juga untuk abang penulis yaitu Finky Suma, kakak penulis yaitu Debby Cynthia, adik penulis yaitu Wenny Suma dan keponakan penulis yaitu M. Rafi Tezza. Semoga Allah SWT akan membalasnya. Selanjutnya buat sahabat-sahabat terbaik, Shafira Guslina, Cahaya Purnama, Memorita, Nita, Mika, Vera, terima kasih atas motivasi dan perhatiannya. Terimakasih pula kepada seluruh mahasiswa angkatan 2005 dan semua pihak yang tidak dapat penulis sebutkan satu per satu, terima kasih atas ide, saran, dan kerja sama yang baik. Tak lupa kepada Said Arief Razzaq, terima kasih atas semangat, motivasi dan perhatiannya selama ini sehingga penulis bisa menyelesaikan Skripsi ini dengan baik. Penulis menyadari bahwa Skripsi ini masih jauh dari sempurna, karena kesempurnaan hanya milik Allah kekurangan adalah milik penulis. Oleh karena itu Penulis menerima saran dan kritik yang bersifat membangun demi kesempurnaan Skripsi ini. Semoga dapat bermanfaat bagi kita semuanya.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
ABSTRAK
Pendataan siswa dan guru di sekolah SMU Kemala Bhayangkari 1 Medan pada saat ini masih diselenggarakan secara manual dalam arti pembuatan laporannya masih menggunakan aplikasi pengolahan kata (Microsoft Word maupun Excel). Umumnya pembuatan laporan nilai dilakukan dengan penghitungan manual, lalu dilakukan pemasukan data hasil penghitungan ke komputer dengan cara mengetik. Karena pemasukan data nilai dilakukan dengan cara mengetik, maka aplikasi ini rawan terhadap kesalahan dan proses pembuatan laporan relatif lebih lama. Melalui pembuatan aplikasi ini, proses pelaporan dilakukan secara otomatis setelah dilakukan pemasukan data absensi siswa, absensi guru serta nilai ujian. Karena sumber informasi berupa data siswa, data guru, data mata pelajaran dan data nilai ujian sudah disimpan dalam database, maka pembuatan laporan dapat dilakukan secara otomatis. Dengan penerapan pendataan siswa dengan komputer maka untuk pembuatan laporan-laporan dapat dengan mudah dilakukan. Laporan yang dibuat adalah Daftar siswa, laporan absensi siswa, absensi guru serta laporan nilai ujian.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
BUILDING APPLICATION DATABASE AT KEMALA BHAYANGKARI 1 HIGH SCHOOL MEDAN
ABSTRACT
Organizing data student and teacher at Kemala Bhayangkari 1 High School Medan still manually, in other words to make report still using application like Microsoft Word and Micrsoft Excel to processing data. Usually making grade report do manually and then insert the result data to the computer with typing. If we are input the data grade manually, this application susceptible to fault and report progress relatively a little bit longer. With using this application, processing report can do automatically after insert the students absent data, teachers absent, and the exam result. When the source of information like students data, teachers data, subject schedule data, and exam result data already save on database, so to make the report can do automatically. Processing student data with computer, so to make the report can do easily. The report we can make is students list, students absent report, teachers absent, and exam result report.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
DAFTAR ISI
Halaman HALAMAN PERSETUJUAN PERNYATAAN PENGHARGAAN ABSTRAK ABSTRACT DAFTAR ISI DAFTAR TABEL DAFTAR GAMBAR
Bab 1
Bab 2
PENDAHULUAN 1.1 Latar Belakang 1.2 Perumusan Masalah 1.3 Batasan Masalah 1.4 Tujuan Penelitian 1.5 Manfaat Penelitian 1.6 Metodelogi Penelitian 1.7 Sistematika Penulisan LANDASAN TEORI 2.1 Pengertian Sistem 2.1.1 Siklus Hidup Pengembangan Sistem 2.1.2 Karakteristik Sistem 2.1.3 Klasiflkasi Sistem 2.1.4 Pengertian Informasi 2.1.5 Pengertian Sistem Informasi 2.1.6 Sumber Daya Manusia 2.1.7 Sistem Informasi Sumber Daya Manusia 2.2 Alat Bantu Perancangan Sistem 2.2.1 Diagram Arus Data (Data Flow Diagram) 2.2.2 Penjelasan Flowchart Program 2.3 Pengertian Basis Data 2.4 Sejarah Oracle 2.5 Struktur Query Language (SQL)
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
ii iii iv v vi vii x xi
1 2 2 3 3 3 4
5 5 7 8 9 10 11 12 14 14 15 16 19 23
Bab 3
Bab 4
2.6 Gambaran Umum Tentang Visual Basic 6.0 2.6.1 Komponen-Komponen Visual Basic Versi 6.0 2.7 Crystal Report
26 27 28
ANALISIS DAN PERANCANGAN SISTEM 3.1 Analisis 3.1.1 Administrasi Hasil Penilaian 3.1.2 Laporan Hasil Ujian 3.1.3 Laporan Absensi Siswa dan Guru 3.1.4 Format Laporan Hasil Ujian 3.2 Perancangan Sistem 3.2.1 Diagram Konteks 3.2.1.1 Data Flow Diagram Level 1 3.2.1.2 DFD Level 2 Input Data Absensi Siswa 3.2.1.3 DFD Level 2 Input Data Absensi Guru 3.2.1.4 DFD Level 2 Input Data Nilai 3.2.1.5 DFD Level 2 Pelaporan 3.2.1.6 Kamus Data 3.2.2 Perancangan Database 3.2.2.1 Normalisasi 3.2.2.2 Perancangan Tabel Data 3.2.3 Perancangan Antarmuka (User Interface) 3.2.3.1 Rancangan Login 3.2.3.2 Rancangan Menu Utama 3.2.3.3 Rancangan Input Data Siswa 3.2.3.4 Rancangan Input Data Guru 3.2.3.5 Rancangan Data User 3.2.3.6 Rancangan Data Mata Pelajaran 3.2.3.7 Rancangan Data Absensi Siswa 3.2.3.8 Rancangan Data Absensi Guru 3.2.3.9 Rancangan Data Nilai 3.2.3.10 Rancangan Help 3.2.3.11 Rancangan About
30 31 33 35 35 36 36 37 39 40 40 41 42 42 43 48 53 54 55 55 56 57 58 58 59 60 61 62
ALGORITMA DAN IMPLEMENTASI 4.1 Algoritma 4.1.1 Algoritma Data Absen Siswa 4.1.2 Algoritma Data Absen Guru 4.1.3 Algoritma Data Nilai
63 63 64 65
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.2 Tampilan Login 4.3 Menu Utama 4.3.1 Tampilan Data Absensi Siswa 4.3.2 Tampilan Data Absensi Guru 4.3.3 Data Nilai 4.3.4 Data Siswa 4.3.5 Data Guru 4.3.6 Data Mata Pelajaran 4.3.7 Data User 4.3.8 Tampilan Bantuan 4.3.9 Tampilan About 4.4 Tampilan Daftar Siswa 4.5 Tampilan Laporan Absensi Siswa 4.6 Tampilan Laporan Absensi Guru 4.7 Tampilan Laporan Nilai Ujian
65 66 67 68 69 70 71 72 73 74 75 75 76 76 77
PENUTUP 5.1 Kesimpulan 5.2 Saran
78 78
DAFTAR PUSTAKA LAMPIRAN A : Kamus Data LAMPIRAN B : Listing Program
79 80 83
Bab 5
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
DAFTAR TABEL
Halaman Tabel 2.1 Tabel 2.2 Tabel 2.3 Tabel 2.4 Tabel 2.5 Tabel 3.1 Table 3.2 Table 3.3 Table 3.4 Table 3.5 Table 3.6 Table 3.7 Table 3.8 Table 3.9
Simbol Data Flow Diagram Simbol-simbol Flowchart Program Tabel Mahasiswa Tabel Mata Kuliah Tabel Pengambilan Mata Kuliah Tabel Atribut Tabel Siswa Tabel tUser Tabel Guru Tabel Absen Guru Tabel Absen Siswa Tabel Mata Pelajaran TAbel Nilai Tabel Dnilai
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
14 15 19 19 20 43 48 49 50 50 51 51 51 52
DAFTAR GAMBAR
Halaman Gambar 2.1 Gambar 2.2 Gambar 2.3 Gambar 2.4 Gambar 2.5 Gambar 2.6 Gambar 3.1 Gambar 3.2 Gambar 3.3 Gambar 3.4 Gambar 3.5 Gambar 3.6 Gambar 3.7 Gambar 3.8 Gambar 3.9 Gambar 3.10 Gambar 3.11 Gambar 3.12 Gambar 3.13 Gambar 3.14 Gambar 3.15 Gambar 3.16 Gambar 3.17 Gambar 3.18 Gambar 3.19 Gambar 3.20 Gambar 4.1 Gambar 4.2 Gambar 4.3 Gambar 4.4 Gambar 4.5 Gambar 4.6 Gambar 4.7 Gambar 4.8
Form aplikasi Visual Basic Toolbox Project Form Window Properties Window Code Window Skema Aliran Data Siswa Skema Aliran Data Siswa (Komputerisasi) Diagram Konteks Data Flow Diagram Level 1 DFD Level 2 Input Data Absensi Siswa DFD Level 2 Proses Absensi Guru DFD Level 2 Proses Input Data Nilai DFD Level 2 Pelaporan Relasi Antar Tabel Rancangan Login Rancangan Menu Utama Rancangan Input Data Siswa Rancangan Input Data Guru Rancangan Data User Rancangan Data Mata Pelajaran Rancangan Data Absensi Siswa Rancangan Data Absensi Guru Rancangan Data Nilai Rancangan Help Rancangan About Tampilan Login Tampilan Menu Utama Tampilan Data Absen Siswa Tampilan Data Absensi Guru Tampilan Data Nilai Tampilan Data Siswa Tampilan Data Guru Tampilan Data Mata Pelajaran
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
26 27 27 27 28 28 30 31 37 38 39 40 41 42 53 54 55 56 57 57 58 59 60 61 62 62 66 67 68 69 70 71 72 73
Gambar 4.9 Gambar 4.10 Gambar 4.11 Gambar 4.12 Gambar 4.13 Gambar 4.14 Gambar 4.15
Tampilan Data User Tampilan Help Tampilan About Tampilan Daftar Siswa Tampilan Laporan Absensi Siswa Tampilan Laporan Absensi Guru Tampilan Laporan Nilai
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
74 74 75 75 76 77 77
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Penerapan pendataan siswa dengan komputer digunakan untuk memudahkan dan mempercepat proses pelaporan data siswa. Pelaporan siswa terdiri atas laporan siswa secara keseluruhan maupun laporan siswa per individu.
Pada dasarnya di setiap sekolah, manajemen kesiswaan tidak memiliki perbedaan yang jauh. Setiap siswa memiliki NIS (Nomor Induk Siswa) yang merupakan identitas yang dikeluarkan oleh Kementrian Pendidikan Nasional. Di sekolah, siswa-siswa tersebut dikelompokkan per Rombongan Belajar (Rombel) per tingkat kelas. Rombel dibuat jika siswa dari sebuah tingkat kelas melebihi jumlah siswa maksimum per ruangan belajar atau lokal kelas.
Setiap individu siswa memiliki atribut masing-masing, antara lain adalah nama siswa, jenis kelamin, alamat, tempat lahir dan tanggal lahir sesuai manajemen kesiswaan di sekolah tersebut. Namun ada dua jenis atribut yang menonjol dalam Proses Belajar Mengajar (PBM) siswa di sekolah tersebut, yaitu nilai per mata pelajaran dan jumlah kehadiran. Dua atribut tersebut berpengaruh besar terhadap kenaikan kelas siswa atau kelulusan siswa di akhir tahun ajaran sekolah. Dua atribut ini juga ditetapkan parameternya oleh manajemen sekolah. Parameter kelulusan dan kenaikan kelas berbeda-beda pada masing-masing sekolah.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Demikian juga dengan pendataan guru yang berimbas pada kualitas pengajaran guru serta honor yang diberikan oleh sekolah kepada guru. Pendataan guru yang lengkap seperti absensi, cara dan metode guru mengajar di ruang kelas akan sangat besar mempengaruhi siswa-siswa lulusan sekolah tersebut.
Inti dari kegiatan sistem tersebut akan dituangkan ke dalam sebuah aplikasi pangkalan data dengan database Oracle 10g XE, dan menggunakan kelebihankelebihan yang dimiliki oleh Oracle XE.
1.2 Perumusan Masalah
Pendataan siswa dan guru di sekolah SMU Kemala Bhayangkari 1 Medan pada saat ini masih diselenggarakan secara manual, dalam arti pembuatan laporannya masih menggunakan aplikasi pengolah kata dan data (Microsoft Word dan Excel). Umumnya pembuatan laporan nilai dilakukan dengan penghitungan kalkulator, lalu dilakukan pemasukan data hasil penghitungan tadi ke komputer dengan cara mengetik. Karena pemasukan data nilai dilakukan dengan menggunakan keyboard maka aplikasi ini rawan terhadap kesalahan. Melalui pembuatan aplikasi ini, proses pelaporan dilakukan secara otomatis setelah dilakukan pemasukan data nilai ujian maupun data lainnya. Dengan sistem otomatisasi diharapkan proses pelaporan dapat lebih cepat dan akurat.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
1.3 Batasan Masalah
Adapun batasan masalah dalam penelitian ini adalah: 1. Meneliti sistem informasi yang diterapkan pada sekolah SMU Kemala Bhayangkari 1 Medan dan tidak melakukan perubahan sistem informasi yang telah ada. 2. Data yang di input berupa data absensi siswa, absensi guru dan nilai ujian siswa. 3. Database yang digunakan dalam pengembangan aplikasi pangkalan data ini adalah Oracle 10g XE.
1.4 Tujuan Penelitian
Tujuan dari pembangunan aplikasi ini adalah: 1. Merancang perangkat lunak untuk pemasukan data nilai siswa serta data nilai siswa per semester. 2. Merancang perangkat lunak untuk pemasukan data absensi guru. 3. Merancang perangkat lunak pembuatan laporan nilai siswa per semester. 4. Merancang perangkat lunak pembuatan laporan absensi guru.
1.5 Manfaat Penelitian
Manfaat dari penelitian ini adalah memudahkan pemasukan data nilai siswa, absensi siswa, data absensi guru serta mempercepat pembuatan laporan bagi pengambil keputusan di sekolah SMU Kemala Bhayangkari 1 Medan.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
1.6 Metodelogi Penelitian
Penelitian dilakukan dengan beberapa tahapan sebagai berikut: 1. Mengunjungi sekolah SMU Kemala Bhayangkari 1 Medan, meneliti arsitektur sistem informasi kesiswaan dan mengumpulkan data serta informasi kesiswaan di sekolah tersebut. 2. Menganalisis sistem informasi yang ada di sekolah tersebut dan merancang sistem informasi baru dalam bentuk diagram flowchart dan kerangka struktur database. 3. Mengimplementasikan hasil rancangan penelitian tersebut dalam bentuk aplikasi pangkalan data berbasis database Oracle 10g XE. 4. Menyusun
laporan
dan kesimpulan
akhir
terhadap
aplikasi
baru
dan
menuangkannya dalam bentuk tulisan format tugas akhir.
1.7 Sistematika Penulisan
Sistematika penulisan dari skripsi ini terdiri dari beberapa bagian utama sebagai berikut: BAB 1: PENDAHULUAN Bab ini menjelaskan mengenai latar belakang, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, dan sistematika penulisan.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
BAB 2: LANDASAN TEORI Bab ini membahas mengenai pengertian sistem informasi, database, sejarah database Oracle, bahasa pemrograman Visual Basic 6.0 serta Crystal Report sebagai pembuatan laporan.
BAB 3: ANALISIS DAN PERANCANGAN SISTEM Bab ini berisikan penjelasan analisis dari sistem yang akan dibangun, perancangan sistem, diagram-diagram, perancangan database, perancangan antarmuka (user interface) meliputi perancangan input serta output.
BAB 4: ALGORITMA DAN IMPLEMENTASI Pada bab ini dituangkan hasil analisis dan perancangan sistem yang ada di bab tiga dalam bentuk aplikasi yang dibangun melalui infrastuktur yang telah dijelaskan di bab-bab sebelumnya.
BAB 5: KESIMPULAN DAN SARAN Bab terakhir memuat kesimpulan isi dari keseluruhan uraian bab-bab sebelumnya dan saran-saran dari hasil yang diperoleh yang diharapkan dapat bermanfaat dalam pengembangan selanjutnya.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
BAB 2
LANDASAN TEORI
2.1 Pengertian Sistem
Sistem adalah suatu jaringan kerja dari prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran yang tertentu (John Willey dan Sons, 1981: 15).
Sistem adalah sejumlah komponen yang saling berinteraksi, yang artinya saling bekerja sama membentuk suatu satuan. Komponen-komponen sistem atau elemen-elemen sistem dapat berupa suatu subsistem atau bagian-bagian dari subsistem (John Willey dan Sons, 1981: 15).
Sistem adalah sekelompok elemen-elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan (Raymond Mc Leod, jr dan Georage Schell, 2001: 9).
2.1.1 Siklus Hidup Pengembangan Sistem
Menurut Tata Sutabri (2004: 60), Tahapan utama dalam proses pengembangan sistem informasi adalah sebagai berikut: 1. Investigasi Sistem
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Tahap ini untuk menentukan problem-problem atau kebutuhan yang timbul. Hal itu memerlukan pengembangan sistem secara menyeluruh atau ada usaha lain yang dapat dilakukan untuk memecahkannya. Salah satu alternatif jawabannya mungkin saja merupakan suatu keputusan untuk tidak melakukan perubahan apapun terhadap sistem yang berjalan. Alternatif lainnya mungkin hanya diperlukan perbaikan-perbaikan pada sistem tanpa harus menggantinya. 2. Analisis Sistem Tahap analisis bertitik tolak pada kegiatan-kegiatan dari tugas-tugas di mana sistem yang berjalan dipelajari lebih mendalam. Salah satu tujuan terpenting pada tahap ini adalah mendefinisikan sistem berjalan. Pemakai sistem dan analisis sistem bekerja sama untuk menjabarkan kebutuhan dan kemampuan dari sistem baru yang akan diusulkan. 3. Desain Sistem Tahap ini kegiatan diorientasikan pada komputer dilaksanakan. Spesifikasi perangkat keras pada perangkat lunak (HW/SW) yang telah disusun pada tahap selanjutnya ditinjau kembali dan disempurnakan. Rencana pembuatan program dilaksanakan dan juga testing programnya. Latihan para pemakai sistem dimulai. Pada akhirnya dengan berpartisipasi penuh dari pemakai sistem, dilakukan test sistem secara menyeluruh. 4. Implementasi Sistem Tahap ini untuk menyelesaikan desain sistem yang ada dalam dokumen desain sistem yang disetujui dan menguji, menginstal dan memulai penggunaan sistem baru atau sistem yang diperbaiki. Tujuan tahap ini adalah menyelesaikan desain sistem yang sudah disetujui, menguji serta mendokumentasikan program-program dan prosedur sistem yang diperlukan. 5. Pemeliharaan Sistem
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Disarankan adanya dua tahap riview yang harus dilaksanakan. Pertama kali tidak terlalu lama setelah penerapan sistem, di mana tim proyek masih ada dan masing-masing anggota masih memiliki ingatan yang segar atas sistem yang mereka buat. Riview berikutnya dapat dilakukan kira-kira setelah enam bulan berjalan. Tujuannya untuk meyakinkan apakah sistem tersebut berjalan sesuai dengan tujuan semula dan apakah masih ada perbaikan atau penyempurnaan yang harus dilakukan. Tujuan dari proses pemeliharaan sistem ini adalah untuk melakukan evaluasi sistem secara cepat dan efisien, menyempurnakan proses pemeliharaan sistem dengan selalu menganalisis kebutuhan informasi yang dihasilkan sistem tersebut dan lain sebagainya.
2.1.2 Karakteristik Sistem
Karakteristik Sistem terdiri atas: 1. Komponen sistem Suatu sistem terdiri dari jumlah komponen yang saling berinteraksi, bekerja sama membuat sebuah sistem juga memiliki karakteristik atau sifat-sifat tertentu, yang mencirikan bahwa hal tersebut bila dikatakan sebagai suatu sistem. 2. Batas Sistem Batas Sistem merupakan daerah yang membatasi antara suatu sistem dengan suatu sistem lainnya atau dengan lingkungan luarnya. Batas sistem ini memungkinkan suatu sistem dipandang sebagai satu kesatuan. 3. Lingkungan Luar Sistem (environment) Lingkungan Luar Sistem (environment) merupakan batasan dari sistem yang mempengaruhi opersistem. Lingkungan luar sistem dapat bersifat menguntungkan dan dapat juga bersifat merugikan sistem tersebut. Lingkungan luar yang menguntungkan merupakan energi dari sistem dan dengan demikian harus tetap
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
dijaga dan dipelihara. Sedangkan lingkungan luar yang merugikan harus ditahan dan dikendalikan, kalau tidak maka akan mengganggu kelangsungan hidup dari sistem. 4. Penghubung Sistem Penghubung Sistem merupakan media penghubung antar satu subsistem yang lainnya. Melalui penghubung ini memungkinkan sumber-sumber daya mengalir dari subsistem ke subsistem lainnya. Keluaran (output) dari suatu sistem menjadi masukan (input) untuk subsistem yang lainnya dengan melalui penghubung. Dengan penghubung satu subsistem dapat berinteraksi dengan subsistem yang lainnya membentuk suatu kesatuan. 5. Masukan Sistem Masukan Sistem merupakan suatu energi yang dimasukkan kedalam sistem. Masukan dapat berupa masukan perawatan (maintenance input) dan masukan sinyal (signal input). Maintenance input adalah energi yang dimasukkan supaya sistem tersebut dapat beroperasi. Signal input adalah energi yang diproses untuk didapatkan keluaran.
6. Keluaran Sistem Keluaran Sistem merupakan hasil dari energi yang diolah dan diklasifikasikan menjadi keluaran yang berguna dan sisa pembuangan. Keluaran dapat berupa masukan untuk subsistem yang lain atau kepada supra sistem. 7. Pengolahan Sistem Suatu sistem dapat berupa bagian pengolah yang akan mengubah suatu masukan menjadi keluaran. Suatu sistem produksi akan mengolah suatu masukan berupa bahan baku dan bahan-bahan yang lain menjadi keluaran berupa barang jadi. 8. Sasaran Sistem
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Suatu sistem pasti mempunyai suatu sasaran (goal) atau sasaran (objektive). Kalau suatu sistem tidak mempunyai sasaran, maka operasi sistem tidak akan ada gunanya.
2.1.3 Klasiflkasi Sistem
Sistem dapat diklasifikasikan dari beberapa sudut pandang, diantaranya adalah sebagai berikut: 1. Sistem Abstrak Sistem abstrak adalah sebuah sistem yang berupa pemikiran atau ide-ide yang tidak tampak secara fisik. Dan hanya dapat dirasakan oleh sipemakai. Misalnya sistem Teologika, yaitu sistem yang berupa pemikiran-pemikiran hubungan antar manusia dengan Tuhan. Sistem fisik merupakan sistem yang ada secara fisik, misalnya sistem komputer, sistem akuntansi, sistem produksi dan lain sebagainya. 2. Sistem Alamiah Sistem alamiah adalah suatu sistem yang terjadi secara proses alam, tidak dibuat oleh manusia, misalnya sistem perputaran bumi. 3. Sistem Tertentu Sistem tertentu beroperasi dengan tingkah laku yang sudah dapat diprediksikan. Interaksi diantara bagian-bagiannya dapat dideteksi dengan pasti, sehingga keluaran dari sistem dapat diramalkan.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4. Sistem Tertutup Sistem tertutup adalah sistem yang tidak berhubungan dan tidak terpengaruh dengan lingkungan luarnya. Sistem ini bekerja secara otomatis sampai adanya turut campur tangan pihak luarnya.
2.1.4 Pengertian Informasi
Informasi adalah data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti lagi yang menerimanya (Jogiyanto, 1980: 8).
Informasi adalah salah satu jenis utama sumber daya yang tersedia bagi Manager. Informasi dapat dikelola seperti halnya sumber daya yang lain, dan perhatian pada topik ini bersumber dari dua pengaruh. Pertama, bisnis akan semakin rumit, kedua komputer telah mencapai kemampuan yang semakin baik (Raymond Mc Leod, jr dan George Schell, 2001: 3). 1. Kualitas Informasi a. Akurat Akurat berarti informasi harus bebas dari kesalahan-kesalahan dan tidak bias atau menyesatkan. Akurat juga berarti informasi harus jelas mencerminkan maksudnya. Informasi harus akurat karena dari sumber informasi sampai kepenerima informasi kemungkinan banyak terjadi gangguan yang dapat mengubah atau merusak informasi tersebut. b. Tepat pada waktunya Tepat pada waktunya berarti informasi yang datang pada penerima tidak boleh terlambat Informasi yang sudah usang tidak akan mempunyai nilai lagi. Karena informasi merupakan landasan didalam pengambilan keputusan. Bila
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
pengambilan keputusan terlambat, maka akan dapat berakibat fatal untuk organisasi. c. Relevan Relevan berarti informasi tersebut mempunyai manfaat untuk pemakainya. Relevan suatu informasi untuk tiap-tiap orang satu dengan yang lainnya berbeda. 2. Nilai Informasi Nilai dari suatu informsi ditentukan oleh dua hal, antara lain yaitu manfaat dan biaya mendapatkannya. Suatu informasi dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya. Akan tetapi perlu perhatian bahwa informasi yang digunakan didalam suatu sistem informasi umumnya digunakan untuk beberapa kegunaan. Sehingga tidak memungkinkan informasi pada suatu masalah yang tertentu dengan biaya untuk memperolehnya, karena sebagian besar informasi dinikmati tidak hanya oleh suatu pihak didalam perusahaanya. Lebih lanjut sebagian besar informasi tidak dapat persis ditaksir keuntungannya dengan suatu satuan nilai uang, tetapi dapat ditaksir nilai uang, tetapi dapat ditaksir nilai efektifnya. Pengukuran nilai informasinya biasanya dihubungkan dengan analisis efektif biaya.
2.1.5 Pengertian Sistem Informasi
Sistem informasi adalah suatu sistem didalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian, mendukung organisasi, bersifat menejerial dan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan yang diperlukan. 1. Komponen Sistem Informasi
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Dalam komponen informasi terdiri dari komponen-komponen yang disebutkan dengan istilah "blok bangunan", diantaranya adalah: a. Blok masukkan Input mewakili data yang masuk kedalam sistem informasi. Input disini termasuk metode-metode dan media untuk menangkap data yang akan dimasukkan, yang dapat berupa dokumen-dokumen dasar. b. Blok model Blok ini terdiri dari kombinasi prosedur, logika dan model matematik yang akan memanipulasi data input dan data yang tersimpan di basis data dengan cara yang sudah tertentu untuk menghasilkan keluaran yang diinginkan. c. Blok keluar Produk dari sistem informasi adalah keluaran yang merupakan informasi yang berkualitas dan dokumentasi yang berguna untuk semua tingkatan managemen serta semua pemakai sistem. d. Blok teknologi Teknologi digunakan untuk menerima input, menjalankan model, menyimpan dan mengakses data, menghasilkan dan mengirimkan keluaran dan membantu pengendalian dari sistem secara keseluruhan. e. Blok basis data Blok basis data merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan di perangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinya. Basis data di akses atau dimanipulasi dengan menggunakan perangkat lunak paket yang disebut dengan "DBMS" (Data Base Management System). f. Blok kendali Banyak hal yang dapat merusak sistem informasi, seperti misalnya bencana alam, api, temperatur, air, debu, kecurangan-kecurangan, kegagalan-kegagalan
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
dari sistem itu sendiri. kesalahan-kesalahan, ketidakefisienan, sabotase dan lain sebagainya. Beberapa pengendalian perlu dirancang dan diterapkan untuk meyakinkan bahwa hal-hal yang dapat merusak sistem dapat dicegah ataupun bila terlanjur terjadi kesalahan-kesalahan dapat langsung cepat diatasi.
2.1.6 Sumber Daya Manusia
Sumber Daya Manusia (human resources) mengandung pengertian usaha kerja atau jasa yang dapat diberikan dalam proses produksi sehingga mencerminkan usaha seseorang dalam waktu tertentu untuk menghasilkan barang dan jasa (Robert L. Malthis dan Jhon H. Jackson, 2001: 21).
Sumber Daya Manusia adalah manusia yang mampu bekerja untuk memberikan jasa atau usaha kerja. mampu bekerja berarti mampu melakukan kegiatan yang mempunyai nilai ekonomis, yaitu kegiatan tersebut mengasilkan barang atau jasa untuk memenuhi kebutuhan masyarakat (Sonny Sumarsono, 2003: 5). Manajemen sumber daya manusia yang berdasarkan empat prinsip, yaitu: 1. Bahwa manusia adalah harta utama perusahaan dan manajemen yang efektif adalah sebagai kunci bagi terciptanya tujuan organisasi. 2. Untuk mencapai suatu tujuan tersebut, segala kultur dan unsur dalam organisasi harus saling menunjang dan dapat bekerjasama. 3. Kultur dan nilai perusahaan serta situasi organisasi akan memberikan pengaruh yang besar terhadap pencapaian tujuan tersebut. 4. Manajemen sumber daya manusia berhubungan dengan integrasi, menjadikan semua anggota terlihat bekerja sama untuk mencapai tujuan tersebut (Komaruddin, 1990).
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
2.1.7 Sistem Informasi Sumber Daya Manusia
Sistem Informasi Sumber Daya Manusia adalah sistem integrasi yang dirancang untuk menyediakan informasi yang diperlukan untuk pengambilan keputusan Sumber Daya Manusia walaupun sistem Sumber Daya Manusia tidak harus dikomputerisasikan, tetapi kebanyakan organisasi telah menerapkan ini (Robert L. Mathis dan Jhon H. Jackson, 2001: 61).
Sistem Sumber Daya Manusia adalah suatu sistemnya dapat menunggu strategi Sumber Daya Manusia organisasi tersebut ini membutuhkan analisis terhadap penggunaan informasi Sumber Daya Manusia dan pada organisasi pada keseluruhan. Yang sering terjadi adalah masalah keputusan tentang Sistem Informasi Sumber Daya Manusia (SISDM) dibuat berdasarkan terutama pada faktor biaya dari pada bagaimana SISDM telah lebih baik mendukung pembuatan keputusan Sumber Daya Manusia (Robert L. Mathis dan Jhon H. Jackson, 2001: 63). 1. Tujuan Sistem Informasi Sumber Daya Manusia Sistem Informasi Sumber Daya Manusia melayani dua tujuan dalam organisasi. Kedua tujuan tesebuat adalah sebagai berikut: Tujuan yang pertama Sistem Informasi Sumber Daya Manusia adalah meningkatkan efisiensi data tenaga kerja didalam kegiatan Informasi Sumber Daya Manusia dikumpulkan. Beberapa kegiatan Informasi Sumber Daya Manusia dapat ditunjukan dengan lebih efisiensi dan sedikit pekerja di atas kertas kalau sudah di otomatiskan. Arus, pekerjaan otomatisasi dari beberapa kegiatan Sumber Daya Manusia dan dari penyimpanan data Sumber Daya Manusia adalah sebagai kunci untuk meningkatkan kegiatan Sumber Daya Manusia dengan pembuatan arus pekerjaan yang lebih efisien.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Tujuan yang kedua adalah lebih strategis dan berhubungan dengan perencanaan Sumber Daya Manusia. Dengan kemampuan mengakses data memungkinkan perencanaan Sumber Daya Manusia dengan pembuatan keputusan tingkat menejerial. Menjadi dasar untuk tingkat informasi yang lebih besar dari pada tergantung pada persepsi dan intuisi menejerial. 2. Penggunaan Sistem Informasi Sumber Daya Manusia Penerapannya Penggunaan Sistem Sumber Daya Manusia memiliki banyak kegunaan dalam suatu organisasi. Dengan Sistem Sumber Daya Manusia, pencatatan waktu tenaga kerja dimasukan kedalam sistem, dan dimodifikasi disesuaikan pada setiap individual sebagai hasil dari pengembangan dan penerapan sistem Informasi Sumber Daya Manusia pada berbagai organisasi. Dari sudut pandang pelatihan, adalah penting untuk membuat bebagai bentuk penilaian prestasi yang teratur diantara para pekerja. Jika hal ini dikerjakan secara sistematis sepanjang tahun, maka rencana pelatihan akan menjadi mantap.
Kegunaan lain dari Sistem Informasi Sumber Daya Manusia adalah kesetaraan kesempatan bekerja. Dibalik kegiatan dasar ini, beberapa kegiatan Sistem Informasi Sumber Daya Manusia lain dapat dipengaruhi dengan penggunaan SISDM. Untuk merancang Sistem Informasi Sumber Daya Manusia yang efektif para ahli menyarankan untuk menilainya dengan pertanyaan-pertanyaan mengenai data yang akan diperlukan seperti: 1. Informasi apa yang tersedia, dan informasi apa yang dibutuhkan orang-orang dalam organisasi. 2. Untuk tujuan apa informasi tersebut akan diberikan. 3. Pada format yang bagaimana seharusnya output untuk menyesuaikan dengan data perusahaan lain.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4. Siapa yang membutuhkan informasi. 5. Kapan dan seberapa seringnya.
Jawaban atas pertanyaan-pertanyaan tersebut menolong menunjukan keperluan akan perangkat lunak dan perangkat keras. Para ahli mengusulkan bahwa suatu tim proyek harus dibuat sedemikian rupa secara ekstensif tim ini sering meliputi perwakilan dari beberapa departemen dalam suatu organisasi, termasuk area proses menejemen informasi. Tim ini bertindak sebagai pengarah pada komite untuk mengkaji kebutuhan pemakai (user).
2.2 Alat bantu Perancangan Sistem
2.2.1 Diagram Arus Data (Data Flow Diagram)
Data flow diagram adalah suatu network yang mengGambarkan suatu sistem automat/komputerisasi,
manualisasi
atau
gabungan
dari
keduanya
yang
pengGambarannya disusun dalam bentuk kumpulan komponen sistem yang saling berhubungan sesuai dengan aturan mainnya. Simbol-simbol pada Data Flow Diagram dapat dilihat pada Tabel 2.1.
Tabel 2.1 Simbol Data Flow Diagram SIMBOL
FUNGSI Eksternal entity (kesatuan luar atau batas sistem) berupa orang, organisasi atau sistem lainnya yang berada di lingkungan luarnya
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
yang akan memberikan input atau menerima output dari sistem. Dataflow (arus data) arus data ini mengalir diantara proses, simpanan data dan kesatuan luar. Process (proses) kegiatan arus kerja yang dilakukan oleh orang, mesin atau komputer dari hasil suatu arus data yang masuk ke dalam proses untuk dihasilkan.
Tabel 2.1 Simbol Data Flow Diagram (Lanjutan) SIMBOL
FUNGSI Data store merupakan simpanan data yang berupa file database atau tabel manual, agenda atau buku.
Sumber: Jogiyanto HM (2005:701) "Analisis dan Desain Sistem Informasi".
Tahapan Diagram Arus Data terbagi atas beberapa bagian yaitu: 1. Diagram Konteks Diagram ini dibuat untuk mengGambarkan sumber serta tujuan data yang akan di proses atau dengan kata lain diagram tersebut digunakan untuk mengGambarkan sistem secara umum/global dari keseluruhan sistem yang ada. 2. Diagram nol Diagram ini dibuat untuk mengGambarkan tahapan proses yang ada didalam diagram konteks, yang penjabarannya lebih terperinci. 3. Diagram Detail Diagram ini dibuat untuk mengGambarkan arus data secara lebih mendetail lagi dari tahapan proses yang didalam diagram nol.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
2.2.2 Penjelasan Flowchart Program
Program Flowchart adalah bagan alir yang mengGambarkan arus data dari program. Fungsi dari bagan alir ini adalah untuk memudahkan programmer di dalam perancangan program aplikasi. Simbol-simbol yang digunakan pada bagan flowchart ini antara lain seperti pada Table 2.2.
Tabel 2.2 Simbol-simbol Flowchart Program SIMBOL
FUNGSI Terminator Menunjukkan awal dan akhir suatu proses. Data Digunakan untuk mewakili data input/output.
Tabel 2.2 Simbol-simbol Flowchart Program (Lanjutan) SIMBOL
FUNGSI Process Digunakan untuk mewakili proses. Decision Digunakan untuk suatu seleksi kondisi didalam program. Predefined Process Menunjukkan suatu operasi yang rinciannya ditunjukkan di tempat lain. Preparation Digunakan untuk memberi nilai awal variabel. Flow Lines Symbol Menunjukkan arah dari proses.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Connector Menunjukkan penghubung ke halaman yang sama. Menunjukkan penghubung ke halaman yang baru.
Sumber: Jogiyanto HM (2005: 803) "Analisis dan Desain Sistem Informasi".
Adapun langkah-langkah dari pembuatan flowchart program adalah sebagai berikut: 1. Pemahaman masalah. 2. Tentukan data (variabel) yang dibutuhkan. 3. Tentukan input yang sesuai dengan data variabel yang telah disiapkan. 4. Tentukan bentuk proses pengolahan data input.
2.3 Pengertian Basis Data
Basis data terdiri dari dua kata, yaitu Basis dan Data. Basis berarti markas atau gudang, tempat bersarang/berkumpul. Sedang Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia pegawai, siswa, guru, pelanggan, barang, hewan, peristiwa, konsep, keadaan, dan sebagainya yang direkam dalam bentuk angka, huruf, simbol, teks, Gambar, bunyi, atau kombinasinya.
Basis Data dapat didefinisikan dalam sejumlah sudut pandang seperti: 1. Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
2. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (Redudance) yang tidak perlu, untuk memenuhi berbagai kebutuhan. 3. Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis.
Basis Data dan lemari arsip sesungguhnya memiliki prinsip kerja dan tujuan yang sama. Prinsip utamanya adalah pengaturan data/arsip. Dan tujuan utamanya adalah kemudahan dan kecepatan dalam mengambil kembali data/arsip. Perbedaannya hanya terdapat pada media penyimpanan yang digunakan. Jika lemari arsip menggunakan lemari dari besi atau kayu sebagai media penyimpanan, maka basis data menggunakan media penyimpanan elektronis seperti disk (disket atau harddisk). Hal ini
merupakan
dikelola/ditangani
konsekuensi manusia,
yang
logis,
karena
sementara basis
lemari
arsip
langsung
data dikelola/ditangani
melalui
perantaraan alat/mesin pintar elektronik (yang kita kenal sebagai komputer).
Istilah-istilah yang dipergunakan dalam sistem basis data adalah: 1. Enterprise, suatu bentuk organisasi, seperti: sekolah, Universitas, Kantor. Data yang disimpan di dalam basis data merupakan data operasional suatu enterprise. Contoh data operasional adalah: Data Sekolah
KdKelas, NmKelas
Data Kelas
NIS, NmSiswa, JnsKelamain
Data Matapelajaran
KdPelajaran, NmPelajaran
2. Entitas, suatu obyek yang dapat dibedakan dengan obyek lainnya yang dapat diwujudkan di dalam basis data. Contoh: a. Entitas di lingkungan Sekolah (siswa, guru, buku).
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
b. Entitas di lingkungan Universitas (Fakultas, Dosen, Mahasiswa). c. Kumpulan entitas disebut himpunan entitas. Contoh: Sekolah merupakan kumpulan entitas siswa dan guru. 3. Attribute/field, karakteristik entitas tertentu. Contoh: Entity siswa atributnya adalah NIS, NmSiswa, Jksiswa Entity guru atributnya adalah NIP, NmGuru, JkGuru 4. Data Value (nilai atau isi data), merupakan data aktual atau informasi yang disimpan di tiap data elemen atau atribut. Isi atribut disebut nilai data. Contoh: Atribut NmSiswa Sutrisno, Budiman. 5. Record/Tuple, kumpulan isi elemen data atribut yang saling berhubungan menginformasikan tentang suatu entity secara lengkap. Contoh: kumpulan atribut NIS, NmSiswa, JkSiswa berisikan “04345698”, Nina Warni, Perempuan. 6. File, kumpulan record sejenis yang mempunyai panjang elemen dan atribut yang sama, namun berbeda-beda valuenya. 7. Kunci elemen data, sebagai tanda pengenal yang secara unik mengidentifikasi entitas dari suatu kumpulan entitas. Contoh: Entitas Pegawai mempunyai atribut-atribut NIP, NmPegawai, Alamat, menggunakan NIP sebagai kunci elemen data. 8. Database Management System (DBMS), kemudian yang saling berkaitan bersama dengan program untuk pengelolanya.
Basis data dapat terdiri dari ratusan field yang dibutuhkan untuk informasi dan basis data juga dapat diakses/dipakai secara bersama-sama oleh lebih dari beberapa ratus pemakai (user). Karena basis data dipergunakan secara bersama-sama, mungkin
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
dalam waktu yang bersamaan, maka diperlukan suatu pengontrol dan pengelola data yang ada didalam suatu basis data.
Pengontrol ini dilakukan oleh DBMS (Database Management System) yang merupakan kumpulan software yang mengkoordinasikan semua kegiatan yang berhubungan dengan basis data agar data dapat diakses/dipakai oleh pengguna. Tujuannya adalah efisiensi dan kenyamanan dalam memperoleh dan menyimpan informasi di dalam basis data.
2.4 Sejarah Oracle
Pada dasarnya berdasarkan cara bagaimana data itu diorganisasi ada beberapa tipe sistem basis data (tipe hierarki, jaringan dan sebagainya, hingga yang paling maju saat ini adalah sistem basis data objek relasional). Namun demikian, yang hingga saat ini yang paling banyak digunakan adalah basis data relasional (Relational Database). Konsep basis data relasional sendiri pertama kalinya dikemukakan oleh Peter Chen pada
sekitar
tahun
1970
dalam
papernya
yang
terkenal
dan
kemudian
diimplementasikan dalam bentuk sistem manajemen basis data DBMS (Database Management System) oleh DR. Ted Codd pada tahun yang sama di IBM (International Bussiness Machines) Research Center.
Basis data relasional adalah tipe basis data atau sistem manajemen basis data yang menyimpan data dalam bentuk tabel terdiri dari baris-baris data dan kolom data dimana data pada kolom dan baris tertentu terkadang dapat digunakan sebagai rujukan pencarian data yang berkaitan di tabel yang lain seperti pada tabel-tabel di bawah ini.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Tabel 2.3 Tabel Mahasiswa NIM
Nama
5184025 5183027 5184088 5184099
Adi Nugroho Ana Mariana Esti Nugraheni Eni Nugraheni
Tabel 2.4 Tabel Mata Kuliah
Tabel 2.5
No_MK
Nama_MK
SKS
110011 130012 130013
Pascal C Basis Data
3 3 3
Tabel
Pengambilan Mata Kuliah NIM
No_MK
Nama_MK
SKS
5184025 5183027 5184088 5184099
110011
Pascal
3
130012
C
3
130013
Basis Data
3
Pada Tabel 2.3 memperlihatkan data tentang mahasiswa tertentu, misalnya mahasiswa dengan NIM=5184025 memiliki nama Adi Nugroho, mahasiswa dengan NIM=5183027 memiliki nama Ana Mariana, dan selanjutnya. Tabel kedua memperlihatkan data tentang mata kuliah, misalnya mata kuliah dengan nomor mata kuliah No_MK=110011 bernama pascal dengan jumlah SKS sebanyak 3 SKS, mata kuliah dengan nomor mata kuliah No_MK=110012 dengan jumlah SKS sebesar 3 adalah mata kuliah bahasa C. kemudian tabel ketiga memperlihatkan data mahasiswa yang mengambil mata kuliah tertentu beserta nilainya masing-masing, misalnya Adi
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Nugroho
yang
memiliki
NIM=5184025
mengambil
mata
kuliah
pascal
No_MK=110011 mendapatkan indeks nilai A dan Esti Nugraheni yang memiliki NIM=5183027 dan Eni Nugraheni yang memiliki NIM=5184099 ternyata tidak mengambil mata kuliah apa-apa (Mungkin yang bersangkutan sedang mengambil cuti).
Dalam basis data relasional, data disimpan dalam bentuk tabel (beberapa penulis menyebutkannya sebagai relasi) di mana baris-baris pada tabel menyatakan rekaman-rekaman (record) dan kolom-kolom menyatakan field-field (atribut-atribut pada rekaman). Untuk memandu pencarian, basis data relasional mencocokan data dari salah satu tabel dengan data pada tabel yang lain dan menghasilkan tabel ketiga yang menggabungkan data dari kedua Tabel 2.5. Sistem basis data relasional, seperti telah kita singgung di atas, pertama kali diperkenalkan dan diimplementasikan oleh DR. Ted Codd dari IBM Research Center pada tahun 1970. Kepopuleran basis data relasional antara lain karena ia didukung oleh landasan matematika (Kalkulus Relasional) yang tangguh. Model relasional menampilkan basis data sebagai koleksi dari relasi-relasi (basis data adalah himpunan dari relasi-relasi). Secara formal, setiap relasi ditampilkan dalam bentuk tabel atau sering disebut tabel datar (flat files) dari rekaman-rekaman (record). Selain itu, relasi sering didefinisikan sebagai himpunan rekaman-rekaman. Dalam berkas basis data, rekaman-rekaman (record), secara fisik tersimpan di media simpan tertentu sehingga ada hubungan (relasi) satu sama lain. Ketika kita menampilkan relasi sebagai tabel, baris-baris (rekaman-rekaman) ditampilkan menurut hubungan yang pasti.
Setiap nilai dalam atribut suatu rekaman harus bernilai atomic, yang artinya tidak dapat dibagi lagi menjadi komponen-komponennya dalam kerangka model relasional sehingga atribut bernilai banyak tidak di izinkan. (Teori dibelakang
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
fenomena ini adalah asumsi first normal form). Skema relasi dapat ditafsirkan sebagai deklarasi atau tipe pernyataan. Catat bahwa kebanyakan relasi adalah fakta tentang sebuah/beberapa buah entitas. (Entitas adalah sekumpulan objek di dunia nyata yang memiliki karakteristik serta prilaku yang serupa dalam kaitannya dengan aplikasi tertentu).
Dalam basis data relasional, kita juga menjumpai konsep integritas referensial yang menghubungkan kunci primer (primary key) atribut pengidentifikasi suatu rekaman dengan kunci tamu (foreign key) di tabel lain yang memiliki hubungan dengan tabel yang terdahulu. Kunci primer (primary key) ini tidak boleh berisi dengan nilai kosong (null) dan harus unik sebab nilai kunci primer digunakan untuk mengidentifikasi rekaman individual dalam relasi. Tanpa kunci primer (primary key), kita akan sulit menentukan cara menentukan sebuah rekaman adalah unik dibandingkan rekaman yang lain.
Basis data bertipe relasional RDBMS (Relational Database Management System), seperti telah kita bahas di atas, adalah basis data dimana data secara logika disimpan dalam bentuk tabel-tabel/relasi-relasi. RDBMS memiliki tiga aspek utama yaitu: 1. Data ditampilkan sebagai tabel-tabel dua dimensi Tabel-tabel memiliki nomor-nomor yang spesifik bagi setiap baris dan kolom dan suatu
data
disimpan
pada
baris
serta
kolom
tertentu.
Kolom-kolom
memperlihatkan atribut-atribut dan setiap baris mewakili data untuk suatu objek. 2. Operator untuk memanipulasi tabel-tabel SQL (Struktured Query Language) adalah bahasa basis data standart untuk akses data pada basis data bertipe relasional. Dalam hampir segala hal menyangkut administrasi basis data, oracle menggunakan sintaks-sintaks SQL. Selain itu, suatu
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
pengembangan dari bahasa pemograman nir-prosedural SQL, yaitu: PL/SQL (Pemogramming Language/Structured Query Language), juga dikembangkan Oracle Corp, demi peningkatan kemampuan SQL baku. 3. Integritas Referensial Integritas referensial merupakan sarana
penghubung utama pada suatu basis data
relasional sehingga data pada suatu tabel dapat berhubungan dengan data yang berada pada tabel yang lain, melalui penggunaan kunci primer (primary key) dan kunci tamu (foreign key).
Tujuan dari pembahasan tabel serta relasinya lewat contoh sederhana di atas adalah untuk mengingatkan tentang konsep basis data relasional yaitu konsep basis data yang paling populer saat ini, yang di implementasikan oleh Oracle 10g Database Server. Oracle Corporation, merupakan salah satu perusahaan perangkat lunak terbesar di dunia dan merupakan penyediaan utama dari perangkat lunak sistem basis data DBMS (Database Management System). Program-program basis data Oracle 10g memungkinkan perusahaan-perusahaan besar dan pemerintah-pemerintah mengelola, mengakses, dan menyimpan sejumlah informasi pada berbagai sistem komputer dari laporan penjualan perusahaan, penggajian, hingga daftar pelanggan pada sistem pemesanan layanan penerbangan. Saat ini, Oracle juga membuat kakas-kakas (tool) lain untuk para pengembang perangkat lunak (software developer) dan juga mengembangkan berbagai perangkat lunak untuk mengelola informasi-informasi di komputer server. Perusahaan Oracle Corporation ini berbasis di Redwood Shores, California, Amerika Serikat.
Lawrence J. Ellison, Robert N. Miner, dan Edward Oates mendirikan sistem Development Laboratories pada tahun 1977 untuk mengembangkan perangkat lunak basis data untuk komputer mainframe. Ellison bekerja pada perusahaan ini untuk
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
mengembangkan komputer mainframe pertama yang kompatibel dengan komputer International Business Machines (IBM). Di perusahaan barunya ini, Ellison sudah lama memperhatikan bahwa IBM telah mengembangkan program basis data bertipe relasional, yang bernama DB2. System Development Laboratories menentang pasaran program basis data relasional IBM pada tahun 1979 dengan mengembangkan sistem basis data relasional yang mereka namakan Oracle RDBMS (Relational Database Management System), produksi sistem basis data relasional komersial pertama yang menggunakan SQL (Stuctured Query Language). Saat ini SQL telah menjadi standar untuk produksi-produksi basis data bertipe relasional.
Pada tahun 1982, System Development Laboratories mengubah namanya menjadi Oracle Corporation, setelah sukses dengan produk basis datanya yang bernama Oracle. Oracle Corporation kemudian menjadi pemimpin industri dalam hal produk perngkat lunak sistem basis data, dan memenangkan berbagai kontrak pengembangan aplikasi-aplikasi basis data diberbagai perusahaan besar di Amerika Serikat dan diseluruh dunia. Selama tahun 1980-an, penjualan Oracle berlipat dua setiap tahun, bertumbuh dari $2,5 juta pada tahun 1982 menjadi $916 pada tahun 1990. Pada tahun 1991, perusahaan ini mengalami kerugiannya yang pertama kali dan kemudian melakukan reorganisasi sistem basis datanya. Pada tahun 1992, perusahaan ini kembali meraup keuntungan.
Oracle Corporation selanjutnya mulai bergerak untuk mengembangkan perangkat keras dan perangkat lunak untuk menangani basis data video, suara (audio), dan teks berukuran besar, untuk aplikasi-aplikasi yang berjalan lewat jaringan global. Oracle Corporation kemudian juga membeli Cube Corporation di Foster City California, perintis dalam komputer super yang menggunakan teknik komputasi yang dinamakan Massivelly Parallel Processing. Memungkinkan Oracle Database Server
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
bekerja dengan perangkat keras yang mampu memindahkan sejumlah data berjumlah besar yang dibutuhkan untuk mengelolah basis data multimedia.
2.5 Struktur Query Language (SQL)
SQL merupakan bahasa query standar yang digunakan untuk mengakses basis data relasional. Standarisasi internasional terhadap SQL pertama kali dilakukan oleh ANSI (American National Standards Institution), melalui publikasi databse language SQL (ANSI X3. 135 – 1986). Saat ini, ANSI dan ISO (International Standards Organization) merupakan dua organisasi yang membuat standarisasi terhadap SQL. SQL pertama kali diterapkan pada sistem R (sebuah proyek riset pada laboratoruium riset San Jose, IBM). Namun kini SQL juga dijumpai pada berbagai platform, dari microcomputer (personal computer) hingga mainframe (super computer). SQL dapat digunakan baik secara berdiri sendiri maupun dilekatkan pada bahasa-bahasa lain seperti COBOL dan C. SQL juga telah menjadi bagian dari sejumlah DBMS (Database Managements System), seperti Oracle, Sysbase dan Informix.
Ada tiga jenis pengelompokan perintah SQL adalah: 1. Data Definition Language (DDL) DDL merupakan perintah yang digunakan untuk melakukan pendefinisian database dan tabel. Dengan kelompok perintah dalam DDL ini maka dapat dibuat tabel, mengubah strukturnya, menghapus tabel, membuat index untuk tabel yang bermuara pada pembentukan struktur database, sebagai salah satu contoh perintah dalam kelompok DDL dalam pembuatan tabel.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Create table Namatable (Field1 TypeData [fild2 TipeData2[,…]])
2. Data Manipulation Language (DML) DML merupakan kelompok perintah untuk melakukan manipulasi data dalam database, menambah data, mengubah data, menghapus data, mengambil dan mencari data. Sebagai salah satu contoh perintah dalam kelompok DML dalam membaca data dari tabel adalah:
Select * From
NamaTable order by field1 asc
3. Data Control Language (DCL) DCL merupakan kelompok perintah untuk melakukan pendefinisian pemakai yang boleh mengakses database dan apa saja privitegennya (hak untuk menggunakan). Fasilitas ini tersedia pada sistem manajemen database yang memiliki fasilitas keamanan dengan membatasi pemakai dengan kewenangannya.
Kelompok
perintah DCL sering digunakan oleh DBA (Database Adminstrator). Sebagai salah satu contoh perintah dalam kelompok DCL adalah:
GRANT Perintah SQL[,...] TO Namapengguna [,...]
Adapun keunggulan dari Database ini adalah: 1. Dapat menghemat biaya karena dapat dipakai oleh banyak departemen. 2. Meningkatkan produktivitas pemrograman. 3. Memudahkan memperoleh informasi yang lebih banyak dari data yang sama disebabkan data dari berbagai bagian dalam organisasi dikumpulkan menjadi satu. 4. Meningkatkan keamanan data dari orang yang tak berwenang.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Dalam sistem manejemen database, database terdiri dari sekumpulan objek yaitu: 1. Karakter merupakan bagian dari data yang kecil, dapat berupa karakter numeric, huruf maupun karakter-karakter khusus yang membentuk suatu item data. 2. Field (Attribute) Suatu field mengGambarkan atribut dari record yang menunjukkan sutau item dari data, misalnya nama, alamat, tanggal lahir, dan sebagainya. 3. Record Record adalah kumpulan dari beberapa field yang mengGambarkan suatu unit dari individu tertentu, misalnya nomor karyawan, nama karyawan, alamat kota, tanggal masuk. 4. File File adalah kumpulan dari record-record yang mengGambarkan satu kesatuan data yang sejenis misalnya file mahasiswa berisi tentang semua data mahasiswa yang ada. 5. Database Database terdiri dari file yang mempunyai kaitan antara satu file dengan yang lain sehingga membentuk satu bangunan data untuk menginformasikan satu data, misalnya perusahaan yang berisi file pegawai, gaji dan jabatan dan lain-lain.
2.6 Gambaran Umum Tentang Visual Basic 6.0
Visual Basic 6.0 adalah salah satu produk bahasa pemograman yang dikeluarkan Microsoft, salah satu perusahaan software terkemuka di dunia. Visual Basic 6.0 merupakan bahasa pemograman yang mudah untuk pengembangan aplikasi, baik itu aplikasi kecil maupun aplikasi besar. Dengan banyaknya komponen kontrol yang
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
disediakan Visual Basic 6.0, membuat para programmer dan pengembang aplikasi lebih mudah dalam pembuatan aplikasi.
Visual Basic 6.0 banyak dipakai oleh programmer dan pengembang aplikasi karena kemudahan yang ditawarkan. Dalam pengembangan aplikasi, para programmer tidak terlalu dipusingkan dengan tampilan dari program, karena Visual Basic 6.0 menyediakan banyak komponen kontrol untuk desain tampilan program. Dengan Visual Basic 6.0 dapat dikembangkan berbagai jenis aplikasi, seperti aplikasi database, jaringan, internet, multimedia grafik dan lain-lain.
IDE (Integrated Development Environment) dari suatu bahasa pemograman juga sangat menentukan kemudahan penggunaan dari bahasa pemograman tersebut. Walaupun Visual Basic 6.0 juga memiliki kekuatan dalam pengembangan aplikasi. Untuk dapat menggunakan Visual Basic 6.0, perlu dipelajari tentang IDE dari Visual Basic 6.0 terlebih dahulu.
Beberapa cara untuk memulai Visual Basic 6.0 yaitu: 1. Klik tombol start pada taksbar, kemudian pilih program dari tampilan menu utama, lalu pilih Visual Basic 6.0. 2. Klik 2 (dua) kali icon Visual Basic pada dekstop.
Gambar 2.1 Form aplikasi Visual Basic
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
2.6.1 Komponen-Komponen Visual Basic Versi 6.0
Komponen-komponen Visual Basic Versi 6.0 terdiri dari: 1. ToolBox ToolBox merupakan kotak perangkat yang berisi kumpulan tombol objek atau kontrol untuk mengatur desain aplikasi yang akan dibuat.
Gambar 2.2 Toolbox 2. Project Project merupakan suatu kumpulan modul atau merupakan program aplikasi itu sendiri.
Gambar 2.3. Project 3. Form windows Form windows merupakan jendela Desain dari sebuah program aplikasi.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Gambar 2.4 Form Windows
4. Properties Windows Properties Windows Merupakan sebuah jendela yang digunakan untuk menampung nama property dari kontrol yang terpilih.
Gambar 2.5 Properties Windows
5. Code Windows Code Windows merupakan sebuah jendela yang digunakan untuk menuliskan kode program dari kontrol yang dipasang pada jendela form.
Gambar 2.6 Code Windows
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
2.7 Crystal Report
Crystal Report merupakan perangkat lunak yang dikhususkan untuk membangun sebuah laporan (Report). Crystal Report dapat digunakan dengan bahasa pemrograman berbasis Windows, seperti Borland Delphi, Visual Basic 6.0 atau Net, Visual C/C++, dan Visual Interdev.
Beberapa kelebihan dari Crystal Report ini adalah : 1. Dari segi pembuatan laporan tidak terlalu rumit yang memungkinkan para programmer pemula sekalipun dapat membuat laporan yang sederhana tanpa melibatkan banyak kode pemrograman. 2. Integrasi dengan bahasa-bahasa pemrograman lain yang memungkinkan dapat digunakan oleh banyak programmer dengan masing-masing keahlian. 3. Fasilitas impor hasil laporan yang mendukung format-format populer seperti Microsoft Word, Excel, Ms Access, Oracle, Adobe Acrobat Reader, HTML, dan sebagainya.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis
Untuk merancang sebuah sistem yang baik, tahap analisis harus dilakukan yang bertujuan untuk memudahkan kita dalam melakukan perancangan sistem dan untuk memudahkan dalam proses pengembangan lanjutan maupun untuk tujuan perbaikan dan penyempurnaan (maintenace) sistem.
Menganalisis sistem yang akan dibangun yaitu pembuatan pangkalan data pada SMU Kemala Bhayangkari 1 Medan bertujuan untuk mengetahui secara detail permasalahan sistem yang sedang berjalan secara manual untuk dikembangkan menjadi sistem yang terkomputerisasi. Pada Gambar 3.1 menggambarkan skema aliran data dari guru ke bagian administrasi dan selanjutnya memproses data dan melaporkan ke pimpinan sekolah.
Data Absen & Nilai
Bagian Administrasi (Proses Data, Pelaporan dan Pengesahan Dokumen)
Guru Laporan
Pimpinan
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Gambar 3.1 Skema Aliran Data Siswa Untuk mengubah sistem yang sedang berjalan menjadi sistem yang terkomputerisasi, maka skema aliran data menjadi seperti skema pada Gambar 3.2 di bawah ini.
Data Absen & Nilai
Bagian Administrasi (Pengesahan Dokumen)
Guru Laporan
Pimpinan
Data Absen & Nilai
Laporan
USER (Operator) Proses Data & Pelaporan
Gambar 3.2 Skema Aliran Data Siswa (Komputerisasi) Dari skema di atas dapat dilihat sistem pelaporan dan pengesahan dokumen tidak berubah, yang berubah adalah tempat memproses dokumen yang menjadi laporan ke pimpinan sekolah.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
3.1.1 Administrasi Hasil Penilaian
SMU Kemala Bhayangkari 1 Medan belum memiliki sistem otomatisasi pembuatan laporan. Pembuatan laporan masih menggunakan aplikasi pengolahan kata (Microsoft Word maupun Excel). Untuk membuat laporan dengan baik, diperlukan input data yang baik juga. Input data yang baik harus memenuhi syarat mudah untuk digunakan (user friendly). Laporan yang dibuat adalah laporan absensi guru, absensi siswa serta laporan nilai ujian. Untuk membuat laporan absensi guru dan siswa diperlukan inputan data absensi guru harian dan data absensi siswa harian. Dalam pembuatan Laporan Nilai, diperlukan inputan data hasil penilaian per siswa dan per jenis ujian. Hasil penilaian yang di lakukan meliputi tugas-tugas, pekerjaan rumah, kuis (ulangan singkat), ulangan harian, dan ulangan blok. Setiap ulangan dicatat secara singkat kompetensi dasar yang dicapai tiap siswa. Selain itu perlu dicatat kompetensi dasar yang telah dikuasai oleh sebagian besar siswa di kelas dan yang belum di kuasai sebagian siswa dalam satu kelas. Guru tiap mata pelajaran melaporkan hasil ulangan ke wali kelas.
Laporan yang disampaikan guru ke wali kelas mencakup aspek kognitif, psikomotor dan afektif. Aspek kognitif berupa kemampuan dalam mata pelajaran, yaitu kemampuan berpikir. Aspek psikomotor merupakan ketrampilan dalam mengerjakan tugas tertentu misal melaksanakan praktek atau membuat karya tertentu. Aspek afektif yang perlu dilaporkan adalah minat siswa pada mata pelajaran, kelakuan, kebersihan, dan disiplin. Minat siswa tidak bisa dites tetapi cukup diamati atau diberi angket. Indikator siswa yang berminat
antara lain catatan pelajaran
lengkap, sering bertanya, hadir terus, dan rajin mengerjakan tugas.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Penilaian kognetif dilakukan sebanyak 4 kali yang terdiri dari ujian bulanan 1 (UB-1), bulanan 2 (UB-2), bulanan 3 (UB-3) dan ujian semester (US), lalu untuk untuk nilai kognetif diambil nilai rata-rata (UR). Sebagai contoh: Nilai
UB-1
=
80
UB-2
=
90
UB-3
=
90
US
=
80
Total
=
340
Rata-rata (NR)
=
85
Untuk perhitungan nilai psikomotor dan afektif caranya sama dengan penilaian kognitif. Wali kelas mencatat semua pencapaian belajar siswa, yaitu hasil ulangan blok siswa. Wali kelas bertugas menganalisis hasil pencapaian belajar siswa untuk mengetahui kekuatan dan kelemahan siswa untuk semua mata pelajaran. Misalnya ada siswa yang kuat dalam bahasa dan ketrampilan pekerjaan tangan, tetapi lemah dalam matematika. Ada siswa yang kuat dalam matematika dan bahasa, lemah dalam ketrampilan dan perilaku di kelas kurang baik, misalnya tidak disiplin sering terlambat. Selain itu mungkin ada siswa yang kemampuan pada mata pelajaran biasa saja, tetapi rajin dan selalu tepat waktu dalam mengejakan tugas-tugas. Jadi catatan tentang siswa mencakup aspek kognitif, psikomotor, dan aspek perilaku. Hasil pembelajaran siswa dianalisis untuk memberi bimbingan belajar kepada siswa. Misalnya ada siswa yang sebaiknya melanjutkan ke program akademik dan ada siswa yang melanjutkan ke program profesional kejuruan.
Data yang dimiliki wali kelas adalah: 1. Hasil ulangan blok dinyatakan dengan angka dengan penjelasan.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
2. Minat siswa pada mata pelajaran dinyatakan dengan penjelasan. 3. kemampuan psikomotor siswa dinyatakan dengan angka disertai dengan penjelasan. 4. Kelakuan, kerajinan, dan kebersihan siswa cukup dengan penjelasan atau keterangan saja, tanpa angka.
3.1.2 Laporan Hasil Ujian
Ujian pada dasarnya bertujuan untuk mengetahui perkembangan hasil belajar siswa dan hasil mengajar guru. Informasi hasil belajar atau hasil mengajar berupa kompetensi dasar yang sudah dipahami dan yang belum dipahami oleh sebagian besar siswa. Hasil belajar siswa di gunakan untuk memotivasi siswa dan guru agar melakukan perbaikan dan peningkatan kualitas proses pembelajaran. Perbaikan dan peningkatan kualitas pembelajaran dilakukan dalam bentuk program remedial dan pengayaan berdasarkan hasil evaluasi hasil ujian. Apabila dalam satu satuan waktu tertentu sebagian besar siswa belum mencapai tujuan pembelajaran atau kemampuan dasar yang telah di tentukan, maka guru harus melaksanakan program remedial, sedang bagi siswa yang menguasai diberi program pengayaan. Jadi prinsip dasar kegiatan mengelola hasil ujian adalah memanfaatkan hasil ujian untuk meningkatkan kualitas pembelajaran. Laporan hasil belajar siswa mencakup aspek kognitif, aspek psikomotor, dan aspek afektif. Informasi pencapaian kompetensi dasar aspek kognitif, dinyatakan dengan skor dan penjelasan tentang kompetensi dasar yang telah di capai dan yang belum. Pencapaian kompetensi dasar aspek psikomotor dinyatakan dengan skor dan penjelasan tentang kompetensi dasar yang telah di capai dan yang belum. Sehingga
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
hanya mata pelajaran tertentu saja yang di nilai aspek psikomotornya yaitu yang ada kegiatan praktek di laboratorium, di bengkel, atau studio.
Informasi aspek afektif diperoleh melalui aspek kuesioner atau pengamatan yang sistematik. Laporan aspek afektif siswa dinyatakan dengan deskripsi afektif siswa seperti minat siswa terhadap mata pelajaran. Aspek afektif lain seperti kelakuan, kerajinan, dan kebersihan dinyatakan dengan deskripsi tentang keadaan afektif siswa, seperti kerja sama siswa baik, namun kerajinan kurang.
Skor kemampuan kognitif dan kemapuan psikomotor yang dinyatakan oleh kegiatan praktek dibuat terpisah. Penjelasan dan kemampuan kognitif dan psikomotor, disertai dengan kemampuan afektif terutama tentang minat dan sikap siswa terhadap mata pelajaran. Hal ini penting karena ada siswa yang memiliki kemampuan kognitif tinggi, kemampuan psikomotor cukup. Namun ada yang memiliki kemampuan kognitif cukup, kemampuan psikomotor tinggi. Bila skor kemampuan kedua orang ini dijumlahkan, bisa terjadi skor sama, sehingga kemampuan kedua orang ini tampak sama walau sebenarnya karakteristik kemampuan mereka berbeda.
Pada beberapa orang ada yang memiliki kemampuan berpikirnya tinggi, tetapi kemapuan psikomotornya rendah dan juga sebaliknya. Agar sukses, orang ini harus bekerja pada bidang pekerjaan yang membutuhkan kemampuan berpikir tinggi dan tidak dituntut melakukan kegiatan yang membutuhkan kemampuan psikomotor yang tinggi. Oleh karena itu, laporan hasil belajar harus dinyatakan dalam tiga aspek tersebut.
Informasi pada laporan hasil belajar siswa harus akurat, artinya menunjukkan keadaan yang sebenarnya. Untuk memperoleh hasil penilaian yang akurat, maka alat
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
ukur yang digunakan memperoleh data harus sahih, artinya mengukur seperti yang ingin diukur. Selain itu alat ukur tes yang digunakan sebagai bagian dari sistem penilaian harus memberi hasil yang andal, yaitu memberi hasil yang konsisten bila digunakan berkali-kali untuk objek yang sama asal tidak ada pengaruh objek dari luar.
3.1.3 Laporan Absensi Siswa dan Guru
Laporan absensi, baik absensi siswa dan absensi guru harus diserahkan kepada kepala sekolah setiap bulan guna mengetahui keaktifan siswa maupun guru mengikuti proses belajar dan mengajar. Karena keaktifan mengajar seorang guru berpengaruh terhadap nilai ujian siswa, juga keaktifan siswa juga berpengaruh besar dalam penyerapan mata pelajaran.
Laporan absensi siswa dan guru dirangkum dari lembar absensi harian siswa dan guru dengan memasukkan data NIS/NIP, tanggal serta kode absen. Kode absen berupa hadir dengan kode “H”, tidak hadir tanpa pemberitahuan dengan kode “A”, tidak hadir dengan pemberitahuan dengan kode “I” dan tidak hadir dengan pemberitahuan sakit dengan kode “S”. Dari hasil rangkuman data kehadiran siswa dan guru maka dapat dibuat laporan absensi siswa dan guru per bulannya.
3.1.4 Format Laporan Hasil Ujian
Setiap semester laporan hasil ujian harus disampaikan ke kepala sekolah dengan format yang sudah ditetapkan, sedang format laporan hasil ujian untuk siswa tergantung pada jenis hasil belajar yang dilaporkan dan subjek penerima laporan.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Hasil belajar siswa kelas X. XI, dan kelas XII SMU dapat berupa surat katerangan dan Buku Rapor. Surat keterangan sifatya tidak reguler dan hanya di berikan kepada siswa yang berprestasi di bidang yang tidak termasuk dalam kegiatan intra maupun ekstra kurikuler. Buku Rapor di gunakan untuk melaporkan hasil belajar siswa untuk semua mata pelajaran yang diikuti. Hasil belajar siswa ada yang terkait dengan aspek kognitif, yaitu yang berupa kemampuan berpikir, dan aspek psikomotor yang berupa hasil kegiatan praktek untuk mata pelajaran tertentu. Aspek afektif yang terkait dengan aspek kognitif dan psikomotor dilaporkan dalam bentuk deskriptip bersama dengan laporan hasil belajar aspek kognitif dan psikomotor yang perlu di laporkan tersendiri adalah: 1. Kelakuan: mencakup kerjasama, perilaku sosial, suka membantu, saling menghormati, toleransi, demokrasi, temperamen, dan sejenisnya. 2. Kerajinan/disiplin: mencakup kehadiran ditiap mata pelajaran menyerahkan tugas tepat waktu, membaca buku, dan sejenisnya. 3. Kebersihan: dilihat dari kebersiahan pakaian, fasilitas belajar, dan bangku yang menjadi tanggung jawabnya, kegiatan praktek, dan sejenisnya. 4. Kerapihan: dilihat dari cara berpakaian, melakukan kegiatan praktek, dan sejenisnya.
3.2 Perancangan Sistem
Dalam merancang sistem Pangkalan Data Pada SMU Kemala Bhayangkari 1 Medan, penulis membuat perancangan diagram proses, perancangan Input, perancangan Output serta perancangan Database.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Dalam perancangan diagram proses berupa model diagram aliran data (DAD) yang dapat menampilkan kebutuhan sistem serta entitas luar yang terlibat dalam perangkat lunak. Diagram yang dirancang adalah Diagram Konteks (Diagram Aliran Data Level 0) dan Diagram Aliran Data level 1.
3.2.1 Diagram Konteks
Pada diagram konteks di bawah ini terlihat ada 2 (dua) entiti yang terdapat pada Perangkat Lunak Pangkalan Data Pada SMU Kemala Bhayangkari 1 Medan yaitu User dan Pimpinan seperti disajikan dalam Gambar 3.3.
Data Absen dan Nilai
USER Daftar absen dan Nilai
Perangkat Lunak Pangkalan Data
Laporan
PIMPINAN
Gambar 3.3 Diagram Konteks
3.2.1.1 Data Flow Diagram Level 1
Data Flow Diagram Level 1 (DFD Level 1) adalah suatu diagram mengGambarkan aliran data dan perubahan yang terjadi ketika data melalui proses input sampai
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
menghasilkan output. Data flow diagram dapat dipisahkan ke dalam level yang merepresentasikan aliran data yang lebih mendetail lagi.
Diagram konteks diatas bisa diturunkan menjadi Data Flow Diagram untuk Level 1 untuk mengetahui proses yang lebih detail pada sistem yang sedang dirancang. Adapun proses yang ada adalah: 1. Proses 1.0 Input Data Siswa 2. Proses 2.0 Input Data Guru 3. Proses 3.0 Input Data Mata Pelajaran 4. Proses 4.x Input Data Absensi Siswa 5. Proses 5.x Input Data Absensi Guru 6. Proses 6.x Input Data Nilai 7. Proses 7.x Pelaporan
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Data Flow Diagram Level 1 dapat dilihat seperti Gambar 3.4.
Data Data Nilai
USER .
Data Siswa
Data Guru Data Mata Pelajaran
Proses 3.0 Input Data Mata P l j
Proses 2.0 Input Data Guru
Proses 1.0 Input Data Siswa
Simpan Simpan
Data Absensi Guru
Data Guru Data Siswa Simpan Data Mata
Data Absensi Siswa
Proses 5.x Input Data Absensi G
Simpan Data Absensi Guru
Simpan Data Absensi Siswa
Proses 4.x Input Data Absensi Si
Proses 6.x Input Data Nilai
Data Nilai
Simpan
Proses 7.x Pelaporan Laporan
PIMPINAN Gambar 3.4 Data Flow Diagram Level 1
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Pada DFD Level 1 ini dapat diketahui proses-proses yang terjadi pada Perangkat Lunak Pangkalan Data SMU Kemala Bhayangkari 1 Medan. Proses 1.0 adalah pemasukan data siswa, proses 2.0 adalah pemasukan data guru, proses 3.0 adalah pemasukan data mata pelajaran, proses 4.x adalah pemasukan data absensi siswa, proses 5.x adalah pemasukan data absensi guru, proses 6.x adalah pemasukan data nilai dan proses 7.x adalah pelaporan. Proses 4.x, proses 5.x, proses 6.x dan proses 7.x masih dapat diturunkan ke level 2 karena proses-proses ini memiliki ketergantungan atribut dengan proses proses lainnya.
3.2.1.2 DFD Level 2 Input Data Absensi Siswa
DFD Level 2 Input Data Absensi Siswa adalah suatu diagram lanjutan dari proses 4.x pada Data Flow Diagram Level 1 diatas menjadi lebih mendetail lagi. DFD Level 2 Input Data Absensi Siswa dapat dilihat seperti Gambar 3.5.
Data Absensi Siswa
USER
4.1 Memeriksa Daftar
Baca Data Siswa
Baca
7.x Pelaporan
Baca
Data Siswa
4.2 Memeriksa Daftar
Baca Data Guru
Baca
Data Guru Data Absensi Siswa
Simpan
4.3 Menyimpan Data
Laporan
PIMPINAN Gambar 3.5 DFD Level 2 Input Data Absensi Siswa
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
3.2.1.3 DFD Level 2 Input Data Absensi Guru
DFD Level 2 Input Data Absensi Guru adalah suatu diagram lanjutan dari proses 5.x pada Data Flow Diagram Level 1 diatas menjadi lebih mendetail. DFD Level 2 Input Data Absensi Guru dapat dilihat seperti Gambar 3.6.
Data Absensi Guru
5.1 Memeriksa Daftar Guru
USER Baca Data Guru
Baca
7.x Pelaporan
Data Guru
Baca
Simpan Data Absensi Guru
5.2 Menyimpan Absen Guru
Laporan
PIMPINAN Gambar 3.6 DFD Level 2 Proses Absensi Guru
3.2.1.4 DFD Level 2 Input Data Nilai
DFD Level 2 Input Data Nilai adalah suatu diagram lanjutan dari proses 6.x pada Data Flow Diagram Level 1 diatas menjadi lebih mendetail. DFD Level 2 Input Data Nilai dapat dilihat seperti Gambar 3.7.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Data Nilai
6.1 Memeriksa Daftar Siswa
USER Baca Baca Data Siswa
Data Siswa
6.2 Memeriksa Daftar Guru
Baca
7.x Pelaporan
Baca Data Guru Data Guru Baca Baca Data Mata Pelajaran Mt Pelajaran
6.3 Memeriksa Daftar Mata Pelajaran
Baca
Data Nilai
Simpan
6.4 Menyimpan Data Nilai
Laporan PIMPINAN Gambar 3.7 DFD Level 2 Proses Input Data Nilai
3.2.1.5 DFD Level 2 Pelaporan
DFD Level 2 Pelaporan adalah suatu diagram lanjutan dari proses 7.x pada Data Flow Diagram Level 1 diatas menjadi lebih mendetail. DFD Level 2 Pelaporan dapat dilihat seperti Gambar 3.8.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
7.0 Data Guru
Laporan Absensi Siswa Absensi Guru
Nilai Data Mata Pelajaran
Data Siswa
Data Absensi Siswa
Laporan Data Absensi Guru
PIMPINAN
Data Nilai
Gambar 3.8 DFD Level 2 Pelaporan
3.2.1.6 Kamus Data
Kamus data merupakan katalog (tempat penyimpanan) dari elemen-elemen yang berada dalam satu sistem. Kamus data mempunyai fungsi yang sama dalam pemodelan sistem dan juga berfungsi membantu pelaku sistem untuk mengerti aplikasi secara detil, dan mengelompokkan kembali semua elemen data yang digunakan dalam sistem sehingga pemakai dan penganalisis sistem punya dasar pengertian yang sama tentang masukan, keluaran, penyimpanan dan proses. Kamus data dalam Pangkalan Data Pada SMU Kemala Bhayangkari 1 Medan (kamus data terlampir) mendefinisikan elemen data dengan fungsi sebagai berikut: 1. Menjelaskan arti aliran data dan penyimpanan dalam DFD. 2. Mendeskripsikan komposisi paket data yang bergerak melalui aliran. 3. Mendeskripsikan komposisi penyimpanan data. 4. Menspesifikasikan nilai dan satuan yang relevan bagi penyimpanan dan aliran data.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
3.2.2 Perancangan Database
Database merupakan salah satu kebutuhan dari aplikasi yang berguna untuk menyimpan data tahap awal maupun data transaksi harian. Sebagai dasar membentuk database adalah item-item output yang akan dikeluarkan oleh sistem. Agar database yang dibentuk nantinya tidak mengadung redudansi dan anomali maka perlu dilakukan normalisasi item (atribut) yang menjadi output sistem.
3.2.2.1 Normalisasi
Normalisasi adalah proses pengelompokan data kedalam bentuk tabel atau relasi atau file untuk menyatakan entitas dan hubungan mereka sehingga terwujud satu bentuk database yang mudah untuk dimodifikasi. Normalisasi sering dilakukan sebagai suatu uji coba pada suatu relasi secara berkelanjutan
untuk menentukan apakah relasi
tersebut sudah baik atau masih melanggar aturan-aturan standar yang diberlakukan pada suatu relasi yang normal (sudah dapat dilakukan proses insert, update, delete, dan modify pada satu atau beberapa atribut tanpa mempengaruhi integritas data dalam relasi tersebut). Pada tahap proses normalisasi ini untuk menghasilkan bentuk yang normal diperlukan beberapa langkah berikut, yakni: A. Bentuk Tidak Normal Bentuk ini merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikuti format tertentu, dapat saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan saat menginput. Berdasarkan daftar-daftar yang diperoleh tabel field-field data yang dibutuhkan sistem yang dimasukkan dalam Tabel Atribut, yakni ditunjukkan pada Tabel 3.1 dibawah ini.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Tabel 3.1 Tabel Atribut Nama Field NIS
Keterangan Nomor Induk Siswa
Formulir Daftar Absensi Siswa
NmSiswa
Nama Siswa
Daftar Absensi Siswa
AlmSiswa
Alamat Siswa
Daftar Absensi Siswa
JKSiswa
JenisKelamin Siswa
Daftar Absensi Siswa
AgamaSiswa
Agama Siswa
Daftar Absensi Siswa
TmpLahir
Tempat Lahir Siswa
Daftar Absensi Siswa
TglLahir
Tanggal Lahir Siswa
Daftar Absensi Siswa
NmAyah
Nama ayah Siswa
Daftar Absensi Siswa
NmIbu
Nama ibu Siswa
Daftar Absensi Siswa
Tabel 3.1 Tabel Atribut (Lanjutan)
AlmAI
Alamat orang tua
Daftar Absensi Siswa
NoTelpAI
Telepon orang tua
Daftar Absensi Siswa
KerjaAyah
Pekerjaan Ayah
Daftar Absensi Siswa
KerjaIbu
Pekerjaan Ibu
Daftar Absensi Siswa
AsalSekolah
Asal sekolah siswa
Daftar Absensi Siswa
ThnSttb
Tahun STTB
Daftar Absensi Siswa
noSttb
Nomor STTB
Daftar Absensi Siswa
NIS
Nomor Induk Siswa
Daftar Absensi Siswa
NmSiswa
Nama Siswa
Daftar Absensi Siswa
AlmSiswa
Alamat Siswa
Daftar Absensi Siswa
JKSiswa
JenisKelamin Siswa
Daftar Absensi Siswa
AgamaSiswa
Agama Siswa
Daftar Absensi Siswa
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
TmpLahir
Tempat Lahir Siswa
Daftar Absensi Siswa
TglLahir
Tanggal Lahir Siswa
Daftar Absensi Siswa
NmAyah
Nama ayah Siswa
Daftar Absensi Siswa
NmIbu
Nama ibu Siswa
Daftar Absensi Siswa
AlmAI
Alamat orang tua
Daftar Absensi Siswa
NoTelpAI
Telepon orang tua
Daftar Absensi Siswa
KerjaAyah
Pekerjaan Ayah
Daftar Absensi Siswa
KerjaIbu
Pekerjaan Ibu
Daftar Absensi Siswa
AsalSekolah
Asal sekolah siswa
Daftar Absensi Siswa
ThnSttb
Tahun STTB
Daftar Absensi Siswa
noSttb
Nomor STTB
Daftar Absensi Siswa
UserID
Nama Pengguna
Login
Password
Password
Login
NIP
Nomor Induk Pegawai
Daftar Absensi Guru
NmGuru
Nama Guru
Daftar Absensi Guru
AlmGuru
Alamat Guru
Daftar Absensi Guru
NoTelp
Nomor Telepon guru
Daftar Absensi Guru
JKGuru
Jenis Kelamin guru
Daftar Absensi Guru
Tabel 3.1 Tabel Atribut (Lanjutan) STGuru
Status Perkawinan guru
Daftar Absensi Guru
AgamaGuru
Agama guru
Daftar Absensi Guru
TmpLahir
Tempat Lahir guru
Daftar Absensi Guru
TglLahir
Tanggal Lahir guru
Daftar Absensi Guru
IdAbsenGuru
Nomor Id Absen Guru
Daftar Absensi Guru
NIP
Nomor Induk Guru
Daftar Absensi Guru
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
TglAbsen
Tanggal Absen Guru
Daftar Absensi Guru
KdAbsen
Kode Absen Guru
Daftar Absensi Guru
IdAbsenSiswa
Nomor Id Absen Siswa
Daftar Absensi Siswa
NIS
Nomor Induk Siswa
Daftar Absensi Siswa
TglAbsen
Tanggal Absen Siswa
Daftar Absensi Siswa
KdAbsen
Kode Absen Siswa
Daftar Absensi Siswa
NIP
Nomor Induk Pegawai
Daftar Absensi Siswa
KdPel
Kode Mata Pelajaran
Daftar Nilai
NmPel
Nama Mata Pelajaran
Daftar Nilai
Keterangan Mata
Daftar Nilai
Keterangan
Pelajaran
IdNilai
Nomor Id Nilai
Daftar Nilai
Thn
Tahun Ujian
Daftar Nilai
Sem
Semester
Daftar Nilai
NIS
Nomor Induk Siswa
Daftar Nilai
KdUjian
Kode Ujian
Daftar Nilai
UserID
Nama User
Daftar Nilai
NIP
Nomor Induk Guru
Daftar Nilai
IdDNilai
Nomor Id Detail Nilai
Daftar Nilai
IdNilai
Nomor Id Nilai
Daftar Nilai
KdPel
Kode Mata Pelajaran
Daftar Nilai
Nilai
Nilai Ujian
Daftar Nilai
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
B. Normalisasi Ke-1 (1NF) Bentuk normal kesatu memiliki ciri yang setiap data dibentuk dalam satu record. Bentuk normal kesatu biasa dikenakan pada tabel yang belum ter-normalisasi. Tabel yang belum ter-normalisasi adalah tabel yang memiliki atribut yang berulang maka tabel yang tidak normal dapat dikelompokkan atas atribut yang berulang dan tidak berulang. Kelompok tak berulang 1. User (UserId, Passwd ). 2. Siswa (NIS, NmSiswa, AlmSiswa, JKSiswa, AgamaSiswa, TmpLahir, TglLahir, NmAyah, NmIbu, AlmAI, NoTelpAI, KerjaAyah, KerjaIbu, AsalSekolah, ThnSttb, noSttb). 3. Guru (NIP, NmGuru, STGuru, JKGuru, AgamaGuru, TmpLahir, TglLahir, NoTelp). 4. MataPelajaran (KdPel, NmPel, Keterangan).
Keempat tabel diatas adalah kelompok tak berulang yaitu semua atribut tidak memiliki ketergantungan dengan kunci primer. Karena tidak memiliki ketergantungan dengan kunci primer, maka tabel diatas sudah dalam keadaan normal (3NF).
Kelompok berulang Tabel dibawah ini merupakan tabel yang memiliki atribut yang berulang, maka tabeltabel diatas masih dalam keadaan 1NF. Untuk mengubah keadaan tabel menjadi 2NF maka dilakukan dekomposisi terhadap relasi-relasi yang terdapat pada tabel tersebut. Adapun tabel-tabel yang berada dalam keadaan 1NF adalah: 1. Relasi AbsenSiswa (IdAbsenSiswa, TglAbsen, NIS, KdAbsen). 2. Relasi AbsenGuru (IdAbsenGuru, TglAbsen, NIP, KdAbsen). 3. Relasi Nilai (IdNilai, Thn, Sem, KdUjian, NIS, UserId, NIP).
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
C. Normalisasi ke-2 (2NF) Untuk membentuk tabel-tabel dalam keadaan 1NF menjadi keadaan 2NF maka dilakukan dekomposisi membentuk relasi dengan kunci primer. Adapun dekomposisi tabel membentuk keadaan 2NF adalah: 1. Relasi AbsenSiswa (IdAbsenSiswa, TglAbsen, NIS, KdAbsen) Relasi ini memiliki
perulangan pada field NIS dengan tabel tSiswa, jadi
dekomposisi relasi AbsenSiswa menjadi: Relasi AbsenSiswaNIS (IdAbsenSiswa, TglAbsen, NIS, NmSiswa, AlmSiswa, JKSiswa, AgamaSiswa, TmpLahir, TglLahir, NmAyah, NmIbu,
AlmAI,
NoTelpAI, KerjaAyah, KerjaIbu, AsalSekolah, ThnSttb, noSttb, KdAbsen). 2. Relasi tAbsenGuru (IdAbsenGuru, TglAbsen, NIP, KdAbsen) Relasi ini memiliki
perulangan pada filed NIP dengan tabel tGuru, jadi
dekomposisi table tAbsenGuru menjadi: Relasi RelasiAbsenGuruNIP (IdAbsenGuru, TglAbsen, NIP, NmGuru, STGuru, JKGuru, AgamaGuru, TmpLahir, TglLahir, NoTelp , KdAbsen). 3. Relasi Nilai (IdNilai, Thn, Sem, KdUjian, NIS, UserId, NIP) Relasi ini memiliki perulangan pada filed NIS dengan tabel tSiswa, UserId dengan tabel tUser dan NIP dengan tabel tGuru, jadi dekomposisi table tNilai menjadi: Relasi NilaiNIS (IdNilai,
Thn, Sem, KdUjian, NIS, NmSiswa, AlmSiswa,
JKSiswa, AgamaSiswa, TmpLahir, TglLahir, NmAyah, NmIbu,
AlmAI,
NoTelpAI, KerjaAyah, KerjaIbu, AsalSekolah, ThnSttb, noSttb, UserId, Passwd, NIP, NmGuru, STGuru, JKGuru, AgamaGuru, TmpLahir, TglLahir, NoTelp). 4. Relasi DNilai (IdDNilai, IdNilai, KdPel, Nilai) Relasi ini memiliki perulangan pada filed IdNilai dengan tNilai dan KdPel dengan tabel tPelajaran dan KdPel dengan tabel tPelajaran, jadi dekomposisi table tDNilai menjadi:
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Relasi RelasiDNilaiSiswa (IdDNilai,
IdNilai, Thn, Sem, KdUjian, NIS,
NmSiswa, AlmSiswa, JKSiswa, AgamaSiswa, TmpLahir, TglLahir, NmAyah, NmIbu, AlmAI, NoTelpAI, KerjaAyah, KerjaIbu, AsalSekolah, ThnSttb, noSttb, UserId, Passwd, NIP, NmGuru, STGuru, JKGuru, AgamaGuru, TmpLahir, TglLahir, NoTelp, KdPel, NmPel, Keterangan).
D. Normalisasi ke-3 (3NF) Suatu relasi dikatakan dalam normal ke-2 (2NF) apabila setiap atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci primer. Sampai disini semua relasi sudah dalam relasi normal ke-3, sehingga dari normalisasi diatas, relasi yang terbentuk dapat dikumpulkan sebagai berikut: 1. Relasi User 2. Relasi Siswa 3. Relasi Guru 4. Relasi MataPelajaran 5. Relasi AbsenSiswa 6. Relasi AbsenGuru 7. Relasi Nilai 8. Relasi DNilai
3.2.2.2 Perancangan Tabel Data
Dari relasi-relasi yang terbentuk di atas, maka dapat dibangun tabel-tabel data dalam database yang saling berhubungan (database ralation). Adapun table-tabel yang digunakan dalam aplikasi menggunakan 8 (delapan) tabel yang memiliki kunci primer
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
(Primary Key) dan kemungkinan memiliki kunci tamu (Foreign Key), tabel tersebut antara lain adalah: 1. Tabel Siswa Tabel ini digunakan untuk menyimpan biodata siswa yang mencakup data pribadi siswa, orang tua dan asal sekolah. Tabel Siswa tersebut adalah seperti terlihat pada Tabel 3.2.
Table 3.2 Tabel Siswa Nama Field
Jenis Field
Ukuran
Keterangan
NIS
Integer
5
Nomor Induk Siswa
NmSiswa
Teks
30
Nama Siswa
AlmSiswa
Teks
50
Alamat Siswa
JKSiswa
Teks
1
JenisKelamin Siswa
AgamaSiswa
Teks
1
Agama Siswa
TmpLahir
Teks
50
Tempat Lahir Siswa
Table 3.2 Tabel Siswa (Lanjutan) Nama Field
Jenis Field
Ukuran
Keterangan
TglLahir
date
8
Tanggal Lahir Siswa
NmAyah
Teks
30
Nama ayah Siswa
NmIbu
Teks
30
Nama ibu Siswa
AlmAI
Teks
50
Alamat orang tua
NoTelpAI
Teks
12
Telepon orang tua
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
KerjaAyah
Teks
1
Pekerjaan Ayah
KerjaIbu
Teks
1
Pekerjaan Ibu
AsalSekolah
Teks
50
Asal sekolah siswa
ThnSttb
integer
4
Tahun STTB
noSttb
Teks
50
Nomor STTB
Primary Key= NIS
2. Tabel tUser Tabel ini merupakan tabel yang berguna untuk menyimpan Nama Pengguna (UserID) dan Password. Tabel User tersebut adalah seperti terlihat pada Tabel 3.3.
Table 3.3 tUser Nama Field
Jenis Field
Ukuran
Keterangan
UserID
Teks
10
Nama Pengguna
Password
Teks
10
Password
Primary Key= UserID
3. Tabel Guru Tabel ini merupakan tabel yang berguna untuk menyimpan data guru yang mengajar pada SMU Kemala Bhayangkari 1 Medan. Tabel Guru tersebut adalah seperti terlihat pada Tabel 3.4.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Table 3.4 Guru Nama Field
Jenis Field
Ukuran
Keterangan
NIP
Teks
9
Nomor Induk Pegawai
NmGuru
Teks
50
Nama Guru
AlmGuru
Teks
50
Alamat Guru
NoTelp
Teks
15
Nomor Telepon guru
JKGuru
Teks
1
Jenis Kelamin guru
STGuru
Teks
1
Status Perkawinan guru
AgamaGuru
Teks
1
Agama guru
TmpLahir
Teks
50
Tempat Lahir guru
TglLahir
Date
8
Tanggal Lahir guru
Primary Key= NIP
4. Tabel Absen Guru Tabel ini merupakan tabel yang berguna untuk menyimpan data absen guru yang mengajar pada SMU Kemala Bhayangkari. Tabel Absen Guru tersebut adalah seperti terlihat pada Tabel 3.5.
Table 3.5 Absen Guru Nama Field
Jenis Field
Ukuran
Keterangan
IdAbsenGuru
integer
5
Nomor Id Absen Guru
NIP
Teks
9
Nomor Induk Guru
TglAbsen
Date
8
Tanggal Absen Guru
KdAbsen
Teks
1
Kode Absen Guru
Primary Key= IdAbsenGuru
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
5. Tabel Absen Siswa Tabel ini merupakan tabel yang berguna untuk menyimpan data absen siswa SMU Kemala Bhayangkari. Tabel Absen Siswa tersebut adalah seperti terlihat pada Tabel 3.6.
Table 3.6 Absen Siswa Nama Field
Jenis Field
Ukuran
Keterangan
IdAbsenSiswa
integer
5
Nomor Id Absen Siswa
NIS
Teks
9
Nomor Induk Siswa
TglAbsen
Date
8
Tanggal Absen Siswa
KdAbsen
Teks
1
Kode Absen Siswa
NIP
Teks
9
Nomor Induk Pegawai
Primary Key= IdAbsenSiswa
6. Tabel Mata Pelajaran Tabel ini merupakan tabel yang berguna untuk menyimpan data mata pelajaran pada SMU Kemala Bhayangkari 1 Medan. Tabel Mata Pelajaran tersebut adalah seperti terlihat pada Tabel 3.7.
Table 3.7 Mata Pelajaran Nama Field
Jenis Field
Ukuran
Keterangan
KdPel
Teks
3
Kode Mata Pelajaran
NmPel
Teks
30
Nama Mata Pelajaran
Keterangan
Teks
50
Keterangan Mata Pelajaran
Primary Key= KdPel
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
7. Tabel Nilai Tabel ini merupakan tabel yang berguna untuk menyimpan data nilai ujian setiap mata pelajaran. Tabel Nilai tersebut adalah seperti terlihat pada Tabel 3.8.
Table 3.8 Nilai Nama Field
Jenis Field
Ukuran
Keterangan
IdNilai
Integer
5
Nomor Id Nilai
Thn
Integer
4
Tahun Ujian
Sem
Integer
1
Semester
NIS
Integer
5
Nomor Induk Siswa
KdUjian
Teks
1
Kode Ujian
Table 3.8 Nilai (Lanjutan) UserID
Teks
10
Nama User
NIP
Teks
9
Nomor Induk Guru
Primary Key= IdNilai
8. Tabel DNilai Tabel ini merupakan tabel yang berguna untuk menyimpan data detail nilai ujian setiap mata pelajaran. Tabel DNilai tersebut adalah seperti terlihat pada Tabel 3.9.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Table 3.9 DNilai Nama Field
Jenis Field
Ukuran
Keterangan
IdDNilai
Integer
5
Nomor Id Detail Nilai
IdNilai
Integer
5
Nomor Id Nilai
KdPel
Teks
3
Kode Mata Pelajaran
Nilai
Integer
3
Nilai Ujian
Primary Key= IdDNilai
Dari kumpulan tabel yang dibuat, maka dapat dibentuk hubungan relasi antartabel, dapat dilihat pada Gambar 3.9. Relasi Antartabel.
1
1
1 ∞ 1
∞
1
∞ ∞
∞
Keterangan: 1 Primary Key ∞ Foreign Key
Gambar 3.9 Relasi Antartabel
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
3.2.3 Perancangan Antarmuka (User Interface)
Dalam membangun sebuah sistem perlu adanya perancangan antarmuka yang nantinya sangat membantu dalam pembangunan sistem. Dan dalam merancang perangkat lunak, ada beberapa tahapan agar tercipta sebuah perangkat lunak seperti yang diharapkan.
Adapun tahapan-tahapan dalam merancang antarmuka sebagai berikut: 1. Merancang tampilan Login User, yang terdiri dari: Tampilan ini yang berfungsi sebagai tempat otorisasi pemakai sistem dalam menjalankan Aplikasi Pangkalan Data Pada SMU Kemala Bhayangkari 1 Medan. 2. Merancang tampilan Menu Utama, yang terdiri dari: a. Tampilan ini yang berfungsi sebagai tempat untuk meletakkan Menu File, Menu Report, Menu Data, Program Help dan About. b. Picture box yang berfungsi untuk meletakkan animasi Gambar latar. c. Tampilan Judul Aplikasi serta Nama penulis. 3. Merancang tampilan About, yang terdiri dari: a. Label untuk menampilkan atau menunjuk judul Aplikasi dan profil penulis. b. Timer yang berfungsi untuk menjalankan tombol. c. Command yang berfungsi sebagai tombol untuk keluar. 4. Merancang tampilan Help, yang terdiri dari: a. Label berfungsi untuk menampilkan tatacara menjalankan sistem. b. Command yang berfungsi sebagai tombol untuk keluar.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
3.2.3.1 Rancangan Login
Rancangan Login merupakan tampilan yang pertama kali muncul saat program dijalankan yang berfungsi sebagai otorisasi hak akses dengan pemasukan UserID (Nama Pengguna) serta Password. Rancangan Login dapat dilihat seperti pada Gambar 3.10.
Date Loging
dd-mm-yyyy
USER ID
XXXXXXXXXX
PASSWORD
XXXXXXXXXX
OK
BATAL
Gambar 3.10 Rancangan Login
3.2.3.2 Rancangan Menu Utama
Perancangan Tampilan Menu Utama merupakan tampilan yang pertama kali muncul sesudah pengguna melakukan Login User. Tampilan Menu Utama terlihat seperti pada Gambar 3.11.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
File
Data
Report
Help
About
Quit
Judul Tugas Akhir
GAMBAR LATAR Nama Penulis
Gambar 3.11 Rancangan Menu Utama
Pada perancangan Menu Utama ini akan menampilkan judul aplikasi berupa gerakan huruf animasi, nama pembuat aplikasi dan Gambar latar belakang. Pada menu File terdapat program input data absen siswa, input data absen guru dan input data nilai. Pada menu Data terdapat input file siswa, input file guru, input file mata pelajran dan input user. Pada menu report terdapat pencetakan laporan absensi siswa, pencetakan laporan absensi guru dan pencetakan laporan Nilai Ujian.
3.2.3.3 Rancangan Input Data Siswa
Rancangan Input Data Siswa berfungsi untuk memasukkan data siswa. Pada rancangan ini terdapat enam tombol yaitu: Tambah, Cari, Ubah, Hapus, Batal dan Keluar. Tombol Tambah berfungsi untuk menambah data baru, tombol Cari berfungsi untuk mencari data yang telah disimpan sebelumnya, tombol Ubah berfungsi untuk mengubah data yang sudah dicari sebelumnya, tombol Hapus berfungsi untuk
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
menghapus record yang telah dicari dan disimpan sebelumnya, tombol Keluar berfungsi untuk menutup program dan ke Menu Utama Rancangan Input Data Siswa terlihat seperti pada Gambar 3.12.
NIS
xxxx
NamaAyah
xxxxxxxxxxxxxxx
Nama
xxxxxxxxxxxxxxx
Nama Ibu
xxxxxxxxxxxxxxx
Alamat
xxxxxxxxxxxxxxx
Alamat
xxxxxxxxxxxxxxx
J.Kelamin
xxxxxxxxxxxxxxx
NoTelp
xxxxxxxxxxxxxxx
Agama
xxxxxxxxxxxxxxx
Pekerjaan Ayah
xxxxxxxxxxxxxxx
TmpLahir
xxxxxxxxxxxxxxx
Pekerjaan Ibu
xxxxxxxxxxxxxxx
TglLahir
xxxxxxxxxxxxxxx
Asal Sekolah
xxxxxxxxxxxxxxx
Tahun STTB/No
Tambah
Cari
Ubah
Hapus
xxxxxxxxxxxxxxx
Batal
Keluar
GRID DATA
Gambar 3.12 Rancangan Input Data Siswa
3.2.3.4 Rancangan Input Data Guru
Rancangan Input Data Guru berfungsi untuk memasukkan data guru. Pada rancangan ini terdapat enam tombol yaitu: Tambah, Cari, Ubah, Hapus, Batal dan Keluar. Tombol Tambah berfungsi untuk menambah data baru, tombol Cari berfungsi untuk mencari data yang telah disimpan sebelumnya, tombol Ubah berfungsi untuk
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
mengubah data yang sudah dicari sebelumnya, tombol Hapus berfungsi untuk menghapus record yang telah dicari dan disimpan sebelumnya, tombol Keluar berfungsi untuk menutup program dan ke Menu Utama Rancangan Input Data Guru terlihat seperti pada Gambar 3.13.
NIP
xxxx
Nama
xxxxxxxxxxxxxxx
Alamat
xxxxxxxxxxxxxxxxxxxxxxx
NoTelp
xxxxxxxxxxxxxxx
Status Kawin
xxxxxxxxxxxxxxxxxxxxxxx
J.Kelamin
xxxxxxxxxxxxxxx
Agama
xxxxxxxxxxxxxxx
TglLahir
xxxxxxxxxxxxxxx
Tmp Lahir
xxxxxxxxxxxxxxx
Tambah
Cari
Ubah
Hapus
Batal
Keluar
GRID DATA
Gambar 3.13 Rancangan Input Data Guru
3.2.3.5 Rancangan Data User
Rancangan Data User adalah tampilan berfungsi untuk melakukan pemasukan data nama pengguna dan Password. Pada rancangan ini terdapat enam yang fungsi sama dengan rancangan sebelumnya. Bentuk perancangan Data User dapat dilihat pada Gambar 3.14.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Tambah
USER ID
XXXXXXX
PASSWORD
XXXXXXX
Cari
Ubah
Hapus
Batal
Keluar
GRID DATA
Gambar 3.14 Rancangan Data User 3.2.3.6 Rancangan Data Mata Pelajaran
Perancangan Data Mata Pelajaran berfungsi untuk memasukkan data mata pelajaran. Pada rancangan ini terdapat enam tombol. Tombol Tambah berfungsi untuk menambah data baru, tombol Cari berfungsi untuk mencari data, tombol Ubah berfungsi untuk melakukan perubahan data, tombol Hapus berfungsi untuk menghapus data, tombol Batal berfungsi untuk melakukan pembatalan dan tombol Keluar berfungsi untuk keluar dari tampilan. Untuk lebih jelasnya dapat dilihat pada Gambar 3.15.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Kode
xxx
Nama
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Keterangan
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Tambah
Cari
Ubah
Hapus
Batal
Keluar
GRID DATA
Gambar 3.15 Rancangan Data Mata Pelajaran
3.2.3.7 Rancangan Data Absensi Siswa
Rancangan Data Absensi Siswa adalah rancangan yang berfungsi untuk melakukan pemasukan data absensi siswa harian. Pada rancangan ini terdapat enam fungsi yang sama dengan rancangan sebelumnya. Bentuk perancangan Data Absensi Siswa dapat dilihat pada Gambar 3.16.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Tahun
XXXX
Semester
X
NIS
XXXX
Nomor Id Absen
Nama Siswa
XXXX
XXXXXXXXXXXXXXXXX
Data Absen No
dd-mm-yyyy
Tanggal
dd-mm-yyyy
Kode Absen
XXXXXX
Save
GRID DATA DETAIL ABSEN SISWA Nomor Tanggal Kode Absen
Tambah
Cari
Ubah
Tahun
Hapus
Batal
Keluar
GRID DATA ABSEN Semester NIS User ID
Gambar 3.16 Rancangan Data Absensi Siswa
3.2.3.8 Rancangan Data Absensi Guru
Rancangan Data Absensi Guru adalah rancangan yang berfungsi untuk melakukan pemasukan data data absensi guru harian. Pada rancangan ini terdapat enam yang fungsi sama dengan rancangan sebelumnya. Bentuk rancangan Data Absensi Guru sama dengan rancangan data absensi siswa dan dapat dilihat pada Gambar 3.17.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Tahun
XXXX
Semester
X
NIP
XXXXXX X
Nomor Id Absen
Nama Guru
XXXX
XXXXXXXXXXXXXXXXXXXX
Data Absen No
Tanggal
dd-mm-yyyy
dd-mm-yyyy
Kode Absen
XXXXXX XX
Save
GRID DATA DETAIL ABSEN GURU Nomor Urut
Tambah
Cari
Tanggal
Ubah
Kode Absen
Hapus
Batal
Keluar
GRID DATA ABSEN Tahun
Semester
NIP
User ID
Gambar 3.17 Rancangan Data Absensi Guru
3.2.3.9 Rancangan Data Nilai
Rancangan Data Nilai adalah rancangan yang berfungsi untuk melakukan pemasukan data data Nilai siswa. Data nilai yang dimasukkan adalah nilai ujian mata pelajaran per jenis ujian meliputi jenis ujian kognetif, nilai psikomotor dan nilai afektif. Pada rancangan ini terdapat dua grid data, yaitu grid detail nilai dan grid nilai serta enam
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
buah tombol fungsi yang fungsi sama dengan rancangan sebelumnya. Bentuk rancangan Data Nilai Siswa dapat dilihat pada Gambar 3.18.
Tahun
XXXX
Semester
X
NIS
XXXX
Nama Siswa
XXXXXXXXXXXXXXXXXXX
MataPelajaran XXXXXXXXXXXXXXXXXXX Jns Ujian
NILAI
XXXXXXXXXX
XXX
GRID DATA DETAIL NILAI Nomor Urut Jns Ujian Nilai
Tambah
Cari
Ubah
Hapus
Batal
Keluar
GRID DATA Tahun Semester NIS Mata Pelajaran
Gambar 3.18 Rancangan Data Nilai
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
3.2.3.10 Rancangan Help
Rancangan Help adalah rancangan sederhana yang hanya memiliki satu tombol yaitu tombol Keluar. Tampilan ini dirancang untuk menampilkan informasi tentang tata cara pengoperasian aplikasi yang dijelaskan tahap demi tahap serta keterangan dan syarat-syarat . Untuk lebih jelasnya dapat dilihat pada Gambar 3.19.
Judul Tugas Akhir xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Tata Cara Pengoperasian Sistem xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxx
Tombol Keluar
Gambar 3.19 Rancangan Help
3.2.3.11 Rancangan About
Rancangan About adalah tampilan sederhana yang hanya memiliki satu tombol yaitu tombol Keluar. Tampilan ini dirancang untuk menampilkan informasi tentang profil penulis. Profil penulis meliputi biodata singkat penulis serta data akademik. Untuk lebih jelasnya dapat dilihat pada Gambar 3.20.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Judul Tugas Akhir xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Foto Penulis Tombol Keluar
Gambar 3.20 Rancangan About
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
BAB 4
ALGORITMA DAN IMPLEMENTASI
4.1 Algoritma
Tujuan dari penulisan algoritma adalah untuk mempermudah dalam merancang suatu program aplikasi. Algoritma Pangkalan Data Pada SMU Kemala Bhayangkari 1 Medan adalah berisi langkah-langkah jalannya program untuk mendapatkan hasil berupa Daftar Siswa, Laporan Absensi Siswa, Laporan Absensi Guru dan Laporan Nilai.
4.1.1 Algoritma Data Absen Siswa
Algoritma data absen siswa adalah: langkah-langkah program dalam pemasukan data absen siswa sampai penyimpanan kedalam tabel absen siswa Mulai Langkah 1
Buka Koneksi ke Database dbKemala.db
Langkah 2
Baca database tabel Siswa
Langkah 3
Baca database tabel Guru
Langkah 4
Input Tahun, Semester, NIS
Langkah 5
Baca database table AbsenSiswa
Langkah 6
Buat Nomor Id Absen
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Langkah 7
Input Tanggal
Langkah 8
Baca database tabel DetailAbsen
Langkah 9
Jika tanggal sudah ada maka
Langkah 10
Tolak data dan beri pesan konfirmasi kesalahan
Langkah 11
Ulangi Langkah 9
Langkah 12
Jika data tanggal belum ada maka
Langkah 13
Input Kode Absen (Hadir, Alpa, Sakit, Izin, Lain-lain)
Langkah 14
Baca database tabel AbsenSiswa Simpan Data absen ke tabel AbsenSiswa dan tabel Detail Absen Siswa
Langkah 15
Ulangi langkah 9–14 untuk tanggal yang lain
Selesai
4.1.2 Algoritma Data Absen Guru
Algoritma data absen guru adalah: langkah-langkah program dalam pemasukan data absen guru sampai penyimpanan kedalam tabel absen guru Mulai Langkah 1
Buka Koneksi ke Database dbKemala.db
Langkah 2
Baca database tabel Guru
Langkah 3
Baca database tabel AbsenGuru
Langkah 4
Input Tahun, Semester, NIP
Langkah 5
Baca database table AbsenGuru
Langkah 6
Buat Nomor Id Absen
Langkah 7
Input Tanggal
Langkah 8
Baca database tabel DetailAbsen
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Langkah 9
Jika tanggal sudah ada maka
Langkah 10
Tolak data dan beri pesan konfirmasi kesalahan
Langkah 11
Ulangi Langkah 9
Langkah 12
Jika data tanggal belum ada maka
Langkah 13
Input Kode Absen (Hadir, Alpa, Sakit, Izin, Lain-lain)
Langkah 14
Baca database tabel AbsenGuru Simpan Data absen ke tabel AbsenGuru dan tabel Detail Absen Guru
Langkah 15
Ulangi langkah 9–14 untuk tanggal yang lain
Selesai
4.1.3 Algoritma Data Nilai
Algoritma data nilai adalah: langkah-langkah program dalam pemasukan data nilai sampai penyimpanan kedalam tabel nilai Mulai Langkah 1
Buka Koneksi ke Database dbKemala.db
Langkah 2
Baca database tabel Mata Pelajaran
Langkah 3
Baca database tabel Siswa
Langkah 4
Input Tahun, Semester
Langkah 5
Input NIS
Langkah 6
Baca database tabel Siswa
Langkah 7
Jika NIS siswa ada maka
Langkah 8
Input Mata Pelajaran
Langkah 9
Jika mata pelajaran ada maka
Langkah 10
Input Jenis Ujian
Langkah 11
Baca database table Nilai
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Langkah 12
Baca database tabel DetailUjian
Langkah 13
Jika data belum ada maka
Langkah 14
Buat Nomor Id Nilai
Langkah 15
Input Nilai Ujian
Langkah 16
Simpan data Detail Ujian ke tabel DetailUjian
Langkah 17
Simpan data Tahun,Semester, NIS, Mata Pelajaran ke tabel Ujian
Langkah 18
Ulangi Langkah 10 untuk data jenis ujian lainnya
Langkah 19
Ulangi Langkah 4 untuk data nilai Siswa yang lain
Selesai
4.2 Tampilan Login
Tampilan login berfungsi sebagai pemasukan data pengguna berupa User Identitas dan password untuk melakukan otorisasi pengguna. Pada tampilan ini terdapat dua buah tombol yaitu tombol Ok untuk melakukan proses otorisasi dan tombol Batal untuk melakukan pembatalan pemasukan data otorisasi. Tampilan login dapat dilihat seperti Gambar 4.1.
Gambar 4.1 Tampilan Login
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.3 Menu Utama
Tampilan menu utama adalah tampilan tempat menu-menu program aplikasi yang telah dirancang. Tampilan ini terdiri dari Judul Aplikasi, Gambar latar belakang serta Menu File yang berisi data Absen Siswa, Absen Guru serta Data Nilai, menu Utility berisi program Data Siswa, Data Guru, Data Mata Pelajaran serta data User, Menu Report berisi Cetak Laporan Absensi Siswa, Cetak Absensi Guru serta Cetak Laporan Nilai, menu Abaut, Help serta menu Exit Tampilan menu utama dapat dilihat pada Gambar 4.2.
Gambar 4.2 Tampilan Menu Utama
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.3.1 Tampilan Data Absensi Siswa
Tampilan ini berfungsi tempat pengisian data absensi siswa secara harian. Pada tampilan
ini enam buah tombol yang memiliki fungsi masing-masing. Tombol
Tambah berfungi untuk memasukkan data baru, tombol Cari untuk mencari data yang sudah disimpan sebelumnya, tombol Ubah untuk melakukan perubahan data, tombol Hapus untuk menghapus data, tombol Batal untuk melakukan pembatalan serta tombol Keluar berfungsi untuk menutup tampilan dan kembali ke menu update. Pada bagian bawah tampilan ini terdapat grid data yang telah dimasukkan sebelumnya. Tampilan data absensi siswa dapat dilihat pada Gambar 4.3.
Gambar 4.3 Tampilan Data Absen Siswa
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.3.2 Tampilan Data Absensi Guru
Tampilan ini berfungsi tempat pengisian data absensi guru secara harian. Pada tampilan
ini enam buah tombol yang memiliki fungsi masing-masing. Tombol
Tambah berfungi untuk memasukkan data baru, tombol Cari untuk mencari data yang sudah disimpan sebelumnya, tombol Ubah untuk melakukan perubahan data, tombol Hapus untuk menghapus data, tombol Batal untuk melakukan pembatalan serta tombol Keluar berfungsi untuk menutup tampilan dan kembali ke menu update. Pada bagian bawah tampilan ini terdapat grid data yang telah dimasukkan sebelumnya. Tampilan data absensi guru dapat dilihat pada Gambar 4.4.
Gambar 4.4 Tampilan Data Absensi Guru
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.3.3 Data Nilai
Tampilan ini berfungsi tempat pengisian data nilai ujian siswa per mata pelajaran. Pada tampilan ini enam buah tombol yang memiliki fungsi masing-masing. Tombol Tambah berfungi untuk memasukkan data baru, tombol Cari untuk mencari data yang sudah disimpan sebelumnya, tombol Ubah untuk melakukan perubahan data, tombol Hapus untuk menghapus data, tombol Batal untuk melakukan pembatalan serta tombol Keluar berfungsi untuk menutup tampilan dan kembali ke menu update. Pada bagian bawah tampilan ini terdapat grid data yang telah dimasukkan sebelumnya. Tampilan data absensi guru dapat dilihat pada Gambar 4.5.
Gambar 4.5 Tampilan Data Nilai
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.3.4 Data Siswa
Tampilan ini berfungsi tempat pengisian data siswa SMU Kemala Bhayangkari 1 Medan. Pada tampilan ini enam buah tombol yang memiliki fungsi masing-masing. Tombol Tambah berfungi untuk memasukkan data baru, tombol Cari untuk mencari data yang sudah disimpan sebelumnya, tombol Ubah untuk melakukan perubahan data, tombol Hapus untuk menghapus data, tombol Batal untuk melakukan pembatalan serta tombol Keluar berfungsi untuk menutup tampilan dan kembali ke menu update. Pada bagian bawah tampilan ini terdapat grid data yang telah dimasukkan sebelumnya. Tampilan data siswa dapat dilihat pada Gambar 4.6.
Gambar 4.6 Tampilan Data Siswa
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.3.5 Data Guru
Tampilan ini berfungsi tempat pengisian data guru SMU Kemala Bhayangkari 1 Medan. Pada tampilan ini enam buah tombol yang memiliki fungsi masing-masing. Tombol Tambah berfungi untuk memasukkan data baru, tombol Cari untuk mencari data yang sudah disimpan sebelumnya, tombol Ubah untuk melakukan perubahan data, tombol Hapus untuk menghapus data, tombol Batal untuk melakukan pembatalan serta tombol Keluar berfungsi untuk menutup tampilan dan kembali ke menu update. Pada bagian bawah tampilan ini terdapat grid data yang telah dimasukkan sebelumnya. Tampilan data guru dapat dilihat pada Gambar 4.7.
Gambar 4.7 Tampilan Data Guru
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.3.6 Data Mata Pelajaran
Tampilan ini berfungsi tempat pengisian data mata pelajaran SMU Kemala Bhayangkari 1 Medan. Pada tampilan ini enam buah tombol yang memiliki fungsi masing-masing. Tombol Tambah berfungi untuk memasukkan data baru, tombol Cari untuk mencari data yang sudah disimpan sebelumnya, tombol Ubah untuk melakukan perubahan data, tombol Hapus untuk menghapus data, tombol Batal untuk melakukan pembatalan serta tombol Keluar berfungsi untuk menutup tampilan dan kembali ke menu update. Pada bagian bawah tampilan ini terdapat grid data yang telah dimasukkan sebelumnya. Tampilan data mata pelajaran dapat dilihat pada Gambar 4.8.
Gambar 4.8 Tampilan Data Mata Pelajaran
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.3.7 Data User
Tampilan ini berfungsi tempat pengisian data user sebagai pengguna sistem ini. Pada tampilan
ini enam buah tombol yang memiliki fungsi masing-masing. Tombol
Tambah berfungi untuk memasukkan data baru, tombol Cari untuk mencari data yang sudah disimpan sebelumnya, tombol Ubah untuk melakukan perubahan data, tombol Hapus untuk menghapus data, tombol Batal untuk melakukan pembatalan serta tombol Keluar berfungsi untuk menutup tampilan dan kembali ke menu update. Pada bagian bawah tampilan ini terdapat grid data yang telah dimasukkan sebelumnya. Tampilan data user dapat dilihat pada Gambar 4.9.
Gambar 4.9 Tampilan Data User
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.3.8 Tampilan Bantuan
Tampilan Bantuan berfungsi untuk menampilkan keterangan sisten serta cara menggunakan sistem. Tampilan Bantuan dapat dilihat pada Gambar 4.10.
Gambar 4.10 Tampilan Help
4.3.9 Tampilan About
Tampilan About berfungsi untuk menampilkan keterangan sisten serta profile penulis tugas akhir ini. Tampilan About dapat dilihat pada Gambar 4.11.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Gambar 4.11 Tampilan About
4.4 Tampilan Daftar Siswa
Tampilan Daftar Siswa berfungsi untuk menampilkan nama-nama siswa pada SMU Kemala Bhayangkari 1 Medan. Tampilan Daftar Siswa dapat dilihat pada Gambar 4.12.
Gambar 4.12 Tampilan Daftar Siswa
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
4.5 Tampilan Laporan Absensi Siswa
Tampilan Laporan Absensi Siswa berfungsi untuk menampilkan data absensi siswa pada SMU Kemala Bhayangkari 1 Medan. Tampilan Laporan Absensi Siswa dapat dilihat pada Gambar 4.13.
Gambar 4.13 Tampilan Laporan Absensi Siswa
4.6 Tampilan Laporan Absensi Guru
Tampilan Laporan Absensi Guru berfungsi untuk menampilkan data absensi guru pada SMU Kemala Bhayangkari 1 Medan. Tampilan Laporan Absensi guru dapat dilihat pada Gambar 4.14.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Gambar 4.14 Tampilan Laporan Absensi Guru
4.7 Tampilan Laporan Nilai Ujian
Tampilan Laporan Nilai Ujian berfungsi untuk menampilkan data Nilai Ujian siswa SMU Kemala Bhayangkari 1 Medan. Tampilan Laporan Nilai Ujian dapat dilihat pada Gambar 4.15.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Gambar 4.15 Tampilan Laporan Nilai
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
BAB 5
PENUTUP
5.1 Kesimpulan
Tugas akhir telah membahas Pangkalan Data Pada SMU Kemala Bhayangkari 1 Medan. Aplikasi ini diperuntukkan bagi user untuk memproses data akademik siswa dalam membuat laporan ke pimpinan sekolah.
Setelah proses perancangan dan mengaplikasikan perangkat lunak yang telah dibangun, maka dapat diambil kesimpulan bahwa Sistem ini dapat merangkum data absen siswa , data absen guru, dan data nilai ujian siswa untuk menyajikan laporan berupa laporan absen siswa, laporan absen guru serta laporan nilai ujian siswa.
5.2 Saran Untuk penelitian selanjutnya penulis menyarankan pengembangan sistem menjadi sistem Local Area Network (LAN) agar pemasukan data dapat dilakukan lebih dari satu user sesuai dengan fungsinya (petugas fungsional).
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
DAFTAR PUSTAKA
Armansyah, Indra. 2005. Tip dan Trik Oracle. Jakarta: PT. Elex Media Komputindo. Fatansyah, Ir. 2001. BASIS DATA. Cetakan Ketiga–Bandung. Bandung: Informatika. Gardner, Bryan. 2008. Database Archtecture. http://oraclemessage.com/oracledatabase-architecture.htm. Diakses tanggal 16 Maret 2009. Heryanto, Imam dan Raharjo, Budi. 2003. Pemrograman PL/SQL ORACLE. Bandung: Informatika. Jjflash. 2009. Oracle on Database Link. http://it.toolbox.com/blogs/jjflash-oraclejournal/on-database-links-31108. Diakses tanggal 14 April 2009. Kanaracus,
Chris.
2009.
Oracle
Open
Sourcing
Software.
http//www.networkworld.com/news/2009/030909-oracle-offers-sourcingsoftware-as.html. Diakses tanggal 14 April 2009. Nugroho, Adi. 2008. Menjadi Adminstrator Basis Data ORACLE 10g. Bandung: Informatika. Rohmad. 2008. Database Oracle. http://rohmad.net/2008/05/30/kitab-suci-dba-oracle/ Diakses tanggal 16 Maret 2009. Subhan,
Muhammad. 2009. Pengenalan Database. http://ilmukomputer.org/ 2009/03/02/ pengenalan-database/. Diakses tanggal 16 Maret 2009.
Syafii, M. 2005. Panduan Membuat Aplikasi Database dengan PHP 5 MySQL PostgreSQL Oracle–Edisi I. Yogyakarta: ANDI. Tlananthu. 2009. How to Enter a Single Quotation Mark in http//www.orafaq.com/node/2195. Diakses tanggal 14 April 2009.
Oracle.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
LAMPIRAN A: KAMUS DATA
1. Kamus data untuk Login Admin Nama Deskripsi
Login Administrator harus mengisi username dan password untuk masuk ke dalam sistem
Struktur Data
Id + username + password
UserID
=
Text [A-Z | a-z | 0-9 | - | | ]
password
=
Text [A-Z | a-z | 0-9 | - | | ]
2. Kamus data untuk Data Absen Siswa Nama
Data Absen Siswa
Deskripsi
Menambah/Melihat / Mengedit / menghapus data Absen Siswa
Struktur Data
Thn+Sem+NIS + IdAbsenSiswa + TglAbsen + KdAbsen
Thn
=
Number [0-9]
Sem
=
Number [0-9]
NIS
=
Number [0-9]
IDAbsenSiswa
=
Number [0-9]
TglAbsen
=
Date
KdAbsen
=
Text [A-Z a-z]
3. Kamus data untuk Data Absen Guru Nama
Data Absen Guru
Deskripsi
Menambah/Melihat / Mengedit / menghapus data Absen Guru
Struktur Data
Thn+Sem+NIP + IdAbsenGuru + TglAbsen + KdAbsen
Thn
=
Number [0-9]
Sem
=
Number [0-9]
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
NIP
=
Number [0-9]
IDAbsenGuru
=
Number [0-9]
TglAbsen
=
Date
KdAbsen
=
Text [A-Z a-z]
4. Kamus data untuk Nilai Nama
Data Nilai
Deskripsi
Menambah/Melihat / Mengedit / menghapus data Nilai
Struktur Data
Thn+Sem+NIS + JnsUjian + KdMtPelajaran + IdNilai+Nilai
Thn
= Number [0-9]
Sem
= Number [0-9]
NIS
= Number [0-9]
JnsUjian
= Number [0-9]
KdMtPelajaran
= Number [0-9]
IdNilai
= Number [0-9]
Nilai
= Number [0-9]
5. Kamus data untuk data Siswa Nama
Data Siswa
Deskripsi
Data Lengkap Siswa NIS + NmSiswa + AlmSiswa + JKSiswa + TglLahir +
Struktur Data
TmpLahir + AsalSekolah + ThnSTTB + NoSTTB + NmAyah + NmIbu+ AlmAI + NoTelpAI + KerjaAyah + KerjaIbu
NIS
=
Number [0-9]
NmSiswa
=
Text [A-Z a-z]
AlmSiswa
=
Text [A-Z a-z]
JKSiswa
=
Text [A-Z a-z]
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
AgamaSiswa
=
Text [A-Z a-z]
TglLahir
=
Date
TmpLahir
=
Text [A-Z a-z]
AsalSekolah
=
Text [A-Z a-z]
ThnSTTB
=
Number [0-9]
NoSTTB
=
Text [A-Z a-z]
NmAyah
=
Text [A-Z a-z]
NmIbu
=
Text [A-Z a-z]
AlmAI
=
Text [A-Z a-z]
NoTelpAI
=
Number [0-9]
KerjaAyah
=
Text [A-Z a-z]
KerjaIbu
=
Text [A-Z a-z]
6. Kamus data untuk Data Guru Nama
Data Guru
Deskripsi
Menambah, Mengupdate, mengedit, dan menghapus Data Guru
Struktur Data
NIP, NmGuru, JKGuru, AgamaGuru, AlmGuru, STGuru, TmpLahir, TglLahir, NoTelp
NIP
=
Number [0-9]
NmGuru
=
Text
AgamaGuru
=
Text [A-Z | a-z | 0-9 | - | | ]
AlmGuru
=
Text [A-Z | a-z | 0-9 | - | | ]
STGuru
=
Text [A-Z | a-z | 0-9 | - | | ]
TmpLahir
=
Text [A-Z | a-z | 0-9 | - | | ]
TglLahir
=
Date
NoTelp
=
Number [0-9]
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
7. Kamus data untuk Data Mata Pelajaran Nama Deskripsi Struktur Data
Data Mata Pelajaran Menambah, Mengupdate, mengedit, dan menghapus Data Mata Pelajaran KdPel + NmPel + Keterangan
8. Kamus data User Nama
Data User
Deskripsi
Menambah, Mengupdate, mengedit, dan menghapus Data User
Struktur Data
UserId + Password
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
LAMPIRAN B: LISTING PROGRAM Listing Login Dim rsPasswd As Recordset Private Sub cmdCancel_Click() End End Sub Private Sub cmdOK_Click() Set rsPasswd = New ADODB.Recordset rsPasswd.Open "Select * from tUser where userId ='" & txtUid.Text & "' and passwd = '" & txtPass.Text & "'", CN, adOpenDynamic, adLockOptimistic If rsPasswd.EOF = True Then MsgBox "Password salah" txtPass.Text = "" txtPass.SetFocus Else If UCase(txtUid.Text) = "WENTY" Then frmMenuUtama.mnuUtility.Enabled = True frmMenuUtama.Show Else frmMenuUtama.mnuUtility.Enabled = False frmMenuUtama.Show End If End If End Sub Private Sub Form_Activate() cmdOk.Enabled = False txtPass.Locked = True txtUid.Locked = False lblDate.Caption = Format(Now, "dd-mm-yyyy") txtUid.SetFocus End Sub Private Sub Form_Load() Koneksi End Sub Private Sub txtPass_Change() cmdOk.Enabled = True End Sub Private Sub txtPass_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cmdOk.Enabled = True cmdOk.SetFocus End If End Sub Private Sub txtUid_Change() txtPass.Locked = False End Sub Private Sub txtUid_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtPass.Locked = False txtPass.SetFocus End If
End Sub Menu Utama Dim j As Integer Private Sub abt_Click() frmAbout1.Show End Sub Private Sub cetRaport_Click() frmCetakRaport.Show End Sub Private Sub Daf_Click() frmMasterSis.Show End Sub Private Sub HakAkses_Click() frmPasswd.Show End Sub Private Sub DtAbGuru_Click() frmAbsensiGuru.Show End Sub Private Sub DtAbSiswa_Click() frmAbsensiSiswa.Show End Sub Private Sub dtGuru_Click() frmGuru.Show End Sub
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Private Sub dtMtPel_Click() frmMstPelajaran.Show End Sub Private Sub DtSiswa_Click() frmSiswa.Show End Sub Private Sub dtUser_Click() frmUser.Show End Sub Private Sub Hlp_Click() frmHelp.Show End Sub Private Sub MDIForm_Activate() Timer1.Enabled = True End Sub Private Sub MDIForm_Unload(Cancel As Integer) Me.Hide frmLogin.txtUid = "" frmLogin.txtPass = "" frmLogin.Show frmLogin.txtUid.SetFocus End Sub Private Sub mnuQuit_Click() Me.Hide frmLogin.txtUid = "" frmLogin.txtPass = "" frmLogin.Show frmLogin.txtUid.SetFocus End Sub Private Sub mtPel_Click() frmMstPelajaran.Show End Sub Private Sub mutSis_Click() frmMutSiswa.Show End Sub Private Sub nilaiHar_Click()
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
frmSemester.Show End Sub Private Sub Timer1_Timer() Dim jud, jud1 As String jud = "PERANGKAT LUNAK PANGKALAN DATA" jud1 = "SMU BHAYANGKARI 1 MEDAN" Label1.Caption = Left(jud, j) Label2.Caption = Right(jud1, j) If j = 1 Then Label1.ForeColor = &H80FF& ElseIf j > 10 Then Label1.ForeColor = &HFF& Else Label1.ForeColor = &H80FF& End If j = j + 1 If j > Len(jud) + 20 Then j = 1 End If End Sub
Data Absen Siswa Option Explicit Dim rsSiswa As Recordset Dim rsAbsen As Recordset Dim rsDAbsen As Recordset Dim rsGuru As Recordset Dim rsCariAbsen As Recordset Dim KdAbsen As String * 1 Dim rsRec As Recordset Dim IdTempDAbsenSiswa As Integer Dim IdAbsenSiswa As Integer Dim IdDAbsenSiswa As Integer Dim rsSave As Recordset Dim rsSimpanAbsen As Recordset Dim rsSimpanDAbsen As Recordset Dim rsTempDAbsen As Recordset Dim bolTemp As Boolean Dim thn, sem, nis As Integer Sub CekData()
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Set rsDAbsen = New ADODB.Recordset rsDAbsen.Open "Select * from tDAbsenSiswa where IdAbsensiswa=" & IdAbsenSiswa & " and IddAbsenSiswa=" & IdDAbsenSiswa & " and tglAbsen='" & Format(txtTgl.Text, "dd-mm-yyyy") & "'", CN, adOpenDynamic, adLockOptimistic If tambah = True Then If rsDAbsen.EOF = True Then cmdSave.Visible = True cmdSave.Enabled = True cmdSave.SetFocus Else MsgBox "Data absen sudah ada ....." txtTgl.Text = "__-__-____" txtTgl.SetFocus End If End If End Sub Private Sub cboKdAbsen_Click() If cboKdAbsen.Text = "IZIN" Then KdAbsen = "I" CekData ElseIf cboKdAbsen.Text = "SAKIT" Then KdAbsen = "S" CekData ElseIf cboKdAbsen.Text = "TANPA ALASAN" Then KdAbsen = "T" CekData Else KdAbsen = "L" CekData End If End Sub Private Sub cboNIS_Click() On Error Resume Next Set rsSiswa = New ADODB.Recordset rsSiswa.Open "Select * from tSiswa where NIS=" & cboNis.Text & "", CN, adOpenDynamic, adLockOptimistic If rsSiswa.EOF = True Then MsgBox "NIS tidak ada ..." cboNis.Text = "" cboNis.SetFocus
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Else LblNama.Caption = rsSiswa!NmSiswa Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tAbsenSiswa where Thn=" & txtThn.Text & " and Sem=" & cboSem.Text & " and NIS=" & cboNis.Text & "", CN, adOpenDynamic, adLockOptimistic If tambah = True Then If rsCari.EOF = True Then Call HitungIdAbsen Call HitungIdDAbsen txtTgl.Enabled = True txtTgl.SetFocus Else MsgBox "Data sudah Ada.. update .." IdAbsenSiswa = rsCari!IdAbsenSiswa txtIdAbsen = IdAbsenSiswa Set rsDAbsen = New ADODB.Recordset rsDAbsen.Open "Select * from tDAbsenSiswa where IdAbsenSiswa=" & IdAbsenSiswa & "", CN, 1, 2 If rsDAbsen.EOF = True Then Call HitungIdDAbsen txtTgl.Enabled = True txtTgl.SetFocus Else Call HitungIdDAbsen txtTgl.Enabled = True txtTgl.SetFocus End If End If ElseIf Cari = True Then If Not rsCari.EOF = True Then IdAbsenSiswa = rsCari!IdAbsenSiswa Set rsDAbsen = New ADODB.Recordset rsDAbsen.Open "Select * from tDAbsenSiswa where IdAbsenSiswa= " & IdAbsenSiswa & "", CN, 1, 2 If Not rsDAbsen.EOF = True Then Set rsTempDAbsen = New ADODB.Recordset rsTempDAbsen.Open "tTempDAbsenSiswa", CN, 1, 2 Set rsDAbsen = New
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
ADODB.Recordset “rsDAbsen.Open "Select* from tDAbsenSiswa order by IdDAbsenSiswa asc", CN, 1, Do While Not rsDAbsen.EOF rsTempDAbsen.AddNew rsTempDAbsen!IdDAbsenSiswa = rsDAbsen!IdDAbsenSiswa rsTempDAbsen!IdAbsenSiswa = rsDAbsen!IdAbsenSiswa rsTempDAbsen!TglAbsen = rsDAbsen!TglAbsen rsTempDAbsen!KdAbsen = rsDAbsen!KdAbsen rsTempDAbsen.Update rsDAbsen.MoveNext If rsDAbsen.EOF Then Exit Do End If Loop Grid2.Visible = True Adodc1.Refresh Grid2.Refresh Grid2.TextMatrix(0, 0) = "" Grid2.TextMatrix(0, 1) = "No Id" Grid2.TextMatrix(0, 2) = "ID Absen" Grid2.TextMatrix(0, 3) = "Tanggal" Grid2.TextMatrix(0, 4) = "Kode Absen" Grid2.ColWidth(0) = 0 Grid2.ColWidth(1) = 1000 Grid2.ColWidth(2) = 1200 Grid2.ColWidth(3) = 1200 Grid2.ColWidth(4) = 1200 Else End If Else MsgBox "Data tidak ada" cboNis.Text = "" cboNis.SetFocus End If End If End If End Sub
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Sub HitungIdAbsen() Set rsRec = New ADODB.Recordset rsRec.Open "Select * from tAbsenSiswa order by IdAbsenSiswa desc", CN, 1, 2 If Not rsRec.EOF = True Then IdAbsenSiswa = rsRec!IdAbsenSiswa + 1 Else IdAbsenSiswa = 1 End If txtIdAbsen.Text = IdAbsenSiswa End Sub Sub HitungIdDAbsen() Set rsRec = New ADODB.Recordset rsRec.Open "Select * from tDAbsenSiswa order by IdDAbsenSiswa desc", CN, 1, 2 If Not rsRec.EOF = True Then IdDAbsenSiswa = rsRec!IdDAbsenSiswa + 1 Else IdDAbsenSiswa = 1 End If bolTemp = True txtIdDAbsen.Text = IdDAbsenSiswa 'IdTempDAbsenSiswa = IdDAbsenSiswa End Sub Sub HitungTempIdDAbsen() Set rsRec = New ADODB.Recordset rsRec.Open "Select * from tTempDAbsenSiswa order by IdDAbsenSiswa desc", CN, 1, 2 If Not rsRec.EOF = True Then IdTempDAbsenSiswa = rsRec!IdDAbsenSiswa + 1 Else IdTempDAbsenSiswa = 1 End If txtIdDAbsen.Text = IdTempDAbsenSiswa End Sub Sub CekDAbsen() Set rsDAbsen = New ADODB.Recordset rsDAbsen.Open "Select * from tDAbsensiSiswa where Thn=" & txtThn.Text & " and Sem=" & cboSem.Text & " and NIS=" & cboNis.Text & "", CN, adOpenDynamic,
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
adLockOptimistic End Sub Private Sub cboSem_Click() cboNis.Locked = False cboNis.SetFocus End Sub Private Sub cmdSave_Click() Grid2.Visible = True Grid2.TextMatrix(0, 0) = "" Grid2.TextMatrix(0, 1) = "No Id" Grid2.TextMatrix(0, 2) = "ID Absen" Grid2.TextMatrix(0, 3) = "Tanggal" Grid2.TextMatrix(0, 4) = "Kode Absen" Grid2.ColWidth(0) = 0 Grid2.ColWidth(1) = 1000 Grid2.ColWidth(2) = 1200 Grid2.ColWidth(3) = 1200 Grid2.ColWidth(4) = 1200 Adodc1.Refresh Grid2.Refresh X = MsgBox("Data sudah benar ?", vbYesNo) If X = vbYes Then If bolTemp = True Then Call HitungTempIdDAbsen End If Set rsSave = New ADODB.Recordset rsSave.Open "tTempDAbsenSiswa", CN, 1, 2 rsSave.AddNew rsSave!IdDAbsenSiswa = txtIdDAbsen.Text 'IdDAbsenSiswa rsSave!IdAbsenSiswa = IdAbsenSiswa rsSave!TglAbsen = txtTgl.Text rsSave!KdAbsen = Left(cboKdAbsen.Text, 1) rsSave.Update Adodc1.Refresh Grid2.Refresh Grid2.TextMatrix(0, 0) = "" Grid2.TextMatrix(0, 1) = "No Id" Grid2.TextMatrix(0, 2) = "ID Absen" Grid2.TextMatrix(0, 3) = "Tanggal" Grid2.TextMatrix(0, 4) = "Kode Absen"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Grid2.ColWidth(0) Grid2.ColWidth(1) Grid2.ColWidth(2) Grid2.ColWidth(3) Grid2.ColWidth(4)
= = = = =
0 1000 1200 1200 1200
Set rsSave = Nothing cmdSimpan.Enabled = True txtTgl.Text = "__-__-____" cboKdAbsen.Text = "" txtTgl.SetFocus Else txtTgl.SetFocus End If End Sub Private Sub grid2_Click() Dim i As Integer i = Grid2.Row IdDAbsenSiswa = Grid2.TextMatrix(i, 1) txtIdDAbsen.Text = IdDAbsenSiswa IdAbsenSiswa = Grid2.TextMatrix(i, 2) txtIdAbsen = IdAbsenSiswa Call BCari End Sub Sub BCari() On Error Resume Next Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tDAbsenSiswa where idDAbsenSiswa=" & IdDAbsenSiswa & " and idAbsenSiswa=" & IdAbsenSiswa & "", CN, adOpenDynamic, adLockOptimistic If Not rsCari.EOF = True Then IdAbsenSiswa = rsCari!IdAbsenSiswa txtTgl.Text = Format(rsCari!TglAbsen, "dd-mm-yyyy") If rsCari!KdAbsen = "H" Then cboKdAbsen.Text = "HADIR" ElseIf rsCari!KdAbsen = "A" Then cboKdAbsen.Text = "ALPHA" ElseIf rsCari!KdAbsen = "I" Then cboKdAbsen.Text = "IZIN" ElseIf rsCari!KdAbsen = "S" Then cboKdAbsen.Text = "SAKIT"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
ElseIf rsCari!KdAbsen = "L" Then cboKdAbsen.Text = "LAIN-LAIN" Else cboKdAbsen.Text = "LAIN-LAIN" End If
Set rsCariAbsen = New ADODB.Recordset rsCariAbsen.Open "Select * from tAbsenSiswa where IdAbsenSiswa=" & IdAbsenSiswa & "", CN, adOpenDynamic, adLockOptimistic If Not rsCariAbsen.EOF = True Then thn = rsCariAbsen!thn sem = rsCariAbsen!sem nis = rsCariAbsen!nis txtThn.Text = thn cboSem.Text = sem cboNis.Text = nis rsSiswa.Open "Select * from tSiswa where NIS=" & nis & "", CN, adOpenDynamic, adLockOptimistic If Not rsSiswa.EOF = True Then LblNama.Caption = rsSiswa!NmSiswa Else LblNama.Caption = "NO Name" End If Else End If cmdRubah.Enabled = True cmdHapus.Enabled = True cmdRubah.SetFocus Else End If End Sub Private Sub txtTgl_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Set rsCari = New ADODB.Recordset rsCari.Open "Select * from ttempDabsensiswa
where
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
IdAbsensiswa=" & IdAbsenSiswa & " and tglAbsen='" & Format(txtTgl.Text, "yyyy-mm-dd") & "'", CN, adOpenDynamic, adLockOptimistic 'MsgBox "IdAbsenSiswa :" & IdAbsenSiswa & " IdDAbsenSiswa: " & IdDAbsenSiswa & " Tgl : " & txtTgl.Text If tambah = True Then If rsCari.EOF = True Then cboKdAbsen.Locked = False cboKdAbsen.SetFocus Else MsgBox "Tanggal sudah ada" txtTgl.Text = "__-__-____" txtTgl.SetFocus End If ElseIf ubah = True Then cboKdAbsen.Locked = False cboKdAbsen.SetFocus End If End If End Sub Private Sub txtThn_Change() If Len(txtThn) < 4 Then Exit Sub Else cboSem.Locked = False cboSem.SetFocus End If End Sub Private Sub cmdBatal_Click() Call HapusTemp mati Bersih segar cmdHapus.Enabled = False cmdRubah.Visible = True cmdUpdate.Visible = False cmdRubah.Enabled = False cmdTambah.Visible = True cmdSimpan.Visible = False cmdCari.Enabled = True
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Private Sub cmdcari_Click() Cari = True tambah = False ubah = False cmdTambah.Enabled = False cmdCari.Enabled = False txtThn.Locked = False txtThn.SetFocus End Sub Private Sub CmdHapus_Click() cmdHapus.Enabled = False cmdRubah.Enabled = False rsCari.Delete Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete from tTempDAbsenSiswa where IdDAbsenSiswa=" & IdDAbsenSiswa & " and IdAbsenSiswa=" & IdAbsenSiswa & "", CN, adOpenDynamic, adLockOptimistic Bersih mati segar Grid2.TextMatrix(0, 0) = "" Grid2.TextMatrix(0, 1) = "No Id" Grid2.TextMatrix(0, 2) = "ID Absen" Grid2.TextMatrix(0, 3) = "Tanggal" Grid2.TextMatrix(0, 4) = "Kode Absen" Grid2.ColWidth(0) = 0 Grid2.ColWidth(1) = 1000 Grid2.ColWidth(2) = 1200 Grid2.ColWidth(3) = 1200 Grid2.ColWidth(4) = 1200 Adodc1.Refresh Grid2.Refresh Adodc.Refresh grid.Refresh MsgBox "Data sudah di hapus...." cmdHapus.Enabled = False cmdRubah.Enabled = False cmdTambah.Visible = True
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cmdSimpan.Visible = False cmdCari.Enabled = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Sub segar() Set rsSegar = New ADODB.Recordset rsSegar.Open "Select * from tAbsenSiswa order by NIS asc", CN, 1, 2 End Sub Private Sub cmdKeluar_Click() Call HapusTemp Unload Me End Sub Sub HapusTemp() Set rsHapus = Nothing Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete tTempDAbsenSiswa", CN, 1, 2 Set rsHapus = Nothing Adodc1.Refresh Grid2.Refresh Grid2.Visible = False End Sub Private Sub CmdRubah_Click() Cari = False ubah = True cmdUpdate.Visible = True cmdRubah.Visible = False cmdHapus.Enabled = False ubah = True Cari = False txtTgl.Enabled = True txtTgl.SetFocus End Sub Private Sub cmdSimpan_Click() Simpan tambah = False segar
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Bersih mati Adodc.Refresh grid.Refresh MsgBox "Data Sudah di Simpan" cmdSimpan.Visible = False cmdTambah.Visible = True cmdCari.Enabled = True cmdTambah.SetFocus End Sub Private Sub cmdtambah_Click() tambah = True Cari = False ubah = False Adodc.Refresh grid.Refresh cmdSimpan.Visible = True cmdSimpan.Enabled = False cmdTambah.Visible = False cmdCari.Enabled = False txtThn.Locked = False txtThn.SetFocus End Sub Private Sub cmdUpdate_Click() Call Rubah mati Bersih segar Adodc.Refresh grid.Refresh Grid2.Visible = False HapusTemp MsgBox "Data sudah diubah" cmdUpdate.Visible = False cmdRubah.Visible = True cmdRubah.Enabled = False cmdSimpan.Visible = False cmdCari.Enabled = True cmdHapus.Enabled = False cmdTambah.Visible = True cmdTambah.Enabled = True
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cmdTambah.SetFocus End Sub Private Sub Form_Activate() Bersih mati Grid2.Visible = False HapusTemp grid.TextMatrix(0, 0) = "" grid.TextMatrix(0, 1) = "ID" grid.TextMatrix(0, 2) = "Tahun" grid.TextMatrix(0, 3) = "Semester" grid.TextMatrix(0, 4) = "NIS" grid.ColWidth(0) = 0 grid.ColWidth(1) = 1000 grid.ColWidth(2) = 1500 grid.ColWidth(3) = 1200 grid.ColWidth(4) = 1500 grid.ColWidth(5) = 2000 grid.ColWidth(6) = 1500 cmdUpdate.Visible = False cmdRubah.Visible = True cmdRubah.Enabled = False cmdSimpan.Visible = False cmdTambah.Visible = True cmdHapus.Enabled = False cmdTambah.Visible = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Private Sub Form_Load() Koneksi Set rsSiswa = New ADODB.Recordset rsSiswa.Open "Select * from tSiswa order by NIS asc", CN, adOpenDynamic, adLockOptimistic Do Until rsSiswa.EOF = True cboNis.AddItem rsSiswa.Fields("NIS") rsSiswa.MoveNext Loop cboSem.List(0) = "1" cboSem.List(1) = "2" cboSem.List(2) = "3"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cboSem.List(3) cboSem.List(4) cboSem.List(5) cboKdAbsen.List(0) = cboKdAbsen.List(1) = cboKdAbsen.List(2) = cboKdAbsen.List(3) = cboKdAbsen.List(4) = End Sub
= "4" = "5" = "6" "HADIR" "IZIN" "SAKIT" "ALPHA" "LAIN-LAIN"
Private Sub Bersih() cboNis.Text = "" cboKdAbsen.Text = "" txtThn.Text = "" cboSem.Text = "" txtTgl.Text = "__-__-____" txtIdAbsen.Text = "" IdTempDAbsenSiswa = 0 IdAbsenSiswa = 0 IdDAbsenSiswa = 0 LblNama.Caption = "" txtIdDAbsen.Text = "" cboKdAbsen.Text = "" End Sub Private Sub mati() cboNis.Locked = True cboKdAbsen.Locked = True txtThn.Locked = True cboSem.Locked = True txtTgl.Enabled = False txtIdAbsen.Locked = True txtIdDAbsen.Locked = True cboKdAbsen.Locked = True End Sub Private Sub hidup() cboNis.Locked = False cboKdAbsen.Locked = False txtThn.Locked = False cboSem.Locked = False txtTgl.Enabled = True txtIdAbsen.Locked = False
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
txtIdDAbsen.Locked = False cboKdAbsen.Locked = False End Sub Sub Simpan() If tambah = True Then Set rsSimpanAbsen = New ADODB.Recordset rsSimpanAbsen.Open "tAbsenSiswa", CN, 1, 2 rsSimpanAbsen.AddNew rsSimpanAbsen!IdAbsenSiswa = IdAbsenSiswa rsSimpanAbsen!thn = txtThn.Text rsSimpanAbsen!sem = cboSem.Text rsSimpanAbsen!nis = cboNis.Text rsSimpanAbsen.Update Set rsSimpanDAbsen = New ADODB.Recordset rsSimpanDAbsen.Open "tDAbsenSiswa", CN, 1, 2 Set rsTempDAbsen = New ADODB.Recordset rsTempDAbsen.Open "Select * from tTempDAbsenSiswa order by IdDAbsenSiswa asc", CN, 1, 2 If Not rsTempDAbsen.EOF = True Then Do While Not rsTempDAbsen.EOF rsSimpanDAbsen.AddNew rsSimpanDAbsen!IdDAbsenSiswa = rsTempDAbsen!IdDAbsenSiswa rsSimpanDAbsen!IdAbsenSiswa = rsTempDAbsen!IdAbsenSiswa rsSimpanDAbsen!TglAbsen = rsTempDAbsen!TglAbsen rsSimpanDAbsen!KdAbsen = rsTempDAbsen!KdAbsen rsSimpanDAbsen.Update rsTempDAbsen.MoveNext If rsTempDAbsen.EOF Then Exit Do End If Loop End If Set rsSimpanAbsen = Nothing Set rsSimpanDAbsen = Nothing Set rsTempDAbsen = Nothing
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete tTempDAbsenSiswa", CN, 1, 2 Set rsHapus = Nothing Adodc.Refresh grid.Refresh Grid2.Visible = False MsgBox "Data sudah disimpan" cmdTambah.Visible = True cmdSave.Visible = False cmdCari.Enabled = True cmdTambah.Enabled = True cmdTambah.SetFocus End If End Sub Sub Rubah() Set rsUbah = New ADODB.Recordset rsUbah.Open "Update tDAbsenSiswa set tglAbsen='" & Format(txtTgl.Text, "yyyy-mm-dd") & "', KdAbsen='" & Left(cboKdAbsen.Text, 1) & "' where IdAbsenSiswa=" & IdAbsenSiswa & " and IdDAbsenSiswa=" & IdDAbsenSiswa & "", CN, adOpenDynamic, adLockOptimistic End Sub
Data Absen Guru Option Explicit Dim rsGuru As Recordset Dim rsAbsen As Recordset Dim rsDAbsen As Recordset Dim rsCariAbsen As Recordset Dim KdAbsen As String * 1 Dim rsRec As Recordset Dim IdTempDAbsenGuru As Integer Dim IdAbsenGuru As Integer Dim IdDAbsenGuru As Integer Dim rsSave As Recordset Dim rsSimpanAbsen As Recordset Dim rsSimpanDAbsen As Recordset
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Dim Dim Dim Sub Set
rsTempDAbsen As Recordset bolTemp As Boolean thn, sem, NIP As Integer CekData() rsDAbsen = New ADODB.Recordset rsDAbsen.Open "Select * from tDAbsenGuru where IdAbsenGuru=" & IdAbsenGuru & " and IddAbsenGuru=" & IdDAbsenGuru & " and tglAbsen='" & Format(txtTgl.Text, "dd-mm-yyyy") & "'", CN, adOpenDynamic, adLockOptimistic If tambah = True Then If rsDAbsen.EOF = True Then cmdSave.Visible = True cmdSave.Enabled = True cmdSave.SetFocus Else MsgBox "Data absen sudah ada ....." txtTgl.Text = "__-__-____" txtTgl.SetFocus End If End If End Sub Private Sub cboKdAbsen_Click() If cboKdAbsen.Text = "IZIN" Then KdAbsen = "I" CekData ElseIf cboKdAbsen.Text = "SAKIT" Then KdAbsen = "S" CekData ElseIf cboKdAbsen.Text = "TANPA ALASAN" Then KdAbsen = "T" CekData Else KdAbsen = "L" CekData End If End Sub Private Sub cboNIP_Click() On Error Resume Next Set rsGuru = New ADODB.Recordset rsGuru.Open "Select * from tGuru where NIP=" & cboNip.Text & "", CN, adOpenDynamic, adLockOptimistic
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
If rsGuru.EOF = True Then MsgBox "NIP tidak ada ..." cboNip.Text = "" cboNip.SetFocus Else LblNama.Caption = rsGuru!NmGuru Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tAbsenGuru where Thn=" & txtThn.Text & " and Sem=" & cboSem.Text & " and NIP=" & cboNip.Text & "", CN, adOpenDynamic, adLockOptimistic If tambah = True Then If rsCari.EOF = True Then Call HitungIdAbsen Call HitungIdDAbsen txtTgl.Enabled = True txtTgl.SetFocus Else MsgBox "Data sudah Ada.. update .." IdAbsenGuru = rsCari!IdAbsenGuru txtIdAbsen = IdAbsenGuru Set rsDAbsen = New ADODB.Recordset rsDAbsen.Open "Select * from tDAbsenGuru where IdAbsenGuru=" & IdAbsenGuru & "", CN, 1, 2 If rsDAbsen.EOF = True Then Call HitungIdDAbsen txtTgl.Enabled = True txtTgl.SetFocus Else Call HitungIdDAbsen txtTgl.Enabled = True txtTgl.SetFocus End If End If ElseIf Cari = True Then If Not rsCari.EOF = True Then IdAbsenGuru = rsCari!IdAbsenGuru Set rsDAbsen = New ADODB.Recordset rsDAbsen.Open "Select * from tDAbsenGuru where IdAbsenGuru=" & IdAbsenGuru & "", CN, 1, 2 If Not rsDAbsen.EOF = True Then
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Set rsTempDAbsen = New ADODB.Recordset rsTempDAbsen.Open "tTempDAbsenGuru", CN, 1, 2 Do While Not rsDAbsen.EOF rsTempDAbsen.AddNe rsTempDAbsen!IdDAbsenGuru = rsDAbsen!IdDAbsenGuru rsTempDAbsen!IdAbsenGuru = rsDAbsen!IdAbsenGuru rsTempDAbsen!TglAbsen = rsDAbsen!TglAbsen rsTempDAbsen!KdAbsen = rsDAbsen!KdAbsen rsTempDAbsen.Update rsDAbsen.MoveNext If rsDAbsen.EOF Then Exit Do End If Loop Grid2.Visible = True Adodc1.Refresh Grid2.Refresh Grid2.TextMatrix(0, 0) = "" Grid2.TextMatrix(0, 1) = "No Id" Grid2.TextMatrix(0, 2) = "ID Absen" Grid2.TextMatrix(0, 3) = "Tanggal" Grid2.TextMatrix(0, 4) = "Kode Absen" Grid2.ColWidth(0) = 0 Grid2.ColWidth(1) = 1000 Grid2.ColWidth(2) = 1200 Grid2.ColWidth(3) = 1200 Grid2.ColWidth(4) = 1200 Else End If Else MsgBox "Data tidak ada" cboNip.Text = "" cboNip.SetFocus End If End If End If End Sub Sub HitungIdAbsen() Set rsRec = New ADODB.Recordset rsRec.Open "Select * from tAbsenGuru order by
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
IdAbsenGuru desc", CN, 1, 2 If Not rsRec.EOF = True Then IdAbsenGuru = rsRec!IdAbsenGuru + 1 Else IdAbsenGuru = 1 End If txtIdAbsen.Text = IdAbsenGuru End Sub Sub HitungIdDAbsen() Set rsRec = New ADODB.Recordset rsRec.Open "Select * from tDAbsenGuru order by IdDAbsenGuru desc", CN, 1, 2 If Not rsRec.EOF = True Then IdDAbsenGuru = rsRec!IdDAbsenGuru + 1 Else IdDAbsenGuru = 1 End If bolTemp = True txtIdDAbsen.Text = IdDAbsenGuru 'IdTempDAbsenGuru = IdDAbsenGuru End Sub Sub HitungTempIdDAbsen() Set rsRec = New ADODB.Recordset rsRec.Open "Select * from tTempDAbsenGuru order by IdDAbsenGuru desc", CN, 1, 2 If Not rsRec.EOF = True Then IdTempDAbsenGuru = rsRec!IdDAbsenGuru + 1 Else IdTempDAbsenGuru = 1 End If txtIdDAbsen.Text = IdTempDAbsenGuru End Sub Sub CekDAbsen() Set rsDAbsen = New ADODB.Recordset rsDAbsen.Open "Select * from tDAbsensiGuru where Thn=" & txtThn.Text & " and Sem=" & cboSem.Text & " and NIP=" & cboNip.Text & "", CN, adOpenDynamic, adLockOptimistic End Sub Private Sub cboSem_Click()
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cboNip.Locked = False cboNip.SetFocus End Sub Private Sub cmdSave_Click() Grid2.Visible = True Grid2.TextMatrix(0, 0) = "" Grid2.TextMatrix(0, 1) = "No Id" Grid2.TextMatrix(0, 2) = "ID Absen" Grid2.TextMatrix(0, 3) = "Tanggal" Grid2.TextMatrix(0, 4) = "Kode Absen" Grid2.ColWidth(0) = 0 Grid2.ColWidth(1) = 1000 Grid2.ColWidth(2) = 1200 Grid2.ColWidth(3) = 1200 Grid2.ColWidth(4) = 1200 Adodc1.Refresh Grid2.Refresh X = MsgBox("Data sudah benar ?", vbYesNo) If X = vbYes Then If bolTemp = True Then Call HitungTempIdDAbsen End If Set rsSave = New ADODB.Recordset rsSave.Open "tTempDAbsenGuru", CN, 1, 2 rsSave.AddNew rsSave!IdDAbsenGuru = txtIdDAbsen.Text ' IdDAbsenGuru rsSave!IdAbsenGuru = IdAbsenGuru rsSave!TglAbsen = txtTgl.Text rsSave!KdAbsen = Left(cboKdAbsen.Text, 1) rsSave.Update Adodc1.Refresh Grid2.Refresh Grid2.TextMatrix(0, Grid2.TextMatrix(0, Grid2.TextMatrix(0, Grid2.TextMatrix(0, Grid2.TextMatrix(0, Grid2.ColWidth(0) = Grid2.ColWidth(1) =
0) = 1) = 2) = 3) = 4) = 0 1000
"" "No Id" "ID Absen" "Tanggal" "Kode Absen"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Grid2.ColWidth(2) = 1200 Grid2.ColWidth(3) = 1200 Grid2.ColWidth(4) = 1200 Set rsSave = Nothing cmdSimpan.Enabled = True txtTgl.Text = "__-__-____" cboKdAbsen.Text = "" txtTgl.SetFocus Else txtTgl.SetFocus End If End Sub Private Sub grid2_Click() Dim i As Integer i = Grid2.Row IdDAbsenGuru = Grid2.TextMatrix(i, 1) txtIdDAbsen.Text = IdDAbsenGuru IdAbsenGuru = Grid2.TextMatrix(i, 2) txtIdAbsen = IdAbsenGuru Call BCari End Sub Sub BCari() On Error Resume Next Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tDAbsenGuru where idDAbsenGuru=" & IdDAbsenGuru & " and idAbsenGuru=" & IdAbsenGuru & "", CN, adOpenDynamic, adLockOptimistic If Not rsCari.EOF = True Then IdAbsenGuru = rsCari!IdAbsenGuru txtTgl.Text = Format(rsCari!TglAbsen, "dd-mm-yyyy") If rsCari!KdAbsen = "H" Then cboKdAbsen.Text = "HADIR" ElseIf rsCari!KdAbsen = "A" Then cboKdAbsen.Text = "ALPHA" ElseIf rsCari!KdAbsen = "I" Then cboKdAbsen.Text = "IZIN" ElseIf rsCari!KdAbsen = "S" Then cboKdAbsen.Text = "SAKIT" ElseIf rsCari!KdAbsen = "L" Then cboKdAbsen.Text = "LAIN-LAIN"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Else cboKdAbsen.Text = "LAIN-LAIN" End If Set rsCariAbsen = New ADODB.Recordset rsCariAbsen.Open "Select * from tAbsenGuru where IdAbsenGuru=" & IdAbsenGuru & "", CN, adOpenDynamic, adLockOptimistic If Not rsCariAbsen.EOF = True Then thn = rsCariAbsen!thn sem = rsCariAbsen!sem NIP = rsCariAbsen!NIP txtThn.Text = thn cboSem.Text = sem cboNip.Text = NIP rsGuru.Open "Select * from tGuru where NIP=" & NIP & "", CN, adOpenDynamic, adLockOptimistic If Not rsGuru.EOF = True Then LblNama.Caption = rsGuru!NmGuru Else LblNama.Caption = "NO Name" End If Else End If cmdRubah.Enabled = True cmdHapus.Enabled = True cmdRubah.SetFocus Else End If End Sub Private Sub txtTgl_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Set rsCari = New ADODB.Recordset rsCari.Open "Select * from ttempDabsenGuru where IdAbsenGuru=" & IdAbsenGuru & " and tglAbsen='" & Format(txtTgl.Text, "yyyy-mm-dd") & "'", CN, adOpenDynamic, adLockOptimistic 'MsgBox "IdAbsenGuru :" & IdAbsenGuru & " IdDAbsenGuru: " & IdDAbsenGuru & " Tgl : " & txtTgl.Text If tambah = True Then If rsCari.EOF = True Then
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cboKdAbsen.Locked = False cboKdAbsen.SetFocus Else MsgBox "Tanggal sudah ada" txtTgl.Text = "__-__-____" txtTgl.SetFocus End If ElseIf ubah = True Then cboKdAbsen.Locked = False cboKdAbsen.SetFocus End If End If End Sub Private Sub txtThn_Change() If Len(txtThn) < 4 Then Exit Sub Else cboSem.Locked = False cboSem.SetFocus End If End Sub Private Sub cmdBatal_Click() Call HapusTemp mati Bersih segar cmdHapus.Enabled = False cmdRubah.Visible = True cmdUpdate.Visible = False cmdRubah.Enabled = False cmdTambah.Visible = True cmdSimpan.Visible = False cmdCari.Enabled = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Private Sub cmdcari_Click() Cari = True tambah = False ubah = False
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cmdTambah.Enabled = False cmdCari.Enabled = False txtThn.Locked = False txtThn.SetFocus End Sub Private Sub CmdHapus_Click() cmdHapus.Enabled = False cmdRubah.Enabled = False rsCari.Delete Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete from tTempDAbsenGuru where IdDAbsenGuru=" & IdDAbsenGuru & " and IdAbsenGuru=" & IdAbsenGuru & "", CN, adOpenDynamic, adLockOptimistic Bersih mati segar Grid2.TextMatrix(0, 0) = "" Grid2.TextMatrix(0, 1) = "No Id" Grid2.TextMatrix(0, 2) = "ID Absen" Grid2.TextMatrix(0, 3) = "Tanggal" Grid2.TextMatrix(0, 4) = "Kode Absen" Grid2.ColWidth(0) = 0 Grid2.ColWidth(1) = 1000 Grid2.ColWidth(2) = 1200 Grid2.ColWidth(3) = 1200 Grid2.ColWidth(4) = 1200 Adodc1.Refresh Grid2.Refresh Adodc.Refresh grid.Refresh MsgBox "Data sudah di hapus...." cmdHapus.Enabled = False cmdRubah.Enabled = False cmdTambah.Visible = True cmdSimpan.Visible = False cmdCari.Enabled = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Sub segar() Set rsSegar = New ADODB.Recordset rsSegar.Open "Select * from tAbsenGuru order by NIP
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
asc", CN, 1, 2 End Sub Private Sub cmdKeluar_Click() Call HapusTemp Unload Me End Sub Sub HapusTemp() Set rsHapus = Nothing Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete tTempDAbsenGuru", CN, 1, 2 Set rsHapus = Nothing Adodc1.Refresh Grid2.Refresh Grid2.Visible = False End Sub Private Sub CmdRubah_Click() Cari = False ubah = True cmdUpdate.Visible = True cmdRubah.Visible = False cmdHapus.Enabled = False ubah = True Cari = False txtTgl.Enabled = True txtTgl.SetFocus End Sub Private Sub cmdSimpan_Click() Simpan tambah = False segar Bersih mati Adodc.Refresh grid.Refresh MsgBox "Data Sudah di Simpan" cmdSimpan.Visible = False cmdTambah.Visible = True cmdCari.Enabled = True cmdTambah.SetFocus End Sub
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Private Sub cmdtambah_Click() tambah = True Cari = False ubah = False Adodc.Refresh grid.Refresh cmdSimpan.Visible = True cmdSimpan.Enabled = False cmdTambah.Visible = False cmdCari.Enabled = False txtThn.Locked = False txtThn.SetFocus End Sub Private Sub cmdUpdate_Click() Call Rubah mati Bersih segar Adodc.Refresh grid.Refresh Grid2.Visible = False HapusTemp MsgBox "Data sudah diubah" cmdUpdate.Visible = False cmdRubah.Visible = True cmdRubah.Enabled = False cmdSimpan.Visible = False cmdCari.Enabled = True cmdHapus.Enabled = False cmdTambah.Visible = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Private Sub Form_Activate() Bersih mati Grid2.Visible = False HapusTemp grid.TextMatrix(0, 0) = "" grid.TextMatrix(0, 1) = "ID"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
grid.TextMatrix(0, 2) = "Tahun" grid.TextMatrix(0, 3) = "Semester" grid.TextMatrix(0, 4) = "NIP" grid.ColWidth(0) = 0 grid.ColWidth(1) = 1000 grid.ColWidth(2) = 1500 grid.ColWidth(3) = 1200 grid.ColWidth(4) = 1500 grid.ColWidth(5) = 2000 grid.ColWidth(6) = 1500 cmdUpdate.Visible = False cmdRubah.Visible = True cmdRubah.Enabled = False cmdSimpan.Visible = False cmdTambah.Visible = True cmdHapus.Enabled = False cmdTambah.Visible = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Private Sub Form_Load() Koneksi Set rsGuru = New ADODB.Recordset rsGuru.Open "Select * from tGuru order by NIP asc", CN, adOpenDynamic, adLockOptimistic Do Until rsGuru.EOF = True cboNip.AddItem rsGuru.Fields("NIP") rsGuru.MoveNext Loop cboSem.List(0) = "1" cboSem.List(1) = "2" cboSem.List(2) = "3" cboSem.List(3) = "4" cboSem.List(4) = "5" cboSem.List(5) = "6" cboKdAbsen.List(0) = "HADIR" cboKdAbsen.List(1) = "IZIN" cboKdAbsen.List(2) = "SAKIT" cboKdAbsen.List(3) = "ALPHA" cboKdAbsen.List(4) = "LAIN-LAIN" End Sub
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Private Sub Bersih() cboNip.Text = "" cboKdAbsen.Text = "" txtThn.Text = "" cboSem.Text = "" txtTgl.Text = "__-__-____" txtIdAbsen.Text = "" IdTempDAbsenGuru = 0 IdAbsenGuru = 0 IdDAbsenGuru = 0 LblNama.Caption = "" txtIdDAbsen.Text = "" cboKdAbsen.Text = "" End Sub Private Sub mati() cboNip.Locked = True cboKdAbsen.Locked = True txtThn.Locked = True cboSem.Locked = True txtTgl.Enabled = False txtIdAbsen.Locked = True txtIdDAbsen.Locked = True cboKdAbsen.Locked = True End Sub Private Sub hidup() cboNip.Locked = False cboKdAbsen.Locked = False txtThn.Locked = False cboSem.Locked = False txtTgl.Enabled = True txtIdAbsen.Locked = False txtIdDAbsen.Locked = False cboKdAbsen.Locked = False End Sub Sub Simpan() If tambah = True Then Set rsSimpanAbsen = New ADODB.Recordset rsSimpanAbsen.Open "tAbsenGuru", CN, 1, 2 rsSimpanAbsen.AddNew rsSimpanAbsen!IdAbsenGuru = IdAbsenGuru
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
rsSimpanAbsen!thn = txtThn.Text rsSimpanAbsen!sem = cboSem.Text rsSimpanAbsen!NIP = cboNip.Text rsSimpanAbsen.Update Set rsSimpanDAbsen = New ADODB.Recordset rsSimpanDAbsen.Open "tDAbsenGuru", CN, 1, 2 Set rsTempDAbsen = New ADODB.Recordset rsTempDAbsen.Open "Select * from tTempDAbsenGuru order by IdDAbsenGuru asc", CN, 1, 2 If Not rsTempDAbsen.EOF = True Then Do While Not rsTempDAbsen.EOF rsSimpanDAbsen.AddNew rsSimpanDAbsen!IdDAbsenGuru = rsTempDAbsen!IdDAbsenGuru rsSimpanDAbsen!IdAbsenGuru = rsTempDAbsen!IdAbsenGuru rsSimpanDAbsen!TglAbsen = rsTempDAbsen!TglAbsen rsSimpanDAbsen!KdAbsen = rsTempDAbsen!KdAbsen rsSimpanDAbsen.Update rsTempDAbsen.MoveNext If rsTempDAbsen.EOF Then Exit Do End If Loop End If Set rsSimpanAbsen = Nothing Set rsSimpanDAbsen = Nothing Set rsTempDAbsen = Nothing Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete tTempDAbsenGuru", CN, 1, 2 Set rsHapus = Nothing Adodc.Refresh grid.Refresh Grid2.Visible = False MsgBox "Data sudah disimpan" cmdTambah.Visible = True cmdSave.Visible = False cmdCari.Enabled = True cmdTambah.Enabled = True cmdTambah.SetFocus
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
End End Sub Set
If Sub Rubah() rsUbah = New ADODB.Recordset rsUbah.Open "Update tDAbsenGuru set tglAbsen='" & Format(txtTgl.Text, "yyyy-mm-dd") & "', KdAbsen='" & Left(cboKdAbsen.Text, 1) & "' where IdAbsenGuru=" & IdAbsenGuru & " and IdDAbsenGuru=" & IdDAbsenGuru & "", CN, adOpenDynamic, adLockOptimistic End Sub
Data Nilai Option Explicit Dim rsSiswa As Recordset Dim rsNilai As Recordset Dim rsDNilai As Recordset Dim rsGuru As Recordset Dim rsCariNilai As Recordset Dim rsPel As Recordset Dim KdPel As String * 3 Dim rsRec As Recordset Dim IdTempDNilai As Integer Dim IDNilai As Integer Dim IdDNilai As Integer Dim rsSave As Recordset Dim rsSimpanNilai As Recordset Dim rsSimpanDNilai As Recordset Dim rsTempDNilai As Recordset Dim bolTemp As Boolean Dim thn, sem, nis As Integer Sub CekData() Set rsDNilai = New ADODB.Recordset rsDNilai.Open "Select * from tDNilai where IDNilai=" & IDNilai & " and IdDNilai=" & IdDNilai & " and KdPel='" & KdPel & "'", CN, adOpenDynamic, adLockOptimistic If tambah = True Then If rsDNilai.EOF = True Then cmdSave.Visible = True cmdSave.Enabled = True
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
txtNilai.Locked = False txtNilai.SetFocus Else MsgBox "Data Nilai sudah ada ....." cboPel.Text = "" cboPel.SetFocus End If End If End Sub Private Sub cboJnsUjian_Click() Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tNilai where Thn=" & txtThn.Text & " and Sem=" & cboSem.Text & " and NIS=" & cboNis.Text & "", CN, adOpenDynamic, adLockOptimistic If tambah = True Then If rsCari.EOF = True Then Call HitungIdNilai Call HitungIdDNilai cboPel.Locked = False cboPel.SetFocus Else MsgBox "Data sudah Ada.. akan diupdating ..." IDNilai = rsCari!IDNilai txtIdNilai = 2 'IDNilai Set rsDNilai = New ADODB.Recordset rsDNilai.Open "Select * from tDNilai where IDNilai=" & IDNilai & "", CN, 1, 2 If rsDNilai.EOF = True Then Call HitungIdDNilai cboPel.Locked = False cboPel.SetFocus Else Call HitungIdDNilai cboPel.Locked = False cboPel.SetFocus End If End If ElseIf Cari = True Then If Not rsCari.EOF = True Then IDNilai = rsCari!IDNilai Set rsDNilai = New ADODB.Recordset
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
rsDNilai.Open "Select * from tDNilai where IDNilai=" & IDNilai & "", CN, 1, 2 If Not rsDNilai.EOF = True Then Set rsTempDNilai = New ADODB.Recordset rsTempDNilai.Open "tTempDNilai", CN, 1, 2 Do While Not rsDNilai.EOF rsTempDNilai.AddNew rsTempDNilai!IdDNilai = rsDNilai!IdDNilai rsTempDNilai!IDNilai = rsDNilai!IDNilai rsTempDNilai!Nilai = rsDNilai!Nilai rsTempDNilai!KdPel = rsDNilai!KdPel rsTempDNilai.Update rsDNilai.MoveNext If rsDNilai.EOF Then Exit Do End If Loop Grid2.Visible = True Adodc1.Refresh Grid2.Refresh Grid2.TextMatrix(0, 0) = Grid2.TextMatrix(0, 1) = Grid2.TextMatrix(0, 2) = Grid2.TextMatrix(0, 3) = Grid2.TextMatrix(0, 4) = Grid2.ColWidth(0) = 0 Grid2.ColWidth(1) = 1000 Grid2.ColWidth(2) = 1200 Grid2.ColWidth(3) = 1200 Grid2.ColWidth(4) = 1200 End If Else MsgBox "Data tidak cboNis.Text = "" cboNis.SetFocus End If End If
"" "No Id" "ID Nilai" "Tanggal" "Kode Nilai"
ada"
End Sub Private Sub cboPel_Click()
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Set rsPel = New ADODB.Recordset rsPel.Open "Select * from tMatapelajaran Where NmPel='" & cboPel.Text & "'", CN, adOpenDynamic, adLockOptimistic If Not rsPel.EOF = True Then KdPel = rsPel!KdPel txtNilai.Locked = False txtNilai.SetFocus CekData Else cboPel.SetFocus End If End Sub Private Sub cboNIS_Click() On Error Resume Next Set rsSiswa = New ADODB.Recordset rsSiswa.Open "Select * from tSiswa where NIS=" & cboNis.Text & "", CN, adOpenDynamic, adLockOptimistic If rsSiswa.EOF = True Then MsgBox "NIS tidak ada ..." cboNis.Text = "" cboNis.SetFocus Else LblNama.Caption = rsSiswa!NmSiswa cboJnsUjian.Locked = False cboJnsUjian.SetFocus End If End Sub Sub HitungIdNilai() Set rsRec = New ADODB.Recordset rsRec.Open "Select * from tNilai order by IDNilai desc", CN, 1, 2 If Not rsRec.EOF = True Then IDNilai = rsRec!IDNilai + 1 Else IDNilai = 1 End If txtIdNilai.Text = IDNilai End Sub Sub HitungIdDNilai()
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Set rsRec = New ADODB.Recordset rsRec.Open "Select * from tDNilai order by IdDNilai desc", CN, 1, 2 If Not rsRec.EOF = True Then IdDNilai = rsRec!IdDNilai + 1 Else IdDNilai = 1 End If bolTemp = True txtIdDNilai.Text = 1 ' IdDNilai 'IdTempDNilai = IdDNilai End Sub Sub HitungTempIdDNilai() Set rsRec = New ADODB.Recordset rsRec.Open "Select * from tTempDNilai order by IdDNilai desc", CN, 1, 2 If Not rsRec.EOF = True Then IdTempDNilai = rsRec!IdDNilai + 1 Else IdTempDNilai = 1 End If txtIdNilai.Text = IdTempDNilai End Sub Sub CeKdPel() Set rsDNilai = New ADODB.Recordset rsDNilai.Open "Select * from tDNilaisiSiswa where Thn=" & txtThn.Text & " and Sem=" & cboSem.Text & " and NIS=" & cboNis.Text & "", CN, adOpenDynamic, adLockOptimistic End Sub Private Sub cboSem_Click() cboNis.Locked = False cboNis.SetFocus End Sub Private Sub cmdSave_Click() Grid2.Visible = True Grid2.TextMatrix(0, 0) = "" Grid2.TextMatrix(0, 1) = "No Id" Grid2.TextMatrix(0, 2) = "ID Nilai" Grid2.TextMatrix(0, 3) = "Tanggal"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Grid2.TextMatrix(0, Grid2.ColWidth(0) = Grid2.ColWidth(1) = Grid2.ColWidth(2) = Grid2.ColWidth(3) = Grid2.ColWidth(4) =
4) = "Kode Nilai" 0 1000 1200 1200 1200
Adodc1.Refresh Grid2.Refresh X = MsgBox("Data sudah benar ?", vbYesNo) If X = vbYes Then If bolTemp = True Then Call HitungTempIdDNilai End If Set rsSave = New ADODB.Recordset rsSave.Open "tTempDNilai", CN, 1, 2 rsSave.AddNew rsSave!IdDNilai = txtIdNilai.Text ' rsSave!IDNilai = IDNilai rsSave!Nilai = txtNilai.Text rsSave!KdPel = KdPel rsSave.Update
IdDNilai
Adodc1.Refresh Grid2.Refresh Grid2.TextMatrix(0, 0) = Grid2.TextMatrix(0, 1) = Grid2.TextMatrix(0, 2) = Grid2.TextMatrix(0, 3) = Grid2.TextMatrix(0, 4) = Grid2.ColWidth(0) = 0 Grid2.ColWidth(1) = 1000 Grid2.ColWidth(2) = 1200 Grid2.ColWidth(3) = 1200 Grid2.ColWidth(4) = 1200 Set rsSave = Nothing cmdSimpan.Enabled = True cboPel.Text = "" txtNilai = "" cboPel.SetFocus
"" "No Id" "ID Nilai" "Kode Pelajaran" "Nilai"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Else cboPel.SetFocus End If End Sub Private Sub grid_Click() Dim i As Integer i = grid.Row IDNilai = grid.TextMatrix(i, 1) txtIdNilai.Text = IDNilai Call BCari End Sub Sub BCari() 'On Error Resume Next Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tDNilai where IdNilai=" & IDNilai & "", CN, adOpenDynamic, adLockOptimistic If Not rsCari.EOF = True Then IdDNilai = rsCari!IDNilai txtNilai.Text = rsCari!Nilai KdPel = rsCari!KdPel Set rsPel = New ADODB.Recordset rsPel.Open "Select * from tMatapelajaran Where KdPel='" & KdPel & "'", CN, adOpenDynamic, adLockOptimistic If Not rsPel.EOF = True Then cboPel.Text = rsPel!nmPel Else cboPel = "" End If Set rsCariNilai = New ADODB.Recordset rsCariNilai.Open "Select * from tNilai where IDNilai=" & IDNilai & "", CN, adOpenDynamic, adLockOptimistic If Not rsCariNilai.EOF = True Then thn = rsCariNilai!thn sem = rsCariNilai!sem nis = rsCariNilai!nis txtThn.Text = thn cboSem.Text = sem cboNis.Text = nis
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Set rsSiswa = New ADODB.Recordset rsSiswa.Open "Select * from tSiswa where NIS=" & nis & "", CN, adOpenDynamic, adLockOptimistic If Not rsSiswa.EOF = True Then LblNama.Caption = rsSiswa!NmSiswa Else LblNama.Caption = "NO Name" End If If rsCariNilai!KdUjian = "K" Then cboJnsUjian.Text = "KOGNETIF" ElseIf rsCariNilai!KdUjian = "P" Then cboJnsUjian.Text = "PSIKOMOTOR" ElseIf rsCariNilai!KdUjian = "A" Then cboJnsUjian.Text = "AFEKTIF" End If Else End If cmdRubah.Enabled = True cmdHapus.Enabled = True cmdRubah.SetFocus Else End If End Sub Private Sub txtThn_Change() If Len(txtThn) < 4 Then Exit Sub Else cboSem.Locked = False cboSem.SetFocus End If End Sub Private Sub cmdBatal_Click() Call HapusTemp mati Bersih segar cmdHapus.Enabled = False cmdRubah.Visible = True cmdUpdate.Visible = False cmdRubah.Enabled = False
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cmdTambah.Visible = True cmdSimpan.Visible = False cmdCari.Enabled = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Private Sub cmdcari_Click() Cari = True tambah = False ubah = False cmdTambah.Enabled = False cmdCari.Enabled = False txtThn.Locked = False txtThn.SetFocus End Sub Private Sub CmdHapus_Click() cmdHapus.Enabled = False cmdRubah.Enabled = False rsCari.Delete Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete from tTempDNilai where IdDNilai=" & IdDNilai & " and IDNilai=" & IDNilai & "", CN, adOpenDynamic, adLockOptimistic Bersih mati segar Grid2.TextMatrix(0, 0) = "" Grid2.TextMatrix(0, 1) = "No " Grid2.TextMatrix(0, 2) = "ID Nilai" Grid2.TextMatrix(0, 3) = "Kd Pelajaran" Grid2.TextMatrix(0, 4) = "Nilai" Grid2.ColWidth(0) = 0 Grid2.ColWidth(1) = 1000 Grid2.ColWidth(2) = 1200 Grid2.ColWidth(3) = 1200 Grid2.ColWidth(4) = 1200 Adodc1.Refresh Grid2.Refresh Adodc.Refresh
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
grid.Refresh MsgBox "Data sudah di hapus...." cmdHapus.Enabled = False cmdRubah.Enabled = False cmdTambah.Visible = True cmdSimpan.Visible = False cmdCari.Enabled = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Sub segar() Set rsSegar = New ADODB.Recordset rsSegar.Open "Select * from tNilai order by NIS asc", CN, 1, 2 End Sub Private Sub cmdKeluar_Click() Call HapusTemp Unload Me End Sub Sub HapusTemp() Set rsHapus = Nothing Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete tTempDNilai", CN, 1, 2 Set rsHapus = Nothing Adodc1.Refresh Grid2.Refresh Grid2.Visible = False End Sub Private Sub CmdRubah_Click() Cari = False ubah = True cmdUpdate.Visible = True cmdRubah.Visible = False cmdHapus.Enabled = False ubah = True Cari = False txtNilai.Enabled = True txtNilai.SetFocus End Sub Private Sub cmdSimpan_Click()
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Simpan tambah = False segar Bersih mati Adodc.Refresh grid.Refresh MsgBox "Data Sudah di Simpan" cmdSimpan.Visible = False cmdTambah.Visible = True cmdCari.Enabled = True cmdTambah.SetFocus End Sub Private Sub cmdtambah_Click() tambah = True Cari = False ubah = False Adodc.Refresh grid.Refresh cmdSimpan.Visible = True cmdSimpan.Enabled = False cmdTambah.Visible = False cmdCari.Enabled = False txtThn.Locked = False txtThn.SetFocus End Sub Private Sub cmdUpdate_Click() Call Rubah mati Bersih segar Adodc.Refresh grid.Refresh Grid2.Visible = False HapusTemp MsgBox "Data sudah diubah" cmdUpdate.Visible = False cmdRubah.Visible = True cmdRubah.Enabled = False cmdSimpan.Visible = False cmdCari.Enabled = True
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cmdHapus.Enabled = False cmdTambah.Visible = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Private Sub Form_Activate() Bersih mati Grid2.Visible = False HapusTemp grid.Visible = True grid.TextMatrix(0, 0) = "" grid.TextMatrix(0, 1) = "ID" grid.TextMatrix(0, 2) = "Tahun" grid.TextMatrix(0, 3) = "Semester" grid.TextMatrix(0, 4) = "NIS" grid.TextMatrix(0, 5) = "KdUjian" grid.ColWidth(0) = 0 grid.ColWidth(1) = 1000 grid.ColWidth(2) = 1000 grid.ColWidth(3) = 1500 grid.ColWidth(4) = 1500 grid.ColWidth(5) = 1500 'grid.ColWidth(6) = 1500 cmdUpdate.Visible = False cmdRubah.Visible = True cmdRubah.Enabled = False cmdSimpan.Visible = False cmdTambah.Visible = True cmdHapus.Enabled = False cmdTambah.Visible = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Private Sub Form_Load() Koneksi Set rsSiswa = New ADODB.Recordset rsSiswa.Open "Select * from tSiswa order by NIS asc", CN, adOpenDynamic, adLockOptimistic Do Until rsSiswa.EOF = True cboNis.AddItem rsSiswa.Fields("NIS")
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
rsSiswa.MoveNext Loop Set rsPel = New ADODB.Recordset rsPel.Open "Select * from tMatapelajaran order by KdPel asc", CN, adOpenDynamic, adLockOptimistic Do Until rsPel.EOF = True cboPel.AddItem rsPel.Fields("NmPel") rsPel.MoveNext Loop cboJnsUjian.List(0) = "KOGNETIF" cboJnsUjian.List(1) = "PSIKOMOTOR" cboJnsUjian.List(2) = "AFEKTIF"
cboSem.List(0) cboSem.List(1) cboSem.List(2) cboSem.List(3) cboSem.List(4) cboSem.List(5) End Sub
= = = = = =
"1" "2" "3" "4" "5" "6"
Private Sub Bersih() cboNis.Text = "" cboPel.Text = "" txtThn.Text = "" cboSem.Text = "" cboJnsUjian.Text = "" txtIdNilai.Text = "" txtIdDNilai.Text = "" LblNama.Caption = "" cboPel.Text = "" txtNilai.Text = "" IdTempDNilai = 0 IDNilai = 0 IdDNilai = 0 cboPel.Text = "" End Sub Private Sub mati() cboNis.Locked = True cboPel.Locked = True
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
txtThn.Locked = True cboSem.Locked = True cboJnsUjian.Text = "" txtIdNilai.Locked = True txtIdDNilai.Locked = True txtNilai.Locked = True End Sub Private Sub hidup() cboNis.Locked = False cboPel.Locked = False txtThn.Locked = False cboSem.Locked = False txtIdNilai.Locked = False txtIdDNilai.Locked = False cboJnsUjian.Locked = False txtNilai.Locked = False End Sub Sub Simpan() If tambah = True Then Set rsSimpanNilai = New ADODB.Recordset rsSimpanNilai.Open "tNilai", CN, 1, 2 rsSimpanNilai.AddNew rsSimpanNilai!IDNilai = IDNilai rsSimpanNilai!thn = txtThn.Text rsSimpanNilai!sem = cboSem.Text rsSimpanNilai!nis = cboNis.Text rsSimpanNilai!KdUjian = Left(cboJnsUjian.Text, 1) rsSimpanNilai.Update Set rsSimpanDNilai = New ADODB.Recordset rsSimpanDNilai.Open "tDNilai", CN, 1, 2 Set rsTempDNilai = New ADODB.Recordset rsTempDNilai.Open "Select * from tTempDNilai order by IdDNilai asc", CN, 1, 2 If Not rsTempDNilai.EOF = True Then Do While Not rsTempDNilai.EOF rsSimpanDNilai.AddNew rsSimpanDNilai!IdDNilai = rsTempDNilai!IdDNilai
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
rsSimpanDNilai!IDNilai = rsTempDNilai!IDNilai rsSimpanDNilai!Nilai = rsTempDNilai!Nilai rsSimpanDNilai!KdPel = rsTempDNilai!KdPel rsSimpanDNilai.Update rsTempDNilai.MoveNext If rsTempDNilai.EOF Then Exit Do End If Loop End If Set rsSimpanNilai = Nothing Set rsSimpanDNilai = Nothing Set rsTempDNilai = Nothing Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete tTempDNilai", CN, 1, 2 Set rsHapus = Nothing Adodc.Refresh grid.Refresh Grid2.Visible = False MsgBox "Data sudah disimpan" cmdTambah.Visible = True cmdSave.Visible = False cmdCari.Enabled = True cmdTambah.Enabled = True cmdTambah.SetFocus End End Sub Set
If Sub Rubah() rsUbah = New ADODB.Recordset rsUbah.Open "Update tDNilai set Nilai=" & txtNilai.Text & " where KdPel='" & Left(cboPel.Text, 1) & "' and IDNilai=" & IDNilai & " and IdDNilai=" & IdDNilai & "", CN, adOpenDynamic, adLockOptimistic End Sub
Data Siswa
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Option Explicit Dim rsNis As Recordset Dim rsRec As Recordset Dim No As Integer Private Sub Bersih() txtTglLahir.Text = "__-__-____" txtNama.Text = "" txtAlamat.Text = "" txtTmpLahir.Text = "" cboJK.Text = "" txtNis.Text = "" cboAgama.Text = "" txtAsalSekolah = "" txtThnSTTB = "" txtNoSTTB = "" txtNmAyah = "" txtNmIbu = "" txtAlmAI = "" txtNoTelpAI = ""
cboKerjaAyah = "" cboKerjaIbu = "" End Sub Private Sub mati() txtTglLahir.Enabled = False txtNama.Locked = True txtAlamat.Locked = True txtTmpLahir.Locked = True cboJK.Locked = True txtNis.Locked = True cboAgama.Locked = True txtAsalSekolah.Locked = True txtThnSTTB.Locked = True txtNoSTTB.Locked = True txtNmAyah.Locked = True txtNmIbu.Locked = True txtAlmAI.Locked = True txtNoTelpAI.Locked = True cboKerjaAyah.Locked = True cboKerjaIbu.Locked = True End Sub
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Private Sub hidup() txtTglLahir.Enabled = True txtNama.Locked = False txtAlamat.Locked = False txtTmpLahir.Locked = False cboJK.Locked = False txtNis.Locked = False cboAgama.Locked = False txtAsalSekolah.Locked = False txtThnSTTB.Locked = False txtNoSTTB.Locked = False txtNmAyah.Locked = False txtNmIbu.Locked = False txtAlmAI.Locked = False txtNoTelpAI.Locked = False cboKerjaAyah.Locked = False cboKerjaIbu.Locked = False End Sub Sub Simpan() On Error GoTo Salah Set rsSimpan = New ADODB.Recordset rsSimpan.Open "tSiswa", CN, adOpenDynamic, adLockOptimistic rsSimpan.AddNew rsSimpan!nis = txtNis.Text rsSimpan!NmSiswa = txtNama.Text rsSimpan!AlmSiswa = txtAlamat.Text rsSimpan!jkSiswa = Left(cboJK, 1) rsSimpan!TmpLahir = txtTmpLahir.Text rsSimpan!Tgllahir = Format(txtTglLahir.Text, "dd-mm-yyyy") rsSimpan!AgamaSiswa = Left(cboAgama.Text, 1) rsSimpan!AsalSekolah = txtAsalSekolah.Text rsSimpan!ThnSTTB = txtThnSTTB.Text rsSimpan!NoSTTB = txtNoSTTB.Text rsSimpan!NmAyah = txtNmAyah.Text rsSimpan!NmIbu = txtNmIbu.Text rsSimpan!AlmAI = txtAlmAI.Text rsSimpan!NoTelpAI = txtNoTelpAI.Text rsSimpan!KerjaAyah = Left(cboKerjaAyah.Text, 1) rsSimpan!KerjaIbu = Left(cboKerjaIbu.Text, 1) rsSimpan.Update Salah: If Err.Number <> 0 Then
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
MsgBox "Data belum lengkap/salah" End If End Sub
Sub Rubah() On Error Resume Next Set rsUbah = New ADODB.Recordset rsUbah.Open " Update tSiswa " & _ " set nmSiswa ='" & txtNama.Text & "' & _ ", almSiswa ='" & txtAlamat.Text & "' " & _ ", JKSISWA ='" & Left(cboJK, 1) & "' " & _ ", AgamaSiswa ='" & Left(cboAgama, 1) & "' " & _ ", tglLahir ='" & Format(txtTglLahir.Text, "yyyy,mm,dd") & "' " & _ ", tmplahir ='" & txtTmpLahir.Text & "'" & _ ", AsalSekolah ='" & txtAsalSekolah.Text & "' " & _ ", NoSTTB ='" & txtNoSTTB.Text & "' " & ", ThnSTTB ='" & txtThnSTTB.Text & "' "& _", NmAyah ='" & txtNmAyah.Text & "' " &_", Nmibu ='" & txtNmIbu.Text & "' " & _", AlmAI ='" & txtAlmAI.Text & "' " & _", NoTelpAI ='" & txtNoTelpAI.Text & "' " & _", KerjaAyah ='" & Left(cboKerjaAyah.Text, 1) & "' " & _", KerjaIbu ='" & Left(cboKerjaIbu.Text, 1) & "' " & _" where NIS=" & txtNis.Text & "", CN, adOpenDynamic, adLockOptimistic End Sub Private Sub cboAgama_Click() txtAlamat.Locked = False txtAlamat.SetFocus End Sub Private Sub cboJK_Click() cboAgama.Locked = False cboAgama.SetFocus End Sub Private Sub cboKerjaAyah_Click() cboKerjaIbu.Locked = False cboKerjaIbu.SetFocus End Sub Private Sub cboKerjaIbu_KeyPress(KeyAscii As Integer)
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
If KeyAscii = 13 Then If tambah = True Then cmdSimpan.Enabled = True cmdSimpan.SetFocus End If End If End Sub Private Sub cmdBatal_Click() Bersih mati tambah = False Cari = False ubah = False cmdTambah.Visible = True cmdTambah.Enabled = True cmdCari.Enabled = True cmdUpdate.Visible = False cmdRubah.Visible = True cmdRubah.Enabled = False cmdHapus.Enabled = False cmdTambah.SetFocus End Sub Private Sub cmdcari_Click() Cari = True tambah = False cmdTambah.Enabled = False cmdCari.Enabled = False txtNis.Locked = False txtNis.SetFocus End Sub Private Sub CmdHapus_Click() rsCari.Delete Set rsCari = Nothing MsgBox "Data sudah Dihapus ..." Bersih mati Adodc2.Refresh grid.Refresh cmdTambah.Enabled = True cmdCari.Enabled = True cmdRubah.Enabled = False
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cmdHapus.Enabled = False cmdTambah.SetFocus End Sub Private Sub cmdKeluar_Click() Unload Me End Sub Private Sub CmdRubah_Click() cmdRubah.Visible = False cmdUpdate.Visible = True cmdHapus.Enabled = False cmdUpdate.Enabled = True ubah = True hidup txtNama.Locked = False txtNama.SetFocus End Sub Private Sub cmdSimpan_Click() cmdSimpan.Visible = False cmdTambah.Visible = True cmdTambah.Enabled = True Simpan tambah = False Bersih mati Adodc2.Refresh grid.Refresh MsgBox "Data Sudah di Simpan" cmdTambah.Enabled = True cmdCari.Enabled = True cmdTambah.SetFocus End Sub Private Sub cmdtambah_Click() tambah = True Cari = False cmdTambah.Visible = False cmdSimpan.Visible = True Set rsRec = New ADODB.Recordset rsRec.Open "Select * from tSiswa order by NIS desc", CN, 1, 2
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
If Not rsRec.EOF = True Then No = rsRec!nis + 1 Else No = 1000 End If cmdTambah.Enabled = False cmdCari.Enabled = False txtNis = No txtNama.Locked = False txtNama.SetFocus End Sub Private Sub cmdUpdate_Click() cmdUpdate.Enabled = False If ubah = True Then Rubah ubah = False Bersih mati Adodc2.Refresh grid.Refresh MsgBox "Data Sudah di Update" cmdTambah.Enabled = True cmdCari.Enabled = True cmdTambah.SetFocus End If End Sub Private Sub Form_Activate() Bersih mati cmdSimpan.Visible = False cmdTambah.Visible = True cmdUpdate.Visible = False cmdRubah.Visible = True grid.TextMatrix(0, 0) = "" grid.TextMatrix(0, 1) = "N I S" grid.TextMatrix(0, 2) = "NAMA SISWA" grid.ColWidth(0) grid.ColWidth(1) grid.ColWidth(2) grid.ColWidth(3)
= = = =
0 1200 2500 1200
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
grid.ColWidth(4) = 2000 grid.ColWidth(5) = 2500 cboJK.List(0) = "LAKI-LAKI" cboJK.List(1) = "PEREMPUAN" cboAgama.List(0) cboAgama.List(1) cboAgama.List(2) cboAgama.List(3) cboAgama.List(4) cboAgama.List(5)
= = = = = =
"ISLAM" "PROTESTAN" "KATHOLIK" "BUDHA" "HINDU" "CONGUCU"
cboKerjaAyah.List(0) cboKerjaAyah.List(1) cboKerjaAyah.List(2) cboKerjaAyah.List(3) cboKerjaAyah.List(4) cboKerjaAyah.List(5)
= = = = = =
"1.PNS" "2.TNI" "3.POLRI" "4.WIRASWASTA" "5.PETANI" "6.LAIN-LAIN"
cboKerjaIbu.List(0) = "1.PNS" cboKerjaIbu.List(1) = "2.TNI" cboKerjaIbu.List(2) = "3.POLRI" cboKerjaIbu.List(3) = "4.WIRASWASTA" cboKerjaIbu.List(4) = "5.PETANI" cboKerjaIbu.List(5) = "6.LAIN-LAIN" cmdTambah.Visible = True cmdSimpan.Visible = False cmdTambah.SetFocus cmdRubah.Enabled = False cmdHapus.Enabled = False cmdUpdate.Enabled = False End Sub Private Sub Form_Load() Koneksi End Sub Private Sub TxtAlamat_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If txtAlamat.Text = "" Or txtAlamat.Text = " " Then txtAlamat.Text = "-" txtTglLahir.Enabled = True
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
txtTglLahir.SetFocus Else txtAlamat.Text = UCase(txtAlamat.Text) txtTglLahir.Enabled = True txtTglLahir.SetFocus End If End If End Sub Private Sub txtAlmAI_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtNoTelpAI.Locked = False txtNoTelpAI.SetFocus End If End Sub Private Sub txtAsalSekolah_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtThnSTTB.Locked = False txtThnSTTB.SetFocus End If End Sub Private Sub txtNmAyah_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtNmIbu.Locked = False txtNmIbu.SetFocus End If End Sub Private Sub txtNmIbu_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtAlmAI.Locked = False txtAlmAI.SetFocus End If End Sub Private Sub txtNoSTTB_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtNmAyah.Locked = False txtNmAyah.SetFocus End If
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
End Sub Private Sub txtNoTelpAI_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then cboKerjaAyah.Locked = False cboKerjaAyah.SetFocus End If If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbKeyBack Or KeyAscii = Asc(".")) Then Beep KeyAscii = 0 End If End Sub Private Sub txtTglLahir_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtTmpLahir.Locked = False txtTmpLahir.SetFocus End If End Sub Private Sub txtThnSTTB_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtNoSTTB.Locked = False txtNoSTTB.SetFocus End If If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbKeyBack Or KeyAscii = Asc(".")) Then Beep KeyAscii = 0 End If End Sub Private Sub txtTmpLahir_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If txtTmpLahir.Text = "" Or txtTmpLahir.Text = " " Then txtTmpLahir.Text = "-" End If txtTmpLahir.Text = UCase(txtTmpLahir.Text) txtAsalSekolah.Locked = False txtAsalSekolah.SetFocus
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
End If End Sub Private Sub txtNama_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If txtNama.Text = "" Or txtNama.Text = " " Then txtNama.Text = "-" cboJK.Locked = False cboJK.SetFocus Else txtNama.Text = UCase(txtNama.Text) cboJK.Locked = False cboJK.SetFocus End If End If End Sub Private Sub txtNis_Change() On Error Resume Next If Len(txtNis.Text) < 4 Then Exit Sub Else Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tSiswa where nis='" & txtNis.Text & "'", CN, adOpenDynamic, adLockOptimistic If Cari = True Then If rsCari.EOF = True Then MsgBox "NIS tidak ada ..." txtNis.Text = "" txtNis.SetFocus Else txtNama.Text = rsCari.Fields("NmSiswa") txtAlamat.Text = rsCari.Fields("almSiswa") txtTmpLahir.Text = rsCari.Fields("TmpLahir") txtTglLahir.Text = Format(rsCari.Fields("TglLahir"), "dd-mm-yyyy") If Left(rsCari.Fields("JKSiswa"), 1) = "L" Then cboJK.Text = "Laki-Laki" Else cboJK.Text = "Perempuan"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
End If If Left(rsCari.Fields("AgamaSiswa"), 1) = "I" Then cboAgama.Text = "ISLAM" ElseIf Left(rsCari.Fields("AgamaSiswa"), 1) = "P" Then cboAgama.Text = "PROTESTAN" ElseIf Left(rsCari.Fields("AgamaSiswa"), 1) = "K" Then cboAgama.Text = "KATHOLIK" ElseIf Left(rsCari.Fields("AgamaSiswa"), 1) = "B" Then cboAgama.Text = "BUDHA" ElseIf Left(rsCari.Fields("AgamaSiswa"), 1) = "H" Then cboAgama.Text = "HINDU" ElseIf Left(rsCari.Fields("AgamaSiswa"), 1) = "C" Then cboAgama.Text = "CONGUCU" Else cboAgama.Text = "LAIN-LAIN" End If txtAsalSekolah.Text = rsCari.Fields("AsalSekolah") txtThnSTTB = rsCari.Fields("ThnSTTB") txtNoSTTB = rsCari.Fields("NoSTTB") txtNmAyah = rsCari.Fields("NmAyah") txtNmIbu = rsCari.Fields("NmIbu") txtAlmAI = rsCari.Fields("AlmAI") txtNoTelpAI = rsCari.Fields("NoTelpAI") If Left(rsCari.Fields("KerjaAyah"), 1) = "1" Then cboKerjaAyah = "PNS" ElseIf Left(rsCari.Fields("KerjaAyah"), 1) = "2" Then cboKerjaAyah = "TNI" ElseIf Left(rsCari.Fields("KerjaAyah"), 1) = "3" Then cboKerjaAyah = "POLRI" ElseIf Left(rsCari.Fields("KerjaAyah"), 1) = "4" Then cboKerjaAyah = "WIRASWASTA"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
ElseIf Left(rsCari.Fields("KerjaAyah"), 1) = "5" Then cboKerjaAyah = "PETANI" Else cboKerjaAyah.Text = "LAIN-LAIN" End If If Left(rsCari.Fields("KerjaIbu"), 1) = "1" Then cboKerjaIbu = "PNS" ElseIf Left(rsCari.Fields("KerjaIbu"), 1) = "2" Then cboKerjaIbu = "TNI" ElseIf Left(rsCari.Fields("KerjaIbu"), 1) = "3" Then cboKerjaIbu = "POLRI" ElseIf Left(rsCari.Fields("KerjaIbu"), 1) = "4" Then cboKerjaIbu = "WIRASWASTA" ElseIf Left(rsCari.Fields("KerjaIbu"), 1) = "5" Then cboKerjaIbu = "PETANI" Else cboKerjaIbu.Text = "LAIN-LAIN" End If cmdUpdate.Visible = False cmdRubah.Visible = True cmdRubah.Enabled = True cmdHapus.Enabled = True cmdRubah.SetFocus End If ElseIf tambah = True Then If rsCari.EOF = True Then txtNama.Locked = False txtNama.SetFocus Else MsgBox "NIS sudah ada ..." txtNis.Text = "" txtNis.SetFocus End If End If End If End Sub
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Data Guru Option Explicit Dim rsNIP As Recordset Dim rsRec As Recordset Dim No As Integer Private Sub Bersih() txtTglLahir.Text = "__-__-____" txtNama.Text = "" txtAlamat.Text = "" txtTmpLahir.Text = "" cboJK.Text = "" txtNIP.Text = "" cboAgama.Text = "" txtNoTelp = "" cboST = "" End Sub Private Sub mati() txtTglLahir.Enabled = False txtNama.Locked = True txtAlamat.Locked = True txtTmpLahir.Locked = True cboJK.Locked = True txtNIP.Locked = True cboAgama.Locked = True txtNoTelp.Locked = True cboST.Locked = True End Sub Private Sub hidup() txtTglLahir.Enabled = True txtNama.Locked = False txtAlamat.Locked = False txtTmpLahir.Locked = False cboJK.Locked = False txtNIP.Locked = False cboAgama.Locked = False txtNoTelp.Locked = False cboST.Locked = False
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
End Sub Sub Simpan() On Error GoTo Salah Set rsSimpan = New ADODB.Recordset rsSimpan.Open "tGuru", CN, adOpenDynamic adLockOptimistic rsSimpan.AddNew rsSimpan!NIP = txtNIP.Text rsSimpan!NmGuru = txtNama.Text rsSimpan!STGuru = Left(cboST, 1) rsSimpan!AlmGuru = txtAlamat.Text rsSimpan!JKGuru = Left(cboJK, 1) rsSimpan!TmpLahir = txtTmpLahir.Text rsSimpan!Tgllahir = Format(txtTglLahir.Text, "dd-mmyyyy") rsSimpan!AgamaGuru = Left(cboAgama.Text, 1) rsSimpan!NoTelp = txtNoTelp.Text rsSimpan.Update Salah: If Err.Number <> 0 Then MsgBox "Data belum lengkap/salah" End If End Sub Sub Rubah() On Error Resume Next Set rsUbah = New ADODB.Recordset rsUbah.Open " Update tGuru " & _ " set nmGuru ='" & txtNama.Text & "' " & _",STGuru='" & Left(cboST, 1) & "' " &_", AlmGuru ='" & txtAlamat.Text & "' " &_", JKGuru ='" & Left(cboJK, 1) & "' " &_", AgamaGuru ='" & Left(cboAgama, 1) &"' " & _", tglLahir ='" & Format(txtTglLahir.Text, "yyyy,mm,dd") & "' " & _", tmplahir ='" & txtTmpLahir.Text & "' " & _", NoTelp ='" & txtNoTelp.Text & "' " & _" where NIP=" & txtNIP.Text & "", CN, adOpenDynamic, adLockOptimistic End Sub Private Sub cboAgama_Click() txtTglLahir.Enabled = True txtTglLahir.SetFocus End Sub
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Private Sub cboJK_Click() cboAgama.Locked = False cboAgama.SetFocus End Sub Private Sub cboST_Click() txtAlamat.Locked = False txtAlamat.SetFocus End Sub Private Sub cmdBatal_Click() Bersih mati tambah = False Cari = False ubah = False cmdTambah.Visible = True cmdTambah.Enabled = True cmdCari.Enabled = True cmdUpdate.Visible = False cmdRubah.Visible = True cmdRubah.Enabled = False cmdHapus.Enabled = False cmdTambah.SetFocus End Sub Private Sub cmdcari_Click() Cari = True tambah = False cmdTambah.Enabled = False cmdCari.Enabled = False txtNIP.Locked = False txtNIP.SetFocus End Sub Private Sub CmdHapus_Click() rsCari.Delete Set rsCari = Nothing MsgBox "Data sudah Dihapus ..." Bersih mati Adodc2.Refresh grid.Refresh cmdTambah.Enabled = True
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cmdCari.Enabled = True cmdRubah.Enabled = False cmdHapus.Enabled = False cmdTambah.SetFocus End Sub Private Sub cmdKeluar_Click() Unload Me End Sub Private Sub CmdRubah_Click() cmdRubah.Visible = False cmdUpdate.Visible = True cmdHapus.Enabled = False cmdUpdate.Enabled = True ubah = True hidup txtNama.Locked = False txtNama.SetFocus End Sub Private Sub cmdSimpan_Click() cmdSimpan.Visible = False cmdTambah.Visible = True cmdTambah.Enabled = True Simpan tambah = False Bersih mati Adodc2.Refresh grid.Refresh MsgBox "Data Sudah di Simpan" cmdTambah.Enabled = True cmdCari.Enabled = True cmdTambah.SetFocus End Sub Private Sub cmdtambah_Click() tambah = True Cari = False cmdTambah.Visible = False cmdSimpan.Visible = True cmdTambah.Enabled = False
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cmdCari.Enabled = False txtNIP.Locked = False txtNIP.SetFocus End Sub Private Sub cmdUpdate_Click() cmdUpdate.Enabled = False If ubah = True Then Rubah ubah = False Bersih mati Adodc2.Refresh grid.Refresh MsgBox "Data Sudah di Update" cmdTambah.Enabled = True cmdCari.Enabled = True cmdTambah.SetFocus End If End Sub Private Sub Form_Activate() Bersih mati cmdSimpan.Visible = False cmdTambah.Visible = True cmdUpdate.Visible = False cmdRubah.Visible = True grid.TextMatrix(0, 0) = "" grid.TextMatrix(0, 1) = "N I P" grid.TextMatrix(0, 2) = "NAMA Guru" grid.ColWidth(0) grid.ColWidth(1) grid.ColWidth(2) grid.ColWidth(3) grid.ColWidth(4) grid.ColWidth(5) cboJK.List(0) cboJK.List(1) cboST.List(0) cboST.List(1)
= = = =
= = = = = =
0 1200 2500 1200 2000 2500
"LAKI-LAKI" "PEREMPUAN" "KAWIN" "BELUM"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cboAgama.List(0) cboAgama.List(1) cboAgama.List(2) cboAgama.List(3) cboAgama.List(4) cboAgama.List(5)
= = = = = =
"ISLAM" "PROTESTAN" "KATHOLIK" "BUDHA" "HINDU" "CONGUCU"
cmdTambah.SetFocus cmdRubah.Enabled = False cmdHapus.Enabled = False cmdUpdate.Enabled = False End Sub Private Sub Form_Load() Koneksi End Sub Private Sub TxtAlamat_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If txtAlamat.Text = "" Or txtAlamat.Text = " " Then txtAlamat.Text = "-" txtNoTelp.Locked = False txtNoTelp.SetFocus Else txtAlamat.Text = UCase(txtAlamat.Text) txtNoTelp.Locked = False txtNoTelp.SetFocus End If End If End Sub Private Sub txtNoTelp_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then cboJK.Locked = False cboJK.SetFocus End If If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbKeyBack Or KeyAscii = Asc(".")) Then Beep KeyAscii = 0 End If
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
End Sub Private Sub txtTglLahir_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtTmpLahir.Locked = False txtTmpLahir.SetFocus End If End Sub Private Sub txtTmpLahir_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If txtTmpLahir.Text = "" Or txtTmpLahir.Text = " " Then txtTmpLahir.Text = "-" End If txtTmpLahir.Text = UCase(txtTmpLahir.Text) If tambah = True Then cmdSimpan.Visible = True cmdSimpan.SetFocus End If End If End Sub Private Sub txtNama_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If txtNama.Text = "" Or txtNama.Text = " " Then txtNama.Text = "No Name" cboST.Locked = False cboST.SetFocus Else txtNama.Text = UCase(txtNama.Text) cboST.Locked = False cboST.SetFocus End If End If End Sub Private Sub txtNIP_Change() On Error Resume Next If Len(txtNIP.Text) < 9 Then Exit Sub Else Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tGuru where NIP='" &
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
txtNIP.Text & "'", CN, adOpenDynamic, adLockOptimistic If Cari = True Then If rsCari.EOF = True Then MsgBox "NIP tidak ada ..." txtNIP.Text = "" txtNIP.SetFocus Else txtNama.Text = rsCari.Fields("nmGuru") txtAlamat.Text = rsCari.Fields("AlmGuru") txtTmpLahir.Text = rsCari.Fields("TmpLahir") txtTglLahir.Text = Format(rsCari.Fields("TglLahir"), "dd-mm-yyyy") If Left(rsCari.Fields("JKGuru"), 1) = "L" Then cboJK.Text = "Laki-Laki" Else cboJK.Text = "Perempuan" End If If Left(rsCari.Fields("STGuru"), 1) = "K" Then cboST.Text = "KAWIN" Else cboST.Text = "BELUM" End If If Left(rsCari.Fields("AgamaGuru"), 1) = "I" Then cboAgama.Text = "ISLAM" ElseIf Left(rsCari.Fields("AgamaGuru"), 1) = "P" Then cboAgama.Text = "PROTESTAN" ElseIf Left(rsCari.Fields("AgamaGuru"), 1) = "K" Then cboAgama.Text = "KATHOLIK" ElseIf Left(rsCari.Fields("AgamaGuru"), 1) = "B" Then cboAgama.Text = "BUDHA" ElseIf Left(rsCari.Fields("AgamaGuru"), 1) = "H" Then cboAgama.Text = "HINDU" ElseIf Left(rsCari.Fields("AgamaGuru"), 1) = "C" Then cboAgama.Text = "CONGUCU"
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Else cboAgama.Text = "LAIN-LAIN" End If txtNoTelp = rsCari.Fields("NoTelp") cmdUpdate.Visible = False cmdRubah.Visible = True cmdRubah.Enabled = True cmdHapus.Enabled = True cmdRubah.SetFocus End If ElseIf tambah = True Then If rsCari.EOF = True Then txtNama.Locked = False txtNama.SetFocus Else MsgBox "NIP sudah ada ..." txtNIP.Text = "" txtNIP.SetFocus End If End If End If End Sub
Data Mata Pelajaran Option Explicit Dim rsPel As Recordset Private Sub cmdBatal_Click() Cari = False tambah = False Bersih mati cmdTambah.Enabled = True cmdCari.Enabled = True cmdTambah.SetFocus End Sub Private Sub cmdcari_Click() Cari = True cmdTambah.Enabled = False cmdCari.Enabled = False txtKode.Locked = False
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
txtKode.SetFocus End Sub Private Sub CmdHapus_Click() cmdHapus.Enabled = False cmdRubah.Enabled = False Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete tMataPelajaran where kdPel='" & txtKode.Text & "'", CN, adOpenDynamic, adLockOptimistic Bersih mati Adodc1.Refresh grid.Refresh MsgBox "data sudah di di Hapus" cmdTambah.Enabled = True cmdCari.Enabled = True cmdTambah.SetFocus End Sub Private Sub cmdKeluar_Click() Unload Me End Sub Private Sub CmdRubah_Click() ubah = True cmdRubah.Enabled = False cmdHapus.Enabled = False txtNama.SelLength = Len(txtNama.Text) txtNama.Enabled = True txtNama.SetFocus End Sub Private Sub cmdtambah_Click() tambah = True cmdTambah.Enabled = False cmdCari.Enabled = False txtKode.Locked = False txtKode.SetFocus End Sub Private Sub Form_Activate() cmdRubah.Enabled = False cmdHapus.Enabled = False grid.TextMatrix(0, 0) = "" grid.TextMatrix(0, 1) = "Kode" grid.TextMatrix(0, 2) = "Nama Pelajaran" grid.TextMatrix(0, 3) = "Ket" grid.ColWidth(0) = 0
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
grid.ColWidth(1) = 900 grid.ColWidth(2) = 3500 grid.ColWidth(3) = 3000 mati Bersih cmdTambah.SetFocus End Sub Sub Bersih() txtKode.Text = "" txtNama.Text = "" txtKet.Text = "" End Sub Sub mati() txtKode.Enabled = True txtNama.Enabled = True txtKet.Enabled = True End Sub Private Sub Form_Load() Koneksi End Sub Private Sub txtKet_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtKet.Text = UCase(txtKet.Text) If tambah = True Then Set rsSimpan = New ADODB.Recordset rsSimpan.Open "Insert into tMataPelajaran " & " (kdPel,NmPel,Ket) " & " values ('" & txtKode.Text & "','" & txtNama.Text & "','" & txtKet.Text & "')", CN, adOpenDynamic, adLockOptimistic Bersih mati Adodc1.Refresh grid.Refresh tambah = False MsgBox "data sudah di Simpan" cmdTambah.Enabled = True cmdCari.Enabled = True cmdTambah.SetFocus ElseIf ubah = True Then Set rsUbah = New ADODB.Recordset rsUbah.Open "Update tMataPelajaran set NmPel='" & txtNama.Text & "',Ket='" & txtKet.Text & "' where kdPel='" & txtKode.Text & "'", CN, adOpenDynamic, adLockOptimistic Bersih mati Adodc1.Refresh grid.Refresh ubah = False
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
MsgBox "data sudah di di Ubah" cmdTambah.Enabled = True cmdCari.Enabled = True cmdTambah.SetFocus End If End If End Sub Private Sub txtKode_Change() If Len(Trim(txtKode.Text)) < 3 Then Exit Sub Else If tambah = True Then Set rsPel = New ADODB.Recordset rsPel.Open "Select * from tMataPelajaran where kdPel='" & txtKode.Text & "'", CN, adOpenDynamic, adLockOptimistic If rsPel.EOF = True Then txtNama.Enabled = True txtNama.SetFocus Else MsgBox "Kode sudah ada ...." txtKode.Text = "" txtKode.SetFocus End If ElseIf Cari = True Then Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tMataPelajaran where kdPel='" & txtKode.Text & "'", CN, adOpenDynamic, adLockOptimistic If rsCari.EOF = True Then MsgBox "Kode tidak ada ..." txtKode.Text = "" txtKode.SetFocus Else txtKode.Text = rsCari.Fields("KdPel") txtNama.Text = rsCari.Fields("NmPel") txtKet.Text = rsCari.Fields("Ket") Cari = False cmdRubah.Enabled = True cmdHapus.Enabled = True cmdRubah.SetFocus End If End If End If End Sub Private Sub txtNama_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtNama.Text = UCase(txtNama.Text) txtKet.Enabled = True
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
txtKet.SelLength = Len(txtKet.Text) txtKet.SetFocus End If End Sub
Data User Dim Dim Dim Dim Dim Dim Dim Dim
rsPasswd As Recordset rsSimpan As Recordset rsCari As Recordset rsUbah As Recordset rsHapus As Recordset tambah As Boolean Cari As Boolean ubah As Boolean
Private Sub cmdBatal_Click() txtUid.Text = "" txtPass.Text = "" ubah = False tambah = False Cari = False cmdRubah.Enabled = False cmdHapus.Enabled = False cmdCari.Enabled = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Sub segar() Set rsSegar = New ADODB.Recordset rsSegar.Open "Select * from tUser order by UserId asc", CN, 1, 2 Adodc2.Refresh grid.Refresh End Sub Private Sub cmdcari_Click() Cari = True cmdTambah.Enabled = False cmdCari.Enabled = False txtUid.Locked = False txtUid.SetFocus End Sub Sub Bersih() txtUid.Text = "" txtPass.Text = "" End Sub
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Private Sub CmdHapus_Click() Set rsHapus = New ADODB.Recordset rsHapus.Open "Delete tUser where userId='" & txtUid.Text & "' and passwd='" & txtPass.Text & "'", CN, adOpenDynamic, adLockOptimistic txtUid.Text = "" txtPass.Text = "" segar MsgBox "User sudah di hapus ..." cmdRubah.Enabled = False cmdHapus.Enabled = False cmdCari.Enabled = True cmdTambah.Enabled = True cmdTambah.SetFocus End Sub Private Sub cmdKeluar_Click() Unload Me End Sub Private Sub CmdRubah_Click() ubah = True cmdRubah.Enabled = False cmdHapus.Enabled = False txtPass.Locked = False txtPass.SetFocus End Sub Private Sub cmdtambah_Click() tambah = True cmdTambah.Enabled = False cmdCari.Enabled = False txtUid.Locked = False txtUid.SetFocus End Sub Private Sub Form_Activate() txtPass.Locked = True txtUid.Locked = True cmdRubah.Enabled = False cmdHapus.Enabled = False cmdTambah.SetFocus End Sub Sub mati() txtPass.Locked = True txtUid.Locked = True cmdRubah.Enabled = False cmdHapus.Enabled = False End Sub Private Sub Form_Load()
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Koneksi End Sub Private Sub txtPass_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Set rsPasswd = New ADODB.Recordset rsPasswd.Open "Select * from tUser where userId='" & txtUid.Text & "' and passwd='" & txtPass.Text & "'", CN, adOpenDynamic, adLockOptimistic If tambah = True Then If rsPasswd.EOF = True Then Set rsSimpan = New ADODB.Recordset rsSimpan.Open "select * from tUser", CN, adOpenDynamic, adLockOptimistic rsSimpan.AddNew rsSimpan.Fields("userId") = txtUid.Text rsSimpan.Fields("Passwd") = txtPass.Text rsSimpan.Update txtUid.Text = "" txtPass.Text = "" MsgBox "Data sudah tersimpan" tambah = False mati segar Bersih cmdTambah.Enabled = True cmdCari.Enabled = True cmdTambah.SetFocus Else MsgBox "User sudah ada ..." txtPass.Text = "" txtUid.Text = "" txtUid.SetFocus End If ElseIf ubah = True Then Set rsUbah = New ADODB.Recordset rsUbah.Open "Update tUser Set passwd ='" & txtPass.Text & "' where userId ='" & txtUid.Text & "'", CN, adOpenDynamic, adLockOptimistic txtUid.Text = "" txtPass.Text = "" MsgBox "Data sudah Ubah" ubah = False mati Bersih segar cmdTambah.Enabled = True cmdCari.Enabled = True cmdTambah.SetFocus
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
End If End If End Sub Private Sub txtUid_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If tambah = True Then Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tUser where userId='" & txtUid.Text & "'", CN, adOpenDynamic, adLockOptimistic If rsCari.EOF = True Then txtPass.Locked = False txtPass.SetFocus Else MsgBox "User sudah ada ..." txtUid.Text = "" txtPass.Text = "" txtUid.SetFocus End If ElseIf Cari = True Then Set rsCari = New ADODB.Recordset rsCari.Open "Select * from tUser where userId='" & txtUid.Text & "'", CN, adOpenDynamic, adLockOptimistic If rsCari.EOF = True Then MsgBox "User belum ada ..." txtUid.Text = "" txtUid.SetFocus Else txtPass.Text = rsCari.Fields("passwd") cmdRubah.Enabled = True cmdHapus.Enabled = True cmdRubah.SetFocus End If End If End If End Sub
Daftar Siswa Private Sub Form_Activate() cr.RetrieveDataFiles cr.UserName = "kemala" cr.Password = "kemala" cr.Connect = "Provider=OraOLEDB.Oracle.1;Password=kemala;Persist Security Info=True;User ID=kemala;pwd=kemala;DSN = DSNKemala" cr.ReportFileName = App.Path & "\DafSiswa.rpt" cr.PrintReport cr.WindowState = crptMaximized
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cr.Action = 1 End Sub Private Sub Form_Load() Koneksi End Sub
Laporan Absen Siswa Private Sub cboSem_Click() cmdCetak.SetFocus End Sub Private Sub cmdCetak_Click() cr.ReportFileName = App.Path & "\LapAbsenSiswa.rpt" cr.RetrieveDataFiles 'cr.UserName = "kemala" 'cr.Password = "kemala" cr.Connect = "Provider=OraOLEDB.Oracle.1;Password=kemala;Persist Security Info=True;User ID=kemala;pwd=kemala;DSN = DSNKemala" cr.SelectionFormula = "{tAbsenSiswa.Thn}=" & txtThn.Text & " and {tAbsenSiswa.Sem}=" & cboSem.Text & "" cr.PrintReport cr.WindowState = crptMaximized cr.Action = 1 End Sub Private Sub Form_Activate() txtThn.SetFocus End Sub Private Sub Form_Load() Koneksi cboSem.List(0) = "1" cboSem.List(1) = "2" cboSem.List(2) = "3" cboSem.List(3) = "4" cboSem.List(4) = "5" cboSem.List(5) = "6" End Sub Private Sub Form_Unload(Cancel As Integer) Unload Me End Sub Private Sub txtThn_Change() If Len(txtThn) < 4 Then Exit Sub Else cboSem.Locked = False
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
cboSem.SetFocus End If End Sub
Daftar Absen Guru Private Sub cboSem_Click() cmdCetak.SetFocus End Sub Private Sub cmdCetak_Click() cr.ReportFileName = App.Path & "\LapAbsenGuru.rpt" cr.RetrieveDataFiles 'cr.UserName = "kemala" 'cr.Password = "kemala" cr.Connect = "Provider=OraOLEDB.Oracle.1;Password=kemala;Persist Security Info=True;User ID=kemala;pwd=kemala;DSN = DSNKemala" cr.SelectionFormula = "{tAbsenGuru.Thn}=" & txtThn.Text & " and {tAbsenGuru.Sem}=" & cboSem.Text & "" cr.PrintReport cr.WindowState = crptMaximized cr.Action = 1 End Sub Private Sub Form_Activate() txtThn.SetFocus End Sub Private Sub Form_Load() Koneksi cboSem.List(0) = "1" cboSem.List(1) = "2" cboSem.List(2) = "3" cboSem.List(3) = "4" cboSem.List(4) = "5" cboSem.List(5) = "6" End Sub Private Sub Form_Unload(Cancel As Integer) Unload Me End Sub Private Sub txtThn_Change() If Len(txtThn) < 4 Then Exit Sub Else cboSem.Locked = False cboSem.SetFocus End If End Sub
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Laporan Nilai Ujian Private Sub cboSem_Click() cmdCetak.SetFocus End Sub Private Sub cmdCetak_Click() cr.ReportFileName = App.Path & "\LapNilai.rpt" cr.RetrieveDataFiles cr.Connect = "Provider=OraOLEDB.Oracle.1;Password=kemala;Persist Security Info=True;User ID=kemala;pwd=kemala;DSN = DSNKemala" cr.SelectionFormula = "{tNilai.Thn}=" & txtThn.Text & " and {tNilai.Sem}=" & cboSem.Text & cr.PrintReport cr.WindowState = crptMaximized cr.Action = 1 End Sub Private Sub Form_Activate() txtThn.SetFocus End Sub Private Sub Form_Load() Koneksi cboSem.List(0) = "1" cboSem.List(1) = "2" cboSem.List(2) = "3" cboSem.List(3) = "4" cboSem.List(4) = "5" cboSem.List(5) = "6" End Sub Private Sub Form_Unload(Cancel As Integer) Unload Me End Sub Private Sub txtThn_Change() If Len(txtThn) < 4 Then Exit Sub Else cboSem.Locked = False cboSem.SetFocus End If End Sub
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.
Wenty Suma : Pembangunan Aplikasi Pangkalan Data Di Sekolah SMU Kemala Bhayangkari 1 Medan, 2009.