Anda di halaman 1dari 372

LAPORAN KERJA PRAKTEK

ANALISIS DAN PERANCANGAN APASI (APLIKASI


PEMBANTU SEKOLAH MI) UNTUK PENDATAAN GURU
DAN SISWA PADA MI AL – IKHLAS PASIR MUKTI

Laporan Kerja Praktek


Diajukan untuk melengkapi
Persyaratan mata kuliah
Analisa dan Perancangan Sistem Informasi

Disusun oleh :

1. VEISHA RISNA RIZQYKA (201943501702)


2. AGESSYA FEBY PRIYANDINI (201943501641)
3. AHMAD LUTHFI (201943501654)
4. IBNU SHABIL AJSHIFA (201943501672)
5. RISKA AMELIA (201943501700)
6. DEPAN (201943501703)
7. ARINDA CAHYANI AZIZAH (201943501731)

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

2022
KATA PENGANTAR

Puji syukur penulis panjatkan kepada Allah SWT yang telah memberikan
rahmat dan karunianya, sehingga penulis dapat menyelesaikan laporan kerja
praktek ini. Laporan dengan judul “Analisis dan Perancangan APASI (Aplikasi
Pembantu Sekolah MI) untuk Pendataan Guru dan Siswa pada MI Al – Ikhlas Pasir
Mukti” disusun untuk untuk melengkapi persyaratan mata kuliah Analisa dan
Perancangan Sistem Informasi, Program Studi Teknik Informatika Universitas
Indraprasta PGRI.

Dalam penyusunan laporan kerja praktek ini tentunya penulis mendapatkan


pengetahuan dan pengalaman dari beberapa pihak. Oleh karena itu, izinkanlah
penulis mengucapkan terima kasih kepada semua pihak yang telah memberikan
bantuan dan dorongan kepada penulis dalam menyelesaikan laporan kerja praktek
ini, terutama kepada :

1. Bapak Ridwan, S.T., M.Eng., selaku Dosen Analisa dan Perancangan


Sistem Informasi yang telah memberikan bimbingan untuk
menyelesaikan laporan kerja praktek ini.
2. Ibu Opitasari, M.Kom., selaku Dosen Pemrograman Visual yang telah
memberikan bimbingan untuk menyelesaikan program dan laporan
kerja praktek ini.
3. Ibu Yeti Susilawati, S.Pd.I., selaku Kepala Sekolah MI Al – Ikhlas Pasir
Mukti.
4. Bapak Prof. Dr. H. Sumaryoto selaku Rektor Universitas Indraprasta
PGRI.
5. Bapak Ir. H. Soepardi Harris, M.T., selaku Dekan Fakultas Teknik dan
Ilmu Komputer
6. Ibu Mei Lestari, M.Kom., selaku Ketua Program Studi Teknik
Informatika

i
7. Segenap Dosen Teknik Informatika Universitas Indraprasta PGRI, yang
telah memberikan ilmunya sehingga laporan kerja praktek ini dapat
selesai.

Penulis menyadari bahwa laporan kerja praktek ini masih jauh dari kata
sempurna. Oleh karena itu, kritik dan saran yang membangun selalu penulis
harapkan, demi penyusunan laporan yang lebih baik lagi kedepannya. Penulis
berharap, semoga laporan kerja praktek ini dapat bermanfaat untuk penulis sendiri,
dan para pembaca.

Jakarta, 11 Juni 2022

Penulis

ii
DAFTAR ISI

KATA PENGANTAR .......................................................................................... i

DAFTAR ISI ........................................................................................................ iii

DAFTAR GAMBAR .............................................................................................v

DAFTAR TABEL ............................................................................................ viii

DAFTAR SIMBOL ............................................................................................. ix

BAB I PENDAHULUAN

A. Latar Belakang ..........................................................................1


B. Masalah .....................................................................................2
C. Tujuan Penulisan .......................................................................2
D. Batasan Permasalahan ...............................................................3
E. Metodologi ................................................................................3
F. Sistematika Penulisan ................................................................4

BAB II ORGANISASI

A. Sejarah MI Al – Ikhlas Pasir Mukti ..........................................6


B. Struktur Organisasi MI Al – Ikhlas Pasir Mukti .......................8
C. Kegiatan MI Al – Ikhlas Pasir Mukti ......................................17

BAB III INFRASTRUKTUR

A. Spesifikasi Hardware ..............................................................20


B. Spesifikasi Software ................................................................30

iii
BAB IV PEMBAHASAN

A. Pembuatan Aplikasi .................................................................35


B. Proses Sistem Aplikasi ............................................................36
C. Aturan Pembuatan Aplikasi ....................................................36
D. Kebijakan Aplikasi ..................................................................37
E. Dekomposisi Fungsi ................................................................37
F. Hirarki Fungsi Sistem .............................................................38
G. Analisa Masukan (Input), Proses, dan Keluaran (Output) ......40
H. Diagram Aliran Data (DAD) Konteks, Nol, dan Rinci ...........46
I. Spesifikasi Proses ....................................................................57
J. Bagan Terstruktur ....................................................................60
K. Spesifikasi Modul ....................................................................68
L. Analisa Basis Data ..................................................................72
M. Rancangan Antar Muka ...........................................................77

BAB V PENUTUP

A. Kesimpulan .............................................................................88
B. Saran ........................................................................................89

DAFTAR PUSTAKA

LAMPIRAN

iv
DAFTAR GAMBAR

Gambar 2.1 Struktur Organisasi MI Al – Ikhlas Pasir Mukti .................................8

Gambar 4.1 Dekomposisi Fungsi ..........................................................................38

Gambar 4.2 Hierarki Fungsi Sistem Admin ..........................................................39

Gambar 4.3 Hierarki Fungsi Sistem Guru ............................................................39

Gambar 4.4 Diagram Konteks ...............................................................................46

Gambar 4.5 Diagram Nol ......................................................................................47

Gambar 4.6 Diagram Rinci Proses 1.0 ..................................................................48

Gambar 4.7 Diagram Rinci Proses 2.0 ..................................................................49

Gambar 4.8 Diagram Rinci Proses 3.0 ..................................................................50

Gambar 4.9 Diagram Rinci Proses 4.0 ..................................................................51

Gambar 4.10 Diagram Rinci Proses 5.0 ................................................................52

Gambar 4.11 Bagan Terstruktur Proses Pendaftaran Siswa ..................................60

Gambar 4.12 Bagan Terstruktur Proses Pendataan Siswa ....................................61

Gambar 4.13 Bagan Terstruktur Proses Pendataan Guru ......................................61

Gambar 4.14 Bagan Terstruktur Proses Absensi Siswa ........................................61

Gambar 4.15 Bagan terstruktur Proses Absensi Guru ..........................................62

Gambar 4.16 Bagan Terstruktur Proses Nilai .......................................................62

Gambar 4.17 Bagan Terstruktur Proses Ekstrakurikuler ......................................63

Gambar 4.18 Bagan Terstruktur Proses Rapor .....................................................63

Gambar 4.19 Bagan Terstruktur Laporan Pendaftaran Siswa ...............................64

v
Gambar 4.20 Bagan Terstruktur Laporan Pendataan Siswa .................................64

Gambar 4.21 Bagan Terstruktur Laporan Pendataan Guru ...................................65

Gambar 4.22 Bagan Terstruktur Laporan Absensi Siswa .....................................65

Gambar 4.23 Bagan Terstruktur Laporan Absensi Guru ......................................66

Gambar 4.24 Bagan Terstruktur Laporan Nilai ....................................................66

Gambar 4.25 Bagan Terstruktur Laporan Ekstrakurikuler ...................................67

Gambar 4.26 Bagan Terstruktur Laporan Rapor ...................................................67

Gambar 4.27 Entity Relationship Diagram (ERD) ...............................................72

Gambar 4.28 Rancangan Layer .............................................................................78

Gambar 4.29 Rancangan Form Masukan Login ...................................................79

Gambar 4.30 Rancangan Form Masukan Menu Utama ........................................79

Gambar 4.31 Rancangan Form Masukan Form Data Siswa .................................80

Gambar 4.32 Rancangan Form Masukan Form Pendaftaran ................................80

Gambar 4.33 Rancangan Form Masukan Form Data Guru ..................................81

Gambar 4.34 Rancangan Form Masukan Absen Kelas ........................................81

Gambar 4.35 Rancangan Form Masukan Absen Guru .........................................82

Gambar 4.36 Rancangan Form Masukan Form Nilai ...........................................82

Gambar 4.37 Rancangan Form Masukan Form Pencapaian .................................83

Gambar 4.38 Rancangan Form Masukan Form Ekstrakurikuler ..........................83

Gambar 4.39 Rancangan Form Keluaran Laporan Data Siswa ............................84

Gambar 4.40 Rancangan Form Keluaran Laporan Pendaftaran Siswa .................84

Gambar 4.41 Rancangan Form Keluaran Laporan Absen Guru ...........................85

vi
Gambar 4.42 Rancangan Form Keluaran Laporan Absen Siswa ..........................85

Gambar 4.43 Rancangan Form Keluaran Laporan Ekstrakurikuler ......................86

Gambar 4.44 Rancangan Form Keluaran Laporan Nilai ......................................86

Gambar 4.45 Rancangan Form Keluaran Laporan Data Guru ..............................87

Gambar 4.46 Rancangan Form Keluaran Laporan Pencapaian Per Siswa ...........87

vii
DAFTAR TABEL

Tabel 4.1 Tabel Data Siswa ..................................................................................73

Tabel 4.2 Tabel Data Guru ....................................................................................74

Tabel 4.3 Tabel Pendaftaran .................................................................................74

Tabel 4.4 Tabel Absensi Siswa .............................................................................75

Tabel 4.5 Tabel Absensi Guru ..............................................................................75

Tabel 4.6 Tabel Nilai .............................................................................................76

Tabel 4.7 Tabel Pencapaian ..................................................................................76

Tabel 4.8 Tabel Ekstrakurikuler ............................................................................77

viii
DAFTAR SIMBOL

A. Simbol ERD (Entity Relationship Diagram)

No Simbol Nama Keterangan


Jenis entitas yang dapat
berupa suatu elemen
lingkungan, sumber daya
1 Entitas atau transaksi yang field-
fieldnya dipergunakan
dalam aplikasi program.
Menunjukkan nama
Hubungan
2 relasi antar satu entitas
atau
denganentitas lainnya.
Relasi

Karakteristik dari sebuah


3 Atribut
entitas.

Menunjukkan hubungan
4 Garis
(keterkaitan) antar
Relasi
entitas.

Entitas yang

5 Entitas kemunculannya

Lemah tergantung dari entitas


lain yang lebih kuat.

ix
B. Simbol Diagram Aliran Data (DAD)

No Simbol Nama Keterangan


Suatu entitas eksternal
adalah objek diluar
sistem yang
1 Entitas
berkomunikasi
Luar
dengan sistem sebagai
sumber maupun
pemakai informasi.
Suatu proses dalam

2 Proses sistem yang mengolah


data masukkan
menjadi infomasi.

Tempat penyimpanan
Penyimpanan data yang perlu
3 Data disimpan untuk
digunakan oleh satu
proses atau
lebih.
Untuk menunjukkan
arah dari aliran data
4 Garis
pada suatu proses.
Alir

x
BAB I

PENDAHULUAN

A. Latar Belakang
Teknologi menjadi peranan penting dalam kehidupan saat ini, baik
itu dalam hal perdagangan, industri, hingga pendidikan. Perusahaan atau
instansi yang menggunakan teknologi juga lebih efektif dan efisien serta
mendapatkan hasil yang maksimal dalam proses bisnis nya dibandingkan
instansi yang masih melakukan kegiatan secara manual. Sehingga instansi
yang menggunakan teknologi informasi ini bisa berkembang dan maju.
Dengan adanya teknologi ini juga mempermudah dalam melakukan
hal apapun yang diinginkan. Seperti dalam pendidikan yang biasanya dalam
pengarsipan data secara manual dengan menggunakan buku besar yang
menyebabkan pembengkakan biaya pengeluaran dan tenaga, sekarang bisa
dipermudah dengan menggunakan sistem informasi berbasis komputer.
Selain itu menggunakan teknologi juga lebih banyak manfaat seperti
instansi dapat reduce costs, meminimalkan resiko kesalahan kerja, dan lain
sebagainya.
Sekolah MI Al – Ikhlas Pasir Mukti ini menjadi salah satu sekolah
yang masih kurang efektif dan efisien dalam hal pengarsipan data, baik itu
dalam hal perekapan absen, nilai, ekstrakurikuler, data siswa hingga data
guru. Padahal jumlah data yang direkap atau arsip setiap tahunnya bisa
digolongkan banyak dengan data siswa baru setiap tahun nya 25 hingga 30
siswa, lain hal nya dengan absen yang harus diinput setiap hari.
Oleh karena itulah kami berinisiatif untuk membuat sebuah sistem
informasi aplikasi pembantu sekolah MI Al – Ikhlas Pasir Mukti yang dapat
mengatasi hal tersebut. Sistem informasi ini digunakan untuk pendataan
baik itu data guru, siswa maupun sekolah. Konsep dari sistem informasi ini
berbasis desktop dengan server lokal. Database yang akan kami gunakan

1
2

yaitu MySQL dengan bahasa pemrograman Java. Diharapkan dengan


adanya aplikasi ini dapat mempermudah MI Al – Ikhlas Pasir Mukti dalam
hal pengelolaan dan pengarsipan data pada sekolah tersebut.
Disini kami akan mengambil judul penelitian yaitu “Analisis dan
Perancangan APASI ( aplikasi pembantu sekolah MI ) untuk pendataan guru
dan siswa pada sekolah MI Al – Ikhlas Pasir Mukti”.

B. Masalah
Berdasarkan permasalahan yang telah diuraikan pada latar belakang
diatas, maka penulis mengidentifikasikan masalah atau studi kasus yang
akan dibahas yaitu sebagai berikut :
1. Pengelolaan sistem informasi dan data pada MI Al – Ikhlas Pasir Mukti
masih kurang efektif dan efisien.
2. Penyimpanan dan perekapan data masih manual yang dikerjakan oleh
para guru di MI Al – Ikhlas Pasir Mukti.
3. Penyimpanan data secara manual dapat menghabiskan dana dan juga
tenaga dengan resiko kesalahan input data yang sedikit sulit terdeteksi.

C. Tujuan Penulisan
Tujuan dari penulisan laporan yang kami lakukan adalah :
1. Menambah wawasan dalam pembuatan sebuah program berbasis Java
dengan database MySQL dengan menghasilkan sebuah sistem
informasi pada MI Al – Ikhlas Pasir Mukti.
2. Menjabarkan kepada para pembaca mengenai sistem yang kami
rancang pada MI Al – Ikhlas Pasir Mukti secara rinci agar para pembaca
paham tentang struktur sistem yang kami rancang.
3. Sebagai syarat untuk tugas akhir mata kuliah Analisa dan perancangan
sistem informasi pada Universitas Indraprasta PGRI.
3

D. Batasan Permasalahan
Upaya untuk membatasi ruang lingkup masalah yang luas sangat
dibutuhkan untuk menghindari melebarnya masalah dalam melakukan
perancangan sistem ini. Selain itu membatasi ruang lingkup masalah
dibutuhkan agar pada pelaksaan penelitian dapat lebih terarah sehingga
tujuan dari perancangan ini akan tercapai. Berikut batasan masalah dalam
perancangaan projek ini :
1. Ruang lingkup perancangan projek ini hanya meliputi sistem informasi
pada MI Al – Ikhlas Pasir Mukti seperti data siswa, data guru, data
absen, data penilaian, data ekstrakurikuler dan data sekolah.
2. Informasi yang akan disajikan dalam projek ini adalah absensi, raport
seperti nilai dan perkembangan siswa, form data siswa baru, guru dan
seluruh siswa pada MI Al – Ikhlas Pasir Mukti.
3. Sistem pada projek ini berbasis Java yang akan menggunakan bahasa
pemrograman Java dengan database MySQL dan sistem ini bersifat
offline tanpa menggunakan internet.

E. Metodologi
1. Jenis Data
Jenis data atau informasi dari laporan ini akan dibedakan
berdasarkan sumbernya yaitu sebagai berikut :
a. Data Primer
Yang dimaksud dari data perimer adalah data yang diperoleh
dari sumbernya yang diamati dan dicatat. Data ini diporeh langsung
dari pihak yang terkait pada MI Al – Ikhlas Pasir Mukti dengan
melakukan tanya jawab yang terkait dengan projek.
b. Data Sekunder
Data sekunder merupakan data yang dikumpulkan dari
peneliti seperti majalah, buku, jurnal dan lain sebagainya. Jadi
penulis mengambil data sekunder ini dari berbagai referensi seperti
jurnal dan artikel ilmiah.
4

2. Metode Pengumpulan Data


Metode dalam pengumpulan data digunakan metodologi berikut :
a. Wawancara ( Interview )
Dalam metode ini dilakukan dengan melakukan tanya jawab
kepada narasumber agar mendapatkan informasi yang akurat dalam
mendapatkan data.
b. Studi Literatur / Studi Pustaka
Studi literatur ini dilakukan dengan mengambil data dari
materi kuliah, buku dan jurnal di internet untuk mendapatkan
informasi tentang perancangan projek, desain dari projek dan
pemrograman yang digunakan.
c. Perancangan
Metode perancangan adalah metode yang dilakukan dengan
cara merancang dan membuat projek untuk keperluan dalam
penyampain informasi pada MI Al – Ikhlas Pasir Mukti.

F. Sistematika Penulisan
Sistematika penulisan ini dibuat untuk memberikan kemudahan dalam
memahami isi dari penyusunan penulisan laporan ini. Berikut sistematika
penulisan yang terdiri dari :
BAB I PENDAHULUAN
Bab ini akan menjelaskan tentang latar belakang, rumusan
masalah, tujuan penulisan, batasan permasalahan,
metodologi dan sistematika penulisan.
BAB II ORGANISASI
Bab ini akan diuraikan mengenai sejarah perusahaan,
struktur organisasi pada MI Al – Ikhlas Pasir Mukti, dan
penjelasan unit kegiatan pada MI Al – Ikhlas Pasir Mukti.
BAB III INFRASTRUKTUR
Bab ini membahas tentang spesifikasi hardware dan software
yang digunakan oleh MI Al – Ikhlas Pasir Mukti.
5

BAB IV PEMBAHASAN
Bab ini akan diuraikan tentang proses bisnis, menceritakan
bagaimana sistem bekerja, aturan bisnis, berisikan
kebijakan-kebijakan yang ada pada sistem, dekomposisi
fungsi, gambar hierari fungsi sistem, Analisa input, proses,
output, diagram aliran data konteks, nol dan rinci, kamus
data, spesifikasi proses, bagan terstruktur, spesifikasi modul,
Analisa basis data, rancangan layer, form masukan, form
keluaran, dan listing program.
BAB V PENUTUP
Bab ini membahas tentang kesimpulan dan saran, dimana
penutup ini bertumpu pada isi dari bab IV.
6

BAB II

ORGANISASI

A. Sejarah MI Al – Ikhlas Pasir Mukti


Madrasah yang merupakan salah satu lembaga pendidikan Islam,
memiliki kiprah panjang dalam dunia pendidikan di Indonesia. Pendidikan
madrasah merupakan bagian dari pendidikan nasional yang memiliki
kontribusi tidak kecil dalam pembangunan pendidikan nasional atau
kebijakan pendidikan nasional. Madrasah telah memberikan sumbangan
yang sangat signifikan dalam proses pencerdasan masyarakat dan bangsa,
khususnya dalam konteks perluasan akses dan pemerataan pendidikan.
Dengan biaya yang relatif murah dan distribusi lembaga yang menjangkau
daerah-daerah terpencil, madrasah membuka akses atau kesempatan yang
lebih bagi masyarakat miskin dan marginal untuk mendapatkan pelayanan
pendidikan.
Madrasah sebagai nama bagi suatu lembaga atau wadah yang
mewadahi proses transformasi ilmu telah mengalami perkembangan
pemaknaan dalam rentang sejarah perkembangan umat Islam sejak zaman
Rasulullah SAW sampai sekarang. Madrasah dimaknai sebagai istilah yang
menunjuk pada proses belajar dari yang tidak formal sampai yang formal.
Madrasah adalah salah satu jenis lembaga pendidikan Islam yang
diusahakan, di samping masjid dan pesantren. Proses kelahiran dan
dinamika madrasah sebagai salah satu lembaga pendidikan Islam formal di
Indonesia yang merupakan perkembangan lanjut atau pembaruan dari
lembaga pendidikan pesantren dan masjid/surau.
7

Dari jaman penjajahan, orde lama, orde baru, era reformasi sampai
era sby, nasib madrasah di indonesia sangatlah memperihatinkan dan
seolah-olah di anaktirikan oleh pemerintah, padahal ada banyak sekali elit
politik yang duduk di kursi DPR, MPR, ISTANA dan lembaga kebijakan
negara lainnya yang lahir dan berlatar belakang dari madrasah, lulusan
madrasah tidak bisa di pandang sebelah mata atau juga di anggap remeh,
justru lulusan-lulusan madrasah memiliki nilai lebih bukan saja karen faktor
agama yang diperdalam tapi banyak faktor lainnya.
Madrasah Ibtidaiyah Swasta Al – Ikhlas Pasir Mukti secara legal
berdiri pada tahun 2011 setelah Departemen Agama Kabupaten Tangerang
mengeluarkan surat izin penegeriannya. Sejarah pertumbuhan dan
perkembangan Madrasah Ibtidaiyah Al – Ikhlas Pasir Mukti pada awal
berdirinya hampir sama dengan beberapa sejarah perkembanagn madrasah
pada umumnya di Indonesia dimana tidak dapat dipisahkan dari
perkembangan aspek kehidupan masyarakatnya, yaitu dilatarbelakangi oleh
keinginan untuk mengembangkan secara berimbang antara ilmu agama
dengan ilmu pengetahuan umum dikalangan umat Islam pada umumnya
dan masyarakat di wilayah citeureup pada umumnya.
Secara historis berdirinya madrasah ibtidaiyah Al – Ikhlas Pasir
Mukti yang berada dalam keinginan Abah Mahruf dan Saepudin Handriana
S.Pd.I, dikarenakan melihat keadaan di kampung pasir angin ini banyak
yang tidak bisa bersekolah. Dengan beralasan tidak ada biaya untuk
bersekolah, oleh karena itu berdirilah sekolah MIS Al – Ikhlas Pasir Mukti
didaerah Kp. Pasir Angin RT.02 RW.03 Kec.Citeureup Kab.Bogor
Prov.Jawa Barat dengan biaya sekolah yang lebih terjangkau. Dengan
tujuan agar semua anak dapat bersekolah tanpa harus beralasan tidak
mempunyai biaya sekolah, dan meringankan beban orang tua didaerah
tersebut.
8

B. Struktur Organisasi MI Al – Ikhlas Pasir Mukti


1. Struktur Organisasi MI Al – Ikhlas Pasir Mukti

Gambar 2.1 Struktur Organisasi MI Al – Ikhlas Pasir Mukti


9

2. Tugas dan Wewenang


a. Kepala Sekolah
1) Wewenang Kepala Sekolah :
a) Mengesahkan perubahan dokumen.
b) Mengendalikan sistem manajemen mutu.
c) Mengangkat dan memberhentikan jabatan dalam unit kerja
(waka, Ka.Prog.Keahlian).
d) Memberi teguran bagi guru dan pegawai yang melanggar
disiplin dan tata tertib.
e) Mendelegasikan tugas apabila berhalangan hadir.
f) Menandatangani surat-surat dinas dan surat berharga.
2) Tugas Kepala Sekolah :
a) Mengelola/Mengkoordinir kegiatan Waka, KTU, Kepala
Program Keahlian, Koordinator Teori dan guru.
b) Memimpin pembinaan personil (guru dan pegawai).
c) Membuat penilaian (DP3) terhadap guru.
d) Merencanakan RAPBS.
e) Menyelenggarakan rapat koordinasi dan tinjauan
manajemen.
b. Komite Sekolah
1) Wewenang Komite Sekolah :
a) Sebagai lembaga pemberi. Pertimbangan (advisory agency)
dalam penentuan dan pelaksanaan kebijakan pendidikan di
satuan pendidikan.
b) Sebagai lembaga pendukung (supporting agency), baik
yang berwujud finansial, pemikiran, maupun tenaga dalam
penyelenggaraan pendidikan di satuan pendidikan.
c) Sebagai pengontrol (controlling agency) dalam rangka
transparasi dan akuntabilitas penyelenggaraan dan keluaran
pendidikan di satuan pendidikan.
10

d) Sebagai lembaga mediator (mediator agency) antara


pemerintah (eksekutif) dengan masyarakat di satuan
pendidikan
2) Tugas Komite Sekolah :
a) Menyusun AD dan ART Komite Sekolah.
b) Mendorong tumbuhnya perhatian dan komitmen
masyarakat terhadap penyelenggaraan pendidikan yang
bermutu.
c) Melakukan kerjasama dengan masyarakat dan pemerintah
berkenaan dengan penyelenggaraan pendidikan yang
bermutu.
d) Menampung dan menganalisis aspirasi, ide, tuntutan, dan
berbagai kebutuhan pendidikan yang diajukan masyarakat.
e) Memberi masukan, pertimbangan, dan rekomendasi kepada
sekolah mengenai: – kebijakan dan program sekolah,
RAPBS, kriteria kinerja sekolah, kriteria tenaga
kependidikan, kriteria fasilitas pendidikan, dan hal-hal lain
yang terkait dengan pendidikan.
f) Mendorong orang tua dan masyarakat berpartisipasi dalam
pendidikan guna mendukung peningkatan mutu dan
pemerataan pendidikan.
g) Menggalang dana masyarakat dalam rangka pembiayaan
penyelenggaraan pendidikan di sekolah.
h) Melakukan evaluasi dan pengawasan terhadap kebijakan
program, penyelenggaraan dan keluaran pendidikan di
sekolah.
c. Pengawas Sekolah
1) Wewenang Pengawas Sekolah :
a) Bersama pihak sekolah yang dibinanya, menentukan
program peningkatan mutu pendidikan di sekolah
binaannya.
11

b) Menyusun program kerja/agenda kerja kepengawasan pada


sekolah binaannya dan membicarakannya dengan kepala
sekolah yang bersangkutan.
c) Menentukan metode kerja untuk pencapaian hasil optimal
berdasarkan program kerja yang telah disusun.
d) Menetapkan kinerja sekolah, kepala sekolah dan guru serta
tenaga kependidikan guna peningkatan kualitas diri dan
layanan pengawas.
2) Tugas Pengawas Sekolah :
a) Menyusun program kerja kepengawasan untuk setiap
semester dan setiap tahunnya pada sekolah yang dibinanya.
b) Melaksanakan penilaian, pengolahan dan analisis data hasil
belajar/bimbingan siswa dan kemampuan guru.
c) Mengumpulkan dan mengolah data sumber daya
pendidikan, proses pembelajaran/bimbingan, lingkungan
sekolah yang berpengaruh terhadap perkembangan hasil
belajar/bimbingan siswa.
d) Melaksanakan analisis komprehensif hasil analisis berbagai
faktor sumber daya pendidikan sebagai bahan untuk
melakukan inovasi sekolah.
e) Memberikan arahan, bantuan dan bimbingan kepada guru
tentang proses pembelajaran/bimbingan yang bermutu
untuk meningkatkan mutu proses dan hasil belajar/
bimbing-an siswa.
f) Melaksanakan penilaian dan monitoring penyelenggaran
pendidikan di sekolah binaannya mulai dari penerimaan
siswa baru, pelaksanaan pembelajaran, pelaksanaan ujian
sampai kepada pelepasan lulusan/pemberian ijazah.
12

d. Operator Sekolah
1) Wewenang Operator Sekolah :
Wewenang Operator Sekolah dalam mengelola sistem
data dan informasi sebagai penjaminan mutu di MIS Al –
Ikhlas Pasir Mukti. Operator sekolah adalah bagian dari tenaga
kependidikan, sedangkan tenaga kependidikan adalah anggota
masyarakat yang mengabdikan diri dan diangkat untuk
menunjang penyelenggaraan pendidikan, atau tenaga
kependikan dalam proses pendidikan memegang peranan
strategis terutama dalam upaya membentuk watak bangsa
melalui pengembangan kepribadian dan nilai-nilai yang
diinginkan.
Fungsi mereka tidak dapat dihilangkan, karena mereka
bertugas melaksanakan administrasi, pengelolaan
pengembangan, pengawasan, dan pelayanan yang bersifat
teknis untuk menunjang proses pendidikan pada satuan
sehubungan dengan tuntutan kearah profesionalisme tenaga
kependidikan, maka semakin dirasakannya desakan sebagai
upaya pelayanan dalam peningkatan mutu pendidikan pada
setiap jenis dan jenjang pendidikan yang telah menjadi
komitmen pendidikan nasional.
2) Tugas Operator Sekolah :
a) Membuat Jadwal Pendataan (Formulir Data PTK Dan
Siswa).
b) Menginstal Aplikasi Dapodik.
c) Mengentry Data Yang Telah Di Isi Oleh PTK Dan Siswa
Sesuai Dengan Isian Formulir Data, Berdasarkan Petunjuk
Dari Buku Manual Dapodik.
d) Mengirim Data Valid.
e) Mencetak / Print Out Profil Sekolah Sebagai Laporan
Pengerjaan.
13

f) Koreksi Jika Ada Kesalahan (Perbaikan Data Sesuai


Dengan Jadwal Yang Tertera).
e. Bendahara Sekolah
1) Wewenang Bendahara Sekolah :
a) Mengelola sumber dana dan pengeluarannya.
b) Membuat laporan keuangan bulanan dan tahunan.
c) Membuat usulan gaji guru dan staf.
d) Membayar gaji guru dan staf.
2) Tugas Bendahara Sekolah :
a) Bendahara Sekolah bertugas untuk menyiapkan
kelengkapan penyelenggaraan administrasi keuangan
sekolah seperti buku harian, buku pembantu mata anggaran,
kegiatan sekolah, buku kas umum, daftar Penerimaan gaji,
buku bank, buku penerimaan beasiswa, buku penerimaan
bantuan, buku kwitansi dan lain sebagainya.
b) Bendahara Sekolah juga akan diberikan tugas untuk
bersama sama dengan seluruh komponen penyelenggaraan
sekolah untuk menyusun konsep dasar perencanaan
anggaran pendapatan dan belanja sekolah maksimal selama
2 bulan setelah dimulai tahun ajaran baru.
c) Bendahara Sekolah juga bertugas untuk mengalokasikan
anggaran yang mencakup gaji dan kesejahteraan belanja
makanan dan minuman harian, biaya transportasi, biaya
telpon, air dan listrik, mengelola kegiatan kantor, sarana
belajar, prasarana belajar, Melakukan pemeliharaan sarana
prasarana, belanja bahan peraga, peralatan media, ATK dan
bahan ajar habis pakai, belanja bahan pustaka, mengelola
kegiatan kurikulum, kegiatan pembelajaran, penilaian,
peningkatan mutu proses pembelajaran, memberikan
beasiswa kepada siswa kurang mampu.
14

d) Dalam hal kegiatan kemanusiaan dan ekstrakurikuler,


seorang Bendahara Sekolah juga akan diminta untuk
meningkatkan mutu pendidikan dan tenaga pendidik,
mengembangkan sumber daya manusia, mengembangkan
manajemen sekolah, melakukan kegiatan humas, menyusun
aturan dan kebijakan sekolah yang berkaitan dengan
keuangan.
f. Guru di sekolah MIS Al – Ikhlas Pasir mukti
1) Wewenang Guru :
a) Ikut berperan dalam menentukan kebijakan pendidikan.
b) Memiliki kebebasan untuk tergabung dalam organisasi.
c) Ikut serta dalam memberikan penilaian siswa serta
menentukan lulus atau tidak.
d) Mengkoordinir dan mengatur seluruh proses pembelajaran
di kelas terhadap siswa mulai dari perencanaan,
implementasi maupun evaluasi
2) Tugas Guru :
a) Menyiapkan administrasi pengajaran.
b) Melaksanakan proses pengajaran.
c) Melaksanakan evaluasi baik sendiri/terkoordinir.
d) Melaksanakan remidial/perbaikan.
e) Melaksanakan pengayaan.
f) Melaporkan hasil evaluasi kepada siswa,waka kurikulum,
Kepala Sekolah.
g. Siswa
1) Wewenang Siswa di Sekolah :
a) Memperoleh ilmu pengetahuan dari guru
Sekolah terbaik tentu saja merupakan tempat terbaik
bagi siswa untuk belajar dan menimba ilmu. Di sekolah,
anak-anak memperoleh pengetahuan yang berbeda dari
mata pelajaran yang berbeda, tergantung pada tingkatan
15

sekolah. Siswa berhak dididik oleh guru yang berkualitas


untuk menjadi pembelajar yang cerdas. Jika tidak ada guru
yang datang, anak berhak bertanya kepada staf atau guru
lain untuk meminta guru pengganti jika memungkinkan.
b) Bertanya kepada guru apabila ada materi yang tidak
dipahami
Jika siswa mendapati materi yang tidak dimengerti,
siswa boleh bertanya kepada guru yang bersangkutan, dan
guru harus menjelaskan materi hingga anak memahaminya.
Sebagai seorang murid, anak berhak menanyakan kembali
materi yang ia tidak pahami, dan mendapatkan bimbingan
tambahan.
c) Menggunakan fasilitas sekolah
Pada umumnya, setiap sekolah terdapat banyak
fasilitas yang disuguhkan, ada lapangan olahraga,
perpustakaan, ruang ibadah, kantin dan lain-lain. Dengan
demikian siswa berhak untuk menggunakan fasilitas-
fasilitas tersebut sesuai fungsinya.
d) Mendapatkan perlindungan dan keamanan dari pihak
sekolah
Sejak masuk usia sekolah, siswa akan
menghabiskan waktunya lebih banyak di sekolah, bersama
teman-teman guru, staf, dan anggota sekolah lainnya.
Sehingga anak harus berpisah selama beberapa waktu dari
orang tuanya. Hak lain yang harus anak diperoleh di
sekolah adalah perlindungan dan keamanan, terutama dari
guru dan staf sekolah, terlepas dari latar belakang suku,
budaya, dan agama siswanya, untuk menunjukkan guru dan
staf melindungi siswanya tanpa memandang latar
belakangnya.
16

2) Tugas Siswa di Sekolah :


a) Mengikuti peraturan dan tata tertib sekolah
Setiap sekolah tentu memiliki regulasi dan tata
tertib yang berbeda-beda. Dengan demikian siswa wajib
mentaati peraturan serta tata tertib yang berlaku. Anak juga
harus belajar menjaga sikap dan ketertiban selama proses
belajar di sekolah agar proses belajar mengajar menjadi
kondusif. Hal itu juga melatih kedisiplinan anak, serta
membuat lingkungan sekolah menjadi tertib.
b) Hadir tepat waktu dan memberi keterangan jika tidak bisa
hadir sekolah
Sudah menjadi aturan umum seorang siswa wajib
datang ke sekolah tepat waktu sebelum bel sekolah
dibunyikan, yaitu ada yang pukul 06.30, atau 07.00,
tergantung dari kebijakan sekolah. Peraturan ini dibuat agar
siswa bisa sesuai dengan jadwal pelajaran yang telah
dibuat, dari jam masuk hingga jam pulang. Selanjutnya jika
anak berhalangan masuk sekolah, orang tua atau wali wajib
memberikan surat izin tidak masuk sekolah atau
menghubungi guru dan pihak staf sekolah.
c) Menjaga sopan santun kepada seluruh warga sekolah
Seorang siswa juga wajib menjunjung tinggi nilai
sopan santun selama berada di lingkungan sekolah. Hal ini
berlaku untuk seluruh warga sekolah. Dengan demikian,
seorang siswa wajib menghargai dan menghormati seluruh
warga sekolah.
17

C. Kegiatan di MI Al – Ikhlas Pasir Mukti


1. Ekstrakurikuler Pencak Silat
Pencak Silat adalah seni bela diri yang memperhatikan aspek
mental dan spiritual. Pencak Silat menjadi bentuk budaya
masyarakat Indonesia untuk mempertahankan diri. Di negara-negara
Asia Tenggara, Pencak Silat dikenal dengan nama Silat. Di
Indonesia, tiap daerah memiliki ciri khas Pencak Silatnya sendiri
Beladiri pencak silat adalah sebuah cabang olahraga untuk
memperdalam pengetahuan siswa/i MIS Al – Ikhlas Pasir Mukti
tentang salah satu beladiri yang ada di Indonesia. Bela diri pencak
silat di kemas dalam bentuk ekstrakurikuler khususnya di MIS Al –
Ikhlas Pasir Mukti. Ekskul beladiri pencak silat adalah wadah bagi
siswa/i yang baru ingin mengenal dan yang telah memilikii
kemampuan dalam beladiri pencak silat. Sehingga mereka bisa
mengembangkan dan mengekspresikan diri mereka melalui beladiri
pencak silat ini. Ekskul beladiri pencak silat tentunya terbuka untuk
semua siswa/i MIS Al – Ikhlas Pasir Mukti baik yang sudah pandai
beladiri maupun yang belum pandai beladiri.
Tujuan MIS Al – Ikhlas Pasir Mukti mengadakan ekskul pencak
silat adalah :
a. Wadah para siswa/i untuk mengembangkan minat dan bakat
dalam beladiri pencak silat.
b. Mengarahkan siswa/i agar melakukan kegiatan yang lebih
positif.
c. Menyalurkan kemampuan dan meningkatkan prestasi.
d. Serta melatih mentalitas dan kedisiplinan diri pada siswa/i.

Visi :

“Membentuk karakter anak bangsa yang kreatif dan sportifitas dalam


olahraga beladiri pencak silat”.
18

2. Ekstrakurikuler Pramuka
Pramuka adalah singkatan dari Praja Muda Karana dan
merupakan organisasi atau gerakan kepanduan. Pramuka adalah
sebuah organisasi yang merupakan wadah proses pendidikan
kepramukaan yang dilaksanakan di Indonesia. Dalam dunia
internasional, Pramuka disebut dengan istilah “Kepanduan” (Boy
Scout).
Pendidikan kepramukaan merupakan kegiatan
ekstrakurikuler yang wajib dilaksanakan di sekolah. Kegiatan
dilaksanakan melalui gugus depan gerakan pramuka yang
berpangkalan di sekolah dasar Semenpinggir. Melaui pendidikan
kepramukaan ini dapat dilakukan pembinaan ketaqwaan terhadap
Tuhan Yang Maha Esa. Kehidupan berbangsa dan bernegara
berlandaskan Pancasila, pendidikan pendahuluan bela Negara,
kepribadian dan budi pekerti luhur, berorientasi, pendidikan
kewiraswastaan, kesegarsn jasmani dan daya kreasi , persepsi,
apresiasi dan karya seni.
Pelaksanaan latihan lebih di fokuskan pada kegiatan praktek
dan tetap memperhatikan ketertiban dan keamanan, barupa kegiatan
nyata yang member kesempatan kepada peserta didik menerapkan
pengetahuan dan kecakapan yang sesuai dengan usia. Pelaksanaan
kegiatan dilakukan secara praktis yaitu sederhana, mudah,
memanfaatkan sumber daya yang ada dan menghemat biaya tetapi
berhasil guna dan tepat guna. Setiap Pembina pramuka wajib
membuat program tahunan, program semester dan rencana
pelaksanaan kegiatan.
Penilaian pendidikan kepramukaan mencakup hal-hal
sebagai berikut :
a. Penilaian dilakukan lebih banyak secara kualitatif.
b. Peserta didik diwajibkan untuk mendapatkan nilai minimal baik
pada kegiatan ekstrakurikuler wajib pada setiap semester.
19

c. Nilai yang diperoleh pada kegiatan ekstrakurikuler wajib


kepramukaan berpengaruh terhadap kenaikan kelas peserta
didik (raport).
d. Kriteria keberhasilan kompetensi lebih ditentukan oleh proses
dan keikutsertaan peserta didik.
e. Proses penilaian dilaksanakan setiap kali latihan dan setiap hari
di dalam proses pelatihan pramuka.
f. Proses penilaian dilaksanakan dengan metode observasi dan
partisipasi. Proses pemilaian dilakukan oleh teman, guru
kelas/guru mata pelajaran, dan pembina pramuka.
20

BAB III

INFRASTRUKTUR

A. Spesifikasi Hardware
1. Hardware
a. Pengertian Hardware
Menurut Wahana (2006:2), Hardware merupakan perangkat
komputer yang terdiri dari lapisan komponen – komponen
elektronik yang berbentuk fisik. Jenis-jenis hardware pada
komputer, diantaranya motherboard, hard disk, floppy, memory,
dan lain lain.
Tidak hanya perangkat yang ada dalam CPU (Central
Processing Unit) saja yang disebut hardware, perangkat di luarnya
pun berhubungan langsung dengan komputer yang disebut dengan
hardware. Misalnya, perangkat yang mempunyai kedudukan berarti
dalam komputer adalah monitor, keyboard, mouse, printer, dan lain-
lain. Perangkat – perangkat tersebut dalam istilah komputer disebut
sebagai media masukan (input device) dan media keluaran (output
device).
b. Jenis – Jenis Hardware
1) Mainboard atau Motherboard
Motherboard merupakan bagian komputer yang paling
utama karena berisi sistem BIOS (Basic Input Output System) ,
pengatur koneksi input – output (chipset), socket processor,
socket memory (RAM), socket kartu grafis (VGA card) dan
socket kartu tambahan (additional cards seperti PCI, ISA).
Beberapa contoh merk motherboard yang terkenal adalah Asus,
Gigabyte, Albatron, Abit, PCchips, ECS, Biostar, dan Jetway.
21

2) Processor (CPU)
Processor merupakan otak sentral dari sebuah komputer.
Processor adalah yang mengerjakan semua perintah yang sudah
terprogram dan disimpan dalam harddisk. Contoh merk
processor yang terkenal adalah INTEL dan AMD.
3) Hard disk (HDD)
Hard disk merupakan media penyimpanan data permanen,
jadi data tidak hilang meskipun listrik sudah dimatikan. Hard
disk berisi sebuah cakram magnetik yang mampu menyimpan
data. Contoh merk hard disk yang terkenal adalah Seagate, West
Digital, Maxtor, Samsung, dll.
4) RAM (Random Access Memory)
RAM merupakan unit penyimpan data tidak permanen
artinya data dalam RAM akan hilang jika listrik mati. Contoh
beberapa merk RAM adalah V-gen , Kingston, Visipro, Ramos,
dll.
5) Optical drive (CD / DVD)
Optical Drive merupakan alat pembaca untuk media
penyimpan data berupa disk DVD / CD. Contoh merk DVD /
CD ROM atau RAM adalah LG, Samsung, Sony, Pioneer, dll.
6) Floppy Disk
Floppy disk merupakan media pembaca untuk disket. Saat
ini mungkin disket sudah tidak populer.
7) VGA CARD (Kartu Grafis)
VGA merupakan singkatan dari Video Graphics Array.
VGA Card berfungsi mengeluarkan output grafis (gambar)
untuk ditampilkan pada monitor. Contoh merk VGA yang
terkenal adalah ATI, NVIDIA, S3, SIS, dan Trident.
22

8) Sound Card
Sound Card merupakan bagian yang mendekode data data
digital menjadi sinyal suara. Contoh merk soundcard yang
terkenal adalah Creative, Ess, Realtek, Cmedia, dll.
9) Keyboard
Keyboard merupakan sebuah papan ketik yang berisi
semua model huruf, angka, karakter dan tanda baca yang
menjadi sarana bagi pengguna komputer dalam memasukkan
data ke komputer.
10) Mouse (Pointing Device)
Mouse merupakan sebuah alat pointer untuk mengakses
melalui layar monitor.
11) Monitor
Monitor merupakan media tampilan gambar hasil output
dari VGA Cards.
12) Printer
Printer merupakan alat untuk mencetak hasil kerja dari
komputer ke dalam media kertas. Merk printer yang terkenal
adalah HP, Canon, Epson, dll.

2. Hardware yang ada pada MI Al – Ikhlas Pasir Mukti


a. Pengertian Jaringan Komputer
Menurut Sofana (2011:4), Jaringan komputer merupakan
himpunan interkoneksi beberapa komputer autonomous yang
mempunyai arti komputer tersebut mempunyai kendali akses atas
dirinya sendiri. Bukan merupakan bagian komputer lain, seperti
sistem terminal yang biasa digunakan pada komputer mainframe.
Komputer juga tidak mengatur komputer lain yang dapat
mengakibatkan komputer lain menjadi restart, shutdown, merusak
file, dan sebagainya.
23

Dua buah komputer dikatakan “interkoneksi” apabila


keduanya dapat berbagi resources yang dimiliki, seperti saling
bertukar data atau informasi, berbagi printer, berbagi media
penyimpanan (hard disk, floppy disk, CD, ROM, flash disk, dan
sebagainya).
Data berupa teks, audio maupun video, mengalir melalui
media jaringan (baik kabel maupun nirkabel) sehingga
memperbolehkan pengguna jaringan komputer bertukar file atau
data, memakai printer yang sama, memakai hardware maupun
aplikasi yang terhubung dalam jaringan. Jadi, jaringan komputer
dapat dikatakan sebagai kumpulan beberapa buah komputer yang
terhubung satu sama lain dan dapat saling berbagi resources.
b. Jenis – Jenis Jaringan Komputer
Jaringan komputer dibagi menjadi lima jenis, yaitu:
1) Local Area Network (LAN)
Menurut Tanenbaum & Wetherall (2011:19), Local Area
Network (LAN) adalah jaringan tertutup dalam satu bangunan
atau kampus hingga jarak beberapa kilometer. Dua komputer
yang terhubung sudah merupakan LAN. Jaringan LAN
umumnya mencakup gedung, sekolah, kampus, atau kantor.
2) Metropolitan Area Network (MAN)
Menurut Tanenbaum & Wetherall (2011:23),
Metropolitan Area Network (MAN) merupakan suatu jaringan
metropolitan yang luas areanya mencakup sebuah kota. MAN
bisa berupa jaringan tunggal seperti jaringan telepon lokal,
sistem telepon seluler, jaringan televisi kabel, atau bisa berupa
gabungan dari beberapa LAN yang terletak dalam suatu kota.
MAN juga merupakan jaringan yang ukurannya terletak diantara
Local Area Network (LAN) dan Wide Area Network (WAN).
MAN dirancang untuk pelanggan yang memerlukan kecepatan
24

tinggi yang biasanya untuk akses internet dan akses jaringan


yang terletak pada sebuah kota.
3) Wide Area Network (WAN)
Menurut Tanenbaum & Wetherall (2011:23), Wide Area
Network (WAN) mencakup area geografis yang luas, seperti
sebuah negara atau benua. Berisi kumpulan mesin yang
diperuntukan untuk menjalankan program yaitu aplikasi
pengguna.
4) Internet
Menurut Tanenbaum & Wetherall (2011:28), Kumpulan
jaringan interkoneksi disebut dengan internetwork atau internet.
Banyak orang di dunia, kerap kali mempunyai hardware dan
software yang berbeda – beda. Orang terhubung ke jaringan
untuk melakukan komunikasi dengan orang – orang yang berada
pada jaringan yang berbeda.
Untuk memenuhi kebutuhan dan keinginan untuk
berkomunikasi walaupun berbeda jaringan dan incompatible
(tidak cocok) untuk connected (terhubung). Untuk
menanggulangi permasalahan tersebut mesin gateway membuat
koleksi dan memberikan terjemahan yang diperlukan baik dari
segi hardware dan software.
5) Jaringan Tanpa Kabel ( Wireless )
Menurut Sofana (2011:53), Wireless (jaringan tanpa
kabel) merupakan jenis jaringan komputer yang memakai
gelombang radio untuk transmisi data. Saat ini semakin banyak
implementasi wireless network di pusat perbelanjaan, bandara,
rumah sakit, dan lokasi lain. Pengguna dapat dengan mudah
mengakses internet menggunakan handphone, laptop, PDA, dan
perangkat genggam lainnya. Frekuensi yang digunakan wireless
network biasanya 2.4 GHz dan 5.8 GHz.
25

c. Topologi Jaringan
Menurut Lukas (2006:144), Topologi jaringan mengartikan
pengaturan peletakan node dalam jaringan dan cara aksesnya
(interconnection), pengaturan ini berhubungan erat dengan media
pengiriman yang digunakan. Topologi yang sering digunakan pada
jaringan komputer umumnya sebagai berikut :
1) Topologi Bus
Menurut Lukas (2006:146) menjelaskan bahwa topologi
bus merupakan semua terminal terhubung ke jalur komunikasi.
Informasi yang akan dikirimkan melewati semua terminal pada
jalur tersebut. Jika alamat terminal sesuai informasi yang
dikirim, maka informasi tersebut akan diterima dan diproses.
Jika tidak, informasi tersebut akan diabaikan oleh terminal yang
dilewatinya.
Topologi bus mempunyai ciri – ciri sebagai berikut :
a) Kemampuan pengembangan tinggi (open – endedness).
b) Jarak LAN tidak terbatas.
c) Kecepatan pengiriman tinggi.
d) Tidak dibutuhkan pengendalian pusat.
e) Kondusif untuk konfigurasi jaringan pada gedung
bertingkat.
f) Masalah terbesar dalam topologi bus adalah jika salah
satu segmen kabel putus, maka seluruh jaringan akan
berhenti.
Keunggulan dari topologi bus adalah sebagai berikut :
a) Hemat kabel sehingga biaya instalasi relatif lebih murah.
b) Penambahan dan pengurangan terminal dapat dilakukan
tanpa mengganggu operasi yang berjalan.
c) Layout kabel sederhana sehingga instalasi relatif lebih
mudah.
26

Kelemahan dari topologi bus adalah sebagai berikut :


a) Kepadatan pada jalur lalu lintas.
b) Jika terdapat gangguan di sepanjang kabel pusat, maka
keseluruhan jaringan akan mengalami gangguan.
2) Topologi Ring
Menurut Lukas (2006:145), Topologi ini hampir sama
dengan topologi bus, namun semua terminal saling dihubungkan
sehingga mirip dengan lingkaran. Setiap informasi yang
diperoleh, diperiksa alamatnya oleh terminal yang dilewati.
Topologi ring mempunyai ciri – ciri sebagai berikut :
a) Laju data tinggi.
b) Dapat melayani lalu lintas data yang padat.
c) Tidak diperlukan host, relatif lebih murah.
d) Dapat melayani berbagai jenis mesin pengirim.
e) Komunikasi antar terminal mudah.
f) Waktu yang diperlukan untuk mengakses data optimal.
g) Pengurangan atau penambahan terminal sangat sulit.
h) Tidak kondusif untuk pengiriman suara, video, dan data.
Keunggulan dari topologi ring adalah sebagai berikut :
a) Dapat melayani aliran lalu lintas data yang padat.
b) Aliran data mengalir lebih cepat karena dapat melayani
data dari kiri atau kanan dari server.
c) Transmisi data yang relatif sederhana seperti perjalanan
paket data dalam satu arah saja.
Kelemahan dari topologi ring adalah sebagai berikut :
a) Kerusakan pada salah satu media pengirim atau terminal
dapat melumpuhkan kerja seluruh jaringan.
b) Paket data harus melewati setiap komputer antara
pengirim dan penerima, sehingga menjadi lebih lambat.
27

c) Pengembangan jaringan menjadi lebih kaku karena


penambahan terminal atau node menjadi lebih sulit bila
port sudah habis.
3) Topologi Star
Menurut Lukas (2006:145), Topologi star merupakan
sebuah terminal pusat yang berperan sebagai pengatur dan
pengendali semua komunikasi data yang terjadi. Terminal –
terminal lain terhubung padanya dan pengiriman data dari satu
terminal ke terminal lainnya melalui terminal pusat. Terminal
pusat akan menyediakan jalur komunikasi khusus pada dua
terminal yang akan berkomunikasi.
Ciri – ciri dari topologi star :
a) Keterandalan (dapat diandalkan) terbesar diantara
topologi yang lain.
b) Mudah dikembangkan.
c) Keamanan data tinggi.
d) Kemudahan akses ke jaringan LAN lain.
e) Lalu lintas yang padat dapat menyebabkan jaringan
lambat.
f) Jaringan tergantung pada terminal pusat.
Keunggulan dari topologi star adalah sebagai berikut :
a) Kerusakan pada satu saluran hanya akan
mempengaruhi jaringan pada saluran tersebut dan
station yang terpaut.
b) Tingkat keamanan termasuk tinggi.
c) Tahan terhadap lalu lintas jaringan yang sibuk.
d) Kemudahan deteksi dan isolasi kesalahan atau
kerusakan pengelolaan jaringan.
Kelemahan dari topologi star adalah sebagai berikut :
a) HUB jadi elemen kritis karena kontrol terpusat.
b) Jaringan tergantung pada terminal pusat.
28

c) Biaya jaringan lebih mahal.


4) Topologi Tree atau Hirarki
Menurut Lukas (2006:147-148), Topologi tree merupakan
topologi yang tidak semua terminal mempunyai kedudukan yang
sama. Terminal dengan kedudukan yang lebih tinggi menguasai
terminal di bawahnya, dan demikian jaringan tergantung pada
terminal dengan kedudukan paling tinggi.
Ciri – ciri topologi tree :
a) Memungkinkan untuk memiliki jaringan point – to –
point.
b) Mengatasi keterbatasan pada topologi star yang memiliki
keterbatasan pada titik koneksi hub.
c) Topologi tree membagi seluruh jaringan menjadi bagian
yang lebih mudah diatur.
d) Topologi tree ini memiliki keunggulan lebih mampu
menjangkau jarak yang lebih jauh dengan mengaktifkan
fungsi repeater yang dimiliki oleh hub atau switch.
5) Topologi Mesh
Menurut Lukas (2006:148), Topologi mesh merupakan
campuran dari berbagai jenis topologi – topologi yang ada
disesuaikan dengan kebutuhan. Digunakan pada network atau
jaringan yang tidak memiliki terlalu banyak node di dalamnya.
Ini disebabkan karena setiap station dihubungkan dengan station
yang lain. Pendekatan dengan menggunakan jaringan ini
dibutuhkan untuk sistem yang membutuhkan koneksitas yang
tinggi.
Ciri – ciri topologi mesh :
a) Memiliki hubungan yang lebih antara perangkat yang
ada.
b) Susunan pada setiap perangkat yang ada di dalam
jaringan saling terhubung satu sama lain.
29

c) Hubungan dedicated links menjamin data langsung


dikirimkan ke komputer tujuan tanpa harus melalui
komputer lainnya sehingga pertukaran data dapat
berlangsung lebih cepat karena sebuah link yang
digunakan khusus untuk berkomunikasi dengan
komputer yang dituju saja.
d) Jika jumlah perangkat yang dihubungkan banyak, maka
akan sulit dikendalikan.
d. Keunggulan Jaringan
Jaringan komputer mempunyai keunggulan lebih jika
dibandingkan dengan komputer yang berdiri sendiri. Keunggulan
yang didapatkan dari jaringan komputer yaitu :
1) Kecepatan akses lebih tinggi karena penyediaan fasilitas
jaringan dan pengelolaannya dilakukan secara khusus oleh satu
komputer (server) yang tidak dibebani dengan tugas lain sebagai
workstation.
2) Sistem keamanan dan administrasi jaringan lebih baik, karena
terdapat seorang pemakai yang bertugas sebagai administrator
jaringan, yang mengelola administrasi dan sistem keamanan
jaringan.
3) Sistem backup data lebih baik, karena pada jaringan client –
server backup dilakukan terpusat di server, yang akan
membackup seluruh data yang digunakan di dalam jaringan.
4) Manajemen sumber daya lebih efisien.
5) Mempertahankan informasi agar tetap handal dan up – to – date.
6) Membantu usaha dalam melayani klien mereka secara lebih
efektif.
7) Membantu mempercepat proses berbagi data (data sharing).
8) Memungkinkan kelompok – kerja berkomunikasi dengan lebih
efisien.
30

e. Jaringan yang ada di MI Al – Ikhlas Pasir Mukti


Untuk saat ini MI Al – Ikhlas Pasir Mukti belum menerapkan
jaringan dan topologi.

B. Spesifikasi Software
1. Software
a. Pengertian Software
Perangkat lunak atau disebut juga software menurut
Pressman (2001, p6) mempunyai pengertian :
1) Perintah (program komputer) yang bila di eksekusi memberikan
fungsi dan hasil kerja seperti yang diinginkan.
2) Struktur data yang memungkinkan program memanipulasi
informasi secara proporsional.
3) Dokumen yang menggambarkan operasi dan kegunaan dari
suatu program.
b. Jenis – Jenis Software
1) Sistem Operasi, adalah perangkat lunak yang mengoperasikan
komputer serta menyediakan antarmuka dengan perangkat lunak
lain atau dengan pengguna. Contoh sistem operasi : MS – DOS,
MS – Windows (dengan berbagai generasi), Macintosh, OS/2,
UNIX (dengan berbagai versi), LINUX (dengan berbagai
distribusi), NetWare, dll.
2) Program Utilitas, merupakan program khusus yang berfungsi
sebagai perangkat pemeliharaan komputer, seperti anti virus,
partisi hard disk manajemen hard disk, dll. Contoh produk
program utilitas : Norton Utilities, PartitionMagic, McAfee, dll.
3) Program Aplikasi, adalah program yang dikembangkan untuk
memenuhi kebutuhan yang spesifik. Contoh : aplikasi akuntansi,
aplikasi perbankan, aplikasi manufaktur, dll.
4) Program Paket, merupakan program yang dikembangkan untuk
kebutuhan umum, seperti :
31

a) Pengolah kata atau editor naskah : Wordstar, MS – Word,


Word Perfect, AmiPro, dll.
b) Pengolah angka atau lembar kerja : Lotus 123, MS – Excel,
Quattro Pro, dll.
c) Presentasi : MS – PowerPoint, dll.
d) Desain grafis : CorelDraw, PhotoShop, dll
5) Bahasa Pemrograman, adalah perangkat lunak untuk pembuatan
atau pengembangan perangkat lunak lain. Bahasa pemrograman
dapat diklasifikasikan menjadi tingkat rendah, tingkat sedang,
dan tingkat tinggi. Pergeseran dari tingkat rendah ke tinggi
menunjukkan kedekatan dengan “bahasa manusia”. Bahasa
tingkat rendah (atau biasa disebut bahasa assembly) merupakan
bahasa dengan pemetaan satu persatu terhadap instruksi
komputer. Contoh bahasa tingkat tinggi adalah Pascal, BASIC,
Prolog, Java dll. Contoh bahasa tingkat menengah adalah bahasa
C. Seperti perangkat lunak lain, bahasa pemrograman juga
memiliki pertumbuhan generasi.
c. Tingkatan Software
1) Freeware
Freeware atau software gratis adalah software yang
memiliki hak cipta, namun untuk pengguna yang ingin
menggunakan software tersebut, dapat mengunduh secara gratis
dan tanpa batas waktu. Freeware berbeda dengan shareware,
shareware mewajibkan bagi para pengguna untuk membayar
dalam jangka waktu percobaan atau untuk memperoleh fungsi
tambahan dari software tersebut.
Para pengembang perangkat tersebut biasanya membuat
perangkat gratis freeware untuk disumbangkan kepada suatu
komunitas namun developer aplikasi tersebut tetap ingin
mempertahankan hak dan memiliki kontrol luas terhadap
pengembangan selanjutnya. Freeware juga dapat didefinisikan
32

sebagai suatu program apapun yang didistribusikan secara gratis


dan tanpa biaya tambahan. Contoh aplikasi freeware adalah
Mozilla firefox dan sebagainya.
2) Shareware
Shareware merupakan perangkat lunak yang disediakan
untuk para pengguna tanpa membayar namun dibatasi oleh
waktu jika waktu masa uji coba habis para pengguna yang ingin
memperpanjang atau ingin mendapatkan fitur tambahan tertentu
harus membelinya kepada pihak yang mendistribusikannya agar
dapat menggunakan software.
Alasan di balik program shareware adalah dengan
memberikan pembeli kesempatan terlebih dahulu untuk
mencoba program aplikasi tersebut sebelum pengguna membeli
lisensi untuk versi yang lebih lengkap. Ini juga dipakai sebagai
salah satu strategi pemasaran atau marketing dari developer
aplikasi shareware.
3) Firmware
Firmware merupakan software yang mengacu kepada
perangkat lunak yang disimpan dalam memory read only atau
memory yang hanya dibaca. Seperti jenis memori akses acak,
firmware tidak akan berubah meski tidak dialiri arus listrik. Dari
mulai komputer start up sampai proses instruksi.
Modifikasi dapat dilakukan, namun hal tersebut
tergantung dari jenis ROM (Read Only Memory) yang
digunakan. Firmware yang telah disimpan dalam ROM tidak
dapat diubah, namun firmware yang disimpan dalam ROM yang
dapat di ubah seperti EPROM atau Flash ROM, masih dapat
diubah sesuai kebutuhan.
4) Commercial Software (Software Berbayar)
Commercial software atau software berbayar merupakan
software yang dibuat untuk tujuan dan kebutuhan komersil. Bagi
33

setiap pengguna yang ingin menggunakan software tersebut, ia


harus membeli kepada pihak yang mendistribusikannya. Bisa
langsung kepada pengembang software yang membuatnya.
Pengguna yang menggunakan software berbayar tersebut,
biasanya tidak diperbolehkan menyebarluaskan ulang software
tersebut. Contoh software berbayar seperti sebagai berikut,
Adobe photoshop, Corel draw, dan lain sebagainya. Software
berbayar ini dilindungi oleh undang-undang hak cipta, serta
untuk mendapatkannya kita harus membeli software.
5) Free Software
Free software atau perangkat lunak bebas merupakan
istilah yang diciptakan yang mengacu kepada perangkat lunak
bebas untuk digunakan, dipelajari, serta diubah dan dapat disalin
dengan ataupun tanpa modifikasi. Bebas disini juga dalam
menggunakan, mengubah, mempelajari ataupun menjual sebuah
perangkat lunak dan dan seseorang tidak perlu untuk meminta
izin siapapun. Dengan kata lain anda dapat mengutak – atik
software ini sesuka hati. Perangkat lunak tersebut biasanya
memiliki sebuah lisensi dan menyediakan akses ke kode
sumbernya bagi para penggunanya. Perlu diketahui bahwa
perangkat lunak bebas atau free software jangan disalah artikan
dengan perangkat lunak gratis (freeware).
Freeware dapat berupa free software yang berarti
perangkat lunak bebas ataupun freeware dapat berupa perangkat
lunak tidak bebas. Pada umumnya perangkat lunak bebas
tersedia secara gratis bagi para penggunanya dan dibangun oleh
komunitas terbuka. Para anggota komunitas yang tergabung
tersebut biasanya bersifat sukarela tetapi dapat juga merupakan
karyawan dari suatu perusahaan yang memang telah dibayar
untuk mengembangkan perangkat lunak tersebut.
34

6) Open Source Software


Open source software atau dapat disebut juga perangkat
lunak sumber terbuka merupakan jenis perangkat lunak yang
kode sumbernya bersifat terbuka dan dapat untuk dipelajari,
diubah, dikembangkan, ditingkatkan, serta dapat juga di
sebarluaskan. Karena adanya sifat tersebut, pada umumnya
pengembangannya atau developer dilakukan oleh satu
komunitas terbuka yang memiliki tujuan untuk mengembangkan
perangkat lunak bersangkutan.
Open source software yang dihasilkan biasanya bersifat
bebas dengan tetap mengikuti sebuah kaidah dan etika tertentu.
Semua perangkat lunak bebas merupakan perangkat lunak
sumber terbuka, tetapi sebaliknya perangkat lunak sumber
terbuka belum tentu perangkat lunak bebas, tergantung kaidah
yang sedang dipakai aplikasi tersebut.
7) Malware
Malware atau perangkat lunak perusak merupakan
perangkat lunak yang diciptakan oleh penciptanya untuk
merusak sistem komputer. Perangkat perusak terdiri dari virus
komputer, trojan horse, rootkit, cacing komputer, spyware,
adware, crimeware, dan perangkat – perangkat lainnya yang
bernilai jahat.

2. Software yang dipakai oleh MI Al – Ikhlas Pasir Mukti


Untuk saat ini belum ada software dan program sistem informasi
yang dipakai oleh MI Al – Ikhlas Pasir Mukti.
35

BAB IV

PEMBAHASAN

A. Pembuatan Aplikasi
Pada dasarnya usulan perancangan atau pembuatan sistem yang
dibuat banyak berubah dari sistem yang berjalan pada MI Al – Ikhlas Pasir
Mukti. Usulan sistem yang dirancang berubah dari pengolahan data yang
dilakukan belum secara komputerisasi menjadi pengolahan data yang
dilakukan dengan adanya bantuan computer.
Perancangan aplikasi yang kami rancang adalah aplikasi desktop,
dimana aplikasi ini hanya bisa diakses oleh local saja dan tanpa internet.
Aplikasi hanya bisa dipakai oleh admin atau guru yang berwenang saja.
Fungsi dari aplikasi ini adalah agar memudahkan proses administrasi pada
sekolah tersebut. Sistem informasi yang kami rancang adalah sistem
pendaftaran, absensi, ekstrakurikuler, input data siswa dan guru dan juga
sistem penilaian dan pencapaian. Kami berharap dengan adanya sistem
informasi ini dapat bermanfaat dan memudahkan pekerjaan administrasi
atau lain hal pada sekolah MI Al – Ikhlas Pasir Mukti.
Dalam pembuatan aplikasi sistem informasi ini kami menganalisis
kebutuhan yang akan digunakan baik itu dari segi pengguna, perangkat
keras hingga perangkat lunak. Berikut kebutuhan-kebutuhan dalam
membangunan sistem informasi APASI :
1. Pengguna / User
Pengguna atau user yang kami butuhkan untuk aplikasi sistem
informasi ini adalah seorang admin atau guru yang berwenang. User
tersebut berwenang untuk mengatur keseluruhan aplikasi sistem
informasi APASI pada MI Al – Ikhlas Pasir Mukti, mengatur disini
dalam arti antara lain menambah, menghapusm mengedit data yang
berhubungan dengan sistem informasi ini. User yang berwenang ini akan
36

diberikan username dan password khusus agar yang tidak berwenang


tidak dapat menggunakan aplikasi sistem informasi ini.
2. Perangkat Keras
Perangkat keras yang dibutuhkan dalam membangun dan
mengakses aplikasi sistem informasi ini adalah computer atau laptop
dengan spesifikasi minimal nya adalah prosesor core i3, RAM 2 GB,
harddisk 500 GB.
3. Perangkat Lunak
Perangkat lunak yang dibutuhkan dalam pelaksaan aplikasi ini
adalah sistem operasi windows 7 atau lain sebagainya. Bahasa
pemrograman yang digunakan adalah java dengan database MySQL
dengan butuh bantuan dari aplikasi xampp.

B. Proses Sistem Aplikasi


Pembuatan sistem informasi pada sekolah MI Al – Ikhlas Pasir
Mukti dimulai dengan membuat tampilan halaman login, yang berfungsi
untuk agar hanya orang yang berwenang saja yang dapat menggunakan
aplikasi ini dan tidak semua orang dapat memakai aplikasi sistem informasi
ini. Setelah login, maka akan ditampilkan form master nya, seperti form
absensi, data siswa, siswa baru, guru, absensi, ekstrakurikuler dan penilaian.
Selanjutnya pada beberapa form ada report yang berfungsi untuk merekap
data-data sesuai form, seperti report pada form absensi, penilaian, siswa dan
lain sebagainya.

C. Aturan Pembuatan Aplikasi


Dalam membuat aplikasi kami mempunyai aturan seperti hanya
membuat aplikasi ini khusus untuk sekolah MI Al – Ikhlas Pasir Mukti yang
dapat membantu dalah segi administrasi agar dapat mempermudah dalam
hal pengarsipan, pendataan dan lain sebagainya. Aplikasi sistem informasi
yang kami rancang adalah aplikasi desktop yang artinya hanya lokal saja
yang dapat mengaksesnya dan tanpa menggunakan internet dan yang dapat
37

mengakses aplikasi sitem informasi ini hanya bagi mereka yang mengetahui
nama dan kata sandi dari aplikasi ini, jadi tidak sembarang orang dapat
memakai fasilitas dari aplikasi sistem informasi ini. Selanjutnya aturan
bahasa pemrograman yang kami pakai adalah java dengan databasenya
adalah MySQL.

D. Kebijakan Aplikasi
Aplikasi yang kami buat memiliki kebijakan sebagai berikut :
1. Aplikasi hanya diperuntukan untuk guru/admin yang berwenang pada
MI Al – Ikhlas Pasir Mukti.
2. Aplikasi tidak boleh digunakan selain guru/admin MI Al – Ikhlas Pasir
Mukti.

E. Dekomposisi Fungsi
Dekomposisi fungsional adalah metode analisis yang membedah
proses kompleks untuk memeriksa elemen individualnya. Fungsi dalam
konteks ini adalah tugas dalam proses yang lebih besar dimana dekomposisi
memecah proses itu menjadi unit-unit yang lebih kecil dan lebih mudah
dipahami. Dalam pembuatan aplikasi sekolah MI Al – Ikhlas Pasir Mukti
aplikasinya terdiri dari pendaftaran, data siswa, nilai, guru, absensi,
pencapaian dan ekstrakurikuler. Berikut diagram dekomposisi pada MI Al
– Ikhlas Pasir Mukti :
38

Aplikasi Sekolah
MI Al – Ikhlas

Pendaftaran Data Siswa Nilai Guru Pencapaian Ekstrakurikuler

CRUD CRUD CRUD


CRUD CRUD CRUD
Calon Prestasi Eksul
Data Siswa Nilai Siswa Data Guru
Siswa Baru Siswa Sekolah

Gambar 4.1 Dekomposisi Fungsi

F. Hirarki Fungsi Sistem


Sistem hierarki fungsi merupakan alat yang paling mudah untuk
memahami masalah-masalah yang kompleks, dimana masalah tersebut
diuaraikan ke dalam elemen – elemen yang bersangkutan, menyusul
elemen-elemen tersebut secara hierarkis dan akhirnya melakukan penilaian
atas elemen – elemen dalam komponen yang sifatnya homogen dan
menyusun komponen-komponen tersebut dalam level hirarki yang tepat.
Hierarki fungsi pada sistem ini terdapat 2 (dua) yaitu hierarki sistem admin
dan guru.
39

1. Hierarki Fungsi Sistem Admin

Menu Utama

Master Data

Pendaftaran Data Siswa Nilai Guru Pencapaian Ekstrakurikuler

Gambar 4.2 Hierarki Fungsi Sistem Admin

2. Hierarki Fungsi Sistem Guru

Menu Utama

Pendaftaran Data Siswa Nilai Guru Pencapaian Ekstrakurikuler

Gambar 4.3 Hierarki Fungsi Sistem Guru


40

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


1. Analisa Masukan (Input)
a. Nama Masukan : Data Siswa
Tujuan : Sistem
Fungsi : untuk memasukkan data siswa
Sumber : siswa
Media : file
Isi : no induk, NISN, nama, jenis kelamin, tempat
tanggal lahir, agama, kelas, no hp, alamat,
kewarganegaraan, anak ke, jumlah saudara
kandung, jumlah saudara angkat, status orang tua,
keterangan tinggal, jarak rumah ke sekolah,
bahasa
Keterangan : berisikan data informasi siswa

b. Nama Masukan : Data Guru


Tujuan : Sistem
Fungsi : untuk mengetahui data guru
Sumber : guru
Media : file
Isi : NIP, NUPTK, nama, jenis kelamin, telepon,
alamat
Keterangan : berisikan data guru

c. Nama Masukan : Pendaftaran


Tujuan : Sistem
Fungsi : untuk memasukkan data pendaftaran siswa baru
Sumber : siswa
Media : file
41

Isi : no pendaftaran, nama, nisn, alamat, asal sekolah,


jenis kelamin, tempat tanggal lahir, nama ayah,
pekerjaan ayah, nama ibu, pekerjaan ibu
Keterangan : berisikan data pendaftaran siswa baru

d. Nama Masukan : Absensi Siswa


Tujuan : Sistem
Fungsi : untuk mengetahui data absensi siswa
Sumber : siswa
Media : file
Isi : nama, kelas, keterangan, waktu
Keterangan : berisikan data absensi siswa

e. Nama Masukan : Absensi Guru


Tujuan : Sistem
Fungsi : untuk mengetahui data absensi guru
Sumber : guru
Media : file
Isi : nama, keterangan, waktu
Keterangan : berisikan data absensi guru

f. Nama Masukan : Penilaian


Tujuan : Sistem
Fungsi : untuk mengetahui data penilaian setiap siswa
Sumber : guru
Media : file
Isi : no induk, nama, kelas, mata pelajaran, nilai
harian, nilai tugas, nilai uts, nilai uas
Keterangan : berisikan data nilai siswa

g. Nama Masukan : Pencapaian


42

Tujuan : Sistem
Fungsi : untuk mengetahui data pencapaian setiap siswa
Sumber : guru
Media : file
Isi : no induk, nama, kelas, sikap, pengetahuan,
keterampilan, ekstrakurikuler
Keterangan : berisikan data pencapaian siswa

h. Nama Masukan : Ekstrakurikuler


Tujuan : Sistem
Fungsi : untuk mengetahui data ekstrakurikuler
Sumber : siswa
Media : file
Isi : no induk, nama, kelas, no telepon, jenis kelamin,
alamat, ekstrakurikuler, sabuk, tingkat
Keterangan : berisikan data ekstrakurikuler siswa
2. Proses
a. Proses Pendataan Siswa
Pada proses ini dilakukan pendataan siswa dan menginput data
pribadi setiap siswa seperti no induk, NISN, nama, jenis kelamin,
tempat tanggal lahir, agama, kelas, no hp, alamat, kewarganegaraan,
anak ke, jumlah saudara kandung, jumlah saudara angkat, status
orang tua, keterangan tinggal, jarak rumah ke sekolah, dan bahasa.
b. Proses Pendataan Guru
Proses ini dilakukan pendataan guru yang mengajar pada sekolah MI
Al – Ikhlas Pasir Mukti dan menginput data guru tersebut seperti
NIP, NUPTK, nama, dan lain sebagainya.
c. Proses Pendataan Pendaftaran
Proses ini dilakukan pendataan pendaftaran siswa baru yang ingin
masuk pada sekolah MI Al – Ikhlas Pasir Mukti dan menginput data-
data yang berkenan pada data pendaftaran.
43

d. Proses Pendataan Absensi Siswa dan Guru


Pada proses ini dilakukan pendataan absensi guru maupun murid
yang hadir pada sekolah MI Al – Ikhlas Pasir Mukti dan menginput
data tersebut seperti nama, waktu, keterangan dan kelas khusus
untuk siswa.
e. Proses Pendataan Penilaian
Pada proses ini dilakukan pendataan nilai siswa dan menginput nilai-
nilai seperti nilai harian, tugas, uts dan uas.
f. Proses Pendataan Pencapaian
Pada proses ini dilakukan pendataan pencapaian siswa dan
menginput data pencapaian siswa seperti sikap, pengetahuan dan
lain sebagainya.
g. Proses Pendataan Ekstrakurikuler
Pada proses ini dilakukan pendataan ekstrakurikuler yang siswa
ikuti dan menginput nya pada sistem data tersebut seperti nama,
sabuk, tingkat dan lain sebagainya.
h. Proses Pencetakan Pencapaian Per siswa
Proses ini dilakukan pencetakan data pencapaian per siswa.
i. Proses Laporan
Proses ini dilakukan pembuatan laporan data siswa, laporan data
guru, laporan data pendaftaran, laporan data absensi guru, laporan
absensi siswa, laporan penilaian, laporan pencapaian, dan laporan
ekstrakurikuler.

3. Keluaran (Ouput)
a. Nama Keluaran : Pencapaian Persiswa
Tujuan : siswa
Fungsi : mencetak laporan pencapaian siswa
Sumber : database
Media : IReport
Isi : no induk, nama, kelas, sikap, pengetahuan,
44

keterampilan, ekstrakuriker
Keterangan : detail data pencapaian siswa yang dilaporkan
setiap semester
b. Nama Keluaran : Laporan Data Siswa
Tujuan : kepala sekolah, guru
Fungsi : mencetak laporan data siswa
Sumber : database
Media : IReport
Isi : no induk, NISN, nama, jenis kelamin, tempat
tanggal lahir, agama, kelas, no hp, alamat,
kewarganegaraan, anak ke, jumlah saudara
kandung, jumlah saudara angkat, status orang tua,
keterangan tinggal, jarak rumah ke sekolah,
bahasa
Keterangan : detail data siswa yang ada pada sekolah MI Al –
Ikhlas Pasir Mukti
c. Nama Keluaran : Laporan Data Guru
Tujuan : kepala sekolah
Fungsi : mencetak laporan data guru
Sumber : database
Media : IReport
Isi : NIP, NUPTK, nama, jenis kelamin, telepon, alamat
Keterangan : detail data guru yang mengajar di sekolah

d. Nama Keluaran : Laporan Pendaftaran Siswa


Tujuan : kepala sekolah
Fungsi : mencetak laporan data pendaftaran siswa baru
Sumber : database
Media : IReport
45

Isi : no pendaftaran, nama, nisn, alamat, asal sekolah,


jenis kelamin, tempat tanggal lahir, nama ayah,
pekerjaan ayah, nama ibu, pekerjaan ibu.
Keterangan : detail data siswa baru yang mendaftaran pada
sekolah MI Al – Ikhlas Pasir Mukti
e. Nama Keluaran : Laporan Absensi Siswa
Tujuan : kepala sekolah, wali kelas
Fungsi : mencetak laporan rekapan absensi siswa
Sumber : database
Media : IReport
Isi : nama, kelas, keterangan, waktu
Keterangan : detail data absensi siswa yang hadir maupun izin
f. Nama Keluaran : Laporan Absensi Guru
Tujuan : kepala sekolah
Fungsi : mencetak laporan rekapan absensi guru
Sumber : database
Media : IReport
Isi : nama, keterangan, waktu
Keterangan : detail data absensi guru yang hadir maupun izin
pada sekolah
g. Nama Keluaran : Laporan Penilaian
Tujuan : kepala sekolah, wali kelas
Fungsi : mencetak laporan penilaian siswa
Sumber : database
Media : IReport
Isi : No induk, nama, kelas, mata pelajaran, nilai
harian, nilai tugas, nilai uts, nilai uas
Keterangan : detail penilaian siswa per mapper dan perkelas
h. Nama Keluaran : Laporan Ekstrakurikuler
Tujuan : kepala sekolah
Fungsi : mencetak laporan ekstrakurikuler
46

Sumber : database
Media : IReport
Isi : No induk, nama, kelas, no telepon, jenis kelamin,
alamat, ekstrakurikuler, sabuk, tingkat
Keterangan : detail data siswa yang mengikuti ekstrakurikuler

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


1. Diagram Konteks

Gambar 4.4 Diagram Konteks


47

2. Diagram Nol

Gambar 4.5 Diagram Nol


48

3. Diagram Rinci
a. Diagram Rinci Proses 1.0

Gambar 4.6 Diagram Rinci Proses 1.0


49

b. Diagram Rinci Proses 2.0

Gambar 4.7 Diagram Rinci Proses 2.0


50

c. Diagram Rinci Proses 3.0

Gambar 4.8 Diagram Rinci Proses 3.0


51

d. Diagram Rinci Proses 4.0

Gambar 4.9 Diagram Rinci Proses 4.0


52

e. Diagram Rinci Proses 5.0

Gambar 4.10 Diagram Rinci Proses 5.0


53

I. Kamus Data
1. Kamus Data Masukan & Keluaran
a. Nama Arus Data : Sistem Aplikasi MI Al – Ikhlas Pasir Mukti
Alias : Alur Aplikasi Sekolah
Bentuk Data : Tampilan dalam layar
Arus Data : - Admin

- Siswa

- Guru

- Kepala Sekolah

Penjelasan : Penjelasan dari pendaftaran siswa baru menjadi


siswa baru dan ketika data siswa sudah masuk ke
guru, maka guru akan memberikan penilaian yang
nantinya penilaian tersebut akan diberikan ke siswa

Periode : Setiap ada siswa baru yang mendaftar di sekolah MI Al


– Ikhlas Pasir Mukti

Volume : volume rata-rata harian adalah 100 dan volume puncak


adalah 150

Struktur Data :

1) Pendaftaran terdiri dari item :


Nopendaftaran + Nama + NISN + Alamat + Asal Sekolah +
Jenis Kelamin + Tempat Lahir + Tanggal Lahir + Bulan
Lahir + Tahun Lahir + Nama Ayah + Pekerjaan Ayah +
Nama Ibu + Pekerjaan Ibu
- Nopendafataran = *terdiri dari angka maksimal 20
digit*
- Nama = *Maksimal 50 karakter*
- NISN = *Maksimal 15 digit*
- Alamat = *Maksimal 50 karakter*
54

- Asal sekolah = *Maksimal 50 karakter*


- Jenis Kelamin = [Laki-Laki|Perempuan]
- Tempat Lahir = *Maksimal 50 karakter*
- Tanggal Lahir =
[1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|2
2|23|24|25|26|27|28|29|30|31]
- Bulan Lahir =
[Januari|Februari|Maret|April|Mei|Juni|Juli|Agustus|Se
ptember|Oktober|November|Desember]
- Tahun Lahir =
[2000|2001|2002|2003|2004|2005|2006|2007|2008|200
9|2010|2011|2012|2013|2014|2015|2016|2017|2018|20
19|2020|2021|2022]
- Nama Ayah = *Maksimal 50 karakter*
- Pekerjaan Ayah = *maksimal 50 karakter*
- Nama Ibu = *Maksimal 50 karakter*
- Pekerjaan Ibu = *Maksimal 50 karakter*

2) Data Siswa terdiri dari :


No Induk Siswa + NISN + Nama Lengkap + Jenis Kelamin
+ Tempat Tanggal Lahir + Agama + Kelas + No HP +
Alamat + Kewarganegaraan + Anak Ke + Jml Saudara
Kandung + Jml Saudara Angkat + Status Orang Tua +
Keterangan Tinggal + Jarak Rumah – Sekolah + Bahasa
Sehari-hari
- No Induk Siswa = *Maksimal 20 digit*
- NISN = *Maksimal 20 digit*
- Nama Lengkap = *Maksimal 50 karakter*
- Jenis Kelamin = [Laki-Laki|Perempuan]
- Tempat Tanggal Lahir = *Maksimal 50 karakter*
[1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|2
55

2|23|24|25|26|27|28|29|30|31]
[Januari|Februari|Maret|April|Mei|Juni|Juli|Agustus|Se
ptember|Oktober|November|Desember]
[2000|2001|2002|2003|2004|2005|2006|2007|2008|200
9|2010|2011|2012|2013|2014|2015|2016|2017|2018|20
19|2020|2021|2022]
- Agama = *Maksimal 50 karakter*
- Kelas = [1|2|3|4|5|6]
- No HP = *Maksimal 15 digit*
- Alamat = *Maksimal 50 karakter*
- Kewarganegaraan = [WNA|WNI]
- Anak Ke = *Maksimal 10 digit*
- Jml Saudara Kandung = *Maksimal 10 digit*
- Jml Saudara Angkat = *Maksimal 10 digit*
- Status Orang Tua = [Orang Tua Angkat|Orang Tua
Kandung]
- Keterangan Tinggal = *Maksimal 20 karakter*
- Jarak Rumah – Sekolah = *Maksimal 5 Digit*
- Bahasa Sehari-hari = *Maksimal 20 Karakter*
3) Pencapaian terdiri dari :
No Induk + Nama + Kelas + Sikap + Pengetahuan +
Keterampilan + Ekstrakurikuler
- No Induk = *Maksimal 20 digit*
- Nama = *Maksimal 50 karakter*
- Kelas = [1|2|3|4|5|6]
- Sikap = *Maksimal 20 karakter*
- Pengetahuan = *Maksimal 20 karakter*
- Keterampilan = *Maksimal 20 karakter*
- Ekstrakurikuler = *Maksimal 20 Karakter*
4) Data Guru terdiri dari :
NIP + NUPTK + nama + jenis kelamin + telepon + alamat
56

− NIP = *Maksimal 10 digit*


− NUPTK = *Maksimal 10 digit*
− Nama = *Maksimal 30 karakter*
− Jenis kelamin = [perempuan | laki-laki]
− Telepon = *Maksimal 20 digit*
− Alamat = *Maksimal 50 karakter*
5) Data Absensi Siswa terdiri dari :
Nama + kelas + keterangan + waktu
− Nama = *Maksimal 30 karakter*
− Kelas = [1|2|3|4|5|6]
− Keterangan = [hadir|sakit|izin]
− Waktu = *berisikan tanggal, bulan dan tahun*
6) Data Absensi Guru terdiri dari :
Nama + keterangan + waktu
− Nama = *Maksimal 30 karakter*
− Keterangan = [hadir|sakit|izin]
− Waktu = *berisikan tanggal, bulan dan tahun*
7) Ekstrakurikuler terdiri dari :
No induk + nama + kelas + no telepon + jenis kelamin +
alamat + ekstrakurikuler + sabuk + tingkat
- No Induk = *Maksimal 20 digit*
- Nama = *Maksimal 50 karakter*
- Kelas = [1|2|3|4|5|6]
- No telepon = *Maksimal 20 digit*
- Jenis kelamin = *Maksimal 20 karakter*
- Alamat = *Maksimal 100 karakter*
- Ekstrakurikuler = [pencak silat]
- Sabuk = [putih|kuning|oranye|hijau|biru|coklat|hitam]
- Tingkat = [1|2|3|4]
57

8) Nilai
No induk + nama + kelas + mata pelajaran + nilai harian +
nilai tugas + nilai uts + nilai uas
− No Induk = *Maksimal 20 digit*
− Nama = *Maksimal 50 karakter*
− Kelas = [1|2|3|4|5|6]
− Mata pelajaran = [b.indonesia|matematika|b.inggris]
− Nilai harian = *Maksimal 100 digit*
− Nilai tugas = *Maksimal 100 digit*
− Nilai uts = *Maksimal 100 digit*
− Nilai uas = *Maksimal 100 digit*

J. Spesifikasi Proses
1. Nama Proses : Modul Pendataan Siswa
Jenis : Pendataan Data Diri Siswa
Masukan : Form Data Diri Siswa
Keluaran : Form Data Diri Siswa
Deskripsi : Siswa memberi data diri ke Admin
2. Nama Proses : Modul Guru
Jenis : Pendataan Guru
Masukan : Form Data Guru
Keluaran : Form Data Guru
Deskripsi : Guru memberikan data diri ke Admin
3. Nama Proses : Modul Pendafataran
Jenis : Pendataan Siswa Baru
Masukan : Form Pendaftaran Calon Siswa
Keluaran : Form Pendaftaran Calon Siswa
Deskripsi : Calon Siswa memberi data diri ke Admin
4. Nama Proses : Modul Absensi Siswa
Jenis : Pendataan Absensi Siswa
Masukan : Form Absensi Siswa
58

Keluaran : Form Absensi Siswa


Deskripsi : Siswa melakukan Asbensi lalu data tersebut diserahkan ke
Admin
5. Nama Proses : Modul Absensi Guru
Jenis : Pendataan Absensi Guru
Masukan : Form Absensi Guru
Keluaran : Form Absensi Guru
Deskripsi : Guru Melakukan Absensi lalu data tersebut diberikan ke
Admin
6. Nama Proses : Modul Nilai
Jenis : Pendataan Nilai Siswa
Masukan : Form Nilai
Keluaran : Form Nilai
Deskripsi : Guru memberikan data Nilai Siswa ke Admin
7. Nama Proses : Modul Rapor
Jenis : Pendataan Rapor
Masukan : Form Rapor
Keluaran : Form Rapor
Deskripsi : Guru Memberikan data Rapor ke Admin
8. Nama Proses : Modul Ekstrakurikuler
Jenis : Pendataan Ekstrakurikuler
Masukan : Form Ekstrakurikuler
Keluaran : Form Ekstrakurikuler
Deskripsi : Siswa memberikan data Ekstrakurikuler ke Admin
9. Nama Proses : Modul Laporan Data Siswa
Jenis : Laporan Data Diri Siswa
Masukan : Form Data Diri Siswa
Keluaran : Cetakan Laporan Data Diri Siswa
Deskripsi : Siswa memberi data diri ke Admin lalu dicetak data
laporannya
59

10. Nama Proses : Modul Laporan Data Guru


Jenis : Laporan Pendataan Guru
Masukan : Form Data Guru
Keluaran : Cetakan Laporan Data Guru
Deskripsi : Guru memberikan data diri ke Admin lalu dicetak data
laporannya
11. Nama Proses : Modul Laporan Pendafataran
Jenis : Laporan Pendaftaran Siswa Baru
Masukan : Form Pendaftaran Siswa
Keluaran : Cetakan Laporan Pendaftaran Siswa
Deskripsi : Calon Siswa memberi data diri ke Admin lalu dicetak data
laporannya
12. Nama Proses : Modul Laporan Absensi Siswa
Jenis : Laporan Absensi Siswa
Masukan : Form Absensi Siswa
Keluaran : Cetakan Laporan Absensi Siswa
Deskripsi : Siswa melakukan Asbensi lalu data tersebut diserahkan ke
Admin lalu dicetak laporannya
13. Nama Proses : Modul Laporan Absensi Guru
Jenis : Laporan Absensi Guru
Masukan : Form Absensi Guru
Keluaran : Cetakan Laporan Absensi Guru
Deskripsi : Guru Melakukan Absensi lalu data tersebut diberikan ke
Admin lalu dicetak laporannya
14. Nama Proses : Modul Laporan Nilai
Jenis : Laporan Nilai Siswa
Masukan : Form Nilai
Keluaran : Cetakan Laporan Nilai
Deskripsi : Guru memberikan data Nilai Siswa ke Admin lalu dicetak
laporannya
60

15. Nama Proses : Modul Laporan Rapor


Jenis : Laporan Data Rapor
Masukan : Form Rapor
Keluaran : Cetakan Laporan Rapor
Deskripsi : Guru Memberikan data Rapor ke Admin lalu dicetak
laporannya
16. Nama Proses : Modul Laporan Ekstrakurikuler
Jenis : Laporan Data Ekstrakurikuler
Masukan : Form Ekstrakurikuler
Keluaran : Cetakan Laporan Data Ekstrakurikuler
Deskripsi : Siswa memberikan data Ekstrakurikuler ke Admin lalu
dicetak laporannya.

K. Bagan Terstruktur
Bagan terstuktur berfungsi untuk mendefinisikan dan
mengilustrasikan organisasi dari sistem informasi secara berjenjang dalam
bentuk modul dan sub modul. Bagan terstuktur juga menunjukan hubungan
elemen data dan elemen control antara hubungan modulnya serta dapat
memberikan penjelasan lengkap dari sistem, dipandang dari elemen data,
elemen control, modul dan hubungan antar modul.
1. Bagan Terstruktur Rinci Proses Pendaftaran Siswa

Pendaftaran
Siswa

Masukan simpan data


data calon calon siswa
siswa

Gambar 4.11 Bagan Terstruktur Proses Pendaftaran Siswa


61

2. Bagan Terstuktur Rinci Proses Pendataan Siswa

Pendataan
Siswa

Masukan simpan data


data siswa siswa

Gambar 4.12 Bagan Terstruktur Proses Pendataan Siswa

3. Bagan Terstruktur Rinci Proses Pendataan Guru

Pendataan
Guru

Masukan simpan data


data guru guru

Gambar 4.13 Bagan Terstruktur Proses Pendataan Guru

4. Bagan Terstruktur Rinci Proses Absensi Siswa

Absensi
Siswa

Masukan simpan data


absen siswa absensi
siswa
62

Gambar 4.14 Bagan Terstruktur Proses Absensi Siswa

5. Bagan Terstruktur Rinci Proses Absensi Guru

Absensi
Guru

Masukan simpan data


absen guru absensi
guru

Gambar 4.15 Bagan Terstruktur Proses Absensi Guru

6. Bagan Terstruktur Rinci Proses Nilai

Nilai Siswa

Masukan Simpan
Nilai siswa Nilai siswa

Gambar 4.16 Bagan Terstruktur Proses Nilai


63

7. Bagan Terstruktur Rinci Proses Ekstrakurikuler

Ekstrakurik
uler

Masukan data Simpan data


ekstrakurikuler ekstrakurikuler

Gambar 4.17 Bagan Terstruktur Proses Ekstrakurikuler

8. Bagan Terstruktur Proses Rapor

Rapor

Masukan simpan data


data Rapor Rapor

Gambar 4.18 Bagan Terstruktur Proses Rapor


64

9. Bagan Terstruktur Rinci Proses Laporan Pendaftaran Siswa


Cetak Laporan
Pendaftaran
Siswa

Masukan Laporan
data calon data calon
siswa siswa

Gambar 4.19 Bagan terstruktur Laporan Pendaftaran Siswa

10. Bagan Terstuktur Rinci Proses Laporan Pendataan Siswa

Cetak Laporan
Pendataan
Siswa

Masukan Laporan
data siswa data siswa

Gambar 4.20 Bagan Terstruktur Laporan Pendataan Siswa


65

11. Bagan Terstruktur Rinci Proses Laporan Pendataan Guru

Cetak Laporan
Pendataan
Guru

Masukan Laporan
data guru data guru

Gambar 4.21 Bagan Terstruktur Laporan Pendataan Guru

12. Bagan Terstruktur Rinci Proses Laporan Absensi Siswa

Cetak
Laporan
Absensi Siswa

Laporan
Masukan
data absensi
absen siswa
siswa

Gambar 4.22 Bagan Terstruktur Laporan Absensi Siswa


66

13. Bagan Terstruktur Rinci Proses Laporan Absensi Guru

Cetak Laporan
Absensi Guru

Masukan Laporan data


absen guru absensi guru

Gambar 4.23 Bagan Terstruktur Laporan Absensi Guru

14. Bagan Terstruktur Rinci Proses Laporan Nilai

Cetak
Laporan
Nilai Siswa

Masukan Laporan
Nilai siswa Nilai siswa

Gambar 4.24 Bagan Terstruktur Laporan Nilai


67

15. Bagan Terstruktur Rinci Proses Laporan Ekstrakurikuler

Cetak Laporan
Ekstrakurikuler

Gambar

Masukan data Laporan data


ekstrakurikuler ekstrakurikuler

4.25Bagan Terstruktur Laporan Ekstrakurikuler

16. Bagan Terstruktur Proses Laporan Rapor

Cetak
Laporan
Rapor

Masukan Laporan
data Rapor data Rapor

Gambar 4.26 Bagan Terstruktur Laporan Rapor


68

L. Spesifikasi Modul
1. Modul Pendataan Siswa
Begin
Do masukkan data siswa
Baca data siswa
Simpan ke file siswa
End do
End

2. Modul Pendataan Guru


Begin
Do masukkan data guru
Baca data guru
Simpan ke file guru
End do
End

3. Modul Pendaftaran
Begin
Do masukkan data pendaftaran
Baca data pendaftaran
Simpan ke file pendaftaran
End do
End

4. Modul Absensi
a. Siswa
Begin
Do masukkan data absen siswa
Baca data absen siswa
Simpan ke file absen siswa
69

End do
End

b. Guru
Begin
Do masukkan data absen guru
Baca data absen guru
Simpan ke file absen guru
End do
End

5. Modul Nilai
Begin
Do masukkan data nilai
Baca data nilai
Simpan ke file nilai
End do
End

6. Modul Pencapaian
Begin
Do masukkan data pencapaian
Baca data pencapaian
Simpan ke file pencapaian
End do
End

7. Modul Ekstrakurikuler
Begin
Do masukkan data ekstrakuikuler
Baca data ekstrakurikuler
70

Simpan ke file ekstrakurikuler


End do
End

8. Modul Laporan Data Siswa


Begin
Do tampilkan data siswa
Baca file siswa
Cetak data siswa
End do
End

9. Modul Laporan Data Guru


Begin
Do tampilkan data guru
Baca file guru
Cetak data guru
End do
End

10. Modul Laporan Pendaftaran


Begin
Do tampilkan data pendaftaran
Baca file pendaftaran
Cetak data pendaftaran
End do
End

11. Modul Laporan Absensi


a. Siswa
Begin
71

Do tampilkan data absensi siswa


Baca file absensi siswa
Cetak data absensi siswa
End do
End

b. Guru
Begin
Do tampilkan data absensi guru
Baca file absensi guru
Cetak data absensi guru
End do
End

12. Modul Laporan Nilai


Begin
Do tampilkan data nilai
Baca file nilai
Cetak data nilai
End do
End

13. Modul Laporan Pencapaian


Begin
Do tampilkan data pencapaian
Baca file pencapaian
Cetak data pencapaian
End do
End
72

14. Modul Laporan Ekstrakurikuler


Begin
Do tampilkan data ekstrakurikuler
Baca file ekstrakurikuler
Cetak data ekstrakurikuler
End do
End

M. Analisa Basis Data


1. ERD (Entity Relationship Diagram)
ERD merupakan model jaringan data yang menekankan pada
struktur-struktur dan relationship data. ERD sistem informasi dapat
terlihat jelas pada gambar berikut :

Gambar 4.27 Entity Relationship Diagram (ERD)


73

2. Spesifikasi File Basis Data


Tujuan dari perancangan struktur file ini yaitu untuk menentukan
nama filed, tipe filed dari file tersebut yang ada pada file, adapun
struktur file tersebut yaitu :
a. Tabel Data Siswa
Nama Tabel : input_data_siswa
Primary Key : no induk
Jumlah Field : 19

Tabel 4.1 Tabel Data Siswa


(sumber : penulis 2022)

b. Tabel Data Guru


Nama Tabel : data_guru
Primary Key : nip
Jumlah Field : 6
74

Tabel 4.2 Tabel Data Guru


(sumber : penulis 2022)

c. Tabel Pendaftaran
Nama Tabel : daftar
Jumlah Field : 14
Tabel 4.3 Tabel Pendaftaran
(sumber : penulis 2022)
75

d. Tabel Absensi Siswa


Nama Tabel : absen
Jumlah field : 4
Tabel 4.4 Tabel Absensi Siswa
(sumber : penulis 2022)

e. Tabel Absensi Guru


Nama Tabel : absen_guru
Jumlah Field : 3
Tabel 4.5 Tabel Absensi Guru
(sumber : penulis 2022)

f. Tabel Nilai
Nama Tabel : input_nilai_siswa
Primary Key : no induk
Jumlah Field : 8
76

Tabel 4.6 Tabel Nilai


(sumber : penulis 2022)

g. Tabel Pencapaian
Nama Tabel : rapor
Primary Key : no induk
Jumlah Field : 7

Tabel 4.7 Tabel Pencapaian


(sumber : penulis 2022)

h. Tabel Ekstrakurikuler
Nama Tabel : data_eskul
Primary Key : no induk
Jumlah Field : 9
77

Tabel 4.8 Tabel Ekstrakurikuler


(sumber : penulis 2022)

N. Rancangan Antar Muka


Program dapat didefinisikan sebagai kumpulan dari intruksi-intruksi
atau perintah-perintah terperinci yang sudah disiapkan oleh komputer
sehingga dapat melakukan fungsi sesuai dengan yang telah ditentukan.
Tujuan dari pembuatan program ini adalah untuk mempermudah dan
mempercepat aktivitas yang berhubungan dengan pengolahan data dan
untuk membentuk suatu sistem yang lebih baik.
1. Rancangan Layer
Dalam memberikan kemudahan baik kepada user ataupun pihak
yang membutuhkan informasi, disini kami merancang suatu program
yang dapat memberikan kemudahan dan cepat serta akurat dari sistem
informasi ini.
78

Menu Utama

Home Master Proses Laporan

Rapor Data Siswa


Login Data Siswa

Pendaftaran Data Guru


Data Guru aster
Logout
Nilai Data Absensi
Data
Esktrakurikul
Absensi Data Nilai
er

Data Rapor

Data
Ekstrakurikuler

Data
Pendaftaran

Gambar 4.28 Rancangan Layer

2. Rancangan Form Masukan


Perancangan input atau masukan yaitu desain yang dirancang
untuk menerima masukan dari pengguna sistem, rancangan input ini
harus dapat memberikan kejelasan dari pemakai baik dari bentuk
maupun masukan-masukan yang harus diisi. Perancangan input berguna
untuk media pencatatan data yang merupakan sumber data untuk
pengolahan data.
79

a. Login

Gambar 4.29 Rancangan Form Masukan Login

b. Menu Utama

Gambar 4.30 Rancangan Form Masukan Menu Utama


80

c. Form Data Siswa

Gambar 4.31 Rancangan Form Masukan Form Data Siswa

d. Form Pendaftaran

Gambar 4.32 Rancangan Form Masukan Form Pendaftaran

e. Form Data Guru


81

Gambar 4.33 Rancangan Form Masukan Form Data Guru

f. Form absensi
1) Absen kelas

Gambar 4.34 Rancangan Form Masukan Absen Kelas

2) Absen Guru
82

Gambar 4.35 Rancangan Form Masukan Absen Guru

g. Form Nilai

Gambar 4.36 Rancangan Form Masukan Form Nilai

h. Form Pencapaian
83

Gambar 4.37 Rancangan Form Masukan Form Pencapaian

i. Form Ekstrakurikuler

Gambar 4.38 Rancangan Form Masukan Form Ekstrakurikuler

3. Rancangan Keluaran
84

Perancangan output atau keluaran merupakan hasil setelah data


diolah dan kemudian dicetak. Berikut ini rancangan output yang
dihasilkan dari perancangan sistem informasi MI Al – Ikhlas Pasir
Mukti :
a. Laporan Data Siswa

Gambar 4.39 Rancangan Form Keluaran Laporan Data Siswa

b. Laporan Pendaftaran Siswa

Gambar 4.40 Rancangan Form Keluaran Laporan Pendaftaran Siswa

c. Laporan Absensi
85

1) Absen Guru

Gambar 4.41 Rancangan Form Keluaran Laporan Absen Guru

2) Absen Siswa

Gambar 4.42 Rancangan Form Keluaran Laporan Absen Siswa


86

d. Laporan Ekstrakurikuler

Gambar 4.43 Rancangan Form Keluaran Laporan Ekstrakurikuler

e. Laporan Nilai

Gambar 4.44 Rancangan Form Keluaran Laporan Nilai


87

f. Laporan Data Guru

Gambar 4.45 Rancangan Form Keluaran Laporan Data Guru

g. Laporan Pencapaian Per Siswa

Gambar 4.46 Rancangan Form Keluaran Laporan Pencapaian Per


Siswa

BAB V
88

PENUTUP

A. Kesimpulan
Dalam penulisan laporan diuraikan bagaimana Aplikasi Pembantu
Sekolah MI (APASI) menjadi aplikasi yang akan dapat membantu proses
pengolahan data pada sekolah MI Al – Ikhlas Pasir Mukti. Aplikasi
dirancang dengan menggunakan Diagram Dekomposisi, Diagram Arus
Data, dan ERD yang memiliki 4 entitas, yaitu Admin, Guru, Kepala Sekolah
dan Siswa. Pada ERD terdapat 7 tabel data yaitu pendaftaran, data siswa,
pencapaian, nilai, guru, ekstrakurikuler, dan absen.
Pembuatan aplikasi ini menggunakan bahasa pemograman java dan
menggunakan database MySQL. Dalam pembuatan User Interface
menggunakan bahasa java dengan software netbeans dilakukan dengan
memanfaatkan pallete yang tersedia dalam software.
Dalam pembuatan aplikasi juga menggunakan database MySQL
melalui software open source phpMyAdmin karena mudah dalam
penggunaannya. Database digunakan untuk menyimpan data yang telah di-
input melalui form yang telah dibuat menggunakan java.Database juga
digunakan untuk memberikan output berupa data yang telah disimpan.
Dengan dibuatnya Aplikasi Pembantu Sekolah MI (APASI), MI Al
– Ikhlas Pasir Mukti dapat dengan mudah menyimpan data siswa dan guru.
Penggunaan kertas dalam penyimpanan data dapat berkurang serta
kemungkinan data rusak dan hilang dapat teratasi.
89

B. Saran
Dalam perancangan aplikasi ini, diharapkan aplikasi dapat
dimanfaatkan dengan maksimal sesuai dengan tujuan dari pembuatan
Aplikasi Pembantu Sekolah MI yaitu untuk membantu sekolah MI Al –
Ikhlas Pasir Mukti dalam menyimpan data siswa.
Untuk itu saran yang dapat diberikan untuk kemajuan sistem
informasi sekolah pada MI Al – Ikhlas Pasir Mukti adalah :
1. Penyediaan perangkat komputer untuk mempermudah proses
penyimpanan data
2. Tersedianya tenaga kerja yang memahami sistem informasi ini agar
dapat berguna sebagaimana mestinnya.
3. Terdapat pelatihan bagi para pengajar mengenai sistem informasi
digital, tentang bagaimana sistem dijalankan dan cara
menggunakannya.
4. Melakukan back – up atau penyalinan data untuk menghindari
kejadian yang tidak diinginkan.
5. Melakukan perawatan terhadap komputer dan melakukan
pengecekan untuk mencegah virus masuk kedalam perangkat
komputer dan merusak data.
90

DAFTAR PUSTAKA

Charishuddin, Muhammad Naufal. 2013. LKP : Rancang Bangun Aplikasi


Monitoring Kerusakan Hardware Pada PT. Pos Indonesia Area VII Teknologi
Jawa Timur Berbasis Web. Diunduh 14 Juni 2022 dari
https://repository.dinamika.ac.id/id/eprint/87/6/BAB%20III.pdf.

Yuniarto, Saiful Rahman. 2012. Hardware Komputer dan Fungsinya, Malang :


Perpustakaan Universitas Brawijaya.

Wahyudin, Irvin. 2014. Aplikasi pembelajaran Bahasa Inggris dengan metode


multimedia berbasis android untuk pendidikan anak usia dini (PAUD)
Permata Hati Bandung, Bandung : Perpustakaan UNIKOM .

The Jadul's, Obeit's. 2011. Keuntungan dan Kelemahan Jaringan. Diakses pada
tanggal 14 Juni 2022 pukul 01.00 dari
https://teibowsblogs.blogspot.com/2011/11/keuntungan-dan-kelemahan-
jaringan.html.

Pengetahuankita. 2016. Pengertian Tentang Commercial Software, Freeware,


Shareware, Firmware, Free Software, Open Source Software, dan Malware.
Diakses pada tanggal 14 Juni 2022 pukul 01.00 dari https://pengetahuankita-
45.blogspot.com/2016/03/assalamualaikumwr.html.

Admin. 2017. Sejarah Berdirinya Madrasah di Indonesia. Diakses pada


tanggal 1 Juli 2022 pukul 13.00 dari
https://www.maassalamiyah.sch.id/blog/quicquid-enima-sapientia-proficiscitur-
idconti-
copy/#:~:text=Sejarah%20mencatat%2C%20madrasah%20pertama%20kali%20b
erdiri%20di%20Sumatra%2C%20Madrasah%20Adabiyah,sebagai%20lanjutan%2
0dari%20Madrasah%20Schoel.
91

Rauf, Haedar. 2011. Tugas dan Wewenang Kepala Sekolah. Diakses pada
tanggal 1 Juli 2022 pukul 13.00 dari
https://haedarrauf.wordpress.com/2011/10/21/tugas-dan-wewenang-kepala-
sekolah/.

Sudrajat, Akhmad. 2008. Tugas Pokok dan Fungsi Pengawas Satuan


Pendidikan. Diakses pada tanggal 1 Juli 2022 pukul 13.00 dari
https://akhmadsudrajat.wordpress.com/2008/04/08/tugas-pokok-fungsi-hak-dan-
wewenang-pengawas-sekolahsatuan-pendidikan/.

Syarifah, Mushlihatun. 2016. Tugas Operator Sekolah / Dapodik. Diakses pada


tanggal 1 Juli 2022 pukul 13.00 dari https://www.msyarifah.my.id/tugas-operator-
sekolahdapodik-2/.

Wa, Kimi. 2022. Tugas dan Wewenang Guru. Diakses pada tanggal 1 Juli 2022
pukul 13.00 dari https://www.scribd.com/document/379178129/Tugas-Dan-
Wewenang-Guru.
Sendari, Anugerah Ayu. 2022. Pengertian Pencak Silat, Sejarah dan
Alirannya. Diakses pada tanggal 1 Juli 2022 pukul 13.00 dari
https://hot.liputan6.com/read/4860409/pengertian-pencak-silat-sejarah-dan-
alirannya#:~:text=Pencak%20Silat%20adalah%20seni%20bela,ciri%20khas%20P
encak%20Silatnya%20sendiri.
92

LISTING PROGRAM

A. koneksi.java
1. package controller;
2.
3.
4. import java.sql.*;
5. import javax.swing.JOptionPane;
6.
7. public class koneksi {
8. private static Connection koneksi;
9. public static Connection getKoneksi(){
10. if(koneksi==null){
11. try{
12. String url;
13. url = "jdbc:mysql://localhost:3306/db apasi";
14. String username = "root";
15. String password = "";
16. DriverManager.registerDriver(new
com.mysql.jdbc.Driver());
17. koneksi = DriverManager.getConnection(url, username,
password);
18. }catch(SQLException t){
19. JOptionPane.showMessageDialog(null,t);
20. }
21. }return koneksi;
22. } static Object getConnection(){
23. throw new UnsupportedOperationException("not yet
implemented");
24. }
93

25. }

B. menu.java
1. /*
2. * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-
default.txt to change this license
3. * Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to
edit this template
4. */
5. package utama;
6. import absen.kelas_satu;
7. import data.*;
8. import eskul.data_eskul;
9. import nilai.*;
10. import rapor.FormPerkembangan;
11. import guru.*;
12. import java.awt.Graphics2D;
13. import java.awt.Image;
14. import java.awt.RenderingHints;
15. import java.awt.image.BufferedImage;
16. import java.io.File;
17. import javax.imageio.ImageIO;
18. import javax.swing.ImageIcon;
19.
20. /**
21. *
22. * @author LENOVO
23. */
24. public class menu extends javax.swing.JFrame {
25.
94

26. /**
27. * Creates new form menu
28. */
29. public menu() {
30. initComponents();
31.
32. }
33.
34. /**
35. * This method is called from within the constructor to initialize the
form.
36. * WARNING: Do NOT modify this code. The content of this
method is always
37. * regenerated by the Form Editor.
38. */
39. @SuppressWarnings("unchecked")
40. // <editor-fold defaultstate="collapsed" desc="Generated Code">
41. private void initComponents() {
42.
43. jPanel1 = new javax.swing.JPanel();
44. jPanel3 = new javax.swing.JPanel();
45. lbl = new javax.swing.JLabel();
46. jPanel4 = new javax.swing.JPanel();
47. data = new javax.swing.JButton();
48. daftar = new javax.swing.JButton();
49. nilai = new javax.swing.JButton();
50. rapor = new javax.swing.JButton();
51. absen = new javax.swing.JButton();
52. keluar = new javax.swing.JButton();
53. eskul = new javax.swing.JButton();
54. guru = new javax.swing.JButton();
95

55. jLabel2 = new javax.swing.JLabel();


56.
57.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_
CLOSE);
58. setMinimumSize(new java.awt.Dimension(853, 565));
59.
60. jPanel1.setBackground(new java.awt.Color(255, 255, 255));
61.
62. jPanel3.setBackground(new java.awt.Color(255, 255, 255));
63. jPanel3.setForeground(new java.awt.Color(255, 255, 255));
64. jPanel3.setPreferredSize(new java.awt.Dimension(656, 756));
65.
66. lbl.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/utama/sekolah.jpg"))
); // NOI18N
67.
68. javax.swing.GroupLayout jPanel3Layout = new
javax.swing.GroupLayout(jPanel3);
69. jPanel3.setLayout(jPanel3Layout);
70. jPanel3Layout.setHorizontalGroup(
71.
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
72. .addGroup(jPanel3Layout.createSequentialGroup()
73. .addContainerGap()
74. .addComponent(lbl,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
75. .addContainerGap())
76. );
96

77. jPanel3Layout.setVerticalGroup(
78.
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
79. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel3Layout.createSequentialGroup()
80. .addGap(0, 0, 0)
81. .addComponent(lbl,
javax.swing.GroupLayout.PREFERRED_SIZE, 486,
javax.swing.GroupLayout.PREFERRED_SIZE)
82. .addContainerGap())
83. );
84.
85. jPanel4.setBackground(new java.awt.Color(255, 255, 255));
86. jPanel4.setForeground(new java.awt.Color(255, 255, 255));
87.
88. data.setBackground(new java.awt.Color(0, 153, 0));
89. data.setFont(new java.awt.Font("Montserrat", 0, 14)); // NOI18N
90. data.setForeground(new java.awt.Color(255, 255, 255));
91. data.setText("DATA");
92. data.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(0, 153, 0)));
93. data.setBorderPainted(false);
94. data.addActionListener(new java.awt.event.ActionListener() {
95. public void actionPerformed(java.awt.event.ActionEvent evt) {
96. dataActionPerformed(evt);
97. }
98. });
99.
100. daftar.setBackground(new java.awt.Color(0, 153, 0));
97

101. daftar.setFont(new java.awt.Font("Montserrat", 0, 14)); //


NOI18N
102. daftar.setForeground(new java.awt.Color(255, 255, 255));
103. daftar.setText("PENDAFTARAN");
104.
daftar.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(0, 153, 0)));
105. daftar.setBorderPainted(false);
106. daftar.addActionListener(new java.awt.event.ActionListener() {
107. public void actionPerformed(java.awt.event.ActionEvent evt) {
108. daftarActionPerformed(evt);
109. }
110. });
111.
112. nilai.setBackground(new java.awt.Color(0, 153, 0));
113. nilai.setFont(new java.awt.Font("Montserrat", 0, 14)); // NOI18N
114. nilai.setForeground(new java.awt.Color(255, 255, 255));
115. nilai.setText("INPUT NILAI");
116.
nilai.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(0, 153, 0)));
117. nilai.setBorderPainted(false);
118. nilai.addActionListener(new java.awt.event.ActionListener() {
119. public void actionPerformed(java.awt.event.ActionEvent evt) {
120. nilaiActionPerformed(evt);
121. }
122. });
123.
124. rapor.setBackground(new java.awt.Color(0, 153, 0));
125. rapor.setFont(new java.awt.Font("Montserrat", 0, 14)); // NOI18N
126. rapor.setForeground(new java.awt.Color(255, 255, 255));
98

127. rapor.setText("RAPOR");
128.
rapor.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(0, 153, 0)));
129. rapor.setBorderPainted(false);
130. rapor.addActionListener(new java.awt.event.ActionListener() {
131. public void actionPerformed(java.awt.event.ActionEvent evt) {
132. raporActionPerformed(evt);
133. }
134. });
135.
136. absen.setBackground(new java.awt.Color(0, 153, 0));
137. absen.setFont(new java.awt.Font("Montserrat", 0, 14)); //
NOI18N
138. absen.setForeground(new java.awt.Color(255, 255, 255));
139. absen.setText("ABSENSI");
140.
absen.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(0, 153, 0)));
141. absen.setBorderPainted(false);
142. absen.addActionListener(new java.awt.event.ActionListener() {
143. public void actionPerformed(java.awt.event.ActionEvent evt) {
144. absenActionPerformed(evt);
145. }
146. });
147.
148. keluar.setBackground(new java.awt.Color(0, 153, 0));
149. keluar.setFont(new java.awt.Font("Montserrat", 1, 18)); //
NOI18N
150. keluar.setForeground(new java.awt.Color(255, 0, 0));
151. keluar.setText("LOG OUT");
99

152.
keluar.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(0, 153, 0)));
153. keluar.setBorderPainted(false);
154. keluar.addActionListener(new java.awt.event.ActionListener() {
155. public void actionPerformed(java.awt.event.ActionEvent evt) {
156. keluarActionPerformed(evt);
157. }
158. });
159.
160. eskul.setBackground(new java.awt.Color(0, 153, 0));
161. eskul.setFont(new java.awt.Font("Montserrat", 0, 14)); // NOI18N
162. eskul.setForeground(new java.awt.Color(255, 255, 255));
163. eskul.setText("EKSTRAKURIKULER");
164.
eskul.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(0, 153, 0)));
165. eskul.setBorderPainted(false);
166. eskul.addActionListener(new java.awt.event.ActionListener() {
167. public void actionPerformed(java.awt.event.ActionEvent evt) {
168. eskulActionPerformed(evt);
169. }
170. });
171.
172. guru.setBackground(new java.awt.Color(0, 153, 0));
173. guru.setFont(new java.awt.Font("Montserrat", 0, 14)); // NOI18N
174. guru.setForeground(new java.awt.Color(255, 255, 255));
175. guru.setText("GURU");
176.
guru.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(0, 153, 0)));
100

177. guru.setBorderPainted(false);
178. guru.addActionListener(new java.awt.event.ActionListener() {
179. public void actionPerformed(java.awt.event.ActionEvent evt) {
180. guruActionPerformed(evt);
181. }
182. });
183.
184. javax.swing.GroupLayout jPanel4Layout = new
javax.swing.GroupLayout(jPanel4);
185. jPanel4.setLayout(jPanel4Layout);
186. jPanel4Layout.setHorizontalGroup(
187.
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
188. .addGroup(jPanel4Layout.createSequentialGroup()
189. .addContainerGap()
190.
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
191. .addComponent(data,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
192. .addComponent(daftar,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
193. .addComponent(nilai,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
194. .addComponent(rapor,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
101

195. .addComponent(absen,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
196. .addComponent(eskul,
javax.swing.GroupLayout.DEFAULT_SIZE, 167,
Short.MAX_VALUE)
197. .addComponent(keluar,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
198. .addComponent(guru,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
199. .addContainerGap())
200. );
201. jPanel4Layout.setVerticalGroup(
202.
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
203. .addGroup(jPanel4Layout.createSequentialGroup()
204. .addGap(10, 10, 10)
205. .addComponent(data,
javax.swing.GroupLayout.PREFERRED_SIZE, 44,
javax.swing.GroupLayout.PREFERRED_SIZE)
206. .addGap(12, 12, 12)
207. .addComponent(daftar,
javax.swing.GroupLayout.PREFERRED_SIZE, 44,
javax.swing.GroupLayout.PREFERRED_SIZE)
208. .addGap(12, 12, 12)
209. .addComponent(nilai,
javax.swing.GroupLayout.PREFERRED_SIZE, 44,
javax.swing.GroupLayout.PREFERRED_SIZE)
102

210. .addGap(12, 12, 12)


211. .addComponent(absen,
javax.swing.GroupLayout.PREFERRED_SIZE, 44,
javax.swing.GroupLayout.PREFERRED_SIZE)
212. .addGap(12, 12, 12)
213. .addComponent(guru,
javax.swing.GroupLayout.PREFERRED_SIZE, 50,
javax.swing.GroupLayout.PREFERRED_SIZE)
214. .addGap(12, 12, 12)
215. .addComponent(rapor,
javax.swing.GroupLayout.PREFERRED_SIZE, 44,
javax.swing.GroupLayout.PREFERRED_SIZE)
216. .addGap(12, 12, 12)
217. .addComponent(eskul,
javax.swing.GroupLayout.PREFERRED_SIZE, 50,
javax.swing.GroupLayout.PREFERRED_SIZE)
218. .addGap(12, 12, 12)
219. .addComponent(keluar,
javax.swing.GroupLayout.PREFERRED_SIZE, 64,
javax.swing.GroupLayout.PREFERRED_SIZE)
220.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
221. );
222.
223. jLabel2.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
224. jLabel2.setForeground(new java.awt.Color(0, 153, 0));
225.
jLabel2.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
226. jLabel2.setText("MI AL-IKHLAS PASIR MUKTI");
103

227.
228. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
229. jPanel1.setLayout(jPanel1Layout);
230. jPanel1Layout.setHorizontalGroup(
231.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
232. .addGroup(jPanel1Layout.createSequentialGroup()
233. .addComponent(jPanel3,
javax.swing.GroupLayout.PREFERRED_SIZE, 645,
javax.swing.GroupLayout.PREFERRED_SIZE)
234.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, 11, Short.MAX_VALUE)
235. .addComponent(jPanel4,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
236. .addContainerGap())
237. .addComponent(jLabel2,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
238. );
239. jPanel1Layout.setVerticalGroup(
240.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
241. .addGroup(jPanel1Layout.createSequentialGroup()
242. .addContainerGap()
104

243. .addComponent(jLabel2,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
244. .addGap(18, 18, 18)
245.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
246. .addComponent(jPanel3,
javax.swing.GroupLayout.PREFERRED_SIZE, 508,
javax.swing.GroupLayout.PREFERRED_SIZE)
247. .addComponent(jPanel4,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
248. );
249.
250. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
251. getContentPane().setLayout(layout);
252. layout.setHorizontalGroup(
253.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
254. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
255. );
256. layout.setVerticalGroup(
257.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
105

258. .addComponent(jPanel1,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
259. );
260.
261. setSize(new java.awt.Dimension(869, 604));
262. setLocationRelativeTo(null);
263. }// </editor-fold>
264.
265. private void dataActionPerformed(java.awt.event.ActionEvent evt)
{
266. // TODO add your handling code here:
267. input_data id = new input_data();
268. id.setVisible(true);
269. this.dispose();
270. }
271.
272. private void daftarActionPerformed(java.awt.event.ActionEvent
evt) {
273. // TODO add your handling code here:
274. input_daftar daftar = new input_daftar();
275. daftar.setVisible(true);
276. this.dispose();
277. }
278.
279. private void nilaiActionPerformed(java.awt.event.ActionEvent evt)
{
280. // TODO add your handling code here:
281. input_nilai nilai = new input_nilai();
282. nilai.setVisible(true);
106

283. this.dispose();
284.
285. }
286.
287. private void raporActionPerformed(java.awt.event.ActionEvent evt)
{
288. // TODO add your handling code here:
289. FormPerkembangan rapor = new FormPerkembangan();
290. rapor.setVisible(true);
291. this.dispose();
292. }
293.
294. private void absenActionPerformed(java.awt.event.ActionEvent evt)
{
295. // TODO add your handling code here:
296. kelas_satu satu = new kelas_satu();
297. satu.setVisible(true);
298. this.dispose();
299. }
300.
301. private void keluarActionPerformed(java.awt.event.ActionEvent
evt) {
302. // TODO add your handling code here:
303. login login = new login();
304. login.setVisible(true);
305. this.dispose();
306.
307. }
308.
309. private void eskulActionPerformed(java.awt.event.ActionEvent evt)
{
107

310. // TODO add your handling code here:


311. data_eskul data = new data_eskul();
312. data.setLocationRelativeTo(null);
313. data.setVisible(true);
314. this.dispose();
315. }
316.
317. private void guruActionPerformed(java.awt.event.ActionEvent evt)
{
318. // TODO add your handling code here:
319. data_guru dg = new data_guru();
320. dg.setVisible(true);
321. this.dispose();
322. }
323.
324. /**
325. * @param args the command line arguments
326. */
327. public static void main(String args[]) {
328. /* Set the Nimbus look and feel */
329. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
330. /* If Nimbus (introduced in Java SE 6) is not available, stay with
the default look and feel.
331. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.ht
ml
332. */
333. try {
334. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
108

335. if ("FlatLaf Light".equals(info.getName())) {


336.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
337. break;
338. }
339. }
340. } catch (ClassNotFoundException ex) {
341.
java.util.logging.Logger.getLogger(menu.class.getName()).log(java.ut
il.logging.Level.SEVERE, null, ex);
342. } catch (InstantiationException ex) {
343.
java.util.logging.Logger.getLogger(menu.class.getName()).log(java.ut
il.logging.Level.SEVERE, null, ex);
344. } catch (IllegalAccessException ex) {
345.
java.util.logging.Logger.getLogger(menu.class.getName()).log(java.ut
il.logging.Level.SEVERE, null, ex);
346. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
347.
java.util.logging.Logger.getLogger(menu.class.getName()).log(java.ut
il.logging.Level.SEVERE, null, ex);
348. }
349. //</editor-fold>
350.
351. /* Create and display the form */
352. java.awt.EventQueue.invokeLater(new Runnable() {
353. public void run() {
354. new menu().setVisible(true);
355. }
356. });
109

357. }
358.
359. // Variables declaration - do not modify
360. private javax.swing.JButton absen;
361. private javax.swing.JButton daftar;
362. private javax.swing.JButton data;
363. private javax.swing.JButton eskul;
364. private javax.swing.JButton guru;
365. private javax.swing.JLabel jLabel2;
366. private javax.swing.JPanel jPanel1;
367. private javax.swing.JPanel jPanel3;
368. private javax.swing.JPanel jPanel4;
369. private javax.swing.JButton keluar;
370. private javax.swing.JLabel lbl;
371. private javax.swing.JButton nilai;
372. private javax.swing.JButton rapor;
373. // End of variables declaration
374.
375.
376.}

C. login.java
1. /*
2. * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-
default.txt to change this license
3. * Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to
edit this template
4. */
5. package utama;
6. import javax.swing.JOptionPane;
110

7. import java.sql.*;
8. import controller.koneksi;
9. /**
10. *
11. * @author LENOVO
12. */
13. public class login extends javax.swing.JFrame {
14. Connection conn = koneksi.getKoneksi();
15. ResultSet rs = null;
16. PreparedStatement pst =null;
17. /**
18. * Creates new form login
19. */
20. public login() {
21. initComponents();
22. }
23.
24. /**
25. * This method is called from within the constructor to initialize the
form.
26. * WARNING: Do NOT modify this code. The content of this
method is always
27. * regenerated by the Form Editor.
28. */
29. @SuppressWarnings("unchecked")
30. // <editor-fold defaultstate="collapsed" desc="Generated Code">
31. private void initComponents() {
32.
33. jLabel1 = new javax.swing.JLabel();
34. jLabel2 = new javax.swing.JLabel();
35. jLabel3 = new javax.swing.JLabel();
111

36. username = new javax.swing.JTextField();


37. password = new javax.swing.JPasswordField();
38. login = new javax.swing.JButton();
39. cancel = new javax.swing.JButton();
40. background1 = new utama.background();
41.
42.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_
CLOSE);
43. getContentPane().setLayout(new
org.netbeans.lib.awtextra.AbsoluteLayout());
44.
45. jLabel1.setFont(new java.awt.Font("Montserrat Medium", 1, 18));
// NOI18N
46. jLabel1.setForeground(new java.awt.Color(0, 0, 0));
47. jLabel1.setText("SILAHKAN LOGIN");
48. getContentPane().add(jLabel1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(120, 20, -1, -1));
49.
50. jLabel2.setBackground(new java.awt.Color(0, 0, 0));
51. jLabel2.setFont(new java.awt.Font("Tahoma", 1, 11)); // NOI18N
52. jLabel2.setForeground(new java.awt.Color(0, 0, 0));
53. jLabel2.setText("USERNAME");
54. getContentPane().add(jLabel2, new
org.netbeans.lib.awtextra.AbsoluteConstraints(30, 80, -1, 20));
55.
56. jLabel3.setFont(new java.awt.Font("Tahoma", 1, 11)); // NOI18N
57. jLabel3.setForeground(new java.awt.Color(0, 0, 0));
58. jLabel3.setText("PASSWORD");
59. getContentPane().add(jLabel3, new
org.netbeans.lib.awtextra.AbsoluteConstraints(30, 130, -1, -1));
112

60.
61. username.setBackground(new java.awt.Color(255, 255, 255));
62. getContentPane().add(username, new
org.netbeans.lib.awtextra.AbsoluteConstraints(130, 70, 200, 30));
63.
64. password.setBackground(new java.awt.Color(255, 255, 255));
65. getContentPane().add(password, new
org.netbeans.lib.awtextra.AbsoluteConstraints(130, 120, 200, 30));
66.
67. login.setBackground(new java.awt.Color(255, 255, 255));
68. login.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
69. login.setForeground(new java.awt.Color(0, 0, 0));
70. login.setText("LOGIN");
71. login.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.
RAISED));
72. login.setBorderPainted(false);
73. login.addActionListener(new java.awt.event.ActionListener() {
74. public void actionPerformed(java.awt.event.ActionEvent evt) {
75. loginActionPerformed(evt);
76. }
77. });
78. getContentPane().add(login, new
org.netbeans.lib.awtextra.AbsoluteConstraints(100, 170, 90, 40));
79.
80. cancel.setBackground(new java.awt.Color(255, 255, 255));
81. cancel.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
82. cancel.setForeground(new java.awt.Color(0, 0, 0));
83. cancel.setText("CANCEL");
113

84. cancel.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.
RAISED));
85. cancel.setBorderPainted(false);
86. cancel.addActionListener(new java.awt.event.ActionListener() {
87. public void actionPerformed(java.awt.event.ActionEvent evt) {
88. cancelActionPerformed(evt);
89. }
90. });
91. getContentPane().add(cancel, new
org.netbeans.lib.awtextra.AbsoluteConstraints(220, 170, 90, 40));
92.
93. javax.swing.GroupLayout background1Layout = new
javax.swing.GroupLayout(background1);
94. background1.setLayout(background1Layout);
95. background1Layout.setHorizontalGroup(
96.
background1Layout.createParallelGroup(javax.swing.GroupLayout.Al
ignment.LEADING)
97. .addGap(0, 410, Short.MAX_VALUE)
98. );
99. background1Layout.setVerticalGroup(
100.
background1Layout.createParallelGroup(javax.swing.GroupLayout.Al
ignment.LEADING)
101. .addGap(0, 250, Short.MAX_VALUE)
102. );
103.
104. getContentPane().add(background1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 410, 250));
105.
114

106. setSize(new java.awt.Dimension(425, 256));


107. setLocationRelativeTo(null);
108. }// </editor-fold>
109.
110. private void loginActionPerformed(java.awt.event.ActionEvent evt)
{
111. // TODO add your handling code here:
112. String sql = "select * from login where username=? and
password=? ";
113. try{
114. pst = conn.prepareStatement(sql);
115. pst.setString(1, username.getText());
116. pst.setString(2, String.valueOf(password.getPassword()));
117. rs = pst.executeQuery();
118. if(rs.next()){
119. JOptionPane.showMessageDialog(null, "Berhasil
Terhubung");
120. menu menu = new menu();
121. menu.setVisible(true);
122. this.dispose();
123. }else{
124. JOptionPane.showMessageDialog(null, "Gagal
Terhubung");
125. }
126. }catch(Exception e){
127. JOptionPane.showMessageDialog(null, e);
128. }
129. }
130.
131. private void cancelActionPerformed(java.awt.event.ActionEvent
evt) {
115

132. // TODO add your handling code here:


133. username.setText("");
134. password.setText("");
135. username.requestFocus();
136. System.exit(0);
137. }
138.
139. /**
140. * @param args the command line arguments
141. */
142. public static void main(String args[]) {
143. /* Set the Nimbus look and feel */
144. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
145. /* If Nimbus (introduced in Java SE 6) is not available, stay with
the default look and feel.
146. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.ht
ml
147. */
148. try {
149. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
150. if ("Flatlaf Light".equals(info.getName())) {
151.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
152. break;
153. }
154. }
155. } catch (ClassNotFoundException ex) {
116

156.
java.util.logging.Logger.getLogger(login.class.getName()).log(java.uti
l.logging.Level.SEVERE, null, ex);
157. } catch (InstantiationException ex) {
158.
java.util.logging.Logger.getLogger(login.class.getName()).log(java.uti
l.logging.Level.SEVERE, null, ex);
159. } catch (IllegalAccessException ex) {
160.
java.util.logging.Logger.getLogger(login.class.getName()).log(java.uti
l.logging.Level.SEVERE, null, ex);
161. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
162.
java.util.logging.Logger.getLogger(login.class.getName()).log(java.uti
l.logging.Level.SEVERE, null, ex);
163. }
164. //</editor-fold>
165.
166. /* Create and display the form */
167. java.awt.EventQueue.invokeLater(new Runnable() {
168. public void run() {
169. new login().setVisible(true);
170. }
171. });
172. }
173.
174. // Variables declaration - do not modify
175. private utama.background background1;
176. private javax.swing.JButton cancel;
177. private javax.swing.JLabel jLabel1;
178. private javax.swing.JLabel jLabel2;
117

179. private javax.swing.JLabel jLabel3;


180. private javax.swing.JButton login;
181. private javax.swing.JPasswordField password;
182. private javax.swing.JTextField username;
183. // End of variables declaration
184.}

D. input_data.java
1. /*
2. * To change this license header, choose License Headers in Project
Properties.
3. * To change this template file, choose Tools | Templates
4. * and open the template in the editor.
5. */
6. package data;
7.
8.
9. import controller.koneksi;
10. import data.cls_input_data;
11. import java.awt.event.KeyEvent;
12. import java.sql.Connection;
13. import java.sql.PreparedStatement;
14. import java.sql.ResultSet;
15. import java.sql.SQLException;
16. import java.sql.Statement;
17. import java.util.HashMap;
18. import javax.swing.JOptionPane;
19. import javax.swing.table.DefaultTableModel;
20. import javax.swing.table.TableColumn;
21. import net.proteanit.sql.DbUtils;
22. import net.sf.jasperreports.engine.JasperCompileManager;
118

23. import net.sf.jasperreports.engine.JasperFillManager;


24. import net.sf.jasperreports.engine.JasperPrint;
25. import net.sf.jasperreports.engine.JasperReport;
26. import net.sf.jasperreports.view.JasperViewer;
27. import utama.*;
28. /**
29. *
30. * @author Username
31. */
32. public class input_data extends javax.swing.JFrame {
33. Connection conn = null;
34. ResultSet rs = null;
35. PreparedStatement pst = null;
36.
37. /**
38. * Creates new form input_data
39. */
40. public input_data() {
41. initComponents();
42. lebarKolom();
43.
44.
45. }
46.
47. public void lebarKolom(){
48. TableColumn column;
49.
jTable1.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OF
F);
50. column = jTable1.getColumnModel().getColumn(0);
51. column.setPreferredWidth(200);
119

52. column = jTable1.getColumnModel().getColumn(1);


53. column.setPreferredWidth(200);
54. column = jTable1.getColumnModel().getColumn(2);
55. column.setPreferredWidth(200);
56. column = jTable1.getColumnModel().getColumn(3);
57. column.setPreferredWidth(200);
58. column = jTable1.getColumnModel().getColumn(4);
59. column.setPreferredWidth(75);
60. }
61.
62. public void ViewData(){
63. cls_input_data idm = new cls_input_data();
64. try{
65.
jTable1.setModel(DbUtils.resultSetToTableModel(idm.UpdateJTable(
)));
66.
67. }catch(Exception e){
68. JOptionPane.showMessageDialog(null,e);
69. }
70. }
71. private void kosong(){
72. txno_induk.setText("");
73. txnisn.setText("");
74. txnama.setText("");
75. cbjk.setSelectedIndex(0);
76. txtempat_lahir.setText("");
77. cbtanggal_lahir.setSelectedIndex(0);
78. cbbulan_lahir.setSelectedIndex(0);
79. cbtahun_lahir.setSelectedIndex(0);
80. kelas.setSelectedItem("");
120

81. txno_telepon.setText("");
82. txalamat.setText("");
83. cbkewarganegaraan.setSelectedIndex(0);
84. txanak_ke.setText("");
85. txjum_sdr_kandung.setText("");
86. txjum_sdr_angkat.setText("");
87. cbstts_keorangtuaan.setSelectedIndex(0);
88. txjarak.setText("");
89. txket_tinggal.setText("");
90. txbahasa.setText("");
91. tcari.setText("");
92. kode.setText("");
93. }
94.
95. /**
96. * This method is called from within the constructor to initialize the
form.
97. * WARNING: Do NOT modify this code. The content of this
method is always
98. * regenerated by the Form Editor.
99. */
100. @SuppressWarnings("unchecked")
101. // <editor-fold defaultstate="collapsed" desc="Generated Code">
102. private void initComponents() {
103.
104. jPanel6 = new javax.swing.JPanel();
105. jPanel5 = new javax.swing.JPanel();
106. cbkewarganegaraan = new javax.swing.JComboBox<>();
107. jLabel66 = new javax.swing.JLabel();
108. jLabel67 = new javax.swing.JLabel();
109. jLabel68 = new javax.swing.JLabel();
121

110. jLabel69 = new javax.swing.JLabel();


111. jLabel70 = new javax.swing.JLabel();
112. jLabel71 = new javax.swing.JLabel();
113. jLabel72 = new javax.swing.JLabel();
114. jLabel73 = new javax.swing.JLabel();
115. jLabel74 = new javax.swing.JLabel();
116. jLabel75 = new javax.swing.JLabel();
117. txanak_ke = new javax.swing.JTextField();
118. jLabel76 = new javax.swing.JLabel();
119. txjum_sdr_kandung = new javax.swing.JTextField();
120. jLabel77 = new javax.swing.JLabel();
121. txjum_sdr_angkat = new javax.swing.JTextField();
122. txno_induk = new javax.swing.JTextField();
123. cbstts_keorangtuaan = new javax.swing.JComboBox<>();
124. txnisn = new javax.swing.JTextField();
125. txnama = new javax.swing.JTextField();
126. cbjk = new javax.swing.JComboBox<>();
127. txtempat_lahir = new javax.swing.JTextField();
128. cbtanggal_lahir = new javax.swing.JComboBox<>();
129. kelas = new javax.swing.JComboBox<>();
130. txno_telepon = new javax.swing.JTextField();
131. txalamat = new javax.swing.JTextField();
132. jLabel78 = new javax.swing.JLabel();
133. jLabel79 = new javax.swing.JLabel();
134. jLabel80 = new javax.swing.JLabel();
135. txjarak = new javax.swing.JTextField();
136. txket_tinggal = new javax.swing.JTextField();
137. txbahasa = new javax.swing.JTextField();
138. rbsimpan = new javax.swing.JButton();
139. rbreset = new javax.swing.JButton();
140. rbhapus = new javax.swing.JButton();
122

141. cbbulan_lahir = new javax.swing.JComboBox<>();


142. cbtahun_lahir = new javax.swing.JComboBox<>();
143. jLabel81 = new javax.swing.JLabel();
144. kembali = new javax.swing.JButton();
145. jLabel2 = new javax.swing.JLabel();
146. jScrollPane2 = new javax.swing.JScrollPane();
147. jTable1 = new javax.swing.JTable();
148. edit = new javax.swing.JButton();
149. tcari = new javax.swing.JTextField();
150. jLabel3 = new javax.swing.JLabel();
151. kode = new javax.swing.JTextField();
152. print = new javax.swing.JButton();
153. jLabel1 = new javax.swing.JLabel();
154.
155.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_
CLOSE);
156. setMinimumSize(new java.awt.Dimension(1197, 542));
157. addWindowListener(new java.awt.event.WindowAdapter() {
158. public void windowOpened(java.awt.event.WindowEvent evt)
{
159. formWindowOpened(evt);
160. }
161. });
162.
163. jPanel6.setBackground(new java.awt.Color(0, 153, 0));
164. jPanel6.setPreferredSize(new java.awt.Dimension(1197, 542));
165.
166. jPanel5.setBackground(new java.awt.Color(0, 153, 0));
167.
123

168. cbkewarganegaraan.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "-
Kewarganegaraan-", "Warga Negara Indonesia", "Warga Negara
Asing" }));
169.
170. jLabel66.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
171. jLabel66.setForeground(new java.awt.Color(255, 255, 255));
172. jLabel66.setText("Anak Ke");
173.
174. jLabel67.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
175. jLabel67.setForeground(new java.awt.Color(255, 255, 255));
176. jLabel67.setText("Jml Saudara Kandung");
177.
178. jLabel68.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
179. jLabel68.setForeground(new java.awt.Color(255, 255, 255));
180. jLabel68.setText("Jml Saudara Angkat");
181.
182. jLabel69.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
183. jLabel69.setForeground(new java.awt.Color(255, 255, 255));
184. jLabel69.setText("No. Induk Siswa");
185.
186. jLabel70.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
187. jLabel70.setForeground(new java.awt.Color(255, 255, 255));
188. jLabel70.setText("Nama Lengkap");
189.
124

190. jLabel71.setFont(new java.awt.Font("Tahoma", 0, 12)); //


NOI18N
191. jLabel71.setForeground(new java.awt.Color(255, 255, 255));
192. jLabel71.setText("Status Keorangtuaan");
193.
194. jLabel72.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
195. jLabel72.setForeground(new java.awt.Color(255, 255, 255));
196. jLabel72.setText("Jenis Kelamin");
197.
198. jLabel73.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
199. jLabel73.setForeground(new java.awt.Color(255, 255, 255));
200. jLabel73.setText("Tempat Tgl Lahir");
201.
202. jLabel74.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
203. jLabel74.setForeground(new java.awt.Color(255, 255, 255));
204. jLabel74.setText("Kelas");
205.
206. jLabel75.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
207. jLabel75.setForeground(new java.awt.Color(255, 255, 255));
208. jLabel75.setText("No. Telepon / HP");
209.
210. jLabel76.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
211. jLabel76.setForeground(new java.awt.Color(255, 255, 255));
212. jLabel76.setText("Alamat");
213.
125

214. jLabel77.setFont(new java.awt.Font("Tahoma", 0, 12)); //


NOI18N
215. jLabel77.setForeground(new java.awt.Color(255, 255, 255));
216. jLabel77.setText("Kewarganegaraan");
217.
218. txno_induk.addActionListener(new
java.awt.event.ActionListener() {
219. public void actionPerformed(java.awt.event.ActionEvent evt) {
220. txno_indukActionPerformed(evt);
221. }
222. });
223.
224. cbstts_keorangtuaan.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "-Status
Orang Tua-", "Orang Tua Kandung", "Orang Tua Angkat" }));
225. cbstts_keorangtuaan.addActionListener(new
java.awt.event.ActionListener() {
226. public void actionPerformed(java.awt.event.ActionEvent evt) {
227. cbstts_keorangtuaanActionPerformed(evt);
228. }
229. });
230.
231. cbjk.setModel(new javax.swing.DefaultComboBoxModel<>(new
String[] { "-Jenis Kelamin-", "Laki-laki", "Perempuan" }));
232.
233. cbtanggal_lahir.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "Tgl", "1",
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15",
"16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27",
"28", "29", "30", "31" }));
234.
126

235. kelas.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "-Kelas-", "1",
"2", "3", "4", "5", "6", " " }));
236.
237. jLabel78.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
238. jLabel78.setForeground(new java.awt.Color(255, 255, 255));
239. jLabel78.setText("Jarak Rumah - Sekolah");
240.
241. jLabel79.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
242. jLabel79.setForeground(new java.awt.Color(255, 255, 255));
243. jLabel79.setText("Keterangan Tinggal");
244.
245. jLabel80.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
246. jLabel80.setForeground(new java.awt.Color(255, 255, 255));
247. jLabel80.setText("Bahasa Sehari-hari");
248.
249. txbahasa.addActionListener(new java.awt.event.ActionListener()
{
250. public void actionPerformed(java.awt.event.ActionEvent evt) {
251. txbahasaActionPerformed(evt);
252. }
253. });
254.
255. rbsimpan.setBackground(new java.awt.Color(255, 255, 255));
256. rbsimpan.setText("SIMPAN");
257. rbsimpan.addActionListener(new java.awt.event.ActionListener()
{
258. public void actionPerformed(java.awt.event.ActionEvent evt) {
127

259. rbsimpanActionPerformed(evt);
260. }
261. });
262.
263. rbreset.setBackground(new java.awt.Color(255, 255, 255));
264. rbreset.setText("RESET");
265. rbreset.addActionListener(new java.awt.event.ActionListener() {
266. public void actionPerformed(java.awt.event.ActionEvent evt) {
267. rbresetActionPerformed(evt);
268. }
269. });
270.
271. rbhapus.setBackground(new java.awt.Color(255, 255, 255));
272. rbhapus.setText("HAPUS");
273. rbhapus.addActionListener(new java.awt.event.ActionListener()
{
274. public void actionPerformed(java.awt.event.ActionEvent evt) {
275. rbhapusActionPerformed(evt);
276. }
277. });
278.
279. cbbulan_lahir.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "Bln", "1",
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12" }));
280.
281. cbtahun_lahir.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "Tahun",
"2000", "2001", "2002", "2003", "2004", "2005", "2006", "2007",
"2008", "2009", "2010", "2011", "2012", "2013", "2014", "2015",
"2016", "2017", "2018", "2019", "2020", "2021", "2022" }));
282.
128

283. jLabel81.setFont(new java.awt.Font("Tahoma", 0, 12)); //


NOI18N
284. jLabel81.setForeground(new java.awt.Color(255, 255, 255));
285. jLabel81.setText("Km");
286.
287. kembali.setBackground(new java.awt.Color(255, 255, 255));
288. kembali.setFont(new java.awt.Font("Segoe UI", 1, 12)); //
NOI18N
289. kembali.setForeground(new java.awt.Color(255, 0, 0));
290. kembali.setText("KEMBALI");
291. kembali.addActionListener(new java.awt.event.ActionListener()
{
292. public void actionPerformed(java.awt.event.ActionEvent evt) {
293. kembaliActionPerformed(evt);
294. }
295. });
296.
297. jLabel2.setForeground(new java.awt.Color(255, 255, 255));
298.
jLabel2.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
299. jLabel2.setText("NISN");
300.
301. jTable1.setModel(new javax.swing.table.DefaultTableModel(
302. new Object [][] {
303. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
304. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
305. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
129

306. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
307. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
308. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
309. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
310. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
311. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
312. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
313. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
314. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
315. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
316. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
317. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
318. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
319. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
320. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
130

321. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
322. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
323. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
324. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
325. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
326. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
327. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
328. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
329. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
330. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
331. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null},
332. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null}
333. },
334. new String [] {
335. "No. Induk Siswa", "NISN", "Nama Lengkap", "Jenis
Kelamin", "Tempat Lahir", "Tanggal Lahir", "Bulan Lahir", "Tahun
Lahir", "Agama", "Nomor Telepon", "Alamat", "Kewarganegaraan",
"Anak ke", "Jum Saudara Kandung", "Jum Saudara Angkat", "Status
131

Keorangtuaan", "Jarak Rumah-Sekolah", "Bhs Sehari-hari", "Ket


Tinggal"
336. }
337. ){
338. boolean[] canEdit = new boolean [] {
339. false, false, false, false, false, false, false, false, false, false,
false, true, true, true, true, true, true, true, true
340. };
341.
342. public boolean isCellEditable(int rowIndex, int columnIndex) {
343. return canEdit [columnIndex];
344. }
345. });
346. jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
347. public void mouseClicked(java.awt.event.MouseEvent evt) {
348. jTable1MouseClicked(evt);
349. }
350. });
351. jTable1.addKeyListener(new java.awt.event.KeyAdapter() {
352. public void keyPressed(java.awt.event.KeyEvent evt) {
353. jTable1KeyPressed(evt);
354. }
355. public void keyReleased(java.awt.event.KeyEvent evt) {
356. jTable1KeyReleased(evt);
357. }
358. });
359. jScrollPane2.setViewportView(jTable1);
360.
361. edit.setBackground(new java.awt.Color(255, 255, 255));
362. edit.setText("EDIT");
363. edit.addActionListener(new java.awt.event.ActionListener() {
132

364. public void actionPerformed(java.awt.event.ActionEvent evt) {


365. editActionPerformed(evt);
366. }
367. });
368.
369. tcari.addActionListener(new java.awt.event.ActionListener() {
370. public void actionPerformed(java.awt.event.ActionEvent evt) {
371. tcariActionPerformed(evt);
372. }
373. });
374. tcari.addKeyListener(new java.awt.event.KeyAdapter() {
375. public void keyReleased(java.awt.event.KeyEvent evt) {
376. tcariKeyReleased(evt);
377. }
378. });
379.
380. jLabel3.setForeground(new java.awt.Color(255, 255, 255));
381.
jLabel3.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
382. jLabel3.setText("CARI NO.INDUK SISWA");
383.
384. print.setBackground(new java.awt.Color(255, 255, 255));
385. print.setText("PRINT");
386. print.addActionListener(new java.awt.event.ActionListener() {
387. public void actionPerformed(java.awt.event.ActionEvent evt) {
388. printActionPerformed(evt);
389. }
390. });
391.
133

392. javax.swing.GroupLayout jPanel5Layout = new


javax.swing.GroupLayout(jPanel5);
393. jPanel5.setLayout(jPanel5Layout);
394. jPanel5Layout.setHorizontalGroup(
395.
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
396. .addGroup(jPanel5Layout.createSequentialGroup()
397. .addContainerGap(26, Short.MAX_VALUE)
398.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING, false)
399. .addGroup(jPanel5Layout.createSequentialGroup()
400.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING)
401. .addGroup(jPanel5Layout.createSequentialGroup()
402.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING)
403.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
404. .addComponent(jLabel70)
405. .addComponent(jLabel72)
406. .addComponent(jLabel73)
407. .addComponent(jLabel74)
408. .addComponent(jLabel76)
409. .addComponent(jLabel77)
410. .addComponent(jLabel66)
411. .addComponent(jLabel67)
134

412. .addComponent(jLabel71))
413. .addComponent(jLabel69,
javax.swing.GroupLayout.Alignment.LEADING)
414. .addComponent(jLabel75,
javax.swing.GroupLayout.Alignment.LEADING))
415. .addGap(23, 23, 23))
416. .addGroup(jPanel5Layout.createSequentialGroup()
417. .addComponent(jLabel79)
418. .addGap(33, 33, 33))
419. .addGroup(jPanel5Layout.createSequentialGroup()
420. .addComponent(jLabel78,
javax.swing.GroupLayout.PREFERRED_SIZE, 122,
javax.swing.GroupLayout.PREFERRED_SIZE)
421. .addGap(18, 18, 18)))
422.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
423.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING, false)
424. .addComponent(txjum_sdr_kandung,
javax.swing.GroupLayout.PREFERRED_SIZE, 145,
javax.swing.GroupLayout.PREFERRED_SIZE)
425. .addComponent(txanak_ke,
javax.swing.GroupLayout.PREFERRED_SIZE, 145,
javax.swing.GroupLayout.PREFERRED_SIZE)
426.
.addGroup(jPanel5Layout.createSequentialGroup()
427. .addComponent(txjarak,
javax.swing.GroupLayout.PREFERRED_SIZE, 72,
javax.swing.GroupLayout.PREFERRED_SIZE)
135

428.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
429. .addComponent(jLabel81)
430. .addGap(44, 44, 44)))
431.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING, false)
432.
.addGroup(jPanel5Layout.createSequentialGroup()
433. .addComponent(txno_induk,
javax.swing.GroupLayout.PREFERRED_SIZE, 147,
javax.swing.GroupLayout.PREFERRED_SIZE)
434.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
435. .addComponent(jLabel2,
javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE)
436.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
437. .addComponent(txnisn,
javax.swing.GroupLayout.PREFERRED_SIZE, 147,
javax.swing.GroupLayout.PREFERRED_SIZE))
438. .addComponent(txnama)
439. .addComponent(cbjk,
javax.swing.GroupLayout.PREFERRED_SIZE, 143,
javax.swing.GroupLayout.PREFERRED_SIZE)
136

440.
.addGroup(jPanel5Layout.createSequentialGroup()
441. .addComponent(txtempat_lahir,
javax.swing.GroupLayout.PREFERRED_SIZE, 143,
javax.swing.GroupLayout.PREFERRED_SIZE)
442.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
443. .addComponent(cbtanggal_lahir,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
444.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
445. .addComponent(cbbulan_lahir,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
446.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
447. .addComponent(cbtahun_lahir,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
448. .addComponent(txalamat,
javax.swing.GroupLayout.PREFERRED_SIZE, 300,
javax.swing.GroupLayout.PREFERRED_SIZE)
137

449. .addComponent(txno_telepon,
javax.swing.GroupLayout.PREFERRED_SIZE, 300,
javax.swing.GroupLayout.PREFERRED_SIZE)
450. .addComponent(kelas,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
451. .addComponent(cbkewarganegaraan,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
452. .addComponent(cbstts_keorangtuaan,
javax.swing.GroupLayout.PREFERRED_SIZE, 144,
javax.swing.GroupLayout.PREFERRED_SIZE)
453.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING)
454. .addComponent(txket_tinggal,
javax.swing.GroupLayout.PREFERRED_SIZE, 142,
javax.swing.GroupLayout.PREFERRED_SIZE)
455. .addComponent(txjum_sdr_angkat,
javax.swing.GroupLayout.PREFERRED_SIZE, 141,
javax.swing.GroupLayout.PREFERRED_SIZE))))
456. .addComponent(jLabel68,
javax.swing.GroupLayout.Alignment.LEADING)
457. .addGroup(jPanel5Layout.createSequentialGroup()
458. .addComponent(jLabel80)
459. .addGap(27, 27, 27)
460. .addComponent(txbahasa,
javax.swing.GroupLayout.PREFERRED_SIZE, 142,
javax.swing.GroupLayout.PREFERRED_SIZE)
138

461. .addGap(222, 222, 222)))


462. .addGap(89, 89, 89)
463.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING, false)
464. .addGroup(jPanel5Layout.createSequentialGroup()
465. .addComponent(jLabel3,
javax.swing.GroupLayout.PREFERRED_SIZE, 150,
javax.swing.GroupLayout.PREFERRED_SIZE)
466.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
467. .addComponent(tcari,
javax.swing.GroupLayout.PREFERRED_SIZE, 139,
javax.swing.GroupLayout.PREFERRED_SIZE)
468. .addGap(68, 68, 68)
469. .addComponent(kode,
javax.swing.GroupLayout.PREFERRED_SIZE, 97,
javax.swing.GroupLayout.PREFERRED_SIZE)
470.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
471. .addComponent(print))
472. .addComponent(jScrollPane2,
javax.swing.GroupLayout.PREFERRED_SIZE, 575,
javax.swing.GroupLayout.PREFERRED_SIZE)
473. .addGroup(jPanel5Layout.createSequentialGroup()
474. .addComponent(rbsimpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 112,
javax.swing.GroupLayout.PREFERRED_SIZE)
139

475.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
476. .addComponent(edit,
javax.swing.GroupLayout.PREFERRED_SIZE, 100,
javax.swing.GroupLayout.PREFERRED_SIZE)
477.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
478. .addComponent(rbhapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 100,
javax.swing.GroupLayout.PREFERRED_SIZE)
479.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
480. .addComponent(rbreset,
javax.swing.GroupLayout.PREFERRED_SIZE, 97,
javax.swing.GroupLayout.PREFERRED_SIZE)
481.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
482. .addComponent(kembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 102,
javax.swing.GroupLayout.PREFERRED_SIZE)))
483. .addContainerGap(18, Short.MAX_VALUE))
484. );
485. jPanel5Layout.setVerticalGroup(
486.
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
140

487. .addGroup(jPanel5Layout.createSequentialGroup()
488.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
489.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
490. .addComponent(txno_induk,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
491. .addComponent(txnisn,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
492. .addComponent(jLabel2,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
493. .addComponent(jLabel69,
javax.swing.GroupLayout.Alignment.TRAILING))
494.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
495.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
496. .addComponent(jLabel70)
497. .addComponent(txnama,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
141

498.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
499.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
500. .addComponent(jLabel72)
501. .addComponent(cbjk,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
502.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
503.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
504. .addComponent(jLabel73)
505. .addComponent(txtempat_lahir,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
506. .addComponent(cbtanggal_lahir,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
507. .addComponent(cbbulan_lahir,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
142

508. .addComponent(cbtahun_lahir,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
509.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
510.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
511. .addComponent(jLabel74)
512. .addComponent(kelas,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
513.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
514.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
515. .addComponent(txno_telepon,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
516. .addComponent(jLabel75))
517.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
143

518.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
519. .addComponent(jLabel76)
520. .addComponent(txalamat,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
521.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
522.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
523. .addComponent(jLabel77)
524. .addComponent(cbkewarganegaraan,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
525.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
526.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
527. .addGroup(jPanel5Layout.createSequentialGroup()
528. .addComponent(jLabel66)
529. .addGap(15, 15, 15))
530.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel5Layout.createSequentialGroup()
144

531. .addComponent(txanak_ke,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
532.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)))
533.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
534. .addComponent(jLabel67)
535. .addComponent(txjum_sdr_kandung,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
536.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
537.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
538. .addComponent(jLabel71)
539. .addComponent(cbstts_keorangtuaan,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
540.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
541. .addGroup(jPanel5Layout.createSequentialGroup()
542. .addGap(11, 11, 11)
145

543. .addComponent(jLabel81)
544. .addGap(4, 4, 4))
545. .addGroup(jPanel5Layout.createSequentialGroup()
546.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
547. .addComponent(txjarak,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
548. .addGroup(jPanel5Layout.createSequentialGroup()
549.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
550. .addComponent(jLabel78,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
551.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
552.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
553. .addComponent(txjum_sdr_angkat,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
554. .addComponent(jLabel68))
146

555.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
556.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
557. .addComponent(txket_tinggal,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
558. .addComponent(jLabel79))
559.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
560.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
561. .addComponent(txbahasa,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
562. .addComponent(jLabel80))
563. .addGap(172, 172, 172))
564. .addGroup(jPanel5Layout.createSequentialGroup()
565. .addContainerGap()
566.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
567. .addComponent(tcari,
javax.swing.GroupLayout.PREFERRED_SIZE,
147

javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
568. .addComponent(jLabel3,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
569. .addComponent(kode,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
570. .addComponent(print))
571. .addGap(18, 18, 18)
572. .addComponent(jScrollPane2,
javax.swing.GroupLayout.PREFERRED_SIZE, 275,
javax.swing.GroupLayout.PREFERRED_SIZE)
573.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
574.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
575. .addComponent(rbsimpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 48,
javax.swing.GroupLayout.PREFERRED_SIZE)
576. .addComponent(edit,
javax.swing.GroupLayout.PREFERRED_SIZE, 48,
javax.swing.GroupLayout.PREFERRED_SIZE)
577. .addComponent(rbhapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 48,
javax.swing.GroupLayout.PREFERRED_SIZE)
148

578. .addComponent(rbreset,
javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE)
579. .addComponent(kembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 46,
javax.swing.GroupLayout.PREFERRED_SIZE))
580. .addGap(223, 223, 223))
581. );
582.
583. jLabel1.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
584. jLabel1.setForeground(new java.awt.Color(255, 255, 255));
585.
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
586. jLabel1.setText("Input Data Siswa");
587.
588. javax.swing.GroupLayout jPanel6Layout = new
javax.swing.GroupLayout(jPanel6);
589. jPanel6.setLayout(jPanel6Layout);
590. jPanel6Layout.setHorizontalGroup(
591.
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
592. .addComponent(jPanel5,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
593. .addGroup(jPanel6Layout.createSequentialGroup()
594. .addContainerGap()
149

595. .addComponent(jLabel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
596. .addContainerGap())
597. );
598. jPanel6Layout.setVerticalGroup(
599.
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
600. .addGroup(jPanel6Layout.createSequentialGroup()
601. .addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 61,
javax.swing.GroupLayout.PREFERRED_SIZE)
602. .addGap(18, 18, 18)
603. .addComponent(jPanel5,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
604. );
605.
606. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
607. getContentPane().setLayout(layout);
608. layout.setHorizontalGroup(
609.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
610. .addComponent(jPanel6,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
611. );
612. layout.setVerticalGroup(
150

613.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
614. .addComponent(jPanel6,
javax.swing.GroupLayout.PREFERRED_SIZE, 688,
Short.MAX_VALUE)
615. );
616.
617. setSize(new java.awt.Dimension(1213, 727));
618. setLocationRelativeTo(null);
619. }// </editor-fold>
620.
621. private void
txno_indukActionPerformed(java.awt.event.ActionEvent evt) {
622. // TODO add your handling code here:
623. }
624.
625. private void
cbstts_keorangtuaanActionPerformed(java.awt.event.ActionEvent evt)
{
626. // TODO add your handling code here:
627. }
628.
629. private void rbsimpanActionPerformed(java.awt.event.ActionEvent
evt) {
630. // TODO add your handling code here:
631. cls_input_data idm= new cls_input_data();
632. idm.txno_induk = txno_induk.getText();
633. idm.txnisn = txnisn.getText();
634. idm.txnama = txnama.getText();
635. idm.cbjk = (String) cbjk.getSelectedItem();
151

636. idm.txtempat_lahir = txtempat_lahir.getText();


637. idm.cbtanggal_lahir = (String) cbtanggal_lahir.getSelectedItem();
638. idm.cbbulan_lahir = (String) cbbulan_lahir.getSelectedItem();
639. idm.cbtahun_lahir = (String) cbtahun_lahir.getSelectedItem();
640. idm.kelas = (String) kelas.getSelectedItem();
641. idm.txno_telepon = txno_telepon.getText();
642. idm.txalamat = txalamat.getText();
643. idm.cbkewarganegaraan = (String)
cbkewarganegaraan.getSelectedItem();
644. idm.txanak_ke = txanak_ke.getText();
645. idm.txjum_sdr_kandung = txjum_sdr_kandung.getText();
646. idm.txjum_sdr_angkat = txjum_sdr_angkat.getText();
647. idm.cbstts_keorangtuaan = (String)
cbstts_keorangtuaan.getSelectedItem();
648. idm.txjarak = txjarak.getText();
649. idm.txket_tinggal = txket_tinggal.getText();
650. idm.txbahasa = txbahasa.getText();
651.
652.
653. try{
654. idm.simpan();
655. JOptionPane.showMessageDialog(null, "berhasil di simpan");
656. kosong();
657.
658. }catch (Exception e){
659. JOptionPane.showMessageDialog(null, e);
660. }ViewData();
661. kosong();
662.
663. }
664.
152

665. private void rbresetActionPerformed(java.awt.event.ActionEvent


evt) {
666. // TODO add your handling code here:
667. kosong();
668. ViewData();
669. }
670.
671.
672.
673.
674. private void rbhapusActionPerformed(java.awt.event.ActionEvent
evt) {
675. // TODO add your handling code here:
676. String ObjButtons[]={"Yes","No"};
677. int PromptResult= JOptionPane.showOptionDialog(null,"Hapus
?","Message",JOptionPane.DEFAULT_OPTION,JOptionPane.QUES
TION_MESSAGE,null,ObjButtons,ObjButtons[1]);
678. if(PromptResult==0){
679. cls_input_data idm = new cls_input_data();
680. idm.txno_induk=txno_induk.getText();
681.
682. try{
683. idm.hapus();
684. JOptionPane.showMessageDialog(null, "Berhasil dihapus");
685. ViewData();
686. }catch (Exception e){
687. JOptionPane.showMessageDialog(null,e);
688. }kosong();
689. }
690. }
691.
153

692. private void formWindowOpened(java.awt.event.WindowEvent evt)


{
693. // TODO add your handling code here:
694. ViewData();
695. }
696.
697. private void editActionPerformed(java.awt.event.ActionEvent evt) {
698. // TODO add your handling code here:
699. cls_input_data idm= new cls_input_data();
700. idm.txno_induk = txno_induk.getText();
701. idm.txnisn = txnisn.getText();
702. idm.txnama = txnama.getText();
703. idm.cbjk = (String) cbjk.getSelectedItem();
704. idm.txtempat_lahir = txtempat_lahir.getText();
705. idm.cbtanggal_lahir = (String) cbtanggal_lahir.getSelectedItem();
706. idm.cbbulan_lahir = (String) cbbulan_lahir.getSelectedItem();
707. idm.cbtahun_lahir = (String) cbtahun_lahir.getSelectedItem();
708. idm.kelas = (String) kelas.getSelectedItem();
709. idm.txno_telepon = txno_telepon.getText();
710. idm.txalamat = txalamat.getText();
711. idm.cbkewarganegaraan = (String)
cbkewarganegaraan.getSelectedItem();
712. idm.txanak_ke = txanak_ke.getText();
713. idm.txjum_sdr_kandung = txjum_sdr_kandung.getText();
714. idm.txjum_sdr_angkat = txjum_sdr_angkat.getText();
715. idm.cbstts_keorangtuaan = (String)
cbstts_keorangtuaan.getSelectedItem();
716. idm.txjarak = txjarak.getText();
717. idm.txket_tinggal = txket_tinggal.getText();
718. idm.txbahasa = txbahasa.getText();
719.
154

720.
721. try{
722. idm.edit();
723. JOptionPane.showMessageDialog(null, "berhasil di edit");
724. kosong();
725.
726. }catch (Exception e){
727. JOptionPane.showMessageDialog(null, e);
728. }ViewData(); kosong();
729.
730. }
731.
732. private void kembaliActionPerformed(java.awt.event.ActionEvent
evt) {
733. // TODO add your handling code here:
734. menu menu = new menu();
735. menu.setVisible(true);
736. this.dispose();
737. }
738.
739. private void jTable1MouseClicked(java.awt.event.MouseEvent evt)
{
740. // TODO add your handling code here:
741. int i = jTable1.getSelectedRow();
742.
743.
txno_induk.setText(jTable1.getModel().getValueAt(i,0).toString());
744. txnisn.setText(jTable1.getModel().getValueAt(i,1).toString());
745. txnama.setText(jTable1.getModel().getValueAt(i,2).toString());
746.
cbjk.setSelectedItem(jTable1.getModel().getValueAt(i,3).toString());
155

747.
txtempat_lahir.setText(jTable1.getModel().getValueAt(i,4).toString())
;
748.
cbtanggal_lahir.setSelectedItem(jTable1.getModel().getValueAt(i,5).t
oString());
749.
cbbulan_lahir.setSelectedItem(jTable1.getModel().getValueAt(i,6).to
String());
750.
cbtahun_lahir.setSelectedItem(jTable1.getModel().getValueAt(i,7).to
String());
751.
kelas.setSelectedItem(jTable1.getModel().getValueAt(i,8).toString());
752.
txno_telepon.setText(jTable1.getModel().getValueAt(i,9).toString());
753.
txalamat.setText(jTable1.getModel().getValueAt(i,10).toString());
754.
cbkewarganegaraan.setSelectedItem(jTable1.getModel().getValueAt(i
,11).toString());
755.
txanak_ke.setText(jTable1.getModel().getValueAt(i,12).toString());
756.
txjum_sdr_kandung.setText(jTable1.getModel().getValueAt(i,13).toSt
ring());
757.
txjum_sdr_angkat.setText(jTable1.getModel().getValueAt(i,14).toStri
ng());
156

758.
cbstts_keorangtuaan.setSelectedItem(jTable1.getModel().getValueAt(
i,15).toString());
759. txjarak.setText(jTable1.getModel().getValueAt(i,16).toString());
760.
txket_tinggal.setText(jTable1.getModel().getValueAt(i,17).toString())
;
761.
txbahasa.setText(jTable1.getModel().getValueAt(i,18).toString());
762. kode.setText(jTable1.getModel().getValueAt(i,0).toString());
763. }
764.
765. private void tcariActionPerformed(java.awt.event.ActionEvent evt)
{
766. // TODO add your handling code here:
767. }
768.
769. private void jTable1KeyReleased(java.awt.event.KeyEvent evt) {
770. // TODO add your handling code here:
771.
772. }
773.
774. private void jTable1KeyPressed(java.awt.event.KeyEvent evt) {
775. // TODO add your handling code here:
776.
777. }
778.
779. private void tcariKeyReleased(java.awt.event.KeyEvent evt) {
780. // TODO add your handling code here:
781. String no_induk = tcari.getText();
782. cls_input_data idm = new cls_input_data();
157

783. try{
784.
jTable1.setModel(DbUtils.resultSetToTableModel(idm.SearchTextLis
t(no_induk)));
785. }catch (Exception e) {
786. JOptionPane.showMessageDialog(null, e);
787. }
788. }
789.
790. private void txbahasaActionPerformed(java.awt.event.ActionEvent
evt) {
791. // TODO add your handling code here:
792. }
793.
794. private void printActionPerformed(java.awt.event.ActionEvent evt)
{
795. // TODO add your handling code here:
796. conn = new koneksi().getKoneksi();
797. try {
798. String report = ("C:\\Users\\ACER\\Documents\\PROJECT
APASI\\APASI\\src\\report\\data_siswa.jrxml");
799. HashMap no_induk = new HashMap();
800. no_induk.put("no_induk",kode.getText());
801.
802. JasperReport jr =
JasperCompileManager.compileReport(report);
803.
804. JasperPrint jp =
JasperFillManager.fillReport(jr,no_induk,conn);
805. JasperViewer.viewReport(jp, false);
806. } catch (Exception e) {
158

807. JOptionPane.showMessageDialog(null,e);
808. }
809. }
810.
811. /**
812. * @param args the command line arguments
813. */
814. public static void main(String args[]) {
815. /* Set the Nimbus look and feel */
816. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
817. /* If Nimbus (introduced in Java SE 6) is not available, stay with
the default look and feel.
818. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.ht
ml
819. */
820. try {
821. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
822. if ("FlatLaf Light".equals(info.getName())) {
823.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
824. break;
825. }
826. }
827. } catch (ClassNotFoundException ex) {
828.
java.util.logging.Logger.getLogger(input_data.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
829. } catch (InstantiationException ex) {
159

830.
java.util.logging.Logger.getLogger(input_data.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
831. } catch (IllegalAccessException ex) {
832.
java.util.logging.Logger.getLogger(input_data.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
833. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
834.
java.util.logging.Logger.getLogger(input_data.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
835. }
836. //</editor-fold>
837. //</editor-fold>
838.
839. /* Create and display the form */
840. java.awt.EventQueue.invokeLater(new Runnable() {
841. public void run() {
842. new input_data().setVisible(true);
843. }
844. });
845. }
846.
847. // Variables declaration - do not modify
848. private javax.swing.JComboBox<String> cbbulan_lahir;
849. private javax.swing.JComboBox<String> cbjk;
850. private javax.swing.JComboBox<String> cbkewarganegaraan;
851. private javax.swing.JComboBox<String> cbstts_keorangtuaan;
852. private javax.swing.JComboBox<String> cbtahun_lahir;
853. private javax.swing.JComboBox<String> cbtanggal_lahir;
854. private javax.swing.JButton edit;
160

855. private javax.swing.JLabel jLabel1;


856. private javax.swing.JLabel jLabel2;
857. private javax.swing.JLabel jLabel3;
858. private javax.swing.JLabel jLabel66;
859. private javax.swing.JLabel jLabel67;
860. private javax.swing.JLabel jLabel68;
861. private javax.swing.JLabel jLabel69;
862. private javax.swing.JLabel jLabel70;
863. private javax.swing.JLabel jLabel71;
864. private javax.swing.JLabel jLabel72;
865. private javax.swing.JLabel jLabel73;
866. private javax.swing.JLabel jLabel74;
867. private javax.swing.JLabel jLabel75;
868. private javax.swing.JLabel jLabel76;
869. private javax.swing.JLabel jLabel77;
870. private javax.swing.JLabel jLabel78;
871. private javax.swing.JLabel jLabel79;
872. private javax.swing.JLabel jLabel80;
873. private javax.swing.JLabel jLabel81;
874. private javax.swing.JPanel jPanel5;
875. private javax.swing.JPanel jPanel6;
876. private javax.swing.JScrollPane jScrollPane2;
877. private javax.swing.JTable jTable1;
878. private javax.swing.JComboBox<String> kelas;
879. private javax.swing.JButton kembali;
880. private javax.swing.JTextField kode;
881. private javax.swing.JButton print;
882. private javax.swing.JButton rbhapus;
883. private javax.swing.JButton rbreset;
884. private javax.swing.JButton rbsimpan;
885. private javax.swing.JTextField tcari;
161

886. private javax.swing.JTextField txalamat;


887. private javax.swing.JTextField txanak_ke;
888. private javax.swing.JTextField txbahasa;
889. private javax.swing.JTextField txjarak;
890. private javax.swing.JTextField txjum_sdr_angkat;
891. private javax.swing.JTextField txjum_sdr_kandung;
892. private javax.swing.JTextField txket_tinggal;
893. private javax.swing.JTextField txnama;
894. private javax.swing.JTextField txnisn;
895. private javax.swing.JTextField txno_induk;
896. private javax.swing.JTextField txno_telepon;
897. private javax.swing.JTextField txtempat_lahir;
898. // End of variables declaration
899.}

E. input_daftar.java
1. /*
2. * To change this license header, choose License Headers in Project
Properties.
3. * To change this template file, choose Tools | Templates
4. * and open the template in the editor.
5. */
6. package data;
7. import data.*;
8. import javax.swing.JOptionPane;
9. import javax.swing.table.DefaultTableModel;
10. import net.proteanit.sql.DbUtils;
11. import controller.koneksi;
12. import java.sql.Connection;
13. import java.util.HashMap;
14. import javax.swing.table.TableColumn;
162

15. import net.sf.jasperreports.engine.JasperCompileManager;


16. import net.sf.jasperreports.engine.JasperFillManager;
17. import net.sf.jasperreports.engine.JasperPrint;
18. import net.sf.jasperreports.engine.JasperReport;
19. import net.sf.jasperreports.view.JasperViewer;
20. import utama.menu;
21. /**
22. *
23. * @author cyber
24. */
25. public class input_daftar extends javax.swing.JFrame {
26.
27. /**
28. * Creates new form input_data
29. */
30. public input_daftar() {
31. initComponents();
32. lebarKolom();
33.
34. }
35.
36. public void ViewData(){
37. daftar idm = new daftar();
38. try{
39.
jTable1.setModel(DbUtils.resultSetToTableModel(idm.ViewJtable()))
;
40. }catch (Exception e){
41. JOptionPane.showMessageDialog(null, e);
42. }
43. }
163

44. public void lebarKolom(){


45. TableColumn column;
46.
jTable1.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OF
F);
47. column = jTable1.getColumnModel().getColumn(0);
48. column.setPreferredWidth(300);
49. column = jTable1.getColumnModel().getColumn(1);
50. column.setPreferredWidth(200);
51. column = jTable1.getColumnModel().getColumn(2);
52. column.setPreferredWidth(200);
53. column = jTable1.getColumnModel().getColumn(3);
54. column.setPreferredWidth(200);
55. column = jTable1.getColumnModel().getColumn(4);
56. column.setPreferredWidth(75);
57. }
58. public void kosong(){
59. txno.setText("");
60. txnama.setText("");
61. txnisn.setText("");
62. txalamat.setText("");
63. txasal.setText("");
64. txjenis.setSelectedIndex(0);
65. txtempat.setText("");
66. txtanggal.setSelectedIndex(0);
67. txbulan.setSelectedIndex(0);
68. txtahun.setSelectedIndex(0);
69. txayah.setText("");
70. txpayah.setText("");
71. txibu.setText("");
72. txpibu.setText("");
164

73. tcari.setText("");
74. txno.requestFocus();
75. ViewData();
76. }
77. /**
78. * This method is called from within the constructor to initialize the
form.
79. * WARNING: Do NOT modify this code. The content of this
method is always
80. * regenerated by the Form Editor.
81. */
82. @SuppressWarnings("unchecked")
83. // <editor-fold defaultstate="collapsed" desc="Generated Code">
84. private void initComponents() {
85.
86. jScrollPane2 = new javax.swing.JScrollPane();
87. jPanel1 = new javax.swing.JPanel();
88. tcari = new javax.swing.JTextField();
89. jLabel16 = new javax.swing.JLabel();
90. jPanel2 = new javax.swing.JPanel();
91. jLabel1 = new javax.swing.JLabel();
92. JScrollPane = new javax.swing.JScrollPane();
93. jTable1 = new javax.swing.JTable();
94. cbsimpan = new javax.swing.JButton();
95. btnclear = new javax.swing.JButton();
96. edit = new javax.swing.JButton();
97. hapus = new javax.swing.JButton();
98. kembali = new javax.swing.JButton();
99. txpibu = new javax.swing.JTextField();
100. jLabel2 = new javax.swing.JLabel();
101. jLabel3 = new javax.swing.JLabel();
165

102. txnama = new javax.swing.JTextField();


103. txnisn = new javax.swing.JTextField();
104. jLabel5 = new javax.swing.JLabel();
105. jLabel4 = new javax.swing.JLabel();
106. txalamat = new javax.swing.JTextField();
107. txasal = new javax.swing.JTextField();
108. jLabel6 = new javax.swing.JLabel();
109. txno = new javax.swing.JTextField();
110. jLabel7 = new javax.swing.JLabel();
111. jLabel8 = new javax.swing.JLabel();
112. jLabel9 = new javax.swing.JLabel();
113. jLabel11 = new javax.swing.JLabel();
114. jLabel12 = new javax.swing.JLabel();
115. jLabel13 = new javax.swing.JLabel();
116. jLabel14 = new javax.swing.JLabel();
117. txjenis = new javax.swing.JComboBox<>();
118. txtempat = new javax.swing.JTextField();
119. txtanggal = new javax.swing.JComboBox<>();
120. txbulan = new javax.swing.JComboBox<>();
121. txtahun = new javax.swing.JComboBox<>();
122. txayah = new javax.swing.JTextField();
123. txpayah = new javax.swing.JTextField();
124. txibu = new javax.swing.JTextField();
125. kode = new javax.swing.JTextField();
126. print = new javax.swing.JButton();
127.
128.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_
CLOSE);
129. addWindowListener(new java.awt.event.WindowAdapter() {
166

130. public void windowOpened(java.awt.event.WindowEvent evt)


{
131. formWindowOpened(evt);
132. }
133. });
134.
135. jPanel1.setBackground(new java.awt.Color(0, 153, 0));
136. jPanel1.setForeground(new java.awt.Color(255, 255, 255));
137. jPanel1.setPreferredSize(new java.awt.Dimension(1205, 456));
138.
139. tcari.addKeyListener(new java.awt.event.KeyAdapter() {
140. public void keyReleased(java.awt.event.KeyEvent evt) {
141. tcariKeyReleased(evt);
142. }
143. });
144.
145. jLabel16.setFont(new java.awt.Font("Tahoma", 0, 14)); //
NOI18N
146. jLabel16.setForeground(new java.awt.Color(255, 255, 255));
147. jLabel16.setText("Cari No. Pendaftaran");
148.
149. jPanel2.setBackground(new java.awt.Color(0, 153, 0));
150.
151. jLabel1.setBackground(new java.awt.Color(0, 153, 0));
152. jLabel1.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
153. jLabel1.setForeground(new java.awt.Color(255, 255, 255));
154. jLabel1.setText("Pendaftaran Siswa Baru ");
155. jLabel1.setCursor(new
java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
156.
167

157. javax.swing.GroupLayout jPanel2Layout = new


javax.swing.GroupLayout(jPanel2);
158. jPanel2.setLayout(jPanel2Layout);
159. jPanel2Layout.setHorizontalGroup(
160.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
161. .addGroup(jPanel2Layout.createSequentialGroup()
162. .addGap(320, 320, 320)
163. .addComponent(jLabel1)
164.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
165. );
166. jPanel2Layout.setVerticalGroup(
167.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
168. .addComponent(jLabel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
169. );
170.
171.
JScrollPane.setHorizontalScrollBarPolicy(javax.swing.ScrollPaneCon
stants.HORIZONTAL_SCROLLBAR_ALWAYS);
172.
JScrollPane.setVerticalScrollBarPolicy(javax.swing.ScrollPaneConsta
nts.VERTICAL_SCROLLBAR_ALWAYS);
173. JScrollPane.addMouseListener(new
java.awt.event.MouseAdapter() {
168

174. public void mouseClicked(java.awt.event.MouseEvent evt) {


175. JScrollPaneMouseClicked(evt);
176. }
177. });
178.
179. jTable1.setModel(new javax.swing.table.DefaultTableModel(
180. new Object [][] {
181. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null},
182. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null},
183. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null},
184. {null, null, null, null, null, null, null, null, null, null, null, null,
null, null}
185. },
186. new String [] {
187. "No. Pendaftaran", "Nama Lengkap", "NISN", "Alamat",
"Asal Sekolah", "Jenis Kelamin", "Tempat Lahir", "Tanggal Lahir",
"Bulan Lahir", "Tahun Lahir", "Nama Ayah", "Pekerjaan Ayah",
"Nama Ibu", "Pekerjaan Ibu"
188. }
189. ));
190. jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
191. public void mouseClicked(java.awt.event.MouseEvent evt) {
192. jTable1MouseClicked(evt);
193. }
194. public void mouseEntered(java.awt.event.MouseEvent evt) {
195. jTable1MouseEntered(evt);
196. }
197. });
169

198. jTable1.addKeyListener(new java.awt.event.KeyAdapter() {


199. public void keyReleased(java.awt.event.KeyEvent evt) {
200. jTable1KeyReleased(evt);
201. }
202. });
203. JScrollPane.setViewportView(jTable1);
204.
205. cbsimpan.setBackground(new java.awt.Color(255, 255, 255));
206. cbsimpan.setText("SIMPAN");
207. cbsimpan.addActionListener(new
java.awt.event.ActionListener() {
208. public void actionPerformed(java.awt.event.ActionEvent evt) {
209. cbsimpanActionPerformed(evt);
210. }
211. });
212.
213. btnclear.setBackground(new java.awt.Color(255, 255, 255));
214. btnclear.setText("RESET");
215. btnclear.addActionListener(new java.awt.event.ActionListener()
{
216. public void actionPerformed(java.awt.event.ActionEvent evt) {
217. btnclearActionPerformed(evt);
218. }
219. });
220.
221. edit.setBackground(new java.awt.Color(255, 255, 255));
222. edit.setText("EDIT");
223. edit.addActionListener(new java.awt.event.ActionListener() {
224. public void actionPerformed(java.awt.event.ActionEvent evt) {
225. editActionPerformed(evt);
226. }
170

227. });
228.
229. hapus.setBackground(new java.awt.Color(255, 255, 255));
230. hapus.setText("HAPUS");
231. hapus.addActionListener(new java.awt.event.ActionListener() {
232. public void actionPerformed(java.awt.event.ActionEvent evt) {
233. hapusActionPerformed(evt);
234. }
235. });
236.
237. kembali.setBackground(new java.awt.Color(255, 255, 255));
238. kembali.setFont(new java.awt.Font("Segoe UI", 1, 12)); //
NOI18N
239. kembali.setForeground(new java.awt.Color(255, 0, 0));
240. kembali.setText("KEMBALI");
241. kembali.addActionListener(new java.awt.event.ActionListener()
{
242. public void actionPerformed(java.awt.event.ActionEvent evt) {
243. kembaliActionPerformed(evt);
244. }
245. });
246.
247. jLabel2.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
248. jLabel2.setForeground(new java.awt.Color(255, 255, 255));
249. jLabel2.setText("Nama");
250.
251. jLabel3.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
252. jLabel3.setForeground(new java.awt.Color(255, 255, 255));
253. jLabel3.setText("NISN");
254.
255. txnama.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
171

256. txnama.addActionListener(new java.awt.event.ActionListener() {


257. public void actionPerformed(java.awt.event.ActionEvent evt) {
258. txnamaActionPerformed(evt);
259. }
260. });
261.
262. txnisn.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
263.
264. jLabel5.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
265. jLabel5.setForeground(new java.awt.Color(255, 255, 255));
266. jLabel5.setText("Alamat");
267.
268. jLabel4.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
269. jLabel4.setForeground(new java.awt.Color(255, 255, 255));
270. jLabel4.setText("Asal Sekolah");
271.
272. txalamat.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
273. txalamat.addActionListener(new java.awt.event.ActionListener()
{
274. public void actionPerformed(java.awt.event.ActionEvent evt) {
275. txalamatActionPerformed(evt);
276. }
277. });
278.
279. txasal.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
280. txasal.addActionListener(new java.awt.event.ActionListener() {
281. public void actionPerformed(java.awt.event.ActionEvent evt) {
282. txasalActionPerformed(evt);
283. }
284. });
172

285.
286. jLabel6.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
287. jLabel6.setForeground(new java.awt.Color(255, 255, 255));
288. jLabel6.setText("No. Pendaftaran");
289.
290. txno.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
291. txno.addActionListener(new java.awt.event.ActionListener() {
292. public void actionPerformed(java.awt.event.ActionEvent evt) {
293. txnoActionPerformed(evt);
294. }
295. });
296.
297. jLabel7.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
298. jLabel7.setForeground(new java.awt.Color(255, 255, 255));
299. jLabel7.setText("Jenis Kelamin");
300.
301. jLabel8.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
302. jLabel8.setForeground(new java.awt.Color(255, 255, 255));
303. jLabel8.setText("Tempat Lahir");
304.
305. jLabel9.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
306. jLabel9.setForeground(new java.awt.Color(255, 255, 255));
307. jLabel9.setText("Tanggal Lahir");
308.
309. jLabel11.setFont(new java.awt.Font("Tahoma", 0, 14)); //
NOI18N
310. jLabel11.setForeground(new java.awt.Color(255, 255, 255));
311. jLabel11.setText("Nama Ayah");
312.
313. jLabel12.setFont(new java.awt.Font("Tahoma", 0, 14)); //
NOI18N
173

314. jLabel12.setForeground(new java.awt.Color(255, 255, 255));


315. jLabel12.setText("Pekerjaan Ayah");
316.
317. jLabel13.setFont(new java.awt.Font("Tahoma", 0, 14)); //
NOI18N
318. jLabel13.setForeground(new java.awt.Color(255, 255, 255));
319. jLabel13.setText("Nama Ibu");
320.
321. jLabel14.setFont(new java.awt.Font("Tahoma", 0, 14)); //
NOI18N
322. jLabel14.setForeground(new java.awt.Color(255, 255, 255));
323. jLabel14.setText("Pekerjaan Ibu");
324.
325. txjenis.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "-Jenis
Kelamin-", "Laki-Laki", "Perempuan" }));
326.
327. txtempat.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
328.
329. txtanggal.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "Tgl", "1",
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15",
"16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27",
"28", "29", "30", "31" }));
330. txtanggal.addActionListener(new java.awt.event.ActionListener()
{
331. public void actionPerformed(java.awt.event.ActionEvent evt) {
332. txtanggalActionPerformed(evt);
333. }
334. });
174

335.
336. txbulan.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "Bulan",
"Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli",
"Agustus", "September", "Oktober", "November", "Desember" }));
337.
338. txtahun.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "Tahun",
"2000", "2001", "2002", "2003", "2004", "2005", "2006", "2007",
"2008", "2009", "2010", "2011", "2012", "2013", "2014", "2015",
"2016", "2017", "2018", "2019", "2020", "2021", "2022" }));
339.
340. txayah.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
341. txayah.addActionListener(new java.awt.event.ActionListener() {
342. public void actionPerformed(java.awt.event.ActionEvent evt) {
343. txayahActionPerformed(evt);
344. }
345. });
346.
347. txpayah.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
348.
349. txibu.addActionListener(new java.awt.event.ActionListener() {
350. public void actionPerformed(java.awt.event.ActionEvent evt) {
351. txibuActionPerformed(evt);
352. }
353. });
354.
355. print.setBackground(new java.awt.Color(255, 255, 255));
356. print.setText("PRINT");
357. print.addActionListener(new java.awt.event.ActionListener() {
358. public void actionPerformed(java.awt.event.ActionEvent evt) {
175

359. printActionPerformed(evt);
360. }
361. });
362.
363. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
364. jPanel1.setLayout(jPanel1Layout);
365. jPanel1Layout.setHorizontalGroup(
366.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
367. .addComponent(jPanel2,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
368. .addGroup(jPanel1Layout.createSequentialGroup()
369. .addGap(27, 27, 27)
370.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
371. .addComponent(jLabel6)
372. .addComponent(jLabel3)
373. .addComponent(jLabel4)
374. .addComponent(jLabel11)
375. .addComponent(jLabel12)
376. .addComponent(jLabel13)
377. .addComponent(jLabel14)
378. .addComponent(jLabel2)
379. .addComponent(jLabel7)
380. .addComponent(jLabel5)
381. .addComponent(jLabel8)
382. .addComponent(jLabel9))
176

383. .addGap(30, 30, 30)


384.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
385. .addGroup(jPanel1Layout.createSequentialGroup()
386.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
387. .addComponent(txjenis,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
388. .addComponent(txayah,
javax.swing.GroupLayout.PREFERRED_SIZE, 189,
javax.swing.GroupLayout.PREFERRED_SIZE)
389. .addComponent(txpayah,
javax.swing.GroupLayout.PREFERRED_SIZE, 189,
javax.swing.GroupLayout.PREFERRED_SIZE)
390. .addComponent(txibu,
javax.swing.GroupLayout.PREFERRED_SIZE, 189,
javax.swing.GroupLayout.PREFERRED_SIZE)
391. .addComponent(txpibu,
javax.swing.GroupLayout.PREFERRED_SIZE, 189,
javax.swing.GroupLayout.PREFERRED_SIZE)
392. .addComponent(txnama,
javax.swing.GroupLayout.PREFERRED_SIZE, 189,
javax.swing.GroupLayout.PREFERRED_SIZE)
393. .addComponent(txasal,
javax.swing.GroupLayout.PREFERRED_SIZE, 189,
javax.swing.GroupLayout.PREFERRED_SIZE)
177

394. .addComponent(txalamat,
javax.swing.GroupLayout.PREFERRED_SIZE, 189,
javax.swing.GroupLayout.PREFERRED_SIZE)
395. .addComponent(txnisn,
javax.swing.GroupLayout.PREFERRED_SIZE, 189,
javax.swing.GroupLayout.PREFERRED_SIZE)
396. .addComponent(txtempat,
javax.swing.GroupLayout.PREFERRED_SIZE, 189,
javax.swing.GroupLayout.PREFERRED_SIZE))
397.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
398.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
399.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING)
400. .addGroup(jPanel1Layout.createSequentialGroup()
401. .addComponent(txno,
javax.swing.GroupLayout.PREFERRED_SIZE, 189,
javax.swing.GroupLayout.PREFERRED_SIZE)
402. .addGap(73, 73, 73)
403. .addComponent(jLabel16,
javax.swing.GroupLayout.PREFERRED_SIZE, 143,
javax.swing.GroupLayout.PREFERRED_SIZE)
404.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
178

405. .addComponent(tcari,
javax.swing.GroupLayout.PREFERRED_SIZE, 178,
javax.swing.GroupLayout.PREFERRED_SIZE)
406.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
407. .addComponent(kode,
javax.swing.GroupLayout.PREFERRED_SIZE, 134,
javax.swing.GroupLayout.PREFERRED_SIZE)
408. .addGap(18, 18, 18)
409. .addComponent(print))
410. .addGroup(jPanel1Layout.createSequentialGroup()
411. .addComponent(txtanggal,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
412.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
413. .addComponent(txbulan,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
414. .addGap(18, 18, 18)
415. .addComponent(txtahun,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
179

416.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, 82, Short.MAX_VALUE)
417.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
418.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
419. .addComponent(cbsimpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 87,
javax.swing.GroupLayout.PREFERRED_SIZE)
420.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
421. .addComponent(edit,
javax.swing.GroupLayout.PREFERRED_SIZE, 80,
javax.swing.GroupLayout.PREFERRED_SIZE)
422.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
423. .addComponent(btnclear,
javax.swing.GroupLayout.PREFERRED_SIZE, 80,
javax.swing.GroupLayout.PREFERRED_SIZE)
424.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
425. .addComponent(hapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 88,
javax.swing.GroupLayout.PREFERRED_SIZE)
426. .addGap(117, 117, 117)
180

427. .addComponent(kembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 107,
javax.swing.GroupLayout.PREFERRED_SIZE))
428. .addComponent(JScrollPane,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.PREFERRED_SIZE, 621,
javax.swing.GroupLayout.PREFERRED_SIZE))))
429. .addGap(147, 147, 147))))
430. );
431. jPanel1Layout.setVerticalGroup(
432.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
433. .addGroup(jPanel1Layout.createSequentialGroup()
434. .addContainerGap()
435. .addComponent(jPanel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
436.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING, false)
437. .addGroup(jPanel1Layout.createSequentialGroup()
438. .addGap(36, 36, 36)
439.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
440. .addComponent(jLabel6)
441. .addComponent(txno,
javax.swing.GroupLayout.PREFERRED_SIZE,
181

javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
442. .addGap(10, 10, 10)
443.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
444. .addComponent(jLabel3)
445. .addComponent(txnisn,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
446. .addGap(10, 10, 10)
447.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
448. .addComponent(jLabel2)
449. .addComponent(txnama,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
450. .addGap(10, 10, 10)
451.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
452. .addComponent(jLabel7)
453. .addComponent(txjenis,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
454. .addGap(10, 10, 10)
182

455.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING)
456. .addComponent(txtempat,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
457. .addComponent(jLabel8))
458. .addGap(10, 10, 10)
459.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
460. .addComponent(jLabel9)
461. .addComponent(txtanggal,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
462. .addComponent(txbulan,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
463. .addComponent(txtahun,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
464.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, 10, Short.MAX_VALUE)
465.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
183

466. .addComponent(jLabel5,
javax.swing.GroupLayout.Alignment.TRAILING)
467. .addComponent(txalamat,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
468. .addGap(10, 10, 10)
469.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
470. .addComponent(txasal,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
471. .addComponent(jLabel4))
472. .addGap(10, 10, 10)
473.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
474. .addComponent(txayah,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
475. .addComponent(jLabel11))
476. .addGap(10, 10, 10)
477.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
478. .addComponent(txpayah,
javax.swing.GroupLayout.PREFERRED_SIZE,
184

javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
479. .addComponent(jLabel12)))
480. .addGroup(jPanel1Layout.createSequentialGroup()
481. .addGap(18, 18, 18)
482.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING)
483.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
484. .addComponent(tcari,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
485. .addComponent(kode,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
486. .addComponent(print))
487. .addComponent(jLabel16,
javax.swing.GroupLayout.PREFERRED_SIZE, 15,
javax.swing.GroupLayout.PREFERRED_SIZE))
488. .addGap(11, 11, 11)
489. .addComponent(JScrollPane,
javax.swing.GroupLayout.PREFERRED_SIZE, 222,
javax.swing.GroupLayout.PREFERRED_SIZE)
490. .addGap(20, 20, 20)
491.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
185

492.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
493. .addComponent(edit,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
494. .addComponent(cbsimpan,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
495. .addComponent(btnclear,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
496. .addComponent(hapus,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
497. .addComponent(kembali))))
498. .addGap(9, 9, 9)
499.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
500. .addComponent(txibu,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
501. .addComponent(jLabel13))
502. .addGap(10, 10, 10)
503.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
504. .addComponent(txpibu,
javax.swing.GroupLayout.PREFERRED_SIZE,
186

javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
505. .addComponent(jLabel14))
506. .addContainerGap(119, Short.MAX_VALUE))
507. );
508.
509. txjenis.getAccessibleContext().setAccessibleName("");
510.
511. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
512. getContentPane().setLayout(layout);
513. layout.setHorizontalGroup(
514.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
515. .addComponent(jPanel1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
516. );
517. layout.setVerticalGroup(
518.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
519. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE, 567,
Short.MAX_VALUE)
520. );
521.
522. setSize(new java.awt.Dimension(1130, 606));
523. setLocationRelativeTo(null);
187

524. }// </editor-fold>


525.
526.
527. private void txnamaActionPerformed(java.awt.event.ActionEvent
evt) {
528. // TODO add your handling code here:
529. }
530.
531. private void cbsimpanActionPerformed(java.awt.event.ActionEvent
evt) {
532. // TODO add your handling code here:
533. daftar idm = new daftar();
534. //harga = Integer.parseInt(tf_harga.getText().trim());
535. idm.no = Integer.parseInt(txno.getText());
536. idm.nama = txnama.getText();
537. idm.strnisn = Integer.parseInt(txnisn.getText());
538. idm.alamat = txalamat.getText();
539. idm.asal = txasal.getText();
540. idm.jenis = txjenis.getSelectedItem().toString();
541. idm.tempat = txtempat.getText();
542. idm.tanggal =
Integer.parseInt(txtanggal.getSelectedItem().toString());
543. idm.bulan = txbulan.getSelectedItem().toString();
544. idm.tahun = txtahun.getSelectedItem().toString();
545. idm.ayah = txayah.getText();
546. idm.payah = txpayah.getText();
547. idm.ibu = txibu.getText();
548. idm.pibu = txpibu.getText();
549. try{
550. idm.simpan();
551. JOptionPane.showMessageDialog(null, "berhasil");
188

552. }catch (Exception e){


553. JOptionPane.showMessageDialog(null,e);
554. }ViewData(); kosong();
555.
556.
557. }
558.
559. private void btnclearActionPerformed(java.awt.event.ActionEvent
evt) {
560. // TODO add your handling code here:
561. txno.setText("");
562. txnama.setText("");
563. txnisn.setText("");
564. txalamat.setText("");
565. txasal.setText("");
566. txjenis.setSelectedIndex(0);
567. txtempat.setText("");
568. txtanggal.setSelectedIndex(0);
569. txbulan.setSelectedIndex(0);
570. txtahun.setSelectedIndex(0);
571. txayah.setText("");
572. txpayah.setText("");
573. txibu.setText("");
574. txpibu.setText("");
575. tcari.setText("");
576. kode.setText("");
577. txno.requestFocus();
578. ViewData();
579. }
580.
189

581. private void txalamatActionPerformed(java.awt.event.ActionEvent


evt) {
582. // TODO add your handling code here:
583. }
584.
585. private void txnoActionPerformed(java.awt.event.ActionEvent evt)
{
586. // TODO add your handling code here:
587. }
588.
589. private void txibuActionPerformed(java.awt.event.ActionEvent evt)
{
590. // TODO add your handling code here:
591. }
592.
593. private void kembaliActionPerformed(java.awt.event.ActionEvent
evt) {
594. // TODO add your handling code here:
595. menu menu = new menu();
596. menu.setVisible(true);
597. this.dispose();
598. }
599.
600. private void txtanggalActionPerformed(java.awt.event.ActionEvent
evt) {
601. // TODO add your handling code here:
602. }
603.
604. private void formWindowOpened(java.awt.event.WindowEvent
evt) {
605. // TODO add your handling code here:
190

606. ViewData();
607. }
608.
609. private void editActionPerformed(java.awt.event.ActionEvent evt) {
610. // TODO add your handling code here:
611. daftar idm = new daftar();
612. //harga = Integer.parseInt(tf_harga.getText().trim());
613. idm.no = Integer.parseInt(txno.getText());
614. idm.nama = txnama.getText();
615. idm.strnisn = Integer.parseInt(txnisn.getText());
616. idm.alamat = txalamat.getText();
617. idm.asal = txasal.getText();
618. idm.jenis = txjenis.getSelectedItem().toString();
619. idm.tempat = txtempat.getText();
620. idm.tanggal =
Integer.parseInt(txtanggal.getSelectedItem().toString());
621. idm.bulan = txbulan.getSelectedItem().toString();
622. idm.tahun = txtahun.getSelectedItem().toString();
623. idm.ayah = txayah.getText();
624. idm.payah = txpayah.getText();
625. idm.ibu = txibu.getText();
626. idm.pibu = txpibu.getText();
627. try{
628. idm.edit();
629. JOptionPane.showMessageDialog(null, "berhasil");
630. }catch (Exception e){
631. JOptionPane.showMessageDialog(null,e);
632. }ViewData();
633. kosong();
634.
635. }
191

636.
637. private void jTable1KeyReleased(java.awt.event.KeyEvent evt) {
638. // TODO add your handling code here:
639.
640. }
641.
642. private void tcariKeyReleased(java.awt.event.KeyEvent evt) {
643. // TODO add your handling code here:
644. String Nama = tcari.getText();
645. daftar idm = new daftar();
646. try{
647.
jTable1.setModel(DbUtils.resultSetToTableModel(idm.SearchTextLis
t(Nama)));
648. }catch (Exception e) {
649. JOptionPane.showMessageDialog(null, e);
650. }
651.
652. }
653.
654. private void jTable1MouseClicked(java.awt.event.MouseEvent evt)
{
655. // TODO add your handling code here:
656. int i = jTable1.getSelectedRow();
657. txno.setText(jTable1.getModel().getValueAt(i,0).toString());
658. txnama.setText(jTable1.getModel().getValueAt(i,1).toString());
659. txnisn.setText(jTable1.getModel().getValueAt(i,2).toString());
660. txalamat.setText(jTable1.getModel().getValueAt(i,3).toString());
661. txasal.setText(jTable1.getModel().getValueAt(i,4).toString());
192

662.
txjenis.setSelectedItem(jTable1.getModel().getValueAt(i,5).toString()
);
663. txtempat.setText(jTable1.getModel().getValueAt(i,6).toString());
664.
txtanggal.setSelectedItem(jTable1.getModel().getValueAt(i,7).toStrin
g());
665.
txbulan.setSelectedItem(jTable1.getModel().getValueAt(i,8).toString(
));
666.
txtahun.setSelectedItem(jTable1.getModel().getValueAt(i,9).toString(
));
667. txayah.setText(jTable1.getModel().getValueAt(i,10).toString());
668. txpayah.setText(jTable1.getModel().getValueAt(i,11).toString());
669. txibu.setText(jTable1.getModel().getValueAt(i,12).toString());
670. txpibu.setText(jTable1.getModel().getValueAt(i,13).toString());
671. kode.setText(jTable1.getModel().getValueAt(i,0).toString());
672. }
673.
674. private void hapusActionPerformed(java.awt.event.ActionEvent
evt) {
675. // TODO add your handling code here:
676. String ObjButtons[]={"Yes","No"};
677. int PromptResult= JOptionPane.showOptionDialog(null,"Hapus
?","Message",JOptionPane.DEFAULT_OPTION,JOptionPane.QUES
TION_MESSAGE,null,ObjButtons,ObjButtons[1]);
678. if(PromptResult==0){
679. daftar idm = new daftar();
680. idm.no = Integer.parseInt(txno.getText());
681.
193

682. try{
683. idm.hapus();
684. JOptionPane.showMessageDialog(null, "Berhasil dihapus");
685. ViewData();
686. }catch (Exception e){
687. JOptionPane.showMessageDialog(null,e);
688. }
689. kosong();
690. }
691. }
692.
693. private void txayahActionPerformed(java.awt.event.ActionEvent
evt) {
694. // TODO add your handling code here:
695. }
696.
697. private void txasalActionPerformed(java.awt.event.ActionEvent
evt) {
698. // TODO add your handling code here:
699. }
700.
701. private void printActionPerformed(java.awt.event.ActionEvent evt)
{
702. // TODO add your handling code here:
703. Connection conn = new koneksi().getKoneksi();
704. try {
705. String report =
("C:\\Users\\LENOVO\\Documents\\NetBeansProjects\\APASI\\src\\r
eport\\daftar.jrxml");
706. HashMap nop = new HashMap();
707. nop.put("no",kode.getText());
194

708.
709. JasperReport jr =
JasperCompileManager.compileReport(report);
710.
711. JasperPrint jp = JasperFillManager.fillReport(jr,nop,conn);
712. JasperViewer.viewReport(jp, false);
713. } catch (Exception e) {
714. JOptionPane.showMessageDialog(null,e);
715. }
716. }
717.
718. private void JScrollPaneMouseClicked(java.awt.event.MouseEvent
evt) {
719. // TODO add your handling code here:
720. }
721.
722. private void jTable1MouseEntered(java.awt.event.MouseEvent evt)
{
723. // TODO add your handling code here:
724. }
725.
726. /**
727. * @param args the command line arguments
728. */
729. public static void main(String args[]) {
730. /* Set the Nimbus look and feel */
731. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
732. /* If Nimbus (introduced in Java SE 6) is not available, stay with
the default look and feel.
195

733. * For details see


http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.ht
ml
734. */
735. try {
736. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
737. if ("FlatLaf Light".equals(info.getName())) {
738.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
739. break;
740. }
741. }
742. } catch (ClassNotFoundException ex) {
743.
java.util.logging.Logger.getLogger(input_daftar.class.getName()).log(
java.util.logging.Level.SEVERE, null, ex);
744. } catch (InstantiationException ex) {
745.
java.util.logging.Logger.getLogger(input_daftar.class.getName()).log(
java.util.logging.Level.SEVERE, null, ex);
746. } catch (IllegalAccessException ex) {
747.
java.util.logging.Logger.getLogger(input_daftar.class.getName()).log(
java.util.logging.Level.SEVERE, null, ex);
748. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
749.
java.util.logging.Logger.getLogger(input_daftar.class.getName()).log(
java.util.logging.Level.SEVERE, null, ex);
750. }
751. //</editor-fold>
196

752. //</editor-fold>
753. //</editor-fold>
754. //</editor-fold>
755.
756. /* Create and display the form */
757. java.awt.EventQueue.invokeLater(new Runnable() {
758. public void run() {
759. new input_daftar().setVisible(true);
760. }
761. });
762. }
763.
764. // Variables declaration - do not modify
765. private javax.swing.JScrollPane JScrollPane;
766. private javax.swing.JButton btnclear;
767. private javax.swing.JButton cbsimpan;
768. private javax.swing.JButton edit;
769. private javax.swing.JButton hapus;
770. private javax.swing.JLabel jLabel1;
771. private javax.swing.JLabel jLabel11;
772. private javax.swing.JLabel jLabel12;
773. private javax.swing.JLabel jLabel13;
774. private javax.swing.JLabel jLabel14;
775. private javax.swing.JLabel jLabel16;
776. private javax.swing.JLabel jLabel2;
777. private javax.swing.JLabel jLabel3;
778. private javax.swing.JLabel jLabel4;
779. private javax.swing.JLabel jLabel5;
780. private javax.swing.JLabel jLabel6;
781. private javax.swing.JLabel jLabel7;
782. private javax.swing.JLabel jLabel8;
197

783. private javax.swing.JLabel jLabel9;


784. private javax.swing.JPanel jPanel1;
785. private javax.swing.JPanel jPanel2;
786. private javax.swing.JScrollPane jScrollPane2;
787. private javax.swing.JTable jTable1;
788. private javax.swing.JButton kembali;
789. private javax.swing.JTextField kode;
790. private javax.swing.JButton print;
791. private javax.swing.JTextField tcari;
792. private javax.swing.JTextField txalamat;
793. private javax.swing.JTextField txasal;
794. private javax.swing.JTextField txayah;
795. private javax.swing.JComboBox<String> txbulan;
796. private javax.swing.JTextField txibu;
797. private javax.swing.JComboBox<String> txjenis;
798. private javax.swing.JTextField txnama;
799. private javax.swing.JTextField txnisn;
800. private javax.swing.JTextField txno;
801. private javax.swing.JTextField txpayah;
802. private javax.swing.JTextField txpibu;
803. private javax.swing.JComboBox<String> txtahun;
804. private javax.swing.JComboBox<String> txtanggal;
805. private javax.swing.JTextField txtempat;
806. // End of variables declaration
807. }

F. input_nilai.java
1. /*
2. * To change this license header, choose License Headers in Project
Properties.
3. * To change this template file, choose Tools | Templates
198

4. * and open the template in the editor.


5. */
6. package nilai;
7. import controller.koneksi;
8. import java.sql.Connection;
9. import java.sql.PreparedStatement;
10. import java.sql.ResultSet;
11. import java.sql.SQLException;
12. import java.util.HashMap;
13. import nilai.cls_input_nilai;
14. import javax.swing.JOptionPane;
15. import net.proteanit.sql.DbUtils;
16. import net.sf.jasperreports.engine.JasperCompileManager;
17. import net.sf.jasperreports.engine.JasperFillManager;
18. import net.sf.jasperreports.engine.JasperPrint;
19. import net.sf.jasperreports.engine.JasperReport;
20. import net.sf.jasperreports.view.JasperViewer;
21. import utama.menu;
22. /**
23. *
24. * @author Username
25. */
26. public class input_nilai extends javax.swing.JFrame {
27. Connection conn = null;
28. ResultSet rs = null;
29. PreparedStatement pst = null;
30.
31. public input_nilai() {
32. initComponents();
33. ViewData();
34. }
199

35. public ResultSet UpdateJTable()throws SQLException{


36. conn=koneksi.getKoneksi();
37. String sql="select*from input_nilai_siswa where kelas = '1'";
38. pst=conn.prepareStatement(sql);
39. rs = pst.executeQuery();
40. return rs;
41. }
42.
43. public void ViewData(){
44. try{
45.
jTable1.setModel(DbUtils.resultSetToTableModel(UpdateJTable()));
46.
47. }catch(Exception e){
48. JOptionPane.showMessageDialog(null,e);
49. }
50. }
51. public void kosong(){
52. tno_induk.setText("");
53. txnama.setText("");
54. mapel.setSelectedIndex(0);
55. txnharian.setText("");
56. txntugas.setText("");
57. txnuts.setText("");
58. txnuas.setText("");
59. tcari_nama.setText("");
60. ViewData();
61. }
62. public ResultSet SearchTextList(String nama)throws
SQLException{
63. conn = koneksi.getKoneksi();
200

64. String sql = "select * from input_nilai_siswa where kelas = '1'


AND nama like ?";
65. pst = conn.prepareStatement(sql);
66. pst.setString(1, nama);
67. rs = pst.executeQuery();
68. return rs;
69. }
70. /**
71. * This method is called from within the constructor to initialize the
form.
72. * WARNING: Do NOT modify this code. The content of this
method is always
73. * regenerated by the Form Editor.
74. */
75. @SuppressWarnings("unchecked")
76. // <editor-fold defaultstate="collapsed" desc="Generated Code">
77. private void initComponents() {
78.
79. jLabel8 = new javax.swing.JLabel();
80. jPanel1 = new javax.swing.JPanel();
81. jLabel1 = new javax.swing.JLabel();
82. jPanel2 = new javax.swing.JPanel();
83. jLabel2 = new javax.swing.JLabel();
84. jLabel3 = new javax.swing.JLabel();
85. jLabel4 = new javax.swing.JLabel();
86. jLabel5 = new javax.swing.JLabel();
87. jLabel6 = new javax.swing.JLabel();
88. jLabel7 = new javax.swing.JLabel();
89. tno_induk = new javax.swing.JTextField();
90. txnama = new javax.swing.JTextField();
91. txnharian = new javax.swing.JTextField();
201

92. txntugas = new javax.swing.JTextField();


93. txnuts = new javax.swing.JTextField();
94. txnuas = new javax.swing.JTextField();
95. bsimpan = new javax.swing.JButton();
96. breset = new javax.swing.JButton();
97. bhapus = new javax.swing.JButton();
98. jScrollPane1 = new javax.swing.JScrollPane();
99. jTable1 = new javax.swing.JTable();
100. edit = new javax.swing.JButton();
101. tcari_nama = new javax.swing.JTextField();
102. jLabel10 = new javax.swing.JLabel();
103. mapel = new javax.swing.JComboBox<>();
104. jLabel11 = new javax.swing.JLabel();
105. jLabel13 = new javax.swing.JLabel();
106. jButton1 = new javax.swing.JButton();
107. jPanel3 = new javax.swing.JPanel();
108. jLabel9 = new javax.swing.JLabel();
109. kls2 = new javax.swing.JButton();
110. kls4 = new javax.swing.JButton();
111. kls3 = new javax.swing.JButton();
112. kls5 = new javax.swing.JButton();
113. kls6 = new javax.swing.JButton();
114. kembali = new javax.swing.JButton();
115.
116. jLabel8.setBackground(new java.awt.Color(255, 255, 255));
117.
jLabel8.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
118. jLabel8.setText("KELAS 1");
119.
202

120.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_
CLOSE);
121. addWindowListener(new java.awt.event.WindowAdapter() {
122. public void windowOpened(java.awt.event.WindowEvent evt)
{
123. formWindowOpened(evt);
124. }
125. });
126.
127. jPanel1.setBackground(new java.awt.Color(0, 153, 0));
128.
129. jLabel1.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
130. jLabel1.setForeground(new java.awt.Color(255, 255, 255));
131.
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
132. jLabel1.setText("INPUT NILAI SISWA");
133.
134. jPanel2.setBackground(new java.awt.Color(255, 255, 255));
135.
136. jLabel2.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
137. jLabel2.setText("No. Induk");
138.
139. jLabel3.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
140. jLabel3.setText("Nama");
141.
142. jLabel4.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
143. jLabel4.setText("Nilai Harian");
144.
145. jLabel5.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
203

146. jLabel5.setText("Nilai Tugas");


147.
148. jLabel6.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
149. jLabel6.setText("Nilai UTS");
150.
151. jLabel7.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
152. jLabel7.setText("Nilai UAS");
153.
154. txnama.addActionListener(new java.awt.event.ActionListener() {
155. public void actionPerformed(java.awt.event.ActionEvent evt) {
156. txnamaActionPerformed(evt);
157. }
158. });
159.
160. bsimpan.setBackground(new java.awt.Color(0, 153, 0));
161. bsimpan.setForeground(new java.awt.Color(255, 255, 255));
162. bsimpan.setText("SIMPAN");
163. bsimpan.addActionListener(new java.awt.event.ActionListener()
{
164. public void actionPerformed(java.awt.event.ActionEvent evt) {
165. bsimpanActionPerformed(evt);
166. }
167. });
168.
169. breset.setBackground(new java.awt.Color(0, 153, 0));
170. breset.setForeground(new java.awt.Color(255, 255, 255));
171. breset.setText("RESET");
172. breset.addActionListener(new java.awt.event.ActionListener() {
173. public void actionPerformed(java.awt.event.ActionEvent evt) {
174. bresetActionPerformed(evt);
175. }
204

176. });
177.
178. bhapus.setBackground(new java.awt.Color(0, 153, 0));
179. bhapus.setForeground(new java.awt.Color(255, 255, 255));
180. bhapus.setText("HAPUS");
181. bhapus.addActionListener(new java.awt.event.ActionListener() {
182. public void actionPerformed(java.awt.event.ActionEvent evt) {
183. bhapusActionPerformed(evt);
184. }
185. });
186.
187. jTable1.setModel(new javax.swing.table.DefaultTableModel(
188. new Object [][] {
189. {null, null, null, null, null, null, null},
190. {null, null, null, null, null, null, null},
191. {null, null, null, null, null, null, null},
192. {null, null, null, null, null, null, null}
193. },
194. new String [] {
195. "No. Induk", "Nama", "Mata Pelajaran", "Nilai Harian",
"Nilai Tugas", "Nilai UTS", "Nilai UAS"
196. }
197. ));
198. jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
199. public void mouseClicked(java.awt.event.MouseEvent evt) {
200. jTable1MouseClicked(evt);
201. }
202. });
203. jScrollPane1.setViewportView(jTable1);
204.
205. edit.setBackground(new java.awt.Color(0, 153, 0));
205

206. edit.setForeground(new java.awt.Color(255, 255, 255));


207. edit.setText("EDIT");
208. edit.addActionListener(new java.awt.event.ActionListener() {
209. public void actionPerformed(java.awt.event.ActionEvent evt) {
210. editActionPerformed(evt);
211. }
212. });
213.
214. tcari_nama.addKeyListener(new java.awt.event.KeyAdapter() {
215. public void keyReleased(java.awt.event.KeyEvent evt) {
216. tcari_namaKeyReleased(evt);
217. }
218. });
219.
220. jLabel10.setText("CARI NAMA");
221.
222. mapel.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "--PILIH--",
"Bhs. Indonesia", "Matematika", "Bhs. Inggris", " " }));
223. mapel.addActionListener(new java.awt.event.ActionListener() {
224. public void actionPerformed(java.awt.event.ActionEvent evt) {
225. mapelActionPerformed(evt);
226. }
227. });
228.
229. jLabel11.setFont(new java.awt.Font("Tahoma", 0, 12)); //
NOI18N
230. jLabel11.setText("Mata Pelajaran");
231.
206

232.
jLabel13.setHorizontalAlignment(javax.swing.SwingConstants.CENT
ER);
233. jLabel13.setText("KELAS 1");
234.
235. jButton1.setBackground(new java.awt.Color(255, 255, 255));
236. jButton1.setText("PRINT");
237. jButton1.addActionListener(new java.awt.event.ActionListener()
{
238. public void actionPerformed(java.awt.event.ActionEvent evt) {
239. jButton1ActionPerformed(evt);
240. }
241. });
242.
243. javax.swing.GroupLayout jPanel2Layout = new
javax.swing.GroupLayout(jPanel2);
244. jPanel2.setLayout(jPanel2Layout);
245. jPanel2Layout.setHorizontalGroup(
246.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
247. .addGroup(jPanel2Layout.createSequentialGroup()
248. .addContainerGap()
249.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
250. .addGroup(jPanel2Layout.createSequentialGroup()
251. .addComponent(jScrollPane1)
252. .addContainerGap())
253. .addGroup(jPanel2Layout.createSequentialGroup()
254. .addGap(18, 18, 18)
207

255. .addComponent(jButton1,
javax.swing.GroupLayout.PREFERRED_SIZE, 83,
javax.swing.GroupLayout.PREFERRED_SIZE)
256. .addGap(241, 241, 241)
257. .addComponent(jLabel10,
javax.swing.GroupLayout.PREFERRED_SIZE, 66,
javax.swing.GroupLayout.PREFERRED_SIZE)
258.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
259. .addComponent(tcari_nama,
javax.swing.GroupLayout.PREFERRED_SIZE, 173,
javax.swing.GroupLayout.PREFERRED_SIZE)
260. .addGap(32, 32, 32))))
261. .addGroup(jPanel2Layout.createSequentialGroup()
262.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
263. .addGroup(jPanel2Layout.createSequentialGroup()
264. .addGap(10, 10, 10)
265.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
266. .addComponent(jLabel2)
267. .addComponent(jLabel3)
268. .addComponent(jLabel11)
269. .addComponent(jLabel4)
270. .addComponent(jLabel5)
271. .addComponent(jLabel6)
272. .addComponent(jLabel7))
273. .addGap(24, 24, 24)
208

274.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
275. .addComponent(txnama,
javax.swing.GroupLayout.PREFERRED_SIZE, 257,
javax.swing.GroupLayout.PREFERRED_SIZE)
276. .addComponent(tno_induk,
javax.swing.GroupLayout.PREFERRED_SIZE, 140,
javax.swing.GroupLayout.PREFERRED_SIZE)
277. .addComponent(mapel,
javax.swing.GroupLayout.PREFERRED_SIZE, 181,
javax.swing.GroupLayout.PREFERRED_SIZE)
278.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING, false)
279. .addComponent(txnuas,
javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.DEFAULT_SIZE, 86,
Short.MAX_VALUE)
280. .addComponent(txnuts,
javax.swing.GroupLayout.Alignment.LEADING)
281. .addComponent(txntugas,
javax.swing.GroupLayout.Alignment.LEADING)
282. .addComponent(txnharian,
javax.swing.GroupLayout.Alignment.LEADING))))
283. .addGroup(jPanel2Layout.createSequentialGroup()
284. .addGap(107, 107, 107)
285. .addComponent(bsimpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 98,
javax.swing.GroupLayout.PREFERRED_SIZE)
286. .addGap(18, 18, 18)
209

287. .addComponent(bhapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 98,
javax.swing.GroupLayout.PREFERRED_SIZE)
288. .addGap(18, 18, 18)
289. .addComponent(breset,
javax.swing.GroupLayout.PREFERRED_SIZE, 88,
javax.swing.GroupLayout.PREFERRED_SIZE)
290. .addGap(18, 18, 18)
291. .addComponent(edit,
javax.swing.GroupLayout.PREFERRED_SIZE, 90,
javax.swing.GroupLayout.PREFERRED_SIZE)))
292.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
293. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel2Layout.createSequentialGroup()
294. .addGap(0, 0, Short.MAX_VALUE)
295. .addComponent(jLabel13,
javax.swing.GroupLayout.PREFERRED_SIZE, 65,
javax.swing.GroupLayout.PREFERRED_SIZE)
296. .addGap(286, 286, 286))
297. );
298. jPanel2Layout.setVerticalGroup(
299.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
300. .addGroup(jPanel2Layout.createSequentialGroup()
301. .addContainerGap()
302. .addComponent(jLabel13,
javax.swing.GroupLayout.PREFERRED_SIZE, 24,
javax.swing.GroupLayout.PREFERRED_SIZE)
210

303.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
304.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
305. .addComponent(tno_induk,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
306. .addComponent(jLabel2))
307.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
308.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
309. .addComponent(jLabel3)
310. .addComponent(txnama,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
311.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
312.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
313. .addComponent(jLabel11)
211

314. .addComponent(mapel,
javax.swing.GroupLayout.PREFERRED_SIZE, 22,
javax.swing.GroupLayout.PREFERRED_SIZE))
315.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
316.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
317. .addComponent(txnharian,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
318. .addComponent(jLabel4))
319. .addGap(12, 12, 12)
320.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
321. .addComponent(txntugas,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
322. .addComponent(jLabel5))
323.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
324.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
325. .addComponent(txnuts,
javax.swing.GroupLayout.PREFERRED_SIZE,
212

javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
326. .addComponent(jLabel6))
327.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
328.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
329. .addComponent(txnuas,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
330. .addComponent(jLabel7))
331. .addGap(30, 30, 30)
332.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
333. .addComponent(bsimpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 35,
javax.swing.GroupLayout.PREFERRED_SIZE)
334. .addComponent(bhapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 35,
javax.swing.GroupLayout.PREFERRED_SIZE)
335. .addComponent(breset,
javax.swing.GroupLayout.PREFERRED_SIZE, 35,
javax.swing.GroupLayout.PREFERRED_SIZE)
336. .addComponent(edit,
javax.swing.GroupLayout.PREFERRED_SIZE, 35,
javax.swing.GroupLayout.PREFERRED_SIZE))
213

337. .addGap(19, 19, 19)


338.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
339. .addComponent(tcari_nama,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
340. .addComponent(jLabel10)
341. .addComponent(jButton1))
342.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
343. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 82,
javax.swing.GroupLayout.PREFERRED_SIZE)
344. .addGap(39, 39, 39))
345. );
346.
347. jPanel3.setBackground(new java.awt.Color(0, 153, 0));
348.
349. jLabel9.setBackground(new java.awt.Color(255, 255, 255));
350. jLabel9.setForeground(new java.awt.Color(255, 255, 255));
351.
jLabel9.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
352. jLabel9.setText("KELAS 1");
353.
jLabel9.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(255, 255, 255)));
354.
214

355. kls2.setBackground(new java.awt.Color(255, 255, 255));


356. kls2.setForeground(new java.awt.Color(0, 153, 0));
357. kls2.setText("KELAS 2");
358. kls2.setBorder(null);
359. kls2.addActionListener(new java.awt.event.ActionListener() {
360. public void actionPerformed(java.awt.event.ActionEvent evt) {
361. kls2ActionPerformed(evt);
362. }
363. });
364.
365. kls4.setBackground(new java.awt.Color(255, 255, 255));
366. kls4.setForeground(new java.awt.Color(0, 153, 0));
367. kls4.setText("KELAS 4");
368. kls4.addActionListener(new java.awt.event.ActionListener() {
369. public void actionPerformed(java.awt.event.ActionEvent evt) {
370. kls4ActionPerformed(evt);
371. }
372. });
373.
374. kls3.setBackground(new java.awt.Color(255, 255, 255));
375. kls3.setForeground(new java.awt.Color(0, 153, 0));
376. kls3.setText("KELAS 3");
377. kls3.addActionListener(new java.awt.event.ActionListener() {
378. public void actionPerformed(java.awt.event.ActionEvent evt) {
379. kls3ActionPerformed(evt);
380. }
381. });
382.
383. kls5.setBackground(new java.awt.Color(255, 255, 255));
384. kls5.setForeground(new java.awt.Color(0, 153, 0));
385. kls5.setText("KELAS 5");
215

386. kls5.addActionListener(new java.awt.event.ActionListener() {


387. public void actionPerformed(java.awt.event.ActionEvent evt) {
388. kls5ActionPerformed(evt);
389. }
390. });
391.
392. kls6.setBackground(new java.awt.Color(255, 255, 255));
393. kls6.setForeground(new java.awt.Color(0, 153, 0));
394. kls6.setText("KELAS 6");
395. kls6.addActionListener(new java.awt.event.ActionListener() {
396. public void actionPerformed(java.awt.event.ActionEvent evt) {
397. kls6ActionPerformed(evt);
398. }
399. });
400.
401. kembali.setBackground(new java.awt.Color(255, 255, 255));
402. kembali.setFont(new java.awt.Font("Segoe UI", 1, 14)); //
NOI18N
403. kembali.setForeground(new java.awt.Color(255, 0, 0));
404. kembali.setText("KEMBALI");
405. kembali.addActionListener(new java.awt.event.ActionListener()
{
406. public void actionPerformed(java.awt.event.ActionEvent evt) {
407. kembaliActionPerformed(evt);
408. }
409. });
410.
411. javax.swing.GroupLayout jPanel3Layout = new
javax.swing.GroupLayout(jPanel3);
412. jPanel3.setLayout(jPanel3Layout);
413. jPanel3Layout.setHorizontalGroup(
216

414.
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
415. .addGroup(jPanel3Layout.createSequentialGroup()
416. .addGap(12, 12, 12)
417.
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING)
418. .addComponent(kls3,
javax.swing.GroupLayout.PREFERRED_SIZE, 170,
javax.swing.GroupLayout.PREFERRED_SIZE)
419.
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
420. .addComponent(kembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 170,
javax.swing.GroupLayout.PREFERRED_SIZE)
421.
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING, false)
422. .addComponent(kls6,
javax.swing.GroupLayout.DEFAULT_SIZE, 170,
Short.MAX_VALUE)
423. .addComponent(jLabel9,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
424. .addComponent(kls2,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
425. .addComponent(kls4,
javax.swing.GroupLayout.Alignment.TRAILING,
217

javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
426. .addComponent(kls5,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
427. .addContainerGap(12, Short.MAX_VALUE))
428. );
429. jPanel3Layout.setVerticalGroup(
430.
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
431. .addGroup(jPanel3Layout.createSequentialGroup()
432. .addContainerGap()
433. .addComponent(jLabel9,
javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE)
434. .addGap(18, 18, 18)
435. .addComponent(kls2,
javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
436. .addGap(18, 18, 18)
437. .addComponent(kls3,
javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
438.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, 18, Short.MAX_VALUE)
439. .addComponent(kls4,
javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
440. .addGap(18, 18, 18)
218

441. .addComponent(kls5,
javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
442. .addGap(18, 18, 18)
443. .addComponent(kls6,
javax.swing.GroupLayout.PREFERRED_SIZE, 40,
javax.swing.GroupLayout.PREFERRED_SIZE)
444. .addGap(50, 50, 50)
445. .addComponent(kembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 48,
javax.swing.GroupLayout.PREFERRED_SIZE)
446. .addContainerGap())
447. );
448.
449. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
450. jPanel1.setLayout(jPanel1Layout);
451. jPanel1Layout.setHorizontalGroup(
452.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
453. .addGroup(jPanel1Layout.createSequentialGroup()
454.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING, false)
455. .addComponent(jLabel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
456.
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
jPanel1Layout.createSequentialGroup()
219

457. .addContainerGap()
458. .addComponent(jPanel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
459. .addGap(10, 10, 10)
460. .addComponent(jPanel3,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
461. .addGap(0, 0, Short.MAX_VALUE))
462. );
463. jPanel1Layout.setVerticalGroup(
464.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
465. .addGroup(jPanel1Layout.createSequentialGroup()
466. .addGap(16, 16, 16)
467. .addComponent(jLabel1,
javax.swing.GroupLayout.DEFAULT_SIZE, 54,
Short.MAX_VALUE)
468.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
469.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
470. .addComponent(jPanel2,
javax.swing.GroupLayout.PREFERRED_SIZE, 476,
javax.swing.GroupLayout.PREFERRED_SIZE)
220

471. .addComponent(jPanel3,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
472. .addContainerGap())
473. );
474.
475. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
476. getContentPane().setLayout(layout);
477. layout.setHorizontalGroup(
478.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
479. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
480. );
481. layout.setVerticalGroup(
482.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
483. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
484. );
485.
486. setSize(new java.awt.Dimension(873, 607));
487. setLocationRelativeTo(null);
488. }// </editor-fold>
489.
221

490. private void txnamaActionPerformed(java.awt.event.ActionEvent


evt) {
491. // TODO add your handling code here:
492. }
493.
494. private void bsimpanActionPerformed(java.awt.event.ActionEvent
evt) {
495. // TODO add your handling code here:
496. conn = koneksi.getKoneksi();
497. String no_induk = tno_induk.getText();
498. String nama= txnama.getText();
499. String pel = (String) mapel.getSelectedItem();
500. String harian=txnharian.getText();
501. String tugas=txntugas.getText();
502. String uts=txnuts.getText();
503. String uas=txnuas.getText();
504. try{
505.
506. String sql = "INSERT INTO
input_nilai_siswa(kelas,no_induk,nama,mapel,nilai_harian,nilai_tugas
,nilai_uts,nilai_uas)VALUE('1',?,?,?,?,?,?,?)";
507. pst = conn.prepareStatement(sql);
508. pst.setString(1, no_induk);
509. pst.setString(2, nama);
510. pst.setString(3, pel);
511. pst.setString(4, harian);
512. pst.setString(5, tugas);
513. pst.setString(6, uts);
514. pst.setString(7, uas);
515. pst.execute();
516. pst.close();
222

517. JOptionPane.showMessageDialog(null, "berhasil");


518. }catch (Exception e){
519. JOptionPane.showMessageDialog(null, e);
520. }ViewData();
521. kosong();
522. }
523.
524. private void bresetActionPerformed(java.awt.event.ActionEvent
evt) {
525. // TODO add your handling code here:
526. kosong();
527. }
528.
529. private void formWindowOpened(java.awt.event.WindowEvent evt)
{
530. // TODO add your handling code here:
531. ViewData();
532. }
533.
534. private void bhapusActionPerformed(java.awt.event.ActionEvent
evt) {
535. // TODO add your handling code here:
536. String ObjButtons[]={"Yes","No"};
537. int PromptResult= JOptionPane.showOptionDialog(null,"Hapus
?","Message",JOptionPane.DEFAULT_OPTION,JOptionPane.QUES
TION_MESSAGE,null,ObjButtons,ObjButtons[1]);
538. if(PromptResult==0){
539. cls_input_nilai idm = new cls_input_nilai();
540. idm.tno_induk = tno_induk.getText();
541.
542. try{
223

543. idm.hapus();
544. JOptionPane.showMessageDialog(null, "Berhasil dihapus");
545. ViewData();
546. }catch (Exception e){
547. JOptionPane.showMessageDialog(null,e);
548. }
549. }kosong();
550. }
551.
552. private void kembaliActionPerformed(java.awt.event.ActionEvent
evt) {
553. // TODO add your handling code here:
554. menu menu = new menu();
555. menu.setVisible(true);
556. this.dispose();
557. }
558.
559. private void kls6ActionPerformed(java.awt.event.ActionEvent evt)
{
560. // TODO add your handling code here:
561. nilai_kelas_6 kls6 = new nilai_kelas_6();
562. kls6.setVisible(true);
563. this.dispose();
564. }
565.
566. private void kls3ActionPerformed(java.awt.event.ActionEvent evt)
{
567. // TODO add your handling code here:
568. nilai_kelas_3 kls3 = new nilai_kelas_3();
569. kls3.setVisible(true);
570. this.dispose();
224

571. }
572.
573. private void editActionPerformed(java.awt.event.ActionEvent evt) {
574. // TODO add your handling code here:
575. cls_input_nilai idm= new cls_input_nilai();
576.
577. idm.tno_induk = tno_induk.getText();
578. idm.txnama=txnama.getText();
579. idm.mapel = (String) mapel.getSelectedItem();
580. idm.txnharian=txnharian.getText();
581. idm.txntugas=txntugas.getText();
582. idm.txnuts=txnuts.getText();
583. idm.txnuas=txnuas.getText();
584.
585. try{
586. idm.edit();
587. JOptionPane.showMessageDialog(null, "berhasil di edit");
588. kosong();
589.
590. }catch (Exception e){
591. JOptionPane.showMessageDialog(null, e);
592. }
593. ViewData(); kosong();
594. }
595.
596. private void mapelActionPerformed(java.awt.event.ActionEvent
evt) {
597. // TODO add your handling code here:
598. }
599.
225

600. private void kls5ActionPerformed(java.awt.event.ActionEvent evt)


{
601. // TODO add your handling code here:
602. nilai_kelas_5 kls5 = new nilai_kelas_5();
603. kls5.setVisible(true);
604. this.dispose();
605. }
606.
607. private void jTable1MouseClicked(java.awt.event.MouseEvent evt)
{
608. // TODO add your handling code here:
609. int i = jTable1.getSelectedRow();
610.
tno_induk.setText(jTable1.getModel().getValueAt(i,1).toString());
611. txnama.setText(jTable1.getModel().getValueAt(i,2).toString());
612.
mapel.setSelectedItem(jTable1.getModel().getValueAt(i,3).toString())
;
613.
txnharian.setText(jTable1.getModel().getValueAt(i,4).toString());
614. txntugas.setText(jTable1.getModel().getValueAt(i,5).toString());
615. txnuts.setText(jTable1.getModel().getValueAt(i,6).toString());
616. txnuas.setText(jTable1.getModel().getValueAt(i,7).toString());
617.
618. }
619.
620. private void tcari_namaKeyReleased(java.awt.event.KeyEvent evt)
{
621. // TODO add your handling code here:
622. String nama = tcari_nama.getText();
623.// cls_input_nilai idm = new cls_input_nilai();
226

624. try{
625.
jTable1.setModel(DbUtils.resultSetToTableModel(SearchTextList(na
ma)));
626.
627. }catch (Exception e) {
628. JOptionPane.showMessageDialog(null, e);
629. }
630. }
631.
632. private void kls2ActionPerformed(java.awt.event.ActionEvent evt)
{
633. // TODO add your handling code here:
634. nilai_kelas_2 kls2 = new nilai_kelas_2();
635. kls2.setVisible(true);
636. this.dispose();
637. }
638.
639. private void kls4ActionPerformed(java.awt.event.ActionEvent evt)
{
640. // TODO add your handling code here:
641. nilai_kelas_4 kls4 = new nilai_kelas_4();
642. kls4.setVisible(true);
643. this.dispose();
644. }
645.
646. private void jButton1ActionPerformed(java.awt.event.ActionEvent
evt) {
647. // TODO add your handling code here:
648. conn = new koneksi().getKoneksi();
649. try {
227

650. String report =


("C:\\Users\\LENOVO\\Documents\\NetBeansProjects\\APASI\\src\\r
eport\\nilai.jrxml");
651. HashMap no = new HashMap();
652. String kode = "1";
653. no.put("kelas",kode);
654.
655. JasperReport jr =
JasperCompileManager.compileReport(report);
656.
657. JasperPrint jp = JasperFillManager.fillReport(jr,no,conn);
658. JasperViewer.viewReport(jp, false);
659. } catch (Exception e) {
660. JOptionPane.showMessageDialog(null,e);
661. }
662. }
663.
664. /**
665. * @param args the command line arguments
666. */
667. public static void main(String args[]) {
668. /* Set the Nimbus look and feel */
669. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
670. /* If Nimbus (introduced in Java SE 6) is not available, stay with
the default look and feel.
671. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.ht
ml
672. */
673. try {
228

674. for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {
675. if ("FlatLaf Light".equals(info.getName())) {
676.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
677. break;
678. }
679. }
680. } catch (ClassNotFoundException ex) {
681.
java.util.logging.Logger.getLogger(input_nilai.class.getName()).log(j
ava.util.logging.Level.SEVERE, null, ex);
682. } catch (InstantiationException ex) {
683.
java.util.logging.Logger.getLogger(input_nilai.class.getName()).log(j
ava.util.logging.Level.SEVERE, null, ex);
684. } catch (IllegalAccessException ex) {
685.
java.util.logging.Logger.getLogger(input_nilai.class.getName()).log(j
ava.util.logging.Level.SEVERE, null, ex);
686. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
687.
java.util.logging.Logger.getLogger(input_nilai.class.getName()).log(j
ava.util.logging.Level.SEVERE, null, ex);
688. }
689. //</editor-fold>
690. //</editor-fold>
691.
692. /* Create and display the form */
693. java.awt.EventQueue.invokeLater(new Runnable() {
694. public void run() {
229

695. new input_nilai().setVisible(true);


696. }
697. });
698. }
699.
700. // Variables declaration - do not modify
701. private javax.swing.JButton bhapus;
702. private javax.swing.JButton breset;
703. private javax.swing.JButton bsimpan;
704. private javax.swing.JButton edit;
705. private javax.swing.JButton jButton1;
706. private javax.swing.JLabel jLabel1;
707. private javax.swing.JLabel jLabel10;
708. private javax.swing.JLabel jLabel11;
709. private javax.swing.JLabel jLabel13;
710. private javax.swing.JLabel jLabel2;
711. private javax.swing.JLabel jLabel3;
712. private javax.swing.JLabel jLabel4;
713. private javax.swing.JLabel jLabel5;
714. private javax.swing.JLabel jLabel6;
715. private javax.swing.JLabel jLabel7;
716. private javax.swing.JLabel jLabel8;
717. private javax.swing.JLabel jLabel9;
718. private javax.swing.JPanel jPanel1;
719. private javax.swing.JPanel jPanel2;
720. private javax.swing.JPanel jPanel3;
721. private javax.swing.JScrollPane jScrollPane1;
722. private javax.swing.JTable jTable1;
723. private javax.swing.JButton kembali;
724. private javax.swing.JButton kls2;
725. private javax.swing.JButton kls3;
230

726. private javax.swing.JButton kls4;


727. private javax.swing.JButton kls5;
728. private javax.swing.JButton kls6;
729. private javax.swing.JComboBox<String> mapel;
730. private javax.swing.JTextField tcari_nama;
731. private javax.swing.JTextField tno_induk;
732. private javax.swing.JTextField txnama;
733. private javax.swing.JTextField txnharian;
734. private javax.swing.JTextField txntugas;
735. private javax.swing.JTextField txnuas;
736. private javax.swing.JTextField txnuts;
737. // End of variables declaration
738.}

G. kelas_satu.java
1. /*
2. * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-
default.txt to change this license
3. * Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to
edit this template
4. */
5. package absen;
6. import java.sql.*;
7. import controller.koneksi;
8. import javax.swing.JOptionPane;
9. import javax.swing.table.DefaultTableModel;
10. import net.sf.jasperreports.engine.JasperCompileManager;
11. import net.sf.jasperreports.engine.JasperFillManager;
12. import net.sf.jasperreports.engine.JasperPrint;
13. import net.sf.jasperreports.engine.JasperReport;
231

14. import net.sf.jasperreports.engine.design.JasperDesign;


15. import net.sf.jasperreports.view.JasperViewer;
16. import utama.*;
17. /**
18. *
19. * @author LENOVO
20. */
21. public class kelas_satu extends javax.swing.JFrame {
22. private Connection conn = new koneksi().getKoneksi();
23. /**
24. * Creates new form kelas_satu
25. */
26. public kelas_satu() {
27. initComponents();
28. data();
29. load_table();
30. }
31. public void data(){
32. koneksi.getKoneksi();
33.
34. try{
35. String sql ="select nama from input_data_siswa where kelas
='1'";
36. Statement stat = koneksi.getKoneksi().createStatement();
37. ResultSet res = stat.executeQuery(sql);
38. while (res.next()){
39. jcb.addItem(res.getString("nama"));
40. }
41.
42. res.last();
43. int jumlahdata = res.getRow();
232

44. res.first();
45.
46. }catch(Exception e){
47. }
48.
49.
50. }
51. private void load_table(){
52. //membuat tampilan model
53. DefaultTableModel model = new DefaultTableModel();
54. model.addColumn("KELAS");
55. model.addColumn("NAMA");
56. model.addColumn("KETERANGAN");
57. model.addColumn("WAKTU");
58.
59. try{
60. String sql = "select * from absen where kelas ='1'";
61. java.sql.Connection conn = (Connection)koneksi.getKoneksi();
62. java.sql.Statement stat = conn.createStatement();
63. java.sql.ResultSet res = stat.executeQuery(sql);
64.
65. while(res.next()){
66. model.addRow(new
Object[]{res.getString(1),res.getString(2),res.getString(3),res.getStrin
g(4)});
67.
68. }tabel_absen.setModel(model);
69. }catch(Exception e){
70.
71. }
72.
233

73.
74. }
75. /**
76. * This method is called from within the constructor to initialize the
form.
77. * WARNING: Do NOT modify this code. The content of this
method is always
78. * regenerated by the Form Editor.
79. */
80. @SuppressWarnings("unchecked")
81. // <editor-fold defaultstate="collapsed" desc="Generated Code">
82. private void initComponents() {
83.
84. jPanel1 = new javax.swing.JPanel();
85. jPanel3 = new javax.swing.JPanel();
86. jLabel1 = new javax.swing.JLabel();
87. jPanel2 = new javax.swing.JPanel();
88. tiga = new javax.swing.JButton();
89. empat = new javax.swing.JButton();
90. lima = new javax.swing.JButton();
91. enam = new javax.swing.JButton();
92. jLabel3 = new javax.swing.JLabel();
93. kembali = new javax.swing.JButton();
94. dua = new javax.swing.JButton();
95. print_absen = new javax.swing.JButton();
96. jPanel5 = new javax.swing.JPanel();
97. nm = new javax.swing.JLabel();
98. jcb = new javax.swing.JComboBox<>();
99. kelas1 = new javax.swing.JLabel();
100. hadir = new javax.swing.JRadioButton();
101. tdk = new javax.swing.JRadioButton();
234

102. simpan = new javax.swing.JButton();


103. edit = new javax.swing.JButton();
104. jScrollPane1 = new javax.swing.JScrollPane();
105. tabel_absen = new javax.swing.JTable();
106. jLabel2 = new javax.swing.JLabel();
107. hapus = new javax.swing.JButton();
108.
109.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_
CLOSE);
110. setMaximumSize(new java.awt.Dimension(707, 475));
111. setMinimumSize(new java.awt.Dimension(707, 475));
112. setResizable(false);
113. setSize(new java.awt.Dimension(707, 475));
114.
115. jPanel1.setBackground(new java.awt.Color(0, 153, 0));
116.
117. jPanel3.setBackground(new java.awt.Color(0, 153, 0));
118. jPanel3.setToolTipText("");
119.
120. jLabel1.setFont(new java.awt.Font("Montserrat", 1, 24)); //
NOI18N
121. jLabel1.setForeground(new java.awt.Color(255, 255, 255));
122.
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
123. jLabel1.setText("ABSENSI KELAS");
124.
125. javax.swing.GroupLayout jPanel3Layout = new
javax.swing.GroupLayout(jPanel3);
126. jPanel3.setLayout(jPanel3Layout);
235

127. jPanel3Layout.setHorizontalGroup(
128.
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
129. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel3Layout.createSequentialGroup()
130.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
131. .addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 250,
javax.swing.GroupLayout.PREFERRED_SIZE)
132. .addGap(220, 220, 220))
133. );
134. jPanel3Layout.setVerticalGroup(
135.
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
136. .addGroup(jPanel3Layout.createSequentialGroup()
137. .addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 69,
javax.swing.GroupLayout.PREFERRED_SIZE)
138. .addGap(0, 0, Short.MAX_VALUE))
139. );
140.
141. jPanel2.setBackground(new java.awt.Color(0, 153, 0));
142.
143. tiga.setBackground(new java.awt.Color(255, 255, 255));
144. tiga.setForeground(new java.awt.Color(0, 153, 0));
145. tiga.setText("KELAS 3");
146. tiga.setBorderPainted(false);
236

147. tiga.addActionListener(new java.awt.event.ActionListener() {


148. public void actionPerformed(java.awt.event.ActionEvent evt) {
149. tigaActionPerformed(evt);
150. }
151. });
152.
153. empat.setBackground(new java.awt.Color(255, 255, 255));
154. empat.setForeground(new java.awt.Color(0, 153, 0));
155. empat.setText("KELAS 4");
156. empat.setBorderPainted(false);
157. empat.addActionListener(new java.awt.event.ActionListener() {
158. public void actionPerformed(java.awt.event.ActionEvent evt) {
159. empatActionPerformed(evt);
160. }
161. });
162.
163. lima.setBackground(new java.awt.Color(255, 255, 255));
164. lima.setForeground(new java.awt.Color(0, 153, 0));
165. lima.setText("KELAS 5");
166. lima.setBorderPainted(false);
167. lima.addActionListener(new java.awt.event.ActionListener() {
168. public void actionPerformed(java.awt.event.ActionEvent evt) {
169. limaActionPerformed(evt);
170. }
171. });
172.
173. enam.setBackground(new java.awt.Color(255, 255, 255));
174. enam.setForeground(new java.awt.Color(0, 153, 0));
175. enam.setText("KELAS 6");
176. enam.setBorderPainted(false);
177. enam.addActionListener(new java.awt.event.ActionListener() {
237

178. public void actionPerformed(java.awt.event.ActionEvent evt) {


179. enamActionPerformed(evt);
180. }
181. });
182.
183. jLabel3.setBackground(new java.awt.Color(0, 153, 51));
184. jLabel3.setForeground(new java.awt.Color(255, 255, 255));
185.
jLabel3.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
186. jLabel3.setText("KELAS 1");
187.
jLabel3.setBorder(javax.swing.BorderFactory.createLineBorder(new
java.awt.Color(255, 255, 255), 3));
188.
189. kembali.setBackground(new java.awt.Color(255, 255, 255));
190. kembali.setForeground(new java.awt.Color(255, 0, 0));
191. kembali.setText("KEMBALI");
192. kembali.setBorderPainted(false);
193. kembali.addActionListener(new java.awt.event.ActionListener()
{
194. public void actionPerformed(java.awt.event.ActionEvent evt) {
195. kembaliActionPerformed(evt);
196. }
197. });
198.
199. dua.setBackground(new java.awt.Color(255, 255, 255));
200. dua.setForeground(new java.awt.Color(0, 153, 0));
201. dua.setText("KELAS 2");
202. dua.setBorderPainted(false);
203. dua.addActionListener(new java.awt.event.ActionListener() {
238

204. public void actionPerformed(java.awt.event.ActionEvent evt) {


205. duaActionPerformed(evt);
206. }
207. });
208.
209. print_absen.setBackground(new java.awt.Color(255, 255, 255));
210. print_absen.setForeground(new java.awt.Color(0, 153, 0));
211. print_absen.setText("PRINT");
212. print_absen.setBorderPainted(false);
213. print_absen.addActionListener(new
java.awt.event.ActionListener() {
214. public void actionPerformed(java.awt.event.ActionEvent evt) {
215. print_absenActionPerformed(evt);
216. }
217. });
218.
219. javax.swing.GroupLayout jPanel2Layout = new
javax.swing.GroupLayout(jPanel2);
220. jPanel2.setLayout(jPanel2Layout);
221. jPanel2Layout.setHorizontalGroup(
222.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
223. .addGroup(jPanel2Layout.createSequentialGroup()
224. .addContainerGap()
225.
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
226. .addComponent(empat,
javax.swing.GroupLayout.Alignment.TRAILING,
239

javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
227. .addComponent(dua,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
228. .addComponent(kembali,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE, 185,
Short.MAX_VALUE)
229. .addComponent(enam,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
230. .addComponent(lima,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
231. .addComponent(tiga,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
232. .addComponent(jLabel3,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
233. .addComponent(print_absen,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
234. .addContainerGap())
235. );
236. jPanel2Layout.setVerticalGroup(
240

237.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
238. .addGroup(jPanel2Layout.createSequentialGroup()
239. .addContainerGap()
240. .addComponent(jLabel3,
javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE)
241. .addGap(4, 4, 4)
242. .addComponent(dua,
javax.swing.GroupLayout.PREFERRED_SIZE, 43,
javax.swing.GroupLayout.PREFERRED_SIZE)
243.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
244. .addComponent(tiga,
javax.swing.GroupLayout.PREFERRED_SIZE, 43,
javax.swing.GroupLayout.PREFERRED_SIZE)
245.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
246. .addComponent(empat,
javax.swing.GroupLayout.PREFERRED_SIZE, 43,
javax.swing.GroupLayout.PREFERRED_SIZE)
247.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
248. .addComponent(lima,
javax.swing.GroupLayout.PREFERRED_SIZE, 42,
javax.swing.GroupLayout.PREFERRED_SIZE)
241

249.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
250. .addComponent(enam,
javax.swing.GroupLayout.PREFERRED_SIZE, 46,
javax.swing.GroupLayout.PREFERRED_SIZE)
251.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
252. .addComponent(print_absen,
javax.swing.GroupLayout.PREFERRED_SIZE, 43,
javax.swing.GroupLayout.PREFERRED_SIZE)
253.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
254. .addComponent(kembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 45,
javax.swing.GroupLayout.PREFERRED_SIZE)
255.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
256. );
257.
258. jPanel5.setBackground(new java.awt.Color(255, 255, 255));
259. jPanel5.setForeground(new java.awt.Color(0, 153, 0));
260.
261. nm.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
262. nm.setText("NAMA ");
263.
264. jcb.addActionListener(new java.awt.event.ActionListener() {
265. public void actionPerformed(java.awt.event.ActionEvent evt) {
242

266. jcbActionPerformed(evt);
267. }
268. });
269.
270. kelas1.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
271. kelas1.setText("KETERANGAN");
272.
273. hadir.setText("HADIR");
274.
275. tdk.setText("TIDAK HADIR");
276.
277. simpan.setBackground(new java.awt.Color(0, 153, 0));
278. simpan.setForeground(new java.awt.Color(255, 255, 255));
279. simpan.setText("SIMPAN");
280. simpan.addActionListener(new java.awt.event.ActionListener() {
281. public void actionPerformed(java.awt.event.ActionEvent evt) {
282. simpanActionPerformed(evt);
283. }
284. });
285.
286. edit.setBackground(new java.awt.Color(0, 153, 0));
287. edit.setForeground(new java.awt.Color(255, 255, 255));
288. edit.setText("EDIT");
289. edit.addActionListener(new java.awt.event.ActionListener() {
290. public void actionPerformed(java.awt.event.ActionEvent evt) {
291. editActionPerformed(evt);
292. }
293. });
294.
295. tabel_absen.setModel(new javax.swing.table.DefaultTableModel(
296. new Object [][] {
243

297. {null, null, null, null},


298. {null, null, null, null},
299. {null, null, null, null},
300. {null, null, null, null}
301. },
302. new String [] {
303. "KELAS", "NAMA", "KETERANGAN", "WAKTU"
304. }
305. ));
306. tabel_absen.setGridColor(new java.awt.Color(0, 0, 0));
307. tabel_absen.addMouseListener(new
java.awt.event.MouseAdapter() {
308. public void mouseClicked(java.awt.event.MouseEvent evt) {
309. tabel_absenMouseClicked(evt);
310. }
311. });
312. jScrollPane1.setViewportView(tabel_absen);
313.
314. jLabel2.setFont(new java.awt.Font("Segoe UI", 1, 14)); //
NOI18N
315. jLabel2.setText("KELAS 1");
316.
317. hapus.setBackground(new java.awt.Color(0, 153, 0));
318. hapus.setForeground(new java.awt.Color(255, 255, 255));
319. hapus.setText("HAPUS");
320. hapus.addActionListener(new java.awt.event.ActionListener() {
321. public void actionPerformed(java.awt.event.ActionEvent evt) {
322. hapusActionPerformed(evt);
323. }
324. });
325.
244

326. javax.swing.GroupLayout jPanel5Layout = new


javax.swing.GroupLayout(jPanel5);
327. jPanel5.setLayout(jPanel5Layout);
328. jPanel5Layout.setHorizontalGroup(
329.
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
330. .addGroup(jPanel5Layout.createSequentialGroup()
331. .addGap(27, 27, 27)
332.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
333. .addGroup(jPanel5Layout.createSequentialGroup()
334. .addComponent(nm,
javax.swing.GroupLayout.PREFERRED_SIZE, 48,
javax.swing.GroupLayout.PREFERRED_SIZE)
335. .addGap(56, 56, 56)
336. .addComponent(jcb, 0,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
337. .addGap(52, 52, 52))
338. .addGroup(jPanel5Layout.createSequentialGroup()
339.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
340. .addGroup(jPanel5Layout.createSequentialGroup()
341. .addComponent(kelas1,
javax.swing.GroupLayout.PREFERRED_SIZE, 92,
javax.swing.GroupLayout.PREFERRED_SIZE)
342. .addGap(35, 35, 35)
343. .addComponent(hadir)
344. .addGap(18, 18, 18)
245

345. .addComponent(tdk))
346. .addGroup(jPanel5Layout.createSequentialGroup()
347. .addGap(50, 50, 50)
348. .addComponent(simpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 100,
javax.swing.GroupLayout.PREFERRED_SIZE)
349. .addGap(18, 18, 18)
350. .addComponent(edit,
javax.swing.GroupLayout.PREFERRED_SIZE, 95,
javax.swing.GroupLayout.PREFERRED_SIZE)
351. .addGap(18, 18, 18)
352. .addComponent(hapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 95,
javax.swing.GroupLayout.PREFERRED_SIZE)))
353.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))))
354. .addGroup(jPanel5Layout.createSequentialGroup()
355.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
356. .addGroup(jPanel5Layout.createSequentialGroup()
357. .addGap(15, 15, 15)
358. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 479,
javax.swing.GroupLayout.PREFERRED_SIZE))
359. .addGroup(jPanel5Layout.createSequentialGroup()
360. .addGap(210, 210, 210)
361. .addComponent(jLabel2)))
246

362.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
363. );
364. jPanel5Layout.setVerticalGroup(
365.
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
366. .addGroup(jPanel5Layout.createSequentialGroup()
367. .addGap(27, 27, 27)
368. .addComponent(jLabel2)
369.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, 35, Short.MAX_VALUE)
370.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
371. .addComponent(jcb,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
372. .addComponent(nm,
javax.swing.GroupLayout.PREFERRED_SIZE, 23,
javax.swing.GroupLayout.PREFERRED_SIZE))
373. .addGap(18, 18, 18)
374.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
375. .addComponent(kelas1,
javax.swing.GroupLayout.PREFERRED_SIZE, 23,
javax.swing.GroupLayout.PREFERRED_SIZE)
247

376. .addComponent(hadir)
377. .addComponent(tdk))
378. .addGap(18, 18, 18)
379.
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
380. .addComponent(edit,
javax.swing.GroupLayout.PREFERRED_SIZE, 39,
javax.swing.GroupLayout.PREFERRED_SIZE)
381. .addComponent(simpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 39,
javax.swing.GroupLayout.PREFERRED_SIZE)
382. .addComponent(hapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 39,
javax.swing.GroupLayout.PREFERRED_SIZE))
383.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
384. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 195,
javax.swing.GroupLayout.PREFERRED_SIZE)
385. .addGap(10, 10, 10))
386. );
387.
388. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
389. jPanel1.setLayout(jPanel1Layout);
390. jPanel1Layout.setHorizontalGroup(
391.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
248

392. .addGroup(jPanel1Layout.createSequentialGroup()
393.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
394. .addGroup(jPanel1Layout.createSequentialGroup()
395. .addContainerGap()
396. .addComponent(jPanel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
397. .addGap(0, 0, 0)
398. .addComponent(jPanel5,
javax.swing.GroupLayout.PREFERRED_SIZE, 496,
javax.swing.GroupLayout.PREFERRED_SIZE)
399. .addGap(0, 0, Short.MAX_VALUE))
400. .addComponent(jPanel3,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
401. .addGap(0, 0, 0))
402. );
403. jPanel1Layout.setVerticalGroup(
404.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
405. .addGroup(jPanel1Layout.createSequentialGroup()
406. .addComponent(jPanel3,
javax.swing.GroupLayout.PREFERRED_SIZE, 68,
javax.swing.GroupLayout.PREFERRED_SIZE)
407.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
249

408. .addGroup(jPanel1Layout.createSequentialGroup()
409.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
410. .addComponent(jPanel5,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
411. .addContainerGap())
412. .addGroup(jPanel1Layout.createSequentialGroup()
413.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
414. .addComponent(jPanel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
415. .addContainerGap(13, Short.MAX_VALUE))))
416. );
417.
418. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
419. getContentPane().setLayout(layout);
420. layout.setHorizontalGroup(
421.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
422. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
250

423. );
424. layout.setVerticalGroup(
425.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
426. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
427. );
428.
429. setSize(new java.awt.Dimension(727, 547));
430. setLocationRelativeTo(null);
431. }// </editor-fold>
432.
433. private void tigaActionPerformed(java.awt.event.ActionEvent evt) {
434. // TODO add your handling code here:
435. kelas_tiga tiga = new kelas_tiga();
436. tiga.setVisible(true);
437. this.dispose();
438. }
439.
440. private void empatActionPerformed(java.awt.event.ActionEvent
evt) {
441. // TODO add your handling code here:
442. kelas_empat empat = new kelas_empat();
443. empat.setVisible(true);
444. this.dispose();
445. }
446.
447. private void limaActionPerformed(java.awt.event.ActionEvent evt)
{
251

448. // TODO add your handling code here:


449. kelas_lima lima = new kelas_lima();
450. lima.setVisible(true);
451. this.dispose();
452. }
453.
454. private void enamActionPerformed(java.awt.event.ActionEvent evt)
{
455. // TODO add your handling code here:
456. kelas_enam enam = new kelas_enam();
457. enam.setVisible(true);
458. this.dispose();
459. }
460.
461. private void kembaliActionPerformed(java.awt.event.ActionEvent
evt) {
462. // TODO add your handling code here:
463. menu menu = new menu();
464. menu.setVisible(true);
465. this.dispose();
466. }
467.
468. private void duaActionPerformed(java.awt.event.ActionEvent evt) {
469. // TODO add your handling code here:
470. kelas_dua dua = new kelas_dua();
471. dua.setVisible(true);
472. this.dispose();
473. }
474.
475. private void jcbActionPerformed(java.awt.event.ActionEvent evt) {
476. // TODO add your handling code here:
252

477. }
478.
479. private void simpanActionPerformed(java.awt.event.ActionEvent
evt) {
480. // TODO add your handling code here:
481. String ket = null;
482.
483. String nama = String.valueOf(jcb.getSelectedItem());
484.
485. if (hadir.isSelected()){
486. ket = "hadir";
487. }else{
488. ket = "tidak hadir";
489. }
490. try{
491. String sql = "insert into absen values ('1','"+nama+"','"+ket+"',
NOW())";
492. java.sql.Connection conn =(Connection)koneksi.getKoneksi();
493. java.sql.PreparedStatement pst = conn.prepareStatement(sql);
494. pst.execute();
495. JOptionPane.showMessageDialog(null, "kehadiran "+nama+"
berhasil disimpan");
496. }catch(Exception e){
497. JOptionPane.showMessageDialog(null, "kehadiran "+nama+"
TIDAK berhasil disimpan");
498. }
499. load_table();
500. }
501.
502. private void editActionPerformed(java.awt.event.ActionEvent evt) {
503. // TODO add your handling code here:
253

504. String nama = String.valueOf(jcb.getSelectedItem().toString());


505. String ket = null;
506. if (hadir.isSelected()){
507. ket = "hadir";
508. }else {
509. ket = "tidak hadir";
510. }
511. try{
512. String sql = "update absen set kelas = '1', nama =
'"+nama+"',keterangan = '"+ket+"', waktu = NOW() where nama =
'"+nama+"'";
513. java.sql.Connection conn = (Connection)koneksi.getKoneksi();
514. java.sql.PreparedStatement pst = conn.prepareStatement(sql);
515. pst.execute();
516. JOptionPane.showMessageDialog(null, "kehadiran "+nama+"
berhasil Diedit");
517.
518. }catch(Exception e){
519. JOptionPane.showMessageDialog(null, "kehadiran "+nama+"
gagal Diedit"+e);
520. }
521. load_table();
522. }
523.
524. private void tabel_absenMouseClicked(java.awt.event.MouseEvent
evt) {
525. // TODO add your handling code here:
526.
527. int baris = tabel_absen.rowAtPoint(evt.getPoint());
528. jcb.setSelectedItem(tabel_absen.getValueAt(baris, 2).toString());
529.
254

530. }
531.
532. private void hapusActionPerformed(java.awt.event.ActionEvent
evt) {
533. // TODO add your handling code here:
534. String ket = null;
535.
536. String nama = String.valueOf(jcb.getSelectedItem());
537.
538. if (hadir.isSelected()){
539. ket = "hadir";
540. }else{
541. ket = "tidak hadir";
542. }
543. try{
544. String sql = "delete from absen where nama = '"+nama+"' AND
kelas ='1'";
545. java.sql.Connection conn =(Connection)koneksi.getKoneksi();
546. java.sql.PreparedStatement pst = conn.prepareStatement(sql);
547. pst.execute();
548. JOptionPane.showMessageDialog(null, "kehadiran "+nama+"
berhasil Dihapus");
549. }catch(Exception e){
550. JOptionPane.showMessageDialog(null, "kehadiran "+ nama +"
TIDAK berhasil Dihapus");
551. }
552. load_table();
553. }
554.
555. private void
print_absenActionPerformed(java.awt.event.ActionEvent evt) {
255

556. // TODO add your handling code here:


557. try {
558. String report =
("C:\\Users\\LENOVO\\Documents\\NetBeansProjects\\APASI\\src\\r
eport\\absen.jrxml");
559.
560. JasperReport jr =
JasperCompileManager.compileReport(report);
561.
562. JasperPrint jp = JasperFillManager.fillReport(jr,null,conn);
563. JasperViewer.viewReport(jp, false);
564. } catch (Exception e) {
565. JOptionPane.showMessageDialog(null,e);
566. }
567. }
568.
569. /**
570. * @param args the command line arguments
571. */
572. public static void main(String args[]) {
573. /* Set the Nimbus look and feel */
574. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
575. /* If Nimbus (introduced in Java SE 6) is not available, stay with
the default look and feel.
576. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.ht
ml
577. */
578. try {
256

579. for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {
580. if ("FlatLaf Light".equals(info.getName())) {
581.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
582. break;
583. }
584. }
585. } catch (ClassNotFoundException ex) {
586.
java.util.logging.Logger.getLogger(kelas_satu.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
587. } catch (InstantiationException ex) {
588.
java.util.logging.Logger.getLogger(kelas_satu.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
589. } catch (IllegalAccessException ex) {
590.
java.util.logging.Logger.getLogger(kelas_satu.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
591. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
592.
java.util.logging.Logger.getLogger(kelas_satu.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
593. }
594. //</editor-fold>
595.
596. /* Create and display the form */
597. java.awt.EventQueue.invokeLater(new Runnable() {
598. public void run() {
599. new kelas_satu().setVisible(true);
257

600. }
601. });
602. }
603.
604. // Variables declaration - do not modify
605. private javax.swing.JButton dua;
606. private javax.swing.JButton edit;
607. private javax.swing.JButton empat;
608. private javax.swing.JButton enam;
609. private javax.swing.JRadioButton hadir;
610. private javax.swing.JButton hapus;
611. private javax.swing.JLabel jLabel1;
612. private javax.swing.JLabel jLabel2;
613. private javax.swing.JLabel jLabel3;
614. private javax.swing.JPanel jPanel1;
615. private javax.swing.JPanel jPanel2;
616. private javax.swing.JPanel jPanel3;
617. private javax.swing.JPanel jPanel5;
618. private javax.swing.JScrollPane jScrollPane1;
619. private javax.swing.JComboBox<String> jcb;
620. private javax.swing.JLabel kelas1;
621. private javax.swing.JButton kembali;
622. private javax.swing.JButton lima;
623. private javax.swing.JLabel nm;
624. private javax.swing.JButton print_absen;
625. private javax.swing.JButton simpan;
626. private javax.swing.JTable tabel_absen;
627. private javax.swing.JRadioButton tdk;
628. private javax.swing.JButton tiga;
629. // End of variables declaration
630.
258

631. private String setString(String pilih) {


632. throw new UnsupportedOperationException("Not supported
yet."); // Generated from
nbfs://nbhost/SystemFileSystem/Templates/Classes/Code/GeneratedM
ethodBody
633. }
634.}

H. data_guru.java
1. /*
2. * To change this license header, choose License Headers in Project
Properties.
3. * To change this template file, choose Tools | Templates
4. * and open the template in the editor.
5. */
6. package guru;
7.
8. import java.sql.Connection;
9. import java.sql.PreparedStatement;
10. import java.sql.ResultSet;
11. import java.sql.Statement;
12. import javax.swing.JOptionPane;
13. import javax.swing.table.DefaultTableModel;
14. import controller.koneksi;
15. import net.sf.jasperreports.engine.JasperCompileManager;
16. import net.sf.jasperreports.engine.JasperFillManager;
17. import net.sf.jasperreports.engine.JasperPrint;
18. import net.sf.jasperreports.engine.JasperReport;
19. import net.sf.jasperreports.view.JasperViewer;
20. import utama.menu;
21.
259

22. /**
23. *
24. * @author HP
25. */
26. public class data_guru extends javax.swing.JFrame {
27.
28. /**
29. * Creates new form View
30. */
31. public data_guru() {
32. initComponents();
33. table();
34. }
35.
36. void cari(){
37. DefaultTableModel tbl = new DefaultTableModel();
38. tbl.addColumn("NIP");
39. tbl.addColumn("NUPTK");
40. tbl.addColumn("NAMA");
41. tbl.addColumn("JENIS KELAMIN");
42. tbl.addColumn("NO. TELEPON");
43. tbl.addColumn("ALAMAT");
44.
45. try {
46. String sql = "SELECT * FROM data_guru WHERE nip like '%"
+ tcari.getText() + "%'";
47. Connection conn = (Connection) koneksi.getKoneksi();
48. Statement st = conn.createStatement();
49. ResultSet rs = st.executeQuery(sql);
50.
51. while(rs.next()){
260

52. tbl.addRow(new Object[] {


53. rs.getString("nip"),
54. rs.getString("nuptk"),
55. rs.getString("nama"),
56. rs.getString("jkl"),
57. rs.getString("telp"),
58. rs.getString("alamat")
59. });
60. jTable1.setModel(tbl);
61. }
62.
63. } catch (Exception e) {
64. }
65. }
66.
67. void hapus(){
68. nip.setText("");
69. nuptk.setText("");
70. nama.setText("");
71. tcari.setText("");
72. alamat.setText("");
73. telp.setText("");
74. table();
75. }
76.
77. public void table() {
78. DefaultTableModel tbl = new DefaultTableModel();
79. tbl.addColumn("NIP");
80. tbl.addColumn("NUPTK");
81. tbl.addColumn("NAMA");
82. tbl.addColumn("JENIS KELAMIN");
261

83. tbl.addColumn("NO. TELEPON");


84. tbl.addColumn("ALAMAT");
85.
86. try {
87. Statement st = (Statement)
koneksi.getKoneksi().createStatement();
88. ResultSet rs = st.executeQuery("SELECT * FROM data_guru");
89.
90. while(rs.next()){
91. tbl.addRow(new Object[] {
92. rs.getString("nip"),
93. rs.getString("nuptk"),
94. rs.getString("nama"),
95. rs.getString("jkl"),
96. rs.getString("telp"),
97. rs.getString("alamat")
98. });
99. jTable1.setModel(tbl);
100. }
101. } catch (Exception e) {
102. JOptionPane.showMessageDialog(null,"koneksi database
gagal"+ e.getMessage());
103. }
104.
105.
106. }
107. @SuppressWarnings("unchecked")
108. // <editor-fold defaultstate="collapsed" desc="Generated Code">
109. private void initComponents() {
110.
111. buttonGroup1 = new javax.swing.ButtonGroup();
262

112. jPanel1 = new javax.swing.JPanel();


113. nip = new javax.swing.JTextField();
114. nuptk = new javax.swing.JTextField();
115. nama = new javax.swing.JTextField();
116. jLabel2 = new javax.swing.JLabel();
117. jLabel3 = new javax.swing.JLabel();
118. jLabel4 = new javax.swing.JLabel();
119. prem = new javax.swing.JRadioButton();
120. laki = new javax.swing.JRadioButton();
121. jLabel5 = new javax.swing.JLabel();
122. hapus = new javax.swing.JButton();
123. edit = new javax.swing.JButton();
124. simpan = new javax.swing.JButton();
125. kembali = new javax.swing.JButton();
126. jScrollPane1 = new javax.swing.JScrollPane();
127. jTable1 = new javax.swing.JTable();
128. cari = new javax.swing.JButton();
129. tcari = new javax.swing.JTextField();
130. reset = new javax.swing.JButton();
131. jScrollPane2 = new javax.swing.JScrollPane();
132. alamat = new javax.swing.JTextArea();
133. jLabel6 = new javax.swing.JLabel();
134. telp = new javax.swing.JTextField();
135. jLabel7 = new javax.swing.JLabel();
136. absen = new javax.swing.JButton();
137. jButton1 = new javax.swing.JButton();
138. jPanel2 = new javax.swing.JPanel();
139. jLabel1 = new javax.swing.JLabel();
140.
263

141.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_
CLOSE);
142.
143. jPanel1.setBackground(new java.awt.Color(0, 153, 0));
144.
145. nuptk.addActionListener(new java.awt.event.ActionListener() {
146. public void actionPerformed(java.awt.event.ActionEvent evt) {
147. nuptkActionPerformed(evt);
148. }
149. });
150.
151. jLabel2.setForeground(new java.awt.Color(255, 255, 255));
152. jLabel2.setText("NIP");
153.
154. jLabel3.setForeground(new java.awt.Color(255, 255, 255));
155. jLabel3.setText("NUPTK");
156.
157. jLabel4.setForeground(new java.awt.Color(255, 255, 255));
158. jLabel4.setText("NAMA");
159.
160. prem.setBackground(new java.awt.Color(0, 153, 0));
161. buttonGroup1.add(prem);
162. prem.setForeground(new java.awt.Color(255, 255, 255));
163. prem.setText("Perempuan");
164.
165. laki.setBackground(new java.awt.Color(0, 153, 0));
166. buttonGroup1.add(laki);
167. laki.setForeground(new java.awt.Color(255, 255, 255));
168. laki.setText("Laki-Laki");
169.
264

170. jLabel5.setForeground(new java.awt.Color(255, 255, 255));


171. jLabel5.setText("JENIS KELAMIN");
172.
173. hapus.setBackground(new java.awt.Color(255, 255, 255));
174. hapus.setText("HAPUS");
175. hapus.addMouseListener(new java.awt.event.MouseAdapter() {
176. public void mouseClicked(java.awt.event.MouseEvent evt) {
177. hapusMouseClicked(evt);
178. }
179. });
180. hapus.addActionListener(new java.awt.event.ActionListener() {
181. public void actionPerformed(java.awt.event.ActionEvent evt) {
182. hapusActionPerformed(evt);
183. }
184. });
185.
186. edit.setBackground(new java.awt.Color(255, 255, 255));
187. edit.setText("EDIT");
188. edit.addMouseListener(new java.awt.event.MouseAdapter() {
189. public void mouseClicked(java.awt.event.MouseEvent evt) {
190. editMouseClicked(evt);
191. }
192. });
193. edit.addActionListener(new java.awt.event.ActionListener() {
194. public void actionPerformed(java.awt.event.ActionEvent evt) {
195. editActionPerformed(evt);
196. }
197. });
198.
199. simpan.setBackground(new java.awt.Color(255, 255, 255));
200. simpan.setText("SIMPAN");
265

201. simpan.addMouseListener(new java.awt.event.MouseAdapter() {


202. public void mouseClicked(java.awt.event.MouseEvent evt) {
203. simpanMouseClicked(evt);
204. }
205. });
206. simpan.addActionListener(new java.awt.event.ActionListener() {
207. public void actionPerformed(java.awt.event.ActionEvent evt) {
208. simpanActionPerformed(evt);
209. }
210. });
211.
212. kembali.setBackground(new java.awt.Color(255, 255, 255));
213. kembali.setFont(new java.awt.Font("Segoe UI", 1, 12)); //
NOI18N
214. kembali.setForeground(new java.awt.Color(255, 0, 0));
215. kembali.setText("KEMBALI");
216. kembali.addActionListener(new java.awt.event.ActionListener()
{
217. public void actionPerformed(java.awt.event.ActionEvent evt) {
218. kembaliActionPerformed(evt);
219. }
220. });
221.
222. jTable1.setModel(new javax.swing.table.DefaultTableModel(
223. new Object [][] {
224. {null, null, null, null},
225. {null, null, null, null},
226. {null, null, null, null},
227. {null, null, null, null}
228. },
229. new String [] {
266

230. "Title 1", "Title 2", "Title 3", "Title 4"


231. }
232. ));
233. jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
234. public void mouseClicked(java.awt.event.MouseEvent evt) {
235. jTable1MouseClicked(evt);
236. }
237. });
238. jScrollPane1.setViewportView(jTable1);
239.
240. cari.setBackground(new java.awt.Color(255, 255, 255));
241. cari.setText("CARI");
242. cari.addMouseListener(new java.awt.event.MouseAdapter() {
243. public void mouseClicked(java.awt.event.MouseEvent evt) {
244. cariMouseClicked(evt);
245. }
246. });
247.
248. reset.setBackground(new java.awt.Color(255, 255, 255));
249. reset.setText("RESET");
250. reset.addActionListener(new java.awt.event.ActionListener() {
251. public void actionPerformed(java.awt.event.ActionEvent evt) {
252. resetActionPerformed(evt);
253. }
254. });
255.
256. alamat.setColumns(20);
257. alamat.setRows(5);
258. jScrollPane2.setViewportView(alamat);
259.
260. jLabel6.setForeground(new java.awt.Color(255, 255, 255));
267

261. jLabel6.setText("ALAMAT");
262.
263. jLabel7.setForeground(new java.awt.Color(255, 255, 255));
264. jLabel7.setText("NO. TELEPON");
265.
266. absen.setBackground(new java.awt.Color(255, 255, 255));
267. absen.setText("ABSEN");
268. absen.addActionListener(new java.awt.event.ActionListener() {
269. public void actionPerformed(java.awt.event.ActionEvent evt) {
270. absenActionPerformed(evt);
271. }
272. });
273.
274. jButton1.setBackground(new java.awt.Color(255, 255, 255));
275. jButton1.setText("PRINT");
276. jButton1.addActionListener(new java.awt.event.ActionListener()
{
277. public void actionPerformed(java.awt.event.ActionEvent evt) {
278. jButton1ActionPerformed(evt);
279. }
280. });
281.
282. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
283. jPanel1.setLayout(jPanel1Layout);
284. jPanel1Layout.setHorizontalGroup(
285.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
286. .addGroup(jPanel1Layout.createSequentialGroup()
287. .addGap(19, 19, 19)
268

288.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
289. .addGroup(jPanel1Layout.createSequentialGroup()
290.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
291. .addComponent(jLabel7)
292. .addComponent(jLabel6))
293. .addGap(372, 372, 372)
294. .addComponent(absen,
javax.swing.GroupLayout.PREFERRED_SIZE, 87,
javax.swing.GroupLayout.PREFERRED_SIZE)
295. .addGap(18, 18, 18)
296. .addComponent(kembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 98,
javax.swing.GroupLayout.PREFERRED_SIZE)
297. .addGap(180, 218, Short.MAX_VALUE))
298. .addGroup(jPanel1Layout.createSequentialGroup()
299.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
300. .addComponent(jLabel3)
301. .addComponent(jLabel4)
302. .addComponent(jLabel2,
javax.swing.GroupLayout.PREFERRED_SIZE, 28,
javax.swing.GroupLayout.PREFERRED_SIZE))
303. .addGap(89, 89, 89)
304.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
269

305. .addGroup(jPanel1Layout.createSequentialGroup()
306. .addComponent(nip,
javax.swing.GroupLayout.PREFERRED_SIZE, 197,
javax.swing.GroupLayout.PREFERRED_SIZE)
307.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
308. .addComponent(tcari,
javax.swing.GroupLayout.PREFERRED_SIZE, 128,
javax.swing.GroupLayout.PREFERRED_SIZE)
309.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
310. .addComponent(cari)
311. .addGap(17, 17, 17))
312. .addGroup(jPanel1Layout.createSequentialGroup()
313.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
314. .addComponent(nuptk,
javax.swing.GroupLayout.PREFERRED_SIZE, 197,
javax.swing.GroupLayout.PREFERRED_SIZE)
315.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING)
316.
.addGroup(jPanel1Layout.createSequentialGroup()
317. .addComponent(laki)
318. .addGap(18, 18, 18)
319. .addComponent(prem)
270

320. .addGap(36, 36, 36))


321. .addComponent(nama,
javax.swing.GroupLayout.PREFERRED_SIZE, 226,
javax.swing.GroupLayout.PREFERRED_SIZE))
322. .addComponent(telp,
javax.swing.GroupLayout.PREFERRED_SIZE, 196,
javax.swing.GroupLayout.PREFERRED_SIZE)
323. .addComponent(jScrollPane2,
javax.swing.GroupLayout.PREFERRED_SIZE, 196,
javax.swing.GroupLayout.PREFERRED_SIZE))
324. .addGap(0, 0, Short.MAX_VALUE))))
325.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
326. .addComponent(jLabel5)
327.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
328.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING, false)
329. .addGroup(jPanel1Layout.createSequentialGroup()
330. .addComponent(simpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 84,
javax.swing.GroupLayout.PREFERRED_SIZE)
331.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
271

332. .addComponent(edit,
javax.swing.GroupLayout.PREFERRED_SIZE, 80,
javax.swing.GroupLayout.PREFERRED_SIZE)
333.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
334. .addComponent(hapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 90,
javax.swing.GroupLayout.PREFERRED_SIZE)
335.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
336. .addComponent(reset,
javax.swing.GroupLayout.PREFERRED_SIZE, 87,
javax.swing.GroupLayout.PREFERRED_SIZE)
337.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
338. .addComponent(jButton1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
339. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))))
340. .addContainerGap())
341. );
342. jPanel1Layout.setVerticalGroup(
343.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
272

344. .addGroup(jPanel1Layout.createSequentialGroup()
345.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
346. .addGroup(jPanel1Layout.createSequentialGroup()
347.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
348. .addGroup(jPanel1Layout.createSequentialGroup()
349. .addGap(10, 10, 10)
350.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
351. .addComponent(nip,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
352. .addComponent(jLabel2))
353. .addGap(18, 18, 18)
354.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
355. .addComponent(nuptk,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
356. .addComponent(jLabel3))
357. .addGap(18, 18, 18)
358.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
273

359. .addComponent(nama,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
360. .addComponent(jLabel4))
361.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, 18, Short.MAX_VALUE)
362.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
363. .addComponent(jLabel5)
364. .addComponent(laki)
365. .addComponent(prem)))
366. .addGroup(jPanel1Layout.createSequentialGroup()
367.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
368.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
369. .addComponent(tcari,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
370. .addComponent(cari))
371.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
274

372. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 90,
javax.swing.GroupLayout.PREFERRED_SIZE)))
373. .addGap(18, 18, 18)
374.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
375. .addComponent(jButton1,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.PREFERRED_SIZE, 33,
javax.swing.GroupLayout.PREFERRED_SIZE)
376.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
377. .addComponent(simpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 31,
javax.swing.GroupLayout.PREFERRED_SIZE)
378. .addComponent(reset,
javax.swing.GroupLayout.PREFERRED_SIZE, 32,
javax.swing.GroupLayout.PREFERRED_SIZE)
379. .addComponent(edit,
javax.swing.GroupLayout.PREFERRED_SIZE, 33,
javax.swing.GroupLayout.PREFERRED_SIZE)
380. .addComponent(hapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 32,
javax.swing.GroupLayout.PREFERRED_SIZE)
381. .addComponent(telp,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
382. .addComponent(jLabel7)))
275

383.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED)
384.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
385. .addComponent(jScrollPane2,
javax.swing.GroupLayout.PREFERRED_SIZE, 76,
javax.swing.GroupLayout.PREFERRED_SIZE)
386. .addComponent(jLabel6))
387. .addGap(27, 27, 27))
388. .addGroup(jPanel1Layout.createSequentialGroup()
389. .addGap(0, 0, Short.MAX_VALUE)
390.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
391. .addComponent(absen,
javax.swing.GroupLayout.PREFERRED_SIZE, 41,
javax.swing.GroupLayout.PREFERRED_SIZE)
392. .addComponent(kembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 41,
javax.swing.GroupLayout.PREFERRED_SIZE))))
393. .addGap(74, 74, 74))
394. );
395.
396. jPanel2.setBackground(new java.awt.Color(0, 153, 0));
397.
398. jLabel1.setBackground(new java.awt.Color(0, 153, 0));
399. jLabel1.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
400. jLabel1.setForeground(new java.awt.Color(255, 255, 255));
276

401.
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENT
ER);
402. jLabel1.setText("DATA GURU");
403.
404. javax.swing.GroupLayout jPanel2Layout = new
javax.swing.GroupLayout(jPanel2);
405. jPanel2.setLayout(jPanel2Layout);
406. jPanel2Layout.setHorizontalGroup(
407.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
408. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel2Layout.createSequentialGroup()
409. .addContainerGap()
410. .addComponent(jLabel1,
javax.swing.GroupLayout.DEFAULT_SIZE, 868,
Short.MAX_VALUE)
411. .addContainerGap())
412. );
413. jPanel2Layout.setVerticalGroup(
414.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
415. .addComponent(jLabel1,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE, 60,
Short.MAX_VALUE)
416. );
417.
277

418. javax.swing.GroupLayout layout = new


javax.swing.GroupLayout(getContentPane());
419. getContentPane().setLayout(layout);
420. layout.setHorizontalGroup(
421.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
422. .addComponent(jPanel2,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
423. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
424. );
425. layout.setVerticalGroup(
426.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
427. .addGroup(layout.createSequentialGroup()
428. .addComponent(jPanel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
429. .addGap(0, 0, 0)
430. .addComponent(jPanel1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
431. );
432.
433. setSize(new java.awt.Dimension(904, 452));
278

434. setLocationRelativeTo(null);
435. }// </editor-fold>
436.
437. private void nuptkActionPerformed(java.awt.event.ActionEvent
evt) {
438. // TODO add your handling code here:
439. }
440.
441. private void simpanMouseClicked(java.awt.event.MouseEvent evt)
{
442. // TODO add your handling code here:
443. }
444.
445. private void editMouseClicked(java.awt.event.MouseEvent evt) {
446. // TODO add your handling code here:
447. }
448.
449. private void jTable1MouseClicked(java.awt.event.MouseEvent evt)
{
450. // TODO add your handling code here:
451. int baris = jTable1.rowAtPoint(evt.getPoint());
452. String nipp = jTable1.getValueAt(baris, 0).toString();
453. nip.setText(nipp);
454. String nuptkk = jTable1.getValueAt(baris, 1).toString();
455. nuptk.setText(nuptkk);
456. String namaa = jTable1.getValueAt(baris, 2).toString();
457. nama.setText(namaa);
458. String jk = jTable1.getValueAt(baris, 3).toString();
459. if ("Laki-Laki".equals(jk)){
460. laki.setSelected(true);
461. }else{
279

462. prem.setSelected(true);
463. }
464. String p = jTable1.getValueAt(baris, 4).toString();
465. telp.setText(p);
466. String almat = jTable1.getValueAt(baris, 5).toString();
467. alamat.setText(almat);
468.
469. }
470.
471. private void hapusMouseClicked(java.awt.event.MouseEvent evt) {
472. // TODO add your handling code here:
473. }
474.
475. private void cariMouseClicked(java.awt.event.MouseEvent evt) {
476. // TODO add your handling code here:
477. cari();
478. }
479.
480. private void kembaliActionPerformed(java.awt.event.ActionEvent
evt) {
481. // TODO add your handling code here:
482.
483. menu menu = new menu();
484. menu.setVisible(true);
485. this.dispose();
486. }
487.
488. private void simpanActionPerformed(java.awt.event.ActionEvent
evt) {
489. // TODO add your handling code here:
490. String jk = null;
280

491.
492. if(laki.isSelected()){
493. jk = "Laki-Laki";
494. }else if(prem.isSelected()){
495. jk = "Perempuan";
496. }
497. try {
498. String sql = "INSERT INTO data_guru VALUES ('" +
nip.getText()+"','"
499. +nuptk.getText()+"','"+nama.getText()+"','"+ jk
+"','"+telp.getText()+"','"+alamat.getText()+"')";
500. Connection con = (Connection) koneksi.getKoneksi();
501. PreparedStatement pst = con.prepareStatement(sql);
502. pst.execute();
503. JOptionPane.showMessageDialog(null, "Berhasil
menyimpan");
504. } catch (Exception e) {
505. JOptionPane.showMessageDialog(null, "gagal menyimpan"+
e.getMessage());
506. }table();
507. hapus();
508. }
509.
510. private void resetActionPerformed(java.awt.event.ActionEvent evt)
{
511. // TODO add your handling code here:
512. hapus();
513. }
514.
515. private void editActionPerformed(java.awt.event.ActionEvent evt) {
516. // TODO add your handling code here:
281

517. String jk = null;


518.
519. if(laki.isSelected()){
520. jk = "Laki-Laki";
521. }else if(prem.isSelected()){
522. jk = "Perempuan";
523. }
524.
525. try {
526. String sql = "UPDATE data_guru SET nip='" + nip.getText() +
"',nuptk='"+ nuptk.getText()
527. + "',jkl='" + jk + "',nama='" + nama.getText() + "',telp
='"+telp.getText()+"',alamat='"+alamat.getText()+"' WHERE nip='" +
nip.getText() + "'";
528.
529. Connection con = (Connection) koneksi.getKoneksi();
530. PreparedStatement pst = con.prepareStatement(sql);
531. pst.execute();
532. JOptionPane.showMessageDialog(null, "berhasil edit");
533. } catch (Exception e) {
534. JOptionPane.showMessageDialog(null, "gagal edit"+
e.getMessage());
535. }table();
536. hapus();
537. }
538.
539. private void hapusActionPerformed(java.awt.event.ActionEvent
evt) {
540. // TODO add your handling code here:
541. try {
282

542. String sql = "DELETE FROM data_guru WHERE nip='" +


nip.getText()+"'";
543. Connection con = (Connection) koneksi.getKoneksi();
544. PreparedStatement pst = con.prepareStatement(sql);
545. pst.execute();
546. JOptionPane.showMessageDialog(null, "berhasil
menghapus");
547. } catch (Exception e) {
548. }table();
549. hapus();
550. }
551.
552. private void absenActionPerformed(java.awt.event.ActionEvent
evt) {
553. // TODO add your handling code here:
554. absen_guru ag = new absen_guru();
555. ag.setVisible(true);
556. this.dispose();
557. }
558.
559. private void jButton1ActionPerformed(java.awt.event.ActionEvent
evt) {
560. // TODO add your handling code here:
561. Connection conn = new koneksi().getKoneksi();
562. try {
563. String report =
("C:\\Users\\LENOVO\\Documents\\NetBeansProjects\\APASI\\src\\r
eport\\data_guru.jrxml");
564.
565. JasperReport jr =
JasperCompileManager.compileReport(report);
283

566.
567. JasperPrint jp = JasperFillManager.fillReport(jr,null,conn);
568. JasperViewer.viewReport(jp, false);
569. } catch (Exception e) {
570. JOptionPane.showMessageDialog(null,e);
571. }
572. }
573.
574. /**
575. * @param args the command line arguments
576. */
577. public static void main(String args[]) {
578. /* Set the Nimbus look and feel */
579. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
580. /* If Nimbus (introduced in Java SE 6) is not available, stay with
the default look and feel.
581. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.ht
ml
582. */
583. try {
584. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
585. if ("FlatLaf Light".equals(info.getName())) {
586.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
587. break;
588. }
589. }
590. } catch (ClassNotFoundException ex) {
284

591.
java.util.logging.Logger.getLogger(data_guru.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
592. } catch (InstantiationException ex) {
593.
java.util.logging.Logger.getLogger(data_guru.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
594. } catch (IllegalAccessException ex) {
595.
java.util.logging.Logger.getLogger(data_guru.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
596. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
597.
java.util.logging.Logger.getLogger(data_guru.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
598. }
599. //</editor-fold>
600. //</editor-fold>
601.
602. /* Create and display the form */
603. java.awt.EventQueue.invokeLater(new Runnable() {
604. public void run() {
605. new data_guru().setVisible(true);
606. }
607. });
608. }
609.
610. // Variables declaration - do not modify
611. private javax.swing.JButton absen;
612. private javax.swing.JTextArea alamat;
613. private javax.swing.ButtonGroup buttonGroup1;
285

614. private javax.swing.JButton cari;


615. private javax.swing.JButton edit;
616. private javax.swing.JButton hapus;
617. private javax.swing.JButton jButton1;
618. private javax.swing.JLabel jLabel1;
619. private javax.swing.JLabel jLabel2;
620. private javax.swing.JLabel jLabel3;
621. private javax.swing.JLabel jLabel4;
622. private javax.swing.JLabel jLabel5;
623. private javax.swing.JLabel jLabel6;
624. private javax.swing.JLabel jLabel7;
625. private javax.swing.JPanel jPanel1;
626. private javax.swing.JPanel jPanel2;
627. private javax.swing.JScrollPane jScrollPane1;
628. private javax.swing.JScrollPane jScrollPane2;
629. private javax.swing.JTable jTable1;
630. private javax.swing.JButton kembali;
631. private javax.swing.JRadioButton laki;
632. private javax.swing.JTextField nama;
633. private javax.swing.JTextField nip;
634. private javax.swing.JTextField nuptk;
635. private javax.swing.JRadioButton prem;
636. private javax.swing.JButton reset;
637. private javax.swing.JButton simpan;
638. private javax.swing.JTextField tcari;
639. private javax.swing.JTextField telp;
640. // End of variables declaration
641. }

I. absen_guru.java
1. /*
286

2. * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-
default.txt to change this license
3. * Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to
edit this template
4. */
5. package guru;
6.
7. import controller.koneksi;
8. import java.sql.Connection;
9. import java.sql.ResultSet;
10. import java.sql.Statement;
11. import javax.swing.JOptionPane;
12. import javax.swing.table.DefaultTableModel;
13. import net.sf.jasperreports.engine.JasperCompileManager;
14. import net.sf.jasperreports.engine.JasperFillManager;
15. import net.sf.jasperreports.engine.JasperPrint;
16. import net.sf.jasperreports.engine.JasperReport;
17. import net.sf.jasperreports.view.JasperViewer;
18. import utama.menu;
19.
20. /**
21. *
22. * @author LENOVO
23. */
24. public class absen_guru extends javax.swing.JFrame {
25. private Connection conn = new koneksi().getKoneksi();
26. /**
27. * Creates new form absen_guru
28. */
29. public absen_guru() {
287

30. initComponents();
31. data();
32. load_table();
33. }
34. public void data(){
35. koneksi.getKoneksi();
36.
37. try{
38. String sql ="select nama from data_guru";
39. Statement stat = koneksi.getKoneksi().createStatement();
40. ResultSet res = stat.executeQuery(sql);
41. while (res.next()){
42. nama.addItem(res.getString("nama"));
43. }
44.
45. res.last();
46. int jumlahdata = res.getRow();
47. res.first();
48.
49. }catch(Exception e){
50. }
51.
52.
53. }
54. private void load_table(){
55. //membuat tampilan model
56. DefaultTableModel model = new DefaultTableModel();
57. model.addColumn("NAMA");
58. model.addColumn("KETERANGAN");
59. model.addColumn("WAKTU");
60.
288

61. try{
62. String sql = "select * from absen_guru";
63. java.sql.Connection conn = (Connection)koneksi.getKoneksi();
64. java.sql.Statement stat = conn.createStatement();
65. java.sql.ResultSet res = stat.executeQuery(sql);
66.
67. while(res.next()){
68. model.addRow(new
Object[]{res.getString(1),res.getString(2),res.getString(3)});
69.
70. }jTable1.setModel(model);
71. }catch(Exception e){
72.
73. }
74.
75.
76. }
77.
78.
79. /**
80. * This method is called from within the constructor to initialize the
form.
81. * WARNING: Do NOT modify this code. The content of this
method is always
82. * regenerated by the Form Editor.
83. */
84. @SuppressWarnings("unchecked")
85. // <editor-fold defaultstate="collapsed" desc="Generated Code">
86. private void initComponents() {
87.
88. buttonGroup1 = new javax.swing.ButtonGroup();
289

89. jPanel1 = new javax.swing.JPanel();


90. jPanel2 = new javax.swing.JPanel();
91. jLabel1 = new javax.swing.JLabel();
92. jPanel3 = new javax.swing.JPanel();
93. jLabel2 = new javax.swing.JLabel();
94. jLabel3 = new javax.swing.JLabel();
95. nama = new javax.swing.JComboBox<>();
96. tdk = new javax.swing.JRadioButton();
97. hadir = new javax.swing.JRadioButton();
98. jScrollPane1 = new javax.swing.JScrollPane();
99. jTable1 = new javax.swing.JTable();
100. simpan = new javax.swing.JButton();
101. hapus = new javax.swing.JButton();
102. kembali = new javax.swing.JButton();
103. print = new javax.swing.JButton();
104. jButton1 = new javax.swing.JButton();
105.
106.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_
CLOSE);
107.
108. jPanel2.setBackground(new java.awt.Color(0, 153, 0));
109. jPanel2.setForeground(new java.awt.Color(255, 255, 255));
110.
111. jLabel1.setBackground(new java.awt.Color(0, 153, 0));
112. jLabel1.setFont(new java.awt.Font("Segoe UI", 1, 24)); //
NOI18N
113. jLabel1.setForeground(new java.awt.Color(255, 255, 255));
114.
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTE
R);
290

115. jLabel1.setText("ABSEN GURU");


116.
117. javax.swing.GroupLayout jPanel2Layout = new
javax.swing.GroupLayout(jPanel2);
118. jPanel2.setLayout(jPanel2Layout);
119. jPanel2Layout.setHorizontalGroup(
120.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
121. .addComponent(jLabel1,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
122. );
123. jPanel2Layout.setVerticalGroup(
124.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
125. .addGroup(jPanel2Layout.createSequentialGroup()
126. .addGap(15, 15, 15)
127. .addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 29,
javax.swing.GroupLayout.PREFERRED_SIZE)
128. .addContainerGap(21, Short.MAX_VALUE))
129. );
130.
131. jPanel3.setBackground(new java.awt.Color(255, 255, 255));
132.
133. jLabel2.setText("NAMA ");
134.
135. jLabel3.setText("KETERANGAN");
291

136.
137. tdk.setBackground(new java.awt.Color(255, 255, 255));
138. buttonGroup1.add(tdk);
139. tdk.setText("Tidak Hadir");
140.
141. hadir.setBackground(new java.awt.Color(255, 255, 255));
142. buttonGroup1.add(hadir);
143. hadir.setText("Hadir ");
144.
145. jTable1.setModel(new javax.swing.table.DefaultTableModel(
146. new Object [][] {
147. {null, null, null, null},
148. {null, null, null, null},
149. {null, null, null, null},
150. {null, null, null, null}
151. },
152. new String [] {
153. "Title 1", "Title 2", "Title 3", "Title 4"
154. }
155. ));
156. jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
157. public void mouseClicked(java.awt.event.MouseEvent evt) {
158. jTable1MouseClicked(evt);
159. }
160. });
161. jScrollPane1.setViewportView(jTable1);
162.
163. simpan.setBackground(new java.awt.Color(0, 153, 0));
164. simpan.setForeground(new java.awt.Color(255, 255, 255));
165. simpan.setText("SIMPAN");
166. simpan.addActionListener(new java.awt.event.ActionListener() {
292

167. public void actionPerformed(java.awt.event.ActionEvent evt) {


168. simpanActionPerformed(evt);
169. }
170. });
171.
172. hapus.setBackground(new java.awt.Color(0, 153, 0));
173. hapus.setForeground(new java.awt.Color(255, 255, 255));
174. hapus.setText("HAPUS");
175. hapus.addActionListener(new java.awt.event.ActionListener() {
176. public void actionPerformed(java.awt.event.ActionEvent evt) {
177. hapusActionPerformed(evt);
178. }
179. });
180.
181. kembali.setBackground(new java.awt.Color(0, 153, 0));
182. kembali.setFont(new java.awt.Font("Segoe UI", 1, 12)); //
NOI18N
183. kembali.setForeground(new java.awt.Color(255, 0, 0));
184. kembali.setText("KEMBALI");
185. kembali.addActionListener(new java.awt.event.ActionListener()
{
186. public void actionPerformed(java.awt.event.ActionEvent evt) {
187. kembaliActionPerformed(evt);
188. }
189. });
190.
191. print.setBackground(new java.awt.Color(255, 255, 255));
192. print.setText("PRINT");
193. print.addActionListener(new java.awt.event.ActionListener() {
194. public void actionPerformed(java.awt.event.ActionEvent evt) {
195. printActionPerformed(evt);
293

196. }
197. });
198.
199. jButton1.setBackground(new java.awt.Color(0, 153, 0));
200. jButton1.setForeground(new java.awt.Color(255, 255, 255));
201. jButton1.setText("DATA GURU");
202. jButton1.addActionListener(new java.awt.event.ActionListener()
{
203. public void actionPerformed(java.awt.event.ActionEvent evt) {
204. jButton1ActionPerformed(evt);
205. }
206. });
207.
208. javax.swing.GroupLayout jPanel3Layout = new
javax.swing.GroupLayout(jPanel3);
209. jPanel3.setLayout(jPanel3Layout);
210. jPanel3Layout.setHorizontalGroup(
211.
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
212. .addGroup(jPanel3Layout.createSequentialGroup()
213. .addGap(21, 21, 21)
214.
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
215. .addGroup(jPanel3Layout.createSequentialGroup()
216. .addComponent(jLabel3)
217.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
294

218. .addComponent(hadir)
219. .addGap(33, 33, 33)
220. .addComponent(tdk)
221. .addGap(187, 187, 187))
222. .addGroup(jPanel3Layout.createSequentialGroup()
223.
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING, false)
224. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 477,
javax.swing.GroupLayout.PREFERRED_SIZE)
225. .addGroup(jPanel3Layout.createSequentialGroup()
226. .addComponent(jLabel2)
227. .addGap(73, 73, 73)
228. .addComponent(nama, 0,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
229. .addGap(167, 167, 167)))
230. .addContainerGap(18, Short.MAX_VALUE))))
231. .addGroup(jPanel3Layout.createSequentialGroup()
232. .addGap(48, 48, 48)
233.
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING)
234. .addComponent(jButton1,
javax.swing.GroupLayout.PREFERRED_SIZE, 109,
javax.swing.GroupLayout.PREFERRED_SIZE)
235. .addGroup(jPanel3Layout.createSequentialGroup()
236. .addComponent(simpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 100,
javax.swing.GroupLayout.PREFERRED_SIZE)
237. .addGap(18, 18, 18)
295

238. .addComponent(hapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 95,
javax.swing.GroupLayout.PREFERRED_SIZE)
239. .addGap(18, 18, 18)
240. .addComponent(kembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 98,
javax.swing.GroupLayout.PREFERRED_SIZE)
241. .addGap(18, 18, 18)
242. .addComponent(print,
javax.swing.GroupLayout.PREFERRED_SIZE, 95,
javax.swing.GroupLayout.PREFERRED_SIZE)))
243. .addGap(0, 0, Short.MAX_VALUE))
244. );
245. jPanel3Layout.setVerticalGroup(
246.
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
247. .addGroup(jPanel3Layout.createSequentialGroup()
248. .addGap(29, 29, 29)
249.
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
250. .addComponent(nama,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
251. .addComponent(jLabel2)
252. .addComponent(jButton1))
253. .addGap(20, 20, 20)
296

254.
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
255. .addComponent(tdk)
256. .addComponent(hadir)
257. .addComponent(jLabel3))
258. .addGap(15, 15, 15)
259.
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
260. .addComponent(simpan,
javax.swing.GroupLayout.PREFERRED_SIZE, 39,
javax.swing.GroupLayout.PREFERRED_SIZE)
261. .addComponent(hapus,
javax.swing.GroupLayout.PREFERRED_SIZE, 39,
javax.swing.GroupLayout.PREFERRED_SIZE)
262. .addComponent(kembali,
javax.swing.GroupLayout.PREFERRED_SIZE, 39,
javax.swing.GroupLayout.PREFERRED_SIZE)
263. .addComponent(print,
javax.swing.GroupLayout.PREFERRED_SIZE, 39,
javax.swing.GroupLayout.PREFERRED_SIZE))
264. .addGap(18, 18, 18)
265. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 161,
javax.swing.GroupLayout.PREFERRED_SIZE)
266. .addGap(22, 22, 22))
267. );
268.
269. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
297

270. jPanel1.setLayout(jPanel1Layout);
271. jPanel1Layout.setHorizontalGroup(
272.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
273. .addComponent(jPanel2,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
274. .addComponent(jPanel3,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
275. );
276. jPanel1Layout.setVerticalGroup(
277.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
278. .addGroup(jPanel1Layout.createSequentialGroup()
279. .addComponent(jPanel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
280. .addGap(0, 0, 0)
281. .addComponent(jPanel3,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
282. );
283.
284. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
285. getContentPane().setLayout(layout);
286. layout.setHorizontalGroup(
298

287.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
288. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
289. );
290. layout.setVerticalGroup(
291.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
292. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
293. );
294.
295. setSize(new java.awt.Dimension(532, 448));
296. setLocationRelativeTo(null);
297. }// </editor-fold>
298.
299. private void simpanActionPerformed(java.awt.event.ActionEvent
evt) {
300. // TODO add your handling code here:
301. String ket = null;
302.
303. String nam = String.valueOf(nama.getSelectedItem());
304.
305. if (hadir.isSelected()){
306. ket = "hadir";
307. }else{
308. ket = "tidak hadir";
299

309. }
310. try{
311. String sql = "insert into absen_guru values ('"+nam+"','"+ket+"',
NOW())";
312. java.sql.Connection conn =(Connection)koneksi.getKoneksi();
313. java.sql.PreparedStatement pst = conn.prepareStatement(sql);
314. pst.execute();
315. JOptionPane.showMessageDialog(null, "kehadiran "+nam+"
berhasil disimpan");
316. }catch(Exception e){
317. JOptionPane.showMessageDialog(null, "kehadiran "+nam+"
TIDAK berhasil disimpan");
318. }
319. load_table();
320. }
321.
322. private void hapusActionPerformed(java.awt.event.ActionEvent
evt) {
323. // TODO add your handling code here:
324. String ket = null;
325.
326. String nam = String.valueOf(nama.getSelectedItem());
327.
328. if (hadir.isSelected()){
329. ket = "hadir";
330. }else{
331. ket = "tidak hadir";
332. }
333. try{
334. String sql = "delete from absen_guru where nama = '"+nam+"'
";
300

335. java.sql.Connection conn =(Connection)koneksi.getKoneksi();


336. java.sql.PreparedStatement pst = conn.prepareStatement(sql);
337. pst.execute();
338. JOptionPane.showMessageDialog(null, "kehadiran "+nam+"
berhasil Dihapus");
339. }catch(Exception e){
340. JOptionPane.showMessageDialog(null, "kehadiran "+ nam +"
TIDAK berhasil Dihapus");
341. }
342. load_table();
343. }
344.
345. private void jTable1MouseClicked(java.awt.event.MouseEvent evt)
{
346. // TODO add your handling code here:
347. int baris = jTable1.rowAtPoint(evt.getPoint());
348. nama.setSelectedItem(jTable1.getValueAt(baris, 1).toString());
349. }
350.
351. private void kembaliActionPerformed(java.awt.event.ActionEvent
evt) {
352. // TODO add your handling code here:
353.
354. menu menu = new menu();
355. menu.setVisible(true);
356. this.dispose();
357. }
358.
359. private void printActionPerformed(java.awt.event.ActionEvent evt)
{
360. // TODO add your handling code here:
301

361. try {
362. String report =
("C:\\Users\\LENOVO\\Documents\\NetBeansProjects\\APASI\\src\\r
eport\\absen_guru.jrxml");
363.
364. JasperReport jr =
JasperCompileManager.compileReport(report);
365.
366. JasperPrint jp = JasperFillManager.fillReport(jr,null,conn);
367. JasperViewer.viewReport(jp, false);
368. } catch (Exception e) {
369. JOptionPane.showMessageDialog(null,e);
370. }
371. }
372.
373. private void jButton1ActionPerformed(java.awt.event.ActionEvent
evt) {
374. // TODO add your handling code here:
375. data_guru dg = new data_guru();
376. dg.setVisible(true);
377. this.dispose();
378. }
379.
380. /**
381. * @param args the command line arguments
382. */
383. public static void main(String args[]) {
384. /* Set the Nimbus look and feel */
385. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
302

386. /* If Nimbus (introduced in Java SE 6) is not available, stay with


the default look and feel.
387. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.ht
ml
388. */
389. try {
390. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
391. if ("FlatLaf Light".equals(info.getName())) {
392.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
393. break;
394. }
395. }
396. } catch (ClassNotFoundException ex) {
397.
java.util.logging.Logger.getLogger(absen_guru.class.getName()).log(j
ava.util.logging.Level.SEVERE, null, ex);
398. } catch (InstantiationException ex) {
399.
java.util.logging.Logger.getLogger(absen_guru.class.getName()).log(j
ava.util.logging.Level.SEVERE, null, ex);
400. } catch (IllegalAccessException ex) {
401.
java.util.logging.Logger.getLogger(absen_guru.class.getName()).log(j
ava.util.logging.Level.SEVERE, null, ex);
402. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
403.
java.util.logging.Logger.getLogger(absen_guru.class.getName()).log(j
ava.util.logging.Level.SEVERE, null, ex);
303

404. }
405. //</editor-fold>
406.
407. /* Create and display the form */
408. java.awt.EventQueue.invokeLater(new Runnable() {
409. public void run() {
410. new absen_guru().setVisible(true);
411. }
412. });
413. }
414.
415. // Variables declaration - do not modify
416. private javax.swing.ButtonGroup buttonGroup1;
417. private javax.swing.JRadioButton hadir;
418. private javax.swing.JButton hapus;
419. private javax.swing.JButton jButton1;
420. private javax.swing.JLabel jLabel1;
421. private javax.swing.JLabel jLabel2;
422. private javax.swing.JLabel jLabel3;
423. private javax.swing.JPanel jPanel1;
424. private javax.swing.JPanel jPanel2;
425. private javax.swing.JPanel jPanel3;
426. private javax.swing.JScrollPane jScrollPane1;
427. private javax.swing.JTable jTable1;
428. private javax.swing.JButton kembali;
429. private javax.swing.JComboBox<String> nama;
430. private javax.swing.JButton print;
431. private javax.swing.JButton simpan;
432. private javax.swing.JRadioButton tdk;
433. // End of variables declaration
434.}
304

J. FormPerkembangan.java
1. /*
2. * To change this license header, choose License Headers in Project
Properties.
3. * To change this template file, choose Tools | Templates
4. * and open the template in the editor.
5. */
6. package rapor;
7. import java.sql.*;
8. import javax.swing.JOptionPane;
9. import javax.swing.table.DefaultTableModel;
10. import controller.koneksi;
11. //import java.io.File;
12. import java.util.HashMap;
13. import net.sf.jasperreports.engine.JasperCompileManager;
14. import net.sf.jasperreports.engine.JasperReport;
15. import net.sf.jasperreports.engine.JasperFillManager;
16. import net.sf.jasperreports.engine.JasperPrint;
17. //import net.sf.jasperreports.engine.util.JRLoader;
18. import net.sf.jasperreports.view.JasperViewer;
19. import utama.menu;
20. /**
21. *
22. * @author riska
23. */
24. public class FormPerkembangan extends javax.swing.JFrame {
25. private Connection conn = new koneksi().getKoneksi();
26. private DefaultTableModel tabmode;
27.
28. protected void aktif(){
29. tno_induk.setEnabled(true);
305

30. tnama.setEnabled(true);
31. cbkelas.setEnabled(true);
32. tpsi.setEnabled(true);
33. tkog.setEnabled(true);
34. tkom.setEnabled(true);
35. tsos.setEnabled(true);
36. tno_induk.requestFocus();
37. }
38. protected void kosong(){
39. tno_induk.setText("");
40. tnama.setText("");
41. cbkelas.setSelectedIndex(0);
42. tpsi.setText("");
43. tkog.setText("");
44. tkom.setText("");
45. tsos.setText("");
46. tcari.setText("");
47. tprint.setText("");
48. tno_induk.requestFocus();
49.
50. }
51. protected void datatable(){
52. Object[] baris = {"No.
Induk","Nama","Kelas","Sikap","Pengetahuan","Keterampilan","Ekst
rakurikuler"};
53. tabmode = new DefaultTableModel(null, baris);
54. tableperkembangan.setModel(tabmode);
55. String sql = "select * from rapor";
56. try{
57. java.sql.Statement stat = conn.createStatement();
58. ResultSet hasil = stat.executeQuery(sql);
306

59. while(hasil.next()){
60. String a = hasil.getString("no_induk");
61. String b = hasil.getString("nama");
62. String c = hasil.getString("kelas");
63. String d = hasil.getString("psi");
64. String e = hasil.getString("kog");
65. String f = hasil.getString("kom");
66. String g = hasil.getString("sos");
67.
68. String[] data ={a,b,c,d,e,f,g};
69. tabmode.addRow(data);
70. }
71. } catch(Exception e){
72.
73. }
74. }
75.
76.
77.
78. /**
79. * Creates new form FormPerkembangan
80. */
81. public FormPerkembangan() {
82. initComponents();
83. datatable();
84. }
85.
86. /**
87. * This method is called from within the constructor to initialize the
form.
307

88. * WARNING: Do NOT modify this code. The content of this


method is always
89. * regenerated by the Form Editor.
90. */
91. @SuppressWarnings("unchecked")
92. // <editor-fold defaultstate="collapsed" desc="Generated Code">
93. private void initComponents() {
94.
95. jLabel2 = new javax.swing.JLabel();
96. jLabel3 = new javax.swing.JLabel();
97. jLabel4 = new javax.swing.JLabel();
98. jLabel5 = new javax.swing.JLabel();
99. bsimpan = new javax.swing.JButton();
100. jScrollPane1 = new javax.swing.JScrollPane();
101. tpsi = new javax.swing.JTextArea();
102. jScrollPane2 = new javax.swing.JScrollPane();
103. tkog = new javax.swing.JTextArea();
104. jScrollPane3 = new javax.swing.JScrollPane();
105. tkom = new javax.swing.JTextArea();
106. jScrollPane4 = new javax.swing.JScrollPane();
107. tsos = new javax.swing.JTextArea();
108. tno_induk = new javax.swing.JTextField();
109. bedit = new javax.swing.JButton();
110. bhapus = new javax.swing.JButton();
111. jLabel7 = new javax.swing.JLabel();
112. tnama = new javax.swing.JTextField();
113. bcariid = new javax.swing.JButton();
114. breset = new javax.swing.JButton();
115. jPanel1 = new javax.swing.JPanel();
116. jScrollPane5 = new javax.swing.JScrollPane();
117. tableperkembangan = new javax.swing.JTable();
308

118. tcari = new javax.swing.JTextField();


119. jLabel8 = new javax.swing.JLabel();
120. bcari = new javax.swing.JButton();
121. bprint = new javax.swing.JButton();
122. jLabel6 = new javax.swing.JLabel();
123. tprint = new javax.swing.JTextField();
124. jLabel10 = new javax.swing.JLabel();
125. cbkelas = new javax.swing.JComboBox<>();
126. jLabel9 = new javax.swing.JLabel();
127. bkeluar = new javax.swing.JButton();
128. jPanel2 = new javax.swing.JPanel();
129. jLabel1 = new javax.swing.JLabel();
130.
131.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_
CLOSE);
132. getContentPane().setLayout(new
org.netbeans.lib.awtextra.AbsoluteLayout());
133.
134. jLabel2.setForeground(new java.awt.Color(255, 255, 255));
135. jLabel2.setText("Sikap");
136. getContentPane().add(jLabel2, new
org.netbeans.lib.awtextra.AbsoluteConstraints(20, 180, 90, 40));
137.
138. jLabel3.setForeground(new java.awt.Color(255, 255, 255));
139. jLabel3.setText("Pengetahuan");
140. getContentPane().add(jLabel3, new
org.netbeans.lib.awtextra.AbsoluteConstraints(20, 270, -1, -1));
141.
142. jLabel4.setForeground(new java.awt.Color(255, 255, 255));
143. jLabel4.setText("Keterampilan");
309

144. getContentPane().add(jLabel4, new


org.netbeans.lib.awtextra.AbsoluteConstraints(20, 340, -1, 30));
145.
146. jLabel5.setForeground(new java.awt.Color(255, 255, 255));
147. jLabel5.setText("Ekstrakurikuler");
148. getContentPane().add(jLabel5, new
org.netbeans.lib.awtextra.AbsoluteConstraints(20, 420, 110, 30));
149.
150. bsimpan.setBackground(new java.awt.Color(255, 255, 255));
151. bsimpan.setText("SIMPAN");
152. bsimpan.addActionListener(new java.awt.event.ActionListener()
{
153. public void actionPerformed(java.awt.event.ActionEvent evt) {
154. bsimpanActionPerformed(evt);
155. }
156. });
157. getContentPane().add(bsimpan, new
org.netbeans.lib.awtextra.AbsoluteConstraints(30, 520, -1, 30));
158.
159. tpsi.setColumns(20);
160. tpsi.setRows(5);
161. tpsi.addKeyListener(new java.awt.event.KeyAdapter() {
162. public void keyPressed(java.awt.event.KeyEvent evt) {
163. tpsiKeyPressed(evt);
164. }
165. });
166. jScrollPane1.setViewportView(tpsi);
167.
168. getContentPane().add(jScrollPane1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(150, 170, 240, 70));
169.
310

170. tkog.setColumns(20);
171. tkog.setRows(5);
172. tkog.addKeyListener(new java.awt.event.KeyAdapter() {
173. public void keyPressed(java.awt.event.KeyEvent evt) {
174. tkogKeyPressed(evt);
175. }
176. });
177. jScrollPane2.setViewportView(tkog);
178.
179. getContentPane().add(jScrollPane2, new
org.netbeans.lib.awtextra.AbsoluteConstraints(150, 250, 240, 70));
180.
181. tkom.setColumns(20);
182. tkom.setRows(5);
183. tkom.addKeyListener(new java.awt.event.KeyAdapter() {
184. public void keyPressed(java.awt.event.KeyEvent evt) {
185. tkomKeyPressed(evt);
186. }
187. });
188. jScrollPane3.setViewportView(tkom);
189.
190. getContentPane().add(jScrollPane3, new
org.netbeans.lib.awtextra.AbsoluteConstraints(150, 330, 240, 70));
191.
192. tsos.setColumns(20);
193. tsos.setRows(5);
194. tsos.addKeyListener(new java.awt.event.KeyAdapter() {
195. public void keyPressed(java.awt.event.KeyEvent evt) {
196. tsosKeyPressed(evt);
197. }
198. });
311

199. jScrollPane4.setViewportView(tsos);
200.
201. getContentPane().add(jScrollPane4, new
org.netbeans.lib.awtextra.AbsoluteConstraints(150, 410, 240, 70));
202.
203. tno_induk.addActionListener(new
java.awt.event.ActionListener() {
204. public void actionPerformed(java.awt.event.ActionEvent evt) {
205. tno_indukActionPerformed(evt);
206. }
207. });
208. tno_induk.addKeyListener(new java.awt.event.KeyAdapter() {
209. public void keyPressed(java.awt.event.KeyEvent evt) {
210. tno_indukKeyPressed(evt);
211. }
212. });
213. getContentPane().add(tno_induk, new
org.netbeans.lib.awtextra.AbsoluteConstraints(150, 90, 160, 30));
214.
215. bedit.setBackground(new java.awt.Color(255, 255, 255));
216. bedit.setText("EDIT");
217. bedit.addActionListener(new java.awt.event.ActionListener() {
218. public void actionPerformed(java.awt.event.ActionEvent evt) {
219. beditActionPerformed(evt);
220. }
221. });
222. getContentPane().add(bedit, new
org.netbeans.lib.awtextra.AbsoluteConstraints(110, 520, 60, 30));
223.
224. bhapus.setBackground(new java.awt.Color(255, 255, 255));
225. bhapus.setText("HAPUS");
312

226. bhapus.addActionListener(new java.awt.event.ActionListener() {


227. public void actionPerformed(java.awt.event.ActionEvent evt) {
228. bhapusActionPerformed(evt);
229. }
230. });
231. getContentPane().add(bhapus, new
org.netbeans.lib.awtextra.AbsoluteConstraints(180, 520, -1, 30));
232.
233. jLabel7.setForeground(new java.awt.Color(255, 255, 255));
234. jLabel7.setText("Nama");
235. getContentPane().add(jLabel7, new
org.netbeans.lib.awtextra.AbsoluteConstraints(20, 140, -1, -1));
236.
237. tnama.addActionListener(new java.awt.event.ActionListener() {
238. public void actionPerformed(java.awt.event.ActionEvent evt) {
239. tnamaActionPerformed(evt);
240. }
241. });
242. tnama.addKeyListener(new java.awt.event.KeyAdapter() {
243. public void keyPressed(java.awt.event.KeyEvent evt) {
244. tnamaKeyPressed(evt);
245. }
246. });
247. getContentPane().add(tnama, new
org.netbeans.lib.awtextra.AbsoluteConstraints(150, 130, 160, 30));
248.
249. bcariid.setBackground(new java.awt.Color(255, 255, 255));
250. bcariid.setText("CARI");
251. bcariid.addActionListener(new java.awt.event.ActionListener() {
252. public void actionPerformed(java.awt.event.ActionEvent evt) {
253. bcariidActionPerformed(evt);
313

254. }
255. });
256. getContentPane().add(bcariid, new
org.netbeans.lib.awtextra.AbsoluteConstraints(320, 90, -1, 30));
257.
258. breset.setBackground(new java.awt.Color(255, 255, 255));
259. breset.setText("RESET");
260. breset.addActionListener(new java.awt.event.ActionListener() {
261. public void actionPerformed(java.awt.event.ActionEvent evt) {
262. bresetActionPerformed(evt);
263. }
264. });
265. getContentPane().add(breset, new
org.netbeans.lib.awtextra.AbsoluteConstraints(260, 520, -1, 30));
266.
267. jPanel1.setBackground(new java.awt.Color(0, 153, 0));
268. jPanel1.setLayout(null);
269.
270. tableperkembangan.setModel(new
javax.swing.table.DefaultTableModel(
271. new Object [][] {
272. {null, null, null, null},
273. {null, null, null, null},
274. {null, null, null, null},
275. {null, null, null, null}
276. },
277. new String [] {
278. "Title 1", "Title 2", "Title 3", "Title 4"
279. }
280. ));
314

281. tableperkembangan.addMouseListener(new
java.awt.event.MouseAdapter() {
282. public void mouseClicked(java.awt.event.MouseEvent evt) {
283. tableperkembanganMouseClicked(evt);
284. }
285. });
286. jScrollPane5.setViewportView(tableperkembangan);
287.
288. jPanel1.add(jScrollPane5);
289. jScrollPane5.setBounds(460, 80, 830, 390);
290.
291. tcari.addActionListener(new java.awt.event.ActionListener() {
292. public void actionPerformed(java.awt.event.ActionEvent evt) {
293. tcariActionPerformed(evt);
294. }
295. });
296. jPanel1.add(tcari);
297. tcari.setBounds(520, 40, 90, 30);
298.
299. jLabel8.setForeground(new java.awt.Color(255, 255, 255));
300. jLabel8.setText("Cari");
301. jPanel1.add(jLabel8);
302. jLabel8.setBounds(470, 40, 80, 30);
303.
304. bcari.setBackground(new java.awt.Color(255, 255, 255));
305. bcari.setText("CARI");
306. bcari.addActionListener(new java.awt.event.ActionListener() {
307. public void actionPerformed(java.awt.event.ActionEvent evt) {
308. bcariActionPerformed(evt);
309. }
310. });
315

311. jPanel1.add(bcari);
312. bcari.setBounds(630, 40, 70, 30);
313.
314. bprint.setBackground(new java.awt.Color(255, 255, 255));
315. bprint.setText("PRINT");
316. bprint.addActionListener(new java.awt.event.ActionListener() {
317. public void actionPerformed(java.awt.event.ActionEvent evt) {
318. bprintActionPerformed(evt);
319. }
320. });
321. jPanel1.add(bprint);
322. bprint.setBounds(1210, 40, 70, 30);
323.
324. jLabel6.setForeground(new java.awt.Color(255, 255, 255));
325. jLabel6.setText("No. Induk");
326. jPanel1.add(jLabel6);
327. jLabel6.setBounds(20, 50, 60, 20);
328. jPanel1.add(tprint);
329. tprint.setBounds(1120, 40, 80, 30);
330.
331. jLabel10.setForeground(new java.awt.Color(255, 255, 255));
332. jLabel10.setText("No. Induk");
333. jPanel1.add(jLabel10);
334. jLabel10.setBounds(1050, 40, 60, 30);
335.
336. cbkelas.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "--PILIH--",
"1", "2", "3", "4", "5", "6" }));
337. cbkelas.addActionListener(new java.awt.event.ActionListener() {
338. public void actionPerformed(java.awt.event.ActionEvent evt) {
339. cbkelasActionPerformed(evt);
316

340. }
341. });
342. jPanel1.add(cbkelas);
343. cbkelas.setBounds(370, 80, 80, 30);
344.
345. jLabel9.setForeground(new java.awt.Color(255, 255, 255));
346. jLabel9.setText("Kelas");
347. jPanel1.add(jLabel9);
348. jLabel9.setBounds(317, 76, 40, 30);
349.
350. bkeluar.setBackground(new java.awt.Color(255, 255, 255));
351. bkeluar.setFont(new java.awt.Font("Segoe UI", 1, 12)); //
NOI18N
352. bkeluar.setForeground(new java.awt.Color(255, 0, 0));
353. bkeluar.setText("KEMBALI");
354. bkeluar.addActionListener(new java.awt.event.ActionListener() {
355. public void actionPerformed(java.awt.event.ActionEvent evt) {
356. bkeluarActionPerformed(evt);
357. }
358. });
359. jPanel1.add(bkeluar);
360. bkeluar.setBounds(360, 470, 90, 30);
361.
362. getContentPane().add(jPanel1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(0, 50, 1300, 580));
363.
364. jPanel2.setBackground(new java.awt.Color(0, 153, 0));
365. jPanel2.setLayout(null);
366.
367. jLabel1.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
368. jLabel1.setForeground(new java.awt.Color(255, 255, 255));
317

369.
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENT
ER);
370. jLabel1.setText("PERKEMBANGAN SISWA");
371. jPanel2.add(jLabel1);
372. jLabel1.setBounds(0, 10, 1290, 44);
373.
374. getContentPane().add(jPanel2, new
org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 1300, 50));
375.
376. setSize(new java.awt.Dimension(1314, 617));
377. setLocationRelativeTo(null);
378. }// </editor-fold>
379.
380. private void
tno_indukActionPerformed(java.awt.event.ActionEvent evt) {
381. // TODO add your handling code here:
382. }
383.
384. private void bsimpanActionPerformed(java.awt.event.ActionEvent
evt) {
385. // TODO add your handling code here:
386. String sql = "insert into rapor values (?,?,?,?,?,?,?)";
387. try{
388. PreparedStatement stat = conn.prepareStatement(sql);
389. stat.setString(1, tno_induk.getText());
390. stat.setString(2, tnama.getText());
391. stat.setString(3, (String) cbkelas.getSelectedItem());
392. stat.setString(4, tpsi.getText());
393. stat.setString(5, tkog.getText());
394. stat.setString(6, tkom.getText());
318

395. stat.setString(7, tsos.getText());


396.
397. stat.executeUpdate();
398. JOptionPane.showMessageDialog(null, "Data berhasil
disimpan");
399. kosong();
400. tno_induk.requestFocus();
401. datatable();
402. } catch (SQLException e){
403. JOptionPane.showMessageDialog(null, "Data gagal disimpan
"+e);
404. }
405. }
406.
407. private void beditActionPerformed(java.awt.event.ActionEvent evt)
{
408. // TODO add your handling code here:
409. String no_induk = tno_induk.getText();
410. String nama = tnama.getText();
411. //String kelas = tkelas.getText();
412. String kelas = (String) cbkelas.getSelectedItem();
413. //st.setString(4, (String) cbkelas.getSelectedItem());
414. String psi = tpsi.getText();
415. String kog = tkog.getText();
416. String kom = tkom.getText();
417. String sos = tsos.getText();
418.
419. try{
420. String sql = "update rapor set no_induk= '"+no_induk+"', nama
= '"+nama+"', kelas = '"+kelas+"', psi = '"+psi+"', kog = '"+kog+"', kom
= '"+kom+"', sos = '"+sos+"' where no_induk ='"+no_induk+"';";
319

421. PreparedStatement stat = conn.prepareStatement(sql);


422.
423.
424. stat.executeUpdate();
425. kosong();
426. datatable();
427. tno_induk.requestFocus();
428. JOptionPane.showMessageDialog(null, "Data berhasil
diubah");
429. } catch(SQLException e){
430. JOptionPane.showMessageDialog(null,"Data gagal diubah
"+e);
431. }
432. }
433.
434. private void tnamaActionPerformed(java.awt.event.ActionEvent
evt) {
435. // TODO add your handling code here:
436. }
437.
438. private void tcariActionPerformed(java.awt.event.ActionEvent evt)
{
439. // TODO add your handling code here:
440. }
441.
442. private void
tableperkembanganMouseClicked(java.awt.event.MouseEvent evt) {
443. // TODO add your handling code here:
444. int bar = tableperkembangan.getSelectedRow();
445. String a = tabmode.getValueAt(bar, 0).toString();
446. String b = tabmode.getValueAt(bar, 1).toString();
320

447. String c = tabmode.getValueAt(bar, 2).toString();


448. String d = tabmode.getValueAt(bar, 3).toString();
449. String e = tabmode.getValueAt(bar, 4).toString();
450. String f = tabmode.getValueAt(bar, 5).toString();
451. String g = tabmode.getValueAt(bar, 6).toString();
452.
453. tno_induk.setText(a);
454. tnama.setText(b);
455. cbkelas.setSelectedItem(c);
456. tpsi.setText(d);
457. tkog.setText(e);
458. tkom.setText(f);
459. tsos.setText(g);
460. tprint.setText(a);
461. }
462.
463. private void bhapusActionPerformed(java.awt.event.ActionEvent
evt) {
464. // TODO add your handling code here:
465. int ok =
JOptionPane.showConfirmDialog(null,"hapus","Konfirmasi
Dialog",JOptionPane.YES_NO_CANCEL_OPTION);
466. if (ok==0){
467. String sql = "delete from rapor where psi='"+tpsi.getText()+"'";
468. try{
469. PreparedStatement stat = conn.prepareStatement(sql);
470. stat.executeUpdate();
471. JOptionPane.showMessageDialog(null, "Data berhasil
dihapus");
472. kosong();
473. tno_induk.requestFocus();
321

474. datatable();
475.
476. }catch(SQLException e){
477. JOptionPane.showMessageDialog(null, "Data gagal dihapus
"+e);
478. }
479. }
480. }
481.
482. private void bcariidActionPerformed(java.awt.event.ActionEvent
evt) {
483. // TODO add your handling code here:
484. String sql = "SELECT * FROM rapor WHERE no_induk
='"+tno_induk.getText()+"'";
485. try {
486. java.sql.Statement st = conn.createStatement();
487. ResultSet res = st.executeQuery(sql);
488. while(res.next()){
489. String nama = res.getString("Nama");
490. tnama.setText(nama);
491. tnama.setEnabled(false);
492. }
493. } catch (Exception e) {}
494. }
495.
496. private void bcariActionPerformed(java.awt.event.ActionEvent evt)
{
497. // TODO add your handling code here
498. Object[] baris = {"No.
Induk","Nama","Kelas","Sikap","Pengetahuan","Keterampilan","Ekst
rakurikuler"};
322

499. tabmode = new DefaultTableModel(null, baris);


500. tableperkembangan.setModel(tabmode);
501. String sql = "select * from formperkembangan where no_induk
like '%"+tcari.getText()+"%' or nama like '%"+tcari.getText()+"%' or
kelas like '%"+tcari.getText()+"%' order by no_induk ASC;";
502. try{
503. java.sql.Statement stat = conn.createStatement();
504. ResultSet hasil = stat.executeQuery(sql);
505. while(hasil.next()){
506. String a = hasil.getString("no_induk");
507. String b = hasil.getString("nama");
508. String c = hasil.getString("kelas");
509. String d = hasil.getString("psi");
510. String e = hasil.getString("kog");
511. String f = hasil.getString("kom");
512. String g = hasil.getString("sos");
513.
514. String[] data={a,b,c,d,e,f,g};
515. tabmode.addRow(data);
516. }
517. }catch(Exception e){
518. }
519. }
520.
521. private void bprintActionPerformed(java.awt.event.ActionEvent
evt) {
522. // TODO add your handling code here:
523. try {
524. // File namafile = new
File("src/laporan/cetak_perkembangan.jasper");
323

525. // JasperPrint jp =
JasperFillManager.fillReport(namafile.getPath(), null,
config.connect());
526. // JasperViewer.viewReport(jp, false);
527. String report =
("C:\\Users\\riska\\Documents\\NetBeansProjects\\Sekolah\\src\\lapor
an\\rapor.jrxml");
528. HashMap parameter = new HashMap();
529. parameter.put("no",tprint.getText());
530.
531. JasperReport jr =
JasperCompileManager.compileReport(report);
532.
533. JasperPrint jp = JasperFillManager.fillReport(jr, parameter,
conn);
534. JasperViewer.viewReport(jp, false);
535. } catch (Exception e) {
536. JOptionPane.showMessageDialog(null, "Data tidak dapat
dicetak "+ e.getMessage(), "cetak data ",
JOptionPane.ERROR_MESSAGE);
537. }
538. }
539.
540. private void bresetActionPerformed(java.awt.event.ActionEvent
evt) {
541. // TODO add your handling code here:
542. kosong();
543. }
544.
545. private void bkeluarActionPerformed(java.awt.event.ActionEvent
evt) {
324

546. // TODO add your handling code here:


547. menu menu = new menu();
548. menu.setVisible(true);
549. this.dispose();
550. }
551.
552. private void tno_indukKeyPressed(java.awt.event.KeyEvent evt) {
553. // TODO add your handling code here:
554. int kode=evt.getKeyCode();
555. if(kode==evt.VK_ENTER)
556. tnama.requestFocus();
557. }
558.
559. private void tnamaKeyPressed(java.awt.event.KeyEvent evt) {
560. // TODO add your handling code here:
561. int kode=evt.getKeyCode();
562. if(kode==evt.VK_ENTER)
563. cbkelas.requestFocus();
564. }
565.
566. private void tpsiKeyPressed(java.awt.event.KeyEvent evt) {
567. // TODO add your handling code here:
568. int kode=evt.getKeyCode();
569. if(kode==evt.VK_ENTER)
570. tkog.requestFocus();
571. }
572.
573. private void tkogKeyPressed(java.awt.event.KeyEvent evt) {
574. // TODO add your handling code here:
575. int kode=evt.getKeyCode();
576. if(kode==evt.VK_ENTER)
325

577. tkom.requestFocus();
578. }
579.
580. private void tkomKeyPressed(java.awt.event.KeyEvent evt) {
581. // TODO add your handling code here:
582. int kode=evt.getKeyCode();
583. if(kode==evt.VK_ENTER)
584. tsos.requestFocus();
585. }
586.
587. private void tsosKeyPressed(java.awt.event.KeyEvent evt) {
588. // TODO add your handling code here:
589. int kode=evt.getKeyCode();
590. if(kode==evt.VK_ENTER)
591. bsimpan.requestFocus();
592. }
593.
594. private void cbkelasActionPerformed(java.awt.event.ActionEvent
evt) {
595. // TODO add your handling code here:
596. }
597.
598. /**
599. * @param args the command line arguments
600. */
601. public static void main(String args[]) {
602. /* Set the Nimbus look and feel */
603. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
604. /* If Nimbus (introduced in Java SE 6) is not available, stay with
the default look and feel.
326

605. * For details see


http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.ht
ml
606. */
607. try {
608. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
609. if ("FlatLaf Light".equals(info.getName())) {
610.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
611. break;
612. }
613. }
614. } catch (ClassNotFoundException ex) {
615.
java.util.logging.Logger.getLogger(FormPerkembangan.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
616. } catch (InstantiationException ex) {
617.
java.util.logging.Logger.getLogger(FormPerkembangan.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
618. } catch (IllegalAccessException ex) {
619.
java.util.logging.Logger.getLogger(FormPerkembangan.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
620. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
621.
java.util.logging.Logger.getLogger(FormPerkembangan.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
622. }
623. //</editor-fold>
327

624. //</editor-fold>
625.
626. /* Create and display the form */
627. java.awt.EventQueue.invokeLater(new Runnable() {
628. public void run() {
629. new FormPerkembangan().setVisible(true);
630. }
631. });
632. }
633.
634. // Variables declaration - do not modify
635. private javax.swing.JButton bcari;
636. private javax.swing.JButton bcariid;
637. private javax.swing.JButton bedit;
638. private javax.swing.JButton bhapus;
639. private javax.swing.JButton bkeluar;
640. private javax.swing.JButton bprint;
641. private javax.swing.JButton breset;
642. private javax.swing.JButton bsimpan;
643. private javax.swing.JComboBox<String> cbkelas;
644. private javax.swing.JLabel jLabel1;
645. private javax.swing.JLabel jLabel10;
646. private javax.swing.JLabel jLabel2;
647. private javax.swing.JLabel jLabel3;
648. private javax.swing.JLabel jLabel4;
649. private javax.swing.JLabel jLabel5;
650. private javax.swing.JLabel jLabel6;
651. private javax.swing.JLabel jLabel7;
652. private javax.swing.JLabel jLabel8;
653. private javax.swing.JLabel jLabel9;
654. private javax.swing.JPanel jPanel1;
328

655. private javax.swing.JPanel jPanel2;


656. private javax.swing.JScrollPane jScrollPane1;
657. private javax.swing.JScrollPane jScrollPane2;
658. private javax.swing.JScrollPane jScrollPane3;
659. private javax.swing.JScrollPane jScrollPane4;
660. private javax.swing.JScrollPane jScrollPane5;
661. private javax.swing.JTable tableperkembangan;
662. private javax.swing.JTextField tcari;
663. private javax.swing.JTextArea tkog;
664. private javax.swing.JTextArea tkom;
665. private javax.swing.JTextField tnama;
666. private javax.swing.JTextField tno_induk;
667. private javax.swing.JTextField tprint;
668. private javax.swing.JTextArea tpsi;
669. private javax.swing.JTextArea tsos;
670. // End of variables declaration
671. }

K. data_eskul.java
1. /*
2. * To change this license header, choose License Headers in Project
Properties.
3. * To change this template file, choose Tools | Templates
4. * and open the template in the editor.
5. */
6. package eskul;
7. import java.sql.*;
8. import java.sql.Connection;
9. import java.sql.DriverManager;
10. import java.sql.PreparedStatement;
11. import java.sql.ResultSet;
329

12. import java.sql.Statement;


13. import javax.swing.JOptionPane;
14. import javax.swing.table.DefaultTableModel;
15. import java.awt.event.KeyEvent;
16. import controller.koneksi;
17. import net.sf.jasperreports.engine.JasperCompileManager;
18. import net.sf.jasperreports.engine.JasperFillManager;
19. import net.sf.jasperreports.engine.JasperPrint;
20. import net.sf.jasperreports.engine.JasperReport;
21. import net.sf.jasperreports.view.JasperViewer;
22. import utama.menu;
23. /**
24. *
25. * @author ACER
26. */
27. public class data_eskul extends javax.swing.JFrame {
28. private Connection con = koneksi.getKoneksi();
29. private Statement st;
30. private ResultSet res;
31. private DefaultTableModel t;
32. Boolean ada = false;
33. /**
34. * Creates new form data_eskul
35. */
36. public data_eskul() {
37. initComponents();
38. setTitle("FORM DATA EKSTRAKULIKULER");
39. konek();
40. aktif();
41. kosong();
42. datatable();
330

43. //kondisi(ada);
44.
45.
46. }
47. private boolean ada (String no_induk){
48. String sql = "select * from input_data_siswa where no_induk =?";
49. try {
50. boolean ada = false;
51. Connection conn = new koneksi().getKoneksi();
52. PreparedStatement stat = conn.prepareStatement(sql);
53. stat.setString(1, no_induk);
54. ResultSet rs = (ResultSet)stat.executeQuery();
55. if (rs.next()){
56. ada = true;
57.
58. } return ada;
59. }catch(SQLException ex){
60. JOptionPane.showMessageDialog(null, ex.toString());
61.
62. }
63. return false;
64. }
65. private void kondisi( boolean ada){
66. if(ada){
67. JOptionPane.showMessageDialog(null, "error");
68. }else{
69.
70. }
71.
72. }
73.
331

74. protected void konek(){


75. try{
76. Class.forName("com.mysql.jdbc.Driver");
77.
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/db
apasi", "root", "");
78. st=con.createStatement();
79. }catch (Exception e){
80. JOptionPane.showMessageDialog(null, e);}
81. }
82.
83. protected void aktif(){
84. tno_induk.requestFocus();
85. }
86.
87. protected void kosong(){
88. tno_induk.setText("");
89. tnama.setText("");
90. cbkelas.setSelectedIndex(0);
91. tnotelp.setText("");
92. buttonGroup1.clearSelection();
93. talamat.setText("");
94. cbeskul.setSelectedIndex(0);
95. cbsabuk.setSelectedIndex(0);
96. cbtingkat.setSelectedIndex(0);
97. tcari.setText("");
98. tno_induk.requestFocus();
99. }
100.
101. protected void datatable(){
102. DefaultTableModel t = new DefaultTableModel();
332

103. t.addColumn("NO. INDUK");


104. t.addColumn("NAMA");
105. t.addColumn("KELAS");
106. t.addColumn("NO. TELP");
107. t.addColumn("JENIS KELAMIN");
108. t.addColumn("ALAMAT");
109. t.addColumn("ESKUL");
110. t.addColumn("SABUK");
111. t.addColumn("TINGKAT");
112.
113. String cari=tcari.getText();
114. try{
115. String sql ="SELECT * FROM data_eskul WHERE no_induk
LIKE '%"+cari+"%' OR nama LIKE '%"+cari+"%' ORDER BY
no_induk ASC";
116. Statement st = con.createStatement();
117. ResultSet res = st.executeQuery(sql);
118. while (res.next()){
119. t.addRow(new Object[] {
120. res.getString(1),
121. res.getString(2),
122. res.getString(3),
123. res.getString(4),
124. res.getString(5),
125. res.getString(6),
126. res.getString(7),
127. res.getString(8),
128. res.getString(9)
129. });
130. }
131. tabledataeskul.setModel(t);
333

132. }catch (Exception e) {


133. JOptionPane.showMessageDialog(null, "Data Gagal
Dipanggil"+e);
134.
135. }
136. }
137.
138. /**
139. * This method is called from within the constructor to initialize the
form.
140. * WARNING: Do NOT modify this code. The content of this
method is always
141. * regenerated by the Form Editor.
142. */
143. @SuppressWarnings("unchecked")
144. // <editor-fold defaultstate="collapsed" desc="Generated Code">
145. private void initComponents() {
146.
147. buttonGroup1 = new javax.swing.ButtonGroup();
148. jPanel1 = new javax.swing.JPanel();
149. jPanel2 = new javax.swing.JPanel();
150. jLabel1 = new javax.swing.JLabel();
151. jLabel2 = new javax.swing.JLabel();
152. jLabel3 = new javax.swing.JLabel();
153. jLabel4 = new javax.swing.JLabel();
154. jLabel6 = new javax.swing.JLabel();
155. jLabel7 = new javax.swing.JLabel();
156. jLabel8 = new javax.swing.JLabel();
157. tnama = new javax.swing.JTextField();
158. cbkelas = new javax.swing.JComboBox<>();
159. tnotelp = new javax.swing.JTextField();
334

160. talamat = new javax.swing.JTextField();


161. jLabel9 = new javax.swing.JLabel();
162. jLabel10 = new javax.swing.JLabel();
163. cbeskul = new javax.swing.JComboBox<>();
164. jLabel11 = new javax.swing.JLabel();
165. cbsabuk = new javax.swing.JComboBox<>();
166. cbtingkat = new javax.swing.JComboBox<>();
167. jScrollPane1 = new javax.swing.JScrollPane();
168. tabledataeskul = new javax.swing.JTable();
169. tcari = new javax.swing.JTextField();
170. jLabel12 = new javax.swing.JLabel();
171. bsave = new javax.swing.JButton();
172. bedit = new javax.swing.JButton();
173. bdelete = new javax.swing.JButton();
174. bclear = new javax.swing.JButton();
175. bexit = new javax.swing.JButton();
176. bsearch = new javax.swing.JButton();
177. rblaki = new javax.swing.JRadioButton();
178. rbperempuan = new javax.swing.JRadioButton();
179. bsearchnis = new javax.swing.JButton();
180. tno_induk = new javax.swing.JTextField();
181. jButton1 = new javax.swing.JButton();
182.
183.
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_
CLOSE);
184.
185. jPanel1.setBackground(new java.awt.Color(0, 153, 0));
186. jPanel1.setMaximumSize(new java.awt.Dimension(1147, 693));
187. jPanel1.setMinimumSize(new java.awt.Dimension(1147, 693));
188.
335

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


190.
191. jLabel1.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
192. jLabel1.setForeground(new java.awt.Color(255, 255, 255));
193. jLabel1.setText("DATA EKSTRAKURIKULER ");
194.
195. javax.swing.GroupLayout jPanel2Layout = new
javax.swing.GroupLayout(jPanel2);
196. jPanel2.setLayout(jPanel2Layout);
197. jPanel2Layout.setHorizontalGroup(
198.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
199. .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel2Layout.createSequentialGroup()
200.
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
201. .addComponent(jLabel1)
202. .addGap(317, 317, 317))
203. );
204. jPanel2Layout.setVerticalGroup(
205.
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
206. .addGroup(jPanel2Layout.createSequentialGroup()
207. .addGap(15, 15, 15)
208. .addComponent(jLabel1)
209. .addContainerGap(46, Short.MAX_VALUE))
210. );
211.
336

212. jLabel2.setForeground(new java.awt.Color(255, 255, 255));


213. jLabel2.setText("NO. INDUK");
214.
215. jLabel3.setForeground(new java.awt.Color(255, 255, 255));
216. jLabel3.setText("NAMA");
217.
218. jLabel4.setForeground(new java.awt.Color(255, 255, 255));
219. jLabel4.setText("KELAS");
220.
221. jLabel6.setForeground(new java.awt.Color(255, 255, 255));
222. jLabel6.setText("NO. TELEPON");
223.
224. jLabel7.setForeground(new java.awt.Color(255, 255, 255));
225. jLabel7.setText("JENIS KELAMIN");
226.
227. jLabel8.setForeground(new java.awt.Color(255, 255, 255));
228. jLabel8.setText("ALAMAT");
229.
230. cbkelas.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "-- PILIH
KELAS --", "1", "2", "3", "4", "5", "6" }));
231.
232. tnotelp.addKeyListener(new java.awt.event.KeyAdapter() {
233. public void keyTyped(java.awt.event.KeyEvent evt) {
234. tnotelpKeyTyped(evt);
235. }
236. });
237.
238. jLabel9.setForeground(new java.awt.Color(255, 255, 255));
239. jLabel9.setText("EKSTRAKURIKULER");
240.
337

241. jLabel10.setForeground(new java.awt.Color(255, 255, 255));


242. jLabel10.setText("SABUK");
243.
244. cbeskul.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "-- PILIH
EKSTRAKURIKULER --", "Pencak Silat", "Pramuka" }));
245.
246. jLabel11.setForeground(new java.awt.Color(255, 255, 255));
247. jLabel11.setText("TINGKAT");
248.
249. cbsabuk.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "-- PILIH
SABUK --", "Putih", "Kuning", "Oranye", "Hijau", "Biru", "Coklat",
"Hitam" }));
250.
251. cbtingkat.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "-- PILIH
TINGKAT --", "1", "2", "3", "4" }));
252.
253. tabledataeskul.setModel(new
javax.swing.table.DefaultTableModel(
254. new Object [][] {
255. {null, null, null, null, null, null, null, null, null},
256. {null, null, null, null, null, null, null, null, null},
257. {null, null, null, null, null, null, null, null, null},
258. {null, null, null, null, null, null, null, null, null}
259. },
260. new String [] {
261. "NO. INDUK", "NAMA", "KELAS", "NO. TELP", "JENIS
KELAMIN", "ALAMAT", "ESKUL", "SABUK", "TINGKAT"
262. }
338

263. ));
264. tabledataeskul.addMouseListener(new
java.awt.event.MouseAdapter() {
265. public void mouseClicked(java.awt.event.MouseEvent evt) {
266. tabledataeskulMouseClicked(evt);
267. }
268. });
269. tabledataeskul.addKeyListener(new java.awt.event.KeyAdapter()
{
270. public void keyReleased(java.awt.event.KeyEvent evt) {
271. tabledataeskulKeyReleased(evt);
272. }
273. });
274. jScrollPane1.setViewportView(tabledataeskul);
275.
276. tcari.addKeyListener(new java.awt.event.KeyAdapter() {
277. public void keyPressed(java.awt.event.KeyEvent evt) {
278. tcariKeyPressed(evt);
279. }
280. });
281.
282. jLabel12.setForeground(new java.awt.Color(255, 255, 255));
283. jLabel12.setText("KATA KUNCI PENCARIAN");
284.
285. bsave.setBackground(new java.awt.Color(255, 255, 255));
286. bsave.setText("SIMPAN");
287. bsave.addActionListener(new java.awt.event.ActionListener() {
288. public void actionPerformed(java.awt.event.ActionEvent evt) {
289. bsaveActionPerformed(evt);
290. }
291. });
339

292.
293. bedit.setBackground(new java.awt.Color(255, 255, 255));
294. bedit.setText("EDIT");
295. bedit.addActionListener(new java.awt.event.ActionListener() {
296. public void actionPerformed(java.awt.event.ActionEvent evt) {
297. beditActionPerformed(evt);
298. }
299. });
300.
301. bdelete.setBackground(new java.awt.Color(255, 255, 255));
302. bdelete.setText("HAPUS");
303. bdelete.addActionListener(new java.awt.event.ActionListener() {
304. public void actionPerformed(java.awt.event.ActionEvent evt) {
305. bdeleteActionPerformed(evt);
306. }
307. });
308.
309. bclear.setBackground(new java.awt.Color(255, 255, 255));
310. bclear.setText("RESET");
311. bclear.addActionListener(new java.awt.event.ActionListener() {
312. public void actionPerformed(java.awt.event.ActionEvent evt) {
313. bclearActionPerformed(evt);
314. }
315. });
316.
317. bexit.setBackground(new java.awt.Color(255, 255, 255));
318. bexit.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N
319. bexit.setForeground(new java.awt.Color(255, 0, 0));
320. bexit.setText("KEMBALI");
321. bexit.addActionListener(new java.awt.event.ActionListener() {
322. public void actionPerformed(java.awt.event.ActionEvent evt) {
340

323. bexitActionPerformed(evt);
324. }
325. });
326.
327. bsearch.setBackground(new java.awt.Color(255, 255, 255));
328. bsearch.setText("CARI");
329. bsearch.addActionListener(new java.awt.event.ActionListener() {
330. public void actionPerformed(java.awt.event.ActionEvent evt) {
331. bsearchActionPerformed(evt);
332. }
333. });
334.
335. rblaki.setBackground(new java.awt.Color(0, 153, 0));
336. buttonGroup1.add(rblaki);
337. rblaki.setText("LAKI - LAKI");
338.
339. rbperempuan.setBackground(new java.awt.Color(0, 153, 0));
340. buttonGroup1.add(rbperempuan);
341. rbperempuan.setText("PEREMPUAN");
342.
343. bsearchnis.setBackground(new java.awt.Color(255, 255, 255));
344. bsearchnis.setText("CARI");
345. bsearchnis.addActionListener(new
java.awt.event.ActionListener() {
346. public void actionPerformed(java.awt.event.ActionEvent evt) {
347. bsearchnisActionPerformed(evt);
348. }
349. });
350.
351. tno_induk.addKeyListener(new java.awt.event.KeyAdapter() {
352. public void keyTyped(java.awt.event.KeyEvent evt) {
341

353. tno_indukKeyTyped(evt);
354. }
355. });
356.
357. jButton1.setBackground(new java.awt.Color(255, 255, 255));
358. jButton1.setText("PRINT");
359. jButton1.addActionListener(new java.awt.event.ActionListener()
{
360. public void actionPerformed(java.awt.event.ActionEvent evt) {
361. jButton1ActionPerformed(evt);
362. }
363. });
364.
365. javax.swing.GroupLayout jPanel1Layout = new
javax.swing.GroupLayout(jPanel1);
366. jPanel1.setLayout(jPanel1Layout);
367. jPanel1Layout.setHorizontalGroup(
368.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
369. .addComponent(jPanel2,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
370. .addGroup(jPanel1Layout.createSequentialGroup()
371. .addGap(20, 20, 20)
372.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
373. .addComponent(jLabel6)
374. .addComponent(jLabel7)
375. .addComponent(jLabel8)
342

376. .addComponent(jLabel9)
377. .addComponent(jLabel10,
javax.swing.GroupLayout.PREFERRED_SIZE, 43,
javax.swing.GroupLayout.PREFERRED_SIZE)
378. .addComponent(jLabel4)
379. .addComponent(jLabel3)
380. .addComponent(jLabel2)
381. .addComponent(jLabel11))
382. .addGap(18, 18, 18)
383.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
384. .addGroup(jPanel1Layout.createSequentialGroup()
385.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
386. .addComponent(cbtingkat,
javax.swing.GroupLayout.PREFERRED_SIZE, 155,
javax.swing.GroupLayout.PREFERRED_SIZE)
387. .addGroup(jPanel1Layout.createSequentialGroup()
388. .addComponent(tno_induk,
javax.swing.GroupLayout.PREFERRED_SIZE, 120,
javax.swing.GroupLayout.PREFERRED_SIZE)
389.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
390. .addComponent(bsearchnis)))
391. .addContainerGap())
392. .addGroup(jPanel1Layout.createSequentialGroup()
343

393.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
394. .addComponent(cbeskul,
javax.swing.GroupLayout.PREFERRED_SIZE, 207,
javax.swing.GroupLayout.PREFERRED_SIZE)
395. .addComponent(cbsabuk,
javax.swing.GroupLayout.PREFERRED_SIZE, 155,
javax.swing.GroupLayout.PREFERRED_SIZE)
396.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING, false)
397. .addComponent(tnama,
javax.swing.GroupLayout.Alignment.LEADING)
398.
.addGroup(javax.swing.GroupLayout.Alignment.LEADING,
jPanel1Layout.createSequentialGroup()
399. .addGap(1, 1, 1)
400.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING, false)
401.
.addGroup(jPanel1Layout.createSequentialGroup()
402. .addComponent(rblaki)
403.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
404. .addComponent(rbperempuan))
405. .addComponent(cbkelas,
javax.swing.GroupLayout.PREFERRED_SIZE, 150,
javax.swing.GroupLayout.PREFERRED_SIZE)
344

406. .addComponent(tnotelp,
javax.swing.GroupLayout.PREFERRED_SIZE, 153,
javax.swing.GroupLayout.PREFERRED_SIZE)
407. .addComponent(talamat)))))
408.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RE
LATED, 26, Short.MAX_VALUE)
409.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
410.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
411.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.TRAILING)
412.
.addGroup(jPanel1Layout.createSequentialGroup()
413. .addComponent(jLabel12)
414. .addGap(18, 18, 18)
415. .addComponent(tcari,
javax.swing.GroupLayout.PREFERRED_SIZE, 250,
javax.swing.GroupLayout.PREFERRED_SIZE)
416. .addGap(18, 18, 18)
417. .addComponent(bsearch))
418. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 753,
javax.swing.GroupLayout.PREFERRED_SIZE))
419. .addGap(30, 30, 30))
345

420.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
421. .addComponent(bsave,
javax.swing.GroupLayout.PREFERRED_SIZE, 91,
javax.swing.GroupLayout.PREFERRED_SIZE)
422. .addGap(18, 18, 18)
423. .addComponent(bedit,
javax.swing.GroupLayout.PREFERRED_SIZE, 75,
javax.swing.GroupLayout.PREFERRED_SIZE)
424. .addGap(18, 18, 18)
425. .addComponent(bdelete,
javax.swing.GroupLayout.PREFERRED_SIZE, 80,
javax.swing.GroupLayout.PREFERRED_SIZE)
426. .addGap(18, 18, 18)
427. .addComponent(bclear,
javax.swing.GroupLayout.PREFERRED_SIZE, 73,
javax.swing.GroupLayout.PREFERRED_SIZE)
428. .addGap(40, 40, 40)
429. .addComponent(bexit,
javax.swing.GroupLayout.PREFERRED_SIZE, 96,
javax.swing.GroupLayout.PREFERRED_SIZE)
430. .addGap(45, 45, 45)
431. .addComponent(jButton1,
javax.swing.GroupLayout.PREFERRED_SIZE, 90,
javax.swing.GroupLayout.PREFERRED_SIZE)
432. .addGap(43, 43, 43))))))
433. );
434. jPanel1Layout.setVerticalGroup(
346

435.
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
436. .addGroup(jPanel1Layout.createSequentialGroup()
437. .addComponent(jPanel2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
438.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
439. .addGroup(jPanel1Layout.createSequentialGroup()
440. .addGap(12, 12, 12)
441.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
442. .addComponent(jLabel2)
443. .addComponent(bsearchnis)
444. .addComponent(tno_induk,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
445. .addGroup(jPanel1Layout.createSequentialGroup()
446.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
447.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
448. .addComponent(tcari,
javax.swing.GroupLayout.PREFERRED_SIZE,
347

javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
449. .addComponent(jLabel12)
450. .addComponent(bsearch))))
451.
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UN
RELATED)
452.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING, false)
453. .addGroup(jPanel1Layout.createSequentialGroup()
454.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
455. .addGroup(jPanel1Layout.createSequentialGroup()
456. .addComponent(tnama,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
457. .addGap(9, 9, 9))
458.
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
459. .addComponent(jLabel3)
460. .addGap(18, 18, 18)))
461.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
462. .addComponent(cbkelas,
javax.swing.GroupLayout.PREFERRED_SIZE,
348

javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
463. .addComponent(jLabel4))
464. .addGap(15, 15, 15)
465.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
466. .addComponent(jLabel6)
467. .addComponent(tnotelp,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
468. .addGap(18, 18, 18)
469.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
470. .addComponent(jLabel7)
471. .addComponent(rblaki)
472. .addComponent(rbperempuan))
473. .addGap(18, 18, 18)
474.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
475. .addComponent(talamat,
javax.swing.GroupLayout.PREFERRED_SIZE, 53,
javax.swing.GroupLayout.PREFERRED_SIZE)
476. .addComponent(jLabel8))
477. .addGap(18, 18, 18)
478.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
349

479. .addComponent(jLabel9)
480. .addComponent(cbeskul,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
481. .addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 0,
Short.MAX_VALUE))
482. .addGap(18, 18, 18)
483.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.LEADING)
484. .addComponent(jButton1,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE, 35,
Short.MAX_VALUE)
485.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
486. .addComponent(jLabel10)
487. .addComponent(cbsabuk,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
488. .addComponent(bexit,
javax.swing.GroupLayout.PREFERRED_SIZE, 35,
javax.swing.GroupLayout.PREFERRED_SIZE)
489. .addComponent(bclear,
javax.swing.GroupLayout.PREFERRED_SIZE, 35,
javax.swing.GroupLayout.PREFERRED_SIZE)
350

490. .addComponent(bdelete,
javax.swing.GroupLayout.PREFERRED_SIZE, 35,
javax.swing.GroupLayout.PREFERRED_SIZE)
491. .addComponent(bedit,
javax.swing.GroupLayout.PREFERRED_SIZE, 35,
javax.swing.GroupLayout.PREFERRED_SIZE)
492. .addComponent(bsave,
javax.swing.GroupLayout.PREFERRED_SIZE, 35,
javax.swing.GroupLayout.PREFERRED_SIZE)))
493. .addGap(18, 18, 18)
494.
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLay
out.Alignment.BASELINE)
495. .addComponent(cbtingkat,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
496. .addComponent(jLabel11))
497. .addGap(213, 213, 213))
498. );
499.
500. javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
501. getContentPane().setLayout(layout);
502. layout.setHorizontalGroup(
503.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
504. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
351

505. );
506. layout.setVerticalGroup(
507.
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA
DING)
508. .addComponent(jPanel1,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
509. );
510.
511. setSize(new java.awt.Dimension(1163, 563));
512. setLocationRelativeTo(null);
513. }// </editor-fold>
514.
515. private void bsaveActionPerformed(java.awt.event.ActionEvent evt)
{
516. // TODO add your handling code here:
517. String jk = null;
518. if(rblaki.isSelected()){
519. jk = "LAKI - LAKI";
520. }else if(rbperempuan.isSelected()){
521. jk = "PEREMPUAN";
522. }
523. String sql = "INSERT INTO data_eskul VALUES
(?,?,?,?,?,?,?,?,?)";
524.
525. String no_induk = tno_induk.getText();
526. ada = ada(no_induk);
527. if(ada){
528. try {
529. PreparedStatement st =con.prepareStatement (sql);
352

530. st.setString(1, tno_induk.getText());


531. st.setString(2, tnama.getText());
532. st.setString(3, (String) cbkelas.getSelectedItem());
533. st.setString(4, tnotelp.getText());
534. st.setString(5, jk);
535. st.setString(6, talamat.getText());
536. st.setString(7, (String) cbeskul.getSelectedItem());
537. st.setString(8, (String) cbsabuk.getSelectedItem());
538. st.setString(9, (String) cbtingkat.getSelectedItem());
539. st.executeUpdate();
540.
541. JOptionPane.showMessageDialog(null, "Data Berhasil
Disimpan");
542. kosong();
543. tno_induk.requestFocus();
544. }catch (Exception e){
545. JOptionPane.showMessageDialog(null, e);
546. }
547.
548. } else {
549. JOptionPane.showMessageDialog(null, "no. induk tidak
tersedia ada");
550. }
551.
552. datatable();
553. }
554.
555. private void beditActionPerformed(java.awt.event.ActionEvent evt)
{
556. // TODO add your handling code here:
353

557. int ok=JOptionPane.showConfirmDialog(null, "Apakah Anda


Yakin Ingin Mengedit Data Ini
?","Confirmation",JOptionPane.YES_NO_OPTION);
558. if (ok==0)
559. {
560. String jk = null;
561. if(rblaki.isSelected()){
562. jk = "LAKI - LAKI";
563. }else if(rbperempuan.isSelected()){
564. jk = "PEREMPUAN";
565. }
566. try {
567. String sql = "UPDATE data_eskul SET
no_induk=?,nama=?,kelas=?,no_telepon=?,jenis_kelamin=?,alamat=?,
ekstrakulikuler=?,sabuk=?,tingkat=? WHERE
no_induk='"+tno_induk.getText()+"'";
568. PreparedStatement st=con.prepareStatement(sql);
569. st.setString(1, tno_induk.getText());
570. st.setString(2, tnama.getText());
571. st.setString(3, (String) cbkelas.getSelectedItem());
572. st.setString(4, tnotelp.getText());
573. st.setString(5, jk);
574. st.setString(6, talamat.getText());
575. st.setString(7, (String) cbeskul.getSelectedItem());
576. st.setString(8, (String) cbsabuk.getSelectedItem());
577. st.setString(9, (String) cbtingkat.getSelectedItem());
578.
579. st.executeUpdate();
580. JOptionPane.showMessageDialog(null, "Data Berhasil
Diedit");
581. kosong();
354

582. tno_induk.requestFocus();
583. }
584. catch (SQLException e){
585. JOptionPane.showMessageDialog(null, "Data Gagal
Diedit"+e);
586. }
587. datatable();
588. }
589. }
590.
591. private void bdeleteActionPerformed(java.awt.event.ActionEvent
evt) {
592. // TODO add your handling code here:
593. int ok=JOptionPane.showConfirmDialog(null, "Apakah Anda
Yakin Ingin Menghapus Data Ini
?","Confirmation",JOptionPane.YES_NO_CANCEL_OPTION);
594. if(ok==0)
595. {
596. try{
597. String sql="DELETE FROM data_eskul WHERE
no_induk='"+tno_induk.getText()+"'";
598. PreparedStatement st=con.prepareStatement(sql);
599. st.executeUpdate();
600.
601. JOptionPane.showMessageDialog(null, "Data Berhasil
Dihapus");
602. kosong();
603. tno_induk.requestFocus();
604.
605. }catch (Exception e)
606. {
355

607. JOptionPane.showMessageDialog(null, "Data Gagal


Dihapus"+e);
608. }
609. datatable();
610. }
611. }
612.
613. private void bclearActionPerformed(java.awt.event.ActionEvent
evt) {
614. // TODO add your handling code here:
615. kosong();
616. datatable();
617. }
618.
619. private void bexitActionPerformed(java.awt.event.ActionEvent evt)
{
620. // TODO add your handling code here
621. menu menu = new menu();
622. menu.setVisible(true);
623. this.dispose();
624. }
625.
626. private void bsearchActionPerformed(java.awt.event.ActionEvent
evt) {
627. // TODO add your handling code here:
628. datatable();
629. }
630.
631. private void
tabledataeskulMouseClicked(java.awt.event.MouseEvent evt) {
632. // TODO add your handling code here:
356

633. int i = tabledataeskul.getSelectedRow();


634.
635. String code = (String)tabledataeskul.getValueAt(i,0);
636. String code1 = (String)tabledataeskul.getValueAt(i,1);
637. String code2 = (String)tabledataeskul.getValueAt(i,2);
638. String code3 = (String) tabledataeskul.getValueAt(i,3);
639. String code4 = (String)tabledataeskul.getValueAt(i,4);
640. String code5 = (String)tabledataeskul.getValueAt(i,5);
641. String code6 = (String)tabledataeskul.getValueAt(i,6);
642. String code7 = (String)tabledataeskul.getValueAt(i,7);
643. String code8 = (String)tabledataeskul.getValueAt(i,8);
644.
645. tno_induk.setText(code);
646. tnama.setText(code1);
647. cbkelas.setSelectedItem(code2);
648. tnotelp.setText(code3);
649. if ("LAKI - LAKI".equals(code4)){
650. rblaki.setSelected(true);
651. }else{
652. rbperempuan.setSelected(true);
653. }
654. talamat.setText(code5);
655. cbeskul.setSelectedItem(code6);
656. cbsabuk.setSelectedItem(code7);
657. cbtingkat.setSelectedItem(code8);
658. }
659.
660. private void tcariKeyPressed(java.awt.event.KeyEvent evt) {
661. // TODO add your handling code here:
662. if (evt.getKeyCode() == KeyEvent.VK_ENTER){
663. datatable();
357

664. }
665. }
666.
667. private void tnotelpKeyTyped(java.awt.event.KeyEvent evt) {
668. // TODO add your handling code here:
669. if(tnotelp.getText().length()>50){
670. JOptionPane.showMessageDialog(null, "Maaf Nomor Telepon
Terlalu Panjang!");
671. evt.consume();
672. }
673. }
674.
675. private void
bsearchnisActionPerformed(java.awt.event.ActionEvent evt) {
676. // TODO add your handling code here:
677. String sql = "SELECT * FROM data_eskul where no_induk
='"+tno_induk.getText()+"'";
678. try {
679. java.sql.Statement st = con.createStatement();
680. ResultSet res = st.executeQuery(sql);
681. while(res.next()){
682. String nama = res.getString("NAMA");
683. tnama.setText(nama);
684. tnama.setEnabled(false);
685. }
686. } catch (Exception e) {}
687.
688. }
689.
690. private void tno_indukKeyTyped(java.awt.event.KeyEvent evt) {
691. // TODO add your handling code here:
358

692. if(tno_induk.getText().length()>20){
693. JOptionPane.showMessageDialog(null, "Maaf NO. INDUK
Terlalu Panjang!");
694. evt.consume();
695. }
696. }
697.
698. private void tabledataeskulKeyReleased(java.awt.event.KeyEvent
evt) {
699. // TODO add your handling code here:
700. }
701.
702. private void jButton1ActionPerformed(java.awt.event.ActionEvent
evt) {
703. // TODO add your handling code here:
704. Connection conn = new koneksi().getKoneksi();
705. try {
706. String report = ("C:\\Users\\ACER\\Documents\\PROJECT
APASI\\APASI\\src\\report\\eskul.jrxml");
707.
708. JasperReport jr =
JasperCompileManager.compileReport(report);
709.
710. JasperPrint jp = JasperFillManager.fillReport(jr,null,conn);
711. JasperViewer.viewReport(jp, false);
712. } catch (Exception e) {
713. JOptionPane.showMessageDialog(null,e);
714. }
715. }
716.
717. /**
359

718. * @param args the command line arguments


719. */
720. public static void main(String args[]) {
721. /* Set the Nimbus look and feel */
722. //<editor-fold defaultstate="collapsed" desc=" Look and feel
setting code (optional) ">
723. /* If Nimbus (introduced in Java SE 6) is not available, stay with
the default look and feel.
724. * For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.ht
ml
725. */
726. try {
727. for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
728. if ("FlatLaf Light".equals(info.getName())) {
729.
javax.swing.UIManager.setLookAndFeel(info.getClassName());
730. break;
731. }
732. }
733. } catch (ClassNotFoundException ex) {
734.
java.util.logging.Logger.getLogger(data_eskul.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
735. } catch (InstantiationException ex) {
736.
java.util.logging.Logger.getLogger(data_eskul.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
737. } catch (IllegalAccessException ex) {
360

738.
java.util.logging.Logger.getLogger(data_eskul.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
739. } catch (javax.swing.UnsupportedLookAndFeelException ex) {
740.
java.util.logging.Logger.getLogger(data_eskul.class.getName()).log(ja
va.util.logging.Level.SEVERE, null, ex);
741. }
742. //</editor-fold>
743. //</editor-fold>
744.
745. /* Create and display the form */
746. java.awt.EventQueue.invokeLater(new Runnable() {
747. public void run() {
748. new data_eskul().setVisible(true);
749. }
750. });
751. }
752.
753. // Variables declaration - do not modify
754. private javax.swing.JButton bclear;
755. private javax.swing.JButton bdelete;
756. private javax.swing.JButton bedit;
757. private javax.swing.JButton bexit;
758. private javax.swing.JButton bsave;
759. private javax.swing.JButton bsearch;
760. private javax.swing.JButton bsearchnis;
761. private javax.swing.ButtonGroup buttonGroup1;
762. private javax.swing.JComboBox<String> cbeskul;
763. private javax.swing.JComboBox<String> cbkelas;
764. private javax.swing.JComboBox<String> cbsabuk;
361

765. private javax.swing.JComboBox<String> cbtingkat;


766. private javax.swing.JButton jButton1;
767. private javax.swing.JLabel jLabel1;
768. private javax.swing.JLabel jLabel10;
769. private javax.swing.JLabel jLabel11;
770. private javax.swing.JLabel jLabel12;
771. private javax.swing.JLabel jLabel2;
772. private javax.swing.JLabel jLabel3;
773. private javax.swing.JLabel jLabel4;
774. private javax.swing.JLabel jLabel6;
775. private javax.swing.JLabel jLabel7;
776. private javax.swing.JLabel jLabel8;
777. private javax.swing.JLabel jLabel9;
778. private javax.swing.JPanel jPanel1;
779. private javax.swing.JPanel jPanel2;
780. private javax.swing.JScrollPane jScrollPane1;
781. private javax.swing.JRadioButton rblaki;
782. private javax.swing.JRadioButton rbperempuan;
783. private javax.swing.JTable tabledataeskul;
784. private javax.swing.JTextField talamat;
785. private javax.swing.JTextField tcari;
786. private javax.swing.JTextField tnama;
787. private javax.swing.JTextField tno_induk;
788. private javax.swing.JTextField tnotelp;
789. // End of variables declaration

Anda mungkin juga menyukai