1
RANCANGAN
SISTEM
INFORMASI
PENERIMAAN
SISWA BARU PADA SDI NURUL AZHAR-TANGERANG
Oleh: FITRIAH 41805010-058
PROGRAM STUDI SISTEM INFORMASI FAKULTAS ILMU KOMPUTER UNIVERSITAS MERCU BUANA JAKARTA 2009
2
RANCANGAN SISTEM INFORMASI PENERIMAAN SISWA BARU PADA SDI NURUL AZHAR-TANGERANG
LAPORAN TUGAS AKHIR Diajukan Untuk Melengkapi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer
Oleh: FITRIAH 41805010-058
PROGRAM STUDI SISTEM INFORMASI FAKULTAS ILMU KOMPUTER UNIVERSITAS MERCU BUANA JAKARTA 2009
LEMBAR PENGESAHAN Yang bertanda tangan di bawah ini menyatakan Laporan Tugas Akhir dari Mahasiswa berikut ini :
Nama
: Fitriah
Nim
: 41805010-058
Fakultas
: Ilmu Komputer
Program Studi
: Sistem Informasi
Judul
: Rancangan Sistem Informasi Penerimaan Siswa Baru Pada SD Islam Nurul Azhar - Tangerang
Telah disidang dan diperiksa dan disetujui sebagai laporan tugas akhir.
Menyetujui, Pembimbing
(Abdusy Syarif, ST., MT)
Mengesahkan :
Mengetahui :
Ketua Program Studi
Koordinator Tugas Akhir
(Sarwati Rahayu, ST., MMSI)
(Nur Ani, ST., MMSI)
i
LEMBAR PERNYATAAN Yang bertanda tangan di bawah ini :
Nama
: Fitriah
Nim
: 41805010-058
Fakultas
: Ilmu Komputer
Program Studi
: Sistem Informasi
Menyatakan bahwa Laporan Tugas Akhir dengan judul : Rancangan Sistem Informasi Penerimaan Siswa Baru pada SD Islam Nurul Azhar Tangerang
Adalah hasil penelitian yang dilakukan oleh penulis sendiri dan bukan merupakan jiplakan, kecuali kutipan-kutipan yang berasal dari sumber-sumber yang tercantum dalam Daftar Pustaka.
Jakarta, Agustus 2009
Fitriah
ii
ABSTRAKSI Dalam era yang terus berkembang, dunia pendidikan merupakan suatu penunjang bagi kader-kader bangsa Indonesia dalam meraih masa depan. Di dalam sebuah lembaga pendidikan terjadi beraneka ragam kegiatan, salah satunya adalah kegiatan Penerimaan Siswa Baru. Pihak lembaga pendidikan memerlukan sistem pelayanan komputerisasi dan proses pengolahan yang dapat menyajikan informasi yang cepat dan tepat. Untuk itu SDI Nurul Azhar merasa perlu untuk meningkatkan mutu pelayanan yang baik kepada calon siswa baru. Ketiadaan sistem komputerisasi membuat pelayanan terhadap calon siswa agak lambat dan kurang optimal. Berdasarkan masalah-masalah tersebut penulis berusaha mengajukan usul untuk memperbaiki sistem Penerimaan Siswa Baru yang terkomputerisasi. Sehingga masalah-masalah yang terjadi dapat teratasi dengan baik, yang pada akhirnya akan meningkatkan mutu pelayanan SDI Nurul Azhar terhadap calon siswa. Rancangan Sistem Penerimaan Siswa Baru meliputi pendaftaran, pembayaran, data siswa yang diterima serta pembuatan laporan-laporan yang berkaitan dengan penerimaan siswa baru. Pada rancangan sistem penerimaan siswa baru ini perlu adanya personil yang bertanggung jawab, yang khusus memelihara dan mengembangkan sistem sehingga bila diperlukan dapat dikerjakan dengan cepat.
Kata Kunci : Rancangan, Penerimaan Siswa Baru, Sistem Informasi.
iii
ABSTRACTION In era always grows, education world is a supporter for indonesia nation cadres in reaching for future. In an education institute happened multifarious activity, one of them is activity receiving of new student. The side education institute requires service system of computerization and processing process which can present information quickly and precise. For the purpose SDI Nurul Azhar feels important to increase quality of good service to new student candidate. No computerization system makes service to rather slow student candidate and less optimal. Based on the problems is writer tries proposes too improve repair system receiving new student which computerized. So problems happened can be overcome carefully, which in end will increase quality of service of SDI Nurul Azhar to student candidate. Receiving system planning of student has just covered registration, payment, student data received and making of reports related to receiving of new student. At receiving system planning of this new student needs existence of personal is holding responsible, special look after and develops system so that if required workability swiftly.
Keyword : Planning, Receiving of New Student, SDI Nurul Azhar
iv
KATA PENGANTAR
Dengan memanjatkan rasa syukur kepada Allah SWT, yang maha pengasih dan maha penyayang yang telah memberikan rahmat serta hidayah-Nya, sehingga laporan tugas akhir ini dapat terselesaikan. Sholawat serta salam tak lupa penulis haturkan kepada Nabi Muhammad SAW beserta keluarga, sahabat, dan para pengikut-Nya. Tugas akhir ini yang berjudul “Rancangan Sistem Informasi Penerimaan Siswa Baru pada SDI Nurul Azhar” dibuat untuk memenuhi persyaratan sebagi salah satu syarat kelulusan pada program strata satu (S1) program studi Sistem Informasi Universitas Mercu Buana. Semoga penulisan tugas akhir ini dapat memberikan manfaat kepada pembaca walaupun masih terbatas kemampuan dan ilmu menulis dalam pembuatan laporan, sehingga laporan ini masih jauh dari sempurna. Oleh karena itu kritik dan saran yang membangun dari pembaca sangat penulis harapkan sehingga dapat terwujud suatu karya tulis yang jauh lebih baik di masa mendatang. Pada kesempatan ini, penulis tak lupa ingin menyampaikan rasa terima kasih yang sebesar-besarnya kepada semua pihak yang telah membantu penulis, baik secra langsung maupun tidak langsung dalam penyusunaan skripsi ini sampai selesai. Dengan kerendahan hati, perkenankanlah penulis menyampaikan rasa terima kasih yang sebesar-besarnya kepada:
v
1. Kedua orang tuaku tercinta, kakak dan adikku yang telah banyak memberikan dukungan moral dan spiritual juga kesabaran pada aku, sehingga aku dapat menyelesaikan tugas akhir ini. 2. Bapak Abdusy Syarif, ST., MT, selaku dosen Pembimbing Tugas Akhir yang telah banyak membantu dan memberi pengarahan kepada penulis. 3. Ibu Sarwati Rahayu, ST., MMSI, selaku Ketua Program Studi Sistem Informasi Universitas Mercu Buana. 4. Ibu Nur Ani, ST., MMSI, selaku Koordinator Tugas Akhir Program Studi Sistem Informasi. 5. Dosen-dosen Sistem Informasi Universitas Mercu Buana yang telah mengajarkan dari semester 1 hingga semester 8. 6. Staff SDI Nurul Azhar yang telah memberikan penulis untuk mengadakan riset. 7. Teman-teman seluruh mahasiswa Sistem Informasi angkatan 2005 yang tidak bisa disebutkan satu persatu. Semua pihak yang membantu dalam penyelesaian laporan tugas akhir ini. Semoga laporan ini bermanfaat bagi kita semua.
Jakarta, Agustus 2009
(Fitriah)
vi
DAFTAR ISI HALAMAN JUDUL LEMBAR PENGESAHAN ............................................................................. i LEMBAR PERNYATAAN ............................................................................. ii ABSTRAKSI ................................................................................................... iii ABSTRACTION.............................................................................................. iv KATA PENGANTAR ..................................................................................... v DAFTAR ISI.................................................................................................... vii DAFTAR GAMBAR ...................................................................................... x DAFTAR TABEL............................................................................................ xii BAB I
BAB II
PENDAHULUAN 1.1
Latar Belakang..................................................................... 1
1.2
Tujuan Penulisan ................................................................. 2
1.3
Rumusan Masalah................................................................ 2
1.4
Batasan Masalah .................................................................. 3
1.5
Metode Penelitian ................................................................ 3
1.6
Sistematika Penulisan .......................................................... 4
LANDASAN TEORI 2.1
Konsep Dasar Sistem ........................................................... 6 2.1.1 Pengertian Sistem ....................................................... 6 2.1.2 Elemen-elemen Sistem ............................................... 7 2.1.3 Klasifikasi Sistem....................................................... 8
2.2
Konsep Dasar Informasi ...................................................... 9 vii
2.2.1 Pengertian informasi .................................................. 9 2.2.2 Kualitas Informasi ...................................................... 9 2.2.3 Nilai Informasi ........................................................... 10 2.3
Konsep Dasar Sistem Informasi .......................................... 10
2.4
Analisa Sistem ..................................................................... 11
2.5
Perancangan Sistem ............................................................. 12
2.6
Konsep Dasar Berorientasi Objek (object Oriented) ........... 14 2.6.1 Unified Modeling Language ....................................... 15 2.6.2 Analisa dan Perancangan Berorientasi Obyek............ 16
2.7
Kamus Data ......................................................................... 28
2.8
Visual Basic .NET 2005 ...................................................... 29
2.9
Database dan Query............................................................. 37
2.10 Pengertian MySql ................................................................ 38 2.11 Konsep Dasar Sistem Informasi Penerimaan Siswa Baru ... 40 BAB III
ANALISA SISTEM 3.1
Tinjauan Organisasi ............................................................. 41 3.1.1 Sejarah tentang berdirinya SD Islam Nurul Azhar .. 41 3.1.2 Visi dan Misi SD Islam Nurul Azhar....................... 41 3.1.3 Struktur Organisasi .................................................. 42 3.1.4 Uraian Tugas ............................................................ 43
3.2
Use Case Diagram ............................................................... 46
3.3
Uraian Prosedur ................................................................... 50
3.4
Identifikasi Kebutuhan......................................................... 53
viii
3.5
Sequence Diagram............................................................... 55
3.6
Perancangan Basis Data....................................................... 61 3.6.1 Bentuk Tidak Normal ................................................ 61 3.6.2 Bentuk Normal Pertama (1 NF) ................................. 62 3.6.3 Bentuk Normal Kedua................................................ 63 3.6.4 Conceptual Diagram................................................... 64
3.7
Spesifikasi Basis Data.......................................................... 65 3.7.1 Kamus Data ................................................................ 69 3.7.2 ERD (Entity Relationship Diagram) .......................... 70
BAB IV
BAB V
IMPLEMENTASI DAN PENGUJIAN 4.1
Instalasi Perangkat Lunak................................................... 76
4.2
Implementasi........................................................................ 76
4.3
Metode Pengujian ................................................................ 86
4.4
Skenario dan Hasil Pengujian dengan metode Black Box... 88
4.5
Pengujian dengan metode White Box.................................. 90
4.6
Analisa Hasil Pengujian dengan Metode White Box .......... 94
PENUTUP 5.1
Kesimpulan .......................................................................... 101
5.2
Saran .................................................................................... 102
DAFTAR PUSTAKA ..................................................................................... 104 LISTING PROGRAM .................................................................................. L1
ix
DAFTAR GAMBAR
Gambar 2.1
Tampilan Visual Basic .Net 2005 ......................................... 30
Gambar 3.1.
Struktur Organisasi SD Islam Nurul Azhar .......................... 42
Gambar 3.2
Use Case Login ..................................................................... 46
Gambar 3.3
Use Case Data Jenis Biaya Dalam Aplikasi.......................... 47
Gambar 3.4
Use Case Transaksi PPSB Dalam Aplikasi........................... 47
Gambar 3.5
Use Case Cetak Laporan PPSB Dalam Aplikasi................... 47
Gambar 3.6
Prosedur Pendaftaran ............................................................ 51
Gambar 3.7
Prosedur Pembayaran............................................................ 52
Gambar 3.8
Prosedur Laporan .................................................................. 53
Gambar 3.9
Sequence Diagram Entry Jenis Biaya ................................... 55
Gambar 3.10
Sequence Diagram Data Pendaftaran.................................... 56
Gambar 3.11
Sequence Diagram Data Pembayaran ................................... 57
Gambar 3.12
Sequence Diagram Daftar Lulus Seleksi............................... 58
Gambar 3.13
Sequence Giagram Laporan Siswa Baru............................... 59
Gambar 3.14
Sequence Diagram Laporan Pembayaran ............................. 60
Gambar 3.15
Entity Relationship Diagram................................................. 70
Gambar 3.16
Struktur Menu Utama............................................................ 71
Gambar 3.17
Tampilan Menu Utama ......................................................... 71
Gambar 3.18
Tampilan Layar Data Biaya .................................................. 72
x
Gambar 3.19
Tampilan Layar Data Pendaftaran ........................................ 72
Gambar 3.20
Tampilan Layar Daftar Lulus Seleksi ................................... 73
Gambar 3.21
Tampilan Layar Data Pembayaran........................................ 74
Gambar 3.22
Tampilan Layar Laporan Siswa Baru ................................... 74
Gambar 3.23
Tampilan Layar Laporan Pembayaran Pendaftaran Siswa ..................................................................................... 75
Gambar 4.1
Layar Login........................................................................... 76
Gambar 4.2
Layar Menu Utama ............................................................... 77
Gambar 4.3
Layar Data Jenis Biaya.......................................................... 79
Gambar 4.4
Layar Data Pendaftaran......................................................... 80
Gambar 4.5
Layar Daftar Lulus Seleksi ................................................... 81
Gambar 4.6
Layar Hasil Cetakan Daftar Lulus Seleksi ............................ 82
Gambar 4.7
Layar Data Pembayaran ........................................................ 83
Gambar 4.8
Layar Hasil Cetakan Kwitansi (Untuk Pembayaran Formulir) ............................................................................... 83
Gambar 4.9
Layar Hasil Cetakan Kwitansi (Untuk Pembayaran Pendaftaran) .......................................................................... 84
Gambar 4.10
Layar Laporan Siswa Baru.................................................... 85
Gambar 4.11
Implementasi Hasil Cetakan Laporan Siswa Baru................ 85
Gambar 4.12
Implementasi Laporan Pembayaran...................................... 86
Gambar 4.13
Layar Hasil Cetakan Laporan Pembayaran........................... 86
xi
DAFTAR TABEL
Tabel 2.1
Notasi Use Case Diagram ........................................................... 17
Tabel 2.2
Notasi Activity Diagram ............................................................. 18
Tabel 2.3
Notasi Sequence diagram............................................................ 20
Tabel 2.4
Tabel notasi Package Diagram.................................................... 21
Tabel 2.5
Menu dan Fungsi Perintah .......................................................... 31
Tabel 2.6
Tombol pada Toolbar.................................................................. 32
Tabel 2.7
Fungsi dan nama kontrol pada toolbox. ...................................... 33
Tabel 3.1
Scenario Login ............................................................................ 48
Tabel 3.2
Scenario Entry Data Biaya .......................................................... 48
Tabel 3.3
Scenario Entry Data Pendaftaran ................................................ 48
Tabel 3.4
Scenario Daftar Lulus Seleksi..................................................... 49
Tabel 3.5
Scenario Data Pembayaran ......................................................... 49
Tabel 3.6
Scenario Cetak Laporan Siswa Baru........................................... 49
Tabel 3.7
Scenario Cetak Laporan Pembayaran ......................................... 50
Tabel 3.8
Spesifikasi Basis Data File Formulir .......................................... 65
Tabel 3.9
Spesifikasi Basis Data File Jns_Biaya ........................................ 67
Tabel 3.10 Spesifikasi Basis Data File Kwitansi .......................................... 68 Tabel 3.11 Spesifikasi Basis Data File Detil_Kwitansi ................................ 68 Tabel 4.1
Skenario dan Hasil Pengujian (Black Box)................................. 88
xii
BAB I PENDAHULUAN
1.1 Latar Belakang Seiring dengan perkembangan ilmu pengetahuan dan teknologi yang sangat pesat telah membuat berbagai perubahan dalam kehidupan manusia, semakin modern tingkat kehidupan manusia maka semakin kompleks pula masalah yang dihadapinya, sehingga semakin canggih pula teknologi–teknologi baru yang diciptakan dan digunakan untuk menanggulangi masalah tersebut. Teknologi informasi termasuk bidang teknologi yang paling cepat mengalami perkembangan dan telah banyak memberikan bantuan dalam usaha-usaha pemecahan masalah terutama dalam bidang usaha dan bisnis. Tepat, cepat, dan akurat sangat dibutuhkan dalam mengelola data yang akan menghasilkan informasi yang baik. Dengan harapan menjadi sekolah yang bermutu, berkualitas dan dapat menghasilkan siswa-siswi yang terampil. Maka SD Islam Nurul Azhar membutuhkan suatu sistem yang dapat membantu kegiatan-kegiatan sekolah. Rancangan sistem ini akan memberikan informasi yang akurat, efisien dan efektif serta membantu mempermudah dalam penyediaan laporan kepada Kepala Sekolah, khususnya dalam kegiatan penerimaan siswa baru. Oleh karena itu penulis akan mencoba menerapkan sistem komputerisasi pada SD Islam Nurul Azhar.
1
2 1.2 Tujuan Penulisan Setelah melihat sistem penerimaan murid baru yang berjalan, penulisan skripsi ini bertujuan memberikan alternatif untuk mengatasi masalah yang selama ini dihadapi dalam proses penerimaan murid baru. Rancangan sistem penerimaan murid baru ini memungkinkan untuk dapat dilaksanakan proses penerimaan murid baru dengan terkomputerisasi sehingga akan berjalan lebih lancar. 1. Memperbaiki sistem yang masih manual menjadi terkomputerisasi. 2. Memberikan suatu alternatif rancangan sistem informasi, terutama kepada panitia penerimaan siswa baru agar dapat diperoleh hasil seleksi dengan cepat dan akurat serta mendapatkan hasil seperti yang diharapkan. 3. Mempercepat pembuatan laporan untuk diserahkan kepada Kepala Sekolah.
1.3 Rumusan Masalah Didalam penyusunan skripsi ini penulis menekankan pada sistem penerimaan siswa baru, oleh sebab itu berdasarkan faktor tersebut di atas maka penulis akan merumuskan masalah : 1. Bagaimana penerapan sistem informasi penerimaan siswa baru pada SDI Nurul Azhar ?. 2. Bagaimana sistem informasi penerimaan siswa baru yang diterapkan oleh SDI Nurul Azhar dapat meningkatkan kinerja para staff-staff yang terlibat pada proses penerimaan siswa baru ?
3 1.4 Batasan Masalah Agar penulisan ini menjadi lebih jelas, maka penyusunanya dibatasi pada permasalahan yang dititik beratkan pada sistem penerimaan siswa baru pada tahun ajaran baru menjadi kegiatan rutin sekolah. Adapun ruang lingkup permasalahan yang akan dibahas dalam tugas akhir ini meliputi pendataan calon siswa, data siswa yang diterima, pembayaran dana pengembangan sekolah serta pembuatan laporan. Aplikasi yang dibuat menggunakan Visual Basic .NET 2005 dengan MySQL.
1.5 Metode Penelitian Penulis menggunakan beberapa metode penelitian untuk memperoleh informasi dan yang berhubungan dengan sistem penerimaan siswa baru. Baik berupa dokumen maupun prosedur yang membantu dalam melakukan kegiatan pengumpulan informasi dan data. Adapun metode ini antara lain : 1. Metode Pengamatan Lapangan (Observasi) Penulis melakukan pengamatan secara langsung kebagian yang berhubungan dengan penerimaan siswa baru khusunya divisi PSB (Penerimaan Siswa Baru). Untuk mendapatkan gambaran yang jelas mengenai pelaksanaan sistem yang berjalan. Kegiatan ini diperlukan kegiatan langsung dari sumbernya.
2. Wawancara Wawancara adalah suatu cara untuk mendapatkan informasi yang benar-benar dapat dipertanggung jawabkan, jawaban yang diperoleh sesuai dengan pertanyaan
4 yang diajukan. Wawancara dilakukan atas pertanyaan yang berkaitan dengan alur permasalahan baik tingkat pimpinan maupun tingkat pelaksana. 3. Kepustakaan Kegiatan kepustakaan dilakukan dengan membaca dan mempelajari bukubuku yang membahas sistem informasi dan buku-buku yang ada hubungannya dengan sistem pendidikan terutama dalam hal penerimaan siswa baru.
1.6 Sistematika Penulisan Keseluruhan skripsi ini dibagi menjadi 5 (lima) bab, dengan pokok pemikiran dari tiap-tiap bab sebagai berikut : BAB I :
PENDAHULUAN Bab ini menguraikan hal-hal yang berhubungan dengan latar belakang, tujuan penulisan, rumusan masalah, batasan masalah, metode penelitian dan sistematika penulisan.
BAB II :
LANDASAN TEORI Bab ini membahas tentang teori-teori mengenai konsep dasar sistem, konsep dasar informasi, konsep dasar sistem informasi, konsep analisa dan perancangan, teori tentang UML antara lain mengenai use case diagram, activity diagram, sequence diagram, serta konsep dasar sistem penerimaan murid baru.
5 BAB III :
ANALISA SISTEM dan PERANCANGAN Bab ini menguraikan mengenai tinjauan struktur organisasi dan uraian tugas. Analisis terhadap permasalahan yang dihadapi serta kebutuhan software dari segi fungsi dan data.
BAB IV :
IMPLEMENTASI DAN PENGUJIAN Pada bab ini akan menerangkan dan menjelaskan aplikasi program yang telah dibuat yaitu program mengenai sistem informasi pendaftaran siswa baru pada SD Islam Nurul Azhar. Serta melakukan pengujian menggunakan metode Black Box dan White Box.
BAB V :
PENUTUP Bab ini menguraikan tentang kesimpulan yang di peroleh dari tahap-tahap analisa dan saran penulis dari hasil rancangan yang sudah diusulkan.
BAB II LANDASAN TEORI
2.1
Konsep Dasar Sistem
2.1.1 Pengertian Sistem Terdapat dua kelompok pendekatan di dalam mendefinisikan sistem, yaitu yang menekankan pada prosedurnya dan yang menekankan pada komponenya atau elemennya. Pendekatan sistem yang lebih menekankan pada prosedur menurut
Jogiyanto HM (2005) : adalah suatu jaringan kerja dari prosedur-
prosedurnya
yang saling berhubungan,
berkumpul
bersama-sama
untuk
melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran tertentu. Pendekatan sistem yang merupakan jaringan kerja dari prosedur lebih menekankan urut-urutan operasi di dalam sistem. Prosedur (procedure) didefinisikan oleh Richard F. Neuschel : adalah suatu urut-urutan operasi klerikal (tulis menulis), biasanya melibatkan beberapa orang di dalam satu atau lebih departemen, yang diterapkan untuk menjamin penanganan yang seragam dari transaksi-transaksi bisnis yang terjadi. Pendekatan sistem yang lebih menekankan pada elemen atau komponenya Jogiyanto HM (2005) : adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai tujuan tertentu.
6
7 2.1.2
Elemen-elemen Sistem
Menurut Andri Kristanto (2008). Elemen-elemen yang terdapat dalam sistem meliputi: tujuan sistem, batasan sistem, kontrol, input, proses, output dan umpan balik. Tujuan, batasan dan kontrol sistem akan berpengaruh pada input, proses dan output. Input yang masuk dalam sistem akan diproses dan diolah sehingga menghasilkan output. Output tersebut akan dianalisa dan akan menjadi umpan balik bagi si penerima dan umpan balik ini akan muncul segala macam pertimbangan untuk input selanjutnya. Selanjutnya input ini akan berlanjut dan berkembang sesuai dengan permasalahan yang ada. 1. Tujuan Sistem Tujuan sistem merupakan tujuan dari sistem tersebut dibuat. Tujuan sistem dapat berupa tujuan organisasi, kebutuhan organisasi, permasalahan yang ada dalam suatu organisasi maupun urutan prosedur untuk mencapai tujuan organisasi. 2. Batasan Sistem Batasan sistem merupakan sesuatu yang membatasi sistem dalam mencapai tujuan sistem. 3. Kontrol Sistem Kontrol
atau
pengawasan
sistem
merupakan
pelaksanaan pencapaian tujuan dari sistem tersebut.
pengawasan
terhadap
8 4. Input Input merupakan elemen dari sistem yang bertugas untuk menerima seluruh masukan data, dimana masukan tersebut dapat berupa jenis data, frekuensi pemasukan data dan sebagainya. 5. Proses Proses merupakan elemen dari sistem yang bertugas untuk mengolah atau memproses seluruh masukan data menjadi suatu informasi yang berguna. 6. Output Output merupakan hasil dari input yang telah diproses oleh bagian pengolah dan merupakan tujuan akhir sistem. 7. Umpan balik Umpan balik merupakan elemen dalam sistem yang bertugas mengevaluasi bagian dari output yang dikeluarkan, dimana elemen ini sangat penting demi kemajuan sebuah sistem.
2.1.3
Klasifikasi Sistem Sistem dapat di klasifikasikan dari beberapa sudut pandangan Jogiyanto
HM (2005), diantaranya adalah sebagai berikut ini: Sistem diklasifikasikan sebagai sistem abstrak (abstract system) dan sistem fisik (physical system). 1. Sistem diklasifikasikan sebagai sistem alamiah (natural system) dan sistem buatan manusia (human made system).
9 2. Sistem diklasifikasikan sebagai sistem tertentu (deterministic system) dan sistem tak tentu (probabilistic system). 3. Sistem diklasifikasikan sebagai sistem tertutup (closed system) dan sistem terbuka (open system).
2.2
Konsep Dasar Informasi
2.2.1 Pengertian informasi Menurut Jogiyanto HM (2005), informasi ibarat darah yang mengalir di dalam tubuh suatu organisasi, sehingga informasi ini sangat penting di dalam suatu organisasi. Informasi menurut Robert N. Anthony dan John Dearden (information) : adalah data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya.
2.2.2 Kualitas Informasi Menurut Jogiyanto HM (2005) Kualitas dari suatu informasi (quality of information) tergantung dari tiga hal, yaitu informasi harus akurat (accurate), tepat pada waktunya (timeliness) dan relevan (relevance). John Burch dan Gary Grudnitski menjelaskan kualitas informasi sebagai berikut: 1. Akurat Berarti informasi harus bebas dari kesalahan-kesalahan dan tidak bias atau menyesatkan. 2. Tepat pada waktunya Berarti informasi yang datang pada penerima tidak boleh terlambat.
10 3. Relevan Berari informasi tersebut mempunyai manfaat untuk pemakainya. 2.2.3 Nilai Informasi Menurut Jogiyanto HM (2005), nilai dari informasi (value of information) ditentukan dari dua hal, yaitu manfaat dan biaya mendapatkannya. Suatu informasi dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya. Akan tetapi perlu diperhatikan bahwa informasi yang digunakan di dalam suatu sistem informasi umumnya digunakan untuk beberapa kegunaan. Sehingga tidak memungkinkan dan sulit untuk menghubungkan suatu bagian informasi pada suatu masalah yang tertentu dengan biaya untuk memperolehnya, karena sebagian besar informasi dinikmati tidak hanya oleh satu pihak di dalam perusahaan. Lebih lanjut sebagian besar informasi tidak dapat persis ditaksir. Keuntungannya dengan suatu nilai uang, tetapi dapat ditaksir nilai efektivitasnya. Pengukuran nilai informasi biasanya dihubungkan dengan analisis cost effectiveness atau cost benefit.
2.3 Konsep Dasar Sistem Informasi Telah diketahui bahwa informasi merupakan hal yang sangat penting bagi manajemen di dalam pengambilan keputusan. Informasi dapat diperoleh dari sistem informasi (information system) atau disebut juga dengan processing systems atau information processing system atau information-generating system. Menurut Jogiyanto HM (2005) Sistem informasi didefinisikan oleh Robert A. Leitch dan K. Roscoe Davis :
11 adalah suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi, bersifat manajerial dan kegiatan stategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan.
2.4 Analisa Sistem Definisi analisis sistem menurut Jogiyanto HM (2005 ) adalah : Penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponenya dengan maksud untuk mengidentifikasikan dan mengevaluasi permasalahanpermasalahan, kesempatan-kesempatan, hambatan-hambatan yang terjadi dan kebutuhan-kebutuhan yang diharapakan sehingga dapat diusulkan perbaikanperbaikannya. Tahap analisis sistem dilakukan setelah tahap perencanaan sistem (system planning) dan sebelum tahap desain sistem (system design). Tahap analisis merupakan tahap yang kritis dan sangat penting, karena kesalahan di dalam tahap ini akan menyebabkan juga kesalahan di tahap selanjutnya. Langkah-langkah di dalam tahap analisis sistem hampir sama dengan langkahlangkah yang dilakukan dalam mendefinisikan proyek-proyek sistem yang akan dikembangkan di tahap perencanaan sistem. Perbedaannya terletak pada ruang lingkup tugasnya. Di analisis sistem ini, penelitian yang dilakukan oleh analisis sistem merupakan penelitian terinci, sedangkan diperencanaan sistem sifatnya hanya penelitian pendahuluan.
12 Di dalam tahap analisis sistem terdapat langkah-langkah dasar yang harus dilakukan oleh analis sistem sebagai berikut ini. 1. Identify, yaitu mengidentifikasi masalah. 2. Understand, yaitu memahami kerja dari sistem yang ada 3. Analyze, yaitu menganalisis sistem 4. Report, yaitu membuat laporan hasil analisis. 2.5
Perancangan Sistem Perancangan sistem (system design) adalah tahap lanjutan setelah kita berhasil
menganalisa sistem. Perancangan sistem adalah spesifikasi atau konstruksi teknis, berdasarkan solusi komputerisasi atas identifikasi kebutuhan bisnis di dalam proses analisa sistem (Whitten dkk, 2004). Desain sistem dapat didefinisikan sebagai berikut (Jogiyanto HM, 2005). Menurut Robert J. Verzello/ John Reuter III adalah : Pendefinisian dari kebutuhan-kebutuhan
fungsional
dan
persiapan
untuk
rancang
bangun
implementasi, menggambarkan bagimana suatu sistem dibentuk. Tujuan dari perancangan sistem adalah: 1. Untuk memenuhi kebutuhan pemakai sistem. 2. Untuk memberikan gambaran yang jelas dan rancang yang lengkap kepada pemrogram komputer (programmer) dan ahli-ahli teknik lainnya yang terlibat. Dalam suatu perancangan sistem informasi terdiri dari rancangan komponenkomponen.
Komponen-komponen
ini
dirancang
dengan
tujuan
dikomunikasikan kepada user atau pemakai. Secara umum sebagai berikut:
untuk
13
1. Perancangan Model Rancangan model dari sistem informasi yang diusulkan dalam bentuk fisik dan model logika. Bagan alur sistem merupakan alat tepat untuk menggambarkan sistem fisik. Model logika dari sistem informasi lebih menjelaskan pada user, bagaimana nantinya fungsi-fungsi dari sistem informasi secara logika akan bekerja. Model logika akan digambarkan dengan menggunakan sequence diagram. 2. Perancangan Keluaran Keluaran merupakan produk dari sistem informasi yang dapat dilihat. Istilah keluaran dapat terdiri dari berbagai jenis. Yang dimaksud keluaran dari rancangan sistem ini adalah keluaran yangberupa tampilan di media kertas atau layar komputer. 3. Perancangan Masukkan Alat masukan dapat dikategorikan ke dalam dua golongan yaitu alat input langsung dan alat input tidak langsung. Alat input langsung berupa alat yang langsung dihubungkan dengan CPU (central processing unit) sedangkan alat masukan tidak langsung dihubungkan ke CPU. 4. Perancangan Basis Data Basis data merupakan kumpulan dari data yang berhubungan satu dengan yang lainnya. Data tersebut tersimpan di simpanan luar komputer dan dipergunakan perangkat lunak (software) untuk menampilkannya.
14
2.6 Konsep Dasar Berorientasi Objek (object Oriented) Definisi objek menurut Arief Prayoga (2008), yang diartikan oleh Coad Yourdon: adalah : abstraksi dari sebuah entitas nyata maupun tak nyata mengenai informasi mana yang harus disimpan. Sedangkan Rumbaugh mengartikan: Objek merupakan sebuah konsep, abstraksi atau sesuatu di dunia dengan batas - batas yang jelas, memiliki makna yang memberi penjelasan permasalahan di kehidupan nyata yang akan membantu pengimplementasian oleh komputer, sebuah objek dinilai memiliki state dan identitas. Berorientasi objek merupakan sebuah paradigma yang menggunakan objek sebagai abstraksi dunia nyata, dalam lingkup berorientasi objek dikenal beberapa istilah: 1. Encapsulation yaitu integrasi data dengan proses. 2. Class yaitu kumpulan objek dan proses yang sama. 3. Inheritance adalah penurunan atribut atau method dari suatu object class kepada object class yang lainnya. 4. Polimorfisme yaitu konsep yang menyatakan bahwa sesuatu yang sama dapat mempunyai bentuk dan perilaku berbeda. Metodologi adalah suatu cara, sekumpulan aktivitas atau proses yang terdiri dari identifikasi, analisa, desain dan solusi teknis untuk menyelesaikan suatu permasalahan. Metodologi berorientasi objek adalah metode penyelesaian masalah dengan menggunakan pendekatan berorientasi objek.
15
2.6.1
Unified Modeling Language
UML
adalah
bahasa
spesifikasi
standar
untuk
mendokumentasikan,
menspesifikasikan, dan membangun sistem perangkat lunak. Diagram-diagram UML terbagi menjadi tiga kategori: 1. Structural Diagram: Digunakan untuk menampilkan entiti dunia nyata, elemen dari analisa dan desain, atau implementasi class dan relasinya. 2. Behavioral Diagram: kita menggunakan behavioral diagram untuk menampilkan bagaimana sistem kita merespon permintaan atau apa saja seiring waktu. 3. Interaction diagram: merupakan tipe dari behavioral diagram. Kita menggunakan interaction diagram untuk melukiskan perubahan dari pesanpesan dalam suatu kolaborasi (kumpulan dari object-object yang sama) sehingga tujuan bisa tercapai. Karena UML sangatlah fleksibel, kita akan menjumpai berbagai cara dalam mengkategorikan diagram kita. Pohon kategori di bawah ini cukup terkenal : 1. Static diagram: Menampilkan fitur statis dari sistem. Kategori ini hampir sama dengan structural diagram. 2. Dynamic diagram: Menampilkan bagaimana proses perubahan yang terjadi dalam sistem sepanjang waktu. Kategori ini mencakup UML statemachine diagram dan timing diagram. 3. Functional diagram: Menampilkan detail dari proses dan algoritma. Kategori ini mencakup use case, interaction, dan activity diagram.
16
2.6.2
Analisa dan Perancangan Berorientasi Obyek
Analisa dan perancangan berorientasi obyek berarti merumuskan dan menyelesaikan masalah serta menghasilkan suatu hipotesa atau diagnosa (solusi), memodelkannya dengan pendekatan/ paradigma obyek (obyek adalah riil punya atribut/data dan perilaku). Kegiatan-kegiatan yang dilakukan dalam tahap analisa berorientasi obyek adalah sebagai berikut: 1. Menganalisa sistem yang ada dan mempelajari apa yang dikerjakan oleh sistem yang ada. 2. Menspesifikasikan sistem yaitu menspesifikasikan masukan yang digunakan database yang ada, proses yang dilakukan dan keluaran yang dihasilkan. Pendekatan-pendekatan yang digunakan dalam analisa berorientasi obyek adalah sebagai berikut : 1.
Pendekatan top down yaitu memecahkan masalah ke dalam bagian-bagian terkecil atau perlevel sehingga mudah untuk diselesaikan.
2.
Pendekatan modul yaitu membagi sistem ke dalam modul-modul yang dapat beroperasi tanpa ketergantungan.
3.
Penggunaan alat-alat bantu dalam bentuk grafik dan teks sehingga mudah untuk mengerti serta dapat dikoreksi apabila terjadi perubahan. Pendekatan dalam analisa berorientasi obyek dilengkapi dengan alat-alat dan
teknik-teknik yang dibutuhkankan dalam pengembangan sistem, sehingga hasil akhir dari sistem yang dikembangkan akan didapatkan sistem yang terdefinisi
17 dengan baik dan jelas. Alat bantu yang digunakan dalam analisa berorientasi obyek sebagai berikut: 1. Diagram Use Case (Use Case Diagram) Use case adalah deskripsi fungsi dari sebuah sistem dari perspektif/sudut pandang para pengguna sistem. Use case mendefinisikan “apa” yang dilakukan oleh sistem dan elemen-elemennya, bukan “bagaimana” sistem dan elemenelemennya saling berinteraksi. Use case bekerja dengan menggunakan “scenario”, yaitu deskripsi urutan-urutan langkah yang menerangkan apa yang dilakukan penggunan
terhadap
sistem
maupun
sebaliknya.
Use
case
diagram
mengidentifikasikan fungsionalitas yang dipunyai oleh sistem (usecase), user yang berinteraksi dengan sistem (actor) dan asosiasi/keterhubungan antara user dengan fungsionalitas sistem. Komponen notasi dasar yang dipunyai oleh usecase diagram adalah actor, use-case, dan association. Berikut adalah notasi yang terdapat pada use-case diagram : Tabel 2.1 Notasi Use Case Diagram Notasi
Nama
Keterangan
Simbol Aktor
Menggambarkan seseorang atau sesuatu yang berinteraksi dengan sistem yang akan dikembangkan
18 Use Case Gambaran
dari
perilaku
(behavior) sistem serangkaian kegiatan dalam bentuk dialog yang dilakukan oleh sistem. Arus
Menggambarkan aliran data.
2. Diagram Aktivitas (Activity Diagram) Activity diagram digunakan untuk mendokumentasikan alur kerja pada sebuah sistem, yang dimulai dari pandangan business level hingga ke operational level. Pada dasarnya, activity diagram merupakan variasi dari statechart diagram. Activity diagram mempunyai peran seperti halnya flowchart, akan tetapi perbedaannya dengan flowchart adalah activity diagram bisa mendukung perilaku parallel sedangkan flowchart tidak bisa. Berikut adalah notasi activity diagram : Tabel 2.2 Notasi Activity Diagram Notasi
Nama Simbol
Keterangan
Start Point
Diletakan pojok kiri atas dan merupakan awal aktivitas.
End Point
Akhir aktivitas
Activity
Menggambarkan proses bisnis dan dikenal sebagai activity state
19
3. Diagram Urutan (Sequence Diagram) Sequence diagram mendokumentasikan komunikasi/ interaksi antar kelaskelas. Diagram ini menunjukkan sejumlah obyek dan message (pesan) yang diletakkan diantara obyek-obyek didalam use case. Perlu diingat bahwa di dalam diagram ini, kelas-kelas dan aktor-aktor diletakkan dibagian atas diagram dengan urutan dari kiri ke kanan dengan garis lifeline yang diletakkan secara vertikal terhadap kelas dan aktor. Berikut adalah komponen-komponen dalam Sequence Diagram diantaranya : a. Boundary Kelas Boundary memodelkan bagian dari sistem yang bergantung pada pihak lain disekitarnya dan merupakan pembatas sistem dengan dunia luar, contohnya user interace communication protocol, printer, sensor, dll. b. Control Kelas control mengkoordinasikan perilaku sistem dan menggambarkan dinamika dari suatu sistem, menangani tugas utama dan mengontrol alur kerja suatu sistem c. Entity Kelas Entity memodelkan informasi yang harus disimpan oleh sistem. d.
Messages Menunjukan arah messages. Yang di gambarkan dengan garis panah terbuka.
20 e. Asynchronous message Sebuah messages yang dikirim dimana pengirim tidak perlu menunggu hasil dari sebuah message. Biasanya digunakan untuk mengirim message ke hardware/ software service. Digambarkan dengan partial arrowhead. f. Return values Menggambarkan hasil dari pengiriman messages, digambarkan dengan garis panah terputus. g. Object lifelines Menggambarkan hasil pengiriman rentang/ masa hidup objek. Digambarkan dengan garis terputus yang bergantung pada boundary/ control/ entity. Berikut ini adalah notasi dari diagram urutan:
Tabel 2.3 Notasi Sequence diagram Notasi
Nama Simbol
Keterangan
Activation
Menambahkan periode selama actor atau obyek sedang melakukan tindakan
message() Message
Lifeline
Pengiriman pesan
Menambahkan permulaan dan menghentikan titik dari suatu obyek
21 Object Lifeline
Menambahkan keberadaan dari obyek pada situasi tertentu
Control
Mengontrol aktivitas-aktivitas yang dilakukan oleh sebuah kegiatan
Boundary
Menghubungkan user dengan sistem
Entity
Entitas yang mempunyai atribut yang memiliki data yang bisa direkam
4. Package Diagram Package diagram adalah pengelompokkan konstruksi yang memungkinkan untuk mengambil konstruksi tersebut di UML dan mengelompokkan elemenelemen tersebut secara bersama-sama menjadi level yang lebih tinggi. Manfaat utama penggunaan package adalah penerapannya pada sistem skla besar untuk mendapatkan gambaran saling ketergantungan diantara component-component utama pada sistem. Berikut ini adalah notasi dari package diagram: 2.4 Tabel notasi Package Diagram Notasi
Package
Nama Simbol
Keterangan
Package
Mendefinisikan object
suatu
22 Dependency
Jalur
komunikasi
diantara node Object Object
Menunjukan relasi yang kompleks yang ada pada suatu class
5. Class Diagram Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah obyek dan merupakan inti dari pengembangan dan desain berorientasi obyek. Class menggambarkan keadaan (atribut / properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda / fungsi). Class diagram menggambarkan struktur dan deskripsi class, package dan obyek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok, yaitu : 1) Nama (dan stereotype) 2) Atribut 3) Methode Hubungan antar class diantaranya : 1) Private, tidak dapat dipanggil dari luar class yang bersangkutan 2) Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya 3) Public, dapat dipanggil oleh siapa saja
Supplier Kd_supp Nm_supp Alm_supp Add() Get()
Class Name Atribut / Property / Data
Methode / Function /Behaiour
23 Perancangan berorientasi obyek merupakan tahap lanjutan setelah analisa sistem yang merupakan proses spefikasi yang terperinci atau pendefinisian dari kebutuhan-kebutuhan
fungsional
dan
persiapan
untuk
rancang
bangun
implementasi yang menggambarkan bagaimana suatu sistem dibentuk. Untuk mengembangkan suatu sistem baru dilakukan dengan menguraikan hubungan proses-proses dalam bentuk diagram-diagram. Fokus dari desain obyek adalah perancangan struktur data dan algoritma yang diperlukan untuk implementasi setiap kelas. Perancangan berorientasi obyek bertujuan untuk : 1. Sistematika prosses desain 2. Menghasilkan pendesainan model diagram. Tahap-tahap dalam perancangan obyek adalah sebagai berikut: 1. Perancangan Basis Data Merupakan tahap merancang basis data yang akan diterapkan oleh sistem. Berbeda dengan langkah-langkah yang dilakukan dalam perancangan sistem terstruktur, secara garis besar tahap dalam merancang basis data pada perancangan berorientasi obyek adalah sebagai berikut : a. Model konseptual Merupakan bagian yang paling penting dalam proses analisis yang berorientasi
obyek.
Karena
dalam
model
konseptual
dalam
implementasinya menggunakan database relational, maka modelnya menggunakan ERD (Entity Relationship Diagram). Sedangkan LRS (Logical Record Structure) terdiri dari link-link antar record, link ini menunjukkan arah dari satu tipe record lainnya.
24 b. Diagram Entitas (Entity Relationship Diagram) 1) Entitas (Entity) Sesuatu apa saja yang terdapat dalam sistem (orang, benda, lokasi, kejadian), nyata maupun abstrak dimana data tersimpan.
2) Relasi (Relationship) Hubungan alamiah yang terjadi antar entitas dan diberi nama dengan kata kerja.
Menurut tingkat hubungan (cardinality) ada 3 jenis hubungan Cardinality : a) One to One (1 : 1) Tingkat hubungan dinyatakan pada satu, jika satu kejadian pada entitas petama, hanya mempunyai satu hubungan dengan satu hubungan entitas lainnya. b) One to Many (1 : M) Tingkat hubungan satu pada banyak masalah adalah sama dengan banyak pada satu. c) Many to Many (M : N) Tingkat hubungan banyak pada banyak terjadi jika setiap kejadian pada sebuah entitas akan mempunyai banyak hubungan dengan kejdian pada entitas lainnya.
25 3) Atribut Sesuatu yang menjelaskan apa yang sebenarnya yang dimaksud entitas dan relationship atau elemen dari setiap entitas dan relationship. Dari setiap atribut entitas terdapat satu atribut yang dijadikan kunci (key). Ada beberapa jenis key, yaitu: a) Primary Key Field yang mengidentifikasikan sebuah record dalam file yang bersifat unik. b) Secondary Key Field yang mengidentiikasikan sebuah record dalam file yang tidak bersifat unik. c) Candidate key Field yang bisa dipilih (dipakai) menjadi “Primary Key”. d) Alternate Key Field yang tidak dapat terpilih menjadi “Primary Key” dari beberapa “Candidate Key”. e) Composite Key Primary Key yang dibentuk dari beberapa field. f) Foreign Key Field yang bukan key, tetapi merupakan key pada file lain. c. Normalisasi Normalisasi merupakan proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entity dan relasinya. Pada proses
26 normalisasi selalu diuji pada beberapa kondisi, apakah ada kesulitan pada saat menambah / insert, menghapus / delete, mengubah / update, dan membaca / retrieve pada suatu Database. Normalisasi lebih difokuskan pada tinjauan komprehensif terhadap setiap kelompok data (table) secara individual. Lebih jauh tinjauan tersebut dititikberatkan pada data di masing-masing kolom pembentuk tabel. 1) Bentuk Tidak Normal Pertama (Unnormalized Form) Bentuk ini merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikuti format tertentu. Dapat saja data tidak lengkap. Data dikumpulkan apa adanya sesuai dengan menginputnya. 2) Bentuk Normal Pertama (First Normal Form/ 1NF) Yaitu menghilangkan beberapa group elemen berulang (repeating group) agar menjadi satu harga tunggal yang berinteraksi diantara setiap baris dan kolom pada suatu tabel atau suatu tabel dikatakan sudah berada pada 1NF jika dan hanya jika semua nilai atributnya adalah atomic (tunggal). 3) Bentuk Normal Kedua (Second Normal Form / 2 NF) Suatu relasi dikatakan dalam bentuk normal kedua jika dan hanya jika berada pada bentuk normal pertama dan semua atribut bukan kunci, memiliki dependensi sepenuhnya terhadap kunci primer.
27 4) Bentuk Normal Ketiga (Third Normal Form / 3 NF) Suatu relasi dikatakan dalam bentuk normal ketiga jika berada dalam bentuk normal kedua dan setiap atribut bukan kunci, tidak memiliki dependensi transitif terhadap kunci primer. 5) Bentuk Normal Boyce-Codd Normal form (BCNF) Yaitu
menghilangkan
terdapatnya
anomaly
pada
relasi
yang
disebabkan oleh overlapping candidate key atau apabila setiap determinan adalah merupakan candidate key. 6) Bentuk Normal Kempat (Fourt Normal Form / 4NF) Yaitu menghilangkan beberapa ketergantungan pada banyak harga (multivalue dependency). 7) Bentuk Normal Kelima (Fifth Normal Form / 5NF) Yaitu join dependency yaitu anomy yang terjadi akibat dekomposisi relasi tidak dapat dipakai kembali untuk membentuk kembali relasi semula. d. Spesifikasi Basis Data Definisi Basis data menurut (Stephens dan Plew: 2000), adalah “Mekanisme yang digunakan untuk menyimpan informasi atau data”. Tujuan dalam basis data adalah mempermudah penciptaan struktur data dan membebaskan program dari masalah penyusunan file yang tidak
28 terstruktur, sehingga mempermudah dalam mendesain dan menyiapkan suatu basis data yang dapat digunakan oleh sejumlah program aplikasi yang berlainan. 2.7 Kamus Data Kamus Data adalah katalog fakta tentang data dan kebutuhan-kebutuhan informasi dari suatu sistem informasi. Kamus data selain digunakan untuk dokumentasi dan mengurangi redudansi, juga dapat digunakan untuk: 1. Memvalidasi diagram aliran data dalam hal kelengkapan dan keakuratan 2. Menyediakan suatu titik awal untuk mengembangkan layar dan laporanlaporan 3. Menentukan muatan data yang disimpan dalam file-file 4. Mengembangkan logika untuk proses-proses diagram aliran data Kamus data dibuat pada tahap analisis sistem dan digunakan baik pada tahap analisis maupun pada tahap perancangan sistem. Pada tahap analisis sistem, kamus data dapat digunakan sebagai alat komunikasi antara analisis sistem dengan pemakai sistem tentang data yang mengalir di sistem, yaitu tentang data yang masuk ke sistem dan tentang informasi yang dibutuhkan oleh pemakai sistem. Pada tahap perancangan sistem, kamus data digunakan untuk merancang input, merancang laporan-laporan dan database. Kamus data dibuat berdasarkan arus data yang ada di DAD. Kamus data mendefinisikan elemen data dengan fungsi sebagai berikut: 1. Mendeskripsikan komposisi paket data yang bergerak melalui aliran (misalnya alamat diuraikan menjadi kota, negara dan kode pos)
29 2. Mendeskripsikan komposisi penyimpanan data 3. Menspesifikasikan nilai dan satuan yang relevan bagi penyimpanan dan aliran 4. Mendeskripsikan hubungan detil antar penyimpanan (yang akan menjadi titik perhatian dalam entity-relationship diagram) Kamus data dibuat dengan memperhatikan dan menggambarkan muatan aliran data, simpanan data dan proses-proses seperti pada gambar di atas. Setiap simpanan data dan aliran data bisa ditetapkan dan kemudian diperluas sampai mencakup detail-detail elemen yang dimuatnya. Logika dari setiap proses ini bisa digambarkan dengan menggunakan data yang mengalir menuju dan keluar dari proses tersebut. 2.8
Visual Basic .NET 2005 Visual Studio .NET adalah salah satu bentuk integrated development
environment (IDE) terbaru dan canggih yang dimiliki oleh Microsoft untuk saat ini. IDE tersebut mampu mendukung dan menggabungkan banyak tipe bahasa, seperti Visual Basic .NET, C#.NET, J#.NET, C++.NET serta bahasa .NET lainnya menjadi satu dalam lingkungan dot net framework. Dengan demikian sebuah tim project yang sedang mengembangkan sebuah program aplikasi dapat bekerja dengan baik, tanpa ada “diskriminasi” antara VB.NET, C#, J#, atau bahasa .NET lainnya. Semua bahasa posisinya sama sehingga tim project dapat bekerja dalam banyak bahasa. Dengan kata lain tim project dapat menggabungkan beberapa project dengan berbagai macam bahasa tersebut ke dalam satu bahasa program yang digunakan, misalnya visual basic .NET.
30 Hasil aplikasi program yang dibangun menggunakan Visual Studio.NET dapat dijalankan pada berbagai platform operating system seperti Linux, Unix, Solaris dan OS lainnya dengan menggunakan mono yang dihasilkan oleh perusahaan Symbian. Dot NET Framework adalah teknologi inti dari dot net yang menyediakan berbagai library untuk digunakan oleh aplikasi menggunakan bahasa-bahasa pemrograman pada Visual Studio .NET. Komponen utama dot net framework adalah Common Language Runtime (CLR) yang menyediakan run time environtment untuk aplikasi yang dibangun menggunakan Visual Studio .NET, terlepas dari jenis bahasa pemrogramannya. Dengan adanya Clr tersebut, programer dapat menikmati consistent object model dalam mengakses berbagai komponen library, akibatnya penggunaan bahasa pemrograman dalam dunia .NET adalah lebih kearah selera, bukan lagi pada kelebihan maupun kekurangan masing-masing bahasa.
Gambar 2.1 Tampilan Visual Basic .Net 2005
31 1. Baris Menu Baris menu terletak paling atas pada IDE. Menu merupakan sekumpulan perintah-perintah yang dikelompokkan dalam kriteria operasi yang dihasilkan. Tabel 2.5 Menu dan Fungsi Perintah Nama
Keterangan
File
Berfungsi untuk melakukan pengaturan file seperti New, Save, Open dan sebagainya.
Edit
Perintah untuk melakukan pengeditan, baik pengeditan objek komponen maupun kode pada Code Editor seperti Undo, Redo, Copy, Delete dan sebagainya.
View
Perintah-perintah untuk mengaktifkan bagian-bagian dari IDE VS.NET.
Project
Berfungsi untuk memanajemen project beserta pendukungnya.
Build
Berfungsi untuk menangani proses kompilasi, seperti build, rebuild dan clean.
Debug
Untuk pengaturan dalam pencarian kesalahan program.
Data
Untuk melihat dan menambahkan data sources.
Tools
Sebagai penyedia pelengkap tambahan yang diperlukan dalam penyusunan program.
Window
Untuk melakukan pengaturan tampilan window yang sedang dibuka.
Comminity Untuk berkomunikasi dengan forum melalui internet. Help
2. Toolbar
Menyediakan informasi untuk membantu pemakai di dalam menggunakan VS.NET.
32 Toolbar merupakan suatu wadah bagi tombol-tombol pemercepat (shortcut) akses perintah (yang bisa jadi tersembunyi dalam tingkat hierarki). Tomboltombol pemercepat ini berungsi sama dengan perintah yang tersedia dan tersembunyi di dalam menu. Tabel 2.6 Tombol pada Toolbar Nama
Keterangan
New Project
Untuk membuat sebuah project baru.
Add Item
Untuk menambahkan sebuah item baru ke dalam project yang sedang dibuka.
Open File
Untuk membuka sebuah project yang pernah disusun.
Save Form
Untuk menyimpan form yang sedang terbuka tanpa menutupnya.
Save All
Untuk menyimpan project yang sedang terbuka tanpa menutupnya.
Cut
Memotong objek terpilih, untuk kemudian dipindahkan dari tempat asalnya ke container windows.
Copy
Untuk membuat salinan objek terpilih guna disimpan pada container windows.
Paste
Untuk memasang hasil dari proses cut atau copy ke lokasi yang baru.
Undo
Untuk menggagalkan pelaksanaan perintah-perintah yang pernah dilakukan terurut dari belakang.
Redo
Merupakan kebalikan dari redo, yaitu untuk mengurangi pelaksanaan perintah-perintah yang pernah dilakukan terurut dari belakang.
Navigate
Untuk berpindah ke posisi aktif sebelumnya
Backward Navigate
Kebalikan dari Navigate Backward, yaitu untuk berpindah ke
Forward
posisi yang pernah dituju.
33 Start
Untuk menjalankan program yang sedang terbuka dan aktif.
Debugging Find In Files
Untuk melakukan pencarian kata pada file project
Solution
Untuk memunculkan jendela solution explorer
Explorer Properties
Untuk memunculkan jendela properties.
Windows Object
Untuk menampilakan componen yang digunakan pada
browser
project.
Toolbox
Untuk mengaktifkan toolbox yang menyediakan berbagai kontrol.
Start Page
Untuk membuka jendela pembuatan project awal.
Other
Memilih dan menampilkan window yang lain pada saat kita
Windows
membuat sebuah project seperti class view, task list, output dan sebagainya.
3. Toolbox Toolbox adalah tempat peenyimpanan kontrol, data, menu, toolbar, serta komponen yang akan kita gunakan pada program yang dipasangkan pada form. Tabel 2.7 fungsi dan nama kontrol pada toolbox. Nama
Keterangan
Pointer
Ini bukan kontrol melainkan penunjuk kontrol sehingga kita bisa memindahkan letak atau mengubah ukuran kontrol yang terpasang pada form.
Button
Untuk membuat sebuah tombol pelaksaan perintah.
CheckBox
Untuk membuat kotak cek yang mudah pemakaiannya. Bis digunakan untuk pemilihan dua kondisi dari banyak pilihan dua kondisi dari banyak pilihan, misalnya benar
34 atau salah. CheckedListBox
Menampung daftar pilihan di mana di kiri item terdapattanda centang.
Color Dialog
Menampilkan kotak dialog untuk memilih warna sebagai bagian dari antarmuka.
Combobox
Untuk menghasilkan kontrol yang merupakan kombinasi dari listbox dan textbox sehingga pemakai bisa memasukkan pilihan melalui daftar atau menuliskannya.
ContextMenuStrip
Menampilkan menu popup ketika pemakai mengklikkanan mouse pada suatu objek.
DatagridView
Menampilkan data secara tabular dari suatu dataset.
Dataset
Untuk membaca dan menulis suatu data atau schema.
Date TimerPicker
Untuk menampilkan waktu dan tanggal yang diambil dari sistem komputer.
DirectorySearcher
Untuk membuat query direktory yang aktif.
DomainUpDown
Menampilkan daftar item teks di mana pemakai dapat menggulung menggunakan tombol up dan down.
ErrorProvider
Menampilkan informasi kesalahan ke pemakai.
EventLog
Untuk berinteraksi dengan provider service direktory yang aktif.
FileSystemWacther
Untuk melihat setiap perubahan yang terjadi pada direktory ataupun ile yang telah diakses.
FontDialog
Menampilkan kotak dialog di mana pemakai dapat mengatur font beserta atributnya.
GroupBox
Mengelompokkan kumpulan kontrol seperti textbox.
HelpProvider HscrollBall ImageList Label
Menggabungkan aplikasi windows dengan help HTML. Untuk mengubah nilai dengan balok gulung horizontal. Sebagai tempat penyimpanan gambar. Kontrol yang bisa digunakan untuk menampilkan teks yang tidak bisa diubah oleh pemakai program kita. Kontrol yang mirip dengan label, hanya saja link label memiliki kemampuan tambahan yaitu dapat menjadi sebuah link ke suatu alamat URL. Digunakan untuk menampilkan daftar pilihan yang bisa
LinkLabel
ListBox
35 digulung. ListView
Menampilkan daftar item disertai dengan ikon. Dengan kontrol ini kita dapat membuat user interface seperti pane di sebelah kanan Windows Explorer.
MaskedTextbox
Kontrol yang berfungsi seperti textbox dengan tambahan fungsi yaitu bentuk penulisan dapat kita tentukan, sehingga pemakai akan memasukkan data sesuai dengan bentuk yang kita tentukan.
Menu Strip
Kontrol untuk membuat menu pull down.
MessageQueue
Untuk dapat berinteraksi dengan pesan termasuk membaca dan menulis message, proses transaksi dan administrasi.
MonthCalender
Untuk menampilkan sistem penanggalan yang diambil dari sistem komputer.
NotifyIcon
Menampilkan ikon dari aplikasi yang berjalan ke taskbar.
NumericUpDown
Menampilkan angka-angka di mana pemakai dapat menggulung menggunakan tombol up dan down.
OpenFileDialog
Menampilkan kotak dialog di mana pemakai dapat melakukan navigasi dan membuka file.
PageSetupDialog
Mengatur detail halaman yang akan dicetak melalui kotak dialog yang sudah dikonigurasi.
Panel
Mengelompokkan kumpulan kontrol, tidak bisa diberi label judul dan frame yang dapat digulung.
PerormanceCounter
Untuk berinteraksi dengan jendela counter, termasuk membuat kategori dan instant baru, membaca counter, dan melakukan kalkulasi data counter.
PictureBox
Untuk menampilkan gambar statis maupun gambar aktif dari sumber di luar dirinya.
PrintDialog
Menampilkan kotak dialog di mana pemakai dapat memilih printer yang akan digunakan dan mengatur atributnya.
PrintDocument
Mengatur properti mencetak dokumen.
PrintPreviewControl Menampilkan dokumen bagaiman akan terlihat ketika dicetak.
36 PrintPreviewDialog
Menampilkan kotak dialog dari objek print document saat dicetak.
Process
Untuk mengaktifkan atau menghentikan proses sistem lokal.
ProgressBar
Menunjukan jalannya proses sampai selesai dari suatu aksi secara grafikal.
RadioButton
Untuk pemilihan dua keadaan dari banyak pilihan, namun hanya satu pilihan saja yang bisa diaktifkan pada satu saat.
RichTextbox
Menampilkan teks dengan format rich-teks (RTF)atau plain text.
SaveFileDialog
Menampilkan kotak dialog mana pemakai dapat dan menyimpan sekaligus memberi nama file.
ServiceController
Untuk memanipulasi service yang tersedia, termasuk pelayananan starting dan stopping serta mengirim pesan.
SplitContainer
Sebagai pemisah panel guna mengubah ukuran kontrol docking.
TabControl
Menyediakan halaman tab untuk mengorganisasikan dan mengakses objek yang dikelompokkan secara efisien.
TextBox
Untuk membuat area teks di mana teksnya bisa diubah oleh si pemakai
Timer
Untuk mengeksekusi waktu kejadian pada rutin program termasuk selang waktu.
Toolstrip
Menampilkan teks ketika pemakai menunjuk pada suatu kontrol.
ToolTip
Menampilkan informasi teks ketika pemakai menunjuk pada suatu kontrol
Trackbar
Untuk mengatur suatu nilai pada skala dengan cara menggerakkan “penunjuk” sepanjang skala.
TreeView
Menampilkan kumpulan hierarki dari objek node yang selalu berisi teks dengan tambahan kotak cek atau ikon.
37
2.9
Vscrollbar
Untuk mengubah nilai dengan balok gulung vertikal.
WebBrowser
Untuk membuat suatu antarmuka internet.
Database dan Query Database dapat diartikan sebagai sekumpulan data yang berfungsi sebagai
penyedia informasi bagi user atau pengguna. Secra garis besar, suatu database dibedakan menjadi dua yaitu : 1. Front-End, yaitu aplikasi yang berhubungan langsung dengan para pemakai program. 2. Back-End, yaitu aplikasi yang menyusun, menyimpan, dan mengamankan database. Beberapa konsep dalam menyusun Desain Database : 1. Entity, yaitu sesuatu yang mudah didefinisikan. Sebuah entity bisa berupa objek, tempat, manusia, konsep ataua aktivitas, misalnya mahasiswa, rektor, dosen, universitas. 2. Atribut, yaitu penjelasan dari entity yang membedakan entity yang satu dengan yang lain, misalkan nomor induk, nama, alamat seorang mahasiswa. 3. Relationship, yaitu penghubung antara satu entity dengan entity yang lain. Relationship ini dibedakan menjadi tiga tipe yaitu : a. One to One (1:1) Pada relasi ini satu entity hanya berelasi dengan satu entity lainnya. b. One to Many (1:M) atau Many to One (M:1) Pada relasi ini satu entity bisa mempunyai banyak relasi lebih dari satu pada entity lainnya.
38 c. Many to Many (M:M) Pada relasi ini banyak entity bisa berelasi dengan banyak entity lainnya. 2.10
Pengertian MySQL
MySQL adalah sebuah system manajemen database. Database adalah sekumpulan data yang terstruktur. Data-data itu dapat suatu daftar belanja yang sangat sederhana sampai ke galeri lukisan atau banyaknya jumlah informasi pada jaringan perusahaan. Untuk menambah, mengakses dan memproses data yang tersimpan pada database komputer, kita membutuhkan manajemen database seperti MySQL. MySQL adalah sebuah system manajemen database yang saling berhubungan. Sebuah hubungan databse dari data yang tersimpan pada table yang terpisah daripada menyimpan semua data pada ruang yang sangat besar. Hal ini menambah kecepatan dan fleksibilitas. Table-tabel tersebut dihubungkan oleh hubungan yang sudah
didefinisikan
mengakibatkan
akan
memungkinkan
untuk
mengkombinasikan data dari beberapa table sesuai dengan keperluan. MySQL adalah ‘Open Source Software’. ‘Open Source’ maksudnya program tersebut memungkinkan untuk dipakai dan dimodifikasi oleh siapa saja. Semua orang bisa mendownload MySQL dari Internet dan memakainya tanpa membayar sepeser pun. Seseorang dapat mempelajari ‘ Source Code ‘ dan dapat mengubahnya sesuai dengan kebutuhan mereka. MySQL menggunakan GPL (GNU General Public License). a. Sejarah MySQL
39 Pada awalnya, para pencipta MySQL mencoba suatu database server yaitu mSQL (mini Structure Query Language ) untuk menghubungkan table-tabel dengan menggunakan fast-low level ( ISAM ) routine mereka sendiri. Bagaimanapun, setelah beberapa test yang mereka lakukan, mereka berkesimpulan bahwa mSQL tidak begitu cepat dan tidak begitu fleksibel bagi kebutuhan mereka. Hal ini membuat mereka untuk dapat membuat suatu interface SQL baru yang sesuai dengan kebutuhan mereka dengan cara menambahkan atau memodifikasi dari mSQL dan mereka namakan MySQL. Adapun alasan mereka menambahkan kata ‘My’ pada MySQL sebenarnya masih sebuah misteri bagi mereka sendiri tapi hampir semua libraries dan tools pada direktori mereka memiliki awalan ‘My’. Juga nama adiknya ‘Monty’ ( salah satu pencipta MySQL ) diberi nama ‘My’. b. Perintah-perintah MySQL 1. SELECT Perintah SELECT
digunakan untuk menampilkan data dari database,
perintah umum SELECT adalah sebagai berikut : Mysql > SELECT [nama_field1, nama_field2, nama_field-n,] FROM nama_tabel ; 2. INSERT Perintah INSERT digunakan untuk mengisi data ke database, perintah umum INSERT adalah sebagai berikut: Mysql > INSERT [nama_tabel] SET field1=”value1”, field1=”value2”; 3. UPDATE
40 Perintah UPDATE digunakan untuk merubah data dari database, perintah umum UPDATE adalah sebagai berikut : Mysql > UPDATE [nama_tabel] SET field1=”value1”, field1=”value2” WHERE field_where=”value_where”; 4. DELETE Perintah DELETE
digunakan untuk menghapus data dari database,
perintah umum DELETE adalah sebagai berikut : Mysq l> DELETE FROM [nama_tabel] WHERE field_where = ”value_where”;
2.11
Konsep Dasar Sistem Informasi Penerimaan Siswa Baru
Sistem Informasi merupakan komponen-komponen bisa berupa manusia, perangkat keras, perangkat lunak, jaringan komunikasi, dan sumber-sumber data yang saling berhubungan yang mengumpulkan, memanipulasi dan menyampaikan data dan informasi dengan menyediakan mekanisme feed-back untuk mencapai suatu tujuan. Sistem informasi merupakan hal penunjang yang sangat penting bagi semua tingkat manajemen disuatu organisasi dalam pengambilan setiap keputusan. Penerimaan Siswa Baru adalah suatu kegiatan yang diselenggarakan oleh suatu organisasi sekolah setiap tahunnya. Dimana di dalam kegiatannya, dimulai dengan pendaftaran yaitu calon siswa membeli formulir dan mendaftarkan diri, setelah itu pembayaran uang sekolah serta pembuatan laporan. Proses penerimaan siswa baru tersebut melibatkan beberapa orang yang saling bekerja sama, agar tujuan yang
41 dicapai dapat terlaksana. Adapun tujuan dari penerimaan siswa baru adalah menerima siswa-siswi yang akan mengikuti proses belajar diorganisasi tersebut guna tercapainya tujuan Pendidikan Nasional Indonesia yaitu menciptakan kualitas manusia Indonesia yaitu manusia Indonesia yang beriman, dan berTaqwa kepada Tuhan Yang Maha Esa serta terampil dalam bidangnya.
BAB III ANALISA SISTEM DAN PERANCANGAN
3.1
Tinjauan Organisasi
3.1.1
Sejarah tentang berdirinya SD Islam Nurul Azhar
SD Islam Nurul Azhar berdomosili di jalan Istiqomah No. 2 RT. 01/08 Kelurahan Cipadu, Kecamatan Larangan, Banten. Berdiri pada tanggal 15 Juli 2001, yang sampai saat ini dipimpin oleh ketua yayasan yang bernama Hj. Siti Saudah Wahid. Yayasan tersebut bernama Abdul Wahid Zaini, dan Kepala Sekolahnya bernama Nuryati S.pd. Sejak berdiri SD Islam Nurul Azhar telah banyak kegiatan dan banyak mengalami kemajuan. Hal ini ditunjang oleh sarana dan prasarana belajar yang mendukung. Pengembangan SD Islam Nurul Azhar selama ini dilakukan oleh Yayasan sepenuhnya, belum ada bantuan dari pemerintah, sementara SD Islam Nurul Azhar telah ikut serta dalam mencerdaskan kehidupan bangsa. Untuk mencapai tujuan pendidikan nasional SD Islam Nurul Azhar menitik beratkan pada moral, etika, akhlak, terampil, serta beribadah dengan baik dan benar. 3.1.2
Visi dan Misi SD Islam Nurul Azhar
Visi SD Islam Nurul Azhar adalah : “Membangun generasi yang kreatif, tangkas, terampil, sehat jasmani dan rohani, beriman dan berakhlaq mulia yang berakar pada sistem nilai dan budaya luhur masyarakat”.
41
42 Misi SD Islam Nurul Azhar adalah : 1. Mengembangkan
pendidikan
karakter
bagi
anak-anak
dengan
mengembangkan pendidikan pada khitahnya yaitu pembekalan kecakapan hidup (life skill). 2. Menyelenggarakan program pendidikan yang mampu menumbuh kembangkan potensi diri, kepekaan sosial dan kepedulian terhadap lingkungan. 3. Merangkul potensi masyarakat, orang tua murid dan pemerintah untuk berpartisipasi aktif dalam mengembangkan program pembelajaran yang variatif dan berwawasan keunggulan. 3.1.3
Struktur Organisasi
Struktur Organisasi SD Islam Nurul Azhar dapat dilihat seperti di bawah ini :
KOMITE SEKOLAH POMG
KEPALA SEKOLAH Nurvati S.pd
USAHA K.A. TATA SPP HUMAS SARANA DAN PRASARANA
WAKIL KEPALA SEKOLAH Husniyati S.pd
PEMBINA PRAMUKA Hadi
BIMBINGAN KONSELING Lusmana S.E
PEMBINA PRAMUKA Hadi
. KOOR PERPUSTAKAAN Hafidz S.S
WALI KELAS I, II, III, IV,V,VI
GURU BIDANG STUDI
SISWA KELAS I, II, III, IV, V, VI
Gambar 3.1. Struktur Organisasi SD Islam Nurul Azhar
43 3.1.4
Uraian Tugas
Pembagian Tugas dan Mekanisme Kerja akan dijelaskan berikut. 1. Komite Sekolah Komite Sekolah terdiri dari perwakilan beberapa orang tua murid SD Islam Nurul Azhar yang bertugas untuk menyampaikan inspirasi, saran dan kritik dari orang tua murid kepada pihak sekolah dan memantau kinerja pihak sekolah. Komite sekolah berhubungan langsung dengan pihak sekolah dan dengan kepala sekolah 2. Kepala Sekolah Kepala Sekolah berfungsi sebagai educator manajer, administrator dan supervisior. a. Kepala sekolah adalah penanggung jawab pelaksanaan pendidikan di SD Islam Nurul Azhar termasuk didalamnya adalah penanggung jawab pelaksanaan administrasi pendidikan. b. Kepala sekolah mempunyai tugas merencanakan, mengorganisasikan, mengawasi dan mengevaluasi seluruh proses Pendidikan di SDI Nurul Azhar yang meliputi aspek edukatif administratif, aspek edukatif meliputi hal-hal yang berhubungan dengan pelaksanaan kurikulum sedangkan aspek-aspek administratif meliputi pengatur : Administratif belajar mengajar Administratif siswa Administratif perlengkapan Administratif keuangan Administratif perpustakaan
44 Administratif bimbingan dan konseling 3. Wakil Kepala Sekolah Wakil kepala Sekolah bertanggung jawab akan kemajuan sekolah. Wakil Kepala Sekolah juga membantu Kepala Sekolah dalam melaksanakan tugastugasnya. 4. KA. Tata Usaha Administrasi SD Islam Nurul Azhar ialah segala usaha bersama untuk mendayaguna sumber-sumber baik personal maupun material secara efektif guna menunjang tercapainya tujuan pendidikan di sekolah tersebut. Tugasnya mengatur pelaksanaan kegiatan, kepegawaian, keuangan, pengadaan dan inventarisasi sarana dan prasarana, pemeliharaan peralatan, kesiswaan dan membuat laporan. 5. Bimbingan Konseling a. Melaksanakan kegiatan konseling. b. Pembentukan pribadi siswa. c. Membantu siswa memecahkan masalah. d. Administrasi bimbingan dan konseling. 6. Pembina Pramuka Pembina pramuka bertugas membina siswa SD Islam Nurul Azhar diorganisasi pramuka, Pembina pramuka ini medidik para siswa lebih mandiri, dewasa serta disiplin dengan kegiatan-kegiatan kepramukaan yang diadakan seperti berkemah, baris-berbaris, kepemimpinan.
45 7. Koor. Perpustakaan Untuk memberi motivasi agar siswa gemar membaca perlu ada penyatukaitan antara kegiatan belajar dengan perpustakaan. untuk itu setiap guru mata pelajaran perlu secara berkala memberikan tugas sesuai dengan bidangnya dikatkan dengan buku-buku yang etrsedia di perpustakaan. 8. Wali kelas a. Mengadakan pendataan murid dengan baik. b. Membuat Album murid. c. Mengenal pribadi murid dan lingkungan dengan baik. d. Mengatur kelompok pembagian kerja dan mengkoordinasikan dengan baik. e. Mengadakan hubungan baik dengan orang tua wali murid. f. Memeriksa absensi kelas, memberikan pembinaan dan arahan serta membantu pemecahan masalah. g. Mengelola kelas baik teknis edukatif maupun administratif. 9. Guru bidang studi a. Memeriksa kerapihan kelas. b. Sebelum masuk menyiapkan siswa dengan berbaris di depan kelas dan menyiapkan masuk dimulai dengan barisan yang terbaik/terapih. c. Mengabsensi murid setiap kali masuk kelas. d. Memberi evaluasi setiap selesai satu pokok bahasan, menilainya dengan mengembalikan kertas ulangan kepada murid. e. Memberikan pekerjaan rumah kepada siswa agar siswa terlatih dan mengenal disiplin.
46 f. Memberikan contoh yang baik terhadap anak didiknya (sopan santun, jujur dan adil, ikhlas dalam melaksanakan tugasnya. g. Menjalankan tugas dengan deteksi dan menjadi pendidik dan Pengajar, setidaknya sebagai pengajar saja. h. Menghadiri rapat dinas yang diadakan sekolah dan mengikuti rapat tersebut dengan seksama. 10. Siswa Berhak mendapatkan pendidikan yang sebaik-baiknya dari pihak sekolah melalui dari guru bidang studi dan pihak-pihak lain yang berhubungan langsung dengan sekolah. Dan berkewajiban mematuhi tata tertib sekolah.
3.2 Use Case Diagram
Gambar 3.2 Use Case Login
47
Gambar 3.3 Use Case Data Jenis Biaya Dalam Aplikasi
Gambar 3.4 Use Case Transaksi PPSB Dalam Aplikasi
Gambar 3.5 Use Case Cetak Laporan PPSB Dalam Aplikasi
48 Tabel 3.1 Scenario Login Use Case
Login
Actor
Staff PPSB
Main Success Scenario
Staff dapat membuka layar menu utama
Tindakan Scenario
Staff PPSB melakukan input user name dan password untuk validasi hak akses pengguna, jika user name dan password salah maka secara otomatis akan menampilkan pesan error dan menutup program, jika berhasil akan membuka layar menu utama.
Tabel 3.2 Scenario Entry Data Biaya Use Case
Data Jenis Biaya
Actor
Staff PPSB
Main Success Scenario
Data jenis biaya berhasil disimpan ke file jns_biaya.
Tindakan Scenario
Staff PPSB melakukan input data baru atau edit data biaya yang sudah ada.
Tabel 3.3 Scenario Entry Data Pendaftaran Use Case
Data Pendaftaran
Actor
Staff PPSB
Main Success Scenario
Staff PPSB menginput data pendaftaran atau melakukan edit data pendaftaran yang sudah ada dan disimpan kedalam file formulir.
Tindakan Scenario
Staff PPSB melakukan input data baru dan edit data berdasarkan formulir pendaftaran yang diserahkan oleh calon siswa.
49 Tabel 3.4 Scenario Daftar Lulus Seleksi Use Case
Daftar Lulus Seleksi
Actor
Staff PPSB
Main Success Scenario Staff PPSB mencetak daftar lulus seleksi dan melakukan update status pendaftaran calon siswa. Tindakan Scenario
Staff
PPSB
memilih
periode
pendaftaran
dan
melakukan update status daftar para calon siswa berdasarkan umur (yaitu umur harus diatas atau sama dengan 6 tahun). Jika umur calon siswa telah memenuhi syarat maka status dinyataka lulus, jika tidak maka dinyatakan gagal.
Tabel 3.5 Scenario Data Pembayaran Use Case
Data Pembayaran
Actor
Staff PPSB
Main Success Scenario
Staff PPSB mencetak kwitansi pembayaran sebagai bukti pembayaran uang pangkal dan data pembayaran tersebut disimpan kedalam file kwitansi dan file detil_kwitansi.
Tindakan Scenario
Staff PPSB akan menginput nomor formulir untuk menampilkan nama calon siswa dan mencetak kwitansi pembayaran..
Tabel 3.6 Scenario Cetak Laporan Siswa Baru Use Case
Cetak Laporan Siswa Baru
Actor
Staff PPSB
Main Success Scenario
Staff PPSB mencetak laporan siswa baru berdasarkan file formulir dengan status pendaftaran adalah lulus.
Tindakan Scenario
Staff PPSB memilih periode tahun ajaran penerimaan
50 siswa baru untuk melakukan penyaringan data dan mencetak laporan siswa baru sesuai dengan periode yang telah ditentukan.
Tabel 3.7 Scenario Cetak Laporan Pembayaran Use Case
Cetak Laporan Pembayaran
Actor
Staff PPSB
Main Success Scenario Staff
PPSB
mencetak
laporan
pembayaran
berdasarkan file kwitansi. Tindakan Scenario
Staff PPSB memilih periode tahun ajaran pembayaran untuk melakukan penyaringan data dan mencetak laporan pembayaran sesuai dengan periode yang telah ditentukan.
3.3 Uraian Prosedur 1. Activity diagram proses pendaftaran calon siswa baru Pada bagan dibawah ini menjelaskan urutan kegiatan yang terjadi pada proses pendaftaran calon siswa baru, dimulai dari pembelian formulir pendaftaran, pembuatan kwitansi pembelian formulir, pengisian formulir, penerimaan formulir dari calon siswa dan seleksi penerimaan siswa baru berdasarkan umur calon siswa.
51
Gambar 3.6 Prosedur Pendaftaran
52
2. Activity diagram proses pembayaran uang pangkal calon siswa Pada bagan dibawah ini menjelaskan urutan kegiatan yang terjadi pada proses pembayaran uang pangkal. Dimulai dari calon siswa membayar pelunasan, kemudian tata usaha/ Staff PPSB mencatat pembayaran tersebut ke dalam buku besar, kemudian membuat dan memberikan kwitansi tersebut kepada calon siswa.
Gambar 3.7 Prosedur Pembayaran
53
3. Acitivity diagram buat laporan Pada bagan dibawah ini menjelaskan urutan kegiatan yang terjadi pada proses pembuatan laporan. Dimulai dari tata usaha membuat laporan siswa baru, kemudian menyerahkan laporan tersebut kepada Kepala Sekolah.
Gambar 3.8 Prosedur Laporan 3.4
Identifikasi Kebutuhan
Kebutuhan-kebutuhan yang harus dipenuhi oleh sistem yang akan dirancang 1. Kebutuhan
: Laporan Pembayaran
54 Masalah
: Tidak adanya bukti jumlah pembayaran masuk siswa baru yang berupa laporan kwitansi pembayaran masuk siswa baru dalam satu periode tertentu
Usulan
: Dibuatkan laporan tersebut untuk didistribusikan ke Kepala Sekolah sebagai laporan per periode.
2. Kebutuhan Masalah
: Laporan Siswa Baru : Tidak adanya laporan siswa baru untuk diketahui oleh Kepala Sekolah.
Usulan
: Dibuatkan laporan tersebut untuk didistribusikan ke Kepala Sekolah sebagai laporan siswa baru per periode.
3. Kebutuhan : Data Jenis Biaya Masalah
: Tidak adanya data jenis biaya untuk diketahui oleh Kepala sekolah apabila data biaya tersebut mengalami perubahan.
Usulan
: Dibuatkan data jenis biaya untuk didistribusikan ke Kepala Sekolah. Pembayaran dapat dicicil 2 kali.
Cicilan ke I : 50% Cicilan ke II : 50% 100% 4. Kebutuhan Masalah
: Cetak Kwitansi Pembayaran : Pada proses berjalan tidak ada dokumen kwitansi, pembayaran masih dilakukan secara manual dan tidak teraturnya penyimpanan arsip pembayaran
55 Usulan
: Penyediaan tools yang dapat mempermudah dalam membuat kwitansi dan menyimpan data pembayaran kedalam database..
3.5 Sequence Diagram 1.
Sequence diagram Data Jenis Biaya Sequence Data Jenis Biaya menerangkan kegiatan yang dilakukan sistem pada saat mengentry jenis biaya.
Gambar 3.9 Sequence Diagram Entry Jenis Biaya
56 2.
Sequence Diagram Data Pendaftaran Sequence Diagram Data Pendaftaran menerangkan kegiatan yang dilakukan sistem pada saat mengentry formulir pendaftaran.
:Staff PPSB
:FrmForm
:CtlForm
:Formulir
Open() Input() Save()
Cancel() Close()
Find(no_form)
Input dtForm() Save()
save()
Cancel() Close()
Find(no_form)
Get dtForm(no_form)
Show dtForm()
Gambar 3.10 Sequence Diagram Data Pendaftaran
57 3. Sequence diagram Data Pembayaran Sequence Cetak Kwitansi menerangkan kegiatan yang dilakukan sistem pada saat mencetak Kwitansi.
:Staff PPSB
:CtlKwt
:FrmKwt
:Kwitansi
:Formulir
:Detil_Kwt
Open() Input(no_form)
Input(no_form)
Get dtForm(no_form)
Show(no_form, jml_by)
Input(kd_by)
Input(kd_by)
Get dtBy(kd_by)
Show(nm_by,jml_by) Save()
Save()
Save() Save()
Cancel() Close()
Cancel() Close()
Find(no_kwt)
Find(no_kwt)
Get dtKwt(no_kwt) Get dtForm(no_Form)
Show(no_kwt, tgl_kwt, no_form, nm_cs, jml_byr)
Print()
Print()
Gambar 3.11 Sequence Diagram Data Pembayaran
:jns_Biaya
58 4. Sequence diagram Daftar Lulus Seleksi Sequence daftar lulus seleksi menerangkan kegiatan yang dilakukan sistem pada saat mencetak daftar calon siswa yang lulus seleksi penerimaan siswa baru.
:Staff PPSB
:CtlDLS
:FrmDLS
:Formulir
Open() Input() Input dtForm()
Get dtForm(periode)
Show dtForm() Save()
Cancel() Close() Print()
Save()
save()
Cancel() Close() Print()
Gambar 3.12 Sequence Diagram Daftar Lulus Seleksi
59 5. Sequence Diagram Laporan Siswa Baru Sequence Cetak laporan siswa baru menerangkan kegiatan yang dilakukan sistem pada saat mencetak laporan siswa baru.
:Staff PPSB
:CtlLap
:FrmLap
:Formulir
Open() Input(periode) Print()
Input(periode) Print()
Get dtForm(periode)
Show(nis, nm_cs, jk_cs, agama_cs) Close() Close()
Gambar 3.13 Sequence Giagram Laporan Siswa Baru
60 6. Sequence Diagram Laporan Pembayaran Sequence Cetak Laporan Pembayaran menerangkan kegiatan yang dilakukan sistem pada saat mencetak laporan pembayaran.
:Staff PPSB
:CtlLap
:FrmLap
:Kwitansi
:Formulir
Open() Input(periode) Print()
Input(periode) Print()
Get dtForm(periode) Get dtKwt(no_form)
Show(no_kwt, tgl_kwt, nm_cs, jml_bayar, ket_bayar)
Close()
Close()
Gambar 3.14 Sequence Diagram Laporan Pembayaran
61 3.6
Perancangan Basis Data
3.6.1 Bentuk Tidak Normal Semua Field yang ada di dalam tabel dimasukkan dan kemudian dikelompokkan dalam bentuk tidak normal. No_Form * Periode Nm_CS JK_CS Tmp_Lhr_CS Tgl_Lhr_CS Alm_CS Tlp_CS Anak_Ke Jml_Anak Bhs_Ibu Agama_CS Nm_Ayah Tmp_Lhr_Ayah Tgl_Lhr_Ayah Alm_Ayah Tlp_Ayah Pend_Ayah Pek_Ayah Alm_Kantor_Ayah Tlp_Kantor_Ayah Agama_Ayah WN_Ayah Nm_Ibu Tmp_Lhr_Ibu Tgl_Lhr_Ibu Alm_Ibu Tlp_Ibu Pend_Ibu Pek_Ibu Alm_Kantor_Ibu Tlp_Kantor_Ibu Agama_Ibu WN_Ibu Sts_Daftar Kd_By * Nm_By Hrg_By No_Kwt * Tgl_Kwt Nm_CS Jml_Byr Ket_Byr Diskon
62 3.6.2 Bentuk Normal Pertama (1 NF) Semua Field yang ada di dalam tabel tidak normal yang mempunyai atribut yang sama dihilangkan menjadi satu atribut (tidak boleh ada atribut yang berulang) No_Form * Periode Nm_CS JK_CS Tmp_Lhr_CS Tgl_Lhr_CS Alm_CS Tlp_CS Anak_Ke Jml_Anak Bhs_Ibu Agama_CS Nm_Ayah Tmp_Lhr_Ayah Tgl_Lhr_Ayah Pend_Ayah Pek_Ayah Alm_Kantor_Ayah Tlp_Kantor_Ayah Agama_Ayah WN_Ayah Nm_Ibu Tmp_Lhr_Ibu Tgl_Lhr_Ibu Pend_Ibu Pek_Ibu Alm_Kantor_Ibu Tlp_Kantor_Ibu Agama_Ibu WN_Ibu Sts_Daftar Kd_By * Nm_By Hrg_By No_Kwt * Tgl_Kwt Jml_Byr Ket_Byr Diskon
Info :
Simbol * menunjukan field yang unik dan dapat dijadikan calon key pada normalisasi ke dua.
63 3.6.3 Bentuk Normal Kedua Setelah dibentuk normal pertama (1 NF) dimana setiap atribut dalam tabel saling berhubungan antara primary dan foreign key. Formulir No_Form * Periode Nm_CS JK_CS Tmp_Lhr_CS Tgl_Lhr_CS Alm_CS Tlp_CS Anak_Ke Jml_Anak Bhs_Ibu Agama_CS Nm_Ayah Tmp_Lhr_Ayah Tgl_Lhr_Ayah Pend_Ayah Pek_Ibu Alm_Kantor_Ayah Tlp_Kantor_Ayah Agama_Ayah WN_Ayah Nm_Ibu Tmp_Lhr_Ibu Tgl_Lhr_Ibu Pend_Ibu Pek_Ibu Alm_Kantor_Ibu Tlp_Kantor_Ibu Agama_Ibu WN_Ibu Sts_Daftar
Info :
Kwitansi No_Kwt Tgl_Kwt Jml_Byr Ket_Byr Diskon
*
No_Form
**
Detil_Kwitansi No_DK Biaya
*
No_Kwt Kd_By
* *
Jns_Biaya Kd_By Nm_By Hrg_By
*
Simbol * menunjukan primary key (key identitas untuk satu record). Simbol ** menunjukan foreign key (key referensi dari file yang lain) Simbol panah tunggal merupakan tingkat relasi satu record Simbol panah ganda merupakan tingkat relasi banyak record
64 3.6.4 Class Diagram
65
3.7 Spesifikasi Basis Data 1. Nama file
: Formulir
Media
: Hard disk
Isi
: Data calon siswa
Primary key
: No_Form
Tabel 3.8 Spesifikasi Basis Data File Formulir No
Nama filed
Jenis
Lebar
Keterangan
1
No_Form
Varchar
5
Nomor formulir
2
Nm_CS
Varchar
25
Nama calon siswa
3
Tmp_Lhr_CS
Varchar
20
Tempat lahir calon siswa
4
Tgl_Lhr_CS
Date
8
Tanggal lahir calon siswa
5
JK_CS
Varchar
1
Jenis kelamin calon siswa L = Laki -laki P = Perempuan
6
Agama_CS
Varchar
1
Agama calon siswa 0 = Islam 1 = Khatolik 2 = Protestan 3 = Hindu 4 = Budha 5 = Others
66 7
Alm_CS
Varchar
50
Alamat calon siswa
8
Tlp_CS
Varchar
15
Nomor
telepon
calon
siswa 9
Nm_Ayah
Varchar
25
Nama ayah/wali
10
Pek_Ayah
Varchar
20
Pekerjaan ayah/wali
11
Pend_Ayah
Varchar
1
Pendidikan
terakhir
ayah/wali 0 = Tidak ada 1 = SD 2 = SMP 3 = SMA/SMK 4 = Diploma 5 = S1 6 = S2 7 = S3 12
Nm_Ibu
Varchar
25
Nama ibu/wali
13
Pek_Ibu
Varchar
20
Pekerjaan ibu/wali
14
Pend_Ibu
Varchar
1
Pendidikan
terakhir
ibu/wali 15
Periode
Varchar
9
Periode penerimaan siswa baru
16
Anak_Ke
Varchar
2
Calon
siswa
anak
berapa 17
Jml_Anak
Varchar
2
Jumlah anak dikeluarga
ke
67 18
Sts_Daftar
Varchar
1
Status pendaftaran calon siswa 0 = Belun Diseleksi 1 = Lulus Seleksi 2 = Tidak Lulus Seleksi
19
Tgl_Lhr_Ayah
Date
8
Tanggal lahir ayah/wali
20
Tmp_Lhr_Ayah
Varchar
20
Tempat lahir ayah/wali
21
Tgl_Lhr_Ibu
Date
9
Tanggal lahir ibu/wali
22
Tmp_Lhr_Ibu
Varchar
20
Tempat lahir ibu/wali
23
Alm_Kantor_A
Varchar
50
Alamat kantor ayah/wali
Varchar
15
Telepon kantor ayah/wali
Varchar
50
Alamat kantor ibu/wali
Varhcar
15
Telepon kantor ibu/wali
yah 24
Tlp_Kantor_Ay ah
25
Alm_Kantor_Ib u
26
Tlp_Kantor_Ibu
2. Nama file
: Jns_Biaya
Media
: Hard disk
Isi
: Data jenis biaya
Primary key
: Kd_By
Tabel 3.9 Spesifikasi Basis Data File Jns_Biaya No Nama filed
Jenis
Lebar
Keterangan
1
Varchar
3
Kode biaya
Kd_By
68 2
Nm_By
Varchar
25
Nama biaya
3
Jml_By
Integer
8
Jumlah ketetapan biaya
3) Nama file
: Kwitansi
Media
: Hard disk
Isi
: Data pembayaran
Primary key
: No_Kwt
Tabel 3.10 Spesifikasi Basis Data File Kwitansi No
Nama filed
Jenis
Lebar Keterangan
1
No_Kwt
Varchar
5
Nomor kwitansi
2
Tgl_Kwt
Date
8
Tanggal kwitansi
3
Jml_Bayar
Integer
8
Jumlah pembayaran
4
Ket_Bayar
Varchar
50
Keterangan pembayaran
5
No_Form
Varchar
5
Nomor formulir
6
Diskon
Integer
8
Jumlah potongan harga
4) Nama file
: Detil_Kwitansi
Media
: Hard disk
Isi
: Data detil biaya pembayaran
Primary key
: No_Kwt
Tabel 3.11 Spesifikasi Basis Data File Detil_Kwitansi No Nama filed
Jenis
Lebar Keterangan
1
No_DK
Varchar
5
Nomor detil kwitansi
2
Biaya
Integer
8
Biaya yang dibayar
3
No_Kwt
Varchar
5
Nomor Kwitansi
4
Kd_By
Varchar
3
Kode biaya
69
3.7.1
Kamus Data DtBy DtForm
={Kd_By + Nm_By + Jml_By} ={No_Form + Nm_CS Tgl_Lhr_CS JK_CS + Agama_CS +
+
Tmp_Lhr_CS
Alm_CS + Tlp_CS + Nm_Ayah + Pek_Ayah + Pend_Ayah + Nm_Ibu + Pek_Ibu + Pend_Ibu + Periode + Anak_Ke + + Jml_Anak + Sts_Daftar + Tgl_Lhr_Ayah + Tmp_Lhr_Ayah + Tgl_Lhr_Ibu + Tmp_Lhr_Ibu + Alm_Kantor_Ayah + Tlp_Kantor_Ayah + Alm_Kantor_Ibu + Tlp_Kantor_Ibu} DtKwt
={No_Kwt + Tgl_Kwt + Jml_Bayar + Ket_Bayar + No_Form + Kd_By + Nm_By + Biaya + Diskon}
File Jns_Biaya
={@Kd_By + Nm_By + Jml_By}
File Formulir
={@No_Form + Nm_CS + Tmp_Lhr_CS Tgl_Lhr_CS JK_CS + Agama_CS + Alm_CS + Tlp_CS + Nm_Ayah + Pek_Ayah + Pend_Ayah + Nm_Ibu + Pek_Ibu + Pend_Ibu + Periode + Anak_Ke + + Jml_Anak + Sts_Daftar + Tgl_Lhr_Ayah + Tmp_Lhr_Ayah + Tgl_Lhr_Ibu + Tmp_Lhr_Ibu + Alm_Kantor_Ayah + Tlp_Kantor_Ayah + Alm_Kantor_Ibu + Tlp_Kantor_Ibu}
File Kwitansi
={No_Kwt@ + Tgl_Kwt + Jml_Bayar Ket_Bayar + No_Form + Diskon}
File Detil_Kwitansi
={No_DK@ + Biaya + Kd_By + No_Kwt }
+
70 3.7.2 ERD (Entity Relationship Diagram) Entity Relationship Diagram (ERD) keluaran dari kegiatan analisa terstruktur data yang dimodelkan data apa adanya dan menggambarkan data dalam keadaan diam, bukan bagaimana proses terhadap data itu terjadi. No_Kwt Tgl_Kwt Jml_Byr Ket_Byr Diskon
No_Form No_Kwt 1 Formulir
Dapat
No_Form Nm_CS Tmp_Lhr_CS Tgl_Lhr_CS JK_CS Agama_CS Alm_CS Tlp_CS Nm_Ayah Pek_Ayah Pend_Ayah Nm_Ibu Pek_Ibu Pend_Ibu Periode Anak_Ke Jml_Anak Sts_Daftar Tgl_Lhr_Ayah Tmp_Lhr_Ayah Tgl_Lhr_Ibu Tmp_Lhr_Ibu Alm_Kantor_Ayah Tlp_Kantor_Ayah Alm_Kantor_Ibu Tlp_Kantor_Ibu
M
Kwitansi 1
No_Kwt No_DK
Punya
M No_DK Biaya
Detil_Kwitansi M
No_DK kd_By
Bayar
1 Kd_By Nm_By Jml_By
Gambar 3.15 Entity Relationship Diagram
Jns_Biaya
71
Gambar 3.16 Struktur Menu Utama
Gambar 3.17 Tampilan Menu Utama
Pada rancangan menu utama terdapat menu data jenis biaya, data pendaftaran, daftar lulus seleksi, data pembayaran, laporan siswa baru dan laporan pembayaran yang digunakan untuk mengakses tools untuk input data dan tools unutuk mencetak informasi yang diperlukan.
72
Gambar 3.18 Tampilan Layar Data Biaya
Pada rancangan layar data biaya terdapat beberapa kegunaan yaitu untuk menginput data, menyimpan data tersebut kedalam database, menghapus data, dan mencari data yang sudah ada. Dengan demikian diharapkan dapat membantu staff PPSB dalam menetapkan biaya pendaftaran yang sudah ditetapkan oleh sekolah.
Gambar 3.19 Tampilan Layar Data Pendaftaran
73 Pada rancangan layar data pendaftaran terdapat beberapa kegunaan yaitu untuk menginput data, menyimpan data tersebut kedalam database, dan mencari data yang sudah ada. Dengan demikian diharapkan dapat membantu staff PPSB dalam mengolah data calon siswa yang mendaftar disekolah pada tiap tahunnya. Daftar Lulus Seleksi Periode
: X – 10 – X
No. Formulir Tampil
Save
Nama Calon Siswa Tampil
Cancel
Print
Find
Status Pilih
Close
Gambar 3.20 Tampilan Layar Daftar Lulus Seleksi
Pada rancangan layar daftar lulus seleksi terdapat beberapa kegunaan yaitu untuk menginput data, menyimpan data tersebut kedalam database, mencetak informasi daftar calon siswa yang lulus seleksi dan mencari data calon siswa yang sudah ada berdasarkan periode pendaftaran. Dengan demikian diharapkan dapat membantu staff PPSB dalam mengolah data seleksi dan menyediakan cetakan daftar lulus seleksi pada setiap penerimaan siswa baru.
74
Gambar 3.21 Tampilan Layar Data Pembayaran
Pada rancangan layar data pembayaran terdapat beberapa kegunaan yaitu untuk menginput data, menyimpan data tersebut kedalam database, mencetak informasi pembayaran dan mencari data yang sudah ada. Dengan demikian diharapkan dapat membantu staff PPSB dalam mengolah data pembayaran para calon siswa yang mendaftar dan menyediakan cetakan kwitansi sebagai bukti pembayaran pada tiap tahunnya.
Periode Print
:
X – 10 – X
Preview
Close
Gambar 3.22 Tampilan Layar Laporan Siswa Baru
75 Pada rancangan layar laporan siswa baru terdapat kegunaan untuk mencetak informasi laporan siswa baru yang ditentukan berdasarkan periode pendaftaran siswa baru. Dengan demikian diharapkan dapat membantu staff PPSB dalam menyediakan informasi penerimaan siswa baru secara cepat dan akurat.
Gambar 3.23 Tampilan Layar Laporan Pembayaran Pendaftaran Siswa
Pada rancangan layar laporan pembayaran pendaftaran siswa terdapat kegunaan untuk mencetak informasi laporan pembayaran pendaftaran siswa yang ditentukan berdasarkan periode pendaftaran siswa baru. Dengan demikian diharapkan dapat membantu staff PPSB dalam menyediakan informasi pembayaran pendaftaran siswa secara cepat dan akurat.
BAB IV IMPLEMENTASI DAN PENGUJIAN
4.1
Instalasi Perangkat Lunak
Dalam pembuatan program ini penulis menggunakan Microsoft Visual Studio 2005 untuk implementasi program dan laporan dengan MySql untuk implementasi basis data.
4.2
Implementasi
Rancangan layar yang telah dibuat pada bab 3 pada saat implementasi memiliki hasil sebagai berikut ini : 1. Layar Login Layar login merupakan validasi akses user, validasi ini diperlukan agar dapat menjamin keamanan system dari berbagai pihak yang tidak berkepentingan. Layar login dapat dilihat pada gambar 4.1 :
Gambar 4.1 Layar Login
76
77 Source Code : OK Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click loginOK=cek_orang(UsernameTextBox.Text, asswordTextBox.Text) If loginOK = True Then FrmUtama.Show() Me.Hide() Else MsgBox("Maaf...anda tidak dapat mengakses aplikasi ini", MsgBoxStyle.Exclamation) Me.Dispose() End If End Sub
BATAL (Cancel) Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click Me.Dispose() End Sub
2. Layar Menu Utama Pada layar menu utama terdapat beberapa menu untuk mengakses layar-layar pengolahan data, seperti dibawah ini
Gambar 4.2 Layar Menu Utama Source Code : Menu Keluar Private Sub ToolStripMenuItem8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem8.Click Me.Close() End Sub
78 Menu Data Jenis Biaya Private Sub ToolStripMenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem2.Click FrmBy.ShowDialog() End Sub
Menu Data Pendaftaran Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem3.Click FrmFormulir.ShowDialog() End Sub
Menu Daftar Lulus Seleksi Private Sub ToolStripMenuItem4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem4.Click FrmSeleksi.ShowDialog() End Sub
Menu Laporan Siswa Baru Private Sub ToolStripMenuItem5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem5.Click FrmLaporan.ShowDialog() End Sub
Menu Laporan Pembayaran Private Sub ToolStripMenuItem6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem6.Click FrmLaporan.ShowDialog() End Sub
3. Layar Data Jenis Biaya Pada layar ini user dapat melakukan input data baru, pencarian data berdasarkan nama biaya, perubahan data, dan menyimpan data tersebut kedatabase.
79
Gambar 4.3 Layar Data Jenis Biaya Source Code : Keluar (Close) Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Me.Dispose() End Sub
Cari (Find) Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Dim cari As String = InputBox("Input nama jenis biaya yang anda cari", "Pencarian data jenis biaya") Call showListBiaya("select * from jns_biaya where nm_by like '%" & cari & "%' order by kd_by asc", ListView1) End Sub
Hapus (Delete) Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click MsgBox(deleteBiaya("delete from jns_biaya where kd_by='" & TextBox1.Text & "'"), MsgBoxStyle.Information, "Konfirmasi") End Sub
Batal (Cancel) Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click TextBox1.Text = "":TextBox2.Text = "":TextBox3.Text = "" ada = False Dim tempID As String = idBaru("biaya", "select * from jns_biaya order by TextBox1.Text = tempID
80 Call showListBiaya("select * from jns_biaya order by kd_by asc", ListView1) End Sub
Simpan (Save) Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click MsgBox(saveBiaya(lakukan), MsgBoxStyle.Information, "Konfirmasi") Button2_Click(sender, e) End Sub
4. Layar Data Pendaftaran Pada layar ini user dapat melakukan input data baru, pencarian data berdasarkan nomor formulir, perubahan data, dan menyimpan data tersebut kedatabase.
Gambar 4.4 Layar Data Pendaftaran Source Code : Keluar (Close) Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Me.Dispose() End Sub
Batal (Cancel) Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click ada = False Dim tempID As String = idBaru("formulir", "select * from
81 formulir order by no_form desc") TextBox1.Text = tempID End Sub
Simpan (Save) Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click MsgBox(saveFormulir(lakukan), MsgBoxStyle.Information, "Konfirmasi") Button2_Click(sender, e) End Sub
Cari (Find) Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim cari As String = InputBox("Input nomor formulir yang anda cari", "Pencarian data pendaftaran") Call showFormulir("select * from formulir where no_form='" & cari & "'") End Sub
5. Layar Daftar Lulus Seleksi Pada layar ini user dapat melakukan pencarian data berdasarkan periode tahun ajaran, perubahan status seleksi, mencetak daftar seleksi dan menyimpan data tersebut kedatabase.
Gambar 4.5 Layar Daftar Lulus Seleksi
82 Pada saat mencetak data akan menghasilkan keluaran seperti gambar dibawah ini :
Gambar 4.6 Layar Hasil Cetakan Daftar Lulus Seleksi Source Code : Cari (Find) Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Call showListFormulir("select * from formulir where periode ='" & TextBox1.Text & "' order by no_form asc", ListView1) End Sub
Keluar (Close) Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Me.Dispose() End Sub
Batal (Cancel) Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click ListView1.Items.Clear() End Sub
Cetak (Print) Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click crystalReport11.RecordSelectionFormula = "{formulir.periode} ='" & TextBox1.Text & "' and {formulir.sts_daftar} ='1'" crystalReport11.Refresh() End Sub
83 6. Layar Data Pembayaran Pada layar ini user dapat mendata pembayaran yang terjadi baik pembayaran pendaftaran maupun pembayaran pembelian formulir pendaftaran dan mencetak kwitansi pembayaran tersebut, layar data pembayaran seperti pada gambar dibawah ini :
Gambar 4.7 Layar Data Pembayaran
Pada saat mencetak kwitansi maka akan ditampilkan layar kwitansi seperti pada gambar dibawah ini :
Gambar 4.8 Layar Hasil Cetakan Kwitansi (Untuk Pembayaran Formulir)
84
Gambar 4.9 Layar Hasil Cetakan Kwitansi (Untuk Pembayaran Pendaftaran) Source Code : Batal (Batal) Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click ada = False Dim tempID As String = idBaru("kwitansi", "select * from kwitansi order by no_kwt desc") TextBox1.Text = tempID Call showListBy(ListView1) TextBox5.Text = jml_byr End Sub
Keluar (Close) Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Me.Dispose() End Sub
Cari (Find) Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Dim cari As String = InputBox("Input nomor kwitansi yang anda cari", "Pencarian data pembayaran") Call showKwitansi("select * from kwitansi where no_kwt='" & cari & "'") End Sub
Simpan (Save) Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Call saveKwitansi(strSQL) For i = 0 To ListView1.Items.Count – 1 Call saveDetil(strSQL) Next i
85 End Sub
Cetak (Print) Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click crystalReport31.RecordSelectionFormula = "{kwitansi.no_kwt}='" & TextBox1.Text & "'" crystalReport31.Refresh() End Sub
7. Layar Laporan Pada layar laporan memiliki konsep 1 modul digunakan untuk 2 laporan yang berbeda, pada layar ini akan mengerjakan tugas sesuai dengan judul laporan. User dapat memilih periode penerimaan siswa baru dan memilih apakah ingin mencetak laporan ke printer atau ke layar. Untuk lebih jelasnya dapat dilihat pada gambar dibawah ini :
Gambar 4.10 Layar Laporan Siswa Baru
Gambar 4.11 Implementasi Hasil Cetakan Laporan Siswa Baru
86
Gambar 4.12 Implementasi Laporan Pembayaran
Gambar 4.13 Layar Hasil Cetakan Laporan Pembayaran Source Code : Keluar (Close) Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Me.Dispose() End Sub
4.3
Metode Pengujian Pada akhir implementasi penulis melakukan pengujian pada setiap modul
untuk memeriksa apakah masih terdapat kesalahan baik kesalahan prosedur,
87 logika, maupun proses. Dalam melakukan pengujian tersebut dilakukan 2 metode yaitu : 1. Black Box Testing Terfokus pada apakah unit program memenuhi kebutuhan yang disebutkan pada spesifikasi. Pada pengujian ini dilakukan dengan cara menjalankan program atau mengesekusi unit program atau modul program, kemudian diamati apakah hasil dari proses yang dilakukan sudah sesuai dengan proses bisnis, jika ada yang tidak sesuai maka dilanjutkan pengujian dengan menggunakan metode white box testing.
2. White Box Testing Pengujuian ini dilakukan dengan meneliti source code dari modul yang memiliki ketidak sesuaian dengan pada saat perancangan pada saat eksekusi program. Pengujian ini berfokus pada source code pada perintah-perintah tertentu dan memperbaiki dari logika source code tersebut agar dapat menghasilkan proses yang lebih baik. Penulis menggunakan metode pengujian black box testing dan setelah ditemukan ketidak sesuaian hasil eksekusi barulan penulis melakukan pengujian white box testing, karena dengan menggunakan black box testing penulis dapat memverifikasi kesesuaian dari input – porses – output, dan dengan menggunakan white box testing penulis data melakukan perbaikanperbaikan pada logika program.
88 4.4
Skenario dan Hasil Pengujian dengan metode Black Box
Skenario pengujian dilakukan untuk menetukan langkah-langkah dalam melakukan pengujian, yaitu mengesekusi program dan melakukan mengamati setiap input – proses – output yang dieksekusi pada program tersebut. Tabel 4.1 Skenario dan Hasil Pengujian (Black Box) No Antar Muka 1
Layar login
Unit
Status
Skenario
Program
Aplikasi
Pengujian
Tombol OK
Validasi
Input
user Jika
user
name
dan password secara
Hasil
password secara
input
asal maka akan asal menampilkan
dan benar.
pesan error dan menutup
form
login, jika input secara
benar
dapat memvalidasi user name dan password
dan
membuka
layar
utama. 2
Layar utama
Menu
Akses sub Memilih salah Dapat membuka program
satu menu.
sub
program
dengan
baik
sesuai
dengan
menu
yang
dipilih. 3
Layar
Jenis Input
Biaya
biaya
data Menerima data
Menginput
Data
dari data baru dan disimpan
dapat
89 user
melakukan
kedalam
perubahan
database
dan
lalu dapat
data dilakukan
ditampilkan pada
penyimpanan
daftar
biaya.
dan Proses
data
penghapusan
penghapusan
data.
data
berhasil
dilakukan. 4
Layar
Input
data Menerima
Pendaftaran
calon siswa
data
dapat
baru, disimpan
dari data
user
Data
Menginput
melakukan
kedalam
pencarian
database
baik
data,
data
baru
melakukan
maupun
perubahan
data dan berhasil
update
data, eksekusi melakukan pencarian data
perintah simpan data. 5
Layar Daftar Input status
Menerima
Seleksi
data
Menampilkan
dalam
melakukan
dari data
user
Behasil
pendaftaran
pencarian
data,
berdasarkan
data
dapat
periode, input disimpan
ke
status, simpan database
dan
data
dan berhasil
mencetak
mencetak data
daftar seleksi. 6
Layar
Input
data Menerima
Pembayaran
pembayaran
data
Menampilkan
dari data
Berhasil
biaya, menyimpan data
90 user
menyimpan data,
kedatabase
dan
dan berhasil
mencetak
mencetak data.
data. 7
Layar Laporan
Cetak data
Validasi
mencetak
Berhasil
laporan
laporan
mencetak
berdasarkan
laporan
sesuai
judul laporan dengan
judul
ke layar dan laporan
dan
ke printer
berhasil menceak laporan
4.5
Pengujian dengan metode White Box
Flowgraph Login
91 Flowgraph Menu Utama
1
2
3
5
7
9
11
13
15
4
6
8
10
12
14
16
17
Flowgraph Layar Data Jenis Biaya
1
2
3
4
7
5
6
8
9
10
11
13
12
14
19a 19b
19c
15
16
17
18
PDL : 1. Do While Form Focus 2. Select Case X 3. Case 1 4. Input data; 5. Case 2 6. Fill Table; 7. Case 3 8. Select Case Y 9. Case Save 10. Save Data; 11. Case Cancel 12. Cancel Data; 13. Case Delete 14. Delete Data; 15. Case Find 16. Find Data; 17. Case Close 18. End; 19a. End Select 19b. End Select 19c. End Do Jalur berdiri sendiri Jalur 1 : 1-2-3-4-19 Jalur 2 : 1-2-5-6-19 Jalur 3 : 1-2-7-8-9-10-19 Jalur 4 : 1-2-7-8-11-12-19 Jalur 5 : 1-2-7-8-13-14-19 Jalur 6 : 1-2-7-8-15-16-19 Jalur 7 : 1-2-7-8-17-18
PDL : 1. Do Form Focus 2. Select Case X 3. Case 1 4. Show FrmBy; 5. Case 2 6. Show FrmDaftar; 7. Case 3 8. Show FrmSeleksi; 9. Case 4 10. Show FrmBayar; 11. Case 5 12. Show FrmLapDaftar; 13 Case 6 14 Show FrmLapBayar. 15 Case Else 16 End; 17 End Do Jalur berdiri sendiri Jalur 1 : 1-2-3-4-17 Jalur 2 : 1-2-5-6-17 Jalur 3 : 1-2-7-8-17 Jalur 4 : 1-2-9-10-17 Jalur 5 : 1-2-11-12-17 Jalur 6 : 1-2-13-14-17 Jalur 7 : 1-2-15-16
92 Flowgraph Layar Data Pendaftaran
Flowgraph Layar Daftar Seleksi
93 Flowgraph Layar Data Pembayaran
Flowgraph Layar Laporan Pendaftaran 1
2
3
5
7
9
4
6
8
10
11a
11b
PDL : 1. Do While Form Focus 2. Select Case X 3. Case 1 4. Input Z; 5. Case 2 6. Print Laporan; 7. Case 3 8. Preview Laporan; 9. Case 4 10. End 11a. End Select 11b. End do Jalur berdiri sendiri Jalur 1 : 1-2-3-4-11 Jalur 2 : 1-2-5-6-11 Jalur 3 : 1-2-7-8-11 Jalur 4 : 1-2-9-10
94 Flowgraph Layar Laporan Pembayaran
4.6
Analisa Hasil Pengujian dengan Metode White Box
1. Hasil dari analisa pada flowgraph login, dapat dijelaskan sebagai berikut : a. Pada jalur 1, setiap inputan yang menyebabkan kondisi salah akibat tidak terdaftarnya password dan user name, maka akan menampilkan pesan error dan langsung menutup program login. b. Pada jalur 2, setiap inputan yang berhasil melewati kondisi pengecekan user name dan password tetapi tidak berhasil melewati validasi kesesuaian user name dan password akan ditampilkan pesan error dan langsung menutup program login. c. Pada jalur 3, setiap inputan yang berhasil melewati kondisi pengecekan user name dan password dan berhasil melewati validasi kesesuaian user
95 name dan password akan ditampilkan program menu utama langsung menutup program login.
2. Hasil dari analisa pada flowgraph menu utama, dapat dijelaskan sebagai berikut : a. Pada jalur 1, setiap ada pemilihan menu jenis biaya akan menjalankan program jenis biaya. b. Pada jalur 2, setiap ada pemilihan menu pendaftaran akan menjalankan program pendaftaran. c. Pada jalur 3, setiap ada pemilihan menu daftar seleksi akan menjalankan program daftar seleksi. d. Pada jalur 4, setiap ada pemilihan menu pembayaran akan menjalankan program kwitansi. e. Pada jalur 5, setiap ada pemilihan menu laporan pendaftaran akan mejalankan program laporan pendaftaran. f. Pada jalur 6, setiap ada pemilihan menu laporan pembayaran akan menjalankan program laporan pembayaran. g. Pada jalur 7, setiap ada pemilihan menu keluar akan dilakukan proses penutupan program menu utama. h. Proses dari jalur 1 sampai dengan jalur 6 dilakukan berulang-ulang sampai pada saat user melakukan proses pada jalur 7.
96 3. Hasil dari analisa pada flowgraph data jenis biaya, dapat dijelaskan sebagai berikut : a. Pada jalur 1, merupakan suatu proses dimana user tidak memilih tombol apa pun, yang dilakukan user hanyalah menginput data pada kolom inputan. b. Pada jalur 2, merupakan proses yang dilakukan untuk menampilkan data pada tabel setiap kali terjadi proses pada jalur 3, 4, 5 dan 6. c. Pada jalur 3, setiap ada pemilihan proses simpan maka akan dijalankan proses simpan data. d. Pada jalur 4, setiap ada pemilihan proses batal maka akan dijalankan proses pembatalan inputan data. e. Pada jalur 5, setiap ada pemilihan proses hapus maka akan dijalankan proses hapus data. f. Pada jalur 6, setiap ada pemilihan proses cari maka akan dijalankan proses cari data. g. Pada jalur 7, setiap ada pemilihan menu keluar akan dilakukan proses penutupan program. h. Proses dari jalur 1 sampai dengan jalur 6 dilakukan berulang-ulang sampai pada saat user melakukan proses pada jalur 7.
97 4. Hasil dari analisa pada flowgraph data pendaftaran, dapat dijelaskan sebagai berikut : a.
Pada jalur 1, merupakan suatu proses dimana user tidak memilih tombol apa pun, yang dilakukan user hanyalah menginput data pada kolom inputan..
b
Pada jalur 2, merupakan proses yang dilakukan untuk menampilkan data pada tabel setiap kali terjadi proses pada jalur 3, 4, dan 5.
c.
Pada jalur 3, setiap ada pemilihan proses simpan maka akan dijalankan proses simpan data.
d.
Pada jalur 4, setiap ada pemilihan proses batal maka akan dijalankan proses pembatalan inputan data.
e.
Pada jalur 5, setiap ada pemilihan proses cari maka akan dijalankan proses cari data.
f.
Pada jalur 6, setiap ada pemilihan menu keluar akan dilakukan proses penutupan program.
g.
Proses dari jalur 1 sampai dengan jalur 5 dilakukan berulang-ulang sampai pada saat user melakukan proses pada jalur 6.
5. Hasil dari analisa pada flowgraph daftar seleksi, dapat dijelaskan sebagai berikut : a.
Pada jalur 1, merupakan suatu proses dimana user tidak memilih tombol apa pun, yang dilakukan user hanyalah menginput periode tahun ajaran.
98 b.
Pada jalur 2, merupakan proses yang dilakukan untuk menginput nilai pada data yang ditampilkan pada tabel.
c.
Pada jalur 3, setiap ada pemilihan proses simpan maka akan dijalankan proses simpan data.
d.
Pada jalur 4, setiap ada pemilihan proses batal maka akan dijalankan proses pembatalan inputan data.
e.
Pada jalur 5, setiap ada pemilihan proses cetak maka akan dijalankan proses cetak data.
f.
Pada jalur 6, setiap ada pemilihan proses cari maka akan dijalankan proses pencarian data berdasarkan periode tahun ajaran.
g.
Pada jalur 7, setiap ada pemilihan menu keluar akan dilakukan proses penutupan program.
h.
Proses dari jalur 1 sampai dengan jalur 6 dilakukan berulang-ulang sampai pada saat user melakukan proses pada jalur 7.
6. Hasil dari analisa pada flowgraph pembayaran, dapat dijelaskan sebagai berikut : a.
Pada jalur 1, merupakan suatu proses ditampilkannya daftar biaya beli formulir jika nomor formulir tidak terdaftar atau kosong.
b.
Pada jalur 2, merupakan suatu proses ditampilkannya daftar biaya pembayaran uang pangkal jika nomor formulir terdaftar dan tidak kosong.
c.
Pada jalur 3, merupakan proses pemilihan biaya oleh user dan secara otomatis akan menghitung sub total.
99 d.
Pada jalur 4, merupakan proses input potongan biaya oleh user.
e.
Pada jalur 5, setiap ada pemilihan proses simpan maka akan dijalankan proses simpan data.
f.
Pada jalur 6, setiap ada pemilihan proses batal maka akan dijalankan proses pembatalan inputan data.
g.
Pada jalur 7, setiap ada pemilihan proses cetak maka akan dijalankan proses pencetakan kwitansi berdasarkan nomor kwitansi.
h.
Pada jalur 8, setiap ada pemilihan proses keluar, maka akan dijalankan proses penghentian program.
i.
Proses dari jalur 1 sampai dengan jalur 7 dilakukan berulang-ulang sampai pada saat user melakukan proses pada jalur 8.
7. Hasil dari analisa pada flowgraph laporan pendaftaran, dapat dijelaskan sebagai berikut : a.
Pada jalur 1, merupakan suatu proses input periode laporan oleh user.
b.
Pada jalur 2, merupakan suatu proses pencetakan laporan jika user memilih proses cetak.
c.
Pada jalur 3, merupakan suatu proses menampilkan laporan pada layar jika user memilih proses preview.
d.
Pada jalur 4, merupakan proses menutup program.
e.
Proses dari jalur 1 sampai dengan jalur 3 dilakukan berulang-ulang sampai pada saat user melakukan proses pada jalur 4.
100 8. Hasil dari analisa pada flowgraph laporan pembayaran, dapat dijelaskan sebagai berikut : a.
Pada jalur 1, merupakan suatu proses input periode laporan oleh user.
b.
Pada jalur 2, merupakan suatu proses pencetakan laporan jika user memilih proses cetak..
c.
Pada jalur 3, merupakan suatu proses menampilkan laporan pada layar jika user memilih proses preview.
d.
Pada jalur 4, merupakan proses menutup program.
f.
Proses dari jalur 1 sampai dengan jalur 3 dilakukan berulang-ulang sampai pada saat user melakukan proses pada jalur 4.
BAB V PENUTUP
5.1
Kesimpulan Setelah mempelajari permasalahan yang dihadapi dan juga solusi pemecahan
yang ditawarkan. Maka dapat ditarik kesimpulan yang dapat dirinci seperti di bawah ini : 1. Penggunaan sistem penerimaan siswa baru secara manual terdapat kekurangan dalam pencatatan data calon siswa baru, dengan adanya aplikasi ini kekurangan tersebut dapat diatasi. 2. Aplikasi ini mempunyai kemudahan untuk menyimpan data dan mengedit data seperti yang terdapat di dalam form data pendaftaran, karena pada sistem yang manual penyimpanan data masih kurang teratur. 3. Rancangan penerimaan siswa baru yang telah dibuat memiliki kemudahan dalam mencetak kwitansi pembayaran, laporan siswa baru, dan laporan pembayaran sehingga prosesnya menjadi lebih lama. 4. Keamanan, dan keutuhan data dalam sistem komputerisasi belum terjamin secara utuh, serta dapat menghemat tempat dan ruang penyimpanan calon siswa baru. 5. Berdasarkan hasil pengujian baik dengan metode Black Box dan White Box, aplikasi ini berhasil memberikan suatu alternatif rancangan sistem informasi, terutama kepada panitia penerimaan siswa baru agar dapat diperoleh hasil
101
102 seleksi dengan cepat dan akurat serta mendapatkan hasil seperti yang diharapkan oleh panitia penerimaan dan pimpinan sekolah.
5.2
Saran
Untuk melengkapi apa yang dilakukan, dibawah ini ada beberapa hal yang dapat disarankan yang diajukan untuk perbaikan adalah sebagai berikut : 1. Perlu adanya personil yang bertanggung jawab, yang khusus memelihara dan mengembangkan sistem sehingga bila diperlukan dapat dikerjakan dengan cepat. 2. Data yang ada sebaiknya disimpan kembali ke file cadangan, agar suatu ketika ada masalah, data yang ada tidak hilang dan juga kebersihan di sekitar ruang komputer dijaga. 3. Dengan semakin berkembangnya ilmu pengetahuan dan teknologi maka diharapkan sistem ini dapat diperbahui secara berkala, sehingga data yang ada menjadi lebih baru. 4. Personil yang menangani sistem yang baru diharapkan mentaati dan melaksanakan prosedur sesuai dengan petunjuk pelaksaan. Disiplin kerja dari semua pihak yang terkait sangat diharapkan dalam menjalankan sistem usulan ini, sehingga sistem dapat berjalan secara optimal. 5.
Untuk form login, diharapkan kedepan dapat diimplementasikan metode enkripsi untuk menjamin keamanan aplikasi.
103 6.
Untuk pelacakan calon siswa dan pelacakan pembayaran masih perlu disempurnakan untuk memenuhi kebutuhan di masa yang akan datang. Penggunaan sistem dengan kegiatan-kegiatan tersebut di atas diharapkan dapat memberikan hasil yang optimal dari sistem yang dirancang.
104
DAFTAR PUSTAKA
Al Fatta Hanif. 2007. Analisis Dan Perancangan Sistem Informasi. Andi, Yogyakarta HM., Jogiyanto, MBA. 2005. Analisis Dan Desain. Andi, Yogyakarta Kristanto Andi. 2008. Perancangan Sistem Informasi dan Aplikasinya. Cetakan Pertama. Gava Media, Yogyakarta Munawar. 2005. Pemodelan Visual dengan UML. Cetakan Pertama. Jakarta Pressman Roger, S. 2002. Rekayasa Perangkat Lunak. Andi, Yogyakarta Sholiq. 2006. Pemodelan Sistem Informasi Obyek dengan UML. Cetakan Pertama. Graha Ilmu, Yogyakarta UIEU-University Press. Graha Ilmu, Yogyakarta Yung Kok. 2005. Membangun Aplikasi Database dengan Visual Basic .NET 2005 dengan Perintah SQL. PT. Gramedia, Jakarta
Sumber lain : Anoni
http://www.angew.info/files/Tutorial_UML/Modul%20workshop
%20UML_bab2.pdf ( 28/04/2009) http:// www.gealgeol.com/2008/02/12/mysql.html (16/04/2009)
LISTING PROGRAM ModPipit Imports System.Data.Odbc Imports System.Data
Module ModPipit '======================================== deklarasi variabel data Public koneksi As OdbcConnection Public perintah As OdbcCommand Public baca As OdbcDataReader Public baca2 As OdbcDataReader Public stsOK As Boolean Public loginOK As Boolean 'deklarasi variabel data jenis biaya Public kdBy, nmBy As String Public jmlBy As Integer 'deklarasi variabel data formulir Public no_form, periode, nm_cs, tmp_lhr_cs, jk_cs, agama_cs, alm_cs, tlp_cs, anak_ke, jml_anak, _ nm_ayah, tmp_lhr_ayah, pend_ayah, pek_ayah, alm_kntr_ayah, tlp_kntr_ayah, nm_ibu, tmp_lhr_ibu, _ pend_ibu, pek_ibu, alm_kntr_ibu, tlp_kntr_ibu As String Public tgl_lhr_cs, tgl_lhr_ayah, tgl_lhr_ibu As String 'deklarasi variabel data kwitansi Public no_kwt, ket_byr, tgl_kwt As String Public jml_byr As Integer 'deklarasi variabel detil kwitansi Public no_dk As String Public biaya As Integer 'deklarasi variabel data user
L1
L2
Public nmOrang, passOrang As String '======================================== awal prosedur utama Public Function bukaKoneksi() As Boolean Try koneksi = New OdbcConnection("Dsn=ipit;database=ipit;server=localhost;uid=root;port=3306;option=0") koneksi.Open() bukaKoneksi = True Catch ex As Exception Err.Clear() bukaKoneksi = False End Try End Function
Public Sub tutupKoneksi() Try koneksi.Close() koneksi = Nothing Catch ex As Exception Err.Clear() End Try End Sub
Public Function thn() As String thn = Right(Date.Now.Year, 2) End Function
Public Function thn_ajar() As String thn_ajar = Date.Now.Year & "/" & Date.Now.Year + 1 End Function
L3
Public Function cek_orang(ByVal userName As String, ByVal userPass As String) As Boolean Dim strSQL As String = "Select * from orang where kd_orang='" & userName & "' and pass_orang='" & userPass & "'" Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader If baca.Read = True Then If UCase(baca.Item(0)) <> UCase(userName) And UCase(baca.Item(1)) <> UCase(userPass) Then cek_orang = False nmOrang = "" passOrang = "" Else nmOrang = baca.Item(0) passOrang = baca.Item(0) cek_orang = True End If Else nmOrang = "" passOrang = "" cek_orang = False End If Else nmOrang = "" passOrang = "" cek_orang = False End If Catch ex As Exception cek_orang = False
L4
nmOrang = "" passOrang = "" MsgBox(ex.Message) End Try End Function
Public Function idBaru(ByVal nmFile As String, ByVal strSQL As String) As String Dim idLama As String = "" Dim tempId As String = "" Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader If baca.Read Then idLama = Val(baca(0).ToString) Select Case LCase(nmFile) Case "formulir" idLama = Val(Mid(baca(0).ToString, 3, 3)) + 1 tempId = thn() & Mid("000", 1, 3 - idLama.Length) & idLama Case "siswa" idLama = Val(Mid(baca(0).ToString, 3, 3)) + 1 tempId = thn() & Mid("000", 1, 3 - idLama.Length) & idLama Case "biaya" idLama = Val(baca(0).ToString) + 1 tempId = Mid("000", 1, 3 - idLama.Length) & idLama Case "kwitansi" idLama = Val(Mid(baca(0).ToString, 3, 3)) + 1 tempId = thn() & Mid("000", 1, 3 - idLama.Length) & idLama Case "kelas"
L5
idLama = Val(baca(0).ToString) + 1 tempId = Mid("00", 1, 2 - idLama.Length) & idLama End Select Else Select Case LCase(nmFile) Case "formulir" tempId = thn() & "001" Case "siswa" tempId = thn() & "001" Case "biaya" tempId = "001" Case "kwitansi" tempId = thn() & "001" End Select End If idBaru = tempId Call tutupKoneksi() Else idBaru = "Tidak ada koneksi dengan database....!!!" End If Catch ex As Exception idBaru = ex.Message & Chr(13) & Err.Description Err.Clear() End Try End Function '======================================== akhir prosedur utama '======================================== awal prosedur biaya Public Sub showListBiaya(ByVal strSQL As String, ByVal tabel As ListView) Dim baris As ListViewItem
L6
If Len(Trim(strSQL)) <> 0 Then Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader tabel.Items.Clear() Do While baca.Read baris = tabel.Items.Add(baca.Item(0).ToString) baris.SubItems.Add(baca.Item(1).ToString) baris.SubItems.Add(baca.Item(2).ToString) Loop Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...") End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try End If End Sub
Public Sub showBiaya(ByVal strSQL As String) If Len(Trim(strSQL)) <> 0 Then Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader
L7
If baca.Read Then kdBy = baca.Item(0) nmBy = baca.Item(1) jmlBy = baca.Item(2) Else kdBy = "" nmBy = "" jmlBy = 0 End If Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...") End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try End If End Sub
Public Function saveBiaya(ByVal strSQL As String) As String Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) perintah.ExecuteNonQuery() saveBiaya = "Data Biaya berhasil disimpan" Call tutupKoneksi() Else
L8
saveBiaya = "Gagal menyimpan data Biaya disebabkan tidak adanya koneksi dengan database" End If Catch ex As Exception saveBiaya = "Gagal menyimpan data Biaya disebabkan terjadi error pada sistem" & _ Chr(13) & "Deskripsi error : " & Chr(13) & ex.Message End Try End Function
Public Function deleteBiaya(ByVal strSQL As String) As String Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) perintah.ExecuteNonQuery() deleteBiaya = "Data Biaya berhasil dihapus" Call tutupKoneksi() Else deleteBiaya = "Gagal menghapus data Biaya disebabkan tidak adanya koneksi dengan database" End If Catch ex As Exception deleteBiaya = "Gagal menghapus data Biaya disebabkan terjadi error pada sistem" & _ Chr(13) & "Deskripsi error : " & Chr(13) & ex.Message End Try End Function '======================================== akhir prosedur Biaya '======================================== awal prosedur Formulir Public Sub showListFormulir(ByVal strSQL As String, ByVal tabel As ListView) Dim baris As ListViewItem Dim sts As String = ""
L9
If Len(Trim(strSQL)) <> 0 Then Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader tabel.Items.Clear() Do While baca.Read baris = tabel.Items.Add(baca.Item("no_form").ToString) baris.SubItems.Add(baca.Item("nm_cs").ToString) Select Case baca.Item("sts_daftar") Case "0" : sts = "PROSES" Case "1" : sts = "LULUS" Case "2" : sts = "GAGAL" Case Else : sts = "PROSES" End Select baris.SubItems.Add(sts) Loop Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...") End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try End If End Sub
L10
Public Sub showFormulir(ByVal strSQL As String) If Len(Trim(strSQL)) <> 0 Then Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader If baca.Read Then no_form = baca.Item("no_form") periode = baca.Item("periode") nm_cs = baca.Item("nm_cs") jk_cs = baca.Item("jk_cs") tmp_lhr_cs = baca.Item("tmp_lhr_cs") tgl_lhr_cs = baca.Item("tgl_lhr_cs") agama_cs = baca.Item("agama_cs") alm_cs = baca.Item("alm_cs") tlp_cs = baca.Item("tlp_cs") anak_ke = baca.Item("anak_ke") jml_anak = baca.Item("jml_anak") nm_ayah = baca.Item("nm_ayah") tmp_lhr_ayah = baca.Item("tmp_lhr_ayah") tgl_lhr_ayah = baca.Item("tgl_lhr_ayah") pend_ayah = baca.Item("pend_ayah") pek_ayah = baca.Item("pek_ayah") tlp_kntr_ayah = baca.Item("tlp_kantor_ayah") alm_kntr_ayah = baca.Item("alm_kantor_ayah") nm_ibu = baca.Item("nm_ibu") tmp_lhr_ibu = baca.Item("tmp_lhr_ibu") tgl_lhr_ibu = baca.Item("tgl_lhr_ibu") pend_ibu = baca.Item("pend_ibu")
L11
pek_ibu = baca.Item("pek_ibu") tlp_kntr_ibu = baca.Item("tlp_kantor_ibu") alm_kntr_ibu = baca.Item("alm_kantor_ibu") Else no_form = "" periode = "" nm_cs = "" jk_cs = "" tmp_lhr_cs = "" tgl_lhr_cs = Date.Now agama_cs = "" alm_cs = "" tlp_cs = "" anak_ke = "" jml_anak = "" nm_ayah = "" tmp_lhr_ayah = "" tgl_lhr_ayah = Date.Now pend_ayah = "" pek_ayah = "" tlp_kntr_ayah = "" alm_kntr_ayah = "" nm_ibu = "" tmp_lhr_ibu = "" tgl_lhr_ibu = Date.Now pend_ibu = "" pek_ibu = "" tlp_kntr_ibu = "" alm_kntr_ibu = ""
L12
End If Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...") End If Catch ex As Exception 'MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try End If End Sub
Public Function saveFormulir(ByVal strSQL As String) As String Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) perintah.ExecuteNonQuery() saveFormulir = "Data Formulir berhasil disimpan" Call tutupKoneksi() Else saveFormulir = "Gagal menyimpan data Formulir disebabkan tidak adanya koneksi dengan database" End If Catch ex As Exception saveFormulir = "Gagal menyimpan data Formulir disebabkan terjadi error pada sistem" & _ Chr(13) & "Deskripsi error : " & Chr(13) & ex.Message End Try End Function
L13
Public Sub showPil(ByVal pilihan As ComboBox) Dim strSQL As String = "select * from formulir " & _ "where sts_daftar='1' and periode='" & thn_ajar() & "' " & _ "order by no_form asc" Try pilihan.Items.Clear() If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader Do While baca.Read pilihan.Items.Add(baca.Item("no_form")) Loop End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try End Sub
Public Sub getPeriode(ByVal pil As ComboBox) Dim strSQL As String = "select distinct periode from formulir order by periode asc" Try pil.Items.Clear() If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader Do While baca.Read pil.Items.Add(baca.Item("periode")) Loop
L14
End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try End Sub '======================================== akhir prosedur Formulir '======================================== awal prosedur pembayaran Public Sub showListKwitansi(ByVal strSQL As String, ByVal tabel As ListView) Dim baris As ListViewItem If Len(Trim(strSQL)) <> 0 Then Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader tabel.Items.Clear() Do While baca.Read baris = tabel.Items.Add(baca.Item(0).ToString) baris.SubItems.Add(baca.Item(1).ToString) baris.SubItems.Add(baca.Item(2).ToString) Loop Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...") End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear()
L15
End Try End If End Sub
Public Sub showKwitansi(ByVal strSQL As String) If Len(Trim(strSQL)) <> 0 Then Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader If baca.Read Then no_kwt = baca.Item("no_kwt") tgl_kwt = baca.Item("tgl_kwt") ket_byr = baca.Item("ket_bayar") jml_byr = baca.Item("jml_byr") no_form = baca.Item("no_form") Else no_kwt = "" tgl_kwt = "" ket_byr = "" jml_byr = 0 no_form = "" End If Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...") End If Catch ex As Exception
L16
MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try End If End Sub
Public Sub saveKwitansi(ByVal strSQL As String) Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) perintah.ExecuteNonQuery() Call tutupKoneksi() stsOK = True Else stsOK = False End If Catch ex As Exception stsOK = False Err.Clear() End Try End Sub
Public Sub saveDetil(ByVal strSQL As String) Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) perintah.ExecuteNonQuery() Call tutupKoneksi() stsOK = True
L17
Else stsOK = False End If Catch ex As Exception stsOK = False Err.Clear() End Try End Sub
Public Sub showListDetil(ByVal noKwt As String, ByVal tabel As ListView) Dim baris As ListViewItem Dim strSQL As String = "select a.no_kwt, b.kd_by, b.nm_by, a.biaya " & _ "from detil_kwitansi as a inner join jns_biaya as b " & _ "on a.kd_by=b.kd_by where no_kwt='" & noKwt & "' and b.nm_by not like '%formulir%' " & _ "order by kd_by asc" Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader tabel.Items.Clear() jml_byr = 0 If baca.Read Then Do While baca.Read baris = tabel.Items.Add(baca.Item("kd_by").ToString) baris.SubItems.Add(baca.Item("nm_by").ToString) baris.SubItems.Add(baca.Item("biaya").ToString) jml_byr = jml_byr + baca.Item("biaya") Loop Else
L18
strSQL = "select * from jns_biaya where nm_by not like '%formulir%' order by kd_by asc" perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader Do While baca.Read baris = tabel.Items.Add(baca.Item("kd_by").ToString) baris.SubItems.Add(baca.Item("nm_by").ToString) baris.SubItems.Add(baca.Item("jml_by").ToString) jml_byr = jml_byr + baca.Item("jml_by") Loop End If Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...") End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try End Sub Public Sub showListBy(ByVal tabel As ListView) Dim baris As ListViewItem Dim strSQL As String = "select * from jns_biaya where nm_by like '%formulir%'" Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader tabel.Items.Clear() jml_byr = 0
L19
Do While baca.Read baris = tabel.Items.Add(baca.Item("kd_by").ToString) baris.SubItems.Add(baca.Item("nm_by").ToString) baris.SubItems.Add(baca.Item("jml_by").ToString) jml_byr = jml_byr + baca.Item("jml_by") Loop Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...") End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try End Sub
Public Sub getDetil(ByVal noKwt As String, ByVal tabel As ListView) Dim baris As ListViewItem Dim strSQL As String = "select a.no_kwt, b.kd_by, b.nm_by, a.biaya " & _ "from detil_kwitansi as a inner join jns_biaya as b " & _ "on a.kd_by=b.kd_by where a.no_kwt='" & noKwt & "' " & _ "order by a.kd_by asc" Try If bukaKoneksi() = True Then perintah = New OdbcCommand(strSQL, koneksi) baca = perintah.ExecuteReader tabel.Items.Clear() jml_byr = 0
L20
Do While baca.Read baris = tabel.Items.Add(baca.Item("kd_by").ToString) baris.SubItems.Add(baca.Item("nm_by").ToString) baris.SubItems.Add(baca.Item("biaya").ToString) jml_byr = jml_byr + baca.Item("biaya") baris.Checked = True Loop Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...") End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try End Sub '======================================== akhir prosedur pembayaran '======================================== awal prosedur Orang Public Sub saveOrang(ByVal baru As Boolean, ByVal idOrang As String, ByVal passwordOrang As String, ByVal confirmPassword As String) Dim strSQL As String = "" Try If bukaKoneksi() = True Then If baru = True Then If UCase(passwordOrang) <> UCase(confirmPassword) Then MsgBox("Maaf...password tidak sesuai dengan konfirmasi password !", MsgBoxStyle.Exclamation) Else strSQL = "insert into orang(kd_orang,pass_orang) values ('" & idOrang & "','" & passwordOrang & "')"
L21
perintah = New OdbcCommand(strSQL, koneksi) perintah.ExecuteNonQuery() MsgBox("Data user sudah disimpan ", MsgBoxStyle.Information) End If Else If nmOrang = "" And passOrang = "" Then MsgBox("Maaf anda harus login terlebih dahulu untuk mengakses tools ini !", MsgBoxStyle.Exclamation) Else If UCase(passwordOrang) <> UCase(confirmPassword) Then MsgBox("Maaf...password tidak sesuai dengan konfirmasi password !", MsgBoxStyle.Exclamation) Else strSQL = "update orang set kd_orang='" & idOrang & "', pass_orang='" & passwordOrang & "' where kd_orang='" & nmOrang & "'" perintah = New OdbcCommand(strSQL, koneksi) perintah.ExecuteNonQuery() nmOrang = idOrang passOrang = passwordOrang MsgBox("Data user sudah disimpan ", MsgBoxStyle.Information) End If End If End If
Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...") End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...")
L22
Err.Clear() End Try End Sub
Public Sub deleteOrang(ByVal idOrang As String, ByVal passwordOrang As String, ByVal confirmPassword As String) Dim strSQL As String = "" If nmOrang = "" Then MsgBox("Maaf anda harus login terlebih dahulu untuk mengakses tools ini !", MsgBoxStyle.Exclamation) Exit Sub End If Try If bukaKoneksi() = True Then If UCase(nmOrang) = UCase(idOrang) And UCase(passOrang) = UCase(passOrang) Then MsgBox("Maaf anda tidak dapat menghapus user name yang sedang aktif !", MsgBoxStyle.Exclamation) Else If UCase(passwordOrang) <> UCase(confirmPassword) Then MsgBox("Maaf...password tidak sesuai dengan konfirmasi password !", MsgBoxStyle.Exclamation) Else strSQL = "delete from orang where kd_orang='" & idOrang & "' " perintah = New OdbcCommand(strSQL, koneksi) perintah.ExecuteNonQuery() MsgBox("Data user sudah dihapus ", MsgBoxStyle.Information) End If End If Call tutupKoneksi() Else MsgBox("Tidak ada koneksi dengan database....!", MsgBoxStyle.Critical, "Sistem Error...")
L23
End If Catch ex As Exception MsgBox("Sistem mengalami error...." & Chr(13) & "Deskripsi Error : " & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Sistem Error...") Err.Clear() End Try
End Sub '======================================== akhir prosedur Orang End Module
FrmUtama Public Class FrmUtama
Private Sub ToolStripMenuItem8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem8.Click Me.Close() End Sub
Private Sub FrmUtama_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing If MsgBox("Apakah anda yakin keluar aplikasi ini ?", MsgBoxStyle.Question + MsgBoxStyle.YesNo, "Konfirmasi keluar sistem") = MsgBoxResult.No Then e.Cancel = True Else FrmLogin.Dispose() End If End Sub
Private Sub ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem1.Click
L24
FrmKelas.ShowDialog() End Sub Private Sub ToolStripMenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem2.Click FrmBy.ShowDialog() End Sub Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem3.Click FrmFormulir.ShowDialog() End Sub
Private Sub ToolStripMenuItem4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem4.Click FrmSeleksi.ShowDialog() End Sub
Private Sub ToolStripMenuItem5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem5.Click FrmKwitansi.ShowDialog() End Sub
Private Sub ToolStripMenuItem6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem6.Click FrmLaporan.Text = "Laporan Siswa Baru" FrmLaporan.ShowDialog() End Sub
Private Sub ToolStripMenuItem7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem7.Click FrmLaporan.Text = "Laporan Pembayaran" FrmLaporan.ShowDialog() End Sub
L25
Private Sub FrmUtama_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown If e.KeyCode = Keys.F1 Then FrmUser.Button1.Text = "Save" ElseIf e.KeyCode = Keys.F2 Then FrmUser.Button1.Text = "Update" ElseIf e.KeyCode = Keys.F3 Then FrmUser.Button1.Text = "Delete" End If FrmUser.ShowDialog() End Sub End Class
FrmLogin Public Class FrmLogin
Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click loginOK = cek_orang(UsernameTextBox.Text, PasswordTextBox.Text) If loginOK = True Then FrmUtama.Show() Me.Hide() Else MsgBox("Maaf...anda tidak dapat mengakses aplikasi ini", MsgBoxStyle.Exclamation) Me.Dispose() End If End Sub
Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
L26
Me.Dispose() End Sub
Private Sub FrmLogin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.CenterToScreen()
End Sub End Class
FrmBy Public Class FrmBy Dim ada As Boolean 'deklarasi variabel status data (baru atau sudah ada) 'event/kejadian pada saat program diload/dipanggil Private Sub FrmBy_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim tempID As String = idBaru("biaya", "select * from jns_biaya order by kd_by desc") If IsNumeric(tempID) = False Then MsgBox(tempID, MsgBoxStyle.Critical, "Sistem Error....") Else TextBox1.Text = tempID End If ada = False Call showListBiaya("select * from jns_biaya order by kd_by asc", ListView1) End Sub 'event/kejadian pada saat tombol keluar diklik Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Me.Dispose() End Sub
L27
'event/kejadian pada saat tombol cari diklik Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Dim cari As String = InputBox("Input nama jenis biaya yang anda cari", "Pencarian data jenis biaya") If Len(Trim(cari)) <> 0 Then Call showListBiaya("select * from jns_biaya where nm_by like '%" & cari & "%' order by kd_by asc", ListView1) End If End Sub 'event/kejadian pada saat tombol hapus diklik Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click If ada = False Then MsgBox("Tidak ada data yang dapat dihapus", MsgBoxStyle.Exclamation, "Konfirmasi") Else MsgBox(deleteBiaya("delete from jns_biaya where kd_by='" & TextBox1.Text & "'"), MsgBoxStyle.Information, "Konfirmasi") End If Button2_Click(sender, e) End Sub 'event/kejadian pada saat tombol batal diklik Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click TextBox1.Text = "" TextBox2.Text = "" TextBox3.Text = "" ada = False Dim tempID As String = idBaru("biaya", "select * from jns_biaya order by kd_by desc") If IsNumeric(tempID) = False Then MsgBox(tempID, MsgBoxStyle.Critical, "Sistem Error....") Else
L28
TextBox1.Text = tempID End If Call showListBiaya("select * from jns_biaya order by kd_by asc", ListView1) End Sub 'event/kejadian pada saat tombol simpan diklik Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim lakukan As String = "" If ada = False Then If TextBox1.Text <> idBaru("biaya", "select * from jns_biaya order by kd_by desc") Then MsgBox("Kode jenis biaya tidak perlu diinput...!" & Chr(13) & _ "Kode jenis biaya akan diganti dengan kode yang telah disediakan", MsgBoxStyle.Exclamation, "Peringatan") TextBox1.Text = idBaru("biaya", "select * from jns_biaya order by kd_by desc") Exit Sub Else lakukan = "insert into jns_biaya(kd_by, nm_by, jml_by) values ('" & TextBox1.Text & "','" & TextBox2.Text & "'," & Val(TextBox3.Text) & " )" End If Else lakukan = "update jns_biaya set nm_by='" & TextBox2.Text & "', jml_by=" & Val(TextBox3.Text) & " where kd_by='" & TextBox1.Text & "'" End If MsgBox(saveBiaya(lakukan), MsgBoxStyle.Information, "Konfirmasi") Button2_Click(sender, e) End Sub 'event/kejadian pada saat terjadi seleksi item ditabel Private Sub ListView1_ItemSelectionChanged(ByVal sender As Object, ByVal e As System.Windows.Forms.ListViewItemSelectionChangedEventArgs) Handles ListView1.ItemSelectionChanged If e.Item.Text = "" Then ada = False Exit Sub
L29
End If Call showBiaya("select * from jns_biaya where kd_by='" & e.Item.Text & "'") TextBox1.Text = kdBy.ToString TextBox2.Text = nmBy.ToString TextBox3.Text = jmlBy.ToString ada = True End Sub End Class
FrmFormulir Public Class FrmFormulir Dim ada As Boolean 'event program dipanggil Private Sub FrmFormulir_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim tempID As String = idBaru("formulir", "select * from formulir order by no_form desc") If IsNumeric(tempID) = False Then MsgBox(tempID, MsgBoxStyle.Critical, "Sistem Error....") Else TextBox1.Text = tempID End If ada = False DateTimePicker1.Value = Date.Now.Date DateTimePicker2.Value = Date.Now.Date DateTimePicker3.Value = Date.Now.Date TextBox2.Text = thn_ajar() End Sub 'event tombol keluar diklik Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
L30
Me.Dispose() End Sub 'event tombol batal diklik Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click TextBox1.Text = "" TextBox2.Text = "" TextBox3.Text = "" TextBox4.Text = "" TextBox5.Text = "" TextBox6.Text = "" TextBox7.Text = "" TextBox8.Text = "" TextBox9.Text = "" TextBox10.Text = "" TextBox11.Text = "" TextBox12.Text = "" TextBox13.Text = "" TextBox14.Text = "" TextBox15.Text = "" TextBox16.Text = "" TextBox17.Text = "" TextBox18.Text = "" DateTimePicker1.Value = Date.Now.Date DateTimePicker2.Value = Date.Now.Date DateTimePicker3.Value = Date.Now.Date RadioButton1.Checked = False RadioButton2.Checked = False ComboBox1.Text = "" ComboBox2.Text = ""
L31
ComboBox3.Text = "" ada = False Dim tempID As String = idBaru("formulir", "select * from formulir order by no_form desc") If IsNumeric(tempID) = False Then MsgBox(tempID, MsgBoxStyle.Critical, "Sistem Error....") Else TextBox1.Text = tempID End If End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim lakukan As String = "" Dim jk, pendBokap, pendNyokap, religi As String tgl_lhr_cs = DateTimePicker1.Value.Year & "-" & DateTimePicker1.Value.Month & "-" & DateTimePicker1.Value.Day tgl_lhr_ayah = DateTimePicker2.Value.Year & "-" & DateTimePicker2.Value.Month & "-" & DateTimePicker2.Value.Day tgl_lhr_ibu = DateTimePicker3.Value.Year & "-" & DateTimePicker3.Value.Month & "-" & DateTimePicker3.Value.Day If RadioButton1.Checked = True Then jk = "L" Else jk = "P" End If Select Case UCase(ComboBox1.Text) Case "ISLAM" : religi = "0" Case "KHATOLIK" : religi = "1" Case "PROTESTAN" : religi = "2" Case "HINDU" : religi = "3" Case "BUDHA" : religi = "4"
L32
Case Else : religi = "5" End Select Select Case UCase(ComboBox2.Text) Case "SD" : pendBokap = "1" Case "SMP" : pendBokap = "2" Case "SMA/SMK" : pendBokap = "3" Case "DIPLOMA" : pendBokap = "4" Case "S1" : pendBokap = "5" Case "S2" : pendBokap = "6" Case "S3" : pendBokap = "7" Case Else : pendBokap = "0" End Select Select Case UCase(ComboBox3.Text) Case "SD" : pendNyokap = "1" Case "SMP" : pendNyokap = "2" Case "SMA/SMK" : pendNyokap = "3" Case "DIPLOMA" : pendNyokap = "4" Case "S1" : pendNyokap = "5" Case "S2" : pendNyokap = "6" Case "S3" : pendNyokap = "7" Case Else : pendNyokap = "0" End Select
If ada = False Then If TextBox1.Text <> idBaru("formulir", "select * from formulir order by no_form desc") Then MsgBox("Nomor formulir tidak perlu diinput...!" & Chr(13) & _ "Nomor formulir akan diganti dengan nomor yang telah disediakan", MsgBoxStyle.Exclamation, "Peringatan") TextBox1.Text = idBaru("formulir", "select * from formulir order by no_form desc")
L33
Exit Sub Else lakukan = "insert into formulir(no_form, periode, nm_cs, tmp_lhr_cs, tgl_lhr_cs, jk_cs, agama_cs, alm_cs, " & _ "tlp_cs, anak_ke, jml_anak, nm_ayah, tmp_lhr_ayah, tgl_lhr_ayah, pend_ayah, pek_ayah, alm_kantor_ayah, " & _ "tlp_kantor_ayah, nm_ibu, tmp_lhr_ibu, tgl_lhr_ibu, pend_ibu, pek_ibu, alm_kantor_ibu, tlp_kantor_ibu, sts_daftar) values ('" & _ TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" & TextBox4.Text & "','" & tgl_lhr_cs & "','" & _ jk & "','" & religi & "','" & TextBox5.Text & "','" & TextBox6.Text & "','" & TextBox7.Text & "','" & TextBox8.Text & "','" & _ TextBox9.Text & "','" & TextBox10.Text & "','" & tgl_lhr_ayah & "','" & pendBokap & "','" & TextBox11.Text & "','" & _ TextBox12.Text & "','" & TextBox13.Text & "','" & TextBox14.Text & "','" & TextBox15.Text & "','" & tgl_lhr_ibu & "','" & _ pendNyokap & "','" & TextBox16.Text & "','" & TextBox17.Text & "','" & TextBox18.Text & "','0')" End If Else lakukan = "update formulir set periode='" & TextBox2.Text & "', " & _ "nm_cs='" & TextBox3.Text & "', " & _ "tmp_lhr_cs='" & TextBox4.Text & "', " & _ "tgl_lhr_cs='" & tgl_lhr_ayah & "', " & _ "jk_cs='" & jk & "', " & _ "agama_cs='" & religi & "', " & _ "alm_cs='" & TextBox5.Text & "', " & _ "tlp_cs='" & TextBox6.Text & "', " & _ "anak_ke='" & TextBox7.Text & "', " & _ "jml_anak='" & TextBox8.Text & "', " & _ "nm_ayah='" & TextBox9.Text & "', " & _ "tmp_lhr_ayah='" & TextBox10.Text & "', " & _ "tgl_lhr_ayah='" & tgl_lhr_ayah & "', " & _
L34
"pend_ayah='" & pendBokap & "', " & _ "pek_ayah='" & TextBox11.Text & "', " & _ "alm_kantor_ayah='" & TextBox12.Text & "', " & _ "tlp_kantor_ayah='" & TextBox13.Text & "', " & _ "nm_ibu='" & TextBox14.Text & "', " & _ "tmp_lhr_ibu='" & TextBox15.Text & "', " & _ "tgl_lhr_ibu='" & tgl_lhr_ibu & "', " & _ "pend_ibu='" & pendNyokap & "', " & _ "pek_ibu='" & TextBox16.Text & "', " & _ "alm_kantor_ibu='" & TextBox17.Text & "', " & _ "tlp_kantor_ibu='" & TextBox18.Text & "' " & _ "where no_form='" & TextBox1.Text & "'" End If MsgBox(saveFormulir(lakukan), MsgBoxStyle.Information, "Konfirmasi") Button2_Click(sender, e) End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim cari As String = InputBox("Input nomor formulir yang anda cari", "Pencarian data pendaftaran") Dim tgl As String = "" Dim bln As String = "" Dim thn As String = "" Dim dTgl As Date = Date.Now On Error Resume Next If Len(Trim(cari)) <> 0 Then Call showFormulir("select * from formulir where no_form='" & cari & "'")
If no_form <> "" Then
L35
ada = True TextBox1.Text = no_form.ToString TextBox2.Text = periode.ToString TextBox3.Text = nm_cs.ToString TextBox4.Text = tmp_lhr_cs.ToString tgl = Val(Mid(tgl_lhr_cs.ToString, 1, 2)) bln = Val(Mid(tgl_lhr_cs.ToString, 4, 2)) thn = Val(Mid(tgl_lhr_cs.ToString, 7, 4)) dTgl = tgl & "/" & bln & "/" & thn DateTimePicker1.Value = dTgl If UCase(jk_cs.ToString) = "L" Then RadioButton1.Checked = True Else RadioButton2.Checked = True End If Select Case UCase(agama_cs.ToString) Case "0" : ComboBox1.Text = "ISLAM" Case "1" : ComboBox1.Text = "KHATOLIK" Case "2" : ComboBox1.Text = "PROTESTAN" Case "3" : ComboBox1.Text = "HINDU" Case "4" : ComboBox1.Text = "BUDHA" Case Else : ComboBox1.Text = "OTHERS" End Select TextBox5.Text = alm_cs.ToString TextBox6.Text = tlp_cs.ToString TextBox7.Text = anak_ke.ToString TextBox8.Text = jml_anak.ToString TextBox9.Text = nm_ayah.ToString TextBox10.Text = tmp_lhr_ayah.ToString
L36 L36
tgl = Mid(tgl_lhr_ayah.ToString, 1, 2) bln = Mid(tgl_lhr_ayah.ToString, 4, 2) thn = Mid(tgl_lhr_ayah.ToString, 7, 4) dTgl = tgl & "/" & bln & "/" & thn DateTimePicker2.Value = dTgl Select Case UCase(pend_ayah.ToString) Case "1" : ComboBox2.Text = "SD" Case "2" : ComboBox2.Text = "SMP" Case "3" : ComboBox2.Text = "SMA/SMK" Case "4" : ComboBox2.Text = "DIPLOMA" Case "5" : ComboBox2.Text = "S1" Case "6" : ComboBox2.Text = "S2" Case "7" : ComboBox2.Text = "S3" Case Else : ComboBox2.Text = "TIDAK ADA" End Select TextBox11.Text = pek_ayah.ToString TextBox12.Text = alm_kntr_ayah.ToString TextBox13.Text = tlp_kntr_ayah.ToString TextBox14.Text = nm_ibu.ToString TextBox15.Text = tmp_lhr_ibu.ToString tgl = Mid(tgl_lhr_ibu.ToString, 1, 2) bln = Mid(tgl_lhr_ibu.ToString, 4, 2) thn = Mid(tgl_lhr_ibu.ToString, 7, 4) dTgl = tgl & "/" & bln & "/" & thn DateTimePicker3.Value = dTgl Select Case UCase(pend_ibu.ToString) Case "1" : ComboBox3.Text = "SD" Case "2" : ComboBox3.Text = "SMP" Case "3" : ComboBox3.Text = "SMA/SMK"
L37
Case "4" : ComboBox3.Text = "DIPLOMA" Case "5" : ComboBox3.Text = "S1" Case "6" : ComboBox3.Text = "S2" Case "7" : ComboBox3.Text = "S3" Case Else : ComboBox3.Text = "TIDAK ADA" End Select TextBox16.Text = pek_ibu.ToString TextBox17.Text = alm_kntr_ibu.ToString TextBox18.Text = tlp_kntr_ibu.ToString End If End If On Error GoTo 0 End Sub End Class
FrmKwitansi Public Class FrmKwitansi Dim ada As Boolean Private Sub FrmKwitansi_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim tempID As String = idBaru("kwitansi", "select * from kwitansi order by no_kwt desc") If IsNumeric(tempID) = False Then MsgBox(tempID, MsgBoxStyle.Critical, "Sistem Error....") Else TextBox1.Text = tempID End If ada = False Call showPil(ComboBox1) Call showListBy(ListView1) TextBox5.Text = ""
L38
TextBox2.Text = Date.Now.Date TextBox3.Text = "Pembelian Formulir Pendaftaran" End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click TextBox1.Text = "" TextBox2.Text = Date.Now.Date TextBox3.Text = "Pembelian Formulir Pendaftaran" ComboBox1.Text = "" TextBox4.Text = "" TextBox5.Text = "" ada = False Dim tempID As String = idBaru("kwitansi", "select * from kwitansi order by no_kwt desc") If IsNumeric(tempID) = False Then MsgBox(tempID, MsgBoxStyle.Critical, "Sistem Error....") Else TextBox1.Text = tempID End If Call showListBy(ListView1) Button1.Enabled = True End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Me.Dispose() End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
L39
Dim cari As String = InputBox("Input nomor kwitansi yang anda cari", "Pencarian data pembayaran") If Len(Trim(cari)) <> 0 Then Call showKwitansi("select * from kwitansi where no_kwt='" & cari & "'")
If no_kwt <> "" Then ada = True TextBox1.Text = no_kwt TextBox2.Text = tgl_kwt TextBox3.Text = ket_byr ComboBox1.Text = no_form TextBox5.Text = "" Call getDetil(TextBox1.Text, ListView1) TextBox5.Text = jml_byr Button1.Enabled = False Else Button2_Click(sender, e) End If Else Button2_Click(sender, e) End If End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim i As Integer = ListView1.Items.Count Dim b As Double = Val(TextBox5.Text) Dim strSQL As String = "" Dim tgl As String = Date.Now.Year & "-" & Date.Now.Month & "-" & Date.Now.Day If i = 0 Then
L40
MsgBox("Tidak ada biaya yang dibebankan..." & Chr(13) & "Silahkan anda menginput data jenis biaya pada form entry data jenis biaya terlebih dahulu", MsgBoxStyle.Information) Exit Sub End If If b = 0 Then MsgBox("Tidak ada biaya yang dibebankan..." & Chr(13) & "Silahkan anda memilih biaya yang telah disediakan pada daftar biaya") Exit Sub End If If ada = False Then strSQL = "insert into kwitansi (no_kwt,tgl_kwt,jml_byr,ket_bayar,no_form) " & _ "values ('" & TextBox1.Text & "','" & tgl & "'," & Val(TextBox5.Text) & ",'" & TextBox3.Text & "','" & ComboBox1.Text & "')" Else strSQL = "update kwitansi set tgl_kwt='" & tgl & "', " & _ "jml_byr=" & Val(TextBox5.Text) & ", " & _ "ket_bayar='" & TextBox3.Text & "', " & _ "no_form='" & ComboBox1.Text & "' where no_kwt='" & TextBox1.Text & "'" End If Call saveKwitansi(strSQL) Call saveDetil("delete from detil_kwitansi where no_kwt='" & TextBox1.Text & "'") For i = 0 To ListView1.Items.Count - 1 If ListView1.Items(i).Checked = True Then strSQL = "insert into detil_kwitansi(no_dk, biaya,no_kwt,kd_by) values " & _ "('" & i + 1 & "'," & Val(ListView1.Items(i).SubItems(2).Text) & ",'" & TextBox1.Text & "','" & ListView1.Items(i).Text & "')" Call saveDetil(strSQL) End If Next i If stsOK = True Then If MsgBox("Data pembayaran berhasil disimpan, apakah ingin mencetak kwitansi ?", MsgBoxStyle.YesNo + MsgBoxStyle.Information) = MsgBoxResult.Yes Then
L41
Button3_Click(sender, e) Button2_Click(sender, e) Else Button2_Click(sender, e) End If Else MsgBox("Data pembayaran gagal disimpan", MsgBoxStyle.Exclamation) Button2_Click(sender, e) End If End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim stsKlik As MsgBoxResult = MsgBoxResult.Cancel Call showKwitansi("select * from kwitansi where no_kwt='" & TextBox1.Text & "'") If no_kwt = "" Then MsgBox("Nomor kwitansi tidak terdaftar", MsgBoxStyle.Exclamation, "Konfirmasi") Else If Len(Trim(ComboBox1.Text)) = 0 Then crystalReport31.RecordSelectionFormula = "{kwitansi.no_kwt}='" & TextBox1.Text & "'" crystalReport31.Refresh() stsKlik = MsgBox("Pilihan cetak laporan" & Chr(13) & "YES = TO PRINTER" & Chr(13) & "NO = TO PREVIEW" & Chr(13) & "CANCEL= TO CANCEL PRINTING", MsgBoxStyle.YesNoCancel, "Printing") Select Case stsKlik Case MsgBoxResult.Yes crystalReport31.PrintToPrinter(1, True, 0, 0) Case MsgBoxResult.No Cetak_Kwitansi.CrystalReportViewer1.ReportSource = crystalReport31 Cetak_Kwitansi.ShowDialog() End Select
L42
Else crystalReport21.RecordSelectionFormula = "{kwitansi.no_kwt}='" & TextBox1.Text & "'" crystalReport21.Refresh() stsKlik = MsgBox("Pilihan cetak laporan" & Chr(13) & "YES = TO PRINTER" & Chr(13) & "NO = TO PREVIEW" & Chr(13) & "CANCEL= TO CANCEL PRINTING", MsgBoxStyle.YesNoCancel, "Printing") Select Case stsKlik Case MsgBoxResult.Yes crystalReport21.PrintToPrinter(1, True, 0, 0) Case MsgBoxResult.No Cetak_Kwitansi.CrystalReportViewer1.ReportSource = crystalReport21 Cetak_Kwitansi.ShowDialog() End Select End If
End If Button2_Click(sender, e) End Sub
Private Sub ComboBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.Click Call showFormulir("select * from formulir where no_form='" & ComboBox1.Text & "'") If Len(Trim(nm_cs)) <> 0 Then ComboBox1.Text = no_form TextBox4.Text = nm_cs Call showListDetil(TextBox1.Text, ListView1) TextBox5.Text = "" TextBox3.Text = "Pembayaran Uang Pangkal" Else TextBox4.Text = "" TextBox3.Text = "Pembelian Formulir Pendaftaran"
L43
Call showListBy(ListView1) End If End Sub
Private Sub ComboBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.TextChanged ComboBox1_Click(sender, e) End Sub Private Function hitung() As Double Dim i As Integer = 0 For i = 0 To ListView1.Items.Count - 1 If ListView1.Items(i).Checked = True Then hitung = hitung + ListView1.Items(i).SubItems(2).Text Else hitung = hitung + 0 End If Next End Function Private Sub ListView1_ItemChecked(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckedEventArgs) Handles ListView1.ItemChecked TextBox5.Text = hitung() End Sub End Class FrmLaporan Public Class FrmLaporan
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Me.Dispose() End Sub
L44
Private Sub FrmLaporan_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call getPeriode(ComboBox1) End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Select Case Me.Text Case "Laporan Siswa Baru" crystalReport41.RecordSelectionFormula = "{formulir.periode}='" & ComboBox1.Text & "' and {formulir.sts_daftar}='1'" crystalReport41.Refresh() Cetak_Laporan.CrystalReportViewer1.ReportSource = crystalReport41 Case "Laporan Pembayaran" crystalReport51.RecordSelectionFormula = "year({kwitansi.tgl_kwt})=" & Mid(ComboBox1.Text, 1, 4) crystalReport51.Refresh() Cetak_Laporan.CrystalReportViewer1.ReportSource = crystalReport51 End Select Cetak_Laporan.ShowDialog() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Select Case Me.Text Case "Laporan Siswa Baru" crystalReport41.RecordSelectionFormula = "{formulir.periode}='" & ComboBox1.Text & "' and {formulir.sts_daftar}='1'" crystalReport41.Refresh() crystalReport41.PrintToPrinter(1, True, 0, 0) Case "Laporan Pembayaran" crystalReport51.RecordSelectionFormula = "year({kwitansi.tgl_kwt})=" & Mid(ComboBox1.Text, 1, 4) crystalReport51.Refresh()
L45
crystalReport51.PrintToPrinter(1, True, 0, 0) End Select
End Sub End Class
FrmSeleksi Public Class FrmSeleksi Private Sub ListView1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListView1.DoubleClick Dim asl As String = "" If ListView1.SelectedItems.Item(0).Text <> "" Then asl = InputBox("Input nilai seleksi" & Chr(13) & "L = LULUS
G = GAGAL ", "Nilai")
If Len(Trim(asl)) <> 0 Then Select Case UCase(asl) Case "L" : asl = "LULUS" Case "G" : asl = "GAGAL" Case Else : asl = "PROSES" End Select End If Else asl = "PROSES" End If ListView1.SelectedItems.Item(0).SubItems(2).Text = asl End Sub Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click If Len(Trim(TextBox1.Text)) = 9 Then Call showListFormulir("select * from formulir where periode ='" & TextBox1.Text & "' order by no_form asc", ListView1)
L46
End If End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Me.Dispose() End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click ListView1.Items.Clear() End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim i As Integer = 0 Dim sts As String = "" For i = 0 To ListView1.Items.Count - 1 no_form = ListView1.Items(i).Text Select Case ListView1.Items(i).SubItems(2).Text Case "PROSES" : sts = "0" Case "LULUS" : sts = "1" Case "GAGAL" : sts = "2" Case Else : sts = "0" End Select Call saveFormulir("update formulir set sts_daftar='" & sts & "' where no_form='" & no_form & "'") Next i End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
L47
Dim stsKlik As MsgBoxResult = MsgBoxResult.Cancel Call showFormulir("select * from formulir where periode='" & TextBox1.Text & "'") If periode = "" Then MsgBox("Tidak ada data penerimaan siswa baru pada periode ini", MsgBoxStyle.Exclamation, "Konfirmasi") Else crystalReport11.RecordSelectionFormula = "{formulir.periode}='" & TextBox1.Text & "' and {formulir.sts_daftar}='1'" crystalReport11.Refresh() stsKlik = MsgBox("Pilihan cetak daftar hasil seleksi" & Chr(13) & "YES = TO PRINTER" & Chr(13) & "NO = TO PREVIEW" & Chr(13) & "CANCEL= TO CANCEL PRINTING", MsgBoxStyle.YesNoCancel, "Printing") Select Case stsKlik Case MsgBoxResult.Yes crystalReport11.PrintToPrinter(1, True, 0, 0) Case MsgBoxResult.No Daftar_Seleksi.CrystalReportViewer1.ReportSource = crystalReport11 Daftar_Seleksi.ShowDialog() End Select End If End Sub End Class
FrmUser Public Class FrmUser Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.Dispose() End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
L48
If Button1.Text = "Save" Then Call saveOrang(True, TextBox1.Text, TextBox2.Text, TextBox3.Text) ElseIf Button1.Text = "Update" Then Call saveOrang(False, TextBox1.Text, TextBox2.Text, TextBox3.Text) ElseIf Button1.Text = "Delete" Then Call deleteOrang(TextBox1.Text, TextBox2.Text, TextBox3.Text) End If TextBox1.Text = "" TextBox2.Text = "" TextBox3.Text = "" End Sub
Private Sub FrmUser_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load TextBox1.Text = "" TextBox2.Text = "" TextBox3.Text = "" End Sub End Class