1 FORM LOGIN Option Explicit Private Sub cmdexit_click() End Private Sub cmdlogin_click() On Error GoTo handleerror If (txtnama = "") Then MsgBox "Nama user harus diisi terlebih dahulu",, "Perhatian" txtnama.setfocus If (txtpassword = "") Then MsgBox "Password harus diisi terlebih dahulu",, "Perhatian" txtpassword.setfocus dataloginuser.recordset.findfirst "[namauser]='" & txtnama & "'" If dataloginuser.recordset.nomatch Then MsgBox "Nama anda tidak dikenal pada database ini" & vbcrlf & _ "Segera lakukan registrasi. Hubungi Administrator yang berwenang",, "Perhatian" txtnama.setfocus Else
2 dataloginuser.recordset.findfirst "[password]='" & txtpassword & "'" If dataloginuser.recordset.nomatch Then MsgBox "Password anda tidak dikenal pada database ini" & vbcrlf & _ "Segera lakukan registrasi. Hubungi Administrator yang berwenang",, "Perhatian" txtpassword.setfocus Else MDIForm1.mnufile = True Unload Me handleerror: MsgBox Err.Number & vbcrlf & Err.Description On Error GoTo 0 Private Sub Form_Load() MDIForm1.mnufile = False dataloginuser.databasename = App.Path & "\datagadai.mdb" dataloginuser.recordsource = "login" Private Sub txtnama_keypress(keyascii As Integer) If (KeyAscii = 13) Then txtpassword.setfocus
3 Private Sub txtpassword_keypress(keyascii As Integer) If (KeyAscii = 13) Then cmdlogin_click
4 FORM NASABAH Option Explicit Private Sub cmdadd_click() datanasabah.recordset.addnew Call kuncitext(false) normal bersihkan_text txtnoktp.setfocus Call aturtombol(false, False, True, False, False, True) cmdlogout.enabled = False: cmdselanjutnya.enabled = False Call aturnavigasi(false) Private Sub cmdcancell_click() datanasabah.recordset.cancelupdate With datanasabah.recordset If (.BOF And.EOF) Then Call aturtombol(true, False, False, False, False, False) Else Call aturtombol(true, True, False, True, False, False) End With cmdlogout.enabled = True: cmdselanjutnya.enabled = True Call kuncitext(true) notnormal Call aturnavigasi(true)
5 Private Sub cmddelete_click() Dim x As Byte datatransaksi.recordset.findfirst "[no_ktp/sim]='" & txtnoktp & "'" If (datatransaksi.recordset.nomatch) Then x = MsgBox("Apakah anda yakin data ini akan dihapus", vbyesno, "Caution") If (x = vbyes) Then datanasabah.recordset.delete datanasabah.refresh With datanasabah.recordset If (.BOF And.EOF) Then Call aturtombol(true, False, False, False, False, False) End With Else MsgBox "operasi tidak dapat dilakukan dikarenakan terdapatnya relasi" & vbcrlf & _ "antara data nasabah tersebut dengan data transaksi. Operasi dapat" & vbcrlf & _ "dilakukan dengan menghilangkan relasi antara keduanya!", vbinformation, "Perhatian" cmdfirst_click Private Sub cmdedit_click() datanasabah.recordset.edit Call kuncitext(false)
6 txtnoktp.locked = True normal txtnoktp.backcolor = &HC0C0C0 Call aturtombol(false, False, False, False, True, True) cmdlogout.enabled = False: cmdselanjutnya.enabled = False Call aturnavigasi(false) Private Sub cmdfirst_click() On Error Resume Next datanasabah.recordset.movefirst With datanasabah.recordset If (.BOF And.EOF) Then MsgBox "Tidak terdapat data pada Database",, "Warning" End With Private Sub cmdlast_click() On Error Resume Next datanasabah.recordset.movelast With datanasabah.recordset If (.BOF And.EOF) Then MsgBox "Tidak ada data",, "Perhatian" End With
7 Private Sub cmdlogout_click() Frmlogin.Show MDIForm1.mnufile.Enabled = False Unload Me Private Sub cmdnext_click() On Error Resume Next datanasabah.recordset.movenext With datanasabah.recordset If (.EOF) Then.MoveFirst If (.BOF) Then MsgBox "Tidak ada data",, "Perhatian" End With Private Sub cmdprevious_click() On Error Resume Next datanasabah.recordset.moveprevious With datanasabah.recordset If (.BOF) Then.MoveLast If (.EOF) Then MsgBox "Tidak ada data",, "Perhatian"
8 End With Private Sub cmdsave_click() On Error GoTo handleerror If (txtnoktp = "") Then MsgBox "No KTP / SIM harus diisi terlebih dahulu",, "Perhatian" txtnoktp.setfocus If (txtnama = "") Then MsgBox "Nama harus diisi terlebih dahulu",, "Perhatian" txtnama.setfocus If (txtalamat = "") Then MsgBox "Alamat harus diisi terlebih dahulu",, "Perhatian" txtalamat.setfocus datanasabah.recordset.update Call kuncitext(true) Call aturtombol(true, True, False, True, False, False) cmdlogout.enabled = True cmdselanjutnya.enabled = True Call aturnavigasi(true) notnormal
9 MsgBox "Data telah disimpan",, "Attention" datanasabah.refresh handleerror: Select Case Err.Number Case 3022 MsgBox "Telah terjadinya duplikasi data" & vbcrlf & _ "Perbaiki No KTP / SIM dengan yang lain",, "Perhatian" txtnoktp.setfocus Case Else MsgBox Err.Number & vbcrlf & Err.Description,, "ERROR" End Select On Error GoTo 0 Private Sub cmdselanjutnya_click() frmbarang.show Unload Me Private Sub cmdupdate_click() On Error GoTo handleerror datanasabah.recordset.update MsgBox "data telah berhasil diperbaharui",, "Perhatian" Call kuncitext(true) notnormal Call aturtombol(true, True, False, True, False, False) cmdselanjutnya.enabled = True cmdlogout.enabled = True
10 Call aturnavigasi(true) handleerror: MsgBox Err.Number & vbcrlf & Err.Description,, "ERROR" On Error GoTo 0 Private Sub Form_Activate() datanasabah.refresh With datanasabah.recordset If (.BOF And.EOF) Then Call aturtombol(true, False, False, False, False, False) Else Call aturtombol(true, True, False, True, False, False) End With Private Sub Form_Load() cmdadd.picture = LoadPicture(App.Path & "\gambar\tambah.jpg") cmdedit.picture = LoadPicture(App.Path & "\gambar\edit.jpg") cmddelete.picture = LoadPicture(App.Path & "\gambar\hapus.jpg") cmdsave.picture = LoadPicture(App.Path & "\gambar\simpan.jpg") cmdupdate.picture = LoadPicture(App.Path & "\gambar\update.jpg") datanasabah.databasename = App.Path & "\datagadai.mdb" datanasabah.recordsource = "nasabah" datatransaksi.databasename = App.Path & "\datagadai.mdb" datatransaksi.recordsource = "gadai" txtnoktp.datafield = "No_KTP/SIM"
11 txtnama.datafield = "nama_nasabah" txtalamat.datafield = "alamat" txttlp.datafield = "telepon" cmbkerja.datafield = "Pekerjaan" cmbkerja.additem "Karyawan" cmbkerja.additem "ABRI" cmbkerja.additem "Petani" cmbkerja.additem "Ibu Rumah Tangga" cmbkerja.additem "Polisi" cmbkerja.additem "Wiraswasta" cmbkerja.additem "Dagang" Call kuncitext(true) notnormal Private Sub aturtombol(add, edit, save, delete, update, cancel) cmdadd.enabled = add cmdedit.enabled = edit cmdsave.enabled = save cmddelete.enabled = delete cmdupdate.enabled = update cmdcancell.enabled = cancel Private Sub bersihkan_text() txtnoktp = "" txtnama = "" txtalamat = "" txttlp = "" cmbkerja = ""
12 Private Sub aturnavigasi(aktif) cmdfirst.enabled = aktif cmdprevious.enabled = aktif cmdnext.enabled = aktif cmdlast.enabled = aktif Private Sub notnormal() txtnoktp.backcolor = &HC0C0C0 txtnama.backcolor = &HC0C0C0 txtalamat.backcolor = &HC0C0C0 txttlp.backcolor = &HC0C0C0 cmbkerja.backcolor = &HC0C0C0 Private Sub normal() txtnoktp.backcolor = &H80000005 txtnama.backcolor = &H80000005 txtalamat.backcolor = &H80000005 txttlp.backcolor = &H80000005 cmbkerja.backcolor = &H80000005 Private Sub kuncitext(kunci) txtnoktp.locked = kunci txtnama.locked = kunci txtalamat.locked = kunci txttlp.locked = kunci cmbkerja.locked = kunci
13 FORM BARANG Option Explicit Private Sub tampilkan() With databarang.recordset cmbkode.text =!kode_brg txtnama =!nama_brg txttaksiran =!tot_taksiran_brg End With Private Sub cmbkode_click() On Error GoTo handleerror databarang.recordset.findfirst "[kode_brg]='" & cmbkode.text & "'" tampilkan notnormal Call aturnavigasi(true) Call aturtombol(true, True, False, True, False, False) Call kuncitext(true) cmbkode.backcolor = &H80000005 cmbkode.locked = False handleerror: MsgBox Err.Number & vbcrlf & Err.Description,, "WARNING!!!" On Error GoTo 0 Private Sub cmdadd_click() bersihkantext
14 Call kuncitext(false) Call aturnavigasi(false) normal Call aturtombol(false, False, True, False, False, True) cmdselanjutnya.enabled = False cmbkode.setfocus Private Sub cmdcancel_click() bersihkantext notnormal Call kuncitext(true) Call aturnavigasi(true) Call aturtombol(true, False, False, False, False, False) cmdselanjutnya.enabled = True cmbkode.locked = False cmbkode.backcolor = &H80000005 Private Sub cmddelete_click() On Error GoTo handleerror Dim strsql As String Dim x As Byte datatransaksi.recordset.findfirst "[kode_brg]='" & cmbkode & "'" If (datatransaksi.recordset.nomatch) Then x = MsgBox("Apakah anda yakin ingin menghapus data ini? ", vbyesno + vbquestion, "Perhatian") If (x = vbyes) Then strsql = "delete from barang where [kode_brg]='" & cmbkode & "'"
15 databarang.database.execute (strsql) databarang.refresh Else MsgBox "Operasi tidak dapat dilakukan dikarenakan terdapatnya relasi" & vbcrlf & _ "antara data barang tersebut dengan data transaksi. Operasi penghapusan" & vbcrlf & _ "dapat dilakukan dengan menghilangkan relasi antara keduanya", vbinformation, "Perhatian" notnormal bersihkantext Call kuncitext(true) Call aturtombol(true, False, False, False, False, False) Call aturnavigasi(true) cmbkode.locked = False cmbkode.backcolor = &HC0C0C0 handleerror: MsgBox Err.Number & vbcrlf & Err.Description On Error GoTo 0 Private Sub cmdedit_click() Call kuncitext(false) Call aturtombol(false, False, False, False, True, True) cmdselanjutnya.enabled = False normal
16 Call aturnavigasi(false) cmbkode.locked = True cmbkode.backcolor = &HC0C0C0 txtnama.setfocus Private Sub cmdsave_click() On Error GoTo handleerror Dim strsql, jenis As String If (cmbkode = "") Then MsgBox "Isi kode barang terlebih dahulu!!!", vbinformation, "Perhatian" cmbkode.setfocus If (txtnama = "") Then MsgBox "Isi nama barang terlebih dahulu", vbinformation, "Perhatian" txtnama.setfocus If (txttaksiran = "") Then MsgBox "Isi taksiran harga terlebih dahulu", vbinformation, "Perhatian" txttaksiran.setfocus databarang.recordset.findfirst "[kode_brg]='" & cmbkode & "'" If Not (databarang.recordset.nomatch) Then MsgBox "Telah terjadinya duplikasi data, perbaiki surat barang!!", vbinformation, "Perhatian" cmbkode.setfocus
17 strsql = "insert into barang([kode_brg],[nama_brg],[tot_taksiran_brg])" & _ "values('" & cmbkode & "','" & txtnama & "','" & txttaksiran & "')" databarang.database.execute (strsql) MsgBox "Data telah berhasil disimpan",, "Perhatian" databarang.refresh bersihkantext Call kuncitext(true) Call aturtombol(true, False, False, False, False, False) cmdselanjutnya.enabled = True Call aturnavigasi(true) notnormal cmbkode.backcolor = &H80000005 cmbkode.locked = False handleerror: MsgBox Err.Number & vbcrlf & Err.Description,, "Attention" On Error GoTo 0 Private Sub cmdselanjutnya_click() Frmgadai.Show Unload Me Private Sub cmdupdate_click() On Error GoTo handleerror Dim strsql, jenis As String
18 Dim x As Byte If (txtnama = "") Then MsgBox "Isi nama barang terlebih dahulu", vbinformation, "Perhatian" txtnama.setfocus If (txttaksiran = "") Then MsgBox "Isi taksiran harga terlebih dahulu", vbinformation, "Perhatian" txttaksiran.setfocus datatransaksi.recordset.findfirst "[kode_brg]='" & cmbkode & "'" If Not (datatransaksi.recordset.nomatch) Then x = MsgBox("Data tersebut mempunyai relasi dengan tabel lain" & vbcrlf & _ "Apakah anda yakin ingin merubahnya?" & vbcrlf & _ "(Perubahan pada tabel utama akan merubah data yang berhubungan dengannya", vbinformation + vbyesno, "Perhatian") If (x = vbno) Then bersihkantext Call kuncitext(true) notnormal cmbkode.locked = False cmbkode.backcolor = &H80000005 cmbkode.setfocus If (Val(txttaksiran) < Val(datatransaksi.Recordset!nominal_pinjaman)) Then MsgBox "Nilai taksiran harus lebih besar nilainya" & vbcrlf & _ "(Dikarenakan data nilai pinjaman pada tabel lain mempunyai" & _
19 " nilai yang lebih besar", vbinformation, "Perhatian" txttaksiran.setfocus strsql = "update barang set [Nama_Brg]='" & txtnama & "',[Tot_Taksiran_Brg]='" & _ txttaksiran & "' where [kode_brg]='" & cmbkode & "'" databarang.database.execute (strsql) databarang.refresh strsql = "update gadai set [taksiran]='" & txttaksiran & "' where " & _ "[kode_brg]='" & cmbkode & "'" datatransaksi.database.execute (strsql) datatransaksi.refresh MsgBox "Data telah berhasil diperbaharui", vbinformation, "Perhatian" databarang.refresh bersihkantext Call kuncitext(true) Call aturtombol(true, False, False, False, False, False) cmdselanjutnya.enabled = True Call aturnavigasi(true) notnormal cmbkode.locked = False cmbkode.backcolor = &H80000005 cmbkode.setfocus handleerror: MsgBox Err.Number & vbcrlf & Err.Description, vbcritical, "Attention" On Error GoTo 0
20 Private Sub Form_Activate() With databarang.recordset If (.BOF And.EOF) Then Call aturtombol(true, False, False, False, False, False) Else.MoveFirst Do While (Not (.EOF)) cmbkode.additem.fields("kode_brg").value.movenext Loop Call aturtombol(true, True, False, True, False, False).MoveFirst tampilkan End With Private Sub Form_Load() databarang.databasename = App.Path & "\datagadai.mdb" databarang.recordsource = "barang" datatransaksi.databasename = App.Path & "\datagadai.mdb" datatransaksi.recordsource = "gadai" cmdadd.picture = LoadPicture(App.Path & "\gambar\tambah.jpg") cmdedit.picture = LoadPicture(App.Path & "\gambar\edit.jpg") cmddelete.picture = LoadPicture(App.Path & "\gambar\hapus.jpg") cmdsave.picture = LoadPicture(App.Path & "\gambar\simpan.jpg") cmdupdate.picture = LoadPicture(App.Path & "\gambar\update.jpg")
21 cmdcancel.picture = LoadPicture(App.Path & "\gambar\cancel.jpg") Call kuncitext(true) cmbkode.locked = False notnormal cmbkode.backcolor = &H80000005 Private Sub cmdnext_click() On Error Resume Next databarang.recordset.movenext With databarang.recordset If (.EOF) Then.MoveFirst If (.BOF) Then MsgBox "Tidak ada data",, "Perhatian" End With tampilkan Call aturtombol(true, True, False, True, False, False) Private Sub cmdprevious_click() On Error Resume Next databarang.recordset.moveprevious With databarang.recordset If (.BOF) Then.MoveLast If (.EOF) Then MsgBox "Tidak ada data",, "Perhatian"
22 End With tampilkan Call aturtombol(true, True, False, True, False, False) Private Sub cmdfirst_click() On Error Resume Next databarang.recordset.movefirst With databarang.recordset If (.BOF And.EOF) Then MsgBox "Tidak terdapat data pada Database",, "Warning" End With tampilkan Call aturtombol(true, True, False, True, False, False) Private Sub cmdlast_click() On Error Resume Next databarang.recordset.movelast With databarang.recordset If (.BOF And.EOF) Then MsgBox "Tidak ada data",, "Perhatian" End With
23 tampilkan Call aturtombol(true, True, False, True, False, False) Private Sub kuncitext(kunci) cmbkode.locked = kunci txtnama.locked = kunci txttaksiran.locked = kunci Private Sub bersihkantext() cmbkode = "" txtnama = "" txttaksiran = "" Private Sub notnormal() cmbkode.backcolor = &HC0C0C0 txtnama.backcolor = &HC0C0C0 txttaksiran.backcolor = &HC0C0C0 Private Sub normal() cmbkode.backcolor = &H80000005 txtnama.backcolor = &H80000005 txttaksiran.backcolor = &H80000005 Private Sub aturtombol(add, edit, save, delete, update, cancel) cmdadd.enabled = add cmdedit.enabled = edit cmdsave.enabled = save cmddelete.enabled = delete cmdupdate.enabled = update
24 cmdcancel.enabled = cancel Private Sub aturnavigasi(aktif) cmdfirst.enabled = aktif cmdprevious.enabled = aktif cmdnext.enabled = aktif cmdlast.enabled = aktif Private Sub txttaksiran_keypress(keyascii As Integer) If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbkeyback) Then Beep KeyAscii = 0
25 FORM GADAI Option Explicit Dim nilai_pinjaman Dim taksiran Private Sub cmbkodebrg_click() On Error GoTo handleerror With databarang.recordset.findfirst "[kode_brg]='" & cmbkodebrg & "'" If (.NoMatch) Then MsgBox "Kode barang tersebut tidak terdapat pada database!" & vbcrlf & _ "Lihat pada data barang untuk lebih jelasnya.", vbinformation, "Perhatian" txttaksir = "" cmbkodebrg.setfocus Else taksiran =!tot_taksiran_brg txttaksir = taksiran End With handleerror: MsgBox Err.Number & vbcrlf & Err.Description, vbcritical, "ERROR" On Error GoTo 0
26 Private Sub cmbkodebrg_lostfocus() If (cmbkodebrg = "") Then Else cmbkodebrg_click Private Sub cmbnoktp_click() On Error GoTo handleerror With datanasabah.recordset.findfirst "[no_ktp/sim]='" & cmbnoktp & "'" If (.NoMatch) Then MsgBox "No KTP / SIM tersebut tidak terdapat pada tabel nasabah!" & vbcrlf & _ "Lihat pada data nasabah untuk lebih jelasnya.", vbinformation, "Perhatian" cmbnoktp.setfocus Else txtbunga.setfocus End With handleerror: MsgBox Err.Number & vbcrlf & Err.Description, vbcritical, "ERROR" On Error GoTo 0
27 Private Sub cmbnoktp_lostfocus() If (cmbnoktp = "") Then Else cmbnoktp_click Private Sub cmdadd_click() normal bersihkantext DPtglkredit.Enabled = True DPtglkredit_Click Call kuncitext(false): Call aturtombol(false, False, True, False, False, True) cmdpreview.enabled = False: cmdselesai.enabled = False Call aturnavigasi(false) txtnotran.setfocus Private Sub cmdcancel_click() bersihkantext notnormal DPtglkredit.Enabled = False Call kuncitext(true) Call aturnavigasi(true) Call aturtombol(true, False, False, False, False, False) cmdpreview.enabled = True: cmdselesai.enabled = True
28 Private Sub cmddelete_click() On Error GoTo handleerror Dim strsql As String Dim x As Byte x = MsgBox("Apakah anda yakin ingin menghapus data ini", vbinformation + vbyesno, "Perhatian") If (x = vbyes) Then strsql = "delete from gadai where [no_surat_kredit]='" & txtnotran & "'" datatransaksi.database.execute (strsql) datatransaksi.refresh bersihkantext Call aturtombol(true, False, False, False, False, False) notnormal handleerror: MsgBox Err.Number & vbcrlf & Err.Description,, "Attention" On Error GoTo 0 Private Sub cmdedit_click() nilai_pinjaman = txtnominal Call kuncitext(false) txtnotran.locked = True Call aturtombol(false, False, False, False, True, True) cmdpreview.enabled = False: cmdselesai.enabled = False normal txtnotran.backcolor = &HC0C0C0
29 txttaksir.locked = True txttaksir.backcolor = &HC0C0C0 DPtglkredit.Enabled = True Call aturnavigasi(false) Private Sub cmdpreview_click() frmpreview.show Unload Me Private Sub cmdsave_click() On Error GoTo handleerror Dim strsql As String If (txtnotran = "") Then MsgBox "No Surat Kredit harus diisi terlebih dahulu", vbinformation, "Perhatian" txtnotran.setfocus If (cmbkodebrg = "") Then MsgBox "Kode barang harus diisi terlebih dahulu", vbinformation, "Perhatian" cmbkodebrg.setfocus If (txttaksir = "") Then MsgBox "Harga taksiran barang harus diisi terlebih dahulu", vbinformation, "Perhatian" txttaksir.setfocus
30 If (cmbnoktp = "") Then MsgBox "No KTP atau SIM harus diisi terlebih dahulu", vbinformation, "Perhatian" cmbnoktp.setfocus If (txtbunga = "") Then MsgBox "Bunga harus diisi terlebih dahulu", vbinformation, "Perhatian" txtbunga.setfocus If (txtnominal = "") Then MsgBox "Nilai nominal harus diisi terlebih dahulu", vbinformation, "Perhatian" txtnominal.setfocus datatransaksi.recordset.findfirst "[no_surat_kredit]='" & txtnotran & "'" If Not (datatransaksi.recordset.nomatch) Then MsgBox "Telah terjadinya duplikasi data, perbaiki no transaksi!!", vbinformation, "Perhatian" txtnotran.setfocus strsql = "insert into gadai([no_surat_kredit],[tgl_kredit],[tgl_pengembalian_kredit]" & _ ",[taksiran],[bunga],[no_ktp/sim],[nominal_pinjaman],[kode_brg])" & _ "values('" & txtnotran & "','" & DPtglkredit.Value & "','" & txtjthtempo & "','" & _
31 txttaksir & "','" & txtbunga & "','" & cmbnoktp & "','" & txtnominal & _ "','" & cmbkodebrg & "')" datatransaksi.database.execute (strsql) MsgBox "Data telah berhasil disimpan",, "Perhatian" bersihkantext Call kuncitext(true) Call aturtombol(true, False, False, False, False, False) cmdpreview.enabled = True: cmdselesai.enabled = True Call aturnavigasi(true) notnormal datatransaksi.refresh handleerror: MsgBox Err.Number & vbcrlf & Err.Description,, "Attention" On Error GoTo 0 Private Sub cmdselesai_click() Frmlogin.Show Unload Me Private Sub cmdupdate_click() On Error GoTo handleerror Dim strsql, jenis As String Dim jumtak If (cmbkodebrg = "") Then MsgBox "Kode barang harus diisi terlebih dahulu", vbinformation, "Perhatian" cmbkodebrg.setfocus
32 If (cmbnoktp = "") Then MsgBox "No KTP atau SIM harus diisi terlebih dahulu", vbinformation, "Perhatian" cmbnoktp.setfocus If (txtbunga = "") Then MsgBox "Bunga harus diisi terlebih dahulu", vbinformation, "Perhatian" txtbunga.setfocus If (txtnominal = "") Then MsgBox "Nilai nominal harus diisi terlebih dahulu", vbinformation, "Perhatian" txtnominal.setfocus strsql = "update gadai set [tgl_kredit]='" & DPtglkredit & "', [Tgl_pengembalian_kredit]='" & _ txtjthtempo & "',[taksiran]='" & txttaksir & "',[bunga]='" & txtbunga & _ "',[no_ktp/sim]='" & cmbnoktp & "',[nominal_pinjaman]='" & _ txtnominal & "',[kode_brg]='" & cmbkodebrg & "' where [no_surat_kredit]='" & txtnotran & "'" datatransaksi.database.execute (strsql) datatransaksi.refresh MsgBox "Data telah berhasil diperbaharui", vbinformation, "Perhatian" bersihkantext Call kuncitext(true)
33 Call aturtombol(true, False, False, False, False, False) cmdpreview.enabled = True: cmdselesai.enabled = True Call aturnavigasi(true) notnormal handleerror: MsgBox Err.Number & vbcrlf & Err.Description, vbcritical, "Attention" On Error GoTo 0 Private Sub DPtglkredit_Change() DPtglkredit_Click Private Sub DPtglkredit_Click() Dim bulan As Byte Dim tahun As Integer bulan = DatePart("m", DPtglkredit.Value) + 3 tahun = Right(DPtglkredit.Value, 4) If (bulan > 12) Then bulan = bulan - 12: tahun = tahun + 1 txtjthtempo = bulan & "/" & DatePart("d", DPtglkredit.Value) & _ "/" & tahun Private Sub Form_Activate() On Error Resume Next
34 With datanasabah.recordset.movefirst Do cmbnoktp.additem.fields("no_ktp/sim").value.movenext Loop Until (.EOF) End With With databarang.recordset.movefirst Do cmbkodebrg.additem.fields("kode_brg").value.movenext Loop Until (.EOF) End With Private Sub Form_Load() datanasabah.databasename = App.Path & "\datagadai.mdb" databarang.databasename = App.Path & "\datagadai.mdb" datatransaksi.databasename = App.Path & "\datagadai.mdb" datanasabah.recordsource = "nasabah" databarang.recordsource = "barang" datatransaksi.recordsource = "gadai" cmdadd.picture = LoadPicture(App.Path & "\gambar\tambah.jpg") cmdedit.picture = LoadPicture(App.Path & "\gambar\edit.jpg") cmddelete.picture = LoadPicture(App.Path & "\gambar\hapus.jpg") cmdsave.picture = LoadPicture(App.Path & "\gambar\simpan.jpg") cmdupdate.picture = LoadPicture(App.Path & "\gambar\update.jpg") cmdcancel.picture = LoadPicture(App.Path & "\gambar\cancel.jpg")
35 cmdpreview.picture = LoadPicture(App.Path & "\gambar\preview.jpg") Call aturtombol(true, False, False, False, False, False) Call kuncitext(true) DPtglkredit.Enabled = False DPtglkredit.Value = Date lbltanggal = Format(Now, "dd mmmm yyyy") notnormal Private Sub aturnavigasi(aktif) cmdfirst.enabled = aktif cmdprevious.enabled = aktif cmdnext.enabled = aktif cmdlast.enabled = aktif Private Sub notnormal() txtnotran.backcolor = &HC0C0C0 cmbnoktp.backcolor = &HC0C0C0 cmbkodebrg.backcolor = &HC0C0C0 txtbunga.backcolor = &HC0C0C0 txtnominal.backcolor = &HC0C0C0 Private Sub normal() txtnotran.backcolor = &H80000005 cmbnoktp.backcolor = &H80000005 cmbkodebrg.backcolor = &H80000005 txtbunga.backcolor = &H80000005 txtnominal.backcolor = &H80000005 Private Sub kuncitext(kunci)
36 txtnotran.locked = kunci cmbnoktp.locked = kunci cmbkodebrg.locked = kunci txtbunga.locked = kunci txtnominal.locked = kunci Private Sub cmdnext_click() On Error Resume Next datatransaksi.recordset.movenext With datatransaksi.recordset If (.EOF) Then.MoveFirst If (.BOF) Then MsgBox "Tidak ada data",, "Perhatian" End With tampilkan Call aturtombol(true, True, False, True, False, False) Private Sub cmdprevious_click() On Error Resume Next datatransaksi.recordset.moveprevious With datatransaksi.recordset If (.BOF) Then.MoveLast If (.EOF) Then MsgBox "Tidak ada data",, "Perhatian"
37 End With tampilkan Call aturtombol(true, True, False, True, False, False) Private Sub cmdfirst_click() On Error Resume Next datatransaksi.recordset.movefirst With datatransaksi.recordset If (.BOF And.EOF) Then MsgBox "Tidak terdapat data pada Database",, "Warning" End With tampilkan Call aturtombol(true, True, False, True, False, False) Private Sub cmdlast_click() On Error Resume Next datatransaksi.recordset.movelast With datatransaksi.recordset If (.BOF And.EOF) Then MsgBox "Tidak ada data",, "Perhatian" End With
38 tampilkan Call aturtombol(true, True, False, True, False, False) Private Sub tampilkan() With datatransaksi.recordset txtnotran =!no_surat_kredit DPtglkredit.Value =!tgl_kredit cmbkodebrg.text =!kode_brg txttaksir =!taksiran cmbnoktp.text =![no_ktp/sim] txtbunga =!bunga txtjthtempo =!tgl_pengembalian_kredit txtnominal =!nominal_pinjaman End With Private Sub aturtombol(add, edit, save, delete, update, cancel) cmdadd.enabled = add cmdedit.enabled = edit cmdsave.enabled = save cmddelete.enabled = delete cmdupdate.enabled = update cmdcancel.enabled = cancel Private Sub Timer1_Timer() lbljam = Format(Time, "hh : mm : ss") Private Sub bersihkantext() txtnotran = ""
39 cmbkodebrg = "" txttaksir = "" cmbnoktp = "" txtbunga = "" txtjthtempo = "" txtnominal = "" Private Sub txtqty_keypress(keyascii As Integer) If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbkeyback) Then KeyAscii = 0 Beep Private Sub txtbunga_change() If (Val(txtbunga) > 100) Then txtbunga = 100 Private Sub txtbunga_keypress(keyascii As Integer) If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbkeyback) Then Beep KeyAscii = 0
40 Private Sub txtnominal_change() If (Val(txtnominal) > Val(txttaksir)) Then MsgBox "Jumlah nominal pinjaman tidak dapat lebih besar dari nilai taksiran", vbinformation, "Perhatian" txtnominal = nilai_pinjaman: nilai_pinjaman = 0 Private Sub txtnominal_gotfocus() If (txttaksir = "") Then MsgBox "Nilai taksiran harus ada terlebih dahulu", vbinformation, "Perhatian" txtnominal = "" cmbkodebrg.setfocus
41 FORM DATA USERS Option Explicit Private Sub cmdadd_click() Call aturtombol(false, False, False, True, False, True) Call kuncitext(false) normal txtnama.setfocus txtpaslama.locked = True txtpaslama.backcolor = &HC0C0C0 Private Sub cmdcancel_click() If (cmdcancel.caption = "Cancel Adding") Then cmdcancel.caption = "Cancel Edit" bersihkantext Call kuncitext(true) notnormal Call aturtombol(true, False, False, False, False, False) Else cmdcancel.caption = "Cancel Adding" bersihkantext notnormal Call kuncitext(true) Call aturtombol(true, False, False, False, False, False)
42 Private Sub cmddelete_click() On Error GoTo handleerror Dim strsql, pass As String Dim x, jumrec As Byte Dim cobalagi, ketemu As Boolean cobalagi = False: ketemu = False datausers.refresh datausers.recordset.movefirst jumrec = 0 Do jumrec = jumrec + 1 datausers.recordset.movenext Loop Until (datausers.recordset.eof) If (jumrec = 1) Then MsgBox "Operasi tidak dapat dilakukan, ya maaf.!",, "Perhatian" GoTo sett_awal Do Do pass = InputBox("Ketik terlebih dahulu password anda :", "Password Confirm", "Ketik disini") If (Len(pass) = 0) Then cmdcancel.caption = "Cancel Adding" GoTo sett_awal If (pass = "Ketik disini") Then MsgBox "Ketik password terlebih dahulu",, "Perhatian"
43 Loop While (pass = "Ketik disini") datausers.recordset.findfirst "[password]='" & pass & "'" If (datausers.recordset.nomatch) Then MsgBox "Password anda tidak dikenal!",, "Perhatian" x = MsgBox("Ingin mencoba lagi?", vbyesno, "Perhatian") If (x = vbno) Then GoTo sett_awal Else cobalagi = True Else ketemu = True Loop While (cobalagi Or Not ketemu) x = MsgBox("Apakah anda yakin ingin menghapus data ini?", vbyesno, "Perhatian") If (x = vbyes) Then strsql = "delete from login where [namauser]='" & txtnama & _ "' and [password]='" & pass & "'" datausers.database.execute (strsql) datausers.refresh lstusers.clear datausers.recordset.movefirst Do lstusers.additem datausers.recordset.fields("namauser").value datausers.recordset.movenext Loop Until (datausers.recordset.eof) cmdcancel.caption = "Cancel Adding"
44 sett_awal: bersihkantext notnormal Call kuncitext(true) Call aturtombol(true, False, False, False, False, False) handleerror: MsgBox Err.Number & vbcrlf & Err.Description,, "Perhatian" On Error GoTo 0 Private Sub cmdedit_click() txtpaslama.locked = False txtpaslama.backcolor = &H80000005 txtpaslama.setfocus Call aturtombol(false, False, False, False, False, True) cmdcancel.caption = "Cancel Edit" Private Sub cmdsave_click() On Error GoTo handleerror Dim strsql As String If (txtnama = "") Then MsgBox "Nama user harus diisi",, "Perhatian" txtnama.setfocus If (txtpasbaru = "") Then MsgBox "Password harus diisi",, "Perhatian"
45 txtpasbaru.setfocus strsql = "insert into login([namauser],[password])" & _ "values('" & txtnama & "','" & txtpasbaru & "')" datausers.database.execute (strsql) lstusers.clear datausers.refresh datausers.recordset.movefirst Do lstusers.additem datausers.recordset.fields("namauser").value datausers.recordset.movenext Loop Until (datausers.recordset.eof) MsgBox "Data telah disimpan",, "Perhatian" bersihkantext Call kuncitext(true) Call aturtombol(true, False, False, False, False, False) notnormal datausers.refresh handleerror: MsgBox Err.Number & vbcrlf & Err.Description,, "ERROR" On Error GoTo 0 Private Sub cmdupdate_click() On Error GoTo handleerror Dim strsql As String If (txtpasbaru = "") Then
46 MsgBox "Isi password baru anda terlebih dahulu",, "Perhatian" txtpasbaru.setfocus strsql = "update login set" & _ "[password]='" & txtpasbaru & "' where [namauser]='" & _ txtnama & "' and [password]='" & txtpaslama & "'" datausers.database.execute (strsql) MsgBox "Data telah berhasil diperbaharui",, "Perhatian" cmdcancel.caption = "Cancel Adding" bersihkantext Call kuncitext(true) Call aturtombol(true, False, False, False, False, False) notnormal datausers.refresh handleerror: MsgBox Err.Number & vbcrlf & Err.Description On Error GoTo 0 Private Sub Form_Activate() datausers.recordset.movefirst Do lstusers.additem datausers.recordset.fields("namauser").value datausers.recordset.movenext Loop Until (datausers.recordset.eof)
47 Private Sub Form_Load() datausers.databasename = App.Path & "\datagadai.mdb" datausers.recordsource = "login" lstusers.clear notnormal Call kuncitext(true) Call aturtombol(true, False, False, False, False, False) Private Sub aturtombol(add, edit, delete, save, update, cancel) cmdadd.enabled = add cmdedit.enabled = edit cmddelete.enabled = delete cmdsave.enabled = save cmdupdate.enabled = update cmdcancel.enabled = cancel Private Sub lstusers_click() txtnama = lstusers.list(lstusers.listindex) Call kuncitext(true) notnormal Call aturtombol(false, True, True, False, False, True) cmdcancel.caption = "Cancel" Private Sub kuncitext(kunci) txtnama.locked = kunci txtpaslama.locked = kunci txtpasbaru.locked = kunci
48 Private Sub notnormal() txtnama.backcolor = &HC0C0C0 txtpaslama.backcolor = &HC0C0C0 txtpasbaru.backcolor = &HC0C0C0 Private Sub normal() txtnama.backcolor = &H80000005 txtpaslama.backcolor = &H80000005 txtpasbaru.backcolor = &H80000005 Private Sub txtnama_keypress(keyascii As Integer) If (KeyAscii = 13) Then txtpasbaru.setfocus Private Sub txtpaslama_keypress(keyascii As Integer) If (KeyAscii = 13) Then datausers.recordset.findfirst "[password]='" & txtpaslama & "'" If datausers.recordset.nomatch Then MsgBox "Password lama anda tidak dikenal..!",, "Perhatian" txtpaslama.setfocus Else txtpasbaru.backcolor = &H80000005 txtpasbaru.locked = False txtpasbaru.setfocus cmdupdate.enabled = True
49 Private Sub bersihkantext() txtnama = "" txtpaslama = "" txtpasbaru = "" FORM PREVIEW Private Sub Cmdcetak_Click() rptdatagadai.show Private Sub Command1_Click() Frmgadai.Show Unload Me Private Sub Form_Load() Datagadai.DatabaseName = App.Path & "\datagadai.mdb" Datagadai.RecordSource = "gadai"
50 FORM MDI Private Sub mnubarang_click() frmbarang.show Private Sub mnulogin_click() Frmlogin.Show Private Sub mnunasabah_click() Frmnasabah.Show Private Sub mnutransaksi_click() Frmgadai.Show Private Sub mnuuser_click() Frmdatausers.Show
51
52