• Tidak ada hasil yang ditemukan

BAB III PEMBAHASAN. administrasi sekolah pada Yayasan Islam Nurussalam Al Khoir Sukoharjo maka

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB III PEMBAHASAN. administrasi sekolah pada Yayasan Islam Nurussalam Al Khoir Sukoharjo maka"

Copied!
55
0
0

Teks penuh

(1)

20

3.1 Tinjauan Yayasan

Untuk mengetahui lebih banyak tentang sistem informasi pembayaran

administrasi sekolah pada Yayasan Islam Nurussalam Al Khoir Sukoharjo maka

penulis akan menjabarkan informasi-informasi yang telah didapatkan dari SMP

Islam Nurussalam Al Khoir diantaranya adalah :

3.1.1 Sejarah Yayasan

Yayasan Nurussalam Al Khoir dipimpin oleh ketua yayasan Bapak Drs. H.

Haries Fuady, yayasan ini berdiri pada tahun 2014. Yayasan ini terletak di

Kompleks Masjid Nurussalam Al-Khoir Ngasemrejo Triyagan, Kecamatan

Mojolaban, Kabupaten Sukoharjo, Jawa Tengah. Yayasan Nurussalam Al Khoir

merupakan yayasan yang bergerak dibidang pendidikan. Di Yayasan Nurussalam

Al Khoir terdapat beberapa penyelenggaraan lembaga pendidikan yaitu

pendidikan taman kanak-kanak (TK) dan Sekolah Menengah Pertama (SMP).

Yayasan Nurussalam Al Khoir didirikan dengan tujuan untuk mewujudkan

peserta didik yang kokoh akidah , taat ibadah dan berakhlak karimah serta unggul

dalam Penguasaan Ilmu Pengetahuan dan Teknologi. Serta memiliki visi dan misi

yaitu :

(2)

MISI :

1.

Membentuk generasi yang bertauhid sebagai landasan terwujudnya generasi

muslim yang berkualitas berdasar Al-Qur’an dan As Sunnah.

2.

Mewujudkan lingkungan berbasis Akhlakul Karimah sebagai dasar

menegakkan nilai-nilai Illahiyah.

3.

Mendorong terbentuknya generasi yang berwawasan luas, disiplin, percaya

diri menuju generasi yang berprestasi.

4.

Menumbuhkan rasa kasih sayang sesama sebagai wujud pengamalan

niali-nilai ke-Islaman

5.

Memberikan kontribusi yang positif kepada umat dengan ilmu, amal menuju

kehidupan yang Islami.

3.1.2

Struktur Organisasi dan Fungsi

(3)

Berikut ini tugas dan tanggung jawab masing-masing bagian dalam organisasi

yayasan secara garis besar adalah sebagai berikut :

Pembina

1.

Membuat keputusan mengenai perubahan Anggaran Dasar.

2.

Penetapan kebijakan umum yayasan berdasarkan anggaran dasar yayasan.

3.

pengesahan program kerja dan rancangan anggaran tahunan yayasan.

4.

Pengesahan laporan tahunan.

5.

Pembina berhak untuk memberhentikan dewan pengurus yayasan

6.

Pembina berhak untuk menetapkan kebijakan umum yayasan

7.

Menjaga dan memastikan pelaksanaan kerja dan kegiatan yayasan sesuai

dengan visi, misi dan tujuan.

8.

Memberikan masukan kepada ketua umum dalam pelaksanaan program

Yayasan.

Ketua

1.

Menjalankan visi dan misi yayasan sesuai dengan anggaran dasar.

2.

Memimpin dan mengkoordinasikan seluruh anggota dan pengurus yayasan.

3.

Mengkoordinasikan program kerja yayasan baik perencanaan, pelaksanaan,

evaluasi, maupun pertanggungjawaban.

4.

Memberikan wewenang kepada para ketua divisi sehubungan dengan

hal-hal yang berkaitan dengan ruang lingkup masing-masing divisi.

Bendahara

1.

Bertanggung jawab atas pengelolaan keuangan yayasan.

2.

Membuat laporan keuangan secara periodik dan secara tertulis yang

disampaikan secara berkala.

(4)

3.

Menyusun dan mengatur anggaran dengan mengkoordinasikan kepada ketua

umum.

4.

Mengatur pencatatan, penerimaan, penyimpanan, dan pengeluaran

keuangan, surat-surat berharga, bukti kas yang berhubungan dengan

kegiatan yayasan dan dlaporkan secara transparan.

5.

Mempunyai hak bertanya dan menyelenggarakan audit keuangan pada

setiap kepanitiaan.

6.

Bertanggung jawab kepada Ketua.

Serkertaris

1.

Mengatur dan menertibkan pengorganisasian administrasi yayasan.

2.

Mengatur pengelolaan, pemeliharaan dan inventarisasi barang-barang milik

yayasan.

3.

Bertanggung jawab atas terselenggaranya kegiatan operasional harian

yayasan.

4.

Berhak dan mempunyai wewenang mendokumentasikan serta mengarsipkan

semua surat-surat masuk maupun keluar.

Devisi Pendanaan

1.

Bertanggung jawab dalam menyususn dan mengkoordinir program-program

yayasan yang berkaitan dengan pendanaan dan pemberdayaan ekonomi.

2.

Memimpin dan mengatur divisi yang dipimpinnya, meliputi pelaksanaan

program kerja, penggunaan budget dan mengatur/membina anggotanya.

3.

Membuat program penggalangan dana yang berkesinambungan untuk

(5)

Wakasek Kurikulum

1.

Mengatur penyusunan program pengajaran (Program Semester, Program

Satuan Pelajaran, dan Persiapan Mengajar, Penjabaran dan Penyesuaian

Kurikulum).

2.

Mengatur pelaksanaan program penilaian Kriteria Kenaikan Kelas,Kriteria

Kelulusan dan Laporan Kemajuan Belajar Siswa serta pembagian Rapor.

3.

Mengkoordinir pengembangan Kurikulum.

4. Menganalisis ketercapaian target kurikulum.

6. Menyusun pembagian tugas guru dan jadwal pelajaran.

7. Mengatur Pengembangan MGMP dan Koordinator mata pelajaran.

Wakasek Kesiswaan

1.

Menyusun program pembinaan kesiswaan.

2.

Membina dan melaksanakan koordinasi pelaksanaan keamanan, kebersihan,

ketertiban, keindahan, kerindangan, kekeluargaan, dan ketaqwaan.

3.

Mengatur dan membina program kegiatan OSIS meliputi Kepramukaan,

Palang Merah Remaja (PMR), Kelompok Ilmiah Remaja (KIR), Usaha

Kesehatan Sekolah (UKS), Patroli Keamanan Sekolah (PKS), Paskibra.

4.

Melaksanakan pemilihan calon siswa teladan dan calon siswa penerima bea

siswa.

5.

Mengatur pelaksanaan Kurikuler dan Ekstra Kurikuler.

Wakasek Sapres

1.

Merencanakan kebutuhan sarana prasarana untuk menunjang proses belajar

mengajar.

(6)

2.

Menyediakan, mengatur, memelihara, sarana dan prasarana sekolah dengan

pelaksanaan kegiatan sekolah dan proses belajar mengajar dapat berjalan

dengan tertib dan lancar. Tentu saja hal ini tidak lepas dari pengawasan.

3.

Mengatur pemanfaatan Sarana Prasarana.

4.

Mengkordinasikan dan mengawasi pemeliharaan, perbaikan, pengembangan

dan penghapusan sarana

5.

Menyusun laporan pelaksanaan bidang sarana dan prasarana secara berkala.

6.

Mengkoordinasikan pendayagunaan sarana dan prasarana.

Wakasek Humas

1.

Mengatur hubungan sekolah dengan orang tua.

2.

Mengatur dan menyelenggarakan hubungan Sekolah dengan orangtua/Wali

siswa

3.

Membina pengembangan hubungan antar Sekolah dengan lembaga

pemerintah, dunia usaha dan lembaga-lembaga sosial lainnya.

4.

Membina hubungan antar Sekolah dengan komite Sekolah.

5.

Menjalin hubungan ke luar lembaga sesuai fungsi dan kebutuhan.

6.

Membantu pelaksanaan tugas BP3.

Wali Kelas

1.

Pengelolaan kelas.

2.

Penyelenggaraan administrasi kelas meliputi : Daftar pelajaran kelas, papan

absensi siswa, buku absensi siswa, buku kegiatan pembelajaran/buku kelas,

tata tertib siswa.

3.

Mengisi daftar kumpulan nilai (legger).

4.

Membuat catatan khusus tentang siswa.

(7)

5.

Pencatatan mutasi siswa.

6.

Mengisi buku laporan penilaian hasil belajar.

Guru

1.

Melaksanakan segala hal kegiatan pembelajaran.

2.

Melaksanakan kegiatan Penilaian Proses Belajar, Ulangan (Harian, Umum,

dan Akhir).

3.

Bertanggungjawab atas pencapaian target kurikulum dan daya serap.

4.

Mencatat dan melaporkan hasil belajar siswa

5.

Membantu dan menanggulangi siswa yang kesulitan belajar

6.

Melaksanakan program perbaikan dan pengayaan

7.

Mengisi daftar nilai siswa

8.

Membuat catatan tentang kemajuan dari hasil belajar

9.

Mengisi daftar hadir siswa sebelum memulai pelajaran.

3.2

Tinjauan Kasus

3.2.1

Proses Bisnis Sistem Berjalan

Prosedur sistem berjalan merupakan proses keluar masuknya berkas yang

terjadi pada suatu sistem yang sedang dijalankan. Sistem pembayaran administrasi

sekolah pada Yayasan Nurussalam Al Khoir dapat digambarkan sebagai beriku:

Siswa melakukan pembayaran administrasi yang terdiri dari pendaftar

ulang, pembayaran SPP, dana pengembang (uang gedung) dan biaya lain-lain.

Siswa membayar biaya administrasi dengan menyerahkan uang sebagai data

pembayaran dan kartu Administrasi, kemudian bendahara menerima dan

menghitung uang sesuai dengan besarnya pembayaraan administrasi, jika uang

(8)

yang diberikan siswa melebihi biaya pembayaran uang kebaliannya diberikan

kepada siswa. Bendahara mencatat sesuai pembayaran yang dilakukan siswa dan

memberi paraf pada kartu administrasi, lalu mengembalikan seiring dengan

pencatatan dikartu administrasi, bendahara melakukan pencatatan pembayaran

pada rekap administrasi. Kemudian bendahara membuat kwitansi sebagai bukti

pembayaran, selanjutnya bendahara mengembalikan kartu SPP dan kwitansi ke

wali murid. Bendahara membuat laporan pembayaran, kemudian bagian

administrasi memberikan laporan tersebut ke ketua yayasan.

3.2.2

Activity Diagram

(9)

3.2.3

Dokumen Masukkan

1.

Kartu Pembayaran Administrasi

Nama Dokumen : Kartu Pembayaran Administrasi

Fungsi

: Sebagai bukti pembayaran administrasi

Sumber

: Bendahara

Tujuan

: Diserahkan kepada Siswa

Frekuensi

: Setiap murid melakukan pembayaran

Media

: kartas

Jumlah Rangkap : 2 (dua) Rangkap

Format

: Lihat lampiran –A.1

2.

Data Siswa

Nama Dokumen : Data Siswa

Fungsi

: Sebagai Biodata Siswa

Sumber

: Bendahara

Tujuan

: Diserahkan kepada Siswa

Frekuensi

: Saat Siswa melakukan pendaftaran

Media

: kartas

Jumlah Rangkap : 1 (satu) Rangkap

Format

: Lihat lampiran –A.2

3.2.4

Dokumen Keluaran

1.

Rekap Pembayaran Adminstrasi

Nama Dokumen : Rekap Pembayaran Administrasi

Fungsi

: Mengetahui data pembayaran administrasi Siswa

Sumber

: Bendahara

(10)

Tujuan

: Diserahkan kepada kepala yayasan

Frekuensi

: Setiap murid melakukan pembayaran

Media

: Kartas

Jumlah Rangkap : 1(Satu) Rangkap

Format

: Lihat lampiran –B.1

2.

Kwitansi

Nama Dokumen : Kwitansi

Fungsi

: Sebagai Bukti Melakukan Pembayaran

Frekuensi

: Setiap murid melakukan pembayaran

Sumber

: Bendahara

Tujuan

: Diserahkan Kepada Siswa

Jumlah Rangkap : 1 (Satu) Rangkap

Format

: Lihat lampiran –B.2

3.

Laporan Pembayaran Administrasi

Nama Dokumen : Laporan Pembayaran Adminstrasi

Fungsi

: Sebagai Data Keseluruhan pembayaran Adninistrasi

Frekuensi

: Setiap Bulan

Sumber

: Bendahara

Tujuan

: Diserahkan Kepada Kepala yayasan

Jumlah Rangkap : 1 (Satu) Rangkap

Format

: Lihat lampiran –B.3

3.2.5

Permasalahan Pokok

Dari hasil riset selama di Yayasan Nurussalam Al-Khoir dapat dilihat

penggunaan sistem pengolahan data pembayaran administrasi sekolah yang

(11)

masih menggunakan cara manual, mengakibatkan timbulnya permasalahan antara

lain, tidak akuratnya pencatatan dan pembuatan laporan pembayaran administrasi

sekolah, karena adanya kesalahan dalam menginput data, tercampurnya data

adminstrasi, penyimpanan dokumen administrasi yang tidak tersusun rapi dapat

menyebabkan rusak dan hilangnya dokumen administrasi. Hal tersebut

menyebabkan keterlambatan dalam proses pelaporan kepada pihak yayasan.

3.2.6

Pemecahan Masalah

Dari permasalahan yang ada diatas, agar permasalahan dapat terselesaikan

dengan baik maka usulan pemecahan masalahnya adalah sebagai berikut:

1.

Membuat sistem informasi pembayaran administrasi menggunakan sistem yang

sudah terkomputerisasi. Diharapkan perancangan sistem komputerisasi yang

lebih bermanfaat dan efekif bagi yayasan didalam penyusunan dan

mengevaluasi setiap kegiatan yang ada dalam hal pembayaran administrasi

sekolah.

2.

Pembuatan laporan-laporan yang nantinya dapat langsung dicetak dari

komputer. Laporan yang dihasilkan pun lebih akurat dan tepat waktu serta

dapat dengan mudah diaksesnya.

3.3

Analisa Kebutuhan Software

Adapun kebutuhan software yang digunakan dalam perancangan web ini

adalah XAMPP merupakan web server yang didalamnya sudah tersedia database

server MySQL dan Java NetBeans. XAMPP merupakan software yang mudah

digunakan dan mendukung instalasi di windows ataupun Linux, keuntungan

lainnya adalah kita bisa mengatur web server yang akan kita gunakan.

(12)

3.3.1

Analisa Kebutuhan

Bagian bendahara dapat masuk ke sistem informasi pembayaran

administrasi. Didalam sistem informasi pembayaran administrasi, Bendahara

dapat mengakses semua menu dalam sistem. Kepala tata usaha dan yayasan

hanya dapat mengakses data laporannya saja.

A.

Halaman Admin

A.1

Admin Login

A.2

Admin Mengelola Data Tingkat

A.3

Admin Mengelola Data Tahun Ajaran

A.4

Admin Mengelola Data Kelas

A.5

Admin Mengelola Data Ruang

A.6

Admin Mengelola Data Jenis Pembayaran Lain

A.7

Admin Mengelola Data Siswa

A.8

Admin Mengelola Data Pengguana

A.9

Admin Mengelola Transaksi Pembayaran

A.10 Admin Mengelola Laporan Data Siswa

A.11 Admin Mengelola Laporan Adminstrasi

A.12 Admin Mengelola Laporan Tunggakan SPP

A.13 Admin Mengelola Laporan Tunggakan Uang Gedung

A.14 Admin Logout

B.

Halaman Yayasan

B.1

Yayasan Login

B.2

Admin Mengelola Laporan Data Siswa

B.3

Admin Mengelola Laporan Adminstrasi

(13)

B.4

Admin Mengelola Laporan Tunggakan SPP

B.5

Admin Mengelola Laporan Tunggakan Uang Gedung

B.6

Admin Logout

3.3.2

Use Case

Diagram

A.

Halaman Admin

Gambar III.3. Use Case Diagram Halaman Admin

Tabel III.1

Tabel Deskripsi Halaman Admin

Use Case Narative

Tujuan

: Melakukan Login dan masuk kedalam Aplikasi

Adminstrasi Sekolah

Deskripsi

: Sistem akan memungkinkan aktor untuk mengakses

Aplikasi Adminstrasi Sekolah

Skenario Utama

Aktor : Admin

Kondisi Awal : Aktor Membuka Aplikasi Administrasi Sekolah

Aksi Aktor

Reaksi Sistem

1.

Aktor melakukan login

2.

Aktor memilih tombol Batal

3.

Aktor memilih tombol Data

Tingkat

4.

Aktor memilih tombol Data

Sistem akan menampilakan textbox untuk mengisi nama

pengguna dan password.

Sistem akan membatalkan proses dan keluar dari sistem.

Sistem akan menampilkan halaman data tingkat.

(14)

Tahun Ajaran

5.

Aktor memilih tombol Data

Kelas

6.

Aktor memilih tombol Data

Ruang

7.

Aktor memilih tombol Data

Jenis Bayar

8.

Aktor memilih tombol Data

Siswa

9.

Aktor memilih tombol Data

pengguna

10.

Aktor memilih tombol

Transaksi

11.

Aktor memilih tombol

Laporan Data Siswa

12.

Aktor memilih tombol

Laporan Transaksi

13.

Aktor memilih tombol

Laporan Tunggakan Uang

Gedung

14.

Aktor memilih tombol

Laporan Tunggakan SPP

15.

Aktor memilih tombol

Logout

Sistem akan menampilkan halaman data kelas.

Sistem akan menampilkan halaman data ruang.

Sistem akan menampilkan halaman data jenis bayar.

Sistem akan menampilkan halaman data siswa.

Sistem akan menampilkan halaman data pengguna.

Sistem akan menampilkan halaman transaksi.

Sistem akan menampilkan halaman laporan data siswa.

Sistem akan menampilkan halaman laporan Transaksi.

Sistem akan menampilkan halaman laporan tunggakan

uang gedung.

Sistem akan menampilkan halaman laporan tunggakan

uang gedung.

Sistem akan keluar dari sistem administrasi sekolah.

Kondisi Akhir

Jika perintah sesuai maka sistem akan menampilakan

seperti yang diinginkan oleh aktor.

B. Halaman Yayasan

(15)

Tabel III.2

Tabel Deskripsi Halaman Yayasan

Use Case Narative

Tujuan

: Melakukan Login dan masuk kedalam Aplikasi

Adminstrasi Sekolah

Deskripsi

: Sistem akan memungkinkan aktor untuk mengakses

Aplikasi Adminstrasi Sekolah

Skenario Utama

Aktor : Yayasan

Kondisi Awal : Aktor Membuka Aplikasi Administrasi Sekolah

Aksi Aktor

Reaksi Sistem

1.

Aktor melakukan login

2.

Aktor memilih tombol Batal

3.

Aktor memilih tombol

Laporan Data Siswa

4.

Aktor memilih tombol

Laporan Transaksi

5.

Aktor memilih tombol

Laporan Tunggakan Uang

Gedung

6.

Aktor memilih tombol

Laporan Tunggakan SPP

7.

Aktor memilih tombol

Logout

Sistem akan menampilakan textbox untuk mengisi nama

pengguna dan password.

Sistem akan membatalkan proses dan keluar dari sistem.

Sistem akan menampilkan halaman laporan data siswa.

Sistem akan menampilkan halaman laporan Transaksi.

Sistem akan menampilkan halaman laporan tunggakan

uang gedung.

Sistem akan menampilkan halaman laporan tunggakan

uang SPP.

Sistem akan keluar dari sistem administrasi sekolah.

Kondisi Akhir

Jika perintah sesuai maka sistem akan menampilakan

(16)

3.3.3

Activity Diagram

1.

Activity Diagram Menu Log In

(17)

2.

Activity Diagram Menu Data Tingkat

(18)

3.

Activity Diagram Menu Data Tahun Ajaran

(19)

4.

Activity Diagram Menu Data Kelas

(20)

5.

Activity Diagram Menu Data Ruang

(21)

6.

Activity Diagram Menu Data Jenis Pembayaran

(22)

7.

Activity Diagram Menu Data Siswa

(23)

8.

Activity Diagram Menu Data Pengguna

(24)

9.

Activity Diagram Transaksi Pembayaran

(25)

10. Activity Diagram Laporan

(26)

3.4

Desain

3.4.1

Entity Relationship Diagram

(ERD)

Jenis Pembayaran Jenis Pembayaran id_jp id_jp nm_jp nm_jp Jml_jpJml_jp Ket_jp Ket_jp Detail bayar Detail bayar id_thn id_thn Nominal_spp Nominal_spp id_jp id_jp kd_bspp kd_bspp Tgl_bspp Tgl_bspp bulan bulan Kode_bayar Kode_bayar Id_spp

Id_spp id_siswaid_siswa

pembayaran pembayaran Id_byr Id_byr Kode_bayar Kode_bayar Tgl_bayar Tgl_bayar kembalian kembalian Jml_bayar Jml_bayar sub_total sub_total Siswa Siswa Id_siswa Id_siswa nis nis Nm_siswa Nm_siswa jenkel jenkel Tgl_lahir Tgl_lahir Tmp_lahir Tmp_lahir Ket_siswa Ket_siswa tlp tlp alamat alamat Id_tingkat Id_tingkat Id_kelas Id_kelas Id_ruang Id_ruang Id_tahun Id_tahun Tingkat Tingkat Id_tingkat Id_tingkat nm_tingkat nm_tingkat ket_tingkat ket_tingkat Kelas Kelas Id_kelas Id_kelas nm_kelas nm_kelas ket_kelas ket_kelas Ruang Ruang nm_ruang nm_ruang Id_ruang

Id_ruang Ket_ruangKet_ruang Tahun Ajaran Tahun Ajaran nm_thn nm_thn Id_thn

Id_thn Ket_thnKet_thn

memilih memilih memilih memilih Bayar Bayar memiliki memiliki memiliki memiliki memiliki memiliki Memiliki Memiliki id_ruang id_ruang id_siswa id_siswa Id_byr Id_byr Id_siswa Id_siswa id_jp

id_jp Id_byrId_byr Id_spp

Id_spp Id_byrId_byr Id_kelas Id_kelas Id_siswa Id_siswa Id_tingkat Id_tingkat Id_siswa Id_siswa Id_thn Id_thn Id_siswa Id_siswa

(27)

3.4.2

Logical Record Structure

(LRS)

Gambar III.16.

Logical Record Structure

(LRS)

3.4.3

Spesifikasi

File

1.

Spesifikasi

File

Data

User

Nama Database

: adm_sekolah

Nama File

: User

Tipe File

: Master file

Akses File

: Random

Panjang Record

: 177 Karakter

(28)

Field Key

: id_user

Tabel III.3.

Spesifikasi

File

Data User

No

Elemen Data

Akronim

Type

Panjang

Keterangan

1

Id user

id_user

Int

11

Primary Key

2

Kode program

kode_program

Varchar

11

3

Nama lengkap

nama_lengkap

Varchar

100

4

Username

Username

Varchar

22

5

Password

Password

Varchar

22

6

Level

Level

Varchar

11

2.

Spesifikasi

File

Detail Bayar

Nama Database

: adm_sekolah

Nama File

: bu_spp

Tipe File

: Master File

Akses File

: Random

Panjang Record

: 86 Karakter

Field Key

: id_spp

Tabel III.4.

Spesifikasi

File

Detail Bayar

No

Elemen Data

Akronim

Type

Panjang

Keterangan

1

Id spp

id_spp

Int

7

Primary Key

2

Kode bayar

kode_bayar

Varchar

20

3

Kode bayar spp

kd_bspp

Varchar

30

4

Tanggal bayar

tgl_bspp

Date

5

Id siswa

id_siswa

Int

3

6

Id jenis pembayaran

id_jp

Int

3

7

Id tahun

id_thn

Int

3

8

Bulan

Bulan

Varchar

20

9

Nominal

nominal_spp

Double

3.

Spesifikasi

File

Data SPP

Nama Database

: adm_sekolah

Nama File

: data_spp

(29)

Tipe File

: Master File

Akses File

: Random

Panjang Record

: 65 Karakter

Field Key

: id_data

Tabel III.5.

Spesifikasi

File

Data SPP

No

Elemen Data

Akronim

Type

Panjang

Keterangan

1

Id data

id_data

Int

7

Primary Key

2

Nis

Nis

Varchar

30

3

Id tahun

id_thn

Int

3

4

Bulan

Bulan

Varcher

20

5

Status spp

stt_spp

Varcher

5

4.

Spesifikasi

File

Data Jenis Pembayaran

Nama Database

: adm_sekolah

Nama File

: m_jp

Tipe File

: Master File

Akses File

: Random

Panjang Record

: 37 Karakter

Field Key

: id_jp

Tabel III.6.

Spesifikasi

File

Data Jenis Pembayaran

No

Elemen Data

Akronim

Type

Panjang

Keterangan

1

Id jenis pembayaran

id_jp

Int

7

Primary Key

2

Nama jenis bayar

nm_jp

Varchar

30

3

Jumlah bayar

Jml_jp

Double

4

Keterangan

ket_jp

Text

5.

Spesifikasi

File

Data Jenis Kelas

Nama Database

: adm_sekolah

Nama File

: m_kelas

(30)

Tipe File

: Master File

Akses File

: Random

Panjang Record

: 17 Karakter

Field Key

: id_jp

Tabel III.7.

Spesifikasi

File

Data Jenis Kelas

No

Elemen Data

Akronim

Type

Panjang

Keterangan

1

Id kelas

id_kelas

Int

7

Primary Key

2

Nama kelas

nm_kelas

Varchar

10

3

Keterangan kelas

Ket_kelas

Text

6.

Spesifikasi

File

Data Ruang

Nama Database

: adm_sekolah

Nama File

: m_ruang

Tipe File

: Master File

Akses File

: Random

Panjang Record

: 17 Karakter

Field Key

: id_ruang

Tabel III.8.

Spesifikasi

File

Data Ruang

No

Elemen Data

Akronim

Type

Panjang

Keterangan

1

Id ruang

id_ruang

Int

7

Primary Key

2

Nama ruang

nm_ruang

Varchar

10

3

Keterangan ruang

ket_ruang

Text

7.

Spesifikasi

File

Data Siswa

Nama Database

: adm_sekolah

Nama File

: m_siswa

Tipe File

: Master File

Akses File

: Random

(31)

Panjang Record

: 113 Karakter

Field Key

: id_siswa

Tabel III.9.

Spesifikasi

File

Data Siswa

No

Elemen Data

Akronim

Type

Panjang

Keterangan

1

Id siswa

id_siswa

Int

7

Primary Key

2

Nis

Nis

Varchar

30

3

Nama siswa

nm_siswa

Varchar

30

4

Tempat lahir

tmp_lahir

Varchar

20

5

Tanggal lahir

tgl_lahir

Date

6

Jenis kelamin

Jenkel

Varchar

2

7

Id tingkat

id_tingkat

Varchar

3

8

Id kelas

id_kelas

Varchar

3

9

Id ruang

id_ruang

Varchar

3

10 Id tahun

id_tahun

Varchar

3

11 Alamat

Alamat

Text

12 Telepon

Tlp

Varcharv

12

13 Keterangan siswa

ket_siswa

Text

8.

Spesifikasi

File

Data Tahun Ajaran

Nama Database

: adm_sekolah

Nama File

: m_thn

Tipe File

: Master File

Akses File

: Random

Panjang Record

: 17 Karakter

Field Key

: id_thn

Tabel III.10.

Spesifikasi

File

Data Tahun Ajaran

No

Elemen Data

Akronim

Type

Panjang

Keterangan

1

Id tahun

id_ruang

Int

7

Primary Key

2

Tahun

nm_thn

Varchar

10

(32)

9.

Spesifikasi

File

Data Tingkat

Nama Database

: adm_sekolah

Nama File

: m_tingkat

Tipe File

: Master File

Akses File

: Random

Panjang Record

: 17 Karakter

Field Key

: id_tingkat

Tabel III.11.

Spesifikasi

File

Data Tingkat

No

Elemen Data

Akronim

Type

Panjang

Keterangan

1

Id tingkat

id_tingkat

Int

7

Primary Key

2

Nama tingkat

nm_tingkat

Varchar

10

3

Keterangan tingkat

ket_ruang

Text

10.

Spesifikasi

File

Data Pembayaran

Nama Database

: adm_sekolah

Nama File

: Pembayaran

Tipe File

: Transaksi

Akses File

: Random

Panjang Record

: 27 Karakter

Field Key

: id_byr

Tabel III.12.

Spesifikasi

File

Data Pembayaran

No

Elemen Data

Akronim

Type

Panjang

Keterangan

1

Id bayar

id_byr

Int

7

Primary Key

2

Kode baya

kode_bayar

Varchar

20

3

Tanggal bayar

tgl_byr

Date

4

Sub total

sub_total

Double

5

Jumlah bayar

jml_bayar

Double

(33)

3.4.4

Sequence Diagram

(34)

3.4.5

Deployment

Diagram

Gambar III.18.

Deployment

Diagram

3.4.6

User Interface

1.

Form Login

Form login merupakan tampilan awal, ketika pertama kali program dijalankan.

Sebelum masuk form utama, user atau pengguna dihuruskan untuk login

dengan mengisikan username dan password

(35)

2.

Tampilan Menu Utama

Pada form utama terdapat beberapa menu yaitu tab file terdapat data tingkat,

data tahun ajaran, data kelas, data ruang, data jenis pembayaran data siswa dan

data pengguna. Pada tab transaksi terdapat transaksi pembayaran sekolah.

Pada tab laporan terdapat laporan data siswa, laporan transaksi, laporan

tunggakan uang gedung, laporan tunggakan SPP

(36)

3.

Form Data Tingkatan

Form ini digunakan untuk menginput data tingkatan sekolah.

Gambar III.21.

User Interface

Master Tingkat

4.

Form Data Tahun Ajaran

Form ini digunakan untuk menginput data tahun ajaran.

(37)

5.

Form Data Kelas

Form ini digunakan untuk menginput kelas.

Gambar III.23.

User Interface

Master Kela

6.

Form Data Ruang

Form ini digunakan untuk menginput data ruang siswa.

(38)

7.

Form Data Jenis Bayar

Pada form dapat digunakan untuk menginput jenis pembayaran.

Gambar III.25.

User Interface

Data Jenis Pembayaran

8.

Form Data Siswa

Form ini digunakan untuk menginputkan data siswa.

(39)

9.

Form users

Pada form ini menampilakan menu kelola data

user yang bertujuan untuk

keamanan pada sistem agar sistem tidak digunakan oleh siapa saja.

Gambar III.27.

User Interface User

10.

Form Pembayaran

Form ini digunakan untuk melakukan transaksi pembayaran administrasi

sekolah.

(40)

11. Tampilan Kwitansi Pembayaran

Form ini menampilkan form kwitansi pembayaran yang bertujuan untuk

membuktikan bahwa siswa telah melakukan pembayaran

Gambar III.29.

User Interface

Kwitansi

12.

Tampilan Laporan Data Siswa

Form ini digunakan untuk melihat laporan data siswa yang ada di Yayasan

Nurussalam Al – Khoir Sukoharjo

(41)

13.

Tampilan Laporan Pembayaran Siswa

Form ini digunakan untuk melihat laporan pembayaran siswa yang ada di

Yayasan Nurussalam Al – Khoir Sukoharjo

Gambar III.31.

User Interface

Laporan Pembayaran Siswa

14. Tampilan Laporan Siswa yang Belum Membayar Uang Gedung

Form ini digunakan untuk melihat Siswa yang memiliki tunggakan uang

gedung yang ada di Yayasan Nurussalam Al – Khoir Sukoharjo

(42)

15. Tampilan Laporan Tunggakan SPP Siswa

Form ini digunakan untuk melihat Siswa yang memiliki tunggakan uang

gedung yang ada di Yayasan Nurussalam Al – Khoir Sukoharjo

Gambar III.33. User Interface Laporan Tunggakan SPP

3.5

Implementasi

3.5.1

Code Generation

package bib.Tampilan; import bib.KonekDB.koneksi; import bib.Class.jTable_RenderingKanan; import bib.Class.jTable_RenderingTengah; import bib.Class.lebartabel; import java.awt.Color; import java.awt.Dimension;

import static java.awt.Font.BOLD; import java.awt.Toolkit; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.Statement; import java.text.DateFormat; import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.Date; import javax.swing.JOptionPane; import javax.swing.JTable; import javax.swing.table.DefaultTableModel; import javax.swing.table.JTableHeader; import javax.swing.table.TableCellRenderer;

public final class USpp_Input extends javax.swing.JDialog { ResultSet rsdata = null;

DefaultTableModel tabModel; DefaultTableModel tabModel2; public class Tanggal {

(43)

private String getTahun() {

DateFormat dateFormat = new SimpleDateFormat("yyyy"); java.util.Date date = new java.util.Date();

return dateFormat.format(date); }

private String getTanggal() {

DateFormat dateFormat = new SimpleDateFormat("yy/MM/dd"); java.util.Date date = new java.util.Date();

return dateFormat.format(date); }

private String getWaktu() {

DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss"); java.util.Date date = new java.util.Date();

return dateFormat.format(date); }

private String getHari() {

DateFormat dateFormat = new SimpleDateFormat("EEEE"); java.util.Date date = new java.util.Date();

return dateFormat.format(date); } } } } public USpp b1;

public TableCellRenderer kanan = new jTable_RenderingKanan(); public TableCellRenderer tengah = new jTable_RenderingTengah(); public String nis, nm_siswa, id_siswa;

public void dataTerpilih2() {

// Faktur_Show_Samsat jpt1 = new Faktur_Show_Samsat(null, true); jTextField2.setText(id_siswa);

jTextField3.setText(nis); jTextField5.setText(nm_siswa); jComboBox1.requestFocus(); }

public USpp_Input(java.awt.Frame parent, boolean modal) { super(parent, modal); initComponents(); makeCenter(); ComboJenisBayar(); ComboTahun(); CekTmpKode(); } void TampilTabelDetail() { try {

// set Judul Tabel

Connection c = koneksi.getkoneksi(); Statement stm; stm = c.createStatement(); Object[] judul_kolom = { "Kode Bayar", "Tgl Bayar", "Jenis Bayar", "NIS", "Nama Siswa", "Tahun", "Bulan", "Nominal" };

tabModel2 = new DefaultTableModel(null, judul_kolom); jTable2.setModel(tabModel2);

JTableHeader tabelHeader = jTable2.getTableHeader(); tabelHeader.setBackground(Color.white);

tabelHeader.setForeground(Color.BLACK);

tabelHeader.setFont(new java.awt.Font("Arial", BOLD, 12)); //Set Isi Tabel

tabModel2.getDataVector().removeAllElements(); rsdata = stm.executeQuery("SELECT * FROM bu_spp "

+ "INNER JOIN m_siswa ON bu_spp.id_siswa = m_siswa.id_siswa " + "INNER JOIN m_thn ON bu_spp.id_thn = m_thn.id_thn "

+ "INNER JOIN m_jp ON bu_spp.id_jp = m_jp.id_jp "

+ "WHERE bu_spp.kode_bayar='" + jTextField7.getText() + "'"); while (rsdata.next()) {

Object[] data = {

rsdata.getString("kd_bspp"),//1 rsdata.getString("tgl_bspp"),//1

(44)

rsdata.getString("nm_jp"),//1 rsdata.getString("nis"),//2 rsdata.getString("nm_siswa"),//3 rsdata.getString("nm_thn"),//4 rsdata.getString("bulan"),//5 rsdata.getString("nominal_spp"),};//7 tabModel2.addRow(data);

// set lebar kolom

this.jTable2.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); lebartabel tca = new lebartabel(jTable2);

tca.adjustColumns();

jTable2.getColumnModel().getColumn(0).setCellRenderer(tengah); }

} catch (Exception e) {

JOptionPane.showMessageDialog(null, "Error." + e); }

}

void ComboJenisBayar() { try {

Connection c = koneksi.getkoneksi();

String query = "SELECT nm_jp FROM m_jp ORDER BY id_jp ASC"; PreparedStatement prestat = c.prepareStatement(query); ResultSet rs = prestat.executeQuery();

while (rs.next()) {

jComboBox3.addItem(rs.getString("nm_jp")); }

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "TIDAK DAPAT MENAMPILKAN LIST" + ex, "ERROR", JOptionPane.ERROR_MESSAGE);

} }

void ComboTahun() { try {

Connection c = koneksi.getkoneksi();

String query = "SELECT nm_thn FROM m_thn ORDER BY nm_thn ASC"; PreparedStatement prestat = c.prepareStatement(query);

ResultSet rs = prestat.executeQuery(); while (rs.next()) {

jComboBox1.addItem(rs.getString("nm_thn")); }

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "TIDAK DAPAT MENAMPILKAN LIST" + ex, "ERROR", JOptionPane.ERROR_MESSAGE);

} }

void TampilTabel() { try {

// set Judul Tabel

Connection c = koneksi.getkoneksi(); Statement stm; stm = c.createStatement(); Object[] judul_kolom = { "Tahun", "Bulan" };

tabModel = new DefaultTableModel(null, judul_kolom); jTable1.setModel(tabModel);

JTableHeader tabelHeader = jTable1.getTableHeader(); tabelHeader.setBackground(Color.white);

tabelHeader.setForeground(Color.BLACK);

tabelHeader.setFont(new java.awt.Font("Arial", BOLD, 12)); //Set Isi Tabel

tabModel.getDataVector().removeAllElements(); rsdata = stm.executeQuery("SELECT * FROM data_spp "

+ "INNER JOIN m_thn ON data_spp.id_thn = m_thn.id_thn " + "WHERE data_spp.nis='" + jTextField3.getText() + "'AND data_spp.stt_spp='" + "belum" + "'AND data_spp.id_thn='" + jTextField4.getText() + "' "

+ "ORDER BY data_spp.id_data ASC "); while (rsdata.next()) {

Object[] data = {

rsdata.getString("nm_thn"), rsdata.getString("bln"),};//10 tabModel.addRow(data);

// set lebar kolom

this.jTable1.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); lebartabel tca = new lebartabel(jTable1);

tca.adjustColumns(); }

(45)

JOptionPane.showMessageDialog(null, "Error." + e); } } void CekTmpKode() { try { Connection c = koneksi.getkoneksi(); Statement stm1 = c.createStatement(); Statement stm2 = c.createStatement();

ResultSet rsdata1 = stm1.executeQuery("SELECT * FROM tmp_kode "); if (rsdata1.next()) {

jTextField7.setText(rsdata1.getString("kode")); stm2.executeUpdate("DELETE FROM tmp_kode "); TampilDataForm(); TampilTabel(); TampilTabelDetail(); SubTotal(); // Proses.setText("EDIT"); } else { CekKode(); CekKode2(); TampilTabel(); TampilTabelDetail(); SubTotal(); Hapus.setEnabled(false); Date date = new Date(); jDateChooser2.setDate(date); }

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "Error1." + ex); } } void TampilDataForm() { try { Connection c = koneksi.getkoneksi(); Statement stm1 = c.createStatement();

ResultSet rsdata1 = stm1.executeQuery("SELECT * FROM pembayaran " + "WHERE kode_bayar='" + jTextField7.getText() + "'"); if (rsdata1.next()) { jTextField13.setText(rsdata1.getString("sub_total")); jTextField11.setText(rsdata1.getString("jml_bayar")); jTextField12.setText(rsdata1.getString("kembalian")); } else { }

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "Error1." + ex); } } void TampilDataFormKlikTabel() { String kdd = (tabModel2.getValueAt(jTable2.getSelectedRow(), 0) + ""); try { Connection c = koneksi.getkoneksi(); Statement stm1 = c.createStatement();

ResultSet rsdata1 = stm1.executeQuery("SELECT * FROM bu_spp "

+ "INNER JOIN m_siswa ON bu_spp.id_siswa = m_siswa.id_siswa " + "INNER JOIN m_jp ON bu_spp.id_jp = m_jp.id_jp "

+ "INNER JOIN m_thn ON bu_spp.id_thn = m_thn.id_thn " + "WHERE bu_spp.kd_bspp='" + kdd + "'"); if (rsdata1.next()) { jTextField1.setText(rsdata1.getString("kd_bspp")); jTextField2.setText(rsdata1.getString("id_siswa")); jTextField4.setText(rsdata1.getString("id_thn")); jTextField6.setText(rsdata1.getString("id_jp")); jDateChooser2.setDate(rsdata1.getDate("tgl_bspp")); jTextField3.setText(rsdata1.getString("nis")); jTextField5.setText(rsdata1.getString("nm_siswa")); jComboBox3.setSelectedItem(rsdata1.getString("nm_jp")); jComboBox1.setSelectedItem(rsdata1.getString("nm_thn")); jComboBox2.setSelectedItem(rsdata1.getString("bulan")); jTextField10.setText(rsdata1.getString("nominal_spp")); // jTextArea1.setText(rsdata1.getString("ket_spp")); } else { }

(46)

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "Error1." + ex); } } void RubahJadiId() { try { Connection c = koneksi.getkoneksi(); Statement stm1 = c.createStatement(); Statement stm2 = c.createStatement(); Statement stm3 = c.createStatement();

ResultSet rsdata1 = stm1.executeQuery("SELECT * FROM m_siswa WHERE nis='" + jTextField3.getText() + "'");

if (rsdata1.next()) {

jTextField2.setText(rsdata1.getString("id_siswa"));

ResultSet rsdata2 = stm2.executeQuery("SELECT * FROM m_thn WHERE nm_thn='" + jComboBox1.getSelectedItem() + "'");

if (rsdata2.next()) {

jTextField4.setText(rsdata2.getString("id_thn"));

ResultSet rsdata3 = stm3.executeQuery("SELECT * FROM m_jp WHERE nm_jp='" + jComboBox3.getSelectedItem() + "'"); if (rsdata3.next()) { jTextField6.setText(rsdata3.getString("id_jp")); simpan_edit(); } } }

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "Error." + ex); } } void simpan_edit() { if (Proses.getText().equals("SIMPAN DETAIL")) { Simpan(); } else { Edit(); } } void KosongkanForm() { jTextField1.setText(""); //jTextField3.setText(""); //jTextField5.setText(""); jTextField10.setText("0"); // jTextArea1.setText(""); jComboBox3.setSelectedItem("Pilih"); jComboBox1.setSelectedItem("Pilih"); jComboBox2.setSelectedItem("Pilih"); jTextField2.setText(""); jTextField6.setText(""); jTextField4.setText(""); } void Simpan() { try {

String tampilan = "yyyy-MM-dd";

SimpleDateFormat fm = new SimpleDateFormat(tampilan);

String tgl_bspp = String.valueOf(fm.format(jDateChooser2.getDate())); Connection c = koneksi.getkoneksi();

Statement stm = c.createStatement(); Statement stm2 = c.createStatement();

stm.executeUpdate("INSERT INTO bu_spp SET kode_bayar='" + jTextField7.getText() + "'," + "kd_bspp='" + jTextField1.getText() + "'," + "tgl_bspp='" + tgl_bspp + "'," + "id_siswa='" + jTextField2.getText() + "'," + "id_jp='" + jTextField6.getText() + "'," + "id_thn='" + jTextField4.getText() + "'," + "bulan='" + jComboBox2.getSelectedItem() + "'," + "nominal_spp='" + jTextField10.getText() + "'," + "ket_spp='" + "" + "'");

if (jTextField6.getText().equals("1")) { //UANG GEDUNG

stm2.executeUpdate("UPDATE m_siswa SET stt_ug='" + "lunas" + "'WHERE id_siswa='" + jTextField2.getText() + "'");

(47)

stm2.executeUpdate("UPDATE data_spp SET stt_spp='" + "lunas" + "'WHERE nis='" + jTextField3.getText() + "'AND id_thn='" + jTextField4.getText() + "'AND bln='" + jComboBox2.getSelectedItem() + "'"); } } TampilTabelDetail(); SubTotal(); KosongkanForm(); CekKode(); } catch (Exception e) {

JOptionPane.showMessageDialog(null, "Error." + e); }

}

void Edit() { try {

String tampilan = "yyyy-MM-dd";

SimpleDateFormat fm = new SimpleDateFormat(tampilan);

String tgl_bspp = String.valueOf(fm.format(jDateChooser2.getDate())); Connection c = koneksi.getkoneksi();

Statement stm = c.createStatement();

stm.executeUpdate("UPDATE bu_spp SET nominal_spp='" +

jTextField10.getText() + "'WHERE kd_bspp='" + jTextField1.getText() + "'"); TampilTabelDetail();

SubTotal(); KosongkanForm(); CekKode(); } catch (Exception e) {

JOptionPane.showMessageDialog(null, "Error." + e); } } void HitungBayar() { try { String dpp = jTextField11.getText(); String ppn = jTextField13.getText(); double nilai1 = Double.parseDouble(dpp); double nilai2 = Double.parseDouble(ppn); DecimalFormat df = new DecimalFormat("#.##");

this.jTextField12.setText(df.format(nilai1 - nilai2)); } catch (Exception e) { } } void SubTotal() { try { Connection c = koneksi.getkoneksi(); Statement stm2 = c.createStatement();

ResultSet rsdata2 = stm2.executeQuery("SELECT SUM(nominal_spp) as nmnl FROM bu_spp WHERE kode_bayar='" + jTextField7.getText() + "'");

if (rsdata2.next()) {

jTextField13.setText(rsdata2.getString("nmnl")); }

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "Error." + ex); }

}

private void ProsesActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:

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

JOptionPane.showMessageDialog(null, "Anda belum memasukan Kode"); jTextField1.requestFocus();

} else if (jDateChooser2.getDate() == null) {

JOptionPane.showMessageDialog(null, "Anda belum memasukan tanggal Bayar");

jDateChooser2.requestFocus();

} else if (jTextField3.getText().equals("")) {

JOptionPane.showMessageDialog(null, "Anda belum memasukan NIS"); jTextField3.requestFocus();

} else if (jComboBox1.getSelectedItem().equals("Pilih")) {

JOptionPane.showMessageDialog(null, "Anda belum memilih tahun"); jComboBox1.requestFocus();

} else if (jComboBox2.getSelectedItem().equals("Pilih")) {

JOptionPane.showMessageDialog(null, "Anda belum memilih bulan"); jComboBox2.requestFocus();

(48)

} else if (jComboBox3.getSelectedItem().equals("Pilih")) {

JOptionPane.showMessageDialog(null, "Anda belum memilih Jenis bayar"); jComboBox3.requestFocus();

} else {

int ok = JOptionPane.showConfirmDialog(null, "Proses ?", "Konfirmasi", JOptionPane.YES_NO_OPTION); if (ok == 0) { RubahJadiId(); } else { } } } }

private void HapusActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:

int ok = JOptionPane.showConfirmDialog(null, "Hapus Data ?", "Konfirmasi", JOptionPane.YES_NO_OPTION);

if (ok == 0) {

HapusTransaksi(); }

}

private void KembaliActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:

b1.dataTerpilih1(); this.dispose(); }

private void jTextField3KeyTyped(java.awt.event.KeyEvent evt) { // TODO add your handling code here:

if (jTextField3.getText().length() == 30) { evt.consume();

}

}

private void jTextField1KeyTyped(java.awt.event.KeyEvent evt) { // TODO add your handling code here:

if (jTextField1.getText().length() == 30) { evt.consume();

}

}

private void jTextField5KeyTyped(java.awt.event.KeyEvent evt) { // TODO add your handling code here:

if (jTextField5.getText().length() == 30) { evt.consume();

}

}

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:

USpp_Input_ListSiswa satu = new USpp_Input_ListSiswa(null, true); satu.a2 = this;

satu.setVisible(true); }

private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:

if (jTextField6.getText().equals("2")) { try {

Connection c = koneksi.getkoneksi(); Statement stm2 = c.createStatement();

ResultSet rsdata2 = stm2.executeQuery("SELECT * FROM m_thn WHERE nm_thn='" + jComboBox1.getSelectedItem() + "'");

if (rsdata2.next()) {

jTextField4.setText(rsdata2.getString("id_thn")); TampilTabel();

}

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "Error." + ex); }

} else { try {

Connection c = koneksi.getkoneksi(); Statement stm2 = c.createStatement();

ResultSet rsdata2 = stm2.executeQuery("SELECT * FROM m_thn WHERE nm_thn='" + jComboBox1.getSelectedItem() + "'");

if (rsdata2.next()) {

jTextField4.setText(rsdata2.getString("id_thn")); //TampilTabel();

(49)

}

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "Error." + ex); }

}

}

private void jComboBox3ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:

try {

Connection c = koneksi.getkoneksi(); Statement stm2 = c.createStatement();

ResultSet rsdata2 = stm2.executeQuery("SELECT * FROM m_jp WHERE nm_jp='" + jComboBox3.getSelectedItem() + "'"); if (rsdata2.next()) { jTextField6.setText(rsdata2.getString("id_jp")); jTextField10.setText(rsdata2.getString("jml_jp")); jTextField11.requestFocus(); if (jTextField6.getText().equals("2")) { jComboBox2.setEnabled(true); } else { jComboBox2.setEnabled(false); } }

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "Error." + ex); }

}

private void jTextField11KeyReleased(java.awt.event.KeyEvent evt) { // TODO add your handling code here:

HitungBayar(); }

private void TrxSelesaiActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:

try {

String tampilan = "yyyy-MM-dd";

SimpleDateFormat fm = new SimpleDateFormat(tampilan);

String tgl_bspp = String.valueOf(fm.format(jDateChooser2.getDate())); Connection c = koneksi.getkoneksi();

Statement stm = c.createStatement(); Statement stm2 = c.createStatement(); Statement stm3 = c.createStatement();

ResultSet rsdata3 = stm3.executeQuery("SELECT * FROM pembayaran WHERE kode_bayar='" + jTextField7.getText() + "' ");

if (rsdata3.next()) {

stm2.executeUpdate("UPDATE pembayaran SET tgl_bayar='" + tgl_bspp + "',"

+ "sub_total='" + jTextField13.getText() + "'," + "jml_bayar='" + jTextField11.getText() + "'," + "kembalian='" + jTextField12.getText() + "'WHERE kode_bayar='" + jTextField7.getText() + "'");

} else {

stm.executeUpdate("INSERT INTO pembayaran SET kode_bayar='" + jTextField7.getText() + "'," + "tgl_bayar='" + tgl_bspp + "'," + "sub_total='" + jTextField13.getText() + "'," + "jml_bayar='" + jTextField11.getText() + "'," + "kembalian='" + jTextField12.getText() + "'"); } } catch (Exception e) {

JOptionPane.showMessageDialog(null, "Error." + e); }

b1.dataTerpilih1(); this.dispose();

}

private void jTextField7KeyTyped(java.awt.event.KeyEvent evt) { // TODO add your handling code here:

}

(50)

// TODO add your handling code here:

int ok = JOptionPane.showConfirmDialog(null, "Hapus Data ?", "Konfirmasi", JOptionPane.YES_NO_OPTION); if (ok == 0) { try { Connection c = koneksi.getkoneksi(); Statement stm1 = c.createStatement(); Statement stm2 = c.createStatement(); Statement stm3 = c.createStatement(); Statement stm4 = c.createStatement(); Statement stm5 = c.createStatement();

ResultSet rsdata3 = stm3.executeQuery("SELECT * FROM m_thn WHERE nm_thn='" + jComboBox1.getSelectedItem() + "'");

if (rsdata3.next()) {

jTextField4.setText(rsdata3.getString("id_thn"));

ResultSet rsdata4 = stm4.executeQuery("SELECT * FROM m_siswa WHERE nis='" + jTextField3.getText() + "'");

if (rsdata4.next()) {

jTextField2.setText(rsdata4.getString("id_siswa")); ResultSet rsdata5 = stm5.executeQuery("SELECT * FROM m_jp WHERE nm_jp='" + jComboBox3.getSelectedItem() + "'");

if (rsdata5.next()) {

jTextField6.setText(rsdata5.getString("id_jp")); if (jTextField6.getText().equals("1")) {

stm1.executeUpdate("DELETE FROM bu_spp WHERE kd_bspp='" + jTextField1.getText() + "'");

stm2.executeUpdate("UPDATE m_siswa SET stt_ug='" + "belum" + "'WHERE id_siswa='" + jTextField3.getText() + "'");

TampilTabelDetail(); SubTotal(); KosongkanForm(); CekKode();} else if (jTextField6.getText().equals("2")) { } else if (jTextField6.getText().equals("2")) { stm1.executeUpdate("DELETE FROM bu_spp WHERE kd_bspp='" + jTextField1.getText() + "'");

stm2.executeUpdate("UPDATE data_spp SET stt_spp='" + "belum" + "'WHERE nis='" + jTextField3.getText() + "'AND id_thn='" +

jTextField4.getText() + "'AND bln='" + jComboBox2.getSelectedItem() + "' "); TampilTabelDetail();

SubTotal(); KosongkanForm(); CekKode(); } else {

stm1.executeUpdate("DELETE FROM bu_spp WHERE kd_bspp='" + jTextField1.getText() + "'"); TampilTabelDetail(); SubTotal(); KosongkanForm(); CekKode(); } } } } } catch (Exception e) { e.printStackTrace(); } } }

private void jTable2MouseClicked(java.awt.event.MouseEvent evt) { // TODO add your handling code here:

TampilDataFormKlikTabel();

} public static void main(String args[]) { /* Create and display the dialog */

java.awt.EventQueue.invokeLater(new Runnable() { public void run() {

USpp_Input dialog = new USpp_Input(new javax.swing.JFrame(), true);

dialog.addWindowListener(new java.awt.event.WindowAdapter() { @Override

(51)

System.exit(0); } }); dialog.setVisible(true); } }); }

// Variables declaration - do not modify private javax.swing.JButton Hapus;

private javax.swing.JButton Hapus1; private javax.swing.JButton Kembali; private javax.swing.JButton Proses; private javax.swing.JButton TrxSelesai; private javax.swing.JButton jButton1; private javax.swing.JComboBox jComboBox1; private javax.swing.JComboBox jComboBox2; private javax.swing.JComboBox jComboBox3;

private com.toedter.calendar.JDateChooser jDateChooser2; private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel18; private javax.swing.JLabel jLabel19; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel20; private javax.swing.JLabel jLabel21; private javax.swing.JLabel jLabel22; private javax.swing.JLabel jLabel23; private javax.swing.JLabel jLabel24; private javax.swing.JLabel jLabel25; private javax.swing.JLabel jLabel5; private javax.swing.JLabel jLabel6; private javax.swing.JLabel jLabel7; private javax.swing.JPanel jPanel1; private javax.swing.JPanel jPanel2; private javax.swing.JPanel jPanel5;

private javax.swing.JScrollPane jScrollPane1; private javax.swing.JScrollPane jScrollPane3; private javax.swing.JTable jTable1;

private javax.swing.JTable jTable2;

private javax.swing.JTextField jTextField1; private bib.Class.ClassMataUang jTextField10; private bib.Class.ClassMataUang jTextField11; private bib.Class.ClassMataUang jTextField12; private bib.Class.ClassMataUang jTextField13; private javax.swing.JTextField jTextField2; private javax.swing.JTextField jTextField3; private javax.swing.JTextField jTextField4; private javax.swing.JTextField jTextField5; private javax.swing.JTextField jTextField6; private javax.swing.JTextField jTextField7; // End of variables declaration void makeCenter() {

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = this.getSize();

if (frameSize.height > screenSize.height) { frameSize.height = screenSize.height; } if (frameSize.width > screenSize.width) { frameSize.width = screenSize.width; } this.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); } void CekKode() { KodeOtomatis(); jTextField1.setText("PSPP-" + jTextField1.getText() + ""); jButton1.requestFocus(); } void KodeOtomatis() {

Tanggal tgl = new Tanggal();

String thn_sekarang = (tgl.getTanggal()); try {

Connection c = koneksi.getkoneksi(); Statement stm = c.createStatement();

ResultSet rsdata = stm.executeQuery("SELECT * FROM bu_spp ORDER BY id_spp DESC");

if (rsdata.next()) {

String id_divisi = (rsdata.getString("id_spp")); double nilai1 = Double.parseDouble(id_divisi); DecimalFormat df = new DecimalFormat("#.##");

(52)

this.jTextField1.setText(df.format(nilai1 + 1)); PaketUbahKode();

jTextField1.setText("" + thn_sekarang + "" + jTextField1.getText() + ""); String n1 = jTextField1.getText(); String hsl = n1.replace("/", ""); jTextField1.setText(hsl); } else { jTextField1.setText("1"); PaketUbahKode();

jTextField1.setText("" + thn_sekarang + "" + jTextField1.getText() + "");

String n1 = jTextField1.getText(); String hsl = n1.replace("/", ""); jTextField1.setText(hsl);

}

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "QUERY ERROR" + ex, "ERROR", JOptionPane.ERROR_MESSAGE); } } void SimpanUbahKode() { try { Connection c = koneksi.getkoneksi(); Statement stm = c.createStatement();

stm.executeUpdate("INSERT INTO ubah_kode SET kode='" + jTextField1.getText() + "'");

} catch (Exception e) {

JOptionPane.showMessageDialog(null, "Error." + e); } } void TampilUbahKode() { try { Connection c = koneksi.getkoneksi(); Statement stm = c.createStatement(); Statement stm1 = c.createStatement();

ResultSet rsdata = stm.executeQuery("SELECT * FROM ubah_kode"); if (rsdata.next()) {

jTextField1.setText(rsdata.getString("kode")); stm1.executeUpdate("DELETE FROM ubah_kode"); }

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "QUERY ERROR" + ex, "ERROR", JOptionPane.ERROR_MESSAGE); } } void PaketUbahKode() { SimpanUbahKode(); TampilUbahKode(); } void CekKode2() { KodeOtomatis2(); jTextField7.setText("NB-" + jTextField7.getText() + ""); jButton1.requestFocus(); } void KodeOtomatis2() { try { Connection c = koneksi.getkoneksi(); Statement stm = c.createStatement();

ResultSet rsdata = stm.executeQuery("SELECT * FROM pembayaran ORDER BY id_byr DESC");

if (rsdata.next()) {

String id_divisi = (rsdata.getString("id_byr")); double nilai1 = Double.parseDouble(id_divisi); DecimalFormat df = new DecimalFormat("#.##"); this.jTextField7.setText(df.format(nilai1 + 1)); PaketUbahKode2(); } else { jTextField7.setText("1"); PaketUbahKode2(); }

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "QUERY ERROR" + ex, "ERROR", JOptionPane.ERROR_MESSAGE);

Gambar

Gambar III.3. Use Case Diagram Halaman Admin  Tabel III.1
Gambar III.4. Use Case Diagram Halaman Yayasan
Tabel III.2
Gambar III.5. Activity Diagram Log In
+7

Referensi

Dokumen terkait

35 3.4.3 Struktur Menu Menu Utama File Exit Transaksi Penjualan Pembelian Data Barang Supplier input simpan batal tutup Input Simpan Batal Tutup Input Hapus Simpan Edit Tutup

Menu-menu yang terdapat pada form menu utama yang Penulis buat terdiri dari menu master data berisi data-data yang terdapat pada perusahaan, menu transaksi berisi

Prosedur Pengujian Akses dari menu utama, pilih dan klik button sekilas info. Hasil yang diharapkan Sistem memunculkan halaman sekilas info berupa tab. Dan terdapat tiga tab

Pada form persilangan dua individu dengan dua sifat beda terdapat tombol kembali yang berfungsi untuk kembali ke menu awal atau menu utama, tombol proses

Tujuan Pengguna dapat melakukan pengolahan data yang ada di menu data pegawai, menu data absen, menu data jabatan, menu data gaji, menu laporan per data.. Deskripsi Sistem

Tampil halaman menu dashboard, menu profil, menu keluar, menu data pengguna menu pengadaan buku, data master yang terdapat sub menu: data siswa, data buku, data

Pada form ini terdapat satu gambar dan keterangan dari penyakit cabai merah besar dengan format jpg.untuk kembali keform menu utama pilih tombol perintah “TUTUP”... Gambar 3.23

Dalam Sistem Informasi Pembayaran Pasien Rawat Jalan terdapat beberapa form yakni form login, form menu utama yang berisi Menu Input Data, Menu Transaksi, Menu Laporan, dan