Anda di halaman 1dari 194

LAPORAN KERJA PRAKTEK

Sistem Informasi Pembayaran Biaya Pendidikan Pada Pesantren


Al Hidayah Nurul Ummah Jatisari Bekasi

Laporan Kerja Praktek


Diajukan untuk
melengkapi
Persyaratan mata kuliah Analisan & Perancang SI

DISUSUN OLEH :

Anggi Juhniawan 201843500941


Desy putri ayu komalasari 201843501054
M.Salman Alfarisi 201843500321
Fikri Ranavia 201843501350
Ahmad Hanapi 201843501352
Ikhbar Maulana Irsyad 201843501435
Panji Theo Purbaya 201843500740
Ralfi Firmansyah 201843500102

PROGRAM STUDI INFORMATIKA

FAKULTAS TEKNIK DAN ILMU

KOMPUTER UNIVERSITAS INDRAPRASTA

PGRI

2022
UNIVERSITAS INDRAPRASTA PGRI
FAKULTAS TEKNIK & ILMU KOMPUTER
PROGRAM STUDI TEKNIK
INFORMATIKA
Jl. Nangka No. 58 C Tanjung Barat Jagakarsa, Jakarta Selatan Telp. (021) 78835283 Fax.: (021)
78835283 Jl.Raya tengah, Kelurahan Gedong, Pasar Rebo, Jakarta Timur. Telp: (021)
87797409

LEMBAR PENGESAHAN

LAPORAN KERJA PRAKTEK

SISTEM INFORMASI PEMBAYARAN BIAYA PENDIDIKAN PADA


AL- HIDAYAH NURUL UMMAH JATISARI BEKASI

DI PONDOK PESANTREN AL-HIDAYAH NURUL UMMAH

PADA 20 Februari 2022 – 20 Maret 2022

Disusun Oleh :

Anggi Juhniawan 201843500941


Desy putri ayu komalasari 201843501054
M.Salman Alfarisi 201843500321
Fikri Ranavia 201843501350
Ahmad Hanapi 201843501352
Ikhbar Maulana Irsyad 201843501435
Panji Theo Purbaya 201843500740
Ralfi Firmansyah 201843500102

Mengetahui, Menyetujui,
Ketua Program Studi Dosen Pembimbing

Mei Lestari, M. Kom Millati Izzatillah, S. Kom, M.M.S.I.


i
KATA PENGANTAR

Segala puji dan syukur dipanjatkan kepada Tuhan Yang Maha Esa yang
telah melimpahkan rahmat dan karunia-Nya yang begitu besar kepada kami
sehingga kami dapat menyelesaikan laporan kerja praktek yang telah dilaksankan
di pondok Pesantren al Hidayah Nurul Ummah) dengan lancar. Penulisan laporan
tugas praktek berjudul “SISTEM INFORMASI PEMBAYARAN BIAYA
PENDIDIKAN DI PESANTREN AL HIDAYAH NURUL UMMAH” ini
bertujuan untuk memenuhi syarat pada mata Kuliah Kerja Praktek pada
Universitas Indraprasta PGRI (Unindra).

Pada kesempatan ini, kami juga ingin mengucapkan terimakasih yang


setulus-tulusnya kepada berbagai pihak yang telah memberikan semangat serta
membantu baik moral maupun material sehingga kami dapat menyelesaikan
laporan tugas praktek ini dengan lancar dan tepat waktu. Oleh karena itu, kami
ingin mengucapkan terimakasih kepada:

1. Bapak Prof. Dr. H. Sumaryoto selaku Rektor Universitas Indraprasta PGRI.


2. Bapak Ir. H. Soepardi Harris, M.T selaku Dekan Fakultas Teknik dan Ilmu
Komputer Universitas Indraprasta PGRI.
3. Ibu Atie Ernawati, M.T., selaku Wakil Dekan Fakultas Teknik dan Ilmu
Komputer Universitas Indraprasta PGRI.
4. Ibu Mei Lestari, M.Kom. selaku Ketua Program Studi Teknik Informatika
Universitas Indraprasta PGRI.
5. Ibu Ni Wayan Parwati S., S.T., M.M., M.Kom., selaku Sekretaris Ketua
Program Studi Teknik Informatika Universitas Indraprasta PGRI.
6. Ibu Millati Izzatillah, S. Kom, M. M. S. I. selaku Dosen Pembimbing Kuliah
Kerja Praktek di Fakultas Teknik dan Ilmu Komputer Universitas Indraprasta
PGRI yang telah memberikan bimbingan dan mendukung penulis
menyelesaikan laporan KKP ini.

ii
7. Bapak Yuli Haryanto, M. Kom. Dosen Penasihat Akademik Kelas SC
angkatan 2018 Program Studi Teknik Informatika Fakultas Teknik dan Ilmu
Komputer Universitas Indraprasta PGRI.
8. Bapak M.Adhi Rohadi, S.Ag, M.MPd selaku kepala sekolah dari Pondok
Pesantren Al-Hidayah Nurul Ummah yang telah memfasilitasi penulis untuk
melakukan penelitian serta selalu memberikan semangat dan dukungan moril.
9. Seluruh Bapak/Ibu dosen khususnya pada program studi Teknik Informatika,
seluruh staf dan karyawan, serta civitas Universitas Indraprasta PGRI.
10. Kedua orang tua serta keluarga besar yang selalu memberikan semangat dan
bantuan baik moral maupun kepada praktikan.
11. Teman-teman dan guru pembimbing di di Pondok Pesantren al Hidayah Nurul
Ummah yang telah memberikan bimbingan serta pelajaran yang sangat banyak
kepada praktikan, serta telah memberikan pengetahuan dan pengalaman yang
baru kepada praktikan mengenai dunia kerja.
Di dalam proses penulisan laporan tugas praktik ini, banyak masalah dan
kesulitan yang telah kami alami, namun dengan semangat, fokus serta dedikasi
yang besar, maka segala permasalahan yang dialami dapat dilewati dengan baik.
Maka dari itu, kami mengucapkan puji syukur dan terimakasih sebanyak-
banyaknya kepada semua pihak yang berperan langsung maupun tidak langsung.
Semoga dengan adanya laporan tugas akhir ini dapat memberi manfaat untuk
semua pihak.

Jakarta, 17 Maret 2022

Tim KKP

iii
DAFTAR ISI

LEMBAR PENGESAHAN..........................................................................i
KATA PENGANTAR..................................................................................ii
DAFTAR ISI................................................................................................iv
DAFTAR SIMBOL....................................................................................vii
DAFTAR GAMBAR....................................................................................x
DAFTAR TABEL.....................................................................................xiii
BAB I.............................................................................................................1
PENDAHULUAN.........................................................................................1
A. Latar Belakang..............................................................................................1

B. Masalah.........................................................................................................2

C. Tujuan Penulisan..........................................................................................3

D. Batasan Masalah...........................................................................................3

E. Metodologi.....................................................................................................3

F. Sistematika Penulisan...................................................................................4
BAB II...........................................................................................................6
ORGANISASI..............................................................................................6
A. Sejarah Perusahaan......................................................................................6

B. Struktur Organisasi Pondok pesantren.....................................................11

1. Gambar Struktur Organisasi.....................................................................11

2. Tugas dan Wewenang.................................................................................11

C. Unit Kegiatan..............................................................................................14
BAB III........................................................................................................15
INFRASTRUKTUR...................................................................................15
A. Spesifikasi Hardware...................................................................................15
1. Teori Singkat Tentang Hardware........................................................15

2. Hardware Pada Pesantren Al-hidayah Nurul Ummah.......................16

B. Spesifikasi Software.....................................................................................19
1. Teori Singkat Tentang Software..........................................................19

2. Software Pada Pesantren AL-Hidayah Nurul Ummah......................20

iv
BAB IV........................................................................................................24
PEMBAHASAN.........................................................................................24
A. Proses Bisnis................................................................................................24

B. Menceritakan Bagaimana Sistem Bekerja atau Diproses dari Sistem


yang Dibahas........................................................................................................24

C. Aturan Sistem..............................................................................................25

D. Kebijakan Sistem........................................................................................25

E. Dekomposisi Fungsi....................................................................................26

F. Hirarki Fungsi Sistem yang Dibahas.........................................................26

G. Analisa Masukan (input), Proses dan Keluaran (Output)........................27

H. Diagram Alir Data (DAD) Konteks, Nol, dan Rinci.................................30

I. Kamus Data.................................................................................................34

J. Spesifikasi Proses........................................................................................36

K. Bagian Terstruktur.....................................................................................38

L. Spesifikasi Modul........................................................................................42

M. Analisa Basisdata........................................................................................43

N. Rancangan layer, Rancangan Form Masukan, dan Rancangan Form


Keluaran...............................................................................................................46

O. Tampilan dan Penjelasan Layar, Tampilan Format Masukkan , dan


Tampilan Format Keluaran................................................................................57
BAB V..........................................................................................................70
PENUTUP...................................................................................................70
A. Kesimpulan..................................................................................................70

B. Saran............................................................................................................71
DAFTAR PUSTAKA.................................................................................72
LAMPIRAN................................................................................................73
Lampiran 1. Listing Program..............................................................................73
A. koneksi.java...........................................................................................73

B. login.java................................................................................................73

C. menu.java..............................................................................................76

D. guru.java................................................................................................87

v
E. siswa.java...............................................................................................97

F. spp.java................................................................................................108

G. ujian.java.............................................................................................125

H. fasilitas.java.........................................................................................141

I. laporan.java.........................................................................................158

vi
DAFTAR SIMBOL

A. Diagram Alir Data (DAD)

Alir Data
Menggambarkan suatu arus data yang

menunjukkan bahwa informasi melintas

dari dan menuju suatu proses.

Proses Menggambarkan suatu proses yang

menyatakan beberapa tindakan

dijalankan.

Entitas Menggambarkan suatu entitas (orang,

tempat atau sesuatu yang memberikan

atau menerima data).

Storage

Menggambarkan suatu tempat

penyimpanan data dari suatu proses.

vii
B. Bagan Terstruktur

Menunjukkan adanya hubungan antar


Hubungan
modul.

Pemilihan Menunjukkan adanya seleksi atau

pemilihan.

Modul
Menunjukkan suatu modul.

Pengulangan

Menunjukkan proses pengulangan.

Kopel Data
Aliran data dari modul yang memanggilke

modul yang dipanggil.

Kopel Kontrol Elemen yang dikirimkan oleh modul yang

memanggil sebagai tanda bahwa proses

EOF pemanggilan selesai (biasanya

untuk proses pengulangan.)

viii
C. Entity Relationship Diagram

Entitas

Menunjukkan objek dasar.

Relasi

Menunjukkan relasi

Atribut

Menampilkan atribut dari objek


dasar

Hubungan

Menunjukkan adanya relasi

ix
DAFTAR GAMBAR

Gambar 2.1 Pondok Pesantren Al-Hidayah Nurul Ummah.............................................06

Gambar 2.1 Struktur Organisasi......................................................................................11

Gambar 3.1 Topologi Jaringan Star.................................................................................18

Gambar 4.1 Dekomposisi Fungsi....................................................................................26

Gambar 4.1 Hirarki Fungsi Sistem yang Dibahas...........................................................27

Gambar 4.3 Diagram Konteks.........................................................................................30

Gambar 4.4 Diagram Nol................................................................................................31

Gambar 4.5 Digram Rinci 2.0 Pembayaran......................................................................32

Gambar 4.6 Diagram Rinci 3.0 Laporan.........................................................................33

Gambar 4.7 Bagan Terstruktur Proses 1.0.......................................................................38

Gambar 4.8 Bagan Terstruktur Proses 2.1.......................................................................38

Gambar 4.9 Bagan Terstruktur Proses 2.2.......................................................................39

Gambar 4.10 Bagan Terstruktur Proses 2.3.....................................................................39

Gambar 4.11 Bagan Terstruktur Proses 3.1.....................................................................40

Gambar 4.12 Bagan Terstruktur Proses 3.2.....................................................................40

Gambar 4.13 Bagan Terstruktur Proses 3.3.....................................................................41

Gambar 4.14 Bagan Terstruktur Proses 3.4.....................................................................41

Gambar 4.15 ERD (Entity Relationship Diagram)..........................................................43

Gambar 4.16 Rancangan Layar Form Login...................................................................46

Gambar 4.17 Rancangan Layar Form Menu Utama.............................................47

Gambar 4.18 Rancangan Layar Form Data Siswa................................................48

x
Gambar 4.19 Rancangan Layar Form Data Guru..................................................49

Gambar 4.20 Rancangan Layar Form Pembayaran SPP.......................................50

Gambar 4.21 Rancangan Layar Form Pembayaran Ujian.....................................51

Gambar 4.22 Rancangan Layar Form Pembayaran Fasilitas................................52

Gambar 4.23 Rancangan Layar Form Laporan.....................................................52

Gambar 4.24 Rancangan Layar Laporan Data Siswa............................................53

Gambar 4.25 Rancangan Layar Laporan Pembayaran SPP..................................53

Gambar 4.26 Rancangan Layar Laporan Pembayaran Ujian................................54

Gambar 4.27 Rancangan Layar Laporan Pembayaran Fasilitas............................54

Gambar 4.28 Rancangan Layar Laporan Faktur SPP............................................55

Gambar 4.29 Rancangan Layar Laporan Faktur Ujian.........................................55

Gambar 4.30 Rancangan Layar Laporan Faktur Fasilitas.....................................56

Gambar 4.31 Tampilan Form Masukkan Layar Login..........................................57

Gambar 4.32 Tampilan Form Masukkan Layar Menu Utama..............................58

Gambar 4.33 Tampilan Form Masukkan Layar Menu Data Siswa.......................59

Gambar 4.34 Tampilan Form Masukkan Layar Menu Data Guru........................60

Gambar 4.35 Tampilan Form Masukkan Layar Menu Pembayaran SPP.............61

Gambar 4.36 Tampilan Form Layar Masukkan Pembayaran Ujian......................62

Gambar 4.37 Tampilan Form Layar Masukkan Pembayaran Fasilitas.................63

Gambar 4.38 Tampilan Layar Laporan.................................................................64

Gambar 4.39 Tampilan Keluaran Laporan Data Siswa.........................................65

Gambar 4.40 Tampilan Keluaran Laporan Pembayaran SPP...............................65

Gambar 4.41 Tampilan Keluaran Laporan Pembayaran Ujian.............................66

Gambar 4.42 Tampilan Keluaran Laporan Pembayaran Fasilitas.........................67

Gambar 4.43 Tampilan Keluaran Faktur Pembayaran SPP..................................67

xi
Gambar 4.44 Tampilan Keluaran Faktur Pembayaran Ujian................................68

Gambar 4.45 Tampilan Keluaran Faktur Pembayaran Fasilitas............................69

xii
DAFTAR TABEL

Tabel 4.1 Tabel data guru.................................................................................................44


Tabel 4.2 Tabel data siswa...............................................................................................44
Tabel 4 3 Tabel data spp..................................................................................................45
Tabel 4.4 Tabel data fasilitas............................................................................................45
Tabel 4.5 Tabel data ujian................................................................................................46

xiii
BAB I

PENDAHULUAN

A. Latar Belakang
Kebutuhan informasi semakin penting dan mendesak sejalan
dengan arus perkembangan teknologi yang semakin maju. Banyak
perusahaan berskala besar maupun kecil menggunakan komputer untuk
mendukung kegiatan dalam perusahaannnya. Komputer serta aplikasi di
dalamnya pada saat ini bukanlah merupakan sesuatu hal yang baru lagi,
karena hampir seluruh badan usaha yang besar maupun kecil telah
menggunakan komputer sebagai salah satu sarana pendukung dalam
kegiatan pada perusahaan. Pengelolaan informasi yang baik senantiasa
dapat mengatasi masalah- masalah yang terjadi dan dapat menghasilkan
informasi secara tepat, cepat dan akurat. Dengan informasi yang
dihasilkan, kita dapat segera melakukan pengambilan keputusan yang
cepat dan tepat.

Pembayaran biaya pendidikan merupakan sistem informasi yang


terdapat pada sekolah di bidang pendidikan, yang mana digunakan untuk
mencari informasi-informasi yang berkaitan. Dengan pembayaran
pesantren ini, akan memudahkan sebuah pesantren mengatur pembayaran
yang ada di dalamnya khusunya bagian keuangan. Seorang guru dapat
dengan mudah mengelola dan mencari informasi mengenai pembayaran.

Sistem pembayaran sangat penting bagi pesantren karena


pencatatan dan pencarian informasi pembayaran yang tersedia dibutuhkan
dalam waktu yang cepat dan akurat, hal ini berkaitan dengan kegiatan
pesantren. Pencatatan bukti keluar masuk keuangan dibutuhkan untuk
proses pencarian dan pengeluaran keaungan yang ada dalam pesantren.
Dengan adanya sistem ini pembuatan laporan mengenai pembayaran juga
dapat dibuat dengan cepat tanpa memakan waktu yang banyak.

1
Melihat pentingnya kebutuhan informasi tersebut di atas, maka
dibuatlah sebuah sistem informasi pembayaran yang dapat memenuhi
kebutuhan pesantren agar dapat mempercepat dan mempermudah kegiatan
pesantren terutama dalam mengatur dan memantau keuangan yang ada
pada bagian pesantren.

Pesantren Al-Hidayah Nurul Ummah merupakan salah satu


pesantren yang bergerak dalam bidang Pendidikan. Sejak berdiri,
pesantren juga sudah memanfaatkan komputer khususnya aplikasi
microsoft excel untuk menunjang kegiatan pesantren yang berjalan. Selain
itu pesantren juga masih menggunakan pencatatan manual pada kertas.
Cara tersebut digunakan untuk mengatur dan memantau keuangan yang
ada pada pesantren khususnya bagian keuangan.

Berdasarkan kebutuhan dan masalah yang dihadapi pesantren


dalam mengolah keuangan. Maka dilakukan penelitian untuk memenuhi
tugas mata kuliah kerja praktek dengan judul "Sistem Informasi
Pembayaran Biaya Pendidikan pada pesantren Al-Hidayah Nurul
Ummah Jatisari Bekasi". Alasan dibuatnya sistem informasi tersebut
adalah karena kegiatan yang dilakukan pesantren masih menggunakan
cara-cara konvensional yang dirasa kurang cepat, akurat dan efisien.

B. Masalah
Berdasarkan latar belakang diatas, maka dapat dirumuskan masalah
sebagai berikut:

1. Bagaimana merancang pembuatan aplikasi pembayaran biaya


pendidikan pada Al-Hidayah nurul Ummah agar mempermudah Guru
dalam proses pengolahan data pembayaran?
2. Bagaimana membuat laporan yang akurat dan cepat?
3. Bagaimana agar pencarian data mudah ditemukan karena terlalu
banyaknya data?

2
C. Tujuan Penulisan
Adapun tujuan penelitian ini adalah :

1. Merancang dan membuat aplikasi pembayaran biaya pendidikan


pada Al-Hidayah Nurul Ummah menggunakan Java Netbeans, untuk
mempermudah Guru dalam proses pengolahan data pembayaran
siswa di Pondok Pesantren Al-Hidayah Nurul Ummah menjadi
terkomputerisasi.
2. Untuk membuat laporan pembayaran menjadi lebih baik dan
terhindar dari kesalahan.
3. Dapat memberikan informasi yang akuran dan memberikan kualitas
pelayanan pembayaran yang baik karena pencarian dan pengolahan
data menjadi lebih mudah dengan bantuan sistem yang dirancang.
D. Batasan Masalah
Adapun dalam penelitian ini hanya membahas mengenai :

1. Membahas proses data guru, data siswa, pembayaran spp,


pembayaran ujian, pembayaran fasilitas, laporan data siswa, laporan
pembayaran spp, laporan pembayaran fasilitas, laporan pembayaran
ujian.
2. Dalam aplikasi ini penulis menggunakan bahasa pemrograman Java
3. Database yang digunakan adalah My Structured Query Languange
(Mysql) yang digunakan untuk menunjang sistem pengolahan data
dengan software XAMPP.
4. Pengamatan dilakukan berfokus pada proses pembayaran biaya
pendidikan yang berjalan pada pesantren.
E. Metodologi
Untuk dapat merancang sistem informasi persediaan barang
dengan baik maka diperlukan beberapa data yang dibutuhkan. Dalam
penulisan laporan kerja praktek ini, teknik dan metode yang digunakan
untuk mengumpulkan data, antara lain adalah:

3
1. Teknik Observasi
Observasi merupakan teknik pengumpulan data dengan cara
melakukan pengamatan keadaan yang ada di lapangan. Dengan
melakukan teknik ini, penulis menjadi lebih memahami tentang
subyek dan obyek yang sedang diteliti.
2. Teknik Wawancara
Wawancara atau interview merupakan teknik pengumpulan
data dengan cara bertatap muka secara langsung antara pewawancara
dengan informan. Wawancara dilakukan jika data yang diperoleh
melalui observasi kurang mendalam.
3. Konsultasi Pembimbing
Melakukan konsultasi dengan pembimbing kerja praktek, yaitu
salah satu manajer yang telah ditentukan dari pihak perusahaan agar
memudahkan penelitian.
4. Studi Pustaka
Studi pustaka merupakan metode pungumpulan data yang
diarahkan kepada pencarian data dan informasi melalui dokumen-
dokumen, baik dokumen tertulis, foto-foto, gambar, maupun
dokumen elektronik yang dapat mendukung proses penulisan.
5. Studi Lapangan
Penelitian yang dilakukan langsung, serta melakukan
wawancara kepada karyawan terkait di lapangan.
F. Sistematika Penulisan
Untuk mengetahui secara ringkas penulisan laporan kerja praktek,
maka digunakan sistematika penulisan yang bertujuan untuk
mempermudah pembaca menelusuri dan memahami isi laporan kerja
praktek ini, antara lain:

4
BAB I PENDAHULUAN
Bab ini berisi tentang penjelasan secara umum tentang
sistem informasi persediaan barang serta uraian mengenai
latar belakang, masalah, tujuan penulisan, batasan masalah,
metodologi, dan sistematika penulisan.
BAB II ORGANISASI
Bab ini menjelaskan tentang sejarah perusahaan,
struktur organisasi instansi pada Pondok Pesantren Al-
Hidayah Nurul Ummah serta penjelasan tugas dari masing-
masing unit atau bagian yang ada.
BAB III INFRASTRUKTUR
Bab ini menjelaskan hal-hal yang berkaitan dengan
spesifikasi perangkat keras dan perangkat lunak komputer
atau sistem informasi yang relevan yang ada pada Pondok
Pesantren Al-Hidayah Nurul Ummah
BAB IV PEMBAHASAN
Bab ini menjelaskan tentang tugas spesifik, yang mana
adalah penjabaran masalah dan penyelesaiannya yang diteliti
selama kerja praktek berlangsung.
BAB V PENUTUP
Bab ini berisi tentang ringkasan pembahasan yang
merupakan jawaban dari tujuan penelitian dan saran yang
diajukan untuk menyelesaikan permasalahan yang ada.

5
BAB II

ORGANISAS

A. Sejarah Perusahaan
Cikal bakal Pondok Pesantren Al-Hiidayah Nurul Ummah adalah
pengajian malem “ santri kalong “ pertama kali dirintis pada Tahun 1958
oleh Ust.H.Anwar dan Hj.Imah Binti H.Amat (Al-Magfurllah) dengan
dukungan dari guru, kelurga sekaligus sahabat beliau Ust.H.sirojuddin Bin
Noang (Al-Magfurrallah).

Gambar 2.1 Pondok Pesantren Al-Hidayah Nurul


Ummah (Sumber: Data Diolah, 2022)

Waktu pengajian dilaksanakan menjelang magrib sampai dengan


sholat Isya , penggal waktu diisi dengan pengajian Al-quran NGEDERES
(Belajar membaca al-quran sendiri) dilanjutkan model Halaqoh dengan
methode Sorogan (Privat) dan Bandongan (Clasikal). setelah Sholat Isya
dilanjutkan dengan penngajian kitab-kitab dasar “Arab Pegon“ (Arab
Melayu) seperti kitab Sifat dua puluh, kitab Irsadul Anam, kitab Adabul
Insan, kitab Perukunan.dll. Para santri waktu itu bermalam disebuah
bangunan yang disebut dengan “Kobong “ bangunan dan sarana yang
sangat sederhana dengan lampu penerangan saat itu Pelita Kentip (terbuat
dari kaleng susu), pelita semprong dan Patromak dan bahan bakarnya
6
minyak

7
tanah. Setelah sholat subuh mereka membersihkan Kobong dan rumah
guru dengan istilah PATROL bahkan bertugas mengisi GOMBANGAN
(bak air) dengan TIMBA yang terbuat dari tambang dadung dan itu semua
dikerjakan dengan rasa senang dan penuh keikhlasan, bahkan disaat libur
seperti hari Ahad para santri kalong saat itu membantu mengerjakan
MEMEACUL (Pertanian) dan mencarikan kayu bakar buat guru memasak
nasi di Hau (tempat memasak nasi dg kayu bakar) lalu dipagi hari mereka
pulang kerumah masing-masing.dan para santri kalong akan kembali lagi
pada sore harinya.

Terletak disebuah kampung yang saat itu masih bernama BOJONG


KAMBING, kini bernama Bojongsari terletak di pedalaman yang jauh dari
keramaian kota dengan udara yang sejuk dan suasana yang tenang
termasuk wilayah Kelurahan Jatisari Kecamatan Jatiasih, kota Bekasi.
Pengajian malem ini (santri Kalong) kemudian berkembang menjadi
Pengajian Taman Pendidikan Al-quran (TPA) Tahun 1993.

Memasuki Tahun 1995, setelah anak ke limanya (Ismail anwar)


pulang mondok dari Sukabumi (Sirojul Atfhal, Assalafiyah dan Al-
Masthuriyah) atas dorongan dari masyarakat dan bantuan serta motivasi
dari Ibu Dra.Hj.SOIMAH (staf mapenda kemenag Kota BEKASI) dan atas
persetujuan Ust.H.Anwar (Al-Magfurllah) anak –anaknya dan dewan guru
pada Tahun 2000 mendirikan Raudhotul Atfhal (RA.) yang diberi nama
oleh beliau Al--ITTIHAD yang artinya PERSATUAN. Pada hari ahad
Tanggal 21 Juni 2003 Ust.H. Anwar meninggal dunia selepas melaksankan
sholat subuh berjamaah bersama Forum shilaturrahim Sholat Shubuh
Gabungan ( FS3G ) di masjid Attaubah Kampung Pabuaran Jatisamprna
kota Bekasi.

Sepeninggal Almagfurallah Uts.H.Anwar para generasi penerusnya


berusaha melanjutkan dan mengembangkan apa yang sudah dirintis dan
dibangunnya. Diawali dengan pembanguanan fisik pada Tahun 2003 yang

8
tadinya Gedung Majlis Taklim yang sederhana direhab total atas bantuan
Kemenag Pusat melalui H.Mujani,SH (Staf Pekapontren Kemenag kota
bekasi) yang selanjutnnya menjadi Kepala Kemenag kota bekasi sampai
tahun 2020, dibangun menjadi gedung dua lantai yang permanen dan
dilanjutkan Tahun 2008 dibangun gedung tiga lantai dan pada hari Jumat
Tangal 24 April 2015 dibentuk Yayasan yang berbadan Hukum dan
terdaftar di Kementrian Hukum dan Ham diberi nama Yayasan Pendidikan
Islam Al-Hidayah Nurul Ummah, nama Al-Hidayah diambil sebagai
penghargaan kepada pendiri yang sejak awal bernama Majlis Taklim Al-
Hidayah, adapun nama Nurul diambil dari nama Pendiri Anwar dan
Ummah diambil dari nama istri beliau Immah ( wafat hari kamis tanggal
21 April 1989 ), dengan diberi nama tersebut agar kelak para genrasi
penerusnya tidak melupakan jasa dan perjuangan para perintis sekaligus
pendiri Pondok Pesantren Al-Hidayah. Dan pada Tahun 2016-2017
dibangun gedung empat lantai atas bantuan dari ketua Komisi V DPRD
Provinsi Jawabarat yaitu Ibu DR. Siti Aisyah Ahmad Zurpaih melalui
APBD Provinsi Jawa Barat Tahun 2016

Selanjutnya ,seiring dengan pembanguan fisik yang sudah


memadai dengan dibangun tiga buah gedung yang megah serta permanen
,atas dorongan dan tuntutan masyarakat maka pada Tanggal 17 juli 2017
didirikan SMPIT Al-Ittihad dengan murid pertama kali berjumlah 11 orang
ngan kepala SEKOLAH bpaka Adhi Rohadi,S.Ag,M.Pd

Kemudian pada Tahun Ajaran 2017-2018 dibuka Penerimaan santri


baru untuk pertama kali tepatnya Tanggal 17 Juli 2018 dengan jumlah
santri sebanyak 9 orang putra putri. Dan pada pada tanggal 17 Juli 2018
didirikan Madrasah ibtidaiyah dengan murid pertama sebananyak 6 orang.
Pada hari Ahad tanggal 05 Mai 2018 setelah peringatan haul Ust.h.anwar
yng ke 15 bersama FS3G dilaksanakan peletakan batu pertama
pembanguan gedung yng ke empat direncanakan tiga lantai yang
penggunaannya untuk asrama putra. sejak awal berdirinya dan upaya-
upaya menumbuh

9
kembangkan pondok Pesantren Al-Hidayah Nurul Ummah dipimpin oleh
purta satu-satunya yaitu H.Ismail Anwar.S.Ag. dan dibantu dengan anak-
anak dan para menantu dan cucunya sehingga saat ini.

Sistem Pendidikan di Pondok Pesantren Al-Hidayah Nurul Ummah


terutama mendahulukan Pendidikan dari pada Pengajaran dengan
dukungan dan disiplin dan Aklakul karimah. Dari segi pengajaran
terutama pendalaman bahasa asing ( Arab dan Inggris ) dan pengajian
kitab klasik/kuning ( Kutubutturost ). Tahfizd ( menghapal alquran,
Menguasai Teknologi dan Keterampilan. Para santri juga dididik melalui
jalur pendidikan yang disediakan dari tingkat Mi dan SMP dan
direncanakan sampai tingkat SLTA. Serta kegiatan extra kurikuler yang
terjadwal baik Pramuka,olahraga, maupun seni serta keterampilan lainnya.

Pondok Pesantren Al-Hidayah Nurul ummah didirikan berdasarkan


Firman Allah surat Al-Mujadalah ayat 11 dan surat yasin : 12 dan surat
Arrohman ayat 60.

Sebagai lembaga pendidikan pondok Pesantren Al-Hidayah Nurul


Ummah menerapkan syistem Pendidikan dan Pengajaran terpadu dan
berasrama serta berdisiplin tinggi dibawah bimbingan dan pengasuhan
para guru/pendidik yang propisonal dibidangnya melalui syistem
pendidikan yang telah teruji.

Kurikulum pendidikan Pondok Pesantren Al-Hidayah Nurul


Ummah menggunakan kurikulum kemenag dan kemendiknas serta
kurikulum internal pondok yang diharapkan para santri bisa berbahasa
asing, bisa hapal alquran, bisa menguasai teknologi dan informasi dan
berjiwa wiraswsata (interpreneur)

Lembaga yang sementara ini kami kelola adalah Raudhotul Atfhal,


Pendidikan anak Usia Dini,Taman Pendidikan Al-Quran, Diniyah
Takmiliya Awaliyah, Madrasah Ibtidaiyah, Sekolah menengah Pertama (

10
SMP-IT ) dan direncanakan akan membuka Sekolah Lanjutan Tingkat
Atas ( SLTA ) bahkan sampai Perguruan Tingginya

Sarana dan prasarana gedung, ruang belajar, asrama tempat tinggal


santri dan administrasi perkantoran kami bangun secara permanen guna
mendukung kelancaran belajar mengajar sehinga kami senantiasa berjuang
dan berusaha mencari para para donatur, hartawan dermawan guna
mewujudkan rencana pembangunan yang dibutuhkan.

Visi Al Hidayah Nurul Ummah adalah Berakhlakul karimah,


berpotensi, berprestasi. Dengan itu kami memiliki misi sebagai berikut:

1. Menanamkan karakter yamg islami dengan pembiasaan dan praktek


2. Mencetak lulusan yang memiliki kemampuan IQ, EQ, dan SQ
3. Melahirkan siswa-siswa yang unggul dalam berprestasi akademik
maupun non akademik.
Al Hidayah Nurul Ummah memiliki tujuan sebagai berikut :
1. Mempunyai akidah yang lurus dan mampu beribadah secara
benar dan berakhlak mulia.
2. Hafal 3 Juz Al-Qur'an(Juz 28 - 30).
3. Meningkatkan kapasitas pesantren dalam meningkatkan angka
partisipasi pesantren bagi masyarakat luas
4. Mampu membaca Al-Qur'an dengan baik dan benar.
5. Menguasai Teknologi Informatika dengan baik
6. Menguasai Bahasa Arab dan Bahasa Inggris dengan baik
7. Menjadi pribadi yang mandiri dan berjiwa enterpreneur

11
B. Struktur Organisasi Pondok pesantren
1. Gambar Struktur Organisasi

Gambar 2. 1 Struktur

Organisasi (Sumber: Data

Diolah, 2022)
2. Tugas dan Wewenang
a. Pendiri
Sebutan kiai dimaksudkan untuk para pendiri dan
pemimpin pesantren, yang sebagai muslim terhormat telah
membaktikan hidupnya untuk Allah SWT serta menyebarluaskan
dan memperdalam ajaran-ajaran serta pandangan Islam melalui
pendidikan.
Kiai berkedudukan sebagai tokoh sentral dalam tata
kehidupan pesantren, sekaligus sebagai pemimpin pesantren.
Dalam kedudukan ini nilai kepesantrenannya banyak tergantung
pada kepribadian kiai sebagai suri teladan dan sekaligus
pemegang kebijaksanaan mutlak dalam tata nilai pesantren.
b. Pembina
Pembina adalah orang yang bertanggung jawab
menentukan kebijaksanaan dan mengawasi pelaksanaan program
sesuai dengan bidangnya. Bertanggung jawab atas pelaksanaan
program sesuai dengan bidangnya.

12
c. Pengawas
Dalam pelaksanaan suatu tugas untuk mencapai suatu
tujuan di perlukan pengawasan/controlling. Dimana bertugas
mengawasi seluruh rangkaian pelaksanaan yang terjadi di bawah
tanggung jawabnya. Tujuan dari controlling sendiri untuk
mengetahui apakah sudah sesuai dengan perencanaan yg telah
disusun atau justru mengalami kendala bahkan sampai ada yg
tidak sesuai hasilnya. Maka dengan pengawasan kita dapat terus
meningkat kan apa yg sudah sesuai dan melakukan perbaikan
atau mengatur ulang pada bagian-bagian yg belum sesuai.
d. Ketua
1. Menjadi pemimpin yang baik serta bijaksanaan
2. Mengkoordinir, mengawasasi dan mengevaluasi proses
pelaksanaan tugas seluruh anggota organisasi
3. Memimpin semua rapat harian pengurus.
4. Mengambil dan menetapkan keputusan dengan musyawarah
dan mufakat.
e. Seketaris
1. Mendampingi ketua dalam memimpin rapat harian pengurus
2. Mendata dan menyimpan biodata santri,anggota pengurus
dan seluruh yang ada di pondok pesantren
3. Menyimpan seluruh surat dan arsip yang berhubungan
dengan pondok pesantren
4. Bertanggung jawab atas tata tertib administrasi dan
kesekretarisan pondok pesantren
f. Bendahara
1. Mendata segala pemasukan,pengeluaran dan pengolahan
finansial biaya pondok pesantren
2. Membuat tanda bukti setiap pemasukan dan pengeluran
3. Menyampaikan laporan keuangan secara berkala.
4. Meminta uang kas kepada seluruh santri.

13
g. Kasi Paud, TK, SD & SMP
Kasi harus bertanggung jawab penuh terhadap bagian
tanggung jawabnya. Agar lebih fokus pada pembagian tugas
perlu di tunjuk kasi pada setiap tingkatan jenjang pendidikan
pada PAUD, TK, SD dan SMP. Setiap dari kasi wajib
melaporkan hasil pantauan nya terhadap hal-hal yg sudah di
sepakati bersama. Hal ini dilakukan agar dapat menjadi bahan
evaluasi nantinya dan juga apabila dalam pelaksanaan nya
muncul kendala/permasalahan dapat dengan cepat di atasi.
h. Kasi Pondok Pesantren
Kasi Pondok Pesantren memiliki tugas melaksanakan
pelayanan, bimbingan, pembinaan, dan pengelolaan sistem
informasi di bidang pendidikan diniyah dan pondok pesantren
berdasarkan kebijakan teknis yang ditetapkan oleh Kepala
Kantor Wilayah Kementerian Agama.
i. Kasi Sosial
Merupakan kasi yg berhubungan dengan masyarakat sosial.
Bertanggung jawab untuk memastikan pembauran yayasan
dalam implementasi sosialnya. Seperti kecenderungan perilaku
dalam hubungan sosial dimana santri sudah dapat hidup mandiri,
bergaul, ramah, dan patuh pada tata tertib yang dapat dilihat dari
perilaku sopan santun di dalam kehidupan sehari-hari di
lingkungan sosial. Tugas lain nya seperti mengawasi kegiatan
sosial atau program khusus dalam penyaluran dana sosial kepada
masyarakat yang berhak menerima.
j. Kasi Dakwah
Memfasilitasi kegiatan pengajian dan da'wah kepada
masyarakat berbasis pondok pesantren. Seperti adanya partisipasi
dari para santri untuk mengisi ceramah di pengajian ibu-ibu.

14
k. Kasi Koperasi
Bertanggung jawab pada bidang keuangan seperti aktivitas
pinjaman dan memfasilitasi penyaluran keuangan alat tulis
menulis yang di butuhkan para santri.
l. Kasi Pembangunan & Pengembangan
Bertanggung untuk memantau pengembangan dalam kurun
waktu tertentu. Memantau terlaksana nya pemenuhan sarana dan
prasarana. Seperti penambahan maupun perbaikan pembangunan
di dalam yayasan.
C. Unit Kegiatan
Dalam pelaksanaan kerja praktek kami ditempatkan di bagian
kantor untuk dapat meneliti kegiatan yang ada di sana. Kegiatan yang kami
lakukan adalah meneliti dan meriset data-data yang ada dan diperlukan
mulai dari data guru, data siswa, data pembayaran spp, data pembayaran
fasilitas, data pembayaran ujian dan data laporan. Data tersebut dibutuhkan
untuk dapat membangun sistem informasi pembayaran biaya pendidikan
nantinya agar tidak terdapat kesalahan dan dapat dipergunakan dengan
baik.

Disini kami membuat sistem informasi menggunakan Java dan


MySQL agar dapat mempermudah kegiatan yang berlangsung dan
diharapkan dapat berjalan lebih mudah dan efisien. Dan juga data-data
dapat tersimpan dengan rapi dan terstruktur menggunakan database.
Pencarian informasi juga dapat dilakukan dengan cepat dengan antarmuka
yang mudah digunakan.

15
BAB III

INFRASTRUKTUR

A. Spesifikasi Hardware
1. Teori Singkat Tentang Hardware
Pengertian dari hardware atau dalam Bahasa Indonesia
disebut juga dengan "perangkat keras" adalah salah satu komponen
dari sebuah komputer yang sifat alatnya bisa dilihat dan diraba
secara langsung atau yang berbentuk nyata, yang berfungsi untuk
mendukung proses komputerisasi.
Hardware dapat bekerja berdasarkan perintah yang telah
ditentukan ada padanya, atau yang juga disebut dengan dengan
istilah instruction set. Dengan adanya perintah yang dapat
dimengerti oleh hardware tersebut, maka hardware tersebut dapat
melakukan berbagai kegiatan yang telah ditentukan oleh pemberi
perintah. Secara fisik, Komputer terdiri dari beberapa komponen
yang merupakan suatu sistem. Sistem adalah komponen-komponen
yang saling bekerja-sama membentuk suatu kesatuan. Apabila salah
satu komponen tidak berfungsi, dapat mengakibatkan tidak
berfungsinya proses-proses yang ada pada komputer dengan baik.
Komponen komputer ini termasuk dalam kategori elemen perangkat
keras (hardware). Berdasarkan fungsinya, perangkat keras
komputer dibagi menjadi:
a. Unit masukan (Input Device)
b. Unit pemrosesan (Process Device)
c. Unit keluaran (Output Device)
d. Unit penyimpanan (Backing Storage)
e. Unit tambahan (Periferal)

16
Komponen dasar pada komputer terdiri dari input, process,
output dan storage. Input device terdiri dari keyboard dan mouse,
Process device adalah microprocessor (ALU, Internal
Communication, Registers dan control section), Output device
terdiri dari monitor dan printer, Storage external memory terdiri
dari harddisk, Floppy drive, CD ROM, Magnetic tape. Storage
internal memory terdiri dari RAM dan ROM. Sedangkan komponen
Periferal Device merupakan komponen tambahan atau sebagai
komponen yang belum ada atau tidak ada sebelumnya. Komponen
Periferal ini contohnya : TV Tuner Card, Modem dan Capture
Card.
2. Hardware Pada Pesantren Al-hidayah Nurul Ummah
Hardware yang ada dan digunakan pada Pesantren AL-
Hidayah Nurul Ummah adalah sebagai berikut:
a. Komputer
Komputer adalah alat yang dipakai untuk mengolah data
menurut prosedur yang telah dirumuskan. Kata computer
semula dipergunakan untuk menggambarkan orang yang
perkerjaannya melakukan perhitungan aritmatika, dengan atau
tanpa alat bantu, tetapi arti kata ini kemudian dipindahkan
kepada mesin itu sendiri. Asal mulanya, pengolahan informasi
hampir eksklusif berhubungan dengan masalah aritmatika,
tetapi komputer modern dipakai untuk banyak tugas yang tidak
berhubungan dengan matematika. Komputer terhubung oleh
beberapa alat tambahan untuk dapat bekerja.
b. Monitor
Monitor adalah salah satu jenis soft-copy device, karena
keluarannya adalah berupa sinyal elektronik, dalam hal ini
berupa gambar yang tampil di layar monitor. Gambar yang
tampil adalah hasil pemrosesan data ataupun informasi
masukan. Monitor memiliki berbagai ukuran layar seperti
layaknya sebuah televisi. Tiap merek dan ukuran monitor
17
memiliki tingkat resolusi yang berbeda. Resolusi inilah yang
akan menentukan ketajaman gambar yang dapat ditampilkan
pada layar monitor. Jenis-jenis monitor saat ini sudah sangat
beragam, mulai dari bentuk yang besar dengan layar cembung,
sampai dengan bentuk yang tipis dengan layar datar (flat).
c. Keyboard
Keyboard atau papan ketik merupakan unit input yang
paling penting dalam suatu pengolahan data dengan komputer.
Keyboard dapat berfungsi memasukkan huruf, angka, karakter
khusus serta sebagai media bagi user (pengguna) untuk dapat
melakukan perintah-perintah lainnya yang diperlukan, seperti
menyimpan dan membuka file.
d. Mouse
Mouse atau tetikus adalah peranti penunjuk yang
digunakan untuk memasukkan data dan perintah ke dalam
komputer selain keyobard. Tetikus memperoleh nama demikian
karena kabel yang menjulur berbentuk seperti ekor tikus.
Bentuk tetikus yang paling umum mempunyai dua tombol
utama, masing-masing di sebelah kiri atas dan kanan atas yang
dapat ditekan. Tetikus modern umumnya dilengkapi dengan
tombol scroll yang juga dapat ditekan sebagai tombol ketiga.
e. Printer
Arti printer lebih spesifik menurut ilmu komputer berarti
alat untuk mencetak hasil kerja digital berupa file gambar
dan tulisan. Printer pada umumnya terhubung dengan komputer
maupun laptop untuk dapat bisa menghasilkan suatu pekerjaan
cetak. Printer bekerja melalui perintah yang terprogram pada
komputer melalui perintah manusia yang menjalankan program.
f. Konsep jaringan komputer
Jaringan komputer adalah sebuah sistem yang terdiri atas
komputer-komputer yang di atur sedemikian rupa segingga
dapat
18
berbagi sumber daya, berkomunikasi dan mengakses informasi
satu sama lain ataupun melalui internet. Tujuan dari jaringan
komputer adalah agar dapat mencapai tujuannya masing-
masing, sehingga setiap bagian dari jaringan komputer dapat
memminta dan memberikan layanan satu sama lain.
Jaringan yang ada pada Pesantren AL-Hidayah Nurul
Ummah

Gambar 3.1 Topologi Jaringan Star

(sumber: https://www.pintarkomputer.com)

Jaringan yang ada pada Pesantren AL-Hidayah Nurul


Ummah menggunakan topologi star. Topologi star adalah suatu
cara untuk menghubungkan antara komputer satu dengan
komputer yang lainnya sehingga dapat membentuk jaringan
berupa bentuk bintang (star). Topologi star mempunyai bentuk
seperti bintang karena setiap node tersambung secara terpusat
pada sebuah perangkat keras hub atau switch yang dipakai
untuk menghubungkan setiap node dalam jaringan LAN.
Prinsip topologi star adalah terpusat, yaitu seluruh
komputer terhubung pada satu titik yang biasanya
menggunakan hub atau switch sebagai penghubung dan
pengatur lalu lintas datanya agar tidak terjadi collision atau
tabrakan data.

19
Artinya, kinerja topologi star sangat tergantung dengan
hub atau switch yang menjadi pusat lalu lintas data. Jika hub
atau switch terjadi suatu kendala atau kerusakan maka semua
komputer yang terhubung dengannya akan mengalami kendala
juga. Kendala di sini adalah kendala pada arus lalu lintas data
atau internet.
B. Spesifikasi Software
1. Teori Singkat Tentang Software
Software atau perangkat lunak adalah sekumpulan data
elektronik yang disimpan dan diatur oleh komputer. Data elektronik
yang disimpan dapat berupa program atau instruksi yang akan
menjalankan suatu perintah. Melalui software atau perangkat lunak
inilah suatu komputer dapat menjalankan suatu perintah.
a. Jenis-jenis Software
Software atau perangkat lunak komputer berdasarkan
distribusinya dibedakan menjadi beberapa macam, yaitu
software berbayar, software gratis ( freeware, free software dan
shareware).
1) Freeware
Freeware atau perangkat lunak gratis adalah perangkat
lunak komputer yang mempunyai hak cipta dan gratis atau
bebas digunakan tanpa batasan waktu, berbeda dari
shareware yang mewajibkan penggunanya membayar.
Para pengembang perangkat gratis seringkali membuat
perangkat gratus atau freeware untuk disumbangkan kepada
komunitas, namun juga tetap ingin mempertahankan hak
mereka sebagai pengembang dan memiliki kontrol terhadap
pengembangan selanjutnya. Freeware juga didefinisikan
sebagai program apapun yang didistribusikan gratis, tanpa
biaya tambahan.

20
2) Free Software
Free Software adalah perangkat lunak yang bersumber
terbuka (open source) yang mana dapat disalin, dimodifikasi
dan disebarkan secara bebas.
Perbedaan antara free software dan freeware adalah,
freeware merupakan perangkat lunak yang bebas disalin,
dimodifikasi dan disebarkan memerlukan sebuah lisensi
untuk keperluan tersebut. Sedangkan freeware merupakan
perangkat lunak yang berlisensi dan pengembang
mempunyai hak terhadap kontrol untuk pengembangan
selanjutnya.
3) Shareware
Shareware adalah perangkat lunak terbatas yang
didistribusikan baik sebagai demonstrasi atau versi evaluasi
dengan fitur atau fungsi yang terbatas. Dengan kata lain
terdapat batas waktu yang ditetapkan untuk penggunaannya.
Dengan demikian, memberikan kesempatan kepada
pengguna untuk mencoba perangkat lunak sebelum
membelinya dalam versi lengkap atau berbayar.
2. Software Pada Pesantren AL-Hidayah Nurul Ummah
Software yang ada dan digunakan pada Pesantren AL-Hidayah
Nurul Ummah adalah sebagai berikut:
a. Microsoft Windows
Microsoft Windows atau yang lebih dikenal dengan
sebutan Windows saja adalah keluarga sistem operasi.
Sistem operasi Windows telah berevolusi dari MS-DOS,
sebuah sistem operasi yang berbasis modus teks dan command-
line. Beberapa versi terakhir dari Windows merupakan sistem
operasi mandiri yang tidak lagi bergantung kepada sistem
operasi MS-DOS. Microsoft Windows kemudian bisa
berkembang dan dapat menguasai penggunaan sistem operasi
hingga mencapai 90%.
21
b. Web Browser
Web Browser adalah suatu program atau software yang
digunakan untuk menjelajahi internet atau untuk mencari
informasi dari suatu web yang tersimpan didalam komputer.
Awalnya, web browser berorientasi pada teks dan belum dapat
menampilkan gambar. Namun, web browser sekarang tidak
hanya menampilkan gambar dan teks saja, tetapi juga memutar
file multimedia seperti video dan suara. Web browser juga dapat
mengirim dan menerima email, mengelola HTML, input dan
menjadikan halaman web sebagai hasil output yang informatif.
c. Microsoft Office
Microsoft Office adalah perangkat lunak paket aplikasi
perkantoran buatan Microsoft dan dirancang untuk dijalankan
di bawah sistem operasi Microsoft Windows dan MacOS X.
Beberapa aplikasi di dalam Microsoft Office yang terkenal
adalah Excel, Word, dan PowerPoint.
d. Java
Java adalah bahasa pemrograman yang dapat dijalankan
di berbagai komputer termasuk telepon genggam. Bahasa ini
awalnya dibuat oleh James Gosling saat masih bergabung di Sun
Microsystems yang saat ini merupakan bagian dari Oracle dan
dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang
terdapat pada C dan C++ namun dengan sintaksis model objek
yang lebih sederhana serta dukungan rutin-rutin aras bawah
yang minimal. Aplikasi-aplikasi berbasis Java umumnya
dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan
pada berbagai Mesin Virtual Java (JVM).
Java merupakan bahasa pemrograman yang bersifat
umum atau non-spesifik (general purpose), dan secara khusus
didisain untuk memanfaatkan dependensi implementasi
seminimal mungkin. Karena fungsionalitasnya yang

22
memungkinkan aplikasi Java mampu berjalan di beberapa
platform sistem operasi yang berbeda, java dikenal pula dengan
slogannya, "Tulis sekali, jalankan di mana pun". Saat ini java
merupakan bahasa pemrograman yang paling populer
digunakan, dan secara luas dimanfaatkan dalam pengembangan
berbagai jenis perangkat lunak aplikasi ataupun aplikasi.
e. NetBeans IDE
NetBeans IDE adalah suatu serambi pengembangan
perangkat lunak yang ditulis dalam bahasa pemrograman Java.
Pada serambi NetBeans, pengembangan suatu aplikasi dapat
dilakukan dimulai dari setelan perangkat lunak modular
bernama modules. Semula, aplikasi NetBeans IDE ini
diperuntukkan bagi pengembangan dalam Java. Namun, aplikasi
ini juga mendukung program-program pembuatan bahasa lain
secara khusus seperti PHP, C/C++ dan HTML5.
f. XAMPP
XAMPP adalah perangkat lunak bebas, yang mendukung
banyak sistem operasi, merupakan kompilasi dari beberapa
program. Fungsinya adalah sebagai server yang berdiri sendiri
(localhost), yang terdiri atas program Apache HTTP Server,
MySQL database, dan penerjemah bahasa yang ditulis dengan
bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan
singkatan dari X (tempat sistem operasi apapun), Apache,
MySQL, PHP dan Perl. Program ini tersedia dalam GNU
(General Public License) dan bebas.
g. MySQL (Database)
MySQL adalah suatu perangkat lunak relasi database
(Relational Database Management System atau RDBMS).
MySQL tersedia di berbagai platform baik itu Linux atau
Windows. Perkembangan MySQL sampai saat ini dirilis sebagai
produk open source.

23
Suatu sistem yang data tidak lepas dari penggunaan
penyimpanan data. Database adalah sebuah bentuk media yang
digunakan untuk menyimpan data. Dimana penyimpanan data
dapat diilustrasikan sebagai sebuah gudang yang dijadikan
tempat menyimpan berbagai macam barang yang terdapat dalam
suatu database, barang adalah data. Dalam sebuah database
terdiri dari dua bagian dasar yang membangun sebuah database
yaitu tabel dan kolom.

24
BAB IV

PEMBAHASAN
A. Proses Bisnis

Setelah penulis melakukan peninjauan langsung, diketahui


bahwa sistem yang sedang berjalan pada PESANTREN AL
HIDAYAH NURUL UMMAH masih menggunakan cara manual
yang artinya tidak menggunakan desktop sebagai media
pembayaran dan laporan, khususnya pada bagian pembayaran biaya
pendidikan dan sistem yang dibuat harus dapat meningkatkan
pelayanan serta meningkatkan kinerja sistem.
B. Menceritakan Bagaimana Sistem Bekerja atau Diproses dari
Sistem yang Dibahas

Dari hasil penelitian proses bisnis yang ada saat ini maka
kami dapat menganalisa permasalahn yang ada saat ini maka kami
dapat menganalisa permasalahan yang ada pada pelayanan
PESANTREN AL HIDAYAH NURUL UMMAH, yaitu:

1. Belum tersedianya sistem pembayaran biaya pendidikan.

2. Proses pengumpulan data yang masih manual menjadikan


kurangnya efisiensi dan terstrukturisasi dalam penyimpanan
data.

3. Pembuatan laporan yang masih manual yang membuat


penyimpanan data yang kurang akurat.

Berdasarkan masalah – masalah yang ada, maka penulis


memberikan alternatif penyelesaian maslaah dalam mempermudah
pelayanan dan pemasaran pada PESANTREN AL HIDAYAH
NURUL UMMAH diantaranya adalah dengan membuat:

25
1. Perancangan sistem pembayaran biaya pendidikan berbasis
dekstop.

2. Perancangan database yang terkomputerisasi sehingga


penyimpanan data lebih terstruktur, menghasilkan data yang
cepat, tepat, dan akurat.

3. Perancangan sistem yang membantu menghasilkan laporan


yang terstruktur dan lebih akurat.
C. Aturan Sistem

Adapun aturan bisnis yang ada pada perancangan pembayaran


biaya pendidikan pada PESANTREN AL HIDAYAH NURUL
UMMAH diantaranya sebagai berikut:

1. Siswa harus mengisi data yang jelas pada saat pengisian form

2. Siswa harus melakukan pembayaran setelah rincian biaya


telah dikonfrmasi
D. Kebijakan Sistem

Setelah menganalisa sistem pembayaran yang ada pada


PESANTREN AL HIDAYAH NURUL UMMAH maka penulis
membuat sebuah aplikasi berbasis desktop dan database
phpMyAdmin sebagai interface yang mudah digunakan juga
efisien, baik dalam efisiensi kerja maupun efisiensi waktu.
Kebijakan- kebijakan sistem yang ada pada sistem tersebut adalah:

1. Guru memproses data yang telah diisi oleh siswa melalui


form yang dikasih oleh guru

2. Setiap data siswa akan disimpan dan dikelola di dalam


aplikasi pembayaran biaya pendidikan berbasis desktop.

3. Informasi pembayaran dapat dilihat langsung di dalam


aplikasi.

26
E. Dekomposisi Fungsi

Gambar 4.1 Dekomposisi Fungsi

(Sumber: Data Diolah, 2022)

F. Hirarki Fungsi Sistem yang Dibahas

Hirarki fungsi menguraikan masalah yang kompleks ke


dalam elemen-elemen yang bersangkutan, Dengan tujuan
menggambarkan struktur suatu sistem yang yang mempelajari
fungsi si interaksi antar komponen dan juga dampak dampaknya
pada sistem. Dengan demikian hierarki bertujuan membuat sistem
keputusan dan yang teridentifikasi.

Berikut hirarki fungsi yang ada pada sistem yang dibahas :

27
Gambar 4.2 Hirarki Fungsi Sistem yang Dibahas

(Sumber: Data Diolah, 2022)

G. Analisa Masukan (input), Proses dan Keluaran (Output).


1. Analisa masukkan (Input) yang berjalan.
a. Nama Masukkan : Login
Guru Sumber : Guru
Media : Form
Fungsi : Sebagai data untuk melakukan login
Frekuensi : Setiap guru membuka aplikasi
Keterangan : Berisi data username dan
password
b. Nama Masukkan : Data Siswa
Sumber : Siswa
Media : Form
Fungsi : Sebagai data untuk melakukan pembayaran
Frekuensi : Setiap siswa yang ingin
melakukan pembayaran
Keterangan : Berisi informasi data diri siswa

28
c. Nama Masukkan : Data
SPP Sumber : Guru
Media : Form
Fungsi : Sebagai informasi transaksi pembayaran spp
Frekuensi : Setiap ada siswa yang
melakukan pembayaran SPP

Keterangan : Berisi informasi pembayaran SPP

d. Nama Masukkan : Data


Fasilitas Sumber : Guru
Media : Form
Fungsi : Sebagai informasi data pembayaran fasilitas
Frekuensi : Setiap siswa melakukan
pembayaran fasilitas

Keterangan : Berisi data informasi pembayaran fasilitas

e. Nama Masukkan : Data


Ujian Sumber : Guru
Media : Form
Fungsi : Sebagai informais data pembayaran ujian
Frekuensi : Setiap siswa melakukan pembayaran
ujian Keterangan : Berisi data informasi pemabayaran ujian
2. Analisa Proses
a. Proses Pendataan
Pada proses ini, guru meng-input data siswa yang ingin
melakukan pembayaran biaya pendidikan
b. Proses Pembayaran
Setelah pembayaran dikonfirmasi oleh guru, siswa
melakukan pembayaran sesuai dengan jenis dan jumlah
pembayaran yang dipilih dan guru memberikan faktur pembayaran
kepada siswa.

29
c. Proses Laporan
Pada proses ini, guru mencetak laporan untuk diserahkan
kepada kepala sekolah.
3. Analisa Keluaran (Output)
a. Nama Keluaran :
Faktur Sumber : Guru
Bentuk Data : Kertas Faktur
Fungsi : Sebagai bukti pembayaran
Frekuensi : Setiap siswa melakukan pembayaran
Keterangan : Berisi detail faktur
b. Nama Keluaran : Laporan Data
Siswa Sumber : Guru
Bentuk Data : File
Fungsi : Sebagai arsip laporan data siswa
Frekuensi : Setiap 1 kali dalam sebulan
Keterangan : Berisi detail laporan data
siswa
c. Nama Keluaran : Laporan Data
SPP Sumber : Guru
Bentuk Data : File
Fungsi : Sebagai arsip laporan data spp
Frekuensi : Setiap 1 kali dalam sebulan
Keterangan : Berisi detail laporan data spp
d. Nama Keluaran : Laporan Data
Fasilitas Sumber : Guru
Bentuk Data : File
Fungsi : Sebagai arsip laporan data fasilitas
Frekuensi : Setiap 1 kali dalam satu bulan
Keterangan : berisi detai laporan data fasilitas
e. Nama Keluaran : Laporan Data
Ujian Sumber : Guru
Bentuk Data : File

30
Fungsi : Sebagai arsip laporan data ujian
Frekuensi : Setiap 1 kali dalam satu bulan
Keterangan : Berisi detail laporan data ujian

H. Diagram Alir Data (DAD) Konteks, Nol, dan Rinci


1. Diagram Konteks

Gambar 4.3 Diagram

Konteks (Sumber: Data

Diolah, 2022)

31
2. Diagram Nol

Gambar 4.4 Diagram Nol

(Sumber: Data Diolah 2022)

32
3. Diagram Rinci
a. Diagram Rinci 2.0 Pembayaran

Gambar 4.5 Digram Rinci 2.0 Pembayaran


(Sumber: Data Diolah, 2022)

33
b. Diagram Rinci 3.0 Cetak Laporan

Gambar 4.6 Diagram Rinci 3.0 Cetak Laporan


(Sumber: Data Diolah, 2022)

34
I. Kamus Data
1. Kamus Data Masukan
a. Nama arus data : Pendataan
siswa Alias : PS
Bentuk data : Dokumen cetakan komputer
Arus data : Siswa – 1.0 – Guru
Penjelasan : Sebagai data siswa
Periode : Setiap ada siswa yang ingin
melakukan Pembayaran
Volume : Sesuai kebutuhan

Struktur data : nisn+nama+kelas+status+tgl_lahir

+jenis_kelamin+alamat+notelp
b. Nama arus data : Pembayaran
SPP Alias : PSPP
Bentuk data : Dokumen cetakan komputer
Arus data : Guru – 2.1 - Siswa
Penjelasan : Sebagai pembayaran SPP
Periode : Setiap ada pembayaran SPP
Volume : Sesuai kebutuhan
Struktur data : id_spp+nisn+bulan+tgl_bayarspp+ket+total
c. Nama arus data : Pembayaran
fasilitas Alias : PF
Bentuk data : Dokumen cetakan komputer
Arus data : Guru – 2.2 - Siswa
Periode : Setiap ada pembayaran fasilitas
Volume : Sesuai kebutuhan
Struktur data : id_fasilitas+nisn+jenis_fasilitas+
tgl_bayarfasilitas+ket+jumlah

35
d. Nama arus data : Pembayaran
ujian Alias : PU
Bentuk data : Bentuk cetakan komputer
Arus data : Guru – 2.3 - Siswa
Periode : Setiap ada pembayaran ujian
Volume : Sesuai kebutuhan
Struktur data : id_ujian+nisn+ujian+
tgl_bayarujian+ket+harg
a
2. Kamus Data Keluaran
a. Nama arus data : Buat laporan data
siswa Alias : BLDS
Bentuk data : Kertas
Arus : Guru – 3.1 – Kepala sekolah
Penjelasan : Sebagai laporan data siswa
Periode : Setiap tahun ajaran baru
Volume : Sesuai kebutuhan
Sturuktur data : nisn+nama+kelas+status+tgl_lahir
+jenis_kelamin+alamat+notelp
b. Nama arus data : Buat laporan data
SPP Alias : BLDSSPP
Bentuk data : Kertas
Arus : Guru – 3.2 – kepala sekolah
Penjelasan : Sebagai laporan data SPP
Periode : Setiap ajaran baru
Volume : Sesuai kebutuhan
Struktur data : id_spp+nisn+bulan+tgl_bayarspp+ket+total
c. Nama arus data : Buat laporan data
fasilitas Alias : BLDF
Bentuk data : Kertas
Arus : Guru – 3.3 – kepala sekolah
Penjelasan : Sebagai laporan data fasilitas
36
Periode : Setiap ajaran baru
Volume : Sesuai kebutuhan
Struktur data : id_fasilitas+nisn+jenis_fasilitas+
tgl_bayarfasilitas+ket+jumlah
d. Nama arus data : Buat laporan data
ujian Alias : BLDU
Bentuk data : Kertas
Arus : Guru – 3.4 – kepala sekolah
Penjelasan : Sebagai laporan data ujian
Periode : Setiap ajaran baru
Volume : Sesuai kebutuhan
Struktur data :
id_ujian+nisn+ujian+
tgl_bayarujian+ket+harga
J. Spesifikasi Proses
1. Nomor Proses : 1.0
Nama Proses : Pendataan
siswa Masukan : Data siswa
Keluaran : Data siswa
Uraian : Siswa mengisi data siswa untuk pembayaran dan

guru meng-input data siswa untuk disimpan

2. Nomor Proses : 2.1


Nama Proses : Input pembayaran
SPP Masukan : Data pembayaran SPP
Keluaran : Faktur
Uraian : Guru menyerahkan nota pembayaran spp ke siswa
3. Nomor Proses : 2.2
Nama Proses : Input pembayaran
fasilitas Masukan : Data pembayaran
Fasilitas
Keluaran : Faktur

37
Uraian : Guru menyerahkan nota pembayaran fasilitas ke

38
siswa
4. Nomor Proses : 2.3
Nama Proses : Input pembayaran
ujian Masukan : Data pembayaran ujian
Keluaran : Faktur
Uraian : Guru menyerahkan nota pembayaran ujian ke
siswa
5. Nomor Proses : 3.1
Nama Proses : Buat laporan data
siswa Masukan : Lap.data siswa
Keluaran : Terima Lap. data siswa
Uraian : Guru mencetak laporan data siswa untuk
diserahkan kepada kepala sekolah
6. Nomor Proses : 3.2
Nama Proses : Buat laporan data
SPP Masukan : Lap. Data SPP
Keluaran : Terima Lap. Data SPP
Uraian : Guru mencetak laporan pembayaran spp untuk
diserahkan kepada kepala sekolah
7. Nomor Proses : 3.3
Nama Proses : Buat laporan Data
fasilitas Masukan : Lap. Data fasilitas
Keluaran : Terima Lap. Data fasilitas
Uraian : Guru mencetak laporan pembayaran spp untuk
diserahkan kepada kepala sekolah
8. Nomor Proses : 3.4
Nama Proses : buat laporan data
ujian Masukan : Lap. Data ujian
Keluaran : Terima Lap. Data ujian
Uraian : Guru mencetak laporan pembayaran spp untuk
diserahkan kepada kepala sekolah.

39
K. Bagian Terstruktur
1. Bagan Terstruktur Proses 1.0 Pendataan Siswa

Gambar 4.7 Bagan Terstruktur Proses 1.0


(Sumber: Data Diolah, 2022)

2. Bagan Terstruktur Proses 2.1 Input pembayaran SPP

Gambar 4.8 Bagan Terstruktur Proses 2.1


(Sumber: Data Diolah, 2022)

40
3. Bagan Terstruktur Proses 2.2 Input pembayaran fasilitas

Gambar 4.9 Bagan Terstruktur Proses 2.2


(Sumber: Data Diolah, 2022)

4. Bagan Terstruktur Proses 2.3 Input pembayaran ujian

Gambar 4.10 Bagan Terstruktur Proses 2.3


(Sumber: Data Diolah, 2022)

41
5. Bagan Terstruktur Proses 3.1 Buat laporan data siswa

Gambar 4.11 Bagan Terstruktur Proses 3.1


(Sumber: Data Diolah, 2022)

6. Bagan Terstruktur Proses 3.2 Buat laporan data SPP

Gambar 4.12 Bagan Terstruktur Proses 3.2


(Sumber: Data Diolah, 2022)

42
7. Bagan Terstruktur Proses 3.3 Buat laporan data fasilitas

Gambar 4.13 Bagan Terstruktur Proses 3.3


(Sumber: Data Diolah, 2022)

8. Bagan Terstruktur Proses 3.4 Buat laporan data ujian

Gambar 4.14 Bagan Terstruktur Proses 3.4


(Sumber: Data Diolah, 2022)

43
L. Spesifikasi Modul
1. Modul Pendataan
Siswa Mulai
Input data siswa
Simpan data siswa
Selesai
2. Modul Input pembayaran
SPP Mulai
Input data pembayaran
spp Pilih siswa
Simpan data pembayaran
spp Selesai
3. Modul Input pembayaran Fasilitas
Mulai
Input data pembayaran fasilitas
Pilih siswa
Simpan data pembayaran fasilitas
Selesai
4. Modul Input pembayaran Ujian
Mulai
Input data pembayaran ujian
Pilih siswa
Simpan data pembayaran ujian
Selesai
5. Modul Buat laporan data siswa
Mulai
Panggil data siswa
Cetak data siswa
Selesai

44
6. Modul Buat laporan data SPP
Mulai
Panggil data SPP
Cetak data SPP
Selesai
7. Modul Buat laporan data fasilitas
Mulai
Panggil data fasilitas
Cetak data fasilitas
Selesai
8. Modul Buat laporan data ujian
Mulai
Panggil data ujian
Cetak data ujian
Selesai

M. Analisa Basisdata
1. ERD (Entity Relationship Diagram)

Gambar 4.15 ERD (Entity Relationship Diagram)


(Sumber: Data Diolah, 2022)

45
2. Spesifikasi File Basisdata
a. Nama File : Guru
Media : Storage
Primary Key : id_guru
Panjang Record :
11+100+13+null+20+50+20 Jumlah Record : 214
Byte
Tabel 4.1 Tabel data guru
(Sumber: Data diolah, 2022)

Nama Field Type Value Keterangan


id_guru int 11 ID Guru
nama varchar 100 Nama Guru
notelp varchar 13 No. Telp Guru
alamat text null Alamat Guru
jenis_kelamin varchar 20 Jenis Kelamin
username varchar 50 Username
password varchar 20 Password

b. Nama File : Siswa


Media :
Storage
Primary Key : nisn
Panjang Record :
20+50+10+20+null+15+null+13 Jumlah Record :
128 Byte
Tabel 4.2 Tabel data siswa
(Sumber: Data diolah, 2022)

Nama Field Type Value Keterangan


nisn Varchar 20 NISN siswa
nama Varchar 50 Nama siswa
kelas Varchar 10 Kelas siswa
status Varchar 20 Status siswa pesantren atau
non-pesantren
tgl_lahir Date null Tanggal lahir siswa
jenis_kelamin Varchar 15 Jenis kelamin siswa
46
alamat Text null Alamat siswa
notelp Varchar 13 No. Telp siswa

47
c. Nama File : SPP
Media :
Storage
Primary Key : id_spp
Panjang Record :
20+20+20+null+null+11 Jumlah Record :
71 Byte

Tabel 4 3 Tabel data spp


(Sumber: Data diolah,
2022)

Nama Field Type Value Keterangan


id_spp Varchar 20 ID SPP
nisn Varchar 20 NISN siswa
bulan Varchar 20 Jumlah bulan yang ingin dibayar
tgl_bayarspp Date null Tanggal bayar spp
ket Text null Keterangan pembayaran spp
total Int 11 Total pembayaran spp

d. Nama File :
Fasilitas Media : Storage
Primary Key : id_fasilitas
Panjang Record :
20+20+100+null+null+11 Jumlah Record :
151 Byte

Tabel 4.4 Tabel data


fasilitas (Sumber: Data
diolah, 2022)

Nama Field Type Value Keterangan


id_fasilitas varchar 20 ID Fasilitas
nisn varchar 20 NISN siswa
jenis_fasilitas varchar 100 Jenis Fasilitas
tgl_bayarfasilitas date null Tanggal bayar fasilitas
ket text null Keterangan pembayaran
48
jumlah Int 11 Jumlah pembayaran fasilitas

49
e. Nama File : Ujian
Media :
Storage
Primary Key : id_ujian
Panjang Record :
20+20+20+null+null+11 Jumlah Record :
71 Byte
Tabel 4.5 Tabel data ujian
(Sumber: Data diolah, 2022)

Nama Field Type Value Keterangan


id_ujian varchar 20 ID Ujian
nisn varchar 20 NISN siswa
ujian varchar 20 Untuk memilih ujian
tgl_bayarujian Date null Tanggal bayar ujian
ket Text null Keterangan pembayaran ujian
harga Int 11 Harga pembayaran ujian

N. Rancangan layer, Rancangan Form Masukan, dan Rancangan


Form Keluaran
1. Rancangan Form Masukkan
a. Form Login

Gambar 4.16 Rancangan Layar Form Login


(Sumber: Data Diolah, 2022)

50
b. Form Menu Utama

Gambar 4.17 Rancangan Layar Form Menu Utama


(Sumber: Data Diolah, 2022)

51
c. Form menu Data Siswa

Gambar 4.18 Rancangan Layar Form Data Siswa


(Sumber: Data Diolah, 2022)

52
d. Form Data Guru

Gambar 4.19 Rancangan Layar Form Data Guru


(Sumber: Data Diolah, 2022)

53
e. Form Pembayaran SPP

Gambar 4.20 Rancangan Layar Form Pembayaran SPP


(Sumber: Data Diolah, 2022)

54
f. Form Pembayaran Ujian

Gambar 4.21 Rancangan Layar Form Pembayaran Ujian


(Sumber: Data Diolah, 2022)

55
g. Form Pembayaran Fasilitas

Gambar 4.22 Rancangan Layar Form Pembayaran Fasilitas


(Sumber: Data Diolah, 2022)

h. Form Laporan

Gambar 4.23 Rancangan Layar Form Laporan


(Sumber: Data Diolah, 2022)

56
2. Rancangan Form Keluaran
a. Laporan Data Siswa

Gambar 4.24 Rancangan Layar Laporan Data Siswa


(Sumber: Data Diolah, 2022)

b. Laporan Pembayaran SPP

Gambar 4.25 Rancangan Layar Laporan Pembayaran SPP


(Sumber: Data Diolah, 2022)

57
c. Laporan Pembayaran Ujian

Gambar 4.26 Rancangan Layar Laporan Pembayaran Ujian


(Sumber: Data Diolah, 2022)

d. Laporan Pembayaran Fasilitas

Gambar 4.27 Rancangan Layar Laporan Pembayaran Fasilitas


(Sumber: Data Diolah, 2022)

58
e. Laporan Faktur SPP

Gambar 4.28 Rancangan Layar Laporan Faktur SPP


(Sumber: Data Diolah, 2022)

f. Laporan Faktur Ujian

Gambar 4.29 Rancangan Layar Laporan Faktur Ujian


(Sumber: Data Diolah, 2022)

59
g. Laporan Faktur Fasilitas

Gambar 4.30 Rancangan Layar Laporan Faktur Fasilitas


(Sumber: Data Diolah, 2022)

60
O. Tampilan dan Penjelasan Layar, Tampilan Format Masukkan ,
dan Tampilan Format Keluaran
1. Tampilan Layar Login

Gambar 4.31 Tampilan Form Masukkan Layar Login


(Sumber: Data Diolah, 2022)

Tampilan di atas merupakan rancangan layar Login. Tampilan


Login menampilkan username dan password. Tombol Login digunakan
ketika username dan password sudah terisi dengan benar. Ketika
pengguna sudah mengisi username dan password dengan benar, maka
menampilakan menu utama pada program tersebut.

61
2. Tampilan Layar Menu Utama

Gambar 4.32 Tampilan Form Masukkan Layar Menu Utama


(Sumber: Data Diolah, 2022)

Tampilan diatas merupakan rancangan tampilan Menu Utama.


Tampilan Menu Utama menampilkan menu Pembayaran Pondok
Pesantren AL – HIDAYAH NURUL UMMAH. Pada layar utama
terdapat dua menu bar, menu bar pertama yaitu menu bar “Data” yag
didalamnya terdapat dua menu item yaitu “Data Siswa” dan “Data
Guru” digunakan untuk mengisi Formulir untuk melakukan
pembayaran. Menu bar kedua yaitu menu bar “Logout” yang
digunakan untuk keluar dari aplikasi tersebut.

62
3. Tampilan Layar Data Siswa

Gambar 4.33 Tampilan Form Masukkan Layar Menu Data Siswa


(Sumber: Data Diolah, 2022)

Tampilan diatas merupkan rancangan tampilan form Data Siswa.


Tampilan tersebut diisi ketika siswa melakukan pembayaran dan di
dalam form tersebut terdapat empat tombol yang digunakan untuk
menyimpan data siswa, merubah data siswa, menghapus data siswa
dan membatalkan pengisian form.

63
4. Tampilan Layar Data Guru

Gambar 4.34 Tampilan Form Masukkan Layar Menu Data Guru


(Sumber: Data Diolah, 2022)

Tampilan diatas merupakan rancangan tampilan form Data Guru.


Tampilan tersebut diisi guru ketika melakukan pembuatan username
dan password yang digunakan untuk membuat laporan di dalam
aplikasi tersebut. Di dalam tampilan form data guru terdapat empat
tombol yaitu tombol simpan untuk menyimpan data guru yang sudah
diisi. Tombol edit untuk mengubah data guru yang ingin diubah.
Tombol hapus untuk menghapus data guru yang sidah terisi. Dan
tombol batal untuk membatalkan mengisi form tersebut.

64
5. Tampilan Layar Pembayaran SPP

Gambar 4.35 Tampilan Form Masukkan Layar Menu Pembayaran SPP


(Sumber: Data Diolah, 2022)

Tampilan diatas merupakan rancangan tampilan form Pembayaran


SPP. Tampilan tersebut diisi ketika siswa akan melakukan pembayaran
SPP dan didalam form pembayaran spp terdapat lima buah tombol
yaitu tombol simpan untuk menyimpan data pembayaran siswa, tombol
edit untuk mengubah data pembayaran siswa, tombol hapus untuk
menghapus data yang telah mengisi form pembayaran, tombol batal
untuk membatalkan data siswa, tombol cetak untuk mencetak bukti
pembayaran yang sudah dilakukan oleh siswa.

65
6. Tampilan Layar Pembayaran Ujian

Gambar 4.36 Tampilan Form Layar Masukkan Pembayaran Ujian


Sumber: Data Diolah (2022)

Tampilan diatas merupakan rancangan tampilan form Pembayaran


Ujian. Tampilan tersebut diisi ketika siswa akan melakukan
pembayaran Ujian dan didalam form pembayaran ujian terdapat lima
buah tombol yaitu tombol simpan untuk menyimpan data pembayaran
siswa, tombol edit untuk mengubah data pembayaran siswa, tombol
hapus untuk menghapus data yang telah mengisi form pembayaran,
tombol batal untuk membatalkan data siswa, tombol cetak untuk
mencetak bukti pembayaran yang sudah dilakukan oleh siswa.

66
7. Tampilan Layar Pembayaran Fasilitas

Gambar 4.37 Tampilan Form Layar Masukkan Pembayaran Fasilitas


(Sumber: Data Diolah, 2022)

Tampilan diatas merupakan rancangan tampilan form Pembayaran


Fasilitas. Tampilan tersebut diisi ketika siswa akan melakukan
pembayaran Fasilitas dan didalam form pembayaran fasilitas terdapat
lima buah tombol yaitu tombol simpan untuk menyimpan data
pembayaran siswa, tombol edit untuk mengubah data pembayaran
siswa, tombol hapus untuk menghapus data yang telah mengisi form
pembayaran, tombol clear untuk membatalkan data siswa, tombol
cetak untuk mencetak bukti pembayaran yang sudah dilakukan oleh
siswa.

67
8. Tampilan Layar Laporan

Gambar 4.38 Tampilan Layar Laporan


(Sumber: Data Diolah, 2022)

68
9. Tampilan Layar Laporan Data Siswa

Gambar 4.39 Tampilan Keluaran Laporan Data Siswa


(Sumber: Data Diolah, 2022)

10. Tampilan Layar Laporan Pembayaran SPP

Gambar 4.40 Tampilan Keluaran Laporan Pembayaran SPP

(Sumber: Data Diolah, 2022)

69
11. Tampilan Layar Laporan Pembayaran Ujian

Gambar 4.41 Tampilan Keluaran Laporan Pembayaran Ujian


(Sumber: Data Diolah, 2022)

70
12. Tampilan Layar Laporan Pembayaran Fasilitas

Gambar 4.42 Tampilan Keluaran Laporan Pembayaran Fasilitas


(Sumber: Data Diolah, 2022)

13. Tampilan Layar Faktur Pembayaran SPP

Gambar 4.43 Tampilan Keluaran Faktur Pembayaran SPP


(Sumber: Data Diolah, 2022)

71
14. Tampilan Layar Faktur Pembayaran Ujian

Gambar 4.44 Tampilan Keluaran Faktur Pembayaran Ujian

(Sumber: Data Diolah, 2022)

72
15. Tampilan Layar Faktur Pembayaran Fasilitas

Gambar 4.45 Tampilan Keluaran Faktur Pembayaran Fasilitas

(Sumber: Data Diolah, 2022)

73
BAB V

PENUTU

A. Kesimpulan
Sistem Informasi Pembayaran Biaya Pendidikan telah
berhasil di implementasikan Pada Pesantren Al Hidayah Nurul
Ummah Jatisari Bekasi. Dari hasil kegiatan KKP yang dilakukan
pada Pesantren Al Hidayah Nurul Ummah, disimpulkan beberapa
hal sebagai berikut:

1. Dengan menggunakan sistem ini, maka pembayaran biaya


pendidikan santri menjadi efisien dan cepat.
2. Dengan menggunakan sistem ini, penyimpanan data tidak
menggunakan media kertas lagi melainkan berupa hardisk
atau media penyimpanan elektronik lainya.
3. Dengan menggunakan sistem ini, sistem pengolahan
pembayaran biaya pendidikan yang tadinya masih bersifat
manual menjadi terkomputerisasi sehingga dapat dihasilkan
informasi yang cepat, tepat, dan akurat.

74
B. Saran
Sejalan dengan sistem usulan yang penulis buat, maka
demi tercapainya tujuan dan saran yang diharapkan, maka
penulisan dapat memberi saran sebagai berikut:

1. Melakukan pemeliharaan secara berkala untuk perangkat


lunak (software) dan perangkat kerasnya (hardware) yang
digunakan, sehingga dapat bekerja dengan optimal untuk
mendukung kegiatan operasional aplikasi pembayaran biaya
pendidikan di Pondok Pesantren Al-Hidayah Nurul Ummah.
2. Melakukan backup data(laporan), sehingga apabila terjadi
hal- hal yang tidak diinginkan, misalnya terjadi kerusakan
pada harddisk maka datanya tidak hilang.
3. Meskipun telah menggunakan sistem yang terkomputerisasi,
ketelitian dalam menginput data perlu diperhatikan agar data
yang sudah direkam(store) benar-benar merupakan salinan
dari data sumber.
4. Maintance dilakukan untuk mengoreksi kesalahan pada
aplikasi pembayaran biaya pendidikan di Pondok Pesantren
Al-Hidayah nurul ummah agar dapat diperbaiki.

75
DAFTAR PUSTAKA

Prakoso, M. D., & Herlawati, H. (2017). Sistem Informasi Pembayaran Biaya


Pendidikan Siswa Pada SMK Perwira Bangsa Bekasi Utara. Bina Insani
ICT Journal, 4(1), 95-110.

Tasiba, F. M., & Herlawati, H. (2018). Sistem Informasi Pembayaran Biaya


Pendidikan Siswa Pada SMP PGRI Tambun Selatan. Jurnal Mahasiswa
Bina Insani, 3(1), 1-12.

Ahadi, A. H., & Effiyaldi, E. (2019). Analisis Dan Perancangan Sistem Informasi
Administrasi Pembayaran Biaya Pendidikan Berbasis Web Dan Sms
Gateway Pada Pondok Pesantren Nurul Iman Muaro Sebapo. Jurnal
Manajemen Sistem Informasi, 4(2), 159-170.

Prakoso, M. D., & Herlawati, H. (2017). Sistem Informasi Pembayaran Biaya


Pendidikan Siswa Pada SMK Perwira Bangsa Bekasi Utara. Bina Insani
ICT Journal, 4(1), 95-110.

Damayanti, D., & Sulistiani, H. (2017). Sistem Informasi Pembayaran Biaya


Sekolah Pada SD Ar-Raudah Bandar Lampung. Jurnal Teknoinfo, 11(2),
25-29.

76
LAMPIRAN

Lampiran 1. Listing Program


A. koneksi.java
package gui;
public class koneksi {
private static java.sql.Connection conn;

public static java.sql.Connection getKoneksi()


{ if (conn == null){
try{
String url = "jdbc:mysql://localhost:3306/pembayaran_pesantren";
String user = "root";
String password = "";
java.sql.DriverManager.registerDriver(new com.mysql.jdbc.Driver());
conn = java.sql.DriverManager.getConnection(url, user, password);
}catch (Exception e){
System.out.println("Error");
}
}
return conn;
}

public static void main(String args[])


{ getKoneksi();
}
}

B. login.java
package gui;

import java.sql.Connection;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import javax.swing.JOptionPane;

77
public class login extends javax.swing.JFrame

{ public login() {

initComponents();

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

try{

Connection c = koneksi.getKoneksi();

Statement s = c.createStatement();

String sql = "SELECT * FROM guru WHERE username='" + txuser.getText()

+"' and password='"+ txpass.getText() + "'";

ResultSet r = s.executeQuery(sql);

if (r.next()){

JOptionPane.showMessageDialog(null, "Login Berhasil");

main n = new main();

n.show();

this.dispose();

}else{

JOptionPane.showMessageDialog(null, "Username atau Password Salah!");

txpass.requestFocus();

}catch(SQLException e){

System.out.println("error");

public static void main(String args[]) {

78
/* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

//</editor-fold>

79
/* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new login().setVisible(true);

});

// Variables declaration - do not modify

private javax.swing.JButton jButton1;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel2;

private javax.swing.JPasswordField txpass;

private javax.swing.JTextField txuser;

// End of variables declaration

C. menu.java
package gui;

import java.awt.Color;
import javax.swing.JPanel;
import javax.swing.table.DefaultTableModel;

/**

80
*
* @author shadow
*/
public class main extends javax.swing.JFrame {
//private Color primaryColor = new Color(0,153,153);
private Color primaryColorHover = new Color(0,204,204);
private DefaultTableModel model;
/**
* Creates new form main
*/
public main() {
initComponents();
initHome();

private void setActiveMenu(JPanel menu) {


// resetActiveMenu();
menu.setBackground(primaryColorHover);
}

@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

jMenuItem8 = new javax.swing.JMenuItem();


jPanel1 = new javax.swing.JPanel();
jLabel2 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
jPanel2 = new javax.swing.JPanel();
home = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
spp = new javax.swing.JPanel();
jLabel8 = new javax.swing.JLabel();
ujian = new javax.swing.JPanel();
jLabel9 = new javax.swing.JLabel();
fasilitas = new javax.swing.JPanel();

81
jLabel11 = new javax.swing.JLabel();
laporan = new javax.swing.JPanel();
jLabel12 = new javax.swing.JLabel();
jLabel15 = new javax.swing.JLabel();
jMenuBar1 = new
javax.swing.JMenuBar(); jMenu1 = new
javax.swing.JMenu(); jMenu2 = new
javax.swing.JMenu();

jMenuItem8.setText("jMenuItem8");

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setMinimumSize(new java.awt.Dimension(1100, 560));
setSize(new java.awt.Dimension(1100, 560));
getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

jPanel1.setBackground(new java.awt.Color(255, 255, 255));

jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/image/logo_.png"))); //
NOI18N

jLabel4.setFont(new java.awt.Font("Lato", 1, 14)); // NOI18N


jLabel4.setText("Jl. Al-Hidayah, Kp. Bojongsari, RT 02/01, Jatisari, Jatiasih, Kota Bekasi");

jLabel5.setFont(new java.awt.Font("Lato", 1, 24)); // NOI18N


jLabel5.setText("PONDOK PESANTREN AL - HIDAYAH NURUL UMMAH");

jLabel6.setFont(new java.awt.Font("Lato", 1, 30)); // NOI18N


jLabel6.setText("SISTEM INFORMASI PEMBAYARAN BIAYA PENDIDIKAN");

javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);


jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Align
ment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(28, 28, 28)
.addComponent(jLabel2)
.addGap(18, 18, 18)

.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel5)

82
.addComponent(jLabel6)
.addComponent(jLabel4))
.addContainerGap(58, Short.MAX_VALUE))
);
jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel6)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jLabel5)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jLabel4)
.addGap(45, 45, 45))
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jLabel2)
.addGap(0, 0, Short.MAX_VALUE))
);

getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, -1, 140));

jPanel2.setBackground(new java.awt.Color(0, 153, 153));


jPanel2.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));

home.setBackground(new java.awt.Color(0, 204, 204));


home.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt)
{ homeMouseClicked(evt);
}
});

jLabel1.setFont(new java.awt.Font("Lato", 1, 18)); // NOI18N


jLabel1.setText("Dashboard");

javax.swing.GroupLayout homeLayout = new


javax.swing.GroupLayout(home); home.setLayout(homeLayout);
homeLayout.setHorizontalGroup( homeLayout.createParallelGroup(javax.swing.GroupLayout.Alignme
nt.LEADING)

83
.addGroup(homeLayout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
homeLayout.setVerticalGroup( homeLayout.createParallelGroup(javax.swing.GroupLayout.Align
ment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
homeLayout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel1)
.addContainerGap())
);

spp.setBackground(new java.awt.Color(0, 153, 153));


spp.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt)
{ sppMouseClicked(evt);
}
});

jLabel8.setFont(new java.awt.Font("Lato", 1, 18)); //


NOI18N jLabel8.setText("SPP");

javax.swing.GroupLayout sppLayout = new javax.swing.GroupLayout(spp);


spp.setLayout(sppLayout);
sppLayout.setHorizontalGroup( sppLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.L
EADING)
.addGroup(sppLayout.createSequentialGroup()
.addGap(19, 19, 19)
.addComponent(jLabel8)
.addContainerGap(20, Short.MAX_VALUE))
);
sppLayout.setVerticalGroup( sppLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.
LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
sppLayout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel8)
.addContainerGap())

84
);

ujian.setBackground(new java.awt.Color(0, 153, 153));


ujian.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
ujianMouseClicked(evt);
}
});

jLabel9.setFont(new java.awt.Font("Lato", 1, 18)); //


NOI18N jLabel9.setText("Ujian");

javax.swing.GroupLayout ujianLayout = new javax.swing.GroupLayout(ujian);


ujian.setLayout(ujianLayout);
ujianLayout.setHorizontalGroup( ujianLayout.createParallelGroup(javax.swing.GroupLayout.Alig
nment.LEADING)
.addGroup(ujianLayout.createSequentialGroup()
.addGap(19, 19, 19)
.addComponent(jLabel9)
.addContainerGap(23, Short.MAX_VALUE))
);
ujianLayout.setVerticalGroup( ujianLayout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
ujianLayout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel9)
.addContainerGap())
);

fasilitas.setBackground(new java.awt.Color(0, 153, 153));


fasilitas.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt)
{ fasilitasMouseClicked(evt);
}
});

jLabel11.setFont(new java.awt.Font("Lato", 1, 18)); // NOI18N


jLabel11.setText("Fasilitas");

85
javax.swing.GroupLayout fasilitasLayout = new
javax.swing.GroupLayout(fasilitas); fasilitas.setLayout(fasilitasLayout);
fasilitasLayout.setHorizontalGroup( fasilitasLayout.createParallelGroup(javax.swing.GroupLayout.
Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
fasilitasLayout.createSequentialGroup()
.addContainerGap(21, Short.MAX_VALUE)
.addComponent(jLabel11)
.addGap(19, 19, 19))
);
fasilitasLayout.setVerticalGroup( fasilitasLayout.createParallelGroup(javax.swing.GroupLayout.Al
ignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
fasilitasLayout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel11)
.addContainerGap())
);

laporan.setBackground(new java.awt.Color(0, 153, 153));


laporan.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt)
{ laporanMouseClicked(evt);
}
});

jLabel12.setFont(new java.awt.Font("Lato", 1, 18)); // NOI18N


jLabel12.setText("Laporan");

javax.swing.GroupLayout laporanLayout = new


javax.swing.GroupLayout(laporan); laporan.setLayout(laporanLayout);
laporanLayout.setHorizontalGroup( laporanLayout.createParallelGroup(javax.swing.GroupLayout.
Alignment.LEADING)
.addGroup(laporanLayout.createSequentialGroup()
.addGap(20, 20, 20)
.addComponent(jLabel12)
.addContainerGap(22, Short.MAX_VALUE))
);
laporanLayout.setVerticalGroup(

86
laporanLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
laporanLayout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel12)
.addContainerGap())
);

javax.swing.GroupLayout jPanel2Layout = new


javax.swing.GroupLayout(jPanel2); jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup( jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Align
ment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addGap(86, 86, 86)
.addComponent(home, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 121,
Short.MAX_VALUE)
.addComponent(spp, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(85, 85, 85)
.addComponent(ujian, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(82, 82, 82)
.addComponent(fasilitas, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(72, 72, 72)
.addComponent(laporan, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(147, 147, 147))
);
jPanel2Layout.setVerticalGroup( jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
.addComponent(home, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(spp, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(ujian, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(fasilitas, javax.swing.GroupLayout.DEFAULT_SIZE,

87
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(laporan, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);

getContentPane().add(jPanel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 140, 1100,


40));

jLabel15.setIcon(new javax.swing.ImageIcon(getClass().getResource("/image/pesantren.jpeg"))); //
NOI18N
getContentPane().add(jLabel15, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 180, 1100,
490));

jMenu1.setText("Data");
jMenu1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jMenu1MouseClicked(evt);
}
});
jMenuBar1.add(jMenu1);

jMenu2.setText("Logout");
jMenu2.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jMenu2MouseClicked(evt);
}
});
jMenuBar1.add(jMenu2);

setJMenuBar(jMenuBar1);

setSize(new java.awt.Dimension(1117,
720)); setLocationRelativeTo(null);
}// </editor-fold>

private void homeMouseClicked(java.awt.event.MouseEvent evt) {


main home = new main();
home.show();
dispose();
}

88
private void sppMouseClicked(java.awt.event.MouseEvent evt) {
spp spp = new spp();
spp.show();
this.dispose();
}

private void ujianMouseClicked(java.awt.event.MouseEvent evt) {


ujian ujian = new ujian();
ujian.show();
this.dispose();
}

private void fasilitasMouseClicked(java.awt.event.MouseEvent evt) {


fasilitas fasilitas = new fasilitas();
fasilitas.show();
this.dispose();
}

private void laporanMouseClicked(java.awt.event.MouseEvent evt)


{ laporan laporan = new laporan();
laporan.show();
this.dispose();
}

private void jMenu1MouseClicked(java.awt.event.MouseEvent evt) {


siswa siswa = new siswa();
siswa.show();
dispose();
}

private void jMenu2MouseClicked(java.awt.event.MouseEvent evt) {


login log = new login();
log.show();
this.dispose();
}

/**
* @param args the command line arguments

89
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(main.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(main.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(main.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(main.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>

/* Create and display the form */


java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new main().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JPanel fasilitas;
private javax.swing.JPanel home;

90
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel11;
private javax.swing.JLabel jLabel12;
private javax.swing.JLabel jLabel15;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel8;
private javax.swing.JLabel jLabel9;
private javax.swing.JMenu jMenu1;
private javax.swing.JMenu jMenu2;
private javax.swing.JMenuBar
jMenuBar1;
private javax.swing.JMenuItem jMenuItem8;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel laporan;
private javax.swing.JPanel spp;
private javax.swing.JPanel ujian;
// End of variables declaration
}

D. guru.java
package gui;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import javax.swing.JOptionPane;

import javax.swing.table.DefaultTableModel;

public class guru extends javax.swing.JFrame

private Connection cn = new koneksi().getKoneksi();

91
private DefaultTableModel model;

92
public void clear(){

nik.setText("");

txnama.setText("");

txnotelp.setText("");

txalamat.setText("");

txUser.setText("");

txPass.setText("");

public void loadData(){

Object[] Baris = {"NIK", "Nama", "No Telp","Alamat", "Jenis Kelamin",


"Username", "Password", ""};

model = new DefaultTableModel(null,

Baris); try{

Statement s = cn.createStatement();

String sql = "SELECT * FROM guru where id_guru like '%" + txcari.getText() + "%' or
nama like '%" + txcari.getText() + "%' order by id_guru asc" ;

ResultSet r = s.executeQuery(sql);

while(r.next()){

Object[] o = new Object[7];

o [0] = r.getString("id_guru");

o [1] = r.getString("nama");

o [2] = r.getString("notelp");

o [3] = r.getString("alamat");

o [4] = r.getString("jenis_kelamin");

o [5] = r.getString("username");

93
o [6] =

r.getString("password");

model.addRow(o);

jTable1.setModel(model);

jTable1.removeColumn(jTable1.getColumnModel().getColumn(7));

}catch(SQLException e){

System.out.println("terjadi kesalahan");

public guru() {

initComponents();

loadData();

private void homeMouseClicked(java.awt.event.MouseEvent evt) {

main home = new main();

home.show();

dispose();

private void siswaMouseClicked(java.awt.event.MouseEvent evt) {

siswa siswa = new siswa();

siswa.show();

dispose();

94
private void guruMouseClicked(java.awt.event.MouseEvent evt) {

guru guru = new guru();

guru.show();

this.dispose();

private void dataMouseClicked(java.awt.event.MouseEvent evt) {

siswa siswa = new siswa();

siswa.show();

dispose();

private void btnSimpanActionPerformed(java.awt.event.ActionEvent evt) {

try{

Connection c = koneksi.getKoneksi();

String sql = "INSERT INTO guru VALUES (?, ?, ?, ?, ?, ?, ?)";

PreparedStatement p = c.prepareStatement(sql);

p.setString(1, nik.getText());

p.setString(2, txnama.getText());

p.setString(3, txnotelp.getText());

p.setString(4, txalamat.getText());

p.setString(5, cbjk.getSelectedItem().toString());

p.setString(6, txUser.getText());

p.setString(7, txPass.getText());

95
p.executeUpdate();

p.close();

clear();

JOptionPane.showMessageDialog(null, "Data Tersimpan");

}catch(SQLException e){

JOptionPane.showMessageDialog(null, "NIK sudah ada, silahkan isi NIK baru!");

}finally{ load

Data();

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt)

{ try{

Connection c = koneksi.getKoneksi();

String sql = "UPDATE guru SET id_guru = ?, nama = ?, notelp = ?, alamat = ?,


jenis_kelamin = ?, username = ?, password = ? WHERE id_guru = '" +nik.getText()
+"'";

PreparedStatement p = c.prepareStatement(sql);

p.setString(1, nik.getText());

p.setString(2, txnama.getText());

p.setString(3, txnotelp.getText());

p.setString(4, txalamat.getText());

p.setString(5, cbjk.getSelectedItem().toString());

p.setString(6, txUser.getText());

p.setString(7, txPass.getText());

96
p.executeUpdate();

p.close();

JOptionPane.showMessageDialog(null, "Data Terubah");

btnSimpan.setEnabled(true);

clear();

}catch(SQLException e){

JOptionPane.showMessageDialog(null, "Data Gagal Terubah");

}finally{ load

Data();

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {

int ok = JOptionPane.showConfirmDialog(null,"Yakin ingin hapus data


ini?","Konfirmasi",JOptionPane.YES_NO_OPTION);

if (ok==0){

String sql = "delete from guru where id_guru ='"+nik.getText()+"'";

try{

Connection c = koneksi.getKoneksi();

PreparedStatement stat = c.prepareStatement(sql);

stat.executeUpdate();

JOptionPane.showMessageDialog(null, "Data telah terhapus");

clear();

nik.requestFocus();

97
catch (SQLException e){

JOptionPane.showMessageDialog(null, "data gagal dihapus"+e);

loadData();

private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {

btnSimpan.setEnabled(false);

int baris = jTable1.getSelectedRow();

nik.setText(jTable1.getModel().getValueAt(baris, 0).toString());

txnama.setText(jTable1.getModel().getValueAt(baris, 1).toString());

txnotelp.setText(jTable1.getModel().getValueAt(baris, 2).toString());

txalamat.setText(jTable1.getModel().getValueAt(baris, 3).toString());

cbjk.setSelectedItem(jTable1.getModel().getValueAt(baris, 4).toString());

txUser.setText(jTable1.getModel().getValueAt(baris, 5).toString());

txPass.setText(jTable1.getModel().getValueAt(baris, 6).toString());

private void txcariKeyReleased(java.awt.event.KeyEvent evt) {

loadData();

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt)

{ clear();

98
}

private void jMenu3MouseClicked(java.awt.event.MouseEvent evt) {

login log = new login();

log.show();

this.dispose();

/**

* @param args the command line arguments

*/

public static void main(String args[]) {

/* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

} catch (ClassNotFoundException ex) {

99
java.util.logging.Logger.getLogger(guru.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(guru.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(guru.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(guru.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

//</editor-fold>

/* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new guru().setVisible(true);

});

// Variables declaration - do not modify

private javax.swing.JButton

btnSimpan;

100
private javax.swing.JComboBox<String> cbjk;

private javax.swing.JMenu data;

private javax.swing.JPanel guru;

private javax.swing.JPanel home;

private javax.swing.JButton jButton3;

private javax.swing.JButton jButton4;

private javax.swing.JButton jButton5;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel13;

private javax.swing.JLabel jLabel14;

private javax.swing.JLabel jLabel15;

private javax.swing.JLabel jLabel16;

private javax.swing.JLabel jLabel19;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel20;

private javax.swing.JLabel jLabel21;

private javax.swing.JLabel jLabel22;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

private javax.swing.JLabel jLabel5;

private javax.swing.JLabel jLabel6;

private javax.swing.JLabel jLabel7;

private javax.swing.JLabel jLabel8;

private javax.swing.JMenu jMenu2;

private javax.swing.JMenu jMenu3;

101
private javax.swing.JMenuBar jMenuBar1;

private javax.swing.JMenuItem jMenuItem4;

private javax.swing.JMenuItem jMenuItem5;

private javax.swing.JMenuItem jMenuItem7;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JScrollPane

jScrollPane1; private

javax.swing.JScrollPane jScrollPane2;

private javax.swing.JTable jTable1;

private javax.swing.JTextField nik;

private javax.swing.JPanel siswa;

private javax.swing.JPasswordField

txPass; private javax.swing.JTextField

txUser; private javax.swing.JTextArea

txalamat; private javax.swing.JTextField

txcari; private javax.swing.JTextField

txnama; private javax.swing.JTextField

txnotelp;

// End of variables declaration

E. siswa.java
package gui;

import java.sql.Connection;

import java.sql.PreparedStatement;

102
import java.sql.ResultSet;

103
import java.sql.SQLException;

import java.sql.Statement;

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.logging.Level;

import javax.swing.JOptionPane;

import javax.swing.table.DefaultTableModel;

public class siswa extends javax.swing.JFrame {

private Connection cn = new koneksi().getKoneksi();

public String tanggal1;

private DefaultTableModel model;

public void clear(){

txnisn.setText("");

txnama.setText("");

txkelas.setText("");

cbjenis.setSelectedItem("");

txAlamat.setText("");

txnelp.setText("");

public siswa() {

initComponents();

loadData();

private void homeMouseClicked(java.awt.event.MouseEvent evt) {

104
main home = new

main(); home.show();

dispose();

private void sppMouseClicked(java.awt.event.MouseEvent evt) {

guru guru = new guru();

guru.show();

this.dispose();

private void btnsimpanActionPerformed(java.awt.event.ActionEvent evt) {

try{

Connection c = koneksi.getKoneksi();

String sql = "INSERT INTO siswa VALUES (?, ?, ?, ?, ?, ?, ?, ?)";

PreparedStatement p = c.prepareStatement(sql);

p.setString(1, txnisn.getText());

p.setString(2, txnama.getText());

p.setString(3, txkelas.getText());

p.setString(4, cbstatus.getSelectedItem().toString());

p.setString(5, tanggal1);

p.setString(6, cbjenis.getSelectedItem().toString());

p.setString(7, txAlamat.getText());

p.setString(8, txnelp.getText());

p.executeUpdate();

p.close();

105
clear();

JOptionPane.showMessageDialog(null, "Data Tersimpan");

}catch(SQLException e){

JOptionPane.showMessageDialog(null, "NISN sudah ada, silahkan isi NISN baru!");

}finally{ load

Data();

private void btneditActionPerformed(java.awt.event.ActionEvent evt) {

try{

Connection c = koneksi.getKoneksi();

String sql = "UPDATE siswa SET nisn = ?, nama = ?, kelas = ?, status=?, tgl_lahir = ?,
jenis_kelamin = ?, alamat = ?, notelp = ? WHERE nisn = '" +txnisn.getText()+"'";

PreparedStatement p = c.prepareStatement(sql);

p.setString(1, txnisn.getText());

p.setString(2, txnama.getText());

p.setString(3, txkelas.getText());

p.setString(4, cbstatus.getSelectedItem().toString());

p.setString(5, tanggal1);

p.setString(6, cbjenis.getSelectedItem().toString());

p.setString(7, txAlamat.getText());

p.setString(8, txnelp.getText());

p.executeUpdate();

106
p.close();

JOptionPane.showMessageDialog(null, "Data Terubah");

btnsimpan.setEnabled(true);

clear();

}catch(SQLException e){

JOptionPane.showMessageDialog(null, "Data Gagal Terubah");

}finally{ load

Data();

private void btnhapusActionPerformed(java.awt.event.ActionEvent evt)

{ int ok = JOptionPane.showConfirmDialog(null,"Yakin ingin hapus

data
ini?","Konfirmasi",JOptionPane.YES_NO_OPTION);

if (ok==0){

String sql = "delete from siswa where nisn ='"+txnisn.getText()+"'";

try{

Connection c = koneksi.getKoneksi();

PreparedStatement stat = c.prepareStatement(sql);

stat.executeUpdate();

JOptionPane.showMessageDialog(null, "Data telah terhapus");

clear();

txnisn.requestFocus();

catch (SQLException e){

JOptionPane.showMessageDialog(null, "data gagal dihapus"+e);


107
}

loadData();

private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {

btnsimpan.setEnabled(false);

int baris = jTable1.getSelectedRow();

txnisn.setText(jTable1.getModel().getValueAt(baris, 0).toString());

txnama.setText(jTable1.getModel().getValueAt(baris, 1).toString());

txkelas.setText(jTable1.getModel().getValueAt(baris, 2).toString());

cbstatus.setSelectedItem(jTable1.getModel().getValueAt(baris, 3).toString());

try {

DefaultTableModel tug = (DefaultTableModel)jTable1.getModel();

Date date = new SimpleDateFormat("yyyy-MM-dd").parse((String) tug.getValueAt(baris,


4));

txdate.setDate(date);

} catch (ParseException e) {

java.util.logging.Logger.getLogger(siswa.class.getName()).log(Level.SEVERE, null, e);

cbjenis.setSelectedItem(jTable1.getModel().getValueAt(baris, 5).toString());

txAlamat.setText(jTable1.getModel().getValueAt(baris, 6).toString());

txnelp.setText(jTable1.getModel().getValueAt(baris, 7).toString());

private void txcariKeyReleased(java.awt.event.KeyEvent evt) {

108
loadData();

private void txdatePropertyChange(java.beans.PropertyChangeEvent evt) {

if (txdate.getDate()!=null){

SimpleDateFormat Format=new SimpleDateFormat("yyyy-MM-dd");

tanggal1=Format.format(txdate.getDate());

private void btnbatalActionPerformed(java.awt.event.ActionEvent evt) {

clear();

private void jMenu3MouseClicked(java.awt.event.MouseEvent evt) {

login log = new login();

log.show();

this.dispose();

public void loadData(){

Object[] Baris = {"NISN", "Nama", "Kelas", "Status","Tanggal Lahir", "Jenis


Kelamin", "Alamat", "No Telp", ""};

model = new DefaultTableModel(null, Baris);

try{

109
Statement sc = cn.createStatement();

String sql = "SELECT * FROM siswa where nisn like '%" + txcari.getText() + "%' or
nama like '%" + txcari.getText() + "%' order by nisn asc" ;

ResultSet r = sc.executeQuery(sql);

while(r.next()){

model.addRow(new Object[]{

r.getString(1)

r.getString(2)

r.getString(3)

r.getString(4)

r.getString(5)

r.getString(6)

r.getString(7)

r.getString(8)

});

jTable1.setModel(model);

jTable1.removeColumn(jTable1.getColumnModel().getColumn(8));
110
}catch(SQLException e){

System.out.println("terjadi kesalahan");

/**

* @param args the command line arguments

111
*/

public static void main(String args[]) {

/* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(siswa.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(siswa.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(siswa.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

112
java.util.logging.Logger.getLogger(siswa.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

//</editor-fold>

/* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new siswa().setVisible(true);

});

// Variables declaration - do not modify

private javax.swing.JButton btnbatal;

private javax.swing.JButton btnedit;

private javax.swing.JButton btnhapus;

private javax.swing.JButton btnsimpan;

private javax.swing.JComboBox<String> cbjenis;

private javax.swing.JComboBox<String> cbstatus;

private javax.swing.JPanel home;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel13;

private javax.swing.JLabel jLabel14;

private javax.swing.JLabel jLabel15;

113
private javax.swing.JLabel jLabel16;

private javax.swing.JLabel jLabel17;

private javax.swing.JLabel jLabel18;

private javax.swing.JLabel jLabel19;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel20;

private javax.swing.JLabel jLabel21;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

private javax.swing.JLabel jLabel5;

private javax.swing.JLabel jLabel6;

private javax.swing.JLabel jLabel7;

private javax.swing.JLabel jLabel8;

private javax.swing.JMenu jMenu1;

private javax.swing.JMenu jMenu3;

private javax.swing.JMenuBar

jMenuBar1; private javax.swing.JPanel

jPanel1;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JScrollPane

jScrollPane1; private

javax.swing.JScrollPane jScrollPane2;

private javax.swing.JTable jTable1;

private javax.swing.JPanel

pendaftaran; private

114
javax.swing.JPanel spp;

private javax.swing.JTextArea txAlamat;

115
private javax.swing.JTextField txcari;

private com.toedter.calendar.JDateChooser txdate;

private javax.swing.JTextField txkelas;

private javax.swing.JTextField txnama;

private javax.swing.JTextField txnelp;

private javax.swing.JTextField txnisn;

// End of variables declaration

F. spp.java
package gui;

import java.nio.file.Paths;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.HashMap;

import java.util.logging.Level;

import javax.swing.JOptionPane;

import javax.swing.table.DefaultTableModel;

import net.sf.jasperreports.engine.JasperFillManager;

116
import net.sf.jasperreports.engine.JasperPrint;

import net.sf.jasperreports.view.JasperViewer;

public class spp extends javax.swing.JFrame {

public String tanggal1;

private Connection cn = new koneksi().getKoneksi();

public int tot;

private DefaultTableModel model;

private void loadData() {

Object[] Baris = {"Kode SPP","NISN","Nama Siswa", "Kelas", "Status", "Bulan",


"Tanggal Bayar", "Keterangan", "Harga"};

model = new DefaultTableModel(null,

Baris); try {

String sql = "SELECT spp.*, siswa.nisn, siswa.nama, siswa.kelas, siswa.status FROM spp
INNER JOIN siswa ON spp.nisn=siswa.nisn where spp.id_spp like '%" + txcari.getText() + "%' or
siswa.nisn like '%" + txcari.getText() + "%' or siswa.nama like '%" + txcari.getText() + "%' order
by spp.id_spp ASC" ;

Statement stat = cn.createStatement();

ResultSet hasil =

stat.executeQuery(sql); while

(hasil.next()) {

model.addRow(new Object[]{

hasil.getString(1),

hasil.getString(7),

hasil.getString(8),

hasil.getString(9),

hasil.getString(10),

117
hasil.getString(3)

hasil.getString(4)

hasil.getString(5)

hasil.getString(6)

});

tblspp.setModel(model);

} catch (Exception e) {

JOptionPane.showMessageDialog(null, "data gagal dipanggil" + e);

public void tabelSiswa(){

Object[] Baris = {"NISN", "Nama", "Kelas", "Status", "Tanggal Lahir", "Jenis Kelamin",
"Alamat", "No Telp", ""};

model = new DefaultTableModel(null, Baris);

try{

Statement sc = cn.createStatement();

String sql = "SELECT * FROM siswa where nisn like '%" + txCari1.getText() + "%' or
nama like '%" + txCari1.getText() + "%' order by nisn asc" ;

ResultSet r = sc.executeQuery(sql);

118
while(r.next()){

119
Object[] o = new

Object[8]; o [0] =

r.getString("nisn");

o [1] = r.getString("nama");

o [2] = r.getString("kelas");

o [3] = r.getString("status");

o [4] = r.getString("tgl_lahir");

o [5] = r.getString("jenis_kelamin");

o [6] = r.getString("alamat");

o [7] = r.getString("notelp");

model.addRow(o);

tsiswa.setModel(model);

tsiswa.removeColumn(tsiswa.getColumnModel().getColumn(8));

}catch(SQLException e){

System.out.println("terjadi kesalahan");

public void clear(){

autonumber();

txnisn.setText("");

txnama.setText("");

txkelas.setText("");

txbulan.setText("")

120
;

121
txket.setText("");

txharga.setText("");

loadData();

private void autonumber() {

try {

Statement s = cn.createStatement();

String sql = "SELECT * FROM spp ORDER BY id_spp

DESC"; ResultSet rs = s.executeQuery(sql);

if(rs.next()) {

String noStok =

rs.getString("id_spp").substring(3); String ID = ""

+ (Integer.parseInt(noStok) + 1); String Nol = "";

if(ID.length() == 1) { Nol = "00"; }

else if(ID.length() == 2) { Nol = "0"; }

else if(ID.length() == 3) { Nol = ""; }

txkodespp.setText("SPP" + Nol + ID);

} else {

txkodespp.setText("SPP001");

rs.close();

122
s.close();

} catch (Exception e) {

System.out.println("autonumber error");

/**

* Creates new form spp

*/

public spp() {

initComponents();

loadData();

autonumber();

txkodespp.setEnabled(false);

txnisn.setEnabled(false);

txnama.setEnabled(false);

txkelas.setEnabled(false);

// txstatus.setEnabled(false);

txharga.setEnabled(false);

private void tsiswaMouseClicked(java.awt.event.MouseEvent evt) {

int baris = tsiswa.getSelectedRow();

txnisn.setText(tsiswa.getModel().getValueAt(baris,

0).toString());

txnama.setText(tsiswa.getModel().getValueAt(baris, 1).toString());

txkelas.setText(tsiswa.getModel().getValueAt(baris, 2).toString());

123
cbstatus.setSelectedItem(tsiswa.getModel().getValueAt(baris, 3).toString());

txkodespp.requestFocus();

jDialog1.setVisible(false);

private void txCari1KeyReleased(java.awt.event.KeyEvent evt) {

tabelSiswa();

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)

{ tabelSiswa();

jDialog1.setVisible(true);

txCari1.setText(null);

jDialog1.setBounds(300, 300, 700,

350); txCari1.requestFocus();

private void btntambahActionPerformed(java.awt.event.ActionEvent evt) {

String sql = "insert into spp values (?,?,?,?,?,?)";

try {

PreparedStatement stat = cn.prepareStatement(sql);

stat.setString(1, txkodespp.getText());

stat.setString(2, txnisn.getText());

stat.setString(3, txbulan.getText());

124
stat.setString(4, tanggal1);

stat.setString(5, txket.getText());

stat.setString(6, txharga.getText());

stat.executeUpdate();

JOptionPane.showMessageDialog(null, "data berhasil disimpan");

} catch (SQLException e) {

JOptionPane.showMessageDialog(null, "data gagal disimpan" + e);

clear();

private void btneditActionPerformed(java.awt.event.ActionEvent evt) {

try {

String sql = "update spp set nisn=?, bulan=?, tgl_bayarspp=?, ket=?, total=? where id_spp
='" + txkodespp.getText() + "' ";

PreparedStatement stat = cn.prepareStatement(sql);

stat.setString(1, txnisn.getText());

stat.setString(2, txbulan.getText());

stat.setString(3, tanggal1);

stat.setString(4, txket.getText());

stat.setString(5, txharga.getText());

stat.executeUpdate();

JOptionPane.showMessageDialog(null, "data berhasil diubah");

} catch (SQLException e) {

JOptionPane.showMessageDialog(null, "data gagal diubah" +

e);

}
125
clear();

private void btnhapusActionPerformed(java.awt.event.ActionEvent evt) {

int ok = JOptionPane.showConfirmDialog(null, "Yakin hapus data?",


"konfirmasi", JOptionPane.YES_NO_OPTION);

if (ok == 0) {

String sql = "delete from spp where id_spp ='" + txkodespp.getText() + "'";

try {

PreparedStatement stat = cn.prepareStatement(sql);

stat.executeUpdate();

JOptionPane.showMessageDialog(null, "data berhasil dihapus");

} catch (SQLException e) {

JOptionPane.showMessageDialog(null, "data gagal dihapus" + e);

clear();

private void btnbatalActionPerformed(java.awt.event.ActionEvent evt) {

clear();

private void txdatePropertyChange(java.beans.PropertyChangeEvent evt) {

if (txdate.getDate()!=null){

SimpleDateFormat Format=new SimpleDateFormat("yyyy-MM-dd");

126
tanggal1=Format.format(txdate.getDate());

private void txcariKeyReleased(java.awt.event.KeyEvent evt) {

loadData();

private void tblsppMouseClicked(java.awt.event.MouseEvent evt) {

btntambah.setEnabled(false);

int baris = tblspp.getSelectedRow();

txkodespp.setText(tblspp.getModel().getValueAt(baris, 0).toString());

txnisn.setText(tblspp.getModel().getValueAt(baris, 1).toString());

txnama.setText(tblspp.getModel().getValueAt(baris, 2).toString());

txkelas.setText(tblspp.getModel().getValueAt(baris, 3).toString());

cbstatus.setSelectedItem(tblspp.getModel().getValueAt(baris, 4).toString());

txbulan.setText(tblspp.getModel().getValueAt(baris, 5).toString());

try {

DefaultTableModel tug = (DefaultTableModel)tblspp.getModel();

Date date = new SimpleDateFormat("yyyy-MM-dd").parse((String) tug.getValueAt(baris,


6));

txdate.setDate(date);

} catch (ParseException e) {

java.util.logging.Logger.getLogger(siswa.class.getName()).log(Level.SEVERE, null, e);

txket.setText(tblspp.getModel().getValueAt(baris, 7).toString());

127
txharga.setText(tblspp.getModel().getValueAt(baris, 8).toString());

private void cbstatusActionPerformed(java.awt.event.ActionEvent evt) {

String jum = (String) cbstatus.getSelectedItem();

if (jum == "Pesantren")

{ tot = 1000000;

} else if (jum == "Non-Pesantren")

{ tot = 300000;

} else {

JOptionPane.showMessageDialog(null, "Harga Tidak Diketahui");

txharga.setText(String.valueOf(tot));

private void txbulanKeyReleased(java.awt.event.KeyEvent evt) {

if (evt.getKeyCode() == 10) {

int harga = Integer.parseInt(txharga.getText());

int jumlah = Integer.parseInt(txbulan.getText());

if (txbulan.getText().equals("")) {

JOptionPane.showMessageDialog(this, "Jumlah Bayar TIdak Cukup");

} else {

tot = harga * jumlah;

128
txharga.setText(Integer.toString(tot));

private void jMenu1MouseClicked(java.awt.event.MouseEvent evt) {

siswa siswa = new siswa();

siswa.show();

dispose();

private void jMenu2MouseClicked(java.awt.event.MouseEvent evt) {

login log = new login();

log.show();

this.dispose();

private void homeMouseClicked(java.awt.event.MouseEvent evt) {

main home = new main();

home.show();

dispose();

private void sppMouseClicked(java.awt.event.MouseEvent evt) {

spp spp = new spp();

129
spp.show();

this.dispose();

private void ujianMouseClicked(java.awt.event.MouseEvent evt) {

ujian ujian = new ujian();

ujian.show();

this.dispose();

private void fasilitasMouseClicked(java.awt.event.MouseEvent evt) {

fasilitas fasilitas = new fasilitas();

fasilitas.show();

this.dispose();

private void laporanMouseClicked(java.awt.event.MouseEvent evt)

{ laporan laporan = new laporan();

laporan.show();

this.dispose();

private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {

try {

String path = "./src/laporan/fakturspp.jasper"; // letakpenyimpanan report

130
HashMap parameter = new HashMap();

parameter.put("satu", txkodespp.getText());

String setImageRelativeDirectory =Paths.get("").toAbsolutePath().toString();

parameter.put("ImgDir",setImageRelativeDirectory);

JasperPrint print = JasperFillManager.fillReport(path, parameter, cn);

JasperViewer.viewReport(print, false);

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "DokumenTidak Ada " + ex);

/**

* @param args the command line arguments

*/

public static void main(String args[]) {

/* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

131
}

} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(spp.class.getName()).log(java.util.logging.Level.SEVERE, null,
ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(spp.class.getName()).log(java.util.logging.Level.SEVERE, null,
ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(spp.class.getName()).log(java.util.logging.Level.SEVERE, null,
ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(spp.class.getName()).log(java.util.logging.Level.SEVERE, null,
ex);

//</editor-fold>

/* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new spp().setVisible(true);

});

132
// Variables declaration - do not modify

private javax.swing.JButton btnbatal;

private javax.swing.JButton btnedit;

private javax.swing.JButton btnhapus;

private javax.swing.JButton btntambah;

private javax.swing.JComboBox<String> cbstatus;

private javax.swing.JPanel fasilitas;

private javax.swing.JPanel home;

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton6;

private javax.swing.JDialog jDialog1;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel11;

private javax.swing.JLabel jLabel12;

private javax.swing.JLabel jLabel13;

private javax.swing.JLabel jLabel14;

private javax.swing.JLabel jLabel15;

private javax.swing.JLabel jLabel16;

private javax.swing.JLabel jLabel17;

private javax.swing.JLabel jLabel18;

private javax.swing.JLabel jLabel19;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel20;

private javax.swing.JLabel jLabel21;

133
private javax.swing.JLabel jLabel22;

private javax.swing.JLabel jLabel23;

private javax.swing.JLabel jLabel24;

private javax.swing.JLabel jLabel25;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

private javax.swing.JLabel jLabel5;

private javax.swing.JLabel jLabel6;

private javax.swing.JLabel jLabel8;

private javax.swing.JLabel jLabel9;

private javax.swing.JMenu jMenu1;

private javax.swing.JMenu jMenu2;

private javax.swing.JMenuBar

jMenuBar1; private javax.swing.JPanel

jPanel1;

private javax.swing.JPanel

jPanel2; private

javax.swing.JPanel jPanel3;

private javax.swing.JPanel

jPanel4;

private javax.swing.JScrollPane

jScrollPane1; private

javax.swing.JScrollPane jScrollPane2;

private javax.swing.JScrollPane

jScrollPane3; private javax.swing.JPanel

laporan;

134
private javax.swing.JPanel spp;

private javax.swing.JTable tblspp;

private javax.swing.JTable tsiswa;

private javax.swing.JTextField txCari1;

135
private javax.swing.JTextField txbulan;

private javax.swing.JTextField txcari;

private com.toedter.calendar.JDateChooser txdate;

private javax.swing.JTextField txharga;

private javax.swing.JTextField txkelas;

private javax.swing.JTextArea txket;

private javax.swing.JTextField txkodespp;

private javax.swing.JTextField txnama;

private javax.swing.JTextField txnisn;

private javax.swing.JPanel ujian;

// End of variables declaration

G. ujian.java
package gui;

import java.nio.file.Paths;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.HashMap;

136
import java.util.logging.Level;

import javax.swing.JOptionPane;

import javax.swing.table.DefaultTableModel;

import net.sf.jasperreports.engine.JasperFillManager;

import net.sf.jasperreports.engine.JasperPrint;

import net.sf.jasperreports.view.JasperViewer;

public class ujian extends javax.swing.JFrame

public String tanggal1;

private Connection cn = new koneksi().getKoneksi();

public int tot;

private DefaultTableModel model;

private void loadData() {

Object[] Baris = {"Kode Ujian","NISN","Nama Siswa", "Kelas", "Ujian", "Tanggal


Bayar", "Keterangan", "Harga"};

model = new DefaultTableModel(null,

Baris); try {

String sql = "SELECT ujian.*, siswa.nisn, siswa.nama, siswa.kelas FROM ujian INNER
JOIN siswa ON ujian.nisn=siswa.nisn where ujian.id_ujian like '%" + txcari.getText() + "%' or
siswa.nisn like '%" + txcari.getText() + "%' or siswa.nama like '%" + txcari.getText() + "%' order
by ujian.id_ujian ASC" ;

// String sql = "SELECT * FROM ujian INNER JOIN siswa ON ujian.nisn=siswa.nisn


where ujian.id_ujian like '%" + txcari.getText() + "%' or siswa.nama like '%" + txcari.getText() +
"%' order by ujian.id_ujian asc" ;

Statement stat = cn.createStatement();

ResultSet hasil =

stat.executeQuery(sql); while
137
(hasil.next()) {

138
model.addRow(new Object[]{

hasil.getString(1),

hasil.getString(7),

hasil.getString(8),

hasil.getString(9),

hasil.getString(3),

hasil.getString(4),

hasil.getString(5),

hasil.getString(6)

});

tblUjian.setModel(model);

} catch (Exception e) {

JOptionPane.showMessageDialog(null, "data gagal dipanggil" + e);

public void tabelSiswa(){

Object[] Baris = {"NISN", "Nama", "Kelas", "Status", "Tanggal Lahir", "Jenis


Kelamin", "Alamat", "No Telp", ""};

model = new DefaultTableModel(null, Baris);

try{

Statement sc = cn.createStatement();

139
String sql = "SELECT * FROM siswa where nisn like '%" + txCari1.getText() + "%'
or nama like '%" + txCari1.getText() + "%' order by nisn asc" ;

ResultSet r = sc.executeQuery(sql);

while(r.next()){

Object[] o = new

Object[8]; o [0] =

r.getString("nisn");

o [1] = r.getString("nama");

o [2] = r.getString("kelas");

o [3] = r.getString("status");

o [4] = r.getString("tgl_lahir");

o [5] = r.getString("jenis_kelamin");

o [6] = r.getString("alamat");

o [7] = r.getString("notelp");

model.addRow(o);

tsiswa.setModel(model);

tsiswa.removeColumn(tsiswa.getColumnModel().getColumn(8));

}catch(SQLException e){

System.out.println("terjadi kesalahan");

public void clear(){

autonumber();
140
txnisn.setText("");

txnama.setText("");

txkelas.setText("");

cbujian.setSelectedItem("");

txket.setText("");

txharga.setText("");

loadData();

private void autonumber() {

try {

Statement s = cn.createStatement();

String sql = "SELECT * FROM ujian ORDER BY id_ujian DESC";

ResultSet rs = s.executeQuery(sql);

if(rs.next()) {

String noStok =

rs.getString("id_ujian").substring(2); String ID = ""

+ (Integer.parseInt(noStok) + 1); String Nol = "";

if(ID.length() == 1) { Nol = "00"; }

else if(ID.length() == 2) { Nol = "0"; }

else if(ID.length() == 3) { Nol = ""; }

txkodeujian.setText("UJ" + Nol + ID);

141
} else {

txkodeujian.setText("UJ001");

rs.close();

s.close();

} catch (Exception e) {

System.out.println("autonumber error");

public ujian() {

initComponents();

loadData();

autonumber();

txkodeujian.setEnabled(false);

txnisn.setEnabled(false);

txnama.setEnabled(false);

txkelas.setEnabled(false);

txharga.setEnabled(false);

private void tsiswaMouseClicked(java.awt.event.MouseEvent evt) {

int baris = tsiswa.getSelectedRow();

txnisn.setText(tsiswa.getModel().getValueAt(baris, 0).toString());

txnama.setText(tsiswa.getModel().getValueAt(baris, 1).toString());

txkelas.setText(tsiswa.getModel().getValueAt(baris, 2).toString());

142
txkodeujian.requestFocus();

jDialog1.setVisible(false);

private void txCari1KeyReleased(java.awt.event.KeyEvent evt) {

tabelSiswa();

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)

{ tabelSiswa();

jDialog1.setVisible(true);

txCari1.setText(null);

jDialog1.setBounds(300, 300, 700,

350); txCari1.requestFocus();

private void cbujianActionPerformed(java.awt.event.ActionEvent evt) {

String jum = (String) cbujian.getSelectedItem();

if (jum == "PTS - GANJIL")

{ tot = 130000;

} else if (jum == "PTS - GENAP")

{ tot = 130000;

} else if (jum == "PAS - GANJIL") {

tot = 150000;

143
} else if (jum == "PAS - GENAP")

{ tot = 150000;

}else {

JOptionPane.showMessageDialog(null, "Harga Tidak Diketahui");

txharga.setText(String.valueOf(tot));

private void btnbatalActionPerformed(java.awt.event.ActionEvent evt) {

clear();

private void btntambahActionPerformed(java.awt.event.ActionEvent evt) {

String sql = "insert into ujian values (?,?,?,?,?,?)";

try {

PreparedStatement stat = cn.prepareStatement(sql);

stat.setString(1, txkodeujian.getText());

stat.setString(2, txnisn.getText());

stat.setString(3, cbujian.getSelectedItem().toString());

stat.setString(4, tanggal1);

stat.setString(5, txket.getText());

stat.setString(6, txharga.getText());

stat.executeUpdate();

JOptionPane.showMessageDialog(null, "data berhasil disimpan");

} catch (SQLException e) {

144
JOptionPane.showMessageDialog(null, "data gagal disimpan" + e);

clear();

private void txdatePropertyChange(java.beans.PropertyChangeEvent evt) {

if (txdate.getDate()!=null){

SimpleDateFormat Format=new SimpleDateFormat("yyyy-MM-dd");

tanggal1=Format.format(txdate.getDate());

private void btneditActionPerformed(java.awt.event.ActionEvent evt) {

try {

String sql = "update ujian set nisn=?, ujian=?, tgl_bayarujian=?, ket=?, harga=? where
id_ujian ='" + txkodeujian.getText() + "' ";

PreparedStatement stat = cn.prepareStatement(sql);

stat.setString(1, txnisn.getText());

stat.setString(2, cbujian.getSelectedItem().toString());

stat.setString(3, tanggal1);

stat.setString(4, txket.getText());

stat.setString(5, txharga.getText());

stat.executeUpdate();

JOptionPane.showMessageDialog(null, "data berhasil diubah");

} catch (SQLException e) {

JOptionPane.showMessageDialog(null, "data gagal diubah" +

e);
145
}

clear();

private void btnhapusActionPerformed(java.awt.event.ActionEvent evt) {

int ok = JOptionPane.showConfirmDialog(null, "Yakin hapus data?",


"konfirmasi", JOptionPane.YES_NO_OPTION);

if (ok == 0) {

String sql = "delete from ujian where id_ujian ='" + txkodeujian.getText() + "'";

try {

PreparedStatement stat = cn.prepareStatement(sql);

stat.executeUpdate();

JOptionPane.showMessageDialog(null, "data berhasil dihapus");

} catch (SQLException e) {

JOptionPane.showMessageDialog(null, "data gagal dihapus" + e);

clear();

private void tblUjianMouseClicked(java.awt.event.MouseEvent evt) {

btntambah.setEnabled(false);

int baris = tblUjian.getSelectedRow();

txkodeujian.setText(tblUjian.getModel().getValueAt(baris, 0).toString());

txnisn.setText(tblUjian.getModel().getValueAt(baris, 1).toString());

txnama.setText(tblUjian.getModel().getValueAt(baris, 2).toString());

146
txkelas.setText(tblUjian.getModel().getValueAt(baris, 3).toString());

cbujian.setSelectedItem(tblUjian.getModel().getValueAt(baris, 4).toString());

try {

DefaultTableModel tug = (DefaultTableModel)tblUjian.getModel();

Date date = new SimpleDateFormat("yyyy-MM-dd").parse((String) tug.getValueAt(baris,


5));

txdate.setDate(date);

} catch (ParseException e) {

java.util.logging.Logger.getLogger(siswa.class.getName()).log(Level.SEVERE, null, e);

txket.setText(tblUjian.getModel().getValueAt(baris, 6).toString());

txharga.setText(tblUjian.getModel().getValueAt(baris, 7).toString());

private void txcariKeyReleased(java.awt.event.KeyEvent evt) {

loadData();

private void jMenu2MouseClicked(java.awt.event.MouseEvent evt) {

login log = new login();

log.show();

this.dispose();

private void jMenu1MouseClicked(java.awt.event.MouseEvent evt) {

siswa siswa = new siswa();

147
siswa.show();

dispose();

private void homeMouseClicked(java.awt.event.MouseEvent evt) {

main home = new main();

home.show();

dispose();

private void sppMouseClicked(java.awt.event.MouseEvent evt) {

spp spp = new spp();

spp.show();

this.dispose();

private void ujianMouseClicked(java.awt.event.MouseEvent evt) {

ujian ujian = new ujian();

ujian.show();

this.dispose();

private void fasilitasMouseClicked(java.awt.event.MouseEvent evt) {

fasilitas fasilitas = new fasilitas();

fasilitas.show();

148
this.dispose();

private void laporanMouseClicked(java.awt.event.MouseEvent evt)

{ laporan laporan = new laporan();

laporan.show();

this.dispose();

private void jButton6ActionPerformed(java.awt.event.ActionEvent evt)

{ try {

String path = "./src/laporan/fakturujian.jasper"; // letakpenyimpanan report

HashMap parameter = new HashMap();

parameter.put("dua", txkodeujian.getText());

String setImageRelativeDirectory =Paths.get("").toAbsolutePath().toString();

parameter.put("ImgDir",setImageRelativeDirectory);

JasperPrint print = JasperFillManager.fillReport(path, parameter, cn);

JasperViewer.viewReport(print, false);

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "DokumenTidak Ada " + ex);

/**

* @param args the command line arguments

149
*/

public static void main(String args[]) {

/* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(ujian.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(ujian.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(ujian.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

150
java.util.logging.Logger.getLogger(ujian.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

//</editor-fold>

/* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new ujian().setVisible(true);

});

// Variables declaration - do not modify

private javax.swing.JButton btnbatal;

private javax.swing.JButton btnedit;

private javax.swing.JButton btnhapus;

private javax.swing.JButton btntambah;

private javax.swing.JComboBox<String> cbujian;

private javax.swing.JPanel fasilitas;

private javax.swing.JPanel home;

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton6;

private javax.swing.JDialog jDialog1;

private javax.swing.JLabel jLabel1;

151
private javax.swing.JLabel jLabel11;

private javax.swing.JLabel jLabel12;

private javax.swing.JLabel jLabel13;

private javax.swing.JLabel jLabel14;

private javax.swing.JLabel jLabel15;

private javax.swing.JLabel jLabel16;

private javax.swing.JLabel jLabel17;

private javax.swing.JLabel jLabel18;

private javax.swing.JLabel jLabel19;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel20;

private javax.swing.JLabel jLabel21;

private javax.swing.JLabel jLabel22;

private javax.swing.JLabel jLabel23;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

private javax.swing.JLabel jLabel5;

private javax.swing.JLabel jLabel6;

private javax.swing.JLabel jLabel8;

private javax.swing.JLabel jLabel9;

private javax.swing.JMenu jMenu1;

private javax.swing.JMenu jMenu2;

private javax.swing.JMenuBar

jMenuBar1; private javax.swing.JPanel

jPanel1;

private javax.swing.JPanel jPanel2;

152
private javax.swing.JPanel

jPanel3; private

javax.swing.JPanel jPanel4;

private javax.swing.JScrollPane

jScrollPane1; private

javax.swing.JScrollPane jScrollPane2;

private javax.swing.JScrollPane

jScrollPane3; private javax.swing.JPanel

laporan;

private javax.swing.JPanel spp;

private javax.swing.JTable tblUjian;

private javax.swing.JTable tsiswa;

private javax.swing.JTextField

txCari1; private

javax.swing.JTextField txcari;

private com.toedter.calendar.JDateChooser txdate;

private javax.swing.JTextField txharga;

private javax.swing.JTextField txkelas;

private javax.swing.JTextArea txket;

private javax.swing.JTextField

txkodeujian; private

javax.swing.JTextField txnama; private

javax.swing.JTextField txnisn; private

javax.swing.JPanel ujian;

// End of variables declaration

153
H. fasilitas.java
package gui;

import java.nio.file.Paths;

154
import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.HashMap;

import java.util.logging.Level;

import javax.swing.JOptionPane;

import javax.swing.table.DefaultTableModel;

import net.sf.jasperreports.engine.JasperFillManager;

import net.sf.jasperreports.engine.JasperPrint;

import net.sf.jasperreports.view.JasperViewer;

/**

* @author shadow

*/

public class fasilitas extends javax.swing.JFrame {

public String tanggal1;

private Connection cn = new koneksi().getKoneksi();

koneksi conn = new koneksi();

private DefaultTableModel model;

155
/**

* Creates new form fasilitas

*/

public fasilitas() {

initComponents();

loadData();

autonumber();

txkodefasilitas.setEnabled(false);

txnisn.setEnabled(false);

txnama.setEnabled(false);

txkelas.setEnabled(false);

public void cetak() {

try {

String path = "./src/laporan/fakturfasilitas.jasper"; // letakpenyimpanan report

HashMap parameter = new HashMap();

parameter.put("id_fasilitas", txkodefasilitas.getText());

String setImageRelativeDirectory =Paths.get("").toAbsolutePath().toString();

parameter.put("ImgDir",setImageRelativeDirectory);

JasperPrint print = JasperFillManager.fillReport(path, parameter, cn);

JasperViewer.viewReport(print, false);

} catch (Exception ex) {

156
JOptionPane.showMessageDialog(null, "DokumenTidak Ada " + ex);

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

tabelSiswa();

jDialog1.setVisible(true);

txCari1.setText(null);

jDialog1.setBounds(300, 300, 700,

350); txCari1.requestFocus();

private void btntambahActionPerformed(java.awt.event.ActionEvent evt) {

String sql = "insert into fasilitas values (?,?,?,?,?,?)";

try {

PreparedStatement stat = cn.prepareStatement(sql);

stat.setString(1, txkodefasilitas.getText());

stat.setString(2, txnisn.getText());

stat.setString(3, txjenis.getText());

stat.setString(4, tanggal1);

stat.setString(5, txket.getText());

stat.setString(6, txharga.getText());

stat.executeUpdate();

loadData();

JOptionPane.showMessageDialog(null, "data berhasil disimpan");

157
} catch (SQLException e) {

JOptionPane.showMessageDialog(null, "data gagal disimpan" + e);

clear();

private void txdatePropertyChange(java.beans.PropertyChangeEvent evt) {

if (txdate.getDate()!=null){

SimpleDateFormat Format=new SimpleDateFormat("yyyy-MM-dd");

tanggal1=Format.format(txdate.getDate());

private void tblFasMouseClicked(java.awt.event.MouseEvent evt)

{ btntambah.setEnabled(false);

int baris = tblFas.getSelectedRow();

txkodefasilitas.setText(tblFas.getModel().getValueAt(baris, 0).toString());

txnisn.setText(tblFas.getModel().getValueAt(baris, 1).toString());

txnama.setText(tblFas.getModel().getValueAt(baris, 2).toString());

txkelas.setText(tblFas.getModel().getValueAt(baris, 3).toString());

txjenis.setText(tblFas.getModel().getValueAt(baris, 4).toString());

try {

DefaultTableModel tug = (DefaultTableModel)tblFas.getModel();

Date date = new SimpleDateFormat("yyyy-MM-dd").parse((String) tug.getValueAt(baris,


5));

txdate.setDate(date);

158
} catch (ParseException e) {

java.util.logging.Logger.getLogger(siswa.class.getName()).log(Level.SEVERE, null, e);

txket.setText(tblFas.getModel().getValueAt(baris, 6).toString());

txharga.setText(tblFas.getModel().getValueAt(baris, 7).toString());

private void btnubahActionPerformed(java.awt.event.ActionEvent evt) {

try {

String sql = "update fasilitas set nisn=?, jenis_fasilitas=?, tgl_bayarfasilitas=?,


ket=?, jumlah=? where id_fasilitas ='" + txkodefasilitas.getText() + "' ";

PreparedStatement stat = cn.prepareStatement(sql);

stat.setString(1, txnisn.getText());

stat.setString(2, txjenis.getText());

stat.setString(3, tanggal1);

stat.setString(4, txket.getText());

stat.setString(5, txharga.getText());

stat.executeUpdate();

loadData();

JOptionPane.showMessageDialog(null, "data berhasil diubah");

} catch (SQLException e) {

JOptionPane.showMessageDialog(null, "data gagal diubah" +

e);

clear();

}
159
private void txcariKeyReleased(java.awt.event.KeyEvent evt) {

loadData();

private void btnhapusActionPerformed(java.awt.event.ActionEvent evt) {

int ok = JOptionPane.showConfirmDialog(null, "Yakin hapus data?", "konfirmasi",


JOptionPane.YES_NO_OPTION);

if (ok == 0) {

String sql = "delete from fasilitas where id_fasilitas ='" + txkodefasilitas.getText() +

"'"; try {

PreparedStatement stat = cn.prepareStatement(sql);

stat.executeUpdate();

JOptionPane.showMessageDialog(null, "data berhasil dihapus");

} catch (SQLException e) {

JOptionPane.showMessageDialog(null, "data gagal dihapus" + e);

clear();

loadData();

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt)

{ clear();

160
private void tsiswaMouseClicked(java.awt.event.MouseEvent evt) {

int baris = tsiswa.getSelectedRow();

txnisn.setText(tsiswa.getModel().getValueAt(baris, 0).toString());

txnama.setText(tsiswa.getModel().getValueAt(baris, 1).toString());

txkelas.setText(tsiswa.getModel().getValueAt(baris, 2).toString());

txkodefasilitas.requestFocus();

jDialog1.setVisible(false);

private void txCari1KeyReleased(java.awt.event.KeyEvent evt) {

tabelSiswa();

private void homeMouseClicked(java.awt.event.MouseEvent evt) {

main home = new main();

home.show();

dispose();

private void sppMouseClicked(java.awt.event.MouseEvent evt) {

spp spp = new spp();

spp.show();

this.dispose();

161
private void ujianMouseClicked(java.awt.event.MouseEvent evt) {

ujian ujian = new ujian();

ujian.show();

this.dispose();

private void fasilitasMouseClicked(java.awt.event.MouseEvent evt) {

fasilitas fasilitas = new fasilitas();

fasilitas.show();

this.dispose();

private void laporanMouseClicked(java.awt.event.MouseEvent evt) {

laporan laporan = new laporan();

laporan.show();

this.dispose();

private void jMenu3MouseClicked(java.awt.event.MouseEvent evt) {

login log = new login();

log.show();

dispose();

private void jMenu1MouseClicked(java.awt.event.MouseEvent evt) {

162
siswa siswa = new

siswa(); siswa.show();

dispose();

private void jButton6ActionPerformed(java.awt.event.ActionEvent evt)

{ cetak();

private void loadData() {

Object[] Baris = {"Kode Fasilitas","NISN","Nama Siswa", "Kelas", "Jenis Fasilitas",


"Tanggal Bayar", "Keterangan", "Harga"};

model = new DefaultTableModel(null,

Baris); try {

String sql = "SELECT fasilitas.*, siswa.nisn, siswa.nama, siswa.kelas FROM fasilitas


INNER JOIN siswa ON fasilitas.nisn=siswa.nisn where fasilitas.id_fasilitas like '%" +
txcari.getText() + "%' or siswa.nisn like '%" + txcari.getText() + "%' or siswa.nama like '%" +
txcari.getText() + "%' order by fasilitas.id_fasilitas ASC" ;

// String sql = "SELECT * FROM fasilitas INNER JOIN siswa ON


fasilitas.nisn=siswa.nisn where fasilitas.id_fasilitas like '%" + txcari.getText() + "%' or
siswa.nama like '%" + txcari.getText() + "%' order by fasilitas.id_fasilitas asc" ;

Statement stat = cn.createStatement();

ResultSet hasil =

stat.executeQuery(sql); while

(hasil.next()) {

model.addRow(new Object[]{

hasil.getString(1),

hasil.getString(7),

hasil.getString(8),
163
hasil.getString(9)

hasil.getString(3)

hasil.getString(4)

hasil.getString(5)

hasil.getString(6)

});

tblFas.setModel(model);

// tblFas.removeColumn(tblFas.getColumnModel().getColumn(1));

} catch (Exception e) {

JOptionPane.showMessageDialog(null, "data gagal dipanggil" + e);

public void tabelSiswa(){

Object[] Baris = {"NISN", "Nama", "Kelas", "Status", "Tanggal Lahir", "Jenis Kelamin",
"Alamat", "No Telp", ""};

model = new DefaultTableModel(null, Baris);

try{

Statement sc = cn.createStatement();

164
String sql = "SELECT * FROM siswa where nisn like '%" + txCari1.getText() + "%' or
nama like '%" + txCari1.getText() + "%' order by nisn asc" ;

ResultSet r = sc.executeQuery(sql);

165
while(r.next()){

Object[] o = new

Object[8]; o [0] =

r.getString("nisn");

o [1] = r.getString("nama");

o [2] = r.getString("kelas");

o [3] = r.getString("status");

o [4] = r.getString("tgl_lahir");

o [5] = r.getString("jenis_kelamin");

o [6] = r.getString("alamat");

o [7] = r.getString("notelp");

model.addRow(o);

tsiswa.setModel(model);

tsiswa.removeColumn(tsiswa.getColumnModel().getColumn(8));

}catch(SQLException e){

System.out.println("terjadi kesalahan");

public void clear(){

autonumber();

txnisn.setText("");

txnama.setText("");

166
txkelas.setText("");

txjenis.setText("");

txket.setText("");

txharga.setText("");

private void autonumber() {

try {

Connection c = koneksi.getKoneksi();

Statement s = c.createStatement();

String sql = "SELECT * FROM fasilitas ORDER BY id_fasilitas DESC";

ResultSet rs = s.executeQuery(sql);

if(rs.next()) {

String noStok =

rs.getString("id_fasilitas").substring(2); String ID = ""

+ (Integer.parseInt(noStok) + 1);

String Nol = "";

if(ID.length() == 1) { Nol = "00"; }

else if(ID.length() == 2) { Nol = "0"; }

else if(ID.length() == 3) { Nol = ""; }

txkodefasilitas.setText("FS" + Nol + ID);

} else {

txkodefasilitas.setText("FS001");

167
}

rs.close();

s.close();

} catch (Exception e) {

System.out.println("autonumber error");

/**

* @param args the command line arguments

*/

public static void main(String args[]) {

/* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

} catch (ClassNotFoundException ex) {

168
java.util.logging.Logger.getLogger(fasilitas.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(fasilitas.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(fasilitas.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(fasilitas.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

//</editor-fold>

/* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new fasilitas().setVisible(true);

});

// Variables declaration - do not modify

private javax.swing.JButton btnhapus;

169
private javax.swing.JButton btntambah;

private javax.swing.JButton btnubah;

private javax.swing.JPanel fasilitas;

private javax.swing.JPanel home;

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton5;

private javax.swing.JButton jButton6;

private javax.swing.JDialog jDialog1;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel11;

private javax.swing.JLabel jLabel12;

private javax.swing.JLabel jLabel13;

private javax.swing.JLabel jLabel14;

private javax.swing.JLabel jLabel15;

private javax.swing.JLabel jLabel16;

private javax.swing.JLabel jLabel17;

private javax.swing.JLabel jLabel18;

private javax.swing.JLabel jLabel19;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel20;

private javax.swing.JLabel jLabel21;

private javax.swing.JLabel jLabel22;

private javax.swing.JLabel jLabel23;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

170
private javax.swing.JLabel jLabel5;

private javax.swing.JLabel jLabel6;

private javax.swing.JLabel jLabel8;

private javax.swing.JLabel jLabel9;

private javax.swing.JMenu jMenu1;

private javax.swing.JMenu jMenu3;

private javax.swing.JMenuBar

jMenuBar1; private javax.swing.JPanel

jPanel1;

private javax.swing.JPanel

jPanel2; private

javax.swing.JPanel jPanel3;

private javax.swing.JPanel

jPanel4;

private javax.swing.JScrollPane

jScrollPane1; private

javax.swing.JScrollPane jScrollPane2;

private javax.swing.JScrollPane

jScrollPane3; private javax.swing.JPanel

laporan;

private javax.swing.JPanel spp;

private javax.swing.JTable tblFas;

private javax.swing.JTable tsiswa;

private javax.swing.JTextField

txCari1; private

javax.swing.JTextField txcari;

171
private com.toedter.calendar.JDateChooser txdate;

private javax.swing.JTextField txharga;

private javax.swing.JTextField txjenis;

private javax.swing.JTextField

txkelas; private javax.swing.JTextArea

txket;

172
private javax.swing.JTextField

txkodefasilitas; private

javax.swing.JTextField txnama; private

javax.swing.JTextField txnisn;

private javax.swing.JPanel ujian;

// End of variables declaration

I. laporan.java
package gui;

import java.io.InputStream;

import java.nio.file.Paths;

import java.sql.Connection;

import java.util.HashMap;

import javax.swing.JOptionPane;

import net.sf.jasperreports.engine.JasperFillManager;

import net.sf.jasperreports.engine.JasperPrint;

import net.sf.jasperreports.view.JasperViewer;

public class laporan extends javax.swing.JFrame {

private Connection conn = new koneksi().getKoneksi();

/**

* Creates new form laporan

*/

public laporan() {

initComponents();

private void jMenu1MouseClicked(java.awt.event.MouseEvent evt) {

173
siswa siswa = new

siswa(); siswa.show();

dispose();

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt)

{ try {

String path = "/laporan/spp.jasper"; // letakpenyimpanan report

InputStream reportFile = null;

reportFile =

getClass().getResourceAsStream(path); HashMap

parameter = new HashMap();

String setImageRelativeDirectory =Paths.get("").toAbsolutePath().toString();

parameter.put("ImgDir",setImageRelativeDirectory);

JasperPrint print = JasperFillManager.fillReport(reportFile, parameter, conn);

JasperViewer.viewReport(print, false);

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "DokumenTidak Ada " + ex);

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt)

{ try {

String path = "/laporan/ujian.jasper"; // letakpenyimpanan report

InputStream reportFile = null;

reportFile = getClass().getResourceAsStream(path);

174
HashMap parameter = new HashMap();

String setImageRelativeDirectory =Paths.get("").toAbsolutePath().toString();

parameter.put("ImgDir",setImageRelativeDirectory);

JasperPrint print = JasperFillManager.fillReport(reportFile, parameter, conn);

JasperViewer.viewReport(print, false);

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "DokumenTidak Ada " + ex);

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt)

{ try {

String path = "/laporan/fasilitas.jasper"; // letakpenyimpanan report

InputStream reportFile = null;

reportFile =

getClass().getResourceAsStream(path); HashMap

parameter = new HashMap();

String setImageRelativeDirectory =Paths.get("").toAbsolutePath().toString();

parameter.put("ImgDir",setImageRelativeDirectory);

JasperPrint print = JasperFillManager.fillReport(reportFile, parameter, conn);

JasperViewer.viewReport(print, false);

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "DokumenTidak Ada " + ex);

175
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {

try {

String path = "/laporan/laporan_siswa.jasper"; // letakpenyimpanan report

InputStream reportFile = null;

reportFile =

getClass().getResourceAsStream(path); HashMap

parameter = new HashMap();

String setImageRelativeDirectory =Paths.get("").toAbsolutePath().toString();

parameter.put("ImgDir",setImageRelativeDirectory);

JasperPrint print = JasperFillManager.fillReport(reportFile, parameter, conn);

JasperViewer.viewReport(print, false);

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "DokumenTidak Ada " + ex);

private void jMenu2MouseClicked(java.awt.event.MouseEvent evt) {

login log = new login();

log.show();

dispose();

private void homeMouseClicked(java.awt.event.MouseEvent evt) {

main home = new main();

home.show();

dispose();

176
}

private void sppMouseClicked(java.awt.event.MouseEvent evt) {

spp spp = new spp();

spp.show();

this.dispose();

private void ujianMouseClicked(java.awt.event.MouseEvent evt) {

ujian ujian = new ujian();

ujian.show();

this.dispose();

private void fasilitasMouseClicked(java.awt.event.MouseEvent evt) {

fasilitas fasilitas = new fasilitas();

fasilitas.show();

this.dispose();

private void laporanMouseClicked(java.awt.event.MouseEvent evt)

{ laporan laporan = new laporan();

laporan.show();

this.dispose();

177
/**

* @param args the command line arguments

*/

public static void main(String args[]) {

/* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(laporan.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(laporan.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (IllegalAccessException ex) {

178
java.util.logging.Logger.getLogger(laporan.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(laporan.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

//</editor-fold>

/* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new laporan().setVisible(true);

});

// Variables declaration - do not modify

private javax.swing.JPanel fasilitas;

private javax.swing.JPanel home;

private javax.swing.JButton jButton2;

private javax.swing.JButton jButton3;

private javax.swing.JButton jButton4;

private javax.swing.JButton jButton5;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel11;

179
private javax.swing.JLabel jLabel12;

private javax.swing.JLabel jLabel15;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel4;

private javax.swing.JLabel jLabel5;

private javax.swing.JLabel jLabel6;

private javax.swing.JLabel jLabel8;

private javax.swing.JLabel jLabel9;

private javax.swing.JMenu jMenu1;

private javax.swing.JMenu jMenu2;

private javax.swing.JMenuBar

jMenuBar1; private javax.swing.JPanel

jPanel1;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JPanel laporan;

private javax.swing.JPanel spp;

private javax.swing.JPanel ujian;

// End of variables declaration

180

Anda mungkin juga menyukai