1
SISTEM INFORMASI NILAI SISWA PADA SMU NEGERI 2 MEDAN
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Ahli Madya
M. Irsan Parinduri 052406219
PROGRAM STUDI D-3 ILMU KOMPUTER DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2008
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
2
PERSETUJUAN
Judul Kategori Nama Nomor Induk Mahasiswa Program Studi Departemen Fakultas
: SISTEM INFORMASI NILAI SISWA PADA SMA NEGERI 2 MEDAN : TUGAS AKHIR : M. Irsan Parinduri : 052406219 : DIPLOMA (D3) ILMU KOMPUTER : MATEMATIKA : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA Diluluskan di Medan, Juni 2008
Diketahui Departemen Matematika FMIPA USU Ketua,
Dosen Pembimbing,
Dr. Saib Suwilo, M.Sc Nip. 131796149
Dr. Tulus, M.Si Nip. 131796150
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
3
PERNYATAAN
SISTEM INFORMASI NILAI SISWA PADA SMU NEGERI 2 MEDAN
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juni 2008
M. Irsan Parinduri 052406219
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
4
PENGHARGAAN
Puji syukur kita panjatkan kehadirat Allah SWT Yang Maha Pengasih Dan Penyayang, atas limpahan Rahmat dan Karunianya penulis dapat menyelesaikan Tugas Akhir ini dalam waktu yang telah ditetapkan, tanpa suatu kendala yang berarti. Tugas Akhir ini disusun guna memenuhi persyaratan dalam menyelesaikan Program Studi Diploma III Ilmu Komputer pada Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara. Adapun Tugas Akhir ini berisikan tentang Sistem Informasi Nilai Siswa pada SMA Negeri 2 Medan dengan menggunakan aplikasi Microsoft Visual Basic 6.0. Dalam menyelesaikan Tugas Akhir ini, penulis banyak mendapatkan bantuan dari berbagai pihak. Pada kesempatan ini penulis mengucapkan terima kasih yang sebesar-besarnya kepada: 1. Bapak Dr. Eddy Marlianto selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara. 2. Bapak Dr. Saib Suwilo, M. Sc selaku Ketua Jurusan Departemen Matematika FMIPA USU. 3. Bapak Dr. Tulus, M.Si selaku Dosen Pembimbing yang telah memberikan bimbingan dan petunjuk kepada penulis serta telah meluangkan waktu dan tenaga dalam penyelesaian tugas akhir ini. 4. Bapak Kepala Sekolah yang telah memberikan kesempatan kepada saya untuk melakukan riset di SMA Negeri 2 Medan 5. Seluruh staf pengajar FMIPA USU, khususnya D-III Ilmu Komputer. 6. Ayah yang senantiasa berdoa dan mendukungku, Ibu yang telah melahirkanku dan selama hidupnya mendoakan dan membimbingku, adikku yang selalu memberikan semangat dan dorongan. 7. Uda dan Nanguda yang selalu memberi bantuan baik moril maupun material. 8. Rekan-rekan mahasiswa khususnya Kom-C, dan teman-teman lainnya yang tidak dapat saya sebutkan satu-persatu. Semoga Allah SWT selalu mencurahkan rahmat dan kasih sayangNya kepada semua pihak yang telah membantu penulis. Penulis mengahrapkan semoga tugas akhir ini bermanfaat terutama bagi penulis sendiri. Medan, 2008 Hormat Saya
M. Irsan Parinduri
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
5
ABSTRAK
Tugas ini bertujuan untuk memberikan suatu aplikasi sistem yang dapat digunakan dengan mudah dalam melakukan pekerjaan dan untuk mendukung dalam pengambilan keputusan. Aplikasi ini dirancang sesuai dengan kebutuhan informasi yang semakin maju seiring dengan perkembangan teknologi komputer sangat cepat, baik dari segi perangkat keras dan perangkat lunak. Sistem ini dirancang dengan menggunakan perangkat lunak Microsoft Visual Basic 6.0, Microsoft Acces 2000 dan Crystal Report 7.0 Dengan demikian, perancangan suatu sistem informasi memerlukan data dan informasi yang akurat agar sistem informasi yang dirancang dapat memenuhi kebutuhan sesuai yang diinginkan. Untuk itu penulis akan membahas Sistem Informasi Nilai Siswa Pada SMA Negeri 2 Medan. Sistem ini meliputi modul-modul masukan data yang berkaitan dengan siswa, guru, bidang studi (mata pelajaran) dan nilai siswa. Selain itu juga meliputi modul-modul keluaran data yang berkaitan dengan data masukan tersebut. Tujuan dari sistem informasi ini adalah untuk mempermudah pengolahan data nilai siswa dan meningkatkan efektivitas dan efisiensi kerja.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
6
DAFTAR ISI
Halaman Persetujuan Pernyataan Penghargaan Abstrak Daftar Isi Daftar Tabel Daftar Gambar
ii iii iv v vi viii ix
BAB 1
PENDAHULUAN 1.1. Latar Belakang 1.2. Identifikasi Masalah 1.3. Batasan Masalah 1.4. Maksud dan Tujuan 1.5. Metode Penelitian 1.6. Sistematika Penulisan
1 1 3 3 3 4 5
BAB 2
LANDASAN TEORI 2.1. Pengertian Komputer 2.2. Pengertian Data, Database, Sistem dan Informasi 2.2.1. Data 2.2.2. Database 2.2.3. Sistem 2.2.4. Informasi 2.3. Sistem Informasi 2.4. Visual Basic 2.4.1. Layar Utama Visual Basic 2.4.2. Operator 2.4.3. Variabel 2.4.4. Konstanta 2.4.5. Format Pemrograman Viusal Basic 6.0
7 7 9 9 9 10 10 10 11 12 21 23 24 24
BAB 3
TENTANG TEMPAT RISET 3.1. Struktur Organisasi SMA Negeri 2 Medan
25 25
BAB 4
PERANCANGAN SISTEM 4.1. Diagram Alir Data 4.2. Basis Data (Database) 4.3. Perancangan Input 4.4. Perancangan Output
28 28 32 34 40
BAB 5
IMPLEMENTASI SISTEM 5.1 Definisi Implementasi Sistem 5.2 Tujuan Implementasi Sistem
43 43 43
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
7
5.3 5.4 5.5
Komponen Yang Dibutuhkan Dalam Implementasi Sistem Pengujian Sistem Pemeliharaan Sistem
BAB 6
KESIMPULAN DAN SARAN 6.1. Kesimpulan 6.2. Saran Daftar Pustaka Lampiran
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
43 45 45 51 51 51 52 53
8
PENGHARGAAN
Puji syukur kita panjatkan kehadirat Allah SWT Yang Maha Pengasih Dan Penyayang, atas limpahan Rahmat dan Karunianya penulis dapat menyelesaikan Tugas Akhir ini dalam waktu yang telah ditetapkan, tanpa suatu kendala yang berarti. Tugas Akhir ini disusun guna memenuhi persyaratan dalam menyelesaikan Program Studi Diploma III Ilmu Komputer pada Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara. Adapun Tugas Akhir ini berisikan tentang Sistem Informasi Nilai Siswa pada SMA Negeri 2 Medan dengan menggunakan aplikasi Microsoft Visual Basic 6.0. Dalam menyelesaikan Tugas Akhir ini, penulis banyak mendapatkan bantuan dari berbagai pihak. Pada kesempatan ini penulis mengucapkan terima kasih yang sebesar-besarnya kepada: 1. Bapak Dr. Eddy Marlianto selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara. 2. Bapak Dr. Saib Suwilo, M. Sc selaku Ketua Jurusan Departemen Matematika FMIPA USU. 3. Bapak Dr. Tulus, M.Si selaku Dosen Pembimbing yang telah memberikan bimbingan dan petunjuk kepada penulis serta telah meluangkan waktu dan tenaga dalam penyelesaian tugas akhir ini. 4. Bapak Kepala Sekolah yang telah memberikan kesempatan kepada saya untuk melakukan riset di SMA Negeri 2 Medan 5. Seluruh staf pengajar FMIPA USU, khususnya D-III Ilmu Komputer. 6. Ayah yang senantiasa berdoa dan mendukungku, Ibu yang telah melahirkanku dan selama hidupnya mendoakan dan membimbingku, adikku yang selalu memberikan semangat dan dorongan. 7. Uda dan Nanguda yang selalu memberi bantuan baik moril maupun material. 8. Rekan-rekan mahasiswa khususnya Kom-C, dan teman-teman lainnya yang tidak dapat saya sebutkan satu-persatu. Semoga Allah SWT selalu mencurahkan rahmat dan kasih sayangNya kepada semua pihak yang telah membantu penulis. Penulis mengahrapkan semoga tugas akhir ini bermanfaat terutama bagi penulis sendiri. Medan, 2008 Hormat Saya
M. Irsan Parinduri
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
9
ABSTRAK
Tugas ini bertujuan untuk memberikan suatu aplikasi sistem yang dapat digunakan dengan mudah dalam melakukan pekerjaan dan untuk mendukung dalam pengambilan keputusan. Aplikasi ini dirancang sesuai dengan kebutuhan informasi yang semakin maju seiring dengan perkembangan teknologi komputer sangat cepat, baik dari segi perangkat keras dan perangkat lunak. Sistem ini dirancang dengan menggunakan perangkat lunak Microsoft Visual Basic 6.0, Microsoft Acces 2000 dan Crystal Report 7.0 Dengan demikian, perancangan suatu sistem informasi memerlukan data dan informasi yang akurat agar sistem informasi yang dirancang dapat memenuhi kebutuhan sesuai yang diinginkan. Untuk itu penulis akan membahas Sistem Informasi Nilai Siswa Pada SMA Negeri 2 Medan. Sistem ini meliputi modul-modul masukan data yang berkaitan dengan siswa, guru, bidang studi (mata pelajaran) dan nilai siswa. Selain itu juga meliputi modul-modul keluaran data yang berkaitan dengan data masukan tersebut. Tujuan dari sistem informasi ini adalah untuk mempermudah pengolahan data nilai siswa dan meningkatkan efektivitas dan efisiensi kerja.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
10
DAFTAR ISI
Halaman Persetujuan Pernyataan Penghargaan Abstrak Daftar Isi Daftar Tabel Daftar Gambar
ii iii iv v vi viii ix
BAB 1
PENDAHULUAN 1.7. Latar Belakang 1.8. Identifikasi Masalah 1.9. Batasan Masalah 1.10. Maksud dan Tujuan 1.11. Metode Penelitian 1.12. Sistematika Penulisan
1 1 3 3 3 4 5
BAB 2
LANDASAN TEORI 2.3. Pengertian Komputer 2.4. Pengertian Data, Database, Sistem dan Informasi 2.2.1. Data 2.2.2. Database 2.2.3. Sistem 2.2.4. Informasi 2.3. Sistem Informasi 2.4. Visual Basic 2.4.1. Layar Utama Visual Basic 2.4.2. Operator 2.4.3. Variabel 2.4.4. Konstanta 2.4.5. Format Pemrograman Viusal Basic 6.0
7 7 9 9 9 10 10 10 11 12 21 23 24 24
BAB 3
TENTANG TEMPAT RISET 3.1. Struktur Organisasi SMA Negeri 2 Medan
25 25
BAB 4
PERANCANGAN SISTEM 4.5. Diagram Alir Data 4.6. Basis Data (Database) 4.7. Perancangan Input 4.8. Perancangan Output
28 28 32 34 40
BAB 5
IMPLEMENTASI SISTEM 5.1 Definisi Implementasi Sistem 5.2 Tujuan Implementasi Sistem
43 43 43
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
11
5.3 5.4 5.5
Komponen Yang Dibutuhkan Dalam Implementasi Sistem Pengujian Sistem Pemeliharaan Sistem
BAB 6
KESIMPULAN DAN SARAN 6.3. Kesimpulan 6.4. Saran Daftar Pustaka Lampiran
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
43 45 45 51 51 51 52 53
12
BAB 1 PENDAHULUAN
1.1. Latar Belakang Dewasa ini perkembangan ilmu pengetahuan dan teknologi sudah makin cepat, salah satunya adalah di bidang komputer. Saat ini komputer memegang peranan penting dalam mempermudah penyelesaian suatu pekerjaan, meningkatkan efisiensi kerja serta meningkatkan kreatifitas dan aktivitas guru dan pegawai khususnya sekolah SMA Negeri 2 Medan sehingga memiliki skill atau kemampuan yang bagus. Hal ini dibuktikan dengan banyaknya perusahaan atau instansi pemerintahan yang menggunakan sistem komputerisasi sebagai alat bantu untuk mempermudah pekerjaan dan menjadikan perusahaan atau instansi pemerintah memiliki mutu yang tinggi.
Seiring dengan perkembangan teknologi yang begitu pesat, kebutuhan akan informasi sangat diperlukan, terlebih lagi informasi yang dihasilkan mengandung nilai yang benar, akurat, cepat, dan tepat, sehingga siapapun dan apapun yang menggunakan informasi tersebut dapat menangani berbagai masalah yang terjadi dengan cepat.
Dengan dukungan sistem komputerisasi, cara kerja suatu sistem yang sebelumnya manual dapat mengubah cara kerja yang lebih efisien, tepat guna dan berdaya guna serta terjamin mutu dan kualitas prosedur kerjanya. Dengan perkembangan sarana teknologi modern yang lebih baik, akan tercipta suatu lingkungan sistem kerja yang lebih produktif.
Pengolahan data yang tepat akan menghasilkan keuntungan yang besar bagi instansi pendidikan. Tetapi jika pengolahan datanya masih dilakukan secara manual (kerja manusia), terkadang hasil yang diperoleh tidak memuaskan karena satu hal yaitu kemampuan manusia dan oleh pikirnya yang terbatas. Maka perlu diciptakan M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
13
suatu sistem yang mampu memberikan daya tarik perusahaan atau instansi untuk mencapai keunggulan kompetitif. Sistem tersebut harus dirancang untuk kemudian diaplikasikan kepada bidang yang membutuhkan sehingga terjadilah komputerisasi terhadap data yang ada .
Sekolah adalah salah satu sarana organisasi dalam memberikan pelayanan kepada masyarakat dalam bidang pendidikan. Sekolah merupakan tempat dimana kita menimba ilmu, belajar dari yang tidak tahu menjadi tahu. Salah satu unsur terpenting dari suatu sekolah adalah siswa dan nilai dari siswa tersebut. Dalam satu sekolah ada ratusan bahkan lebih siswa yang masing-masing mempunyai data nilai yang berbedabeda. Tak jarang data nilai siswa yang ada dicatat dan simpan secara manual, sehingga memakan waktu dalam pengerjaanya. Dengan menggunakan komputer, waktu pengerjaan dapat dihemat dan penyimpanan data dapat lebih aman bila dibandingkan dengan penyimpanan data dalam bentuk kertas di lemari arsip, serta dapat mengurangi faktor kesalahan manusia (human error), oleh karena itu dirasakan perlu pengguna komputer sebagai alat bantu untuk pengolahan data nilai siswa dengan menggunakan suatu aplikasi yang dirancang sedemikian rupa sesuai dengan kebutuhan sekolah yang bersangkutan.
Dalam hal ini penulis mencoba membuat sistem informasi nilai siswa yang terkomputerisasi yang akan diterapkan pada SMU Negeri 2 Medan, sehingga diharapkan mampu memberikan layanan yang lebih cepat dan akurat. Atas dasar itulah, maka penulis memilih judul ” SISTEM INFORMASI NILAI SISWA PADA SMU NEGERI 2 MEDAN”. Dalam perancangan sistem informasi ini penulis menggunakan Bahasa Pemrograman Visual Basic, hal ini disebabkan karena Visual Basic merupakan bahasa pemrograman yang handal untuk membuat suatu aplikasi dalam Microsoft Windows. Visual Basic juga memudahkan pemrogram untk berinteraksi langsung dengan elemen-elemen (komponen-komponen) untuk setiap program.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
14
1.2 Identifikasi Masalah Pada umumnya setiap perusahaan atau instansi pemerintah khususnya pada SMU Negeri 2 Medan tidak akan terlepas dari masalah dalam aktivitasnya untuk mencapai tujuan yang diinginkan. Permasalahan yang akan diselesaikan adalah bagaimana merancang suatu sistem informasi yang efisien dan efektif untuk mengolah dan dapat menangani data nilai siswa pada SMU Negeri 2 Medan dengan menggunakan alat bantu komputer, agar pemberian laporan nilai siswa dapat dilakukan lebih cepat, karena penyajian secara manual tidak dapat dijamin ketelitian dan kebenarannya.
1.3 Batasan Masalah Agar masalah yang dibahas tidak menyimpang dari tujuan, maka perlu dibuat suatu batasan masalah, yaitu : 1. Sistem yang dirancang hanya untuk menangani pengolahan nilai siswa yang meliputi data siswa, data guru yang mengajar, data mata pelajaran dan data nilai sedangkan data alumni tidak akan dibahas. 2. Sistem dirancang dengan menggunakan bahasa pemrograman Viusal Basic 6.0 3. Sistem yang dirancang akan diupayakan sedemikian rupa sehingga dapat bekerja secara dinamis, yaitu dapat dipergunakan dari tahun ke tahun.
1.4 Maksud dan Tujuan Adapun maksud penulis mengadakan penelitian pada SMU Negeri 2 Medan adalah 1. Mengumpulkan data sebagai bahan penunjang untuk menemukan cara yang tepat dalam merancang suatu sistem yang menangani pengolahan nilai siswa sesuai dengan kebutuhan dan permasalahan yang ada dengan bantuan sistem aplikasi Microsoft Visual Basic 6.0. 2. Mencari dan mengetahui serta kelemahan-kelemahan yang dihadapi sebuah sekolah dalam pengolahan data.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
15
Tujuan penulis mengadakan penelitian ini adalah : 1. Mencari jalan keluar untuk mengatasi kelemahan-kelemahan dari sistem yang sedang dipakai dengan merancang sistem informasi nilai siswa di SMU Negeri 2 Medan dengan menggunakan bahasa pemrograman Visual basic 6.0. 2. Meningkatkan efektivitas dan produktivitas kerja pegawai dalam mengelola data nilai siswa serta penyajian laporan dengan memanfaatkan fasilitas komputer, sehingga dihasilkan informasi yang akurat, cepat dan berkualitas. 3. Mempermudah dan memperlancar cara kerja pegawai dalam pengolahan data nilai siswa yang lebih efektif dan efisien, sehingga menghasilkan sistem baru yang lebih baik dari sistem yang sedang berjalan saat ini.
1.4 Metode Penelitian
Metode penelitian adalah salah satu cara yag bersifat otomatis dan objektif dengan tujuan untuk memperoleh dan mengumpulkan keterangan atau informasi yang teliti secara lebih efisien dan dapat digunakan sebagai pedoman dalam melaksanakan penelitian. Metode penelitian yang penulis gunakan untuk mendapatkan data yang diperlukan adalah : 1. Penelitian Lapangan (Field Research) Metode penelitian ini dilakukan langsung pada objek penelitian, data cara keterangan yang dikumpulkan dilakukan dengan cara : a. Pengamatan (observation) Dalam hal ini penulis melakukan untuk mendapatkan data secara umum dengan melihat langsung, mengamati dan mencatat sistem yang sedang berjalan saat ini serta melihat format-format yang dilakukan selama ini. b
Wawancara (Interview) Dalam hal ini penulis melakukan wawancara untuk melengkapi bahan yang sudah ada selama observasi. Penulis melakukan tanya jawab kepada staf (pegawai) tata usaha dan guru yang berkaitan dengan sistem yang sedang
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. diteliti. USU Repository © 2009
16
2. Penelitian Kepustakaan (Library Research) Penelitian kepustakaan adalah penelitian dengan sumber-sumber kepustakaan. Penelitian ini dimaksudkan untuk mendapatkan landasan teori yang memadai dalam penyusunan tugas akhir ini, dalam hal ini data dan keterangan dikumpulkan dari sumber-sumber seperti buku-buku teks, bacaan-bacaan, bahan-bahan perkuliahan serta materi-materi lainnya yang berhubungan dengan masalah yang ditinjau dalam penyusunan tugas akhir ini.
1.6 Sistematika Penulisan
Adapun maksud dan tujuan sistematika penulisan tugas akhir ini adalah untuk lebih memudahkan penulis dalam membuat dan menyelesaikan permasalahan yang dianalisa sehingga lebih terarah dan terfokus dan tidak menyimpang dari ruang lingkup batasan masalah. Adapun sistematika penulisan tugas akhir ini adalah sebagai berikut : BAB 1
: PENDAHULUAN Pada bab ini penulis menguraikan tentang latar belakang, identifikasi masalah yang akan dibahas, batasan masalah, maksud dan tujuan, metodologi penelitian dan sistematika penulisan.
BAB 2
: LANDASAN TEORI Pada bab ini penulisa membahas tentang pengertian komputer, data, database, sistem, informasi dan sistem informasi, serta uraian singkat mengenai bahasa pemrogram Visual Basic 6.0.
BAB 3
: TENTANG TEMPAT RISET Pada bab ini penulis menjelaskan tentang struktur organisasi tempat penulis melakukan penelitian yaitu SNU Negeri 2 Medan.
BAB 4
: PERANCANGAN SISTEM Pada bab ini penulis menjelaskan tentang perancangan
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan,perancangan 2008. struktur database, USU Repository © 2009
program yang meliputi
17
perancangan input dan output yang akan dibuat pada sistem informasi nilai siswa dengan menggunakan bahasa pemrograman Visual Basic 6.0. BAB 5
: IMPLEMENTASI SISTEM Pada bab ini penulis menjelaskan tentang definisi implementasi sistem, tujuan implementasi sistem, komponen yang dibutuhkan dalam implementasi sistem pengujian sistem dan pemeliharaan sistem.
BAB 6
: KESIMPULAN DAN SARAN Pada bab ini penulis menjelaskan tentang kesimpulan dan saran dari Tugas Akhir dan penelitian yang dilaksanakan oleh penulis.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
18
BAB 2
LANDASAN TEORI
2.1. Pengertian Komputer
Istilah komputer berasal dari bahasa latin ”Computer“ yang berarti menghitung (to compute atau reckon). Pengertian komputer adalah seperangkat alat elektronik yang dihubungkan dengan listrik yang berguna untuk membantu pekerjaan manusia agar lebih mudah, cepat, dan akurat. Komputer juga sebagai alat informasi dan komunikasi yang mampu mengolah data dan kemudian menyimpannya. Pada saat ini, perangkat komputer yang sudah dikenal oleh masyarakat umum sebagai berikut. Mainframe Personal Computer (PC) Computer for Server (Server) Personal Data Assitant (PDA) Mobile Computer (Notebook, Laptop, Deksnote) Global Positioning System (GPS) Kalkulator Transistor (misalnya Alfa Link) PC-Tablet Organizer Seiring dengan bertambahnya waktu dan berkembangnya teknologi, semakin banyak pula jenis alat yang bisa digolongkan ke dalam komputer, umumnya, orang mengartikan komputer hanya sebatas personal computer (PC). Oleh karena itu, penulis hanya akan membahas PC berikut periferalnya. M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
19
Secara umum, cara kerja komputer seperti bagan berikut ini. input data
proses diolah
output data
Storage Penyimpanan
Sementara itu, perangkat komputer bisa di bagi menjadi 3 bagian sebagai berikut. 1. Hardware (perangkat keras) Hardware adalah komponen-komponen yang membentuk suatu sistem komputer yang berhubungan dengan peralatan (komponen lainnya), sehingga memungkinkan komputer dapat melakukan tugasnya. Perangkat keras ini terdiri dari tiga jenis yaitu perangkat masukan (input devices), perangkat pengolah (processor) atau biasa disebut dengan CPU (Central Processing Unit dan perangkat keluaran (output devices) 2. Software (perangkat lunak) Software adalah komponen dalam sistem komputer berupa program untuk mengatur hubungan antara hardware dan branware serta mengawasi seluruh kegiatan di dalam CPU. Dengan adanya software ini barulah komputer dapat dipergunakan sesuai kebutuhan. 3. Brainware (pengguna) - Operator, yaitu sebagai pengguna komputer saja. - Program, yaitu sebagai pembuat software atau program - Sistem analisis, yaitu yang menjembatani antara komputer, manusia, dan program.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
20
2.2. Pengertian Data, Database, Sistem dan Informasi
2.2.1. Data Data berasal dari kata ” datum”, yang berarti fakta yang mengandung arti pengolahan data dengan menggunakan komputer dikenal dengan nama Pengolahan Data Elektronik (PDE) atau Elektronik Data Processsing (EDP). Data merupakan kumpulan kejadian yang diangkat dari suatu kenyataan. Data dapat berupa simbol-simbol, gambar-gambar, kata-kata, angka-angka, huruf-huruf yang menunjukkan suatu ide, objek, kondisi atau situasi. Data merupakan bahan yang akan diolah menjadi suatu bentuk yang lebih berguna dan bermanfaat. Proses pengolahan data ada tiga, Yaitu: 1. Pada Tahapan Input. Yaitu dilakukan proses pemasukan data ke dalam proses komputer lewat alat input (input device). 2. Pada Tahapan Processing. Yaitu dilakukan proses pengolahan data yang sudah dimasukkan, yang dilakukan oleh alat pemroses (proses device) yang dapat berupa proses perhitungan, perbandingan, pengendalian atau pencairan di storage (penyimpanan). 3. Pada Tahapan Output. Yaitu dilakukan proses menghasilkan output dari hasil pengolahan data ke alat (output device) yaitu berupa informasi.
2.2.2. Database Database (basis data) adalah pengorganisasian sekumpulan data yang saling terkait sehingga memudahkan aktivitas untuk memperoleh informasi. Database dimaksudkan untuk mengatasi problem pada sistem yang memakai pendekatan berbasis berkas.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
21
2.2.3. Sistem Sistem
merupakan
kumpulan
elemen-elemen
yang
saling
berkaitan
dan
bertanggungjawab untuk memproses input (masukan) sehingga menghasilkan output (keluaran).
2.2.4. Informasi Informasi merupakan hasil pengolahan data yang lebih berguna dan berarti bagi yang menerimanya untuk mencapai suatu tujuan tertentu. Informasi adalah data yang telah disusun sedemikian rupa sehingga bermakna dan bermanfaat karena dapat dikomunikasikan kepada seseorang yang akan menggunakannya untuk membuat keputusan. Informasi yang dapat bermanfaat jika: 1. Informasi yang akurat. Yaitu informasi yang bermanfaat jika akurat. 2. Informasi yang lengkap. Agar menjadi lengkap jumlah informasi harus memadai untuk mengidentifikasi masalah dan dimulai menemukan pemecahan potensial. 3. Informasi yang relevan. Yaitu informasi yang relevan bila berhubungan dengan masalahnya, sehingga para pengambil keputusan dapat menggunakannya untuk menentukan pemecahan dan mulai menentukan solusi potensial. 4. Informasi yang tepat waktu. Yaitu untuk menjadi tepat pada waktunya informasi harus tersedia saat dibutuhkan untuk menentukan pemecahan atau untuk mengidentifikasikan pemecahan masalahnya yang potensial.
2.3. Sistem Informasi Sistem didefenisikan sebagai satu set elemen yang dihubungkan bersama untuk mencapai tujuan yang sama. Sistem juga dapat diartikan sebagai suatu proses M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
22
berkelanjutan dari kumpulan benda, objek, metode, dimana satu dengan yang lain disatukan secara fungsional dan operasional untuk mencapai tujuan bersama.
Informasi merupakan hasil pengolahan dari data untuk memperolah pengetahuan atau pemahaman tentang sesuatu.
Jadi sistem informasi adalah suatu himpunan komponen sistematik dan formal yang melakukan operasi pengolahan data untuk. Jadi sistem informasi suatu komponen sistematik dan formal yang melakukan operasi pengolahan data untuk: a. Meningkatkan pemahaman atau mengurangi ketidakpastian terhadap sesuatu data atau fakta-fakta yang akan dilaporkan. b. Memberikan berbagai laporan seperti yang diinginkan oleh pihak yang membutuhkan informasi tersebut. c. Memberikan
kepada
pihak
manajemen
untuk
menunjang
perencanaan,
pengawasan, dan pengambilan keputusan.
2.4. Visual Basic Visual Basic 6.0 yang biasanya disebut dengan VB (visual basic) merupakan bahasa pemrograman komputer yang lengkap dan mudah untuk membuat suatu aplikasi dalam Microsoft Windows dengan menggunakan metode Graphical User Interface (GUI) Visual Basic memudahkan pemrograman untuk berinteraksi langsung dengan elemen-elemen didalam setiap pemrograman.
Visual basic merupakan even – driven pemrograming artinya program menunggu sampai adanya respon dari pemakai berupa event atau kejadian tertentu (tombol diklik, menu dipilih, dan lain-lain). Ketika event terdeteksi, kode yang berhubungan dengan event akan dijalankan.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
23
2.4.1. Layar Utama Visual Basic. Dalam Tampilan layar Visual Basic terdapat komponen-komponennya. Komponenkomponen yang akan dibahas ini hanya dasar-dasarnya dan bersifat umum. Untuk mengaktifkan layar utama caranya adalah dengan menginstal Visual Basic 6.0, setelah itu pilih menu atau klik tombol Start → Programs → Microsoft Visual Studio 6.0 → Microsoft Visual Basic 6.0, maka akan muncul tampilan berikut ini:
Gambar 2.1. Kotak dialog New Project Untuk menampilkan layar utama Visula Basic 6.0, kita pilih standar EXE dan klik tombol Open maka akan muncul tampilan layar utama Visula Basic berikut:
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
24
Gambar 2.2. Layar Visual basic 6.0
Berikut ini komponen-komponen yang terdapat pada layar utama Visual Basic yang akan dibahas satu persatu
1. Main Windows (Jendela Utama) Main windows (jendela utama) terdiri dari titlebar (baris judul), menubar dan toolbar. Baris judul berisi nama proyek, mode operasi Visual Basic sekarang dan form yang aktif. Menubar merupakan menu drop-down dimana Anda dapat mengontrol operasi dari lingkungan Visual Basic. Toolbar berisi kumpulan gambar yang mewakili perintah yang ada di menu. Jendela utama juga menampilkan lokasi dari form yang aktif terhadap sudut kiri atas layar (satuan ukurannya twips), juga lebar dan panjang dari form yang aktif Titleber
Gambar 2.3. Jendela Utama Toolbar M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
Menubar
25
2. Form Windows (Jendela Form) Form windows (jendela form) adalah pusat dari pengembangan aplikasi Visual Basic. Jendela form digunakan untuk menggambarkan aplikasi. Secara otomatis akan tersedia form yang baru bila akan membuat program aplikasi yang baru, yaitu dengan nama Form1. Umumnya dalam suatu form terdapat garis titik-titik yang disebut Grid. Untuk lebih memahami form ini maka di bawah ini terdapat gambar jendela for
Gambar 2.4. Jendela Form.
3. Project Windows (Jendela Project) Project windows (jendela project) menampilkan daftar form dan modul proyek. Proyek merupakan kumpulan dari modul form, modul class, modul standar, dan file sumber yang membentuk suatu aplikasi. Jendela project juga menampilkan daftar hierarkis dari file proyek yang berekstensi. VBP dan file-file pendukung lainnya (form dengan ekstensi .FRM, modul dengan ekstensi .BAS, class dengan ekstensi .CLS) yang terdapat dalam program aplikasi.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
26
Gambar 2.5. Jendela Project Ada tiga buah icon pada jendela project, yaitu: 1. View Code ( 2. View Object ( 3. View Folders (
) untuk menampilkan jendela code. ) untuk menampilkan jendela form. ) untuk menampilkan struktur pohon dari file-file penyusun
aplikasi.
4. Toolbox Toolbox adalah kumpulan dari objek yang digunakan untuk membuat user interface (pemakai) serta kontrol bagi program aplikasi. Ada dua cara untuk menempatkan kontrol pada suatu form, yaitu: 1. Klik ganda kontrol dalam toolbox, selanjutnya anda dapat mengubah besar dan ukurannya serta memindahkannya dengan metode drag and drop 2. Klik kontrol dalam toolbox, kemudian pindahkan pointer mouse pada jendela form. Kursor berubah menjadi crosshair. Tempatkan crosshair pada sudut kiri atas dimana anda inginkan kontrol diletakkan, tekan tombol mouse kiri dan tahan ketika menyeret (drag) kursor ke arah sudut kanan bawah.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
27
Gambar 2.6. Toolbox Kontrol adalah alat bantu yang dipakai untuk membuat sebuah objek pada form Visual Basic. Setelah kontrol ditambahkan ke form, kontrol tersebut berubah menjadi sebuah objek yaitu elemen perantara pemakai yang dapat diprogram. Kontrol pada toolbox dapat ditambah dengan cara klik kanan mouse pada toolbox > Components atau dari menubar pilih menu Project > Components atau dengan perintah Ctrl + T dari keyboard.
Gambar Kontrol
Tabel 2.1. Kontrol Visual Basic Nama Awalan Fungsi Kontrol Pointer Merupakan petunjuk kontrol yang memindahkan letak atau mengubah ukuran kontrol yang terpasang pada form. Picture Box pic Untuk menampilkan gambar statis maupun gambar aktif dari sumber di luar darinya(berekstensi: . bmp, .jpg, .gif, wmf, dan .ico). Label lbl Digunakan untuk menampilkan teks tetapi pemakai tidak dapat berinteraksi dengannya atau mengubahnya. Text box txt Menampilkan teks dimana pemakai dapat mengisi, mengubah atau melihat teks yang ditampilkan sebagai output. Frame fra Mengidentifikasi sebuah kelompok pengontrol atau mengelompokkan beberapa kontrol. Command cmd Untuk membuat sebuah tombol Button pelaksana perintah atau memberikan sebuah perintah atau tindakan ketika digunakan
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
28
Check Box
chk
Memuat kotak check yang mudah pemakaiannya dan dapat digunakan untuk pemilihan lebih dari dua keadaan. Memberikan kelompok pilihan. Pemakai hanya dapat memilih sati pilihan pada kelompok pilihan. Unit kontrol kombinasi antara text box dengan list box. Pemakai bisa mengetikkan pilihan atau memilih lewat daftar drop-down. Menampilkan daftar item yang dapat dipilih salah satu pemakai.
Option Button
opt
Combo Box
cbo
List Box
lst
Hscroll Bar
hsb
Vscroll Bar
vsb
Timer
tmr
Drive List Box
drv
Dir list Box
dir
Untuk menampilkan daftar direktori dan path pada drive terpilih.
File List Box
fil
Untuk menampilkan daftar file pada drive dan direktori terpilih.
Shape
shp
Line
lin
Untuk memasang kontrol yang mampu menghasilkan sarana untuk menggambarkan beberapa bentuk yaitu lingkaran, elips dan kotak pada form. Untuk menggambarkan garis lurus pada form.
Image
img
Menampilkan balok gulung horizontal atau untuk menggulung dengan jangka lebar dan pemilihan dalam posisi horizontal. Menampilkan balok gulung vertikal atau untuk menggulung dengan jangka panjang dan pemilihan dalam posisi vertical Untuk mengeksekusi waktu kejadian pada rutin program termasuk selang waktu (interval) atau untuk menghitung waktu event dalam interval yang ditentukan. Untuk menampilkan daftar drive disk yang dimiliki komputer..
Untuk menampilkan gambar bitmap, icon ataupun metafile pada form. Perbedaan dengan picture box adalah, kontrol ini memberikan perintah seperti mengklik gambar menggunakan mouse. Data dat Menampilkan database pada suatu form M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, atau2008. menyediakan sarana akses dalam USU Repository © 2009
29
suatu database. OLE (object Linking and embedding)
ole
Untuk menghsilkan proses link an embed objek antara aplikasi atau menmungkinkan pemakai yang mendukung OLE ke aplikasi Visual Basic.
5. Properties windows (Jendela Properti) Properties windows (jendela properti) berisi daftar struktur setting (pengaturan) property yang digunakan pada sebuah objek terpilih. Kotak drop-down pada bagian atas jendela berisi daftar semua objek pada form yang aktif. Ada dua tab tampilan, yaitu alphabetic (urut abjad) dan categorized (urut berdasar kelompok). Di bagian bawah kotak terdapat properti dari objek terpilih.
Gambar 2.7. Jendela Properties
6. Form Layout Windows (Jendela Layout Form)
Form layout windows (jendela layout form) menampilkan posisi form relatif terhadap layar monitor.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
30
Gambar 2.8. Jendela Layout Form
7. Code Windows (Jendela Kode) Jendela kode adalah tempat penulisan kode-kode program aplikasi. Kode program adalah serangkaian tulisan yang dilaksanakan jika suatu objek dijalankan. Kode program ini akan mengontrol dan menentukan suatu objek.
Gambar 2.9. Jendela Kode Selain dari komponen layar utama di atas, terdapat juga komponen program Visual Basic yang biasa digunakan, yaitu :
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
31
a. Event
Event adalah segala sesuatu yang dialami oleh sebuah objek yang diakibatkan baik oleh tindakan user atau dari tindakan program itu sendiri. Misalnya klik, tunjuk dan lain sebagainya.
Seluruh program aplikasi berbasis Windows saat ini disebut dengan istilah event-driven program. Lingkungan Windows yang multitasking memberikan berbagai pilihan yang dapat dilakukan oleh pemakai terhadap suatu objek yang terdapat pada program aplikasi. Dengan demikian suatu program harus memberikan berbagai pilihan yang bisa dilakukan oleh para usernya (pemakainya).
Didalam Visual Basic, kode program tidak dituliskan sekaligus dalam satu tempat, melainkan di sebar menjadi prosedur atau rutin-rutin yang lebih kecil yang terdapat di dalam objek-objek. Prosedur inilah yang akan dijalankan apabila user melakukan suatu event tertentu pada sebuah objek. Setiap objek dapat memiliki satu atau lebih event.
b Metode (Methods) Metode adalah suatu set perintah seperti halnya fungsi dan prosedur, tetapi sudah tersedia dalam suatu objek. Metode biasanya akan mengerjakan suatu tugas khusus kepada suatu objek. Metode biasanya akan mengerjakan suatu tugas khusus pada suatu objek. Contoh dari pengguna metode seperti di bawah ini : Private Sub Form_Activate() Form1.Print ”Microsoft Visual Basic 6.0” End Sub
Kode program di atas menunjukkan pengguna metode Print (Mencetak) pada objek Form1 untuk mencetak tulisan “Microsoft Visual Basic 6.0”.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
32
c. Module Modul adalah kumpulan dan prosedur umum deklarasi variabel dan definisi konstanta yang digunakan oleh aplikasi. Modul disejajarkan dengan form, tetapi tidak mengandung objek. Modul dapat berisi kode-kode program atau prosedur dapat digunakan dalam program aplikasi.
2.4.2. Operator Untuk melakukan berbagai manipulasi dan pengolahan data MS-Visual Basic 6.0 menyediakan berbagai macam operator, adapun tersebut adalah sebagai berikut : 1. Operator Penugasan (Assignment Operator) Operator penugasan (Assignment Operator) disimbolkan dengan tanda sama dengan (=) dan berfungsi untuk memasukkan suatu data ke dalam suatu variabel. Penulisannya adalah : = contoh : bilangan = 1, harga = 1 jumlah = banyak * harga
2. Operator Aritmatika Digunakan untuk melakukan operasi aritmatika. Operator aritmatika mempunyai hierarki paling tinggi dibanding operator lain. Yaitu operator pembandingan dan operator logika, maka yang didahulukan operasinya adalah operator aritmatika, dilanjukan dengan operator pembandingan dan terakhir operator logika.
Operator aritmatika sendiri memiliki hirarki dari setiap operator yang tergolong operator aritmatika. Berikut ini tabel operator aritmatika adalah sebagai berikut :
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
33
Tabel 2.2. Operator Aritmatika Operator Operasi Pemangkatan ^ Tanda negatif Perkalian dan pembagian */ Pembagian integer \ Mod Modulus (sisa pembagian) +Penambahan dan pengurangan +& Penggabungan string
Hirarki 1 2 3 4 5 6 7
Operator untuk penggabungan string sebetulnya tidak termasuk kategori operator aritmatika, tetapi hirarkinya persis di bawah aritmatika dan diatas operator perbandingan. Hasil pengguna operator penggabungan + dan & hampir sama, tetapi ada sedikit perbedaan.
3. Operator Pembandingan
Operator pembadingan digunakan untuk membandingkan suatu data dengan data lain yang menghasilkan nilai logika benar atau salah. Tentu saja antara dua data yang dibandingkan harus mempunyai tipe data yangh sama. Nilai Boolean dalam MSVisual Basic 6.0 dapat diwakili dengan bilangan integer-1 yang berarti benar (true) dan 0 yang berarti salah (false). Berikut ini tabel operator pembandingan adalah sebagai berikut: Tabel 2.3. Operator Pembadingan Operator
Keterangan
=
Sama dengan
<>
Tidak sama dengan
<
Lebih kecil
>
Lebih besar
<=
Lebih kecil atau sama dengan
>=
Lebih besar atau sama dengan
Like Is
Mempunyai ciri yang sesuai Sama referensi objek
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
34
4. Operator Logika Operator logika digunakan untuk mengekspresikan satu atau lebih data (ekspresi) logika menghasilkan data logika baru. Di bawah ini adalah tabel operator logika. Tebel 2.4. Logika Hirarki Operator
Keterangan
Not
Tidak
And
Dan
Or
Atau
Xor
Exclusive Or
Eqv
Ekivalen
Imp
Implikasi
2.4.3. Variabel Variabel adala tempat untuk menyimpan nilai-nilai atau data-data secara sementara pada aplikasi Visual Basic.
Sintaks untuk mendelarasikan variabel adalah sebagai berikut : Dim namavariabel As tipevariabel Keterangan : Dim : Statement dari Visual Basic untuk mendeklarasikan variabel. Namavariabel : Nama variabel yang digunakan untuk menyimpan nilai. Nama ini bebas, dapat ditentukan sendiri. Tipevariabel : Tipe variabel yang bergantung pada tipe data yang akan di simpan didalam variabel tersebut.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
35
2.4.4. Konstanta Beda dengan variabel, konstanta adalah nilai yang tidak akan berubah disepanjang aplikasi. Biasanya konstanta untuk memberi nilai tetap pada perhitungan.
2.4.5. Format Pemrograman Visual Basic 6.0 Format program Visual Basic secara umum terdiri dari : 1) Bagian Deklarasi Global Untuk melakukan deklarasi global biasanya dilakukan dengan menambahan suatu reserved word public suatu deklarasi variabel. 2) Bagian utama program terdiri dari blok-blok fungsi dan blok-blok prosedur. Bagian ini terdiri dari : •
Bagian Deklarasi Private Bagian deklarasi private ditemukan di dalam blok suatu fungsi-fungsi atau pada blok prosedur.
•
Blok
utama
yang
mencakup
statement-statement,
perintah,
fungsi,
operator,pemanggilan fungsi atau prosedur. •
Pengambialihan nilai ke program pemanggil.
Untuk memahami simbol-simbol yang digunakan dalam program, perlu dijelaskan beberapa meta simbol yang umum yaitu : v ‘ (tanda petik tunggal) menyatakan komentar program. Komentar merupakan suatu simbol yang digunakan untuk menjelaskan maksud dari suatu statement program. Komentar ditandai dengan simbol ’ (tanda petik tunggal). Dengan adanya simbol ini maka kompiler tidak akan menterjemahkan statement yang dimulai dengan simbol ’ (tanda petik tunggal). v _menyatakan persambungan garis.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
36
BAB 3
TENTANG TEMPAT RISET
3.1
Struktur Organisasi SMA Negeri 2 Medan Drs Muhammad Daud Kepala Sekolah
TATA USAHA
Drs Masri Lubis PKS I
Dra Dahlia Hrp PKS II
STAFF PENGAJAR
SISWA-SISWI
Keterangan : v PKS I : Bidang Kurikulum v PKS II
: Bidang Sarana Prasarana
v PKS III
: Bidang Kesiswaan
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
Erwinsyah P PKS III
37
Berdasarkan Struktur Organisasi yang tertera, berikut ini akan diuraikan tugas, wewenang dan tanggung jawab dari masing-masing unit dalam struktur organisasi Tersebut sebagai berikut: 1. Kepala Sekolah Kepala Sekolah sebagai edukator, administrasi, manager dan supervition pendidikan, bertanggung jawab penuh atas penyelenggaraan pendidikan pada Sekolah Menengah Atas Negeri 2 Medan yang dibantu tiga orang pembantu Kepala Sekolah, yaitu PKS I, PKS II, dan PKS III. 2. Pembantu Kepala Sekolah (PKS) I Pembantu Kepala sekolah (PKS) I berfungsi sebagai pembantu kepala sekolah pada bidang-bidang yang berhubungan dengan kesekretariatan (edukatif) sekolah, yaitu: •
Menyusun jadwal kegiatan belajar mengajar.
•
Menyusun pembagian tugas guru.
•
Mengatur kegiatan evaluasi belajar.
•
Mengatur persiapan proses belajar mengajar
3. Pembantu Kepala (PKS) II Pembantu Kepala Sekolah (PKS) II berfungsi sebagai pembantu kepala sekolah pada bidang-bidang yang berhubungan dengan administrasi sekolah, ketenagaan, peralatan pengajaran, pemeliharaan gedung dan perlengkapan sekolah, pengarahan dan pengendalian disiplin siswa dalam rangka melasanakan tata tertib sekolah, mengerjakan tugas lain yang ditetapkan kepala sekolah, dan lain sebagainya. 4. Pembantu Kepala Sekolah (PKS) III Pembantu Kepala Sekolah (PKS) III berfungsi sebagai pembantu kepala sekolah dalam menjalankan kebijakan pada bidang-bidang yang menyangkal masalah kesiswaan, serta memantau segala kegiatan siswa seperti : •
Menyusun program badan pembimbing (BP)
•
Koordinasi dengan wali kelas dan orang tua
•
Mengkoordinasi pemilihan jurusan kelas
•
Menyelesaikan kasus-kasus siswa
•
Mengawasi kegiatan siswa pada jam istirahat.
5. Tata Usaha M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
38
Tata Usaha berfungsi sebagai pelaksana fungsi-fungsi manajemen administrasi sekolah yakni mengenai pengaturan kesiswaan, ketenagaan, pengadaan peralatan pengajaran, pemeliharaan gedung dan perlengkapan sekolah serta perpustakaan sekolah, surat menyurat dan bertanggung jawab pada pembantu Kepala Sekolah (PKS) 3. 6. Guru Guru berfungsi dalam melaksanakan kegiatan pendidikan mempunyai tugas : •
Menyusun pembuatan program tahunan
•
Melaksanakan kegiatan belajar mengajar
•
Membuat analisa materi pelajaran
•
Membuat program semester
•
Membuat rincian minggu efektif
•
Melaksanakan analisis hasil evaluasi
•
Memantau kegiatan siswa dalam kelas
•
Memeriksa dan Memproses absensi siswa
•
Membuat laporan keadaan kelas bulanan
7. Siswa Adapun siswa disini harus mengikuti segala kegiatan proses belajar mengajar, mematuhi tata tertib sekolah dan menjaga nama baik sekolah di luar sekolah.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
39
BAB 4
PERANCANGAN SISTEM
Seiring dengan perkembangan teknologi sistem informasi nilai siswa pada SMA Negeri 2 Medan serta untuk meningkatkan efisiensi kerja dan waktu, maka sistem yang ada pada saat ini yang sebagian bersifat manual perlu dikomputerisasi, khususnya dalam pengolahan data, yaitu dengan mengaplikasikan paket program komputer. Data yang diperlukan agar dapat bermanfaat harus dikelola dalam suatu database. Sistem manajemen database merupakan suatu pengorganisasian dan pengolahan data pada komputer.
4.1. Diagram Alir Data Data Flow Diagram (DFD) adalah gambaran sistem secara logika. Gambaran ini tidak tergantung pada perangkat keras, lunak, struktur data atau organisasi. Pada tahap analisa, penanganan notasi simbol lingkaran dan anak panah mewakili / menggambarkan arus data dalam perancangan sistem sangat membantu sekali didalam komunikasi dengan pemakaian sistem menggunakan notasi-notasi ini untuk menggambarkan arus dari data sistem.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
40
Siswa
Mata Pelajaran
Guru
Data Mata Pelajaran Data Siswa
Informasi Nilai
Data Guru, Nilai SISTEM INFORMASI NILAI SISWA Informasi Siswa
Laporan Daftar Guru Laporan Daftar Siswa Perkelas Laporan Daftar Nilai Siswa Perkelas Laporan Daftar Nilai Siswa Permata Pelajaran Laporan Daftar Nilai Siswa Persiswa
Kepala Sekolah
Gambar 4.1 Diagram Konteks
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
41
Siswa
Mata Pelajaran
Guru
Data Mata Pelajaran
Data Guru Nilai
1 Input Data
F1 Kelas
F4 Siswa
F2 Mata Pelajaran
F3 Guru
F5
Nilai
2 Pembuatan Laporan
Informasi Siswa
Laporan Daftar Laporan Daftar Siswa Perkelas Laporan DaftarNilai Siswa Perkelas LaporanDaftarNilai Siswa PermataPelajaran Laporan DaftarNilai Siswa Persiswa
Kepala Sekolah
Gambar 4.2 Level Nol
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
42
Siswa
Guru
Data Siswa
Data Guru Nilai
1. 2
1. 3 Data Siswa
Penilaian
Input Data Siswa F1 Kelas F2 Matapelajaran F4 Siswa Data Siswa
F3 Guru
F5 Nilai
Data Nilai
2 Pembuatan Sekolah
Laporan Daftar Guru Laporan Daftar Siswa Perkelas Laporan DaftarNilai Siswa Perkelas Laporan DaftarNilai Siswa Permatapelajaran Laporan DaftarNilai Siswa Persiswa
Kepala Sekolah
Gambar 4.3 Level Satu
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
43
4.2
Basis Data (Database)
Database (Basis Data) adalah kumpulan dari data yang berhubungan antara satu dengan yang lainnya, tersimpan di perangkat keras komputer dan menggunakan perangkat lunak untuk memanipulasinya. Database merupakan salah satu komponen yang penting dalam sistem komputerisasi, karena merupakan basis data dalam menyediakan informasi bagi para pengguna.
Tabel 4.1 Struktur Database Kelas Field Name Kode_Kelas Nama_Kls
Type Data
Size
Text Text
2 20
Deskripsi Kode Kelas Nama Kelas
Tabel 4.2 Struktur Database Matapelajaran Field Name
Type Data
Size
Deskripsi
Kode_mt
Text
2
Kode Matapelajaran
Nama_Kls
Text
20
Nama Kelas
Tabel 4.3 Struktur Database Guru Field Name NIP Nama_Guru Alamat Jenkel Agama
Type Data Text Text Text Text Text
Size 9 25 30 1 9
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
Deskripsi NIP Nama Guru Alamat Jenis Kelamin Agama
44
Tabel 4.4 Struktur Database Siswa Field Name
Type Data
Size
Deskripsi NIS Kelas Semester Kode Matapelajaran Nilai Ekstrakurikuler Nilai Tugas Nilai Ujian Bulanan Nilai Ujian Tengah Semester Nilai Akhir NIP
NIS Kelas Sem Kode_mt Nekstr NTgs NUjBln NTUUjsem
Text Text Text Text Integer Integer Integer Integer
5 20 1 2 2 2 2 2
NA NIP
Integer Text
2 9
Relasi Antar Tabel
Siswa NIS Nama_Sis Alamat Telp Jenkel Agama
Nilai NIS Kelas Sem Kode_mt Nekstr NTgs
Kode_Kelas
NUjBln NTUjSem NA NIP
Kelas Kode_Kelas Nama_Kls Gambar 4.4 Relasi
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
Mata Pelajaran Kode _mt Nama_Kls
Guru NIP Nama_Guru Alamat JenKel Agama
45
4.3
Perancangan Input
Perancangan input meliputi data masukan untuk diolah sistem, dimana hal-hal berikut ini dijadikan panduan dalam perancangan input: 1. Jenis data yang diinput, apakah data numerik atau karakter. 2. Pengkodeaan dan pengurutan data, dengan membuat suatu kunci primer. 3. Dialog untuk memandu user (pemakai) dalam menyediakan input, berupa keterangan agar user (pemakai) tidak salah dalam melakukan input data. 4. Validasi pemeriksaan kesalahan, berupa metode untuk memeriksa apakah data yang diinput sudah sesuai dengan kebutuhan sistem. 5. Metode untuk menampilkan validasi input jika kesalahan muncul, berupa langkahlangkah yang dapat diikuti user (pemakai) apabila didapati kesalahan dalam input data.
Adapun tampilan/model perancangan dari setiap input data yang terdapat dalam sistem sebagai berikut: 1. Tampilan Perancangan Form Utama Berikut ini adalah tampilan perancangan form utama sistem:
Gambar 4.5 Perancangan Form Utama
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
46
2. Perancangan Form Input Data Kelas Form input data kelas ini merupakan interface untuk melakukan penambahan data, penghapusan data dan edit data. Pada form terdapat tombol-tombol sebagai berikut: 1. Tambah, yaitu tombol yang berfungsi untk menambah data kelas. 2. Batal, yaitu tombol yang berfungsi untuk membatalkan penyimpanan dan pengeditan data kelas. 3. Simpan, yaitu tombol yang berfungsi untuk menyimpan data kelas. 4. Hapus, yaitu tombol yang berfungsi untuk menghapus data kelas 5. Koreksi, yaitu tombol yang berfungsi untuk mengubah data kelas. 6. Keluar, yaitu tombol yang berfungsi untuk keluar dari form data kelas. Berikut ini adalah tampilan / model dari perancangan form input data kelas:
Gambar 4.6 Perancangan Form Input Data Kelas
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
47
3. Perancangan Form Input Data Mata Pelajaran Form input data mata pelajran merupakan interface untuk melakukan penambahan data, penghapusan data dan edit data. Pada form terdapat tombol-tombol sebagai berikut: 1. Tambah, yaitu yang berfungsi untuk menambah data mata pelajaran. 2. Batal, yaitu tombol yang berfungsi untuk membatalkan penyimpanan dan pengeditan data mata pelajaran. 3. Simpan, yaitu tombol yang berfungsi untuk menyimpan data mata pelajaran. 4. Hapus, yaitu tombol yang berfungsi untuk menghapus data mata pelajaran. 5. Koreksi, yaitu tombol yang berfungsi untuk mengubah data mata pelajaran. 6. Keluar, yaitu tombol yang berfungsi untuk keluar dari form data mata pelajaran.
Berikut ini adalah tampilan perancangan form data mata pelajaran.
Gambar 4.7 Perancangan Form Input Data Mata Pelajaran
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
48
4. Perancangan Form Input Data Guru Form input data guru ini merupakan interface untuk melakukan penambahan data, penghapusan data dan edit data. Pada form terdapat tombol-tombol sebagai berikut: 1. Tambah, yaitu tombol yang berfungsi untuk menambah data guru. 2. Batal, yaitu tombol yang berfungsi untuk membatalkan penyimpanan data pengeditan data guru. 3. Simpan, yaitu tombol yaitu berfungsi untuk menyimpan data guru. 4. Hapus, yaitu tombol yang berfungsi untuk menyimpan data guru. 5. Koreksi, yaitu tombol yang berfungsi untuk mengubah data guru 6. Keluar, yaitu tombol yang berfungsi untuk keluar dari form data guru.
Berikut ini adalah tampilan perancangan form data guru :
Gambar 4.8 Perancangan Form Input Data Guru
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
49
5. Perancangan Form Data Siswa Form input data nilai siswa/i ini merupakan interface untuk melakukan penambahan data, penghapusan data dan edit data. Pada form terdapat tomboltombol sebagai berikut: 1. Tambah, yaitu tombol yang berfungsi untuk menambah data nilai siswa. 2. Batal, yaitu tombol yang berfungsi untuk membatalkan penyimpanan dan pengeditan data nilai siswa. 3. Simpan, yaitu tombol yang berfungsi untuk menyimpan data nilai siswa 4. Hapus, yaitu tombol yang berfungsi untuk menghapus data nilai siswa. 5. Koreksi, yaitu tombol yang berfungsi untuk mengubah data nilai siswa. 6. Keluar, yaitu tombol yang berfungsi untuk keluar dari form data nilai siswa.
Berikut ini adalah tampilan perancangan form data nilai siswa:
Gambar 4.9 Perancangan Form Data Siswa
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
50
6. Perancangan Form Input Data Nilai Siswa Form input data nilai siswa ini merupakan interface untuk melakukan penambahan data,penghapusan data dan edit data. Pada form terdapat tombol-tombol sebagai berikut: 1. Tambah, yaitu tombol yang berfungsi untuk menambah dat nilai siswa. 2. Batal, yaitu tombol yang berfungsi untuk membatalkan penyimpanan dan pengeditan data nilai siswa. 3. Simpan, yaitu tombol yang berfungsi untuk menyimpan data nilai siswa. 4. Hapus, yaitu tombol yang berfungsi untuk menghapus data nilai siswa. 5. Koreksi, yaitu tombol yang berfungsi untuk mengubah data nilai siswa. 6. Keluar, yaitu tombol yang berfungsi untuk keluar dari form data nilai siswa.
Berikut ini adalah tampilan form input data nilai siswa.
Gambar 4.10 Perancangan Form Input Data Nilai Siswa
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
51
7. Perancangan Form Dialog Cetak Lampiran Form dialog cetak laporan ini merupakan suatu interface untuk melakukan pencetakan suatu data. Pada form ini terdapat tombol-tombol sebagai berikut: 1. Cetak, yaitu tombol yang berguna untuk mencetak data yang telah dikerjakan. 2. Keluar, yaitu tombol yang berguna untuk keluar dari form dialog cetak laporan. Berikut ini adalah tampilan perancangan form dialog cetak laporan:
Gambar 4.11 Perancangan Form Dialog Cetak Lampiran
4.4
Perancangan Output
Perancangan output meliputi keluaran informasi yang diolah dari data masukan dimana hal-hal berikut ini dijasikan panduan dalam rancangan output: 1. Informasi apa yang akan disajikan. 2. Menentukan apakah informasi akan ditampilkan atau dicetak. 3. Mengatur presentasi informasi dalam sebuah format yang dapat diterima. Adapun tampilan/model dari setiap output data yang terdapat dalam sistem adalah sebagai berikut:
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
52
1. Perancangan Laporan Output Guru Laporan ini tampil pada saat pemakai akan melakukan pencetakan laporan daftar Guru. Berikut ini adalah tampilan perancangan laporan output data guru:
Gambar 4.12 Perancangan Output Guru 3. Perancangan Laporan Output Daftar Siswa Laporan ini tampil pada saat pemakai akan melakukan pencetakan laporan daftar siswa/i. Berikut ini adalah tampilan perancangan laporan daftar siswa:
Gambar 4.13 Perancangan Laporan Output Daftar Siswa
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
53
3. Perancangan Laporan Output Data Nilai Siswa Perkelas Laporan ini tampil pada saat pemakai akan melalukan pencetakan daftar nilai siswa perkelas. Berikut ini adalah tampilan perancangan laporan output nilai siswa perkelas:
Gambar 4.14 Perancangan Laporan Output Data Nilai Siswa Perkelas
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
54
BAB 5
IMPLEMENTASI SISTEM
5.1
Defenisi Implementasi Sistem
Implementasi sistem merupakan prosedur yang dilakukan untuk menyelesaikan desain sistem yang ada dalam dokumen desain yang disetujui dan di uji kemudian di instal guna dilakukan pemrosesan data dengan sistem yang baru atau sistem yang diperbaiki.
5.2
Tujuan Implementasi Sistem
Tujuan dari implementasi sistem adalah sebagai berikut: 1. Membuat desain sistem yang telah dibuat selama penelitian. 2. Menguji, menulis dan mendokumentasikan prosedur-prosedur dan programprogram yang diperlukan oleh dokumen-dokumen desain sistem yang telah dibuat. 3. Memperhitungkan sistem yang telah dibuat sesuai kebutuhan dan keperluan yang ada. 4. Memperhitungkan bahwa konversi ke sistem baru berjalan secara benar, yaitu dengan merencanakan , mengontrol dan membuat sebuah program dengan baik. 5. Menyelesaikan desain sistem yang ada dalam sistem yang telah disetujui. 6. Memperhitungkan bahwa sistem dapat memenuhi permintaan pemakai.
5.3
Komponen Yang Dibutuhkan Dalam Implementasi Sistem
Untuk mengolah data menggunakan komputer haruslah mempunyai tiga komponen utama, yaitu sebagai berikut: 1. Hardware
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
55
Hardware (perangkat keras) merupakan komponen fisik dalam rangkaian komputer, sedangkan spesifikasi hardware yang dibutuhkan adalah sebagai berikut: •
Micro Processor Pentium III, IV,Caleron, Core Duo dan AMD
•
Hardiks untuk tempat program beroperasi dan sebagai medis penyimpanan data.
•
Memori minimal 64Mb
•
Monitor
•
Mouse
•
Keyboard
•
Printer
•
Kertas, untuk pencetakan laporan
2. Software Software (perangkat lunak) merupakan instruksi program yang dapat digunakan dalam komputer dan memberikan fungsi serta menampilkan seperti yang diinginkan. Software yang digunakan adalah: •
Sistem Operasi Windows Xp
•
Microsoft Visual Basic 6.0 dan Crystal Report 8.5
•
Anti Virus untuk mengetahui terjadinya kerusakan sistem.
3. Brainware Brainware merupakan faktor manusia yang menangani fasilitas komputer yang dibutuhkan adalah: •
Sistem analis, orang yang sedang membangun fasilitas rancangan sistem
•
Programmer, orang yang mengerti bahasa pemrograman dalam membuat dan membangun program.
•
Operator, orang yang menangani langsung dalam pengolahan data, mulai dari mempersiapkan data sampai pengertian data ke dalam komputer.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
56
5.4
Pengujian Sistem
Pengujian ini bertujuan untuk memaastikan aplikasi yang telah dibuat apakah sesuai dengan keinginan pemakai dan dapat digunakan oleh pemakai dan dioperasikan oleh operator sistem. Beberapa tingkatan pengujian sebelum mengimplementasikan aplikasi yaitu: 1. Pengujian Bagian. Dalam tingkatan ini biasanya pengujian dilakukan ke setiap program untuk memperhitungkan bahwa setiap modul program tersebut memenuhi spesifikasispesifikasinya. 2. Pengujian Integrasi Menguji setiap kelompok logika modul-modul progrm untuk memperhitungkan bahwa kelompok tersebut spesifikasi-spesifikasi fungsi logika. 3. Pengujian Aplikasi Bagian tingkatan ini menguji aplikasi yang telah dibuat untuk memperhitungkan bahwa aplikasi baru tersebut telah memenuhi spesifikasi aslinya. 4. Pengujian Penerimaan Pengujian ini bertujuan untuk mempertimbangkan bahwa semua komponen dalam sistem baru berada dalam keadaan memuaskan. 5. Pengujian Operasi dan Pengujian Lingkungan Aplikasi yang telah dibuat tersebut dicoba ke lingkungan yang sesungguhnya untuk memperhitungkan bahwa semua peralatan baru dan faktor-faktor lain dalam lingkungan, misalnya memasukan data, dokumen dan lain-lain, apakah sudah memuaskan.
5.5
Pemeliharaan Sistem
Sebuah kegiatan pengolahan data akan terus berlangsung dengan melibatkan sejumlah fungsi yang terdiri dari pegawai yang terlibat atau tidak, hingga pemanfaatan sistem tersebut secara maksimal sangat diperlukan. Kegiatan pengolahan data juga akan M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
57
melibatkan penyelenggaraan data yang berkualitas, baik dalam kecepatan pengolahan atau penampilan laporan tersebut sebagai sajian informasi.
Adanya kecenderungan jumlah data yang membesar, baik volume atau jenisnya akan sangat mempengaruhi penanganan yang akan dilakukan oleh para pegawai. Melihat dari hal maka diperlukan pelatihan secara terus menerus, khsusunya pada pegawai baru, agar nantinya mampu menangani perkembangan data yang semakin besar.
Bertolak dari permasalahan di atas maka juga diperlukan adanya pemeliharaan sistem agar sistem tersebut dapat berjalan semestinya dan penggunaanya yang semaksimal mungkin. Adapun tujuan dari pemeliharaan sistem ini adalah sebagai berikut: 1. Mencegah modifikasi sistem yang akan menyebabkan masalah-masalah yang lain. 2. Membuat modifikasi sistem yang sesuai dengan kebutuhan organisasi. 3. Menyempurnakan proses penyusunan sistem dan proses pemeliharaan sistem dengan menganalisa informasi tentang modifikasi sistem. 4. Mengganti pemeliharaan sistem dengan survey sistem jika modifikasi yang diminta relatif besar. 5. Meminimalkan gangguan kontrol operasi yang disebabkan oleh pemeliharaan sistem.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
58
5.6
Antar Muka (Interface)
Gambar 5.1 Tampilan Menu Utama
Gambar 5.2 Tampilan Data Kelas
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
59
Gambar 5.3 Tampilan Mata Pelajaran
Gambar 5.4 Tampilan Data Guru
Gambar 5.5 Tampilan Data Siswa
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
60
Gambar 5.6 Tampilan Nilai Siswa
Gambar 5.7 Tampilan Laporan Data Guru
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
61
Gambar 5.8 Tampilan Laporan Siswa Perkelas
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
62
BAB 6
KESIMPULAN DAN SARAN
6.1
Kesimpulan
Dari pembahasan mengenai sistem informasi pengolahan data nilai siswa pada sekolah Menengah Atas Negeri 2 Medan, maka Penulis menyimpulkan bahwa: 1. Dengan adanya perangkat lunak sistem informasi nilai siswa ini, maka proses pengolahan data nilai siswa yang akan datang dapat dilakukan dengan cepat, akurat, tepat, mudah dan lebih baik dari masa sekarang. 2. Pengolahan data nilai siswa yang baik akan memudahkan dalamhal pengambilan keputusan sehingga dapat meningkatkan kinerja sekolah nantinya. 3. Pembuatan program dengan menggunakan Visuial Basic lebih mudah dalam hal perancangan maupun untuk hasil akhirnya (output) dan lebih mudah di mengerti oleh pemakai karena Visual Basic merupakan bahasa pemrograman berbasiskan wondows.
6.2
Saran
Dalam hal ini, Penulis memberikan saran yang kiranya dapat bermanfaat untuk kemajuan sekolah Menengah Atas Negeri 2 Medan, yaitu: 1. Untuk meningkatkan efisiensi kerja pada Sekolah Menengah Atas Negeri 2 Medan, disarankan menggunakan jasa komputer dengan memakai sistem informasi yang telah dirancang. 2. Diharapkan pada masa yang akan datang, instansi mempunyai sistem aplikasi pengolahan data yang lengkap di bagian tata usaha yang berbasis komputer. 3. Diharapkan adanya pengembangan lebih lanjut dari sistem informasi yang terpadu untuk menanggulangi dan mengolah data yang lebih besar di masa yang akan datang 4. Diharapkan bahwa Tugas Akhir ini dapat bermanfaat bagi Pembaca.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
63
DAFTAR PUSTAKA Hartono, Yogiyanto.2000. Pengenalan Komputer. Yogyakarta. Andi Yogyakarta. Mangkulo, A. H. 2004. Buku Latihan Pemrograman Database Visual Basic 6. Jakarta. PT. Elex Media Komputindo. Rusmawan, U. 2007. Konsep Dan Implementasi Visual Basic. Jakarta. Elex Media Komputindo. Madcoms. 2003. Aplikasi Database Dan Cristal Teport Pada Visual Basic 6.0. Madiun. Penerbit Andi. Madcoms. 2005. Panduan Aplikasi Pemrograman Database Dengan Visual Basic 6.0 Crystal Report. Madiun. Penerbit Andi.
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
64
L I S T I N G P R O G R A M M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
65
Listing Program dbModule1
Option Explicit Public AddFlag As Boolean Public EditFlag As Boolean Public Isitext As String Public List As ListItem Public i As Integer Public reply As String Public cTgl, cBln, cThn As String Public strsql As String Public SQlSimpan As String Public SQLHapus As String Public SQLUpdate As String Private Declare Function timeGetTime Lib "winmm.dll" () As Long Private Declare Function SetTextCharacterExtra Lib "gdi32" (ByVal hDC As Long, ByVal nCharExtra As Long) As Long Private Type RECT Left As Long Top As Long Right As Long Bottom As Long End Type Private Declare Function OffsetRect Lib "user32" (lpRect As RECT, ByVal X As Long, ByVal Y As Long) As Long Private Declare Function SetTextColor Lib "gdi32" (ByVal hDC As Long, ByVal crColor As Long) As Long Private Declare Function FillRect Lib "user32" (ByVal hDC As Long, lpRect As RECT, ByVal hBrush As Long) As Long Private Declare Function CreateSolidBrush Lib "gdi32" (ByVal crColor As Long) As Long Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long Private Declare Function GetSysColor Lib "user32" (ByVal nIndex As Long) As Long Private Const COLOR_BTNFACE = 15 Private Declare Function TextOut Lib "gdi32" Alias "TextOutA" (ByVal hDC As Long, ByVal X As Long, ByVal Y As Long, ByVal lpString As String, ByVal nCount As Long) As Long M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
66
Private Declare Function DrawText Lib "user32" Alias "DrawTextA" (ByVal hDC As Long, ByVal lpStr As String, ByVal nCount As Long, lpRect As RECT, ByVal wFormat As Long) As Long Private Const DT_BOTTOM = &H8 Private Const DT_CALCRECT = &H400 Private Const DT_CENTER = &H1 Private Const DT_CHARSTREAM = 4 ' Character-stream, PLP Private Const DT_DISPFILE = 6 ' Display-file Private Const DT_EXPANDTABS = &H40 Private Const DT_EXTERNALLEADING = &H200 Private Const DT_INTERNAL = &H1000 Private Const DT_LEFT = &H0 Private Const DT_METAFILE = 5 ' Metafile, VDM Private Const DT_NOCLIP = &H100 Private Const DT_NOPREFIX = &H800 Private Const DT_PLOTTER = 0 ' Vector plotter Private Const DT_RASCAMERA = 3 ' Raster camera Private Const DT_RASDISPLAY = 1 ' Raster display Private Const DT_RASPRINTER = 2 ' Raster printer Private Const DT_RIGHT = &H2 Private Const DT_SINGLELINE = &H20 Private Const DT_TABSTOP = &H80 Private Const DT_TOP = &H0 Private Const DT_VCENTER = &H4 Private Const DT_WORDBREAK = &H10 Private Declare Function OleTranslateColor Lib "olepro32.dll" (ByVal OLE_COLOR As Long, ByVal hPalette As Long, pccolorref As Long) As Long Private Const CLR_INVALID = -1 Public Sub TextEffect(obj As Object, ByVal sText As String, ByVal lX As Long, ByVal lY As Long, Optional ByVal bLoop As Boolean = False, Optional ByVal lStartSpacing As Long = 128, Optional ByVal lEndSpacing As Long = -1, Optional ByVal oColor As OLE_COLOR = vbWindowText) Dim lhDC As Long Dim i As Long Dim X As Long Dim lLen As Long Dim hBrush As Long Static tR As RECT Dim iDir As Long Dim bNotFirstTime As Boolean Dim lTime As Long Dim lIter As Long Dim bSlowDown As Boolean Dim lCOlor As Long Dim bDoIt As Boolean
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
67
lhDC = obj.hDC iDir = -1 i = lStartSpacing tR.Left = lX: tR.Top = lY: tR.Right = lX: tR.Bottom = lY OleTranslateColor oColor, 0, lCOlor hBrush = CreateSolidBrush(GetSysColor(COLOR_BTNFACE)) lLen = Len(sText) SetTextColor lhDC, lCOlor bDoIt = True Do While bDoIt lTime = timeGetTime If (i < -3) And Not (bLoop) And Not (bSlowDown) Then bSlowDown = True iDir = 1 lIter = (i + 4) End If If (i > 128) Then iDir = -1 If Not (bLoop) And iDir = 1 Then If (i = lEndSpacing) Then ' Stop bDoIt = False Else lIter = lIter - 1 If (lIter <= 0) Then i = i + iDir lIter = (i + 4) End If End If Else i = i + iDir End If FillRect lhDC, tR, hBrush X = 32 - (i * lLen) SetTextCharacterExtra lhDC, i DrawText lhDC, sText, lLen, tR, DT_CALCRECT tR.Right = tR.Right + 4 If (tR.Right > obj.ScaleWidth \ Screen.TwipsPerPixelX) Then tR.Right = obj.ScaleWidth \ Screen.TwipsPerPixelX DrawText lhDC, sText, lLen, tR, DT_LEFT obj.Refresh Do DoEvents If obj.Visible = False Then Exit Sub
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
68
Loop While (timeGetTime - lTime) < 20 Loop DeleteObject hBrush End Sub
Public Sub OpenTable(strsql As String, rs As ADODB.Recordset) Set rs = New ADODB.Recordset If rs.State = adStateOpen Then Set rs = Nothing rs.Open strsql, cn, adOpenDynamic, adLockOptimistic
End Sub
Public Sub LoadDataToListView(strsql As String, rs As ADODB.Recordset, Grid As ListView, CountFields As Integer) Call OpenTable(strsql, rs) Grid.ListItems.Clear Do While Not rs.EOF Set List = Grid.ListItems.Add(, , rs.Fields(0)) For i = 1 To CountFields On Error Resume Next List.SubItems(i) = rs.Fields(i) Next i rs.MoveNext Loop End Sub
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
69
Listing Program dbModule II
Option Explicit Public cn As New ADODB.Connection Public user As String Public j, i As Integer Public conAVB As ADODB.Connection Public lst As ListItem Public sql As String Public Isitext As String Public Hak As String Global auto As String Public X As Control Sub animasi() 'frmAnimasi.Top = 1000 'frmAnimasi.Show End Sub Public Sub PesanTutup() MsgBox "Proses Form Masih Akrif! Tidak Boleh Ditutup" + vbNewLine + "Anda harus Melengkapi atau Membatalkan!", vbOKOnly + vbExclamation, "Tutup Form" End Sub
Public Sub IsiDataText4() Isitext = "0123456789AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz. ," End Sub Public Sub IsiDataText0() Isitext = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz" End Sub Public Sub IsiDataTextK() Isitext = "KBkb" End Sub Public Sub IsiDataTextJ() Isitext = "PWpw" End Sub Public Sub IsiDataText1() Isitext = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz.,-" End Sub Public Sub IsiDataText5() Isitext = "123"
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
70
End Sub Public Sub IsiDataText2() Isitext = "0123456789-()" End Sub Public Sub IsiDataText3() Isitext = "0123456789.-" End Sub Public Sub IsiDataText8() Isitext = "0123456789/" End Sub Public Function CekTanggal(Tg As String) As Boolean Dim sekarang As Date Dim Bln, Tgl, Th As String Tgl = Mid(Tg, 1, 2) Bln = Mid(Tg, 4, 2) Th = Mid(Tg, 7, 4) CekTanggal = False If (Val(Tgl) < 32 And Val(Tgl) > 0) And (Val(Bln) > 0 And Val(Bln) < 13) _ And (Val(Th) > 999) Then CekTanggal = True End If If Tgl > sekarang Then MsgBox "Tanggal Tidak Boleh Lebih Besar dari Tgl Sekarang..!", vbInformation CekTanggal = False End If End Function
Listing Program Class I
Private Sub Class_Initialize() DoEvents Set cn = New ADODB.Connection With cn 'Provider=Microsoft.Jet.OLEDB.4.0 'Provider=Microsoft.Jet.OLEDB.3.51 .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\sekolah.mdb" .CursorLocation = adUseClient .Open End With End Sub M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
71
Listing Program Class II
Option Explicit 'Progress Values for the encoding routine Private Const PROGRESS_CALCFREQUENCY = 7 Private Const PROGRESS_CALCCRC = 5 Private Const PROGRESS_ENCODING = 88 'Progress Values for the decoding routine Private Const PROGRESS_DECODING = 89 Private Const PROGRESS_CHECKCRC = 11 'Events Event Progress(Procent As Integer) Private Type HUFFMANTREE ParentNode As Integer RightNode As Integer LeftNode As Integer Value As Integer Weight As Long End Type Private Type ByteArray Count As Byte Data() As Byte End Type Private Declare Sub CopyMem Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long) Public Sub EncodeFile(SourceFile As String, DestFile As String) On Error GoTo errh Dim ByteArray() As Byte Dim Filenr As Integer 'Make sure the source file exists If (Not FileExist(SourceFile)) Then Err.Raise vbObjectError, "clsHuffman.EncodeFile()", "Source file does not exist" End If 'Read the data from the sourcefile Filenr = FreeFile Open SourceFile For Binary As #Filenr ReDim ByteArray(0 To LOF(Filenr) - 1) Get #Filenr, , ByteArray()
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
72
Close #Filenr 'Compress the data Call EncodeByte(ByteArray(), UBound(ByteArray) + 1) 'If the destination file exist we need to 'destroy it because opening it as binary 'will not clear the old data If (FileExist(DestFile)) Then Kill DestFile 'Save the destination string Open DestFile For Binary As #Filenr Put #Filenr, , ByteArray() Close #Filenr Call MsgBox("Database anda Sudah Di Backup ." & vbCrLf, vbInformation) Exit Sub errh: If Err.Number = 71 Then Call MsgBox("Disket Tidak ada dalam Drive A:" & vbCrLf & _ "Silahkan Masukkan Disket,Untuk Proses backup database Anda" & vbCrLf & _ Err.Description, vbExclamation) Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub Public Sub DecodeFile(SourceFile As String, DestFile As String) Dim ByteArray() As Byte Dim Filenr As Integer 'Make sure the source file exists If (Not FileExist(SourceFile)) Then Err.Raise vbObjectError, "clsHuffman.DecodeFile()", "Source file does not exist" End If 'Read the data from the sourcefile Filenr = FreeFile Open SourceFile For Binary As #Filenr ReDim ByteArray(0 To LOF(Filenr) - 1) Get #Filenr, , ByteArray() Close #Filenr 'Uncompress the data Call DecodeByte(ByteArray(), UBound(ByteArray) + 1) 'If the destination file exist we need to 'destroy it because opening it as binary
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
73
'will not clear the old data If (FileExist(DestFile)) Then Kill DestFile 'Save the destination string Open DestFile For Binary As #Filenr Put #Filenr, , ByteArray() Close #Filenr End Sub Private Sub CreateTree(Nodes() As HUFFMANTREE, NodesCount As Long, Char As Long, Bytes As ByteArray) Dim a As Integer Dim NodeIndex As Long NodeIndex = 0 For a = 0 To (Bytes.Count - 1) If (Bytes.Data(a) = 0) Then 'Left node If (Nodes(NodeIndex).LeftNode = -1) Then Nodes(NodeIndex).LeftNode = NodesCount Nodes(NodesCount).ParentNode = NodeIndex Nodes(NodesCount).LeftNode = -1 Nodes(NodesCount).RightNode = -1 Nodes(NodesCount).Value = -1 NodesCount = NodesCount + 1 End If NodeIndex = Nodes(NodeIndex).LeftNode ElseIf (Bytes.Data(a) = 1) Then 'Right node If (Nodes(NodeIndex).RightNode = -1) Then Nodes(NodeIndex).RightNode = NodesCount Nodes(NodesCount).ParentNode = NodeIndex Nodes(NodesCount).LeftNode = -1 Nodes(NodesCount).RightNode = -1 Nodes(NodesCount).Value = -1 NodesCount = NodesCount + 1 End If NodeIndex = Nodes(NodeIndex).RightNode Else Stop End If Next Nodes(NodeIndex).Value = Char End Sub Public Sub EncodeByte(ByteArray() As Byte, ByteLen As Long) M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
74
Dim i As Long Dim j As Long Dim Char As Byte Dim BitPos As Byte Dim lNode1 As Long Dim lNode2 As Long Dim lNodes As Long Dim lLength As Long Dim Count As Integer Dim lWeight1 As Long Dim lWeight2 As Long Dim Result() As Byte Dim ByteValue As Byte Dim ResultLen As Long Dim Bytes As ByteArray Dim NodesCount As Integer Dim NewProgress As Integer Dim CurrProgress As Integer Dim BitValue(0 To 7) As Byte Dim CharCount(0 To 255) As Long Dim Nodes(0 To 511) As HUFFMANTREE Dim CharValue(0 To 255) As ByteArray 'If the source string is empty or contains 'only one character we return it uncompressed 'with the prefix string "HEO" & vbCr If (ByteLen = 0) Then ReDim Preserve ByteArray(0 To ByteLen + 3) If (ByteLen > 0) Then Call CopyMem(ByteArray(4), ByteArray(0), ByteLen) End If ByteArray(0) = 72 '"H" ByteArray(1) = 69 '"E" ByteArray(2) = 48 '"0" ByteArray(3) = 13 'vbCr Exit Sub End If 'Create the temporary result array and make 'space for identifier, checksum, textlen and 'the ASCII values inside the Huffman Tree ReDim Result(0 To 522) 'Prefix the destination string with the '"HE3" & vbCr identification string Result(0) = 72 Result(1) = 69 Result(2) = 51 Result(3) = 13
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
75
ResultLen = 4 'Count the frequency of each ASCII code For i = 0 To (ByteLen - 1) CharCount(ByteArray(i)) = CharCount(ByteArray(i)) + 1 If (i Mod 1000 = 0) Then NewProgress = i / ByteLen * PROGRESS_CALCFREQUENCY If (NewProgress <> CurrProgress) Then CurrProgress = NewProgress RaiseEvent Progress(CurrProgress) End If End If Next 'Create a leaf for each character For i = 0 To 255 If (CharCount(i) > 0) Then With Nodes(NodesCount) .Weight = CharCount(i) .Value = i .LeftNode = -1 .RightNode = -1 .ParentNode = -1 End With NodesCount = NodesCount + 1 End If Next 'Create the Huffman Tree For lNodes = NodesCount To 2 Step -1 'Get the two leafs with the smallest weights lNode1 = -1: lNode2 = -1 For i = 0 To (NodesCount - 1) If (Nodes(i).ParentNode = -1) Then If (lNode1 = -1) Then lWeight1 = Nodes(i).Weight lNode1 = i ElseIf (lNode2 = -1) Then lWeight2 = Nodes(i).Weight lNode2 = i ElseIf (Nodes(i).Weight < lWeight1) Then If (Nodes(i).Weight < lWeight2) Then If (lWeight1 < lWeight2) Then lWeight2 = Nodes(i).Weight lNode2 = i Else lWeight1 = Nodes(i).Weight lNode1 = i End If
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
76
Else lWeight1 = Nodes(i).Weight lNode1 = i End If ElseIf (Nodes(i).Weight < lWeight2) Then lWeight2 = Nodes(i).Weight lNode2 = i End If End If Next 'Create a new leaf With Nodes(NodesCount) .Weight = lWeight1 + lWeight2 .LeftNode = lNode1 .RightNode = lNode2 .ParentNode = -1 .Value = -1 End With 'Set the parentnodes of the two leafs Nodes(lNode1).ParentNode = NodesCount Nodes(lNode2).ParentNode = NodesCount 'Increase the node counter NodesCount = NodesCount + 1 Next 'Traverse the tree to get the bit sequence 'for each character, make temporary room in 'the data array to hold max theoretical size ReDim Bytes.Data(0 To 255) Call CreateBitSequences(Nodes(), NodesCount - 1, Bytes, CharValue) 'Calculate the length of the destination 'string after encoding For i = 0 To 255 If (CharCount(i) > 0) Then lLength = lLength + CharValue(i).Count * CharCount(i) End If Next lLength = IIf(lLength Mod 8 = 0, lLength \ 8, lLength \ 8 + 1) 'If the destination is larger than the source 'string we leave it uncompressed and prefix 'it with a 4 byte header ("HE0" & vbCr) If ((lLength = 0) Or (lLength > ByteLen)) Then ReDim Preserve ByteArray(0 To ByteLen + 3) Call CopyMem(ByteArray(4), ByteArray(0), ByteLen)
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
77
ByteArray(0) = 72 ByteArray(1) = 69 ByteArray(2) = 48 ByteArray(3) = 13 Exit Sub End If 'Add a simple checksum value to the result 'header for corruption identification Char = 0 For i = 0 To (ByteLen - 1) Char = Char Xor ByteArray(i) If (i Mod 10000 = 0) Then NewProgress = i / ByteLen PROGRESS_CALCFREQUENCY If (NewProgress <> CurrProgress) Then CurrProgress = NewProgress RaiseEvent Progress(CurrProgress) End If End If Next Result(ResultLen) = Char ResultLen = ResultLen + 1
*
'Add the length of the source string to the 'header for corruption identification Call CopyMem(Result(ResultLen), ByteLen, 4) ResultLen = ResultLen + 4 'Create a small array to hold the bit values, 'this is faster than calculating on-fly For i = 0 To 7 BitValue(i) = 2 ^ i Next 'Store the number of characters used Count = 0 For i = 0 To 255 If (CharValue(i).Count > 0) Then Count = Count + 1 End If Next Call CopyMem(Result(ResultLen), Count, 2) ResultLen = ResultLen + 2 'Store the used characters and the length 'of their respective bit sequences Count = 0 For i = 0 To 255
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
PROGRESS_CALCCRC
+
78
If (CharValue(i).Count > 0) Then Result(ResultLen) = i ResultLen = ResultLen + 1 Result(ResultLen) = CharValue(i).Count ResultLen = ResultLen + 1 Count = Count + 16 + CharValue(i).Count End If Next 'Make room for the Huffman Tree in the 'destination byte array ReDim Preserve Result(0 To ResultLen + Count \ 8) 'Store the Huffman Tree into the result 'converting the bit sequences into bytes BitPos = 0 ByteValue = 0 For i = 0 To 255 With CharValue(i) If (.Count > 0) Then For j = 0 To (.Count - 1) If (.Data(j)) Then ByteValue = ByteValue + BitValue(BitPos) BitPos = BitPos + 1 If (BitPos = 8) Then Result(ResultLen) = ByteValue ResultLen = ResultLen + 1 ByteValue = 0 BitPos = 0 End If Next End If End With Next If (BitPos > 0) Then Result(ResultLen) = ByteValue ResultLen = ResultLen + 1 End If 'Resize the destination string to be able to 'contain the encoded string ReDim Preserve Result(0 To ResultLen - 1 + lLength) 'Now we can encode the data by exchanging each 'ASCII byte for its appropriate bit string. Char = 0 BitPos = 0 For i = 0 To (ByteLen - 1) With CharValue(ByteArray(i)) For j = 0 To (.Count - 1)
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
79
If (.Data(j) = 1) Then Char = Char + BitValue(BitPos) BitPos = BitPos + 1 If (BitPos = 8) Then Result(ResultLen) = Char ResultLen = ResultLen + 1 BitPos = 0 Char = 0 End If Next End With If (i Mod 10000 = 0) Then NewProgress = i / ByteLen * PROGRESS_ENCODING PROGRESS_CALCCRC + PROGRESS_CALCFREQUENCY If (NewProgress <> CurrProgress) Then CurrProgress = NewProgress RaiseEvent Progress(CurrProgress) End If End If Next 'Add the last byte If (BitPos > 0) Then Result(ResultLen) = Char ResultLen = ResultLen + 1 End If 'Return the destination in string format ReDim ByteArray(0 To ResultLen - 1) Call CopyMem(ByteArray(0), Result(0), ResultLen) 'Make sure we get a "100%" progress message If (CurrProgress <> 100) Then RaiseEvent Progress(100) End If End Sub Public Function DecodeString(Text As String) As String Dim ByteArray() As Byte 'Convert the string to a byte array ByteArray() = StrConv(Text, vbFromUnicode) 'Compress the byte array Call DecodeByte(ByteArray, Len(Text)) 'Convert the compressed byte array to a string DecodeString = StrConv(ByteArray(), vbUnicode) M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
+
80
End Function Public Function EncodeString(Text As String) As String Dim ByteArray() As Byte 'Convert the string to a byte array ByteArray() = StrConv(Text, vbFromUnicode) 'Compress the byte array Call EncodeByte(ByteArray, Len(Text)) 'Convert the compressed byte array to a string EncodeString = StrConv(ByteArray(), vbUnicode) End Function Public Sub DecodeByte(ByteArray() As Byte, ByteLen As Long) Dim i As Long Dim j As Long Dim Pos As Long Dim Char As Byte Dim CurrPos As Long Dim Count As Integer Dim CheckSum As Byte Dim Result() As Byte Dim BitPos As Integer Dim NodeIndex As Long Dim ByteValue As Byte Dim ResultLen As Long Dim NodesCount As Long Dim lResultLen As Long Dim NewProgress As Integer Dim CurrProgress As Integer Dim BitValue(0 To 7) As Byte Dim Nodes(0 To 511) As HUFFMANTREE Dim CharValue(0 To 255) As ByteArray If (ByteArray(0) <> 72) Or (ByteArray(1) <> 69) Or (ByteArray(3) <> 13) Then 'The source did not contain the identification 'string "HE?" & vbCr where ? is undefined at 'the moment (does not matter) ElseIf (ByteArray(2) = 48) Then 'The text is uncompressed, return the substring 'Decode = Mid$(Text, 5) Call CopyMem(ByteArray(0), ByteArray(4), ByteLen - 4) ReDim Preserve ByteArray(0 To ByteLen - 5) Exit Sub ElseIf (ByteArray(2) <> 51) Then
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
81
'This is not a Huffman encoded string Err.Raise vbObjectError, "HuffmanDecode()", "The data either was not compressed with HE3 or is corrupt (identification string not found)" Exit Sub End If CurrPos = 5 'Extract the checksum CheckSum = ByteArray(CurrPos - 1) CurrPos = CurrPos + 1 'Extract the length of the original string Call CopyMem(ResultLen, ByteArray(CurrPos - 1), 4) CurrPos = CurrPos + 4 lResultLen = ResultLen 'If the compressed string is empty we can 'skip the function right here If (ResultLen = 0) Then Exit Sub 'Create the result array ReDim Result(0 To ResultLen - 1) 'Get the number of characters used Call CopyMem(Count, ByteArray(CurrPos - 1), 2) CurrPos = CurrPos + 2 'Get the used characters and their 'respective bit sequence lengths For i = 1 To Count With CharValue(ByteArray(CurrPos - 1)) CurrPos = CurrPos + 1 .Count = ByteArray(CurrPos - 1) CurrPos = CurrPos + 1 ReDim .Data(0 To .Count - 1) End With Next 'Create a small array to hold the bit values, 'this is (still) faster than calculating on-fly For i = 0 To 7 BitValue(i) = 2 ^ i Next 'Extract the Huffman Tree, converting the 'byte sequence to bit sequences ByteValue = ByteArray(CurrPos - 1) CurrPos = CurrPos + 1
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
82
BitPos = 0 For i = 0 To 255 With CharValue(i) If (.Count > 0) Then For j = 0 To (.Count - 1) If (ByteValue And BitValue(BitPos)) Then .Data(j) = 1 BitPos = BitPos + 1 If (BitPos = 8) Then ByteValue = ByteArray(CurrPos - 1) CurrPos = CurrPos + 1 BitPos = 0 End If Next End If End With Next If (BitPos = 0) Then CurrPos = CurrPos - 1 'Create the Huffman Tree NodesCount = 1 Nodes(0).LeftNode = -1 Nodes(0).RightNode = -1 Nodes(0).ParentNode = -1 Nodes(0).Value = -1 For i = 0 To 255 Call CreateTree(Nodes(), NodesCount, i, CharValue(i)) Next 'Decode the actual data ResultLen = 0 For CurrPos = CurrPos To ByteLen ByteValue = ByteArray(CurrPos - 1) For BitPos = 0 To 7 If (ByteValue And BitValue(BitPos)) Then NodeIndex = Nodes(NodeIndex).RightNode Else NodeIndex = Nodes(NodeIndex).LeftNode End If If (Nodes(NodeIndex).Value > -1) Then Result(ResultLen) = Nodes(NodeIndex).Value ResultLen = ResultLen + 1 If (ResultLen = lResultLen) Then GoTo DecodeFinished NodeIndex = 0 End If Next If (CurrPos Mod 10000 = 0) Then NewProgress = CurrPos / ByteLen * PROGRESS_DECODING If (NewProgress <> CurrProgress) Then CurrProgress = NewProgress
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
83
RaiseEvent Progress(CurrProgress) End If End If Next DecodeFinished: 'Verify data to check for corruption. Char = 0 For i = 0 To (ResultLen - 1) Char = Char Xor Result(i) If (i Mod 10000 = 0) Then NewProgress = i / ResultLen * PROGRESS_CHECKCRC + PROGRESS_DECODING If (NewProgress <> CurrProgress) Then CurrProgress = NewProgress RaiseEvent Progress(CurrProgress) End If End If Next If (Char <> CheckSum) Then Err.Raise vbObjectError, "clsHuffman.Decode()", "The data might be corrupted (checksum did not match expected value)" End If 'Return the uncompressed string ReDim ByteArray(0 To ResultLen - 1) Call CopyMem(ByteArray(0), Result(0), ResultLen) 'Make sure we get a "100%" progress message If (CurrProgress <> 100) Then RaiseEvent Progress(100) End If End Sub Private Sub CreateBitSequences(Nodes() As HUFFMANTREE, ByVal NodeIndex As Integer, Bytes As ByteArray, CharValue() As ByteArray) Dim NewBytes As ByteArray 'If this is a leaf we set the characters bit 'sequence in the CharValue array If (Nodes(NodeIndex).Value > -1) Then CharValue(Nodes(NodeIndex).Value) = Bytes Exit Sub End If 'Traverse the left child If (Nodes(NodeIndex).LeftNode > -1) Then NewBytes = Bytes
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
84
NewBytes.Data(NewBytes.Count) = 0 NewBytes.Count = NewBytes.Count + 1 Call CreateBitSequences(Nodes(), Nodes(NodeIndex).LeftNode, CharValue) End If 'Traverse the right child If (Nodes(NodeIndex).RightNode > -1) Then NewBytes = Bytes NewBytes.Data(NewBytes.Count) = 1 NewBytes.Count = NewBytes.Count + 1 Call CreateBitSequences(Nodes(), Nodes(NodeIndex).RightNode, CharValue) End If End Sub Private Function FileExist(Filename As String) As Boolean On Error GoTo FileDoesNotExist Call FileLen(Filename) FileExist = True Exit Function FileDoesNotExist: FileExist = False End Function
Listing Program MDIForm1
Dim Lokasi As String Dim Criteria Dim X As Control Dim Data As String Private Sub Form_Load() End Sub Private Sub mnBStudio_Click() Skin1.LoadSkin Lokasi + "\B-Studio.skn" Skin1.ApplySkin hWnd End Sub M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
NewBytes,
NewBytes,
85
Private Sub aaa_Click() frmjabatan.Show End Sub
Private Sub ddfd_Click() frmGaji.Show 'Form6.Show End Sub Private Sub ddfdfgdfg_Click() Form1.Show End Sub
Private Sub edfefgrfrfgrghghghg_Click() Form14.Show End Sub Private Sub dsfdsfsd_Click() frmtunjangan.Show End Sub Private Sub dfdfdsf_Click() With CrystalReport2 .DataFiles(0) = App.Path & "\sekolah\sekolah.Mdb" .ReportFileName = "C:\sekolah\biodata2.rpt" .WindowParentHandle = MDIForm1.hWnd .RetrieveDataFiles .WindowState = crptMaximized .Action = 2 End With End Sub Private Sub dfdfsd_Click() Form3.Show End Sub Private Sub dsfdsfds_Click() With CrystalReport2 .DataFiles(0) = App.Path & "\sekolah\sekolah.Mdb" .ReportFileName = "C:\sekolah\biodata1.rpt" .WindowParentHandle = MDIForm1.hWnd .RetrieveDataFiles .WindowState = crptMaximized
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
86
.Action = 2 End With End Sub Private Sub dsfdsfdsf_Click() frmslip.Show End Sub Private Sub dsfdsfs_Click() With CrystalReport2 .DataFiles(0) = App.Path & "\sekolah\sekolah.Mdb" .ReportFileName = "C:\sekolah\biodata3.rpt" .WindowParentHandle = MDIForm1.hWnd .RetrieveDataFiles .WindowState = crptMaximized .Action = 2 End With End Sub Private Sub dsffsd_Click() Form3.Show End Sub Private Sub dsfsdfs_Click() With CrystalReport2 .DataFiles(0) = App.Path & "\sekolah\sekolah.Mdb" .ReportFileName = "C:\sekolah\biodata2.rpt" .WindowParentHandle = MDIForm1.hWnd .RetrieveDataFiles .WindowState = crptMaximized .Action = 2 End With End Sub Private Sub dsfsdfsfs_Click() frmslip.Show End Sub Private Sub ewrwerw_Click() Form2.Show End Sub Private Sub fgfgdfgfdgfd_Click() Form1.Show End Sub M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
87
Private Sub fdcvc_Click() Form4.Show End Sub Private Sub fdgg_Click() Form6.Show End Sub Private Sub fghfghgf_Click() Unload Me frmRoundRect.Show End Sub Private Sub gfdgfdg_Click() With CrystalReport2 .DataFiles(0) = App.Path & "\sekolah\sekolah.Mdb" .ReportFileName = "C:\sekolah\biodata.rpt" .WindowParentHandle = MDIForm1.hWnd .RetrieveDataFiles .WindowState = crptMaximized .Action = 2 End With End Sub Private Sub ghhgjhghjg_Click() Form5.Show End Sub Private Sub iopo_Click() 'Form1.Show End Sub
Private Sub kkkk_Click() Form7.Show End Sub
Private Sub mnguru_Click() frmguru.Show End Sub Private Sub mnkelas_Click() Form4.Show End Sub M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
88
Private Sub mnkeluar_Click() End End Sub Private Sub mnpolis_Click() Form1.Show End Sub Private Sub mnlapguru_Click() With CrystalReport2 .DataFiles(0) = App.Path & "\sekolah\sekolah.Mdb" .ReportFileName = "C:\sekolah\biodata2.rpt" .WindowParentHandle = MDIForm1.hWnd .RetrieveDataFiles .WindowState = crptMaximized .Action = 2 End With End Sub Private Sub mnlaporandaftarnilai_Click() Form1.Show End Sub Private Sub mnlaporansiswaperkelas_Click() Form6.Show End Sub Private Sub mnpelajaran_Click() Form7.Show End Sub Private Sub mnpremi_Click() frmsiswa.Show End Sub Private Sub mnsdd_Click() 'Form2.Show frmgolongan.Show End Sub Private Sub nmn_Click() Form12.Show End Sub Private Sub uioi_Click() Form7.Show End Sub M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
89
Private Sub uiu_Click() Form8.Show End Sub
Listing Program frmsiswa
Option Explicit Dim Lokasi As String Dim Prod As New Class1 Dim Lsiswa2 As New ADODB.Recordset Dim Lsiswa1 As New ADODB.Recordset Dim Lsiswa As New ADODB.Recordset Dim Lsiswa4 As New ADODB.Recordset Dim rssiswa As ADODB.Recordset Dim rssiswa1 As ADODB.Recordset Dim rssiswa2 As ADODB.Recordset Public lst As ListItem Private Sub cmdBatal_Click() Frame3.Enabled = True Frame1.Enabled = True cmdsimpan.Enabled = True cmdedit.Visible = True cmdedit.Enabled = False clrTxt cmdhapus.Enabled = False 'autosiswa txtnis.Enabled = True: txtnis.SetFocus End Sub
Private Sub cmdclear_click() Set Prod = New Class1 Lsiswa1.Open "select * from siswa order by alamat", cn, adOpenDynamic, adLockOptimistic lv1.ListItems.Clear displayKol End Sub
Private Sub cmdedit_Click() Frame1.Enabled = True
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
90
Frame3.Enabled = False txtnis.Enabled = False Me.txtnama_sis.SetFocus cmdsimpan.Enabled = True cmdedit.Visible = False cmdhapus.Enabled = False cmdsimpan.Enabled = False cmdupdate.Visible = True End Sub Private Sub cmdhapus_Click() Dim strsql As String If MsgBox("Apakah Data Akan Dihapus..?" _ , vbQuestion + vbYesNo, "Hapus Data") = vbYes Then strsql = "Delete from siswa " _ & "Where nis='" & txtnis.Text & "'" cn.Execute strsql, , adCmdText MsgBox "Data Sudah Terhapus...!", vbInformation, Me.Caption End If cmdclear_click Call cmdBatal_Click End Sub Private Sub cmdsimpan_Click() Dim strsql As String If txtalamat.Text <> "" And txtnis.Text <> "" _ And txtnama_sis.Text <> "" Then strsql = "Insert into siswa " _ & " (nis,nama_sis,alamat,telp,jenkel,agama,kode_kelas) " _ & "Values ('" & txtnis.Text & "','" & txtnama_sis.Text & "','" & txtalamat.Text & "','" & txttelp.Text & "','" & txtjenkel.Text & "','" & txtagama.Text & "','" & txtkode_kelas.Text & "')" cn.Execute strsql, , adCmdText rssiswa2.Requery MsgBox "Data siswa Telah Tersimpan..!", vbInformation, Me.Caption cmdclear_click cmdBatal_Click Exit Sub Else MsgBox "Data Belum Lengkap..!", vbInformation, Me.Caption Exit Sub End If End Sub
Private Sub cmdtutup_Click()
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
91
'Anis Unload Me End Sub
Private Sub cmdupdate_Click() Dim sekarang As Date Dim strsql As String If txtalamat.Text <> "" And txtnis.Text <> "" _ And txtnama_sis.Text <> "" _ And txtjenkel.Text <> "" And txtagama.Text <> "" Then strsql = "update siswa set nis='" & Me.txtnis.Text & "'" _ & ",nama_sis='" & txtnama_sis & "'" _ & ",alamat='" & txtalamat & "' " _ & ",jenkel='" & txtjenkel & "'" _ & ",agama='" & txtagama & "'" _ & ",kode_kelas='" & txtkode_kelas & "'" _ & ",telp='" & Me.txttelp & "' where nis='" & txtnis.Text & "'" '& "tlahir='" & Me.txttlahir & "' where nis='" & txtnis.Text & "'" cn.Execute strsql, , adCmdText rssiswa2.Requery MsgBox "Data siswa Telah Update ..!", vbInformation, Me.Caption cmdclear_click cmdBatal_Click Exit Sub Else MsgBox "Data Belum Lengkap..!", vbInformation, Me.Caption Me.txtnis.SetFocus Exit Sub End If End Sub
Private Sub form_activate() txtnis.Text = "" txtnis.SetFocus End Sub Private Sub Form_Load() txtjenkel.Clear txtjenkel.AddItem "P" txtjenkel.AddItem "L" M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
92
txtagama.AddItem "Islam" txtagama.AddItem "Protestan" txtagama.AddItem "Katolik" txtagama.AddItem "Hindu" txtagama.AddItem "Budha" Lokasi = App.Path Skin1.LoadSkin Lokasi + "\green.skn" Skin1.ApplySkin hWnd Me.txtnis.MaxLength = 5 txtnama_sis.MaxLength = 25 txtnis.SelStart = 0 txtnis.SelLength = Len(txtnis.Text) cmdhapus.Enabled = False cmdupdate.Visible = False cmdedit.Enabled = False Set Prod = New Class1 Dim strsql As String Set rssiswa2 = New ADODB.Recordset strsql = " Select * from siswa" rssiswa2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText 'autosiswa Lsiswa1.Open "select * from siswa order by nis", cn, adOpenDynamic, adLockOptimistic displayKol
Set rssiswa2 = New ADODB.Recordset strsql = " Select * from kelas" rssiswa2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText Me.txtkode_kelas.Clear Do While Not rssiswa2.EOF Me.txtkode_kelas.AddItem rssiswa2.Fields!kode_kelas rssiswa2.MoveNext Loop
End Sub
Private Sub clrTxt() txtcari.Text = "" txtalamat.Text = "" txtnama_sis.Text = "" txtnis.Text = ""
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
93
txtjenkel.Text = "" txtagama.Text = "" txttelp.Text = "" txtkode_kelas.Text = "" End Sub Private Sub Form_Unload(Cancel As Integer) Set cn = Nothing End Sub Private Sub txtcari_Change() If Combo1.ListIndex = 0 Then Set Lsiswa1 = Nothing sql = "select * from siswa where nis like '" & txtcari.Text & "%'" Lsiswa1.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText lv1.ListItems.Clear displayKol Call LoadDataToListView("SELECT * FROM [siswa] WHERE nis LIKE'" & Me.txtcari.Text & "%'", rssiswa, lv1, 12) Call OpenTable("SELECT * FROM [siswa] WHERE nis='" & Me.txtcari.Text & "'", rssiswa) With rssiswa If Not .EOF Then Call RetFields Else 'Call clrTxt End If End With ElseIf Combo1.ListIndex = 1 Then sql = "select * from siswa where nama_sis like '" & txtcari.Text & "%'" Lsiswa1.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText lv1.ListItems.Clear displayKol Call LoadDataToListView("SELECT * FROM [siswa] WHERE nama_sis LIKE'" & Me.txtcari.Text & "%'", rssiswa, lv1, 12) Call OpenTable("SELECT * FROM [siswa] WHERE nama_sis='" & Me.txtcari.Text & "'", rssiswa) With rssiswa If Not .EOF Then Call RetFields Else 'Call clrTxt End If End With End If
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
94
End Sub Private Sub RetFields() ' On Error Resume Next With rssiswa Me.txtnis.Text = .Fields(0) Me.txtnama_sis.Text = .Fields(1) Me.txtalamat.Text = .Fields(2) Me.txttelp.Text = .Fields(3) Me.txtjenkel.Text = .Fields(4) Me.txtagama.Text = .Fields(5) Me.txtkode_kelas.Text = .Fields(6) End With Frame1.Enabled = False cmdhapus.Enabled = True cmdsimpan.Enabled = False cmdbatal.SetFocus cmdedit.Enabled = True End Sub
'---------------------------------VIew list---------------------------Private Sub displayKol() Do While Not Lsiswa1.EOF Set lst = lv1.ListItems.Add(, , Lsiswa1(0), , 1) lst.SubItems(1) = Lsiswa1(1) lst.SubItems(2) = Lsiswa1(2) lst.SubItems(3) = Lsiswa1(3) lst.SubItems(4) = Lsiswa1(4) lst.SubItems(5) = Lsiswa1(5) lst.SubItems(6) = Lsiswa1(6)
Lsiswa1.MoveNext Loop Set Lsiswa1 = Nothing End Sub Private Sub lv1_DblClick() If lv1.ListItems.Count = 0 Then MsgBox "Record Belum ada Dalam Tabel!", vbOKOnly + vbInformation, "Pilih..." Else Me.txtnis.Text = lv1.SelectedItem.Text Me.txtnama_sis.Text = lv1.SelectedItem.SubItems(1) Me.txtalamat.Text = lv1.SelectedItem.SubItems(2) Me.txttelp.Text = lv1.SelectedItem.SubItems(3)
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
95
Me.txtjenkel.Text = lv1.SelectedItem.SubItems(4) Me.txtagama.Text = lv1.SelectedItem.SubItems(5) Me.txtkode_kelas.Text = lv1.SelectedItem.SubItems(6) Frame1.Enabled = False cmdedit.Enabled = True: cmdhapus.Enabled = True cmdsimpan.Enabled = False End If End Sub Private Sub tampil() clrTxt lv1.ListItems.Clear displayKol End Sub
Private Sub txtnama_sis_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txtalamat.SetFocus End If End Sub Private Sub txtalamat_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txttelp.SetFocus End If End Sub Private Sub txttelp_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txtjenkel.SetFocus End If End Sub Private Sub txtjenkel_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txtagama.SetFocus End If End Sub Private Sub txtnis_KeyPress(KeyAscii As Integer) 'IsiDataText1 If (KeyAscii >= Asc("a") And KeyAscii <= Asc("z")) Then Beep KeyAscii = 0
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
96
End If If KeyAscii = 13 Then If Len(txtnis.Text) < 1 Then MsgBox "siswa Harus isi ", vbInformation, "Lengkapi" txtnis.SetFocus Exit Sub End If Set Lsiswa2 = Nothing sql = "select * from siswa where nis='" & txtnis.Text & "'" Lsiswa2.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText With Lsiswa2 If .BOF And .EOF Then txtnama_sis.SetFocus txtnis.Enabled = False Exit Sub End If MsgBox "nis Tersebut Sudah Ada", vbInformation, "Cari Data" txtnis.Enabled = False txtnama_sis.Text = Lsiswa2!nama_sis txtalamat.Text = Lsiswa2!alamat txttelp.Text = Lsiswa2!telp txtjenkel.Text = Lsiswa2!jenkel txtagama.Text = Lsiswa2!agama txtkode_kelas.Text = Lsiswa2!kode_kelas Frame1.Enabled = False cmdhapus.Enabled = True cmdedit.Enabled = True cmdsimpan.Enabled = False cmdbatal.SetFocus End With Set Lsiswa2 = Nothing End If
End Sub
Listing Program frmmatapelajaran
Option Explicit Dim Lokasi As String Dim Prod As New Class1 Dim Lmatapelajaran2 As New ADODB.Recordset Dim Lmatapelajaran1 As New ADODB.Recordset
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
97
Dim Lmatapelajaran As New ADODB.Recordset Dim Lmatapelajaran4 As New ADODB.Recordset Dim rsmatapelajaran As ADODB.Recordset Dim rsmatapelajaran1 As ADODB.Recordset Dim rsmatapelajaran2 As ADODB.Recordset Public lst As ListItem Private Sub cmdBatal_Click() Frame3.Enabled = True Frame1.Enabled = True cmdsimpan.Enabled = True cmdedit.Visible = True cmdedit.Enabled = False clrTxt cmdhapus.Enabled = False 'automatapelajaran txtkode_mt.Enabled = True: txtkode_mt.SetFocus End Sub
Private Sub cmdclear_click() Set Prod = New Class1 Lmatapelajaran1.Open "select * from matapelajaran order by kode_mt", cn, adOpenDynamic, adLockOptimistic lv1.ListItems.Clear displayKol End Sub
Private Sub cmdedit_Click() Frame1.Enabled = True Frame3.Enabled = False txtkode_mt.Enabled = False Me.txtnama_kls.SetFocus cmdsimpan.Enabled = True cmdedit.Visible = False cmdhapus.Enabled = False cmdsimpan.Enabled = False cmdupdate.Visible = True End Sub Private Sub cmdhapus_Click() Dim strsql As String If MsgBox("Apakah Data Akan Dihapus..?" _ , vbQuestion + vbYesNo, "Hapus Data") = vbYes Then strsql = "Delete from matapelajaran " _
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
98
& "Where kode_mt='" & txtkode_mt.Text & "'" cn.Execute strsql, , adCmdText MsgBox "Data Sudah Terhapus...!", vbInformation, Me.Caption End If cmdclear_click Call cmdBatal_Click End Sub Private Sub cmdsimpan_Click() Dim strsql As String If txtkode_mt.Text <> "" _ And txtnama_kls.Text <> "" Then strsql = "Insert into matapelajaran " _ & " (kode_mt,nama_kls) " _ & "Values ('" & txtkode_mt.Text & "','" & txtnama_kls.Text & "')" cn.Execute strsql, , adCmdText rsmatapelajaran2.Requery MsgBox "Data matapelajaran Telah Tersimpan..!", vbInformation, Me.Caption cmdclear_click cmdBatal_Click Exit Sub Else MsgBox "Data Belum Lengkap..!", vbInformation, Me.Caption Exit Sub End If End Sub
Private Sub cmdtutup_Click() 'Anim Unload Me End Sub
Private Sub cmdupdate_Click() Dim sekarang As Date Dim strsql As String If txtkode_mt.Text <> "" And txtnama_kls.Text <> "" Then strsql = "update matapelajaran set kode_mt='" & Me.txtkode_mt.Text & "'" _ & ",nama_kls='" & Me.txtnama_kls & "' where kode_mt='" & txtkode_mt.Text & "'" cn.Execute strsql, , adCmdText rsmatapelajaran2.Requery MsgBox "Data matapelajaran Telah Update ..!", vbInformation, Me.Caption cmdclear_click
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
99
cmdBatal_Click Exit Sub Else MsgBox "Data Belum Lengkap..!", vbInformation, Me.Caption Me.txtkode_mt.SetFocus Exit Sub End If End Sub
Private Sub form_activate() txtkode_mt.Text = "" txtkode_mt.SetFocus End Sub Private Sub Form_Load() Lokasi = App.Path Skin1.LoadSkin Lokasi + "\green.skn" Skin1.ApplySkin hWnd Me.txtkode_mt.MaxLength = 2 txtkode_mt.SelStart = 0 txtkode_mt.SelLength = Len(txtkode_mt.Text) cmdhapus.Enabled = False cmdupdate.Visible = False cmdedit.Enabled = False Set Prod = New Class1 Dim strsql As String Set rsmatapelajaran2 = New ADODB.Recordset strsql = " Select * from matapelajaran" rsmatapelajaran2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText 'automatapelajaran Lmatapelajaran1.Open "select * from matapelajaran order by kode_mt", cn, adOpenDynamic, adLockOptimistic displayKol
Set rsmatapelajaran2 = New ADODB.Recordset strsql = " Select * from kelas" rsmatapelajaran2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText Me.txtnama_kls.Clear Do While Not rsmatapelajaran2.EOF Me.txtnama_kls.AddItem rsmatapelajaran2.Fields!nama_kls rsmatapelajaran2.MoveNext Loop
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
100
End Sub
Private Sub clrTxt() txtcari.Text = "" txtnama_kls.Text = "" txtkode_mt.Text = "" End Sub Private Sub Form_Unload(Cancel As Integer) Set cn = Nothing End Sub Private Sub txtcari_Change() If Combo1.ListIndex = 0 Then Set Lmatapelajaran1 = Nothing sql = "select * from matapelajaran where kode_mt like '" & txtcari.Text & "%'" Lmatapelajaran1.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText lv1.ListItems.Clear displayKol Call LoadDataToListView("SELECT * FROM [matapelajaran] WHERE kode_mt LIKE'" & Me.txtcari.Text & "%'", rsmatapelajaran, lv1, 12) Call OpenTable("SELECT * FROM [matapelajaran] WHERE kode_mt='" & Me.txtcari.Text & "'", rsmatapelajaran) With rsmatapelajaran If Not .EOF Then Call RetFields Else 'Call clrTxt End If End With ElseIf Combo1.ListIndex = 1 Then sql = "select * from matapelajaran where nama_kls like '" & txtcari.Text & "%'" Lmatapelajaran1.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText lv1.ListItems.Clear displayKol Call LoadDataToListView("SELECT * FROM [matapelajaran] WHERE nama_kls LIKE'" & Me.txtcari.Text & "%'", rsmatapelajaran, lv1, 12) Call OpenTable("SELECT * FROM [matapelajaran] WHERE nama_kls='" & Me.txtcari.Text & "'", rsmatapelajaran) With rsmatapelajaran If Not .EOF Then Call RetFields Else 'Call clrTxt End If
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
101
End With End If End Sub Private Sub RetFields() ' On Error Resume Next With rsmatapelajaran Me.txtkode_mt.Text = .Fields(0) Me.txtnama_kls.Text = .Fields(1) End With Frame1.Enabled = False cmdhapus.Enabled = True cmdsimpan.Enabled = False cmdbatal.SetFocus cmdedit.Enabled = True End Sub
'---------------------------------VIew list---------------------------Private Sub displayKol() Do While Not Lmatapelajaran1.EOF Set lst = lv1.ListItems.Add(, , Lmatapelajaran1(0), , 1) lst.SubItems(1) = Lmatapelajaran1(1) Lmatapelajaran1.MoveNext Loop Set Lmatapelajaran1 = Nothing End Sub Private Sub lv1_DblClick() If lv1.ListItems.Count = 0 Then MsgBox "Record Belum ada Dalam Tabel!", vbOKOnly + vbInformation, "Pilih..." Else Me.txtkode_mt.Text = lv1.SelectedItem.Text Me.txtnama_kls.Text = lv1.SelectedItem.SubItems(1) Frame1.Enabled = False cmdedit.Enabled = True: cmdhapus.Enabled = True cmdsimpan.Enabled = False End If End Sub Private Sub tampil() clrTxt lv1.ListItems.Clear displayKol End Sub
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
102
Private Sub txtkode_mt_KeyPress(KeyAscii As Integer) 'IsiDataText1 'If (KeyAscii >= Asc("a") And KeyAscii <= Asc("z")) Then 'Beep 'KeyAscii = 0 'End If If KeyAscii = 13 Then If Len(txtkode_mt.Text) < 1 Then MsgBox "matapelajaran Harus isi ", vbInformation, "Lengkapi" txtkode_mt.SetFocus Exit Sub End If Set Lmatapelajaran2 = Nothing sql = "select * from matapelajaran where kode_mt='" & txtkode_mt.Text & "'" Lmatapelajaran2.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText With Lmatapelajaran2 If .BOF And .EOF Then txtnama_kls.SetFocus txtkode_mt.Enabled = False Exit Sub End If MsgBox "kode_mt Tersebut Sudah Ada", vbInformation, "Cari Data" txtkode_mt.Enabled = False txtnama_kls.Text = Lmatapelajaran2!nama_kls Frame1.Enabled = False cmdhapus.Enabled = True cmdedit.Enabled = True cmdsimpan.Enabled = False cmdbatal.SetFocus End With Set Lmatapelajaran2 = Nothing End If
End Sub
Listing Program frmguru
Option Explicit Dim Lokasi As String
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
103
Dim Prod As New Class1 Dim Lguru2 As New ADODB.Recordset Dim Lguru1 As New ADODB.Recordset Dim Lguru As New ADODB.Recordset Dim Lguru4 As New ADODB.Recordset Dim rsguru As ADODB.Recordset Dim rsguru1 As ADODB.Recordset Dim rsguru2 As ADODB.Recordset Public lst As ListItem Private Sub cmdBatal_Click() Frame3.Enabled = True Frame1.Enabled = True cmdsimpan.Enabled = True cmdedit.Visible = True cmdedit.Enabled = False clrTxt cmdhapus.Enabled = False 'autoguru txtnip.Enabled = True: txtnip.SetFocus End Sub Private Sub cmdclear_click() Set Prod = New Class1 Lguru1.Open "select * from guru order by nip", cn, adOpenDynamic, adLockOptimistic lv1.ListItems.Clear displayKol End Sub
Private Sub cmdedit_Click() Frame1.Enabled = True Frame3.Enabled = False txtnip.Enabled = False Me.txtnama_guru.SetFocus cmdsimpan.Enabled = True cmdedit.Visible = False cmdhapus.Enabled = False cmdsimpan.Enabled = False cmdupdate.Visible = True End Sub Private Sub cmdhapus_Click() Dim strsql As String
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
104
If MsgBox("Apakah Data Akan Dihapus..?" _ , vbQuestion + vbYesNo, "Hapus Data") = vbYes Then strsql = "Delete from guru " _ & "Where nip='" & txtnip.Text & "'" cn.Execute strsql, , adCmdText MsgBox "Data Sudah Terhapus...!", vbInformation, Me.Caption End If cmdclear_click Call cmdBatal_Click End Sub Private Sub cmdsimpan_Click() Dim strsql As String If txtnip.Text <> "" _ And txtnama_guru.Text <> "" Then strsql = "Insert into guru " _ & " (nip,nama_guru,alamat,jenkel,agama) " _ & "Values ('" & txtnip.Text & "','" & txtnama_guru.Text & "','" & txtalamat.Text & "','" & txtjenkel.Text & "','" & txtagama.Text & "')" cn.Execute strsql, , adCmdText rsguru2.Requery MsgBox "Data guru Telah Tersimpan..!", vbInformation, Me.Caption cmdclear_click cmdBatal_Click Exit Sub Else MsgBox "Data Belum Lengkap..!", vbInformation, Me.Caption Exit Sub End If End Sub
Private Sub cmdtutup_Click() 'Anim Unload Me End Sub
Private Sub cmdupdate_Click() Dim sekarang As Date Dim strsql As String If txtnip.Text <> "" _ And txtnama_guru.Text <> "" And txtalamat.Text <> "" _ And txtagama.Text <> "" Then strsql = "update guru set nip='" & Me.txtnip.Text & "'" _
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
105
& ",alamat='" & txtalamat & "'" _ & ",jenkel='" & txtjenkel & "'" _ & ",agama='" & txtagama & "'" _ & ",nama_guru='" & Me.txtnama_guru & "' where nip='" & txtnip.Text & "'" '& "jabatan='" & Me.txtjabatan & "' where nip='" & txtnip.Text & "'" cn.Execute strsql, , adCmdText rsguru2.Requery MsgBox "Data guru Telah Update ..!", vbInformation, Me.Caption cmdclear_click cmdBatal_Click Exit Sub Else MsgBox "Data Belum Lengkap..!", vbInformation, Me.Caption Me.txtnip.SetFocus Exit Sub End If End Sub
Private Sub form_activate() txtnip.Text = "" txtnip.SetFocus End Sub Private Sub Form_Load() Lokasi = App.Path Skin1.LoadSkin Lokasi + "\green.skn" ' Skin1.ApplySkin hWnd 'Skin1.LoadSkin Lokasi + "\chizh.skn" 'Skin1.LoadSkin Lokasi + "\Paper.skn" Skin1.ApplySkin hWnd Me.txtnip.MaxLength = 9 txtnip.SelStart = 0 txtnip.SelLength = Len(txtnip.Text) cmdhapus.Enabled = False cmdupdate.Visible = False cmdedit.Enabled = False Set Prod = New Class1 Dim strsql As String Set rsguru2 = New ADODB.Recordset strsql = " Select * from guru" rsguru2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
106
'autoguru Lguru1.Open "select * from guru order by nip", cn, adOpenDynamic, adLockOptimistic displayKol
End Sub
Private Sub clrTxt() txtcari.Text = "" txtnama_guru.Text = "" txtnip.Text = "" txtagama.Text = "" txtalamat.Text = "" txtjenkel.Text = "" End Sub Private Sub Form_Unload(Cancel As Integer) Set cn = Nothing End Sub Private Sub txtcari_Change() If Combo1.ListIndex = 0 Then Set Lguru1 = Nothing sql = "select * from guru where nip like '" & txtcari.Text & "%'" Lguru1.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText lv1.ListItems.Clear displayKol Call LoadDataToListView("SELECT * FROM [guru] WHERE nip LIKE'" & Me.txtcari.Text & "%'", rsguru, lv1, 12) Call OpenTable("SELECT * FROM [guru] WHERE nip='" & Me.txtcari.Text & "'", rsguru) With rsguru If Not .EOF Then Call RetFields Else 'Call clrTxt End If End With ElseIf Combo1.ListIndex = 1 Then sql = "select * from guru where nama_guru like '" & txtcari.Text & "%'" Lguru1.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText lv1.ListItems.Clear displayKol Call LoadDataToListView("SELECT * FROM [guru] WHERE nama_guru LIKE'" & Me.txtcari.Text & "%'", rsguru, lv1, 12)
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
107
Call OpenTable("SELECT Me.txtcari.Text & "'", rsguru) With rsguru If Not .EOF Then Call RetFields Else 'Call clrTxt End If End With
*
FROM
[guru]
WHERE
End If End Sub Private Sub RetFields() ' On Error Resume Next With rsguru Me.txtnip.Text = .Fields(0) Me.txtnama_guru.Text = .Fields(1) Me.txtalamat.Text = .Fields(2) Me.txtjenkel.Text = .Fields(3) Me.txtagama.Text = .Fields(4)
End With Frame1.Enabled = False cmdhapus.Enabled = True cmdsimpan.Enabled = False cmdbatal.SetFocus cmdedit.Enabled = True End Sub
'---------------------------------VIew list---------------------------Private Sub displayKol() Do While Not Lguru1.EOF Set lst = lv1.ListItems.Add(, , Lguru1(0), , 1) lst.SubItems(1) = Lguru1(1) lst.SubItems(2) = Lguru1(2) lst.SubItems(3) = Lguru1(3) lst.SubItems(4) = Lguru1(4) Lguru1.MoveNext Loop Set Lguru1 = Nothing End Sub M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
nama_guru='"
&
108
Private Sub lv1_DblClick() If lv1.ListItems.Count = 0 Then MsgBox "Record Belum ada Dalam Tabel!", vbOKOnly + vbInformation, "Pilih..." Else Me.txtnip.Text = lv1.SelectedItem.Text Me.txtnama_guru.Text = lv1.SelectedItem.SubItems(1) Me.txtalamat.Text = lv1.SelectedItem.SubItems(2) Me.txtjenkel.Text = lv1.SelectedItem.SubItems(3) Me.txtagama.Text = lv1.SelectedItem.SubItems(4)
Frame1.Enabled = False cmdedit.Enabled = True: cmdhapus.Enabled = True cmdsimpan.Enabled = False End If End Sub Private Sub tampil() clrTxt lv1.ListItems.Clear displayKol End Sub
Private Sub txtnama_guru_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txtalamat.SetFocus End If End Sub Private Sub txtalamat_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txtjenkel.SetFocus End If End Sub
Private Sub txtnip_KeyPress(KeyAscii As Integer) 'IsiDataText1 If (KeyAscii >= Asc("a") And KeyAscii <= Asc("z")) Then Beep KeyAscii = 0 End If If KeyAscii = 13 Then If Len(txtnip.Text) < 1 Then MsgBox "guru Harus isi ", vbInformation, "Lengkapi" txtnip.SetFocus
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
109
Exit Sub End If Set Lguru2 = Nothing sql = "select * from guru where nip='" & txtnip.Text & "'" Lguru2.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText With Lguru2 If .BOF And .EOF Then txtnama_guru.SetFocus txtnip.Enabled = False Exit Sub End If MsgBox "NIP Tersebut Sudah Ada", vbInformation, "Cari Data" txtnip.Enabled = False txtnama_guru.Text = Lguru2!nama_guru txtalamat.Text = Lguru2!alamat txtjenkel.Text = Lguru2!jenkel txtagama.Text = Lguru2!agama Frame1.Enabled = False cmdhapus.Enabled = True cmdedit.Enabled = True cmdsimpan.Enabled = False cmdbatal.SetFocus End With Set Lguru2 = Nothing End If
End Sub
Listing Program frmsiswa
Option Explicit Dim Lokasi As String Dim Prod As New Class1 Dim Lsiswa2 As New ADODB.Recordset Dim Lsiswa1 As New ADODB.Recordset Dim Lsiswa As New ADODB.Recordset Dim Lsiswa4 As New ADODB.Recordset Dim rssiswa As ADODB.Recordset Dim rssiswa1 As ADODB.Recordset Dim rssiswa2 As ADODB.Recordset Public lst As ListItem M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
110
Private Sub cmdBatal_Click() Frame3.Enabled = True Frame1.Enabled = True cmdsimpan.Enabled = True cmdedit.Visible = True cmdedit.Enabled = False clrTxt cmdhapus.Enabled = False 'autosiswa txtnis.Enabled = True: txtnis.SetFocus End Sub
Private Sub cmdclear_click() Set Prod = New Class1 Lsiswa1.Open "select * from siswa order by alamat", cn, adOpenDynamic, adLockOptimistic lv1.ListItems.Clear displayKol End Sub
Private Sub cmdedit_Click() Frame1.Enabled = True Frame3.Enabled = False txtnis.Enabled = False Me.txtnama_sis.SetFocus cmdsimpan.Enabled = True cmdedit.Visible = False cmdhapus.Enabled = False cmdsimpan.Enabled = False cmdupdate.Visible = True End Sub Private Sub cmdhapus_Click() Dim strsql As String If MsgBox("Apakah Data Akan Dihapus..?" _ , vbQuestion + vbYesNo, "Hapus Data") = vbYes Then strsql = "Delete from siswa " _ & "Where nis='" & txtnis.Text & "'" cn.Execute strsql, , adCmdText MsgBox "Data Sudah Terhapus...!", vbInformation, Me.Caption End If cmdclear_click Call cmdBatal_Click End Sub
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
111
Private Sub cmdsimpan_Click() Dim strsql As String If txtalamat.Text <> "" And txtnis.Text <> "" _ And txtnama_sis.Text <> "" Then strsql = "Insert into siswa " _ & " (nis,nama_sis,alamat,telp,jenkel,agama,kode_kelas) " _ & "Values ('" & txtnis.Text & "','" & txtnama_sis.Text & "','" & txtalamat.Text & "','" & txttelp.Text & "','" & txtjenkel.Text & "','" & txtagama.Text & "','" & txtkode_kelas.Text & "')" cn.Execute strsql, , adCmdText rssiswa2.Requery MsgBox "Data siswa Telah Tersimpan..!", vbInformation, Me.Caption cmdclear_click cmdBatal_Click Exit Sub Else MsgBox "Data Belum Lengkap..!", vbInformation, Me.Caption Exit Sub End If End Sub
Private Sub cmdtutup_Click() 'Anis Unload Me End Sub
Private Sub cmdupdate_Click() Dim sekarang As Date Dim strsql As String If txtalamat.Text <> "" And txtnis.Text <> "" _ And txtnama_sis.Text <> "" _ And txtjenkel.Text <> "" And txtagama.Text <> "" Then strsql = "update siswa set nis='" & Me.txtnis.Text & "'" _ & ",nama_sis='" & txtnama_sis & "'" _ & ",alamat='" & txtalamat & "' " _ & ",jenkel='" & txtjenkel & "'" _ & ",agama='" & txtagama & "'" _ & ",kode_kelas='" & txtkode_kelas & "'" _ & ",telp='" & Me.txttelp & "' where nis='" & txtnis.Text & "'" '& "tlahir='" & Me.txttlahir & "' where nis='" & txtnis.Text & "'" M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
112
cn.Execute strsql, , adCmdText rssiswa2.Requery MsgBox "Data siswa Telah Update ..!", vbInformation, Me.Caption cmdclear_click cmdBatal_Click Exit Sub Else MsgBox "Data Belum Lengkap..!", vbInformation, Me.Caption Me.txtnis.SetFocus Exit Sub End If End Sub
Private Sub form_activate() txtnis.Text = "" txtnis.SetFocus End Sub Private Sub Form_Load() txtjenkel.Clear txtjenkel.AddItem "P" txtjenkel.AddItem "L" txtagama.AddItem "Islam" txtagama.AddItem "Protestan" txtagama.AddItem "Katolik" txtagama.AddItem "Hindu" txtagama.AddItem "Budha" Lokasi = App.Path Skin1.LoadSkin Lokasi + "\green.skn" Skin1.ApplySkin hWnd Me.txtnis.MaxLength = 5 txtnama_sis.MaxLength = 25 txtnis.SelStart = 0 txtnis.SelLength = Len(txtnis.Text) cmdhapus.Enabled = False cmdupdate.Visible = False cmdedit.Enabled = False Set Prod = New Class1 Dim strsql As String Set rssiswa2 = New ADODB.Recordset strsql = " Select * from siswa" rssiswa2.Open strsql, cn, adOpenDynamic, _
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
113
adLockOptimistic, adCmdText 'autosiswa Lsiswa1.Open "select * from siswa order by nis", cn, adOpenDynamic, adLockOptimistic displayKol
Set rssiswa2 = New ADODB.Recordset strsql = " Select * from kelas" rssiswa2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText Me.txtkode_kelas.Clear Do While Not rssiswa2.EOF Me.txtkode_kelas.AddItem rssiswa2.Fields!kode_kelas rssiswa2.MoveNext Loop
End Sub
Private Sub clrTxt() txtcari.Text = "" txtalamat.Text = "" txtnama_sis.Text = "" txtnis.Text = "" txtjenkel.Text = "" txtagama.Text = "" txttelp.Text = "" txtkode_kelas.Text = "" End Sub Private Sub Form_Unload(Cancel As Integer) Set cn = Nothing End Sub Private Sub txtcari_Change() If Combo1.ListIndex = 0 Then Set Lsiswa1 = Nothing sql = "select * from siswa where nis like '" & txtcari.Text & "%'" Lsiswa1.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText lv1.ListItems.Clear displayKol Call LoadDataToListView("SELECT * FROM [siswa] WHERE nis LIKE'" & Me.txtcari.Text & "%'", rssiswa, lv1, 12) Call OpenTable("SELECT * FROM [siswa] WHERE nis='" & Me.txtcari.Text & "'", rssiswa)
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
114
With rssiswa If Not .EOF Then Call RetFields Else 'Call clrTxt End If End With ElseIf Combo1.ListIndex = 1 Then sql = "select * from siswa where nama_sis like '" & txtcari.Text & "%'" Lsiswa1.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText lv1.ListItems.Clear displayKol Call LoadDataToListView("SELECT * FROM [siswa] WHERE nama_sis LIKE'" & Me.txtcari.Text & "%'", rssiswa, lv1, 12) Call OpenTable("SELECT * FROM [siswa] WHERE nama_sis='" & Me.txtcari.Text & "'", rssiswa) With rssiswa If Not .EOF Then Call RetFields Else 'Call clrTxt End If End With End If End Sub Private Sub RetFields() ' On Error Resume Next With rssiswa Me.txtnis.Text = .Fields(0) Me.txtnama_sis.Text = .Fields(1) Me.txtalamat.Text = .Fields(2) Me.txttelp.Text = .Fields(3) Me.txtjenkel.Text = .Fields(4) Me.txtagama.Text = .Fields(5) Me.txtkode_kelas.Text = .Fields(6) End With Frame1.Enabled = False cmdhapus.Enabled = True cmdsimpan.Enabled = False cmdbatal.SetFocus cmdedit.Enabled = True End Sub M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
115
'---------------------------------VIew list---------------------------Private Sub displayKol() Do While Not Lsiswa1.EOF Set lst = lv1.ListItems.Add(, , Lsiswa1(0), , 1) lst.SubItems(1) = Lsiswa1(1) lst.SubItems(2) = Lsiswa1(2) lst.SubItems(3) = Lsiswa1(3) lst.SubItems(4) = Lsiswa1(4) lst.SubItems(5) = Lsiswa1(5) lst.SubItems(6) = Lsiswa1(6)
Lsiswa1.MoveNext Loop Set Lsiswa1 = Nothing End Sub Private Sub lv1_DblClick() If lv1.ListItems.Count = 0 Then MsgBox "Record Belum ada Dalam Tabel!", vbOKOnly + vbInformation, "Pilih..." Else Me.txtnis.Text = lv1.SelectedItem.Text Me.txtnama_sis.Text = lv1.SelectedItem.SubItems(1) Me.txtalamat.Text = lv1.SelectedItem.SubItems(2) Me.txttelp.Text = lv1.SelectedItem.SubItems(3) Me.txtjenkel.Text = lv1.SelectedItem.SubItems(4) Me.txtagama.Text = lv1.SelectedItem.SubItems(5) Me.txtkode_kelas.Text = lv1.SelectedItem.SubItems(6) Frame1.Enabled = False cmdedit.Enabled = True: cmdhapus.Enabled = True cmdsimpan.Enabled = False End If End Sub Private Sub tampil() clrTxt lv1.ListItems.Clear displayKol End Sub
Private Sub txtnama_sis_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txtalamat.SetFocus End If
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
116
End Sub Private Sub txtalamat_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txttelp.SetFocus End If End Sub Private Sub txttelp_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txtjenkel.SetFocus End If End Sub Private Sub txtjenkel_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txtagama.SetFocus End If End Sub Private Sub txtnis_KeyPress(KeyAscii As Integer) 'IsiDataText1 If (KeyAscii >= Asc("a") And KeyAscii <= Asc("z")) Then Beep KeyAscii = 0 End If If KeyAscii = 13 Then If Len(txtnis.Text) < 1 Then MsgBox "siswa Harus isi ", vbInformation, "Lengkapi" txtnis.SetFocus Exit Sub End If Set Lsiswa2 = Nothing sql = "select * from siswa where nis='" & txtnis.Text & "'" Lsiswa2.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText With Lsiswa2 If .BOF And .EOF Then txtnama_sis.SetFocus txtnis.Enabled = False Exit Sub End If MsgBox "nis Tersebut Sudah Ada", vbInformation, "Cari Data" txtnis.Enabled = False txtnama_sis.Text = Lsiswa2!nama_sis txtalamat.Text = Lsiswa2!alamat txttelp.Text = Lsiswa2!telp
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
117
txtjenkel.Text = Lsiswa2!jenkel txtagama.Text = Lsiswa2!agama txtkode_kelas.Text = Lsiswa2!kode_kelas Frame1.Enabled = False cmdhapus.Enabled = True cmdedit.Enabled = True cmdsimpan.Enabled = False cmdbatal.SetFocus End With Set Lsiswa2 = Nothing End If
End Sub
Listing Program frmnilaisiswa
Option Explicit Dim Lokasi As String Dim Prod As New Class1 Dim Lnilai2 As New ADODB.Recordset Dim Lnilai1 As New ADODB.Recordset Dim Lnilai As New ADODB.Recordset Dim Lnilai4 As New ADODB.Recordset Dim rsnilai As ADODB.Recordset Dim rsnilai1 As ADODB.Recordset Dim rsnilai2 As ADODB.Recordset Public lst As ListItem Private Sub cmdBatal_Click() Frame3.Enabled = True Frame1.Enabled = True cmdedit.Visible = True cmdedit.Enabled = False clrTxt cmdhapus.Enabled = False 'autonilai txtnis.Enabled = True: txtnis.SetFocus End Sub M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
118
Private Sub cmdclear_click() Set Prod = New Class1 Lnilai1.Open "select * from nilai order by nis", cn, adOpenDynamic, adLockOptimistic lv1.ListItems.Clear displayKol End Sub
Private Sub cmdedit_Click() Frame1.Enabled = True Frame3.Enabled = False txtnis.Enabled = False Me.txtnama_kls.SetFocus cmdedit.Visible = False cmdhapus.Enabled = False cmdupdate.Visible = True End Sub Private Sub cmdhapus_Click() Dim strsql As String If MsgBox("Apakah Data Akan Dihapus..?" _ , vbQuestion + vbYesNo, "Hapus Data") = vbYes Then strsql = "Delete from nilai " _ & "Where nis='" & txtnis.Text & "'" cn.Execute strsql, , adCmdText MsgBox "Data Sudah Terhapus...!", vbInformation, Me.Caption End If cmdclear_click Call cmdBatal_Click End Sub Private Sub cmdsimpan_Click() Dim strsql As String If txtnis.Text <> "" _ And txtnama_kls.Text <> "" Then strsql = "Insert into nilai " _ & " (nis,kelas,sem,kode_mt,nekstr,ntgs,nujbln,ntujsem,na,nip) " _ & "Values ('" & txtnis.Text & "','" & txtnama_kls.Text & "','" & txtsem.Text & "','" & txtkode_mt.Text & "','" & txtnekstr.Text & "','" & txtntgs.Text & "','" & txtnujbln.Text & "','" & txtntujsem.Text & "','" & txtna.Text & "','" & txtnip.Text & "')" cn.Execute strsql, , adCmdText rsnilai2.Requery MsgBox "Data nilai Telah Tersimpan..!", vbInformation, Me.Caption cmdclear_click cmdBatal_Click Exit Sub
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
119
Else MsgBox "Data Belum Lengkap..!", vbInformation, Me.Caption Exit Sub End If End Sub
Private Sub cmdtutup_Click() 'Anis Unload Me End Sub
Private Sub cmdupdate_Click() Dim sekarang As Date Dim strsql As String If txtnis.Text <> "" _ And txtnama_kls.Text <> "" And txtkode_mt.Text <> "" Then strsql = "update nilai set nis='" & Me.txtnis.Text & "'" _ & ",kelas='" & txtnama_kls & "' " _ & ",sem='" & txtsem & "' " _ & ",kode_mt='" & txtkode_mt & "' " _ & ",ntgs='" & txtntgs & "'" _ & ",nujbln='" & txtnujbln & "'" _ & ",ntujsem='" & txtntujsem & "'" _ & ",na='" & txtna & "'" _ & ",nip='" & txtnip & "'" _ & ",nekstr='" & Me.txtnekstr & "' where nis='" & txtnis.Text & "'" cn.Execute strsql, , adCmdText rsnilai2.Requery MsgBox "Data nilai Telah Update ..!", vbInformation, Me.Caption cmdclear_click cmdBatal_Click Exit Sub Else MsgBox "Data Belum Lengkap..!", vbInformation, Me.Caption Me.txtnis.SetFocus Exit Sub End If End Sub
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
120
Private Sub form_activate() txtnis.Text = "" txtnis.SetFocus End Sub Private Sub Form_Load() Lokasi = App.Path Skin1.LoadSkin Lokasi + "\green.skn" Skin1.ApplySkin hWnd txtsem.Clear txtsem.AddItem "1" txtsem.AddItem "2" txtsem.AddItem "3" txtsem.AddItem "4" txtsem.AddItem "5" txtsem.AddItem "6"
'Me.txtnis.MaxLength = 4 txtnis.SelStart = 0 txtnis.SelLength = Len(txtnis.Text) cmdhapus.Enabled = False cmdupdate.Visible = False cmdedit.Enabled = False Set Prod = New Class1 Dim strsql As String Set rsnilai2 = New ADODB.Recordset strsql = " Select * from nilai" rsnilai2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText 'autonilai Lnilai1.Open "select * from nilai order by nis", cn, adOpenDynamic, adLockOptimistic displayKol
Set rsnilai2 = New ADODB.Recordset strsql = " Select * from siswa" rsnilai2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText Me.txtnis.Clear Do While Not rsnilai2.EOF Me.txtnis.AddItem rsnilai2.Fields!nis rsnilai2.MoveNext Loop
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
121
Set rsnilai2 = New ADODB.Recordset strsql = " Select * from guru" rsnilai2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText Me.txtnip.Clear Do While Not rsnilai2.EOF Me.txtnip.AddItem rsnilai2.Fields!nip rsnilai2.MoveNext Loop
Set rsnilai2 = New ADODB.Recordset strsql = " Select * from kelas" rsnilai2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText Me.txtnama_kls.Clear Do While Not rsnilai2.EOF Me.txtnama_kls.AddItem rsnilai2.Fields!nama_kls rsnilai2.MoveNext Loop
Set rsnilai2 = New ADODB.Recordset strsql = " Select * from matapelajaran" rsnilai2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText Me.txtkode_mt.Clear Do While Not rsnilai2.EOF Me.txtkode_mt.AddItem rsnilai2.Fields!kode_mt rsnilai2.MoveNext Loop
End Sub
Private Sub clrTxt() txtcari.Text = "" txtnis.Text = "" txtnama_sis.Text = "" txtnama_kls.Text = "" txtsem.Text = "" txtkode_mt.Text = "" txtnekstr.Text = "" txtntgs.Text = "" txtnujbln.Text = "" txtntujsem.Text = "" txtna.Text = ""
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
122
txtnip.Text = "" txtnama_sis.Text = "" txtnama_guru.Text = "" End Sub Private Sub Form_Unload(Cancel As Integer) Set cn = Nothing End Sub Private Sub txtcari_Change() If Combo1.ListIndex = 0 Then Set Lnilai1 = Nothing sql = "select * from nilai where nis like '" & txtcari.Text & "%'" Lnilai1.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText lv1.ListItems.Clear displayKol Call LoadDataToListView("SELECT * FROM [nilai] WHERE nis LIKE'" & Me.txtcari.Text & "%'", rsnilai, lv1, 12) Call OpenTable("SELECT * FROM [nilai] WHERE nis='" & Me.txtcari.Text & "'", rsnilai) With rsnilai If Not .EOF Then Call RetFields Else 'Call clrTxt End If End With ElseIf Combo1.ListIndex = 1 Then sql = "select * from nilai where nama_sis like '" & txtcari.Text & "%'" Lnilai1.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText lv1.ListItems.Clear displayKol Call LoadDataToListView("SELECT * FROM [nilai] WHERE nama_sis LIKE'" & Me.txtcari.Text & "%'", rsnilai, lv1, 12) Call OpenTable("SELECT * FROM [nilai] WHERE nama_sis='" & Me.txtcari.Text & "'", rsnilai) With rsnilai If Not .EOF Then Call RetFields Else 'Call clrTxt End If End With End If End Sub
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
123
Private Sub RetFields() ' On Error Resume Next With rsnilai Me.txtnis.Text = .Fields(0) Me.txtnama_sis.Text = .Fields(1) Me.txtnama_kls.Text = .Fields(2) Me.txtsem.Text = .Fields(3) Me.txtkode_mt.Text = .Fields(4) Me.txtnekstr.Text = .Fields(5) Me.txtntgs.Text = .Fields(6) Me.txtnujbln.Text = .Fields(7) Me.txtntujsem.Text = .Fields(8) Me.txtna.Text = .Fields(9) Me.txtnip.Text = .Fields(10) Me.txtnakhir.Text = .Fields(11) Me.txtpredikat.Text = .Fields(12) End With Frame1.Enabled = False cmdhapus.Enabled = True cmdsimpan.Enabled = False cmdbatal.SetFocus cmdedit.Enabled = True End Sub
'---------------------------------VIew list---------------------------Private Sub displayKol() Do While Not Lnilai1.EOF Set lst = lv1.ListItems.Add(, , Lnilai1(0), , 1) lst.SubItems(1) = Lnilai1(1) lst.SubItems(2) = Lnilai1(2) lst.SubItems(3) = Lnilai1(3) lst.SubItems(4) = Lnilai1(4) lst.SubItems(5) = Lnilai1(5) lst.SubItems(6) = Lnilai1(6) lst.SubItems(7) = Lnilai1(7) lst.SubItems(8) = Lnilai1(8) lst.SubItems(9) = Lnilai1(9) Lnilai1.MoveNext Loop Set Lnilai1 = Nothing End Sub Private Sub lv1_DblClick() If lv1.ListItems.Count = 0 Then MsgBox "Record Belum ada Dalam Tabel!", vbOKOnly + vbInformation, "Pilih..." Else
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
124
Me.txtnis.Text = lv1.SelectedItem.Text Me.txtnama_kls.Text = lv1.SelectedItem.SubItems(1) Me.txtsem.Text = lv1.SelectedItem.SubItems(2) Me.txtkode_mt.Text = lv1.SelectedItem.SubItems(3) Me.txtnekstr.Text = lv1.SelectedItem.SubItems(4) Me.txtntgs.Text = lv1.SelectedItem.SubItems(5) Me.txtnujbln.Text = lv1.SelectedItem.SubItems(6) Me.txtntujsem.Text = lv1.SelectedItem.SubItems(7) Me.txtna.Text = lv1.SelectedItem.SubItems(8) Me.txtnip.Text = lv1.SelectedItem.SubItems(9) Frame1.Enabled = False cmdedit.Enabled = True: cmdhapus.Enabled = True End If End Sub Private Sub tampil() clrTxt lv1.ListItems.Clear displayKol End Sub
Private Sub txtnilai_KeyPress(KeyAscii As Integer) 'IsiDataText1 If KeyAscii = 13 Then txtsks.SetFocus End If If KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or Chr(KeyAscii) = 0 And KeyAscii <> vbKeyBack And KeyAscii <> vbKeyDelete And KeyAscii <> vbKeySpace Then KeyAscii = 0 End If End Sub
Private Sub txtnis_click() Set rsnilai = New ADODB.Recordset Call OpenTable("Select * from siswa where nis='" + Me.txtnis.Text + "'", rsnilai) If Not rsnilai.EOF Then Me.txtnama_sis.Text = rsnilai.Fields!nama_sis End If End Sub Private Sub txtnis_change() Set rsnilai = New ADODB.Recordset Call OpenTable("Select * from siswa where nis='" + Me.txtnis.Text + "'", rsnilai) If Not rsnilai.EOF Then Me.txtnama_sis.Text = rsnilai.Fields!nama_sis End If
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
125
End Sub
Private Sub txtnip_click() Set rsnilai = New ADODB.Recordset Call OpenTable("Select * from guru where nip='" + Me.txtnip.Text + "'", rsnilai) If Not rsnilai.EOF Then Me.txtnama_guru.Text = rsnilai.Fields!nama_guru End If End Sub Private Sub txtnip_change() Set rsnilai = New ADODB.Recordset Call OpenTable("Select * from guru where nip='" + Me.txtnip.Text + "'", rsnilai) If Not rsnilai.EOF Then Me.txtnama_guru.Text = rsnilai.Fields!nama_guru End If End Sub Private Sub txtkopel_change() Set rsnilai = New ADODB.Recordset Call OpenTable("Select * from nekstr where kopel='" + Me.txtkopel.Text + "'", rsnilai) If Not rsnilai.EOF Then Me.txtnekstr.Text = rsnilai.Fields!nekstr Me.txtnip.Text = rsnilai.Fields!nip End If End Sub
Private Sub txtnis_KeyPress(KeyAscii As Integer) 'IsiDataText1 If (KeyAscii >= Asc("a") And KeyAscii <= Asc("z")) Then Beep KeyAscii = 0 End If If KeyAscii = 13 Then If Len(txtnis.Text) < 1 Then MsgBox "nilai Harus isi ", vbInformation, "Lengkapi" txtnis.SetFocus Exit Sub End If Set Lnilai2 = Nothing sql = "select * from nilai where nis='" & txtnis.Text & "'" Lnilai2.Open sql, cn, adOpenKeyset, adLockOptimistic, adCmdText With Lnilai2 If .BOF And .EOF Then txtnama_sis.SetFocus
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
126
txtnis.Enabled = False Exit Sub End If MsgBox "nis Tersebut Sudah Ada", vbInformation, "Cari Data" txtnis.Enabled = False txtnama_sis.Text = Lnilai2!nama_sis txtnama_kls.Text = Lnilai2!kelas txtsem.Text = Lnilai2!sem txtkode_mt.Text = Lnilai2!kode_mt txtnekstr.Text = Lnilai2!nekstr txtntgs.Text = Lnilai2!ntgs txtnujbln.Text = Lnilai2!nujbln txtntujsem.Text = Lnilai2!ntujsem txtna.Text = Lnilai2!na txtnip.Text = Lnilai2!nip txtnakhir.Text = Lnilai2!nakhir txtpredikat.Text = Lnilai2!predikat Frame1.Enabled = False cmdhapus.Enabled = True cmdedit.Enabled = True cmdsimpan.Enabled = False cmdbatal.SetFocus End With Set Lnilai2 = Nothing End If End Sub Private Sub txtntujsem_Change() txtna.Text = Val(Val(txtnekstr.Text) + Val(txtntgs.Text) + Val(txtnujbln.Text) + Val(txtntujsem.Text)) / 4 End Sub Private Sub txtujsem_Change() End Sub
Listing Program frmLaporannilaisiswa
Dim Lokasi As String Option Explicit Dim Prod As New Class1 Dim rsnilai2 As New ADODB.Recordset Private Sub Cetak_Click()
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
127
With CrystalReport1 .DataFiles(0) = App.Path & "\Database\sekolah.Mdb" .ReportFileName = "C:\sekolah\lapnilai.rpt" .SelectionFormula = "{nilai.kelas}= '" & (Me.txtnama_kls.Text) & "' " 'and {krs.semester}= '" & (Me.txtsemester.Text) & "' " '.SelectionFormula = "{nilai.semester}= '" & (Me.txtsemester.Text) & "' and {nilai.kelas}= '" & (Me.txtkelas.Text) & "'" .WindowParentHandle = MDIForm1.hWnd .RetrieveDataFiles .WindowState = crptMaximized .Action = 2 End With End Sub Private Sub cmdClose_Click() Unload Me End Sub Private Sub Form_Load() Set Prod = New Class1 Dim strsql As String Lokasi = App.Path Skin1.LoadSkin Lokasi + "\chizh.skn" Skin1.ApplySkin hWnd Set rsnilai2 = New ADODB.Recordset strsql = " Select * from kelas" rsnilai2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText Me.txtnama_kls.Clear Do While Not rsnilai2.EOF Me.txtnama_kls.AddItem rsnilai2.Fields!nama_kls rsnilai2.MoveNext Loop End Sub
Listing Daftar Siswa Perkelas
Dim Lokasi As String Option Explicit Dim Prod As New Class1 Dim rsnilai2 As New ADODB.Recordset Private Sub Cetak_Click() With CrystalReport1
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009
128
.DataFiles(0) = App.Path & "\Database\sekolah.Mdb" .ReportFileName = "C:\sekolah\lapkelas.rpt" .SelectionFormula = "{nilai.kelas}= '" & (Me.txtnama_kls.Text) & "' " 'and {krs.semester}= '" & (Me.txtsemester.Text) & "' " '.SelectionFormula = "{nilai.semester}= '" & (Me.txtsemester.Text) & "' and {nilai.kelas}= '" & (Me.txtkelas.Text) & "'" .WindowParentHandle = MDIForm1.hWnd .RetrieveDataFiles .WindowState = crptMaximized .Action = 2 End With End Sub Private Sub cmdClose_Click() Unload Me End Sub Private Sub Form_Load() Set Prod = New Class1 Dim strsql As String Lokasi = App.Path Skin1.LoadSkin Lokasi + "\chizh.skn" Skin1.ApplySkin hWnd Set rsnilai2 = New ADODB.Recordset strsql = " Select * from kelas" rsnilai2.Open strsql, cn, adOpenDynamic, _ adLockOptimistic, adCmdText Me.txtnama_kls.Clear Do While Not rsnilai2.EOF Me.txtnama_kls.AddItem rsnilai2.Fields!nama_kls rsnilai2.MoveNext Loop End Sub
M. Irsan Parinduri : Sistem Informasi Nilai Siswa Pada SMU Negeri 2 Medan, 2008. USU Repository © 2009