• Tidak ada hasil yang ditemukan

BAB III ANALISA SISTEM BERJALAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB III ANALISA SISTEM BERJALAN"

Copied!
75
0
0

Teks penuh

(1)

22

BAB III

ANALISA SISTEM BERJALAN

3.1. Tinjauan Perusahaan

Kegiatan rutin pada SMK Texmaco Purwasari Karawang terdapat aturan yang ditentukan dalam pelaksanaannya, dalam hal ini struktur organisasi yang menggambarkan garis perintah serta fungsi-fungsi pelaksanaan. Penulis akan menerangkan profil sekolah, visi misi, serta struktur organisasi ditempat penulis mengadakan riset, dalam pembuatan Tugas Akhir ini.

3.1.1. Sejarah Perusahaan

SMK Texmaco Purwasari Karawang adalah sekolah swasta yang berdiri pada tahun 2014, didirikan oleh Yayasan Pusat Pengembangan Ilmu dan Teknologi Texmaco dan memiliki luas tanah ± 5730 m/SHM dengan luas keseluruhan bangunan 672. Sekolah tersebut berlokasi di Jl. Moch. Sodiq, Ds. Sukasari Kec. Purwasari Kab. Karawang. Status Akreditasi SMK Texmaco Purwasari Karawang adalah peringkat B dan berdasarkan Perizinan Operasional Nomor: 421.9/Kep. /2/I/SMK-BPMPT/V/2016 pada tanggal 26 Mei 2016. Sedangkan program keahlian yang terdapat pada SMK Texmaco Purwasari Karawang diantaranya Teknik Sepeda Motor (TSM), Administrasi Perkantoran (AP), Teknik Komputer Jaringan (TKJ), Teknik Pemeliharaan Mekanik Industri (TPMI), dan Teknik Elektronika Industri (TEI), dengan 36 tenaga pendidik dan 780 siswa.

(2)

Visi dan Misi dari SMK Texmaco Purwasari Karawang adalah sebagai berikut:

1. Visi: “Menjadi SMK unggulan untuk menciptakan tenaga kerja menengah professional yang bertaqwa, cerdas, mandiri dan kompetitif”.

2. Misi

a. Mendidik peserta didik yang bertaqwa Kepada Tuhan Yang Maha Esa. b. Mendidik peserta didik yang mempunyai sikap kepribadian, berbudi

pekerti luhur, berpengetahuan, trampil serta berpikir kreatif dan inovatif. c. Menyiapkan peserta didik yang mampu mandiri sesuai program

keahliannya dan berjiwa wirausaha dengan bekerjasama dalam bidang pendidikan dunia kerja dan dunia industri.

d. Menyiapkan peserta didik agar dapat mengikuti perkembangan IPTEK sesuai tutunan dunia kerja dengan meningkatkan penelitian dan kerjasama industri.

e. Meningkatkan kerjasama dengan dunia usaha atau dunia industri dan intansi terkait.

3.1.1. Struktur Organisasi dan Fungsi

Struktur Organisasi adalah suatu susunan dan hubungan antara tiap bagian secara posisi yang ada pada sekolah dalam menjalin kegiatan operasional untuk mencapai tujuan. Organisasi atau sekolah memegang peranan yang sangat penting. Setiap sekolah harus mempunyai struktur organisasi yang baik agar koordinasi dan tata kerja dapat tergambar dengan jelas, sehingga dapat berfungsi dengan maksimal.

(3)

Berikut adalah gambar struktur organisasi serta fungsi dari tiap bagian yang ada pada SMK Texmaco Purwasari Karawang:

Ka. Program Studi TSM

Ka. Program Studi TKJ

Ka. Program Studi TEI

Ka. Program Studi TPMI

Ka. Program Studi AP

WALI KELAS

GURU

SISWA KETUA YPPIT TEXMACO

STAFF TATA USAHA KEPALA SEKOLAH KOORD. HUBINMAS WAKASEK SARPRAS WAKASEK KURIKULUM WAKASEK KESISWAAN KOMITE SEKOLAH KA TATA USAHA KOORD. BP/BK

Sumber : SMK Texmaco Purwasari Karawang. Gambar III.1.

(4)

Adapun tugas dan fungsi dari tiap bagian yang terdapat pada struktur organisasi SMK Texmaco Purwasari Karawang adalah sebagai berikut:

a. Ketua Yayasan

Wewenang dan tangung jawab dari ketua yayasan, yaitu: a. Merekrut Kepala Sekolah, dan guru.

b. Menentukan manajemen keuangan.

c. Menandatangani kesepakatan kerja bersama dan SK sebagai legalitas dokumen.

d. Menentukan kebjakan sekolah. b. Kepala Sekolah

Wewenang dan tangung jawab dari kepala sekolah, yaitu:

a. Menjaga terlaksananya dan ketercapaian program kerja sekolah.

b. Melakukan pengawasan dan penilaian kinerja tenaga pendidik dan kependidikan.

c. Merencanakan, mengelola, dan mempertanggung jawabkan keuangan sekolah.

d. Mengusulkan promosi dan mutase pendidik dan tenaga kependidikan. e. Mengangkat dan menetapkan personal struktur organisasi.

f. Melegalisasi dokumen organisasi.

g. Mengembangkan SDM. c. Komite Sekolah

Wewenang dan tangung jawab dari komite sekolah, yaitu:

a. Membantu meningkatkan kelancaran penyelenggaraan kegiatan belajar mengajar di sekolah baik sarana, prasarana maupun teknis pendidikan.

(5)

b. Melakukan penilaian sekolah untuk pengembangan pelaksanaan kurikulum, baik intra maupun ekstra kulikuler dan pelaksanaan manajemen sekolah, kepala sekolah atau wakil kepala sekolah, guru dan siswa.

c. Melakukan pembahasan tentang usulan Rancangan Anggaran Pendapatan dan Belanja Sekolah.

d. Memberikan penghargaan atas keberhasilan manajemen sekolah.

e. Meminta sekolah agar mengadakan pertemuan untuk kepentingan tertentu.

d. Wakil Kepala Sekolah Bidang Kesiswaan

Wewenang dan tangung jawab dari wakil kepala sekolah bidang kesiswaan, yaitu:

a. Mengkoordinasikan penerimaan siswa baru.

b. Mengkoordinasikan pelaksanaan masa orientasi peserta didik (MOS). c. Mengkoordinasikan pendistribusian semua bentuk beasiswa.

d. Mengkoordinasikan pelaksanaan ketertiban, kedisiplinan, keamanan, dan kekeluargaan.

e. Mengkoordinasikan pemilihan kepegurusan dan diklat OSIS.

f. Membina program kegiatan OSIS.

g. Melakukan tindakan terhadap siswa terkait pelanggaran tata tertib siswa. h. Mengkoordinasikan pelaksanaan kegiatan lomba.

i. Mengkoordinasikan ekstra kulikuler.

(6)

e. Wakil Kepala Sekolah Bidang Kurikulum

Wewenang dan tangung jawab dari wakil kepala sekolah bidang kurikulum, yaitu:

a. Menyusun program kerja bidang kurikulum

b. Mengkoordinasikan pelaksanaan dan pengembangan kurikulum. c. Mengkoordinasikan pelaksanaan evaluasi pembelajaran.

d. Memantau pelaksanaan pembelajaran.

e. Menyusun kalender pendidikan dan jadwal pembelajaran.

f. Mengusulkan tugas mengajar pada masing-masing guru.

g. Menghitung dan melaporkan jam mengajar guru.

h. Merencanakan kebutuhan tenaga pendidik dan kependidikan.

f. Wakil Kepala Sekolah Bidang Sarana Prasarana

Wewenang dan tangung jawab dari wakil kepala sekolah bidang sarana prasarana, yaitu:

a. Menyusun rencana kebutuhan sarana dan prasarana. b. Mengadministrasikan penggunaan sarana prasarana. c. Pengolahan pembiayaan alat-alat pengajaran.

d. Menyusun laporan pelaksanaan urusan sarana dan prasarana secara berkala.

g. Tata Usaha

Wewenang dan tangung jawab dari tata usaha, yaitu:

a. Menyusun dan melaksanakan program tata usaha sekolah. b. Menyusun dan melaksanakan kegiatan keuangan sekolah. c. Mengurus administrasi kepegawaian.

(7)

d. Menyusun administrasi perlengkapan sekolah. e. Menyusun administrasi lainnya.

h. Staff Tata Usaha

Wewenang dan tangung jawab dari staff tata usaha, yaitu:

a. Merekap data serta mengarsipkan dokumen yang berkaitan dengan tata usaha.

b. Membantu ketua tata usaha dalam menjalankan tugas administrasi sekolah.

c. Menyusun laporan administrasi sekolah dan melaporkannya kepada ketua tata usaha secara berkala.

i. Ketua Program Studi Teknik Sepeda Motor

Wewenang dan tangung jawab dari ketua program studi teknik sepeda motor, yaitu:

a. Menyusun program dan perkembangan program studi teknik sepeda motor.

b. Mengkoordinasi penggunaan ruang jurusan teknik sepeda motor.

c. Merencanakan dan menyiapkan bahan-bahan sesuai dengan kebutuhan kegiatan prektek.

d. Peningkatab prestasi dalam jurusan teknik sepeda motor.

e. Menyusun laporan pelaksanaan kegiatan program studi teknik sepeda motor secara berkala kepada kepala sekolah.

j. Ketua Program Studi Teknik Komputer Jaringan

Wewenang dan tangung jawab dari ketua program studi teknik komputer jaringan, yaitu:

(8)

a. Menyusun program dan perkembangan program studi teknik komputer jaringan.

b. Mengkoordinasi penggunaan ruang jurusan teknik komputer jaringan. c. Merencanakan dan menyiapkan bahan-bahan sesuai dengan kebutuhan

kegiatan prektek.

d. Peningkatab prestasi dalam jurusan teknik komputer jaringan.

e. Menyusun laporan pelaksanaan kegiatan program studi teknik komputer jaringan secara berkala kepada kepala sekolah.

k. Ketua Program Studi Teknik Elektronika Industri

Wewenang dan tangung jawab dari ketua program studi teknik elektronika industri, yaitu:

a. Menyusun program dan perkembangan program studi teknik elektronik industri.

b. Mengkoordinasi penggunaan ruang jurusan teknik elektronik industri. c. Merencanakan dan menyiapkan bahan-bahan sesuai dengan kebutuhan

kegiatan prektek.

d. Peningkatab prestasi dalam jurusan teknik elektronik industri.

e. Menyusun laporan pelaksanaan kegiatan program studi teknik elektronik industri secara berkala kepada kepala sekolah.

l. Ketua Program Studi Teknik Pemeliharaan Mekanik Industri

Wewenang dan tangung jawab dari ketua program studi teknik pemeliharaan mekanik industri, yaitu:

a. Menyusun program dan perkembangan program studi teknik pemeliharaan mekanik industri.

(9)

b. Mengkoordinasi penggunaan ruang jurusan teknik pemeliharaan mekanik industri.

c. Merencanakan dan menyiapkan bahan-bahan sesuai dengan kebutuhan kegiatan prektek.

d. Peningkatab prestasi dalam jurusan teknik pemeliharaan mekanik industri.

e. Menyusun laporan pelaksanaan kegiatan program studi teknik pemeliharaan mekanik industri secara berkala kepada kepala sekolah. m. Ketua Program Studi Administrasi Perkantoran

Wewenang dan tangung jawab dari ketua program studi administrasi perkantoran, yaitu:

a. Menyusun program dan perkembangan program studi administrasi perkantoran.

b. Mengkoordinasi penggunaan ruang jurusan administrasi perkantoran. c. Merencanakan dan menyiapkan bahan-bahan sesuai dengan kebutuhan

kegiatan prektek.

d. Peningkatab prestasi dalam jurusan administrasi perkantoran.

e. Menyusun laporan pelaksanaan kegiatan program studi administrasi perkantoran secara berkala kepada kepala sekolah.

n. BP/BK (Bimbingan Penyuluhan/Bimbingan Konseling) Wewenang dan tangung jawab dari BP/BK, yaitu:

a. Menyusun program dan pelaksanaan bimbingan konseling terhadap siswa. b. Mengkordinasi dengan wali kelas dalam rangka mengatasi

(10)

c. Memberikan layanan bimbingan kepada siswa agar lebih berprestasi dalam kegiatan belajar.

d. Memberikan saran dan pertimbangan karir kepada siswa dalam memperoleh gambaran tentang lanjutan pendidikan dan lapangan pekerjaan yang sesuai.

e. Mengadakan penilaian pelaksanaan bimbingan konseling.

f. Menyusun dan melaksanakan program tidak lanjut bimbngan konseling.

o. Wali Kelas

Wewenang dan tangung jawab dari wali kelas, yaitu:

a. Mewakili orang tua dan kepala sekolah dalam lingkungan kelasnya. b. Membina kepribadian dan budi pekerti siswa dikelasnya.

c. Sebagai pengelola kelas dalam hal mengetahui jumlah anak didik, identitas anak didik, dan jumlah kehadiran setiap hari dikelasnya.

d. Mengetahui permasalahan anak didik dalam hal pelajaran, ekonomi, dan sosial serta mengambil tindakan untuk mengatasi setiap masalah.

e. Memperhatikan buku laporan pendidikan (rapor) siswa dikelasnya.

f. Menyelengarakan administrasi kelas dalam hal denah tempat duduk

siswa, papan absensi kelas, daftar pelajaran kelas, daftar piket, dan tata tertib kelas.

p. Guru

Wewenang dan tangung jawab dari guru, yaitu:

a. Memberikan pelajaran sesuai dengan bidang studi. b. Mewakili kepala sekolah dan orang tua siswa dikelas.

(11)

c. Mengetahui tugas-tugas yang diberikan kepada siswa dan memeriksa hasil tugas itu untuk dinilai.

d. Memperhatikan kelakuan dan kerajinan siswa sebagai bahan laporan kepada kepala sekolah, wali kelas, dan guru BP/BK.

e. Memperhatikan hasil ulangan dan mengisi daftar nilai siswa.

f. Memecahkan masalah-masalah pelajaran yang dihadapi siswa untuk

memberikan memberikan bimingan pelajaran kepada siswa yang cerdas, siswa yang kurang cerdas, dan siswa yang kesulitan belajar.

q. Siswa

Wewenang dan tangung jawab dari siswa, yaitu: a. Menuntut ilmu sebaik-baiknya.

b. Mempertanggungjawabkan hasil pembelajarannya.

c. Mematuhi peraturan yang sudah ditetapkan oleh pihak sekolah.

3.1. Tinjauan Kasus

3.2.1. Proses Bisnis Sistem Berjalan

Prosedur yang dilakukan sebelum memulai suatu kegiatan untuk menyelesaikan suatu pekerjaan disebut prosedur sistem. Sesuai dengan ruang lingkup yang dibahas dalam tugas akhir ini, maka proses bisnis berjalan yang diambil yaitu analisa sistem informasi akuntansi penggajian guru pada SMK Texmaco Purwasari Karawang sebagai berikut:

1. Rekap absensi guru

Bagian tata usaha memberikan daftar absensi setiap hari untuk ditanda tangani guru sebagai bukti absensi guru. Setiap akhir bulan tata usaha

(12)

merekap absensi guru dengan melakukan pehitungan jumlah absensi. Hasil dari rekap absensi tersebut menghasilkan daftar rekap absensi, kemudian satu rangkap diberikan kepada kepala sekolah untuk di acc.

2. Perhitungan gaji guru

Selanjutnya bagian tata usaha menghitung gaji guru yang mengacu dari daftar rekap absensi guru. Setelah semuanya dicatat dan dihitung maka akan menghasilkan data gaji guru yang kemudian diberikan kepada kepala sekolah untuk diacc.

3. Pembayaran Gaji

Bagian tata usaha membuat slip gaji dari rekap absen guru, kemudian guru menerima slip gaji dan menanda tangani buku penerimaan gaji kemudian diarsipkan oleh tata usaha.

4. Pembuatan laporan.

Bagian tata usaha membuat laporan penggajian dari laporan tanda bukti penerimaan gaji tersebut sebanyak dua rangkap untuk diserahan kepada kepala sekolah untuk di acc. Satu rangkap diberikan kepada kepala sekolah dan satu lagi diarsipkan oleh tata usaha.

3.2.2. Activity Diagram

Activity Diagram adalah diagram yang menggabarkan aktivitas dari proses

bisnis yang berjalan pada penggajian guru di SMK Texmaco Purwasari Karawang. oleh karena itu dibuatkan activity diagram sebagai salah satu cara untuk menggambarkan aliran kerja tersebut. Berikut adalah activity diagram penggajian guru pada SMK Texmaco Purwasari Karawang:

(13)

Sumber : Tata Usaha SMK Texmaco Purwasari Karawang Gambar III.2.

Activity Diagram Proses Bisnis Sistem Berjalan

3.2.3. Dokumen Masukan

Dokumen masukan adalah semua dokumen yang digunakan sebagai dasar untuk memperoleh data-data yang nantinya akan diproses untuk menghasilkan suatu keluaran yang disebut dengan output. Dokumen masukan yang digunakan adalah sebagai berikut:

1. Nama Dokumen : Daftar Absensi

Fungsi : Sebagai Bukti Kehadiran

act activ ity Diagram

Kepala Sekolah

Guru Tata Usaha

Star Menyediakan Daftar Absensi Menerima Daftar Absensi Tanda Tangan

Daftar Absensi Rekap Absensi

Menerima Rekap Absensi Menyetujui Rekap Absensi Menerima Rekap Absensi

Menghitung Gaji Guru

Menerima Daftar Gaji Guru menyetujui Daftar Gaji Guru Menerima Daftar Gaji Guru

Membuat Slip Gaji Menerimat Slip Gaji

Mentanda Tangani Bukti Penerimaan Gaji Menerima Bukti Penerimaan Gaji Membuat Laporan

Arsip Laporan Guru

Menerima Laporan Gaji Guru

Finis

Melakukan Potongan

Menghitung Tunjangan

(14)

Sumber : Bagian Tata Usaha

Tujuan : Guru

Media : Kertas

Frekuensi : Setiap Hari

Bentuk : Lampiran A1

3.2.4. Dokumen Keluaran

Dokumen keluarn adalah segala bentuk dokumen yang akan mendukung kegiatan manajemen serta merupakan dokumen dari hasil catatan laporan. Dokumen keluaran yang digunakan adalah sebagai berikut:

1. Nama Dokumen : Daftar Rekap Absensi

Fungsi : Sebagai Keterangan Kehadiran

Sumber : Tata Usaha

Tujuan : Tata Usaha

Media : Kertas

Frekuensi : Setiap Bulan

Bentuk : Lampiran B1

2. Nama Dokumen : Daftar Penerimaan Gaji Guru

Fungsi : Sebagai Bukti Penerimaan Gaji Guru

Sumber : Tata Usaha

Tujuan : Guru

Media : Kertas

Frekuensi : Setiap Bulan

(15)

3. Nama Dokumen : Slip Gaji

Fungsi : Untuk mengetahui rincian gaji yang diterima guru

Sumber : Tata Usaha

Tujuan : Guru

Media : Kertas

Frekuensi : Setiap Pembayaran Gaji

Bentuk : Lampiran B3

4. Nama Dokumen : Laporan Gaji

Fungsi : Sebagai Bukti Laporan Gaji

Sumber : Tata Usaha

Tujuan : Kepala Sekolah

Media : Kertas

Frekuensi : Setiap Bulan

(16)

3.2.5. Permasalahan Pokok

Berdasarkan hasil pengamatan yang penulis lakukan di SMK Texmaco Purwasari Karawang, dari itu penulis mengetahui permasalahan yang ada di SMK Texmaco Purwasari Karawang dalam sistem penggajian guru yaitu sebagai berikut:

1. Perhitungan gaji masih menggunakan cara menual sehingga membutuhkan waktu yang lama, sering terjadi kesalahan dalam perhitungan dan penulisan total gaji.

2. Dokumen berupa kertas-kertas dalam bentuk arsip dapat mudah hilang atau rusak.

3. Sistem manual membuat data-data khususnya data penggajian menjadi lebih sulit jika ingin dilihat kembali dan rentan terhadap resiko terjadi hilangnya salah satu data penggajian karena terselip dengan berkas yang lain.

3.2.6. Pemecahan Masalah

Pemecahan masalah yang dihadapkan pada SMK Texmaco Purwasari Karawang lebih mendasar dan terletak pada sumber daya manusia serta sistem yang dijalankan di sekolah tersebut, sehingga manajemen sekolah harus melakukan tindakan efektif dan efisien terhadap permasalahan yang timbul serta dapat menggambil langkah-langkah yang sesuai dengan manajemen sekolah agar kedepan sekolah dapat lebih maju. Adapun pemecahan permasalahan adalah sebagai berikut:

1. Beralih dari sistem manual ke sistem komputerisasi berbasis desktop dengan menggunakan aplikasi Java Netbeans dan server XAMPP.

(17)

2. Sistem penggajian yang diusulkan memiliki hak akses sehingga hanya orang-orang tertentu saja yang dapat membuka data penggajian atau data-data lainnya sehingga data tersebut tidak rusak dan tidak mudah hilang.

3. Pembuatan laporan gaji guru dapat terselesaikan tepat waktu.

3.2. Analisa Kebutuhan Software

3.3.1. Analisis Kebutuhan

Berdasarkan proses penggajian sistem berjalan pada Yayasan Darul’amal, maka tahapan berikutnya adalah analisis kebutuhan. Berikut ini spesifikasi kebutuhan (System Requirement) dari sistem penggajian pada SMK Texmaco Purwasari Karawang.

A. Bagian Administrasi

A.1. Administrasi Dapat Melakukan Login A.2. Administrasi Dapat Mengelola Menu Master

a. Dapat Mengelola Data Guru

b. Dapat Mengelola Data Golongan Guru c. Dapat Mengelola Data Tunjangan d. Dapat Mengelola Data Potongan e. Dapat Mengelola Data Akun

A.3. Administrasi Dapat Mengelola Menu Transaksi a. Dapat Mengelola Rekap Absen

b. Dapat Mengelola Gaji Guru c. Dapat Mengelola Slip Gaji d. Dapat Mengelola Jurnal

(18)

A.4. Administrasi Mengelola Menu Laporan a. Dapat Mencetak Slip Gaji

b. Dapat Mencetak Laporan Gaji B. Guru

(19)

3.3.2. Use Case Diagram

Gambar III.3.

Use Case Diagram Login Admin Tabel III.1.

Deskripsi Use Case Diagram Login Admin Use Case Login Admin

Tujuan Melakukan login

Deskripsi Sistem ini memungkinkan aktor untuk

mengakses sistem penggajian Sekenario utama

Aktor Administrasi

Kondisi Awal Aktor melakukan login atau aktivitas

Aksi Aktor Reaksi Aktor

1. Aktor memilih tombol login

Sistem akan menampilkan form untuk mengisi

username dan password

Kondisi Akhir Jika perintah sesuai maka sistem akan masuk

ke dalam menu utama dan aktor dapat melakukan aktivitas

uc Use Case Model

Admin Mengakes Menu Admin Login Masukan User Name

Masukan Passw ord

«include»

«include» «include»

(20)

Gambar III.4.

Use Case Diagram Menu Utama Tabel III.2.

Deskripsi Use Case Diagram Menu Utama Use Case Menu Utama

Tujuan Administrasi dapat melakukan pengolahan

data yang terdapat di menu utama

Deskripsi Sistem ini memungkinkan aktor untuk

mengimput data sampai dengan pembuatan laporan

Sekenario utama

Aktor Administrasi

Kondisi Awal Aktor membuka menu utama

Aksi Aktor Reaksi Aktor

1. Aktor memilih memilih menu utama

Sistem akan menampilkan submenu utama diantaranya menu master, menu transaksi, menu laporan.

2. Aktor memilih menu master

Sistem akan menampilkan menu master 3. Aktor memilih menu

transaksi

Sistem akan menampilkan menu transaksi 4. Aktor memilih laporan

laporan

Sistem akan menampilkan menu laporan

Kondisi Akhir Jika perintah sesuai maka sistem akan sistem

akan menampilkan apa yang diinginkan

uc Use Case Model

Admin Menu Utama Menu Master Menu Transaksi Menu Laporan «extend» «extend» «extend»

(21)

Gambar III.5.

Use Case Diagram Menu Master

Tabel III.3.

Deskripsi Use Case Diagram Menu Master Use Case Menu Master

Tujuan Administrasi dapat melakukan pengolahan data

yang terdapat di menu master

Deskripsi Sistem ini memungkinkan aktor untuk masuk ke

menu master Sekenario utama

Aktor Administrasi

Kondisi Awal Aktor membuka menu utama

Aksi Aktor Reaksi Aktor

1. Aktor memilih data guru Sistem akan menampilkan informasi guru

2. Aktor memilih data golongan

Sistem akan menampilkan informasi data golongan

3. Aktor memilih data tunjangan

Sistem akan menampilkan informasi data tunjangan

4. Aktor memilih data potongan

Sistem akan menampilkan informasi data potongan

5. Aktor memilih data akun Sistem akan menampilkan informasi data akun

6. Aktor memilih Tombol Simpan

Sistem akan Menyimpan Data 7. Aktor memilih Tombol

Ubah

Sistem akan Mengubah Data uc Use Case Model

Admin Menu Master Data Guru Data Golongan Potongan Tunj angan Perkiraan Simpan Ubah Hapus Simpan Ubah Hapus Simpan Ubah Hapus Simpan Ubah Hapus Hapus Ubah Simpan «include» «include» «include» «include» «include» «include» «include» «include» «extend» «include» «include» «include» «include» «extend» «include» «extend» «extend» «include» «extend» «include»

(22)

8. Aktor memilih Tombol Hapus

Sistem akan Menghapus Data

Kondisi Akhir Jika perintah sesuai maka sistem akan sistem

akan menampilkan apa yang diinginkan

Gambar III.6.

Use Case Diagram Login Guru Tabel III.4.

Deskripsi Use Case Diagram Login Guru Use Case Login Guru

Tujuan Melakukan absensi guru

Deskripsi Sistem ini memungkinkan aktor melakukan absensi

Sekenario utama

Aktor Guru

Kondisi Awal Aktor melakukan login

Aksi Aktor Reaksi Aktor

1. Aktor memilih tombol login Sistem akan menampilkan form untuk mengisi

username dan password

Kondisi Akhir Jika perintah sesuai maka sistem akan masuk ke

dalam menu guru dan aktor dapat melakukan absensi

uc uc Use Case Menu Login Guru

Guru Menu Absensi Login Masukan User Name Masukan Password «include» «include» «include»

(23)

3.3.3. Activity Diagram

Gambar III.7.

Activity Diagram Menu Login Admin

act Activ ity Diagram Menu Login

Sistem Admin

Star

Klik Menu Login

Mengimput Usename & Passw ord Verifikasi Username & Passw ord Masuk ke Menu Utama Kembali ke Menu Login Menu Laporan Menu Transaksi Menu Master Tampilan Form Finish No Yes

(24)

Gambar III.8.

Activity Diagram Menu Master Form Data Guru

act act Activ ity Menu Admin

Admin Sistem

Star

Klik Menu Master Menampilkan Menu Master

Menu Laporan Menu Transaksi Menu Master Data

Guru AkunData

Klik Submenu Data Guru Kli Tombol Bersih Menampilkan Form Data Guru Id Guru Nm Guru Alamat Ttl jns

Kelamin Pendidikan Golongan

Mengelola Data Guru

Mengisi Form Guru Klik tombol keluar Menampilkan Tombol Simpan Ketik Nama Guru

Yang dituju

Klik Tombol Simpan

Menyimpan Data Guru

Klik Data Yang Akan diubah Hapus data Menampilkan Tombol Ubah Klik Tombol ubah Menampilkan akun yang telah diubah Menampilkan

Tombol Hapus Klik Tombol

Hapus

menghapus akun yang telah dipilih

Keluar dari Data Guru Finish Data Admin Klik Tombol Tambah Password Username Mengubah Data [No] [Cari Data Guru]

[Tambah]

[Ubah] [Hapus]

[Data Berhasil disimpan]

[Yes] [Keluar]

(25)

Gambar III.9.

Activity Diagram Menu Transaksi Form Rekap Absen Guru

act act Activ ity Diagram Menu Admin

Sistem Admin Star Klik Menu Transaksi Menampilkan Menu Transaksi Fork

Rekap Absen Gaj i Jurnal

Join Klik Submenu

Rekap Absen Menampilkan

Form Rekap Absen Fork Status Kehadiran Waktu Tgl Id Guru Id Absen Join Mengelola Rekap Absen

Ketik Nama Guru Yg Akan dicari Klik Tombol Keluar Menampilkan Tombol Cetak Klik Tombol

Cetak Menampilkan Form

Yg Dicetak Pencarian Berdasarkan Periode Isi Tgl Awal Periode

Isi Tgl Akhir Periode (Tgl Tutup Buku)

Menampilkan Kalender

Menampilkan Kalender Klik Tobol Tgl, Bulan,

Tahun Yg Dicari Menampilkan Tombol

Cetak Klik Tombol Tgl, Bulan,

Tahun Yg Dicari

Klik Tombol

Cetak Menampilkan

Rekapan Absensi Yg Akan dicetak

Keluar Dari Form Rekap Absen Finish Absen [Keluar] [No] [Tgl Awal] [Pencarian] [Yes] [Tgl Akhir]

(26)

Gambar III.10.

Activity Diagram Menu Transaksi Form Gaji Guru

act act Activ ity Diagram Menu Admin

Sistem Admin

Star

Klik Menu Transaksi Menampilkan Menu Transaksi

Fork

Rekap Absen Absensi Gaji Jurnal

Join Menampilkan Form Gaji Klik Submenu Gaji Fork

Id Gaji Username Tgl Id Golongan Id Potongan Total Gaji

Join Mengelola Gaji Klik Tombol Bersih Klik Tombol Tambah Menampilkan id Gaji Klik Tombol Username Klik Tombol Kalender Menampilkan Kalender Klik Tgl, Bulan, Tahun Menampilkan Tgl, Bulan, Tahun Menampilkan Pilihan Nama Guru Pilih Nama Guru Menampilkan Data

Guru Yg dipilih Menampilkan Tombol Hitung Klik Tombol Hitung

Menampilkan Total Gaji Yg Harus dibayar Klik Tombol

Simpan

Menyimpan Data Gaji Klik Tombol

Keluar

Keluar Dari Form Gaji

Finish

Ketik Nama Guru Yg Akan dicari Melakukan Pengubahan Data Tampilan Tombol Ubah Klik Tombol Ubah

Menampilkan Data Gaji Yg Telah diubah Klik Data Yg

akan dihapus

Tampilan Tombol Hapus Klik Tombol Hapus

Menghapus Data Yg telah dipilih

[No] [Data Berhasil disimpan]

[Yes] [Ubah]

(27)

Gambar III.11.

Activity Diagram Menu Laporan Form Laporan Gaji Guru

act act Activ ity Menu Admin

Admin Sistem

Star

Klik Menu Laporan Menampilkan Menu

Laporan

Fork

Slip GAji Laporan Gaji

Join

Klik Submenu Laporan Gaji

Menampilkan Tombol Print Seluruh Klik Tombol Print

Seluruh

Menampilkan Keseluruhan Laporan

Gaji Yg Akan dicetak

Menampilkan Form Laporan Gaji

Fork

No. Transaksi Id Guru Nama Guru Total Gaji

Join Mengelola Laporan Gaji Akan Melakukan Print Seluruh Lap. Gaji Jika Ingin Keluar dr Form Lap. Gaji Menampilkan Tombol Keluar Klik Tombol Keluar

Keluar Dari Form Lap. Gaji

Finish [Yes]

(28)

Gambar III.12.

Activity Diagram Menu Login Absensi Guru

act act Activ ity Diagram Menu Login Guru

Sistem Guru

Star

Klik Menu Login Guru

Masukan Username & Password

Verifikasi Username & Password Kembali Ke Menu

Login Guru Masuk Ke Menu Utama Menu Transaksi Menampilkan Form

Absensi Klik Submenu Absensi

Fork

Tgl Kehadiran

Username Jam Masuk Jam Keluar

Join Tampilan Absensi Guru Menampilkan Tombol Login Tampilan Kolom Username & Password Mengisi Kolom

Username & Password Verifikasi Username & Password Kembali Ke Tombol

Login Login Berhasil

Menampilkan Tombol Keluar Menampilkan Tombol

Masuk Klik Tombol Masuk

Menampilkan Jam Masuk Absen Klik Tombol Keluar

Menampilkan Jam Keluar Absen Menampilkan Tombol Logout Klik Tombol Logout

Keluar Dari Form Absensi Finish [No] [No] [No] [Yes]

[Username Atau Password Salah !] [Username Atau Password Salah !]

(29)

3.3. Desain

3.4.1. Entity Relationship Diagram (ERD)

Gaji Guru Jurnal Golongan milik milik Milik milik milik Tunjangan Id_guru Id_gaji tanggal Id_tunjangan Id_guru nm_guru alamat Tmpt_lahir Jms_kelamin Tgl_lahir pendidikan Gaji_pokok Id_jurnal tanggal Id_gaji Id_golongan Id_golongan Tt;_gaji Potongan Id_potongan Skgk total_potongan milik Absensi waktu status_kehadiran Tgl_absensi Id_guru absensi Id_guru Id_tunjangan jabatan Akses password Nm_golongan Akun Id_akun nm_akun ket Detail Jurnal Id_jurnal Id_akun Debet Kredit Buat Koperasi Id_guru simponi absensi mengajar Ttl_tinjangan Transport Lain-;ain Id_potongan Id_golongan Hasil Gambar III.13.

(30)

3.4.2. Logical Record Structure (LRS) LRS Guru Id_guru PK Password Akses Nm_guru Alamat Jenis_kelamin Tempat Lahir Tanggal Lahir Pendidikan Id_golongan Absensi Id_absen PK Id_guru FK Tgl_absen Waktu Status_kehadiran Jurnal Id_jurnal PK Id_gaji FK tanggal Potongan Id_guru PK Id_potongan Koperasi Skgk Simponi Absendi Total_potongan Detail Jurnal Id_jurnal PK Id_akun Debit Kredit Golongan Id_golonga PK Nm_golongan Gaji Pokok Tunjangan Id_tunjangan FK Id_guru PK jabatan Jabatan Mengajar Transport lain total_tunjangan Gaji Id_gaji PK Id_guru Tanggal Id_potongan Id_tunjangan Id_golongan Total_gaji Akun Id_akun PK Nm_akun Keterangan Gambar III.14.

(31)

3.4.3. Spesifikasi File

a. Spesifikasi File Data Guru Nama Database : Gaji

Nama File : Guru

Tipe File : Master

Akses File : Random

Panjang Record : 125 Karakter

Field Key : id_Guru

Tabel III.5. Spesifikasi File Data Guru

No Elemen Data Akronim Tipe Panjang Keterangan

1 Identitas guru Id_guru PK varchar 10 Primary Key

2 Password Password varchar 15

3 Akes Akes enum

4 Nama guru Nm_guru varchar 25

5 Alamat Alamat text

6 Tempat lahir Tmp_lahir varchar 15

7 Tanggal lahir Tgl_lahir date

8 Jenis kelamin Jenis_kelamin varchar 15

9 Pendidikan Pendidikan enum

10 Identitas golongan id_golongan varchar 20

b. Spesifikasi File Data Absen Nama Database : Gaji

Nama File : Absen

Tipe File : Transaksi

Akses File : Random

Panjang Record : 30 Karakter

(32)

Tabel III.6.

Spesifikasi File Data Absen

No Elemen Data Akronim Tipe Panjang Keterangan

1 Identitas absensi id_absensi int 20 Primary Key

2 Identitas guru id_guru int 10

3 Tanggal masuk Tanggal_masuk date

4 Waktu masuk Waktu_masuk time

5 Waktu keluar Waktu_keluar time

c. Spesifikasi File Data Gaji Nama Database : Gaji

Nama File : Gaji

Tipe File : Transaksi

Akses File : Random

Panjang Record : 90 Karakter

Field Key : id_gaji

Tabel III.7.

Spesifikasi File Data Gaji

No Elemen Data Akronim Tipe Panjang Keterangan

1 Identitas gaji Id_gaji varchar 15 Primary Key

2 Identitas guru id_guru varchar 10

3 Identitas potongan id_potongan varchar 15

4 Identitas tunjangan id_tunjangan varchar 15

5 Identitas golongan id_golongan varchar 15

6 Total gaji total int 20

7 Tanggal date

d. Spesifikasi File Data Golongan Nama Database : Gaji

Nama File : Golongan

Tipe File : Master

Akses File : Random

Panjang Record : 30 Karakter

(33)

Tabel III.8.

Spesifikasi File Data Golongan

No Elemen Data Akronim Tipe Panjang Keterangan 1 identitas golongan id_golongan varchar 10 Primary Key

2 nama golongan nm_golongan varchar 10

3 gaji pokok gaji_pokok Int 10

e. Spesifikasi File Data Tunjangan Nama Database : Gaji

Nama File : Tunjangan

Tipe File : Master

Akses File : Random

Panjang Record : 85 Karakter

Field Key : id_Tunjangan

Tabel III.9.

Spesifikasi File Data Tunjangan

No Elemen Data Akronim Tipe Panjang Keterangan 1 identitas tunjangan id_tunjangan varchar 10 Primary Key

2 identitas guru id_guru varchar 10

3 jabatan jabatan int 10

4 mengajar mengajar int 10

5 transport transport int 10

6 lain-lain lain int 10

7 total tunjangan total_tunjangan int 15

f. Spesifikasi File Data Potongan

Nama Database : Gaji

Nama File : Potongan

Tipe File : Master

Akses File : Random

Panjang Record : 75 Karakter

(34)

Tabel III.10.

Spesifikasi File Data Potongan

No Elemen Data Akronim Tipe Panjang Keterangan 1 identitas potongan id_potongan varchar 10 Primary Key

2 identitas guru id_guru varchar 10

3 koperasi koperasi int 10

4 SKGK SKGK int 10

5 simponi simponi int 10

6 absensi id_absen int 10

7 total potongan total_potongan int 15

g. Spesifikasi File Data Jurnal Nama Database : Gaji

Nama File : Jurnal Tipe

File : Transaksi

Akses File : Random

Panjang Record : 20 Karakter

Field Key : id_ Jurnal

Tabel III.11.

Spesifikasi File Data Jurnal

No Elemen Data Akronim Tipe Panjang Keterangan

1 Identitas jurnal id_jurnal varchar 10 Primary Key

2 Identitas gaji id_gaji varchar 10

3 Tanggal nm_akun date

h. Spesifikasi File Detail Jurnal Nama Database : Gaji

Nama File : Akun

Tipe File : Transaksi

Akses File : Random

Panjang Record : 50 Karakter

(35)

Tabel III.12.

Spesifikasi File Detail Jurnal

No Elemen Data Akronim Tipe Panjang Keterangan

1 Identitas jurnal id_jurnal varchar 15 Primary Key

2 Identitas akun id_akun varchar 15

3 Debit Debit int 10

4 Kredit Kredit int 10

i. Spesifikasi File Data Akun

Nama Database : Gaji

Nama File : Akun

Tipe File : Master

Akses File : Random

Panjang Record : 50 Karakter

Field Key : id_ Akun

Tabel III.13.

Spesifikasi File Data Akun

No Elemen Data Akronim Tipe Panjang Keterangan

1 identitas akun id_akun varchar 10 Primary Key

2 nama akun nm_akun varchar 20

(36)

3.4.4. Sequence Diagram

Gambar III.15.

Sequence Diagram Penggajian Guru

sd Squen Diagram Penggaj ian

Guru Admin

FormLogin Control Login Menu Utama Master Transaksi Laporan

Dapat Mengelola Semua Menu Transaksi() Dapat Mengelola Semua Menu Master()

Melihat Bukti Hadir() Username & Password() Masukan Username & Password()

Username & Password() Masukan Username & Password()

(37)

3.4.5. Deployment Diagram

Gambar III.16.

Deployment Diagram Laporan Gaji Guru

deployment Deployment Model

main «device» A <<Activ eXControl>> NetBeans 8.2 «device» Database <<Application>> Program Laporan Penggaj ian <<DBMS>> MY SQL <<Database>> db.SistemPenggaj ian

(38)

3.4.6. User Interface

Gambar III.17. User Interface Menu Login

(39)

Gambar III.18. User Interface Menu Master

Gambar III.19.

(40)

Gambar III.20.

User Interface Form Data Golongan

Gambar III..21.

(41)

Gambar III.22.

(42)

Gambar III.23.

(43)

Gambar III.24.

User Interface Menu Transaksi

Gambar III.25.

(44)

Gambar III.26. User Interface Form Absensi

Gambar III.27. User Interface Form Gaji

(45)

Gambar III.28. User Interface Form Jurnal

Gambar III.29.

(46)

Gambar III.30.

User Interface Form Slip Gaji

Gambar III.31.

(47)

Gambar III.32. User Interface Logout

3.4. Implementasi

3.5.1. Code Generation A. Form Gaji

/*

* To change this license header, choose License Headers in Project Properties.

* To change this template file, choose Tools | Templates * and open the template in the editor.

*/ package transaksi; import Koneksi.koneksidb; import com.sun.glass.events.KeyEvent; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import java.text.SimpleDateFormat; import java.util.Date; import javax.swing.JOptionPane; import javax.swing.table.DefaultTableModel; /**

(48)

*

* @author lenovo */

public class gaji extends javax.swing.JInternalFrame {

Connection conn = koneksidb.Conn(); Statement st;

ResultSet rs;

private DefaultTableModel tabmode; private String tgl = null;

SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd"); Date dateValue = null;

public String idguru, namaguru, namagolongan, gajipokok, idtunjangan , jumlahtunjangan, idpotongan, jumlahpotongan;

public String getIdGuru() { return idguru;

}

public String getNmGuru() { return namaguru;

}

public String getNmGol() { return namagolongan; }

public String getPokok() { return gajipokok; }

public String idTunjangan() { return idtunjangan;

}

public String getTunjangan() { return jumlahtunjangan; }

public String idPotongan() { return idpotongan;

}

public String getPotongan() { return jumlahpotongan; }

(49)

public void itemTerpilih(){

gaji_data dtgj = new gaji_data(); dtgj.gj = this; id_guru.setText(idguru); nama_guru.setText(namaguru); nama_golongan.setText(namagolongan); gaji_pokok.setText(gajipokok); id_tuj.setText(idtunjangan); jumlah_tunjangan.setText(jumlahtunjangan); id_pot.setText(idpotongan); jumlah_potongan.setText(jumlahpotongan); }

private void tampil(){

DefaultTableModel model = new DefaultTableModel(); model.addColumn("ID Gaji"); model.addColumn("Tanggal"); model.addColumn("ID Guru"); model.addColumn("ID Golongan"); model.addColumn("ID Tunjangan"); model.addColumn("ID Potongan"); model.addColumn("Total Gaji"); try{

String sql = " select * from gajian"; st = conn.createStatement(); rs = st.executeQuery(sql); while(rs.next()){ model.addRow(new Object[]{ rs.getString("id_gaji"), rs.getString("tanggal"), rs.getString("id_guru"), rs.getString("id_golongan"), rs.getString("id_tunjangan"), rs.getString("id_potongan"), rs.getString("total_gaji") }); } tdata.setModel(model); }catch (Exception e){

System.out.println(e.getMessage()); }

}

private void autoid(){ try {

String sql = "SELECT * FROM gajian order by id_gaji desc"; st = conn.createStatement();

rs = st.executeQuery(sql); if (rs.next()) {

(50)

String id_guru = rs.getString("id_gaji").substring(2); String AN = "" + (Integer.parseInt(id_guru) + 1); String Nol = ""; if(AN.length()==1) {Nol = "00"; }else if(AN.length()==2){ Nol = "0"; }else if(AN.length()==3){ Nol = ""; }

tid.setText("GJ" + Nol + AN);//sesuaikan dengan variable namenya } else {

tid.setText("GJ001");//sesuaikan dengan variable namenya } } catch (Exception e) { JOptionPane.showMessageDialog(null, e); } }

private void simpan(){ try{

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

JOptionPane.showMessageDialog(null, "ID Gaji Tidak Boleh Kosong");

tid.requestFocus();

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

JOptionPane.showMessageDialog(null, "Tanggal Tidak Boleh

Kosong");

tanggal.requestFocus();

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

JOptionPane.showMessageDialog(null, "ID Guru Tidak Boleh Kosong");

id_guru.requestFocus();

}else if (nama_golongan.getText().isEmpty()) {

JOptionPane.showMessageDialog(null, "Nama Golongan Tidak Boleh Kosong");

nama_golongan.requestFocus(); }else if (id_guru.getText().isEmpty()) {

JOptionPane.showMessageDialog(null, "ID Guru Tidak Boleh Kosong");

id_guru.requestFocus();

}else if (nama_guru.getText().isEmpty()) {

JOptionPane.showMessageDialog(null, "Nama Guru Tidak Boleh Kosong");

nama_guru.requestFocus();

(51)

JOptionPane.showMessageDialog(null, "Jumlah Tunjangan Tidak Boleh Kosong");

jumlah_tunjangan.requestFocus();

}else if (jumlah_potongan.getText().isEmpty()) {

JOptionPane.showMessageDialog(null, "Jumlah Potongan Tidak Boleh Kosong");

jumlah_potongan.requestFocus(); }else if (total_gaji.getText().isEmpty()) {

JOptionPane.showMessageDialog(null, "Total Gaji Tidak Boleh Kosong");

total_gaji.requestFocus(); }else{

String sql = "insert into gajian values

('"+tid.getText()+"','"+tgl+"','"+id_guru.getText()+"',

'"+nama_golongan.getText()+"', '"+id_tuj.getText()+"'

,'"+id_pot.getText()+"','"+total_gaji.getText()+"')"; st = conn.createStatement();

st.executeUpdate(sql);

JOptionPane.showMessageDialog(null, "Data Berhasil di Simpan"); tampil();

bersih(); }

}catch(Exception e){

JOptionPane.showMessageDialog(null, "ID Guru Sudah Di Gunakan Sebelumnya"); bersih(); cariID.requestFocus(); } }

private void hapus(){ try{

String sql = "delete from gajian where

id_guru='"+id_guru.getText()+"'"; st = conn.createStatement(); st.executeUpdate(sql);

JOptionPane.showMessageDialog(null, "Data Berhasil di Hapus"); bersih(); tampil(); }catch(Exception e){ System.out.println(e.getMessage()); } }

private void non_aktif(){ total_gaji.setEnabled(false);

(52)

tid.setEnabled(false); tambah.setEnabled(false); cariID.setEnabled(false); tanggal.setEnabled(false); cari.setEnabled(false); hitung.setEnabled(false); simpan.setEnabled(false); id_guru.setEnabled(false); nama_guru.setEnabled(false); nama_golongan.setEnabled(false); gaji_pokok.setEnabled(false); id_tuj.setEnabled(false); id_pot.setEnabled(false); jumlah_potongan.setEnabled(false); jumlah_tunjangan.setEnabled(false); ubah.setEnabled(false); hapus.setEnabled(false); }

private void aktif(){ ubah.setEnabled(true); hapus.setEnabled(true); total_gaji.setEnabled(true); tid.setEnabled(true); tambah.setEnabled(true); cariID.setEnabled(true); tanggal.setEnabled(true); cari.setEnabled(true); hitung.setEnabled(true); simpan.setEnabled(true); id_guru.setEnabled(true); nama_guru.setEnabled(true); nama_golongan.setEnabled(true); gaji_pokok.setEnabled(true); id_tuj.setEnabled(true); id_pot.setEnabled(true); jumlah_potongan.setEnabled(true); jumlah_tunjangan.setEnabled(true); }

private void bersih(){ total_gaji.setText(""); tid.setText(""); cari.setText(""); Date dateValue = null; try {

tanggal.setDate(dateValue); } catch (Exception e) {

(53)

} id_guru.setText(""); nama_guru.setText(""); id_pot.setText(""); jumlah_potongan.setText(""); id_tuj.setText(""); jumlah_tunjangan.setText(""); nama_golongan.setText(""); gaji_pokok.setText(""); } public gaji(){ initComponents(); non_aktif(); } /**

* This method is called from within the constructor to initialize the form. * WARNING: Do NOT modify this code. The content of this method is always

* regenerated by the Form Editor. */

@SuppressWarnings("unchecked")

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

jScrollPane2 = new javax.swing.JScrollPane(); jPanel1 = new javax.swing.JPanel();

jScrollPane1 = new javax.swing.JScrollPane(); tdata = new javax.swing.JTable();

jLabel1 = new javax.swing.JLabel(); tambah = new javax.swing.JButton(); total_gaji = new javax.swing.JTextField(); tid = new javax.swing.JTextField(); jLabel11 = new javax.swing.JLabel(); simpan = new javax.swing.JButton(); hitung = new javax.swing.JButton(); jLabel19 = new javax.swing.JLabel(); jLabel20 = new javax.swing.JLabel(); jLabel21 = new javax.swing.JLabel(); jLabel16 = new javax.swing.JLabel(); keluar1 = new javax.swing.JButton();

tanggal = new com.toedter.calendar.JDateChooser(); jLabel12 = new javax.swing.JLabel();

jLabel14 = new javax.swing.JLabel(); jLabel3 = new javax.swing.JLabel(); cari = new javax.swing.JTextField();

(54)

jLabel26 = new javax.swing.JLabel();

nama_golongan = new javax.swing.JTextField(); gaji_pokok = new javax.swing.JTextField(); jLabel15 = new javax.swing.JLabel();

jumlah_tunjangan = new javax.swing.JTextField(); jLabel17 = new javax.swing.JLabel();

jLabel18 = new javax.swing.JLabel(); jLabel22 = new javax.swing.JLabel();

jumlah_potongan = new javax.swing.JTextField(); jLabel23 = new javax.swing.JLabel();

jLabel28 = new javax.swing.JLabel(); jLabel29 = new javax.swing.JLabel(); jLabel24 = new javax.swing.JLabel(); id_guru = new javax.swing.JTextField(); jLabel25 = new javax.swing.JLabel(); nama_guru = new javax.swing.JTextField(); jLabel27 = new javax.swing.JLabel(); cariID = new javax.swing.JButton(); id_tuj = new javax.swing.JTextField(); id_pot = new javax.swing.JTextField(); bersih = new javax.swing.JButton(); ubah = new javax.swing.JButton(); hapus = new javax.swing.JButton();

setBackground(new java.awt.Color(255, 255, 255)); setBorder(null); setMaximizable(true); setResizable(true); addInternalFrameListener(new javax.swing.event.InternalFrameListener() { public void internalFrameActivated(javax.swing.event.InternalFrameEvent evt) { } public void internalFrameClosed(javax.swing.event.InternalFrameEvent evt) { } public void internalFrameClosing(javax.swing.event.InternalFrameEvent evt) { } public void internalFrameDeactivated(javax.swing.event.InternalFrameEvent evt) { } public void internalFrameDeiconified(javax.swing.event.InternalFrameEvent evt) { } public void internalFrameIconified(javax.swing.event.InternalFrameEvent evt) { }

(55)

public void internalFrameOpened(javax.swing.event.InternalFrameEvent evt) { formInternalFrameOpened(evt); } }); tdata.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] {

"ID Gaji", "Tanggal", "ID Guru", "ID Golongan", "ID Tunjangan", "ID Potongan", "Total Gaji"

} ));

tdata.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { tdataMouseClicked(evt);

} });

jScrollPane1.setViewportView(tdata);

jLabel1.setFont(new java.awt.Font("Arial", 1, 24)); // NOI18N jLabel1.setText("Selamat datang di Form Gaji Bersih"); tambah.setBackground(new java.awt.Color(255, 255, 255)); tambah.setIcon(new javax.swing.ImageIcon(getClass().getResource("/images/tambah.PNG"))); // NOI18N tambah.setBorder(null); tambah.setBorderPainted(false); tambah.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { tambahActionPerformed(evt);

} });

total_gaji.setEditable(false);

total_gaji.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N total_gaji.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { total_gajiActionPerformed(evt);

} });

tid.setEditable(false);

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

(56)

jLabel11.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel11.setText("ID Gaji :");

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

simpan.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N simpan.setIcon(new javax.swing.ImageIcon(getClass().getResource("/images/simpan.png"))); // NOI18N simpan.setText("Simpan"); simpan.setBorder(null); simpan.setBorderPainted(false); simpan.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { simpanActionPerformed(evt);

} });

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

hitung.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N hitung.setIcon(new

javax.swing.ImageIcon(getClass().getResource("/images/potongan.png"))); // NOI18N

hitung.setText("Hitung");

hitung.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { hitungActionPerformed(evt);

} });

jLabel19.setFont(new java.awt.Font("Courier New", 3, 18)); // NOI18N jLabel19.setText("Total Gaji Yang dibayar :");

jLabel20.setFont(new java.awt.Font("Courier New", 3, 18)); // NOI18N jLabel20.setText("PENERIMAAN");

jLabel21.setFont(new java.awt.Font("Courier New", 3, 18)); // NOI18N jLabel21.setText("POTONGAN");

jLabel16.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel16.setText("Rp.");

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

keluar1.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N keluar1.setIcon(new

javax.swing.ImageIcon(getClass().getResource("/images/close.PNG"))); // NOI18N

(57)

keluar1.setBorder(null);

keluar1.setBorderPainted(false);

keluar1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { keluar1ActionPerformed(evt);

} });

tanggal.addPropertyChangeListener(new java.beans.PropertyChangeListener() {

public void propertyChange(java.beans.PropertyChangeEvent evt) { tanggalPropertyChange(evt);

} });

jLabel12.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel12.setText("Tanggal :");

jLabel14.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel14.setText("ID Golongan :");

jLabel3.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel3.setText("Pencarian Data di Tabel :");

cari.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N cari.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { cariActionPerformed(evt);

} });

cari.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { cariKeyPressed(evt);

} });

jLabel26.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel26.setText("ID Potongan :");

nama_golongan.setEditable(false);

nama_golongan.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N

nama_golongan.addActionListener(new java.awt.event.ActionListener() {

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

} });

(58)

gaji_pokok.setEditable(false);

gaji_pokok.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N

gaji_pokok.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { gaji_pokokActionPerformed(evt);

} });

jLabel15.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel15.setText("ID Tunjangan :");

jumlah_tunjangan.setEditable(false);

jumlah_tunjangan.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N

jumlah_tunjangan.addActionListener(new java.awt.event.ActionListener() {

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

} });

jLabel17.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel17.setText("Gaji Pokok");

jLabel18.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel18.setText("Jumlah Tunjangan");

jLabel22.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel22.setText("Jumlah Potongan");

jumlah_potongan.setEditable(false);

jumlah_potongan.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N

jumlah_potongan.addActionListener(new java.awt.event.ActionListener() {

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

} });

jLabel23.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel23.setText("Rp.");

jLabel28.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel28.setText("Rp.");

(59)

jLabel29.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel29.setText("Rp.");

jLabel24.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel24.setText("ID Guru :");

id_guru.setEditable(false);

id_guru.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N id_guru.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { id_guruActionPerformed(evt);

} });

jLabel25.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel25.setText("Cari ID Guru :");

nama_guru.setEditable(false);

nama_guru.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N

nama_guru.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { nama_guruActionPerformed(evt);

} });

jLabel27.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N jLabel27.setText("Nama Guru");

cariID.setFont(new java.awt.Font("Courier New", 0, 14)); // NOI18N cariID.setText("-- Pilih --");

cariID.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { cariIDActionPerformed(evt);

} });

id_tuj.setEditable(false);

id_tuj.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N id_tuj.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { id_tujActionPerformed(evt);

} });

id_pot.setEditable(false);

id_pot.setFont(new java.awt.Font("Courier New", 0, 12)); // NOI18N id_pot.addActionListener(new java.awt.event.ActionListener() {

(60)

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

} });

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

bersih.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N bersih.setText("BERSIH");

bersih.setBorder(null);

bersih.setBorderPainted(false);

bersih.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { bersihActionPerformed(evt);

} });

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

ubah.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N ubah.setIcon(new javax.swing.ImageIcon(getClass().getResource("/images/ubah.PNG"))); // NOI18N ubah.setText("Ubah"); ubah.setBorder(null); ubah.setBorderPainted(false); ubah.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { ubahActionPerformed(evt);

} });

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

hapus.setFont(new java.awt.Font("Courier New", 1, 12)); // NOI18N hapus.setIcon(new javax.swing.ImageIcon(getClass().getResource("/images/hapus.JPG"))); // NOI18N hapus.setText("Hapus"); hapus.setBorder(null); hapus.setBorderPainted(false); hapus.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { hapusActionPerformed(evt);

} });

javax.swing.GroupLayout jPanel1Layout = new

javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout.setHorizontalGroup(

(61)

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING) .addGroup(jPanel1Layout.createSequentialGroup() .addContainerGap() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Ali gnment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addComponent(jLabel11) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELA TED) .addComponent(tid, javax.swing.GroupLayout.PREFERRED_SIZE, 77, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(2, 2, 2) .addComponent(tambah) .addGap(34, 34, 34) .addComponent(bersih, javax.swing.GroupLayout.PREFERRED_SIZE, 102, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(153, 153, 153) .addComponent(jLabel3) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELA TED) .addComponent(cari, javax.swing.GroupLayout.PREFERRED_SIZE, 308, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(0, 0, Short.MAX_VALUE)) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Ali gnment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Ali gnment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(136, 136, 136) .addComponent(id_guru)) .addComponent(jLabel24)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELA TED)

(62)

.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Ali gnment.LEADING) .addComponent(nama_guru, javax.swing.GroupLayout.PREFERRED_SIZE, 215, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel27))) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Ali gnment.LEADING, false) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(27, 27, 27) .addComponent(jLabel19) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELA TED) .addComponent(hitung, javax.swing.GroupLayout.PREFERRED_SIZE, 132, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(113, 113, 113) .addComponent(jLabel16) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED ) .addComponent(total_gaji)) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Ali gnment.TRAILING) .addComponent(jLabel20) .addComponent(jLabel14)) .addGap(10, 10, 10) .addComponent(nama_golongan, javax.swing.GroupLayout.PREFERRED_SIZE, 101, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELA TED) .addComponent(jLabel23) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED ) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Ali gnment.LEADING) .addComponent(jLabel17)

Gambar

Gambar III.1.
Gambar III.3.
Gambar III.4.
Gambar III.5.
+7

Referensi

Dokumen terkait

Mengetikkan salah satu kondisi salah pada username atau password kemudian klik tombol login Username: admin Password: 123 Sistem akan menolak akses user dan menampilkan

Mengetikkan Username dan Password dengan data yang benar kemudian klik tombol

Mengetikkan user ID dan password tidak diisi atau kosong kemudian klik tombol login Username: [email protected] Password : (kosong) Sistem akan menolak akses user dan

Sesuai harapan Valid 3 Mengetikkan User id dan password dengan data yang benar kemudian Ketika level dalam kondisi salah klik tombol login User id : admin (benar)

Mengetikkan salah satu kondisi kosong pada email atau password kemudian klik tombol login Email : (kosong) Password : customer (benar) Sistem akan menolak akses

Mengetikkan username dan password tidak diisi atau kosong kemudian klik tombol login Username: agung Password : (kosong) Sistem akan menolak akses user dan

Halaman Data Admin adalah halaman di mana admin bisa membuat admin baru atau user baru, menghapus, mengedit password atau nama saat login, berguna untuk membantu admin

Mengetikkan salah satu kondisi salah pada username atau password kemudian klik tombol login Username : eli (benar) Password: eli (salah) Sistem akan menolak akses