1 SISTEM INFORMASI NILAI SISWA PADA SMU NEGERI 2 MEDAN

Download tentang Sistem Informasi Nilai Siswa pada SMA Negeri 2 Medan dengan menggunakan aplikasi Microsoft Visual Basic 6.0. Dalam menyelesaikan Tu...

0 downloads 533 Views 5MB Size
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