Menu Browse adalah menu yang terdiri dari beberapa modul pencarian data, sebagai berikut.
1. Modul Browse Data Pendaftaran Santri Baru
Modul ini berfungsi untuk melakukan pencarian data pendaftaran santri baru berdasarkan kriteria yang dipilih.
Gambar III.8 Menu Browse Data Pendaftaran Santri Baru
Berikut adalah cara pengoperasian modul ini :
a. Pilih Kriteria Pencarian pada bagian pencarian data. Kemudian masukan kata kunci pencarian, dan tekan tombol Enter pada keyboard.
b. Jika data yang dicari berdasarkan kriteria yang dipilih tersebut ada, maka
akan tampil di grid Data Santri Baru, Data Biaya Pendaftaran Sudah Lunas,
dan Data Biaya Pendaftaran Belum Lunas (jika ada yg belum dilunasi).
10
c. Jika data yang dicari berdasarkan kriteria yang dipilih tersebut tidak ada, maka akan tampil kotak pesan, “Data Tidak Ditemukan..!”, kemudian browse data akan direfresh.
d. Klik tombol Tutup untuk keluar dari Menu Browse Data Pendaftaran Santri Baru.
2. Modul Browse Biodata Santri Baru
Modul ini berfungsi untuk melakukan pencarian biodata santri baru berdasarkan kriteria yang dipilih.
Gambar III.9 Menu Browse Biodata Santri Baru
Berikut adalah cara pengoperasian modul ini :
a. Pilih Kriteria Pencarian pada bagian pencarian data. Kemudian masukan kata kunci pencarian, dan tekan tombol Enter pada keyboard.
b. Jika data yang dicari berdasarkan kriteria yang dipilih tersebut ada, maka akan tampil di grid Biodata Santri Baru.
c. Jika data yang dicari berdasarkan kriteria yang dipilih tersebut tidak ada, maka akan tampil kotak pesan, “Data Tidak Ditemukan..!”, kemudian browse data akan direfresh.
d. Klik tombol Tutup untuk keluar dari Menu Browse Biodata Santri Baru.
11
3. Modul Browse Data Hasil Test Pengelompokan
Modul ini berfungsi untuk melakukan pencarian data hasil test pengelompokan (Mastasa) berdasarkan kriteria yang dipilih.
Gambar III.10 Menu Browse Data Hasil Test Pengelompokan
Berikut adalah cara pengoperasian modul ini :
a. Pilih Kriteria Pencarian pada bagian pencarian data. Kemudian masukan kata kunci pencarian, dan tekan tombol Enter pada keyboard.
b. Jika data yang dicari berdasarkan kriteria yang dipilih tersebut ada, maka akan tampil di grid Data Hasil Test Pengelompokan.
c. Jika data yang dicari berdasarkan kriteria yang dipilih tersebut tidak ada, maka akan tampil kotak pesan, “Data Tidak Ditemukan..!”, kemudian browse data akan direfresh.
d. Tombol Awal, Sebelum, Sesudah dan Akhir digunakan untuk navigasi data hasil test pengelompokan.
e. Klik tombol Tutup untuk keluar dari Menu Browse Data Hasil Test
Pengelompokan.
12 4. Modul Browse Data Seragam Santri Baru
Modul ini berfungsi untuk melakukan pencarian data hasil pengukuran seragam santri baru berdasarkan kriteria yang dipilih.
Gambar III.11 Menu Browse Data Seragam Santri Baru
Berikut adalah cara pengoperasian modul ini :
a. Pilih Kriteria Pencarian pada bagian pencarian data. Kemudian masukan kata kunci pencarian, dan tekan tombol Enter pada keyboard.
b. Jika data yang dicari berdasarkan kriteria yang dipilih tersebut ada, maka akan tampil di grid Data Seragam Santri Baru.
c. Jika data yang dicari berdasarkan kriteria yang dipilih tersebut tidak ada, maka akan tampil kotak pesan, “Data Tidak Ditemukan..!”, kemudian browse data akan direfresh.
d. Tombol Awal, Sebelum, Sesudah dan Akhir digunakan untuk navigasi data seragam santri baru.
e. Klik tombol Tutup untuk keluar dari Menu Browse Data Seragam Santri
Baru.
13 G. Menu Cetak
Menu Cetak adalah menu yang terdiri dari beberapa modul pencetakan data, diantaranya :
1. Modul Cetak Name Tag Santri Baru
Modul ini berfungsi untuk melakukan pencetakan name tag santri baru berdasarkan kriteria pencetakan yang dipilih.
Gambar III.12 Menu Cetak Name Tag Santri Baru
Berikut adalah cara pengoperasian modul ini :
a. Pilih menu cetak di Menu Utama, pilih Cetak Name Tag Santri Baru,
kemudian akan tampil Form Cetak Name Tag Santri Baru.
14
b. Pilih Kriteria Pencetakan (Per Santri atau Seluruh Santri). Tombol Preview untuk melihat tampilan sebelum dicetak ke printer. Tombol Print untuk langsung cetak ke printer. Tombol Export untuk mengkonversi tampilan cetakan program ke file word (.doc).
c. Jika memilih cetak per santri, maka setelah klik salah satu tombol (Preview, Print, atau Export) akan tampil kotak filter input No. Induk Santri.
d. Masukan NIS yang akan dicetak. Jika data ada, maka akan tampil Name Tag Santri Baru yang sudah dipilih. Jika data tidak ada, maka akan tampil kotak pesan, “Data tidak ditemukan..!”.
e. Klik simbol X (Silang) di kanan atas untuk keluar dari Menu Cetak Name Tag Santri Baru.
2. Modul Cetak Hasil Test Mastasa
Modul ini berfungsi untuk melakukan pencetakan hasil test pengelompokan santri baru berdasarkan kriteria pencetakan yang dipilih.
Gambar III.13 Menu Cetak Hasil Test Pengelompokan Santri Baru (Mastasa)
Berikut adalah cara pengoperasian modul ini :
a. Pilih menu cetak di Menu Utama, pilih Cetak Hasil Test Mastasa, kemudian
akan tampil Form Cetak Hasil Test Mastasa.
15
b. Pilih Kriteria Pencetakan (Per Santri atau Seluruh Santri). Tombol Preview untuk melihat tampilan sebelum dicetak ke printer. Tombol Print untuk langsung cetak ke printer. Tombol Export untuk mengkonversi tampilan cetakan program ke file word (.doc).
c. Jika memilih cetak per santri, maka setelah klik salah satu tombol (Preview, Print, atau Export) akan tampil kotak filter input No. Induk Santri.
d. Masukan NIS yang akan dicetak. Jika data ada, maka akan tampil Hasil Test Mastasa yang sudah dipilih. Jika data tidak ada, maka akan tampil kotak pesan, “Data tidak ditemukan..!”.
e. Klik simbol X (Silang) di kanan atas untuk keluar dari Menu Cetak Hasil Mastasa.
3. Modul Cetak Laporan Biaya Pendaftaran
Modul ini berfungsi untuk melakukan pencetakan laporan biaya pendaftaran santri baru berdasarkan kriteria pencetakan yang dipilih
Gambar III.14 Menu Cetak Laporan Biaya Pendaftaran Santri Baru
16 Berikut adalah cara pengoperasian modul ini :
a. Pilih menu cetak di Menu Utama, pilih Cetak Laporan Biaya Pendaftaran Santri Baru, kemudian akan tampil Laporan Biaya Pendaftaran Santri Baru.
b. Klik simbol X (Silang) di kanan atas untuk keluar dari Menu Cetak Laporan Biaya Pendaftaran Santri Baru.
H. Menu Khusus
Menu Khusus adalah menu yang terdiri dari beberapa modul khusus, sebagai berikut.
1. Modul Jenis-Jenis Biaya Pengajian
Modul ini berfungsi untuk mengelola master data jenis-jenis biaya apa saja yang harus dibayarkan oleh calon santri baru di setiap awal tahun ajaran.
Gambar III.15 Menu Jenis – Jenis Pengajian
Berikut adalah cara pengoperasian modul ini :
a. Klik tombol Tambah ( ), kemudian pilih Tahun Mengaji, Kelompok Usia, Jenis Pembayaran dan Isikan jumlah nominal.
b. Klik tombol Simpan ( ) untuk menyimpan data, dan klik tombol Edit ( ) untuk melakukan update data.
c. Klik tombol Hapus ( ) untuk melakukan penghapusan data.
d. Klik tombol Refresh untuk merefresh data dan tombol Tutup untuk keluar
dari Menu Jenis-Jenis Biaya Pengajian.
17
2. Modul Pelunasan Biaya Pendaftaran Santri Baru
Modul ini berfungsi untuk memproses pelunasan biaya pendaftaran santri baru, bagi calon santri yang belum membayar penuh semua biaya di awal pendaftaran.
Gambar III.16 Menu Pelunasan Biaya Pendaftaran Santri Baru
Berikut adalah cara pengoperasian modul ini :
a. Klik tombol Tambah untuk melakukan transaksi pelunasan biaya pendaftaran santri baru.
b. Masukan No. Induk Santri. Jika data pembayaran sebelumnya ada, maka akan tampil data santri, kelengkapan persyaratan dan jenis biaya yang belum dibayarkan.
c. Proses pembayaran pada bagian Biaya PSB yang belum lunas. Kemudian klik tombol Simpan untuk menyimpan data pelunasan biaya atau tombol Batal untuk membatalkan proses pelunasan biaya.
d. Klik tombol Tutup untuk keluar dari Menu Pelunasan Biaya Pendaftaran Santri Baru
3. Modul Manajemen User
Modul ini berfungsi untuk mengelola data user yang berhak menggunakan
aplikasi SISFO PSB TPQ Nurul Huda.
18
Gambar III.17 Menu Manajemen User
Berikut adalah cara pengoperasian modul ini :
a. Klik tombol Tambah ( ) untuk memasukan data user baru.
Masukan data user baru, pilih status user, pilih menu akses user sesuai akses yang akan diberikan oleh administrator.
b. Klik tombol Simpan ( ) untuk menyimpan data user baru.
c. Klik tombol Hapus ( ) untuk melakukan penghapusan data user.
d. Klik tombol Refresh ( ) untuk merefresh data dan tombol Tutup untuk keluar dari Menu Manajemen User.
IV. SOURCE CODE A. Modul Koneksi
Public Ado_PSB As New ADODB.Connection Public Rs_User As New ADODB.Recordset Public Rs_Santri As New ADODB.Recordset Public Rs_Kwitansi As New ADODB.Recordset Public konek As String
Sub Buka_Koneksi()
konek = "Driver={MySQL ODBC 3.51 Driver};" & _ "Server=localhost;" & _
"Uid=xxxxxxxx;Pwd=xxxxxxxx;" & _ "Database=nurul_huda;" & _ "Option=NUM"
Ado_PSB.ConnectionString = konek Ado_PSB.CursorLocation = adUseClient Ado_PSB.Open
End Sub
19
Sub Tutup_Koneksi() Ado_PSB.Close
Set Ado_PSB = Nothing Exit Sub
End Sub
B. Modul Tampilan
Sub MenuAktif()
MdiMenuUtama.Toolbar1.Enabled = True End Sub
Sub MenuTidakAktif()
MdiMenuUtama.Toolbar1.Enabled = False End Sub
Function Num2Word(ByVal n As Currency) As String Dim Satuan As Variant
Satuan = Array("", "Satu ", "Dua ", "Tiga ", "Empat ", "Lima ",
"Enam ", "Tujuh ", "Delapan ", "Sembilan ", "Sepuluh ", "Sebelas
")
Select Case n Case 0 To 11
Num2Word = " " + Satuan(Fix(n)) Case 12 To 19
Num2Word = Num2Word(n Mod 10) + "Belas "
Case 20 To 99
Num2Word = Num2Word(Fix(n / 10)) + "Puluh" + Num2Word(n Mod 10)
Case 100 To 199
Num2Word = " Seratus" + Num2Word(n - 100) Case 200 To 999
Num2Word = Num2Word(Fix(n / 100)) + "Ratus" + Num2Word(n Mod 100)
Case 1000 To 1999
Num2Word = " Seribu" + Num2Word(n - 1000) Case 2000 To 999999
Num2Word = Num2Word(Fix(n / 1000)) + "Ribu" + Num2Word(n Mod 1000)
Case 1000000 To 999999999
Num2Word = Num2Word(Fix(n / 1000000)) + "Juta" + Num2Word(n Mod 1000000)
Case Else
Num2Word = Num2Word(Fix(n / 1000000000)) + "Milyar" + Num2Word(n Mod 1000000000)
End Select End Function
Public Sub TglIndonesia(TglObj As Date, HasilTgl As Object) Dim hari, bulan, tahun As String
HasilTgl = ""
hari = ""
bulan = ""
tahun = ""
hari = Format(TglObj, "dd") bulan = Format(TglObj, "MM") tahun = Format(TglObj, "yyyy")
Select Case bulan Case "01"
bulan = "Januari"
Case "02"
bulan = "Februari"
20
Case "03"
bulan = "Maret"
Case "04"
bulan = "April"
Case "05"
bulan = "Mei"
Case "06"
bulan = "Juni"
Case "07"
bulan = "Juli"
Case "08"
bulan = "Agustus"
Case "09"
bulan = "September"
Case "10"
bulan = "Oktober"
Case "11"
bulan = "Nopember"
Case "12"
bulan = "Desember"
End Select
HasilTgl = hari & " " & bulan & " " & tahun End Sub
Sub Cek_Angka(txtInputbox As Object, KeyCode As Integer)
If ((KeyCode >= 48 And KeyCode <= 57) Or (KeyCode >= 96 And KeyCode < 106) Or KeyCode = 8 Or KeyCode = 36.37 Or KeyCode = 38.39 Or KeyCode = 46) Then
txtInputbox.Locked = False Else
txtInputbox.Locked = True End If
End Sub
Sub Cek_Huruf(txtInputbox As Object, KeyAscii As Integer) KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub
C. Form Login
Dim a As Byte Private Sub Masuk() a = a + 1
If 3 - a = 0 Then
MsgBox "Maaf ... Anda harus keluar dari program ini...!", ,
"Peringatan"
Else
MsgBox "Kesempatan anda tinggal " & (3 - a) & " kali lagi", ,
"Peringatan"
End If
If a = 3 Then End End If End Sub
Sub Akses_Menu()
If Rs_User.Fields("akses_a") = "1" Then
MdiMenuUtama.Tlb1.Buttons(13).ButtonMenus(5).Visible = True Else
MdiMenuUtama.Tlb1.Buttons(13).ButtonMenus(5).Visible = False End If
If Rs_User.Fields("akses_b") = "1" Then
MdiMenuUtama.Tlb1.Buttons(13).ButtonMenus(6).Visible = True
21
Else
MdiMenuUtama.Tlb1.Buttons(13).ButtonMenus(6).Visible = False End If
If Rs_User.Fields("akses_c") = "1" Then
MdiMenuUtama.Tlb1.Buttons(13).ButtonMenus(12).Visible = True Else
MdiMenuUtama.Tlb1.Buttons(13).ButtonMenus(12).Visible = False End If
If Rs_User.Fields("akses_d") = "1" Then
MdiMenuUtama.Tlb1.Buttons(13).ButtonMenus(13).Visible = True Else
MdiMenuUtama.Tlb1.Buttons(13).ButtonMenus(13).Visible = False End If
If Rs_User.Fields("akses_e") = "1" Then
MdiMenuUtama.Tlb1.Buttons(13).ButtonMenus(14).Visible = True Else
MdiMenuUtama.Tlb1.Buttons(13).ButtonMenus(14).Visible = False End If
If Rs_User.Fields("akses_f") = "1" Then
MdiMenuUtama.Tlb1.Buttons(15).ButtonMenus(1).Visible = True Else
MdiMenuUtama.Tlb1.Buttons(15).ButtonMenus(1).Visible = False End If
If Rs_User.Fields("akses_g") = "1" Then
MdiMenuUtama.Tlb1.Buttons(15).ButtonMenus(3).Visible = True Else
MdiMenuUtama.Tlb1.Buttons(15).ButtonMenus(3).Visible = False End If
End Sub
Private Sub Form_Activate() TxtUserID.SetFocus End Sub
Private Sub Form_Load() Buka_Koneksi
Rs_User.Open "SELECT*FROM user ORDER BY user_id", Ado_PSB, adOpenDynamic, adLockOptimistic
End Sub
Private Sub CmdKeluar_Click() End
End Sub
Private Sub CmdMasuk_Click() If TxtUserID.Text = "" Then MsgBox "Masukan USER ID..!"
TxtUserID.SetFocus Exit Sub
ElseIf TxtPassword.Text = "" Then MsgBox "Masukan PASSWORD..!"
TxtPassword.SetFocus Exit Sub
Else
With Rs_User
.Find "user_id = '" & TxtUserID.Text & "'", , adSearchForward, 1
22
If .EOF Then
MsgBox "Maaf, USER ID Tidak Dikenal", 64,
"Konfirmasi"
TxtUserID.Text = ""
TxtUserID.SetFocus Call Masuk
Else
If Trim(!Password) <> Trim(TxtPassword.Text) Then MsgBox "Maaf, PASSWORD anda salah", 64,
"Konfirmasi"
TxtPassword.SetFocus TxtPassword.Text = ""
Call Masuk Else
Call Akses_Menu MdiMenuUtama.Show FrmLogin.Hide
MdiMenuUtama.StatusBar1.Panels(1).Text = "Nama User : " & Rs_User.Fields(1).Value
MdiMenuUtama.StatusBar1.Panels(2).Text = "Status User : " & Rs_User.Fields(3).Value
TglIndonesia Date, Text1
MdiMenuUtama.StatusBar1.Panels(3).Text = "Tanggal : " & Text1
FrmWelcome.Show End If
End If End With End If End Sub
Private Sub TxtUserId_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then
If TxtUserID.Text = "" Then
MsgBox "Masukan User ID....!", vbExclamation, "User ID"
TxtUserID.SetFocus Else
TxtPassword.SetFocus End If
End If End Sub
Private Sub TxtUserID_KeyPress(KeyAscii As Integer) Call Cek_Huruf(TxtUserID, KeyAscii)
End Sub
Private Sub TxtPassword_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then
If TxtPassword.Text = "" Then
MsgBox "Masukan Password...!", vbExclamation, "Password"
TxtPassword.SetFocus Else
CmdMasuk.SetFocus End If
End If End Sub
D. Form menu Utama
Dim Kd_Ass As String Dim Jns_Lap As String Dim P_Daftar As String Dim W_Mengaji As String
23
Private Sub Timer1_Timer()
MdiMenuUtama.StatusBar1.Panels(4).Text = "Pukul : " &
Format(Time, "hh:mm:ss") End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Key
Private Sub Toolbar1_ButtonMenuClick(ByVal ButtonMenu As MSComctlLib.ButtonMenu)
24
E. Form Pendaftaran Santri Baru
Dim isi_jenkel As String Sub Aktif()
TxtNoKwitansi.Locked = True TxtNIS.Locked = True
TxtNmLengkap.Locked = False TxtNmPanggilan.Locked = False TxtPeriode.Locked = True
CmdHapusRincian.Enabled = False CmdSimpan.Enabled = True TxtNmPanggilan.Locked = True TxtPeriode.Locked = True
CmdHapusRincian.Enabled = False CmdSimpan.Enabled = False End Sub
25
V_NIS = "K." & Format(Date, "mmyy") & ".001"
With Rs_Kwitansi
TxtNoKwitansi.Text = V_Kwitansi End Sub
Sub Auto_NIS()
Dim V_NIS As String * 7 Dim No_Urut As Integer
V_NIS = Format(Date, "yyyy") & "001"
With Rs_Santri
If CmbKelompok.Text = "Pilih Kelompok" Then
MsgBox "Pilih kelompok usia dahulu...!", vbCritical,
"Perhatian"
CmbKelompok.SetFocus
26
ElseIf CmbJenisBayar.Text = "Pilih Jenis Pembayaran" Then Exit Sub
Trim(Mid(CmbJenisBayar.Text, 10, 30)) & " ?", vbYesNo,
"Konfirmasi")
TxtNIS.Text & "','" & Left(CmbJenisBayar.Text, 7)
& "','" & Trim(Mid(CmbJenisBayar.Text, 10, 30)) &
"','" & Val(TxtBiaya2.Text) & "')"
TxtTotal2.Text = Val(TxtTotal2.Text) + Val(TxtBiaya2.Text)
27
Trim(Mid(CmbJenisBayar.Text, 10, 30)) & " Sudah Masuk. " & Chr(13) & "Pilih Jenis Pembayaran lain..?", vbYesNo, "Konfirmasi")
Trim(Mid(CmbJenisBayar.Text, 10, 30)) & " Sudah Masuk. Pilih Jenis Pembayaran Lainnya !", vbYesNo, "Konfirmasi")
CmbJenisBayar.Text = "Pilih Jenis Pembayaran"
AdoBiaya.ConnectionString = konek AdoBiaya.CommandType = adCmdText
AdoBiaya.RecordSource = "SELECT * FROM biaya WHERE LEFT(kd_biaya,2) = '" & Mid(TxtNIS.Text, 3, 2) & "' AND MID(kd_biaya,4,1) = '" & Left(CmbKelompok.Text, 1) & "' AND RIGHT(kd_biaya,2) IN ('01','02','03','04','05','06','07') ORDER BY kd_biaya"
AdoBiaya.Refresh
If (Not AdoBiaya.Recordset.EOF) And (Not AdoBiaya.Recordset.BOF) Then
28
Private Sub CmdBatal_Click()
Batal_Daftar = MsgBox("Batalkan Pendaftaran..?", vbYesNo,
"Konfirmasi")
If Batal_Daftar = vbNo Then CmdSimpan.SetFocus Else
AdoSmt.ConnectionString = konek AdoSmt.CommandType = adCmdText
AdoSmt.RecordSource = "SELECT * FROM psb_kwitansi_smt ORDER BY no_kwitansi, kd_biaya"
AdoSmt.Refresh
If (Not AdoSmt.Recordset.EOF) And (Not AdoSmt.Recordset.BOF) Then
Ado_PSB.Execute "DELETE FROM psb_kwitansi_smt WHERE no_kwitansi = '" & TxtNoKwitansi.Text & "'"
MsgBox "Data Pendaftaran Santri Baru dengan NIS : " &
Trim(TxtNIS.Text) & " telah dibatalkan..!", 64,
"Konfirmasi"
AdoSmt.Refresh End If
Call Form_Activate CmbJenisBayar.Clear
CmbJenisBayar.Text = "Pilih Jenis Pembayaran"
End If End Sub
Private Sub CmdHapusRincian_Click() Hapus_Biaya = MsgBox("Hapus Biaya " &
AdoSmt.Recordset.Fields("kd_biaya") & ". " &
AdoSmt.Recordset.Fields("nm_biaya") & " ?", vbYesNo,
"Konfirmasi")
If Hapus_Biaya = vbYes Then
TxtBiaya3.Text = AdoSmt.Recordset.Fields("nominal") Ado_PSB.Execute "DELETE FROM psb_kwitansi_smt WHERE
no_kwitansi ='" & Trim(TxtNoKwitansi.Text) & "' AND kd_biaya
= '" & AdoSmt.Recordset.Fields("kd_biaya") & "'"
TxtTotal2.Text = Val(TxtTotal2.Text) - Val(TxtBiaya3.Text) TxtTotal.Text = Format(TxtTotal2.Text, "#,##0")
AdoSmt.ConnectionString = konek AdoSmt.CommandType = adCmdText
AdoSmt.RecordSource = "SELECT * FROM psb_kwitansi_smt ORDER BY no_kwitansi, kd_biaya"
AdoSmt.Refresh
Set DtgBayar.DataSource = AdoSmt TxtBiaya3.Text = ""
If (Not AdoSmt.Recordset.EOF) And (Not AdoSmt.Recordset.BOF) Then
CmdHapusRincian.Enabled = True Else
CmdHapusRincian.Enabled = False End If
End If End Sub
Private Sub CmdSimpan_Click() If TxtNmLengkap.Text = "" Then
MsgBox "Nama lengkap santri belum diisi..!", 64, "Perhatian"
Call Aktif
TxtNmLengkap.SetFocus
29
ElseIf TxtNmPanggilan.Text = "" Then
MsgBox "Nama panggilan santri belum diisi..!", 64,
"Perhatian"
Call Aktif
TxtNmPanggilan.SetFocus
ElseIf OptLaki.Value = False And OptPerempuan.Value = False Then MsgBox "Jenis kelamin santri belum dipilih..!", 64,
"Perhatian"
Call Aktif
ElseIf CmdHapusRincian.Enabled = False Then
MsgBox "Rincian biaya pembayaran masih kosong..!", 64,
TxtNmLengkap.Text = Replace(TxtNmLengkap.Text, "'", "''") TxtNmPanggilan.Text = Replace(TxtNmPanggilan.Text, "'", "''")
If (Not AdoSmt.Recordset.EOF) And (Not AdoSmt.Recordset.BOF) Then sts_infak, sts_mengaji, wkt_mengaji, kel_usia) " & _
"VALUES('" & Trim(TxtNIS.Text) & "','" &
Trim(TxtNmLengkap.Text) & "','" & Trim(TxtNmPanggilan.Text) &
"', '" & isi_jenkel & "','" & Format(Date, "yyyy-mm-dd") &
"','" & Trim(TxtPeriode.Text) & "','" & Trim(TxtInfak.Text) &
"','1', '" & Left(CmbKelompok.Text, 1) & "', '" &
Left(CmbKelompok.Text, 1) & "')"
Ado_PSB.Execute "INSERT INTO psb_kwitansi " & _
"(no_kwitansi, tgl_kwitansi, nis, tot_kwitansi, user_id, tgl_indo, tot_indo) " & _
"VALUES('" & Trim(TxtNoKwitansi.Text) & "','" & Format(Date,
"yyyy-mm-dd") & "','" & Trim(TxtNIS.Text) & "','" &
Val(TxtTotal2.Text) & "','" & Trim(FrmLogin.TxtUserID.Text) &
"','" & Trim(FrmLogin.Text1.Text) & "','" &
Trim(TxtTerbilang.Text) & "')"
AdoSyarat.ConnectionString = konek
30
"VALUES('" & Trim(TxtNIS.Text) & "','" &
AdoSyarat.Recordset.Fields(0) & "', '0')" LEFT(kd_biaya,2) = '" & Right(LblPeriode.Caption, 2) & "' AND MID(kd_biaya,4,1) = '" & Left(CmbKelompok.Text, 1) & "' AND
"VALUES('" & Trim(TxtNIS.Text) & "','" &
AdoBiaya.Recordset.Fields(0) & "', '0')"
ChkPasFoto.Value & "' WHERE nis = '" & Trim(TxtNIS.Text) & "' AND kd_syarat = '2'"
AdoSmt.RecordSource = "SELECT * FROM psb_kwitansi_smt ORDER BY no_kwitansi, kd_biaya" kd_biaya = '" & AdoSmt.Recordset.Fields("kd_biaya") & "'"
c = c + 1
AdoSmt.Recordset.MoveNext Loop
31
If AdoSmt.Recordset.RecordCount = 7 And (ChkFormulir.Value = 1 And ChkPasFoto.Value = 1 And ChkAktaKelahiran.Value = 1) Then
ElseIf AdoSmt.Recordset.RecordCount = 7 And (ChkFormulir.Value
= 0 Or ChkPasFoto.Value = 0 Or ChkAktaKelahiran.Value = 0)
ElseIf AdoSmt.Recordset.RecordCount < 7 And (ChkFormulir.Value
= 1 And ChkPasFoto.Value = 1 And ChkAktaKelahiran.Value = 1) Then (ChkFormulir.Value = 0 Or ChkPasFoto.Value = 0 Or ChkAktaKelahiran.Value = 0) Then
32
Ado_PSB.Execute "DELETE FROM psb_kwitansi_smt"
AdoSmt.ConnectionString = konek AdoSmt.CommandType = adCmdText
AdoSmt.RecordSource = "SELECT * FROM psb_kwitansi_smt ORDER BY no_kwitansi, kd_biaya"
AdoSmt.Refresh
Set DtgBayar.DataSource = AdoSmt Call Form_Activate
CmbJenisBayar.Clear
CmbJenisBayar.Text = "Pilih Jenis Pembayaran"
End If End Sub
Private Sub CmdTambah_Click() Bersih
Auto_Kwitansi Auto_NIS Aktif
TxtNmLengkap.SetFocus CmdSimpan.Enabled = True CmdBatal.Enabled = True CmdTambah.Enabled = False End Sub
Private Sub Form_Activate() Tutup_Koneksi
Buka_Koneksi
LblPeriode.Caption = Format(Date, "yyyy")
Rs_Santri.Open "SELECT nis, nm_lengkap, nm_panggilan, jenkel, tgl_masuk, periode, sts_infak, sts_mengaji FROM santri WHERE LEFT(periode,4) = '" & LblPeriode.Caption & "' ORDER BY nis", Ado_PSB, adOpenDynamic, adLockPessimistic
Rs_Kwitansi.Open "SELECT * FROM psb_kwitansi WHERE LEFT(nis,4) = '" & LblPeriode.Caption & "' ORDER BY no_kwitansi", Ado_PSB, adOpenDynamic, adLockPessimistic
Bersih TidakAktif End Sub
Private Sub Form_Load()
Me.Left = Screen.Width - 20340 Me.Top = Screen.Height - 13925 Me.Width = 13179
Me.Height = 5900 MenuTidakAktif
CmbKelompok.AddItem "1. TK"
CmbKelompok.AddItem "2. SD"
CmbKelompok.AddItem "3. SMP/SMA"
End Sub
Private Sub CmdTutup_Click() Do
DoEvents
Me.Top = Trim(Str(Int(Me.Top) - 1)) Loop Until Me.Top < -Me.Width
Unload Me End Sub
Private Sub Form_Unload(Cancel As Integer) MenuAktif
End Sub
33
Private Sub Timer1_Timer() Me.Top = Me.Top + 400 If Me.Top > -100 Then Timer1.Enabled = False End If
End Sub
F. Form Biodata Santri Baru
Dim isi_jenkel As String Sub Bersih()
TxtNIS.Text = ""
TxtNmLengkap.Text = ""
TxtNmPanggilan.Text = ""
OptLaki.Value = False OptPerempuan.Value = False TxtTmpLahir.Text = ""
DtpTglLhr.Value = Format(Date, "dd MMMM yyyy") TxtAlamat.Text = ""
TxtRT.Text = ""
TxtRW.Text = ""
TxtNoRumah.Text = ""
TxtKelurahan.Text = ""
TxtKecamatan.Text = ""
TxtKota.Text = ""
TxtKdPos.Text = ""
TxtNoTelpon.Text = ""
TxtNmWali.Text = ""
TxtPeriode.Text = ""
End Sub
Sub Aktif()
TxtNIS.Locked = True
TxtNmLengkap.Locked = False TxtNmPanggilan.Locked = False OptLaki.Enabled = True
OptPerempuan.Enabled = True TxtTmpLahir.Locked = False DtpTglLhr.Enabled = True TxtAlamat.Locked = False TxtRT.Locked = False TxtRW.Locked = False TxtNoRumah.Locked = False TxtKelurahan.Locked = False TxtKecamatan.Locked = False TxtKota.Locked = False TxtKdPos.Locked = False TxtNoTelpon.Locked = False DtpTglMasuk.Enabled = True TxtNmWali.Locked = False End Sub
Sub TidakAktif()
TxtNIS.Locked = True TxtNmLengkap.Locked = True TxtNmPanggilan.Locked = True OptLaki.Enabled = False OptPerempuan.Enabled = False TxtTmpLahir.Locked = True DtpTglLhr.Enabled = False TxtAlamat.Locked = True TxtRT.Locked = True TxtRW.Locked = True End Sub
34
Sub Pilih_Pendidikan() On Error Resume Next Rs_Pendidikan.MoveFirst While Not Rs_Pendidikan.EOF
CmbPdkWali.AddItem Rs_Pendidikan.Fields(0) & ". " &
Rs_Pendidikan.Fields(1)
CmbKerjaWali.AddItem Rs_Pekerjaan.Fields(0) & ". " &
Rs_Pekerjaan.Fields(1)
AdoFoto.ConnectionString = konek
AdoFoto.RecordSource = "SELECT*FROM santri_foto WHERE nis = '" &
AdoSantri.Recordset.Fields("nis") & "'"
AdoFoto.CommandType = adCmdText AdoFoto.Refresh
If AdoSantri.Recordset.RecordCount > 0 Then With AdoSantri.Recordset
35
36
37
With AdoSantri.Recordset If .RecordCount < 1 Then
Input_NIS = InputBox("Masukan NIS yang akan diedit..!",
"Pencarian No. Induk Santri")
tidak ada di angkatan " & LblPeriode.Caption & "..!", 64, "Konfirmasi"
Input_NIS = InputBox("Masukan NIS yang akan dihapus..!",
"Pencarian No. Induk Siswa")
"Pencarian No. Induk Siswa")