= _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 12) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 330 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 11) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 300 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
177
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 10) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 270 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 9) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 240 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 8) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 210 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 7) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 180 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 6) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 150 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 5) + _
Data1.Recordset!saldo_spn
178
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 120 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 4) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 90 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 3) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 60 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 2) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 30 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 1) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Data7.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data7.Recordset!tgl_trans <= 30 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
End If
End If
End If
End If
End If
179
End If
End If
End If
End If
End If
End If
End If
End If
End If
x:
End Sub
Private Sub c()
On Error GoTo x
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 390 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 360 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 330 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 300 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
180
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 270 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 240 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 210 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 180 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 150 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
181
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 120 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 90 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 60 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data5.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 30 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data5.Recordset!no_rek
Data1.Recordset!saldo_spn = Data5.Recordset!sspn
Data1.Recordset.Update
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
x:
182
End Sub
Private Sub d()
On Error GoTo x
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 390 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 360 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 330 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 300 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 270 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
183
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 240 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 210 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 180 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 150 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 120 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
184
If Date - Data4.Recordset!tgl_trans >= 90 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 60 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
Else
Data4.Recordset.MoveLast
Data6.Recordset.MoveLast
If Date - Data4.Recordset!tgl_trans >= 30 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data6.Recordset!no_rek
Data1.Recordset!saldo_pjm = Data6.Recordset!spjm
Data1.Recordset.Update
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
x:
End Sub
Private Sub Form_Unload(Cancel As Integer)
c
d
End Sub
Private Sub Form_Activate()
On Error GoTo x
Data1.Recordset.Index = "xnasabah"
185
On Error Resume Next
Data1.Recordset.MoveLast
a
b
x:
End Sub
Private Sub Form_Load()
On Error GoTo x
warna_mati
mati
simpan2.Visible = False
x:
End Sub
Private Sub DBGrid1_Change()
If Data1.Recordset!j_kel = "W" Then
DBGrid1.Columns(4) = "WANITA"
Else
DBGrid1.Columns(4) = "PRIA"
End If
End Sub
Private Sub DBGrid1_RowColChange(LastRow As Variant, ByVal LastCol
As Integer)
On Error GoTo x
tampilan
x:
End Sub
Private Sub hapus_Click()
On Error GoTo x
If Text1.Text = "" Then
MsgBox "Klik Data yang Akan Dihapus Dulu Di Grid ??", vbOKOnly,
"pesan"
DBGrid1.Enabled = True
DBGrid1.AllowDelete = True
Else
With Data1.Recordset
If Not .NoMatch Then
Pesan = MsgBox("Yakin Akan Menghapus nasabah ber no rekening "
& !no_rek & " ...??", vbYesNo, "pesan")
If Pesan = vbYes Then
pan
.Delete
Data1.Refresh
DBGrid1.Refresh
kosong
186
End If
End If
End With
End If
On Error GoTo 0
Tambah.SetFocus
On Error Resume Next
Data1.Recordset.MoveLast
x:
End Sub
Private Sub refres_Click()
On Error GoTo x
Data1.Refresh
DBGrid1.Refresh
FORM_NASABAH.Refresh
On Error Resume Next
Data1.Recordset.MoveLast
x:
End Sub
Private Sub selesai_Click()
Unload Me
End Sub
Private Sub batal_Click()
On Error GoTo x
tombol_batal
warna_mati
simpan2.Visible = False
simpan.Visible = True
tampilan
refres.Enabled = True
Tambah.SetFocus
On Error Resume Next
Data1.Recordset.MoveLast
x:
End Sub
Private Sub simpan2_Click()
pan
On Error GoTo x
Data1.Recordset.Index = "xnasabah"
Data1.Recordset.Seek "=", Text1.Text
If Not Data1.Recordset.NoMatch Then
Data1.Recordset.edit
Data1.Recordset!no_rek = Text1.Text
Data1.Recordset!nama = Text3.Text
187
If Option1.Value = True Then
Data1.Recordset!j_kel = Option1.Caption
ElseIf Option2.Value = True Then
Data1.Recordset!j_kel = Option2.Caption
End If
Data1.Recordset!tempat_lhr = Text4.Text
Data1.Recordset!tgl_lahir = DTPicker1.Value
If Combo2.Text = "Islam" Then
Combo2.Text = "1"
Data1.Recordset!agama = Combo2.Text
ElseIf Combo2.Text = "Kristen" Then
Combo2.Text = "2"
Data1.Recordset!agama = Combo2.Text
ElseIf Combo2.Text = "Katolik" Then
Combo2.Text = "3"
Data1.Recordset!agama = Combo2.Text
ElseIf Combo2.Text = "Hindu" Then
Combo2.Text = "4"
Data1.Recordset!agama = Combo2.Text
ElseIf Combo2.Text = "Budha" Then
Combo2.Text = "5"
Data1.Recordset!agama = Combo2.Text
End If
Data1.Recordset!tlp = Text5.Text
Data1.Recordset!alamat = Text6.Text
Pesan = MsgBox("Yakin Simpan Hasil Editan ??", vbYesNo,
"PEMBERITAHUAN")
If Pesan = vbYes Then
Data1.Recordset.Update
Data1.Refresh
DBGrid1.Refresh
Else
simpan2.Enabled = False
End If
End If
Data1.Recordset.Index = "xnasabah"
On Error Resume Next
Data1.Recordset.MovePrevious
tombol_simpan
warna_mati
simpan.Visible = True
simpan2.Visible = False
selesai.SetFocus
x:
End Sub
Private Sub Tambah_Click()
On Error GoTo x
188
kosong
auto
tombol_tambah
warna_hidup
refres.Enabled = False
Text3.SetFocus
x:
End Sub
Private Sub edit_Click()
On Error GoTo x
warna_hidup
tombol_tambah
simpan.Visible = False
simpan2.Visible = True
Text2.SetFocus
x:
End Sub
Private Sub simpan_Click()
On Error GoTo x
If Text1.Text = "" Or Text3.Text = "" Or _
Text4.Text = "" Or Combo2.Text = "" Or _
Text5.Text = "" Or Text6.Text = "" Then
MsgBox "Silahkan Lengkapi Datanya!!", vbOKOnly + vbExclamation,
"PERINGATAN"
If Text1.Text = "" Then
Text1.SetFocus
ElseIf Text3.Text = "" Then
Text3.SetFocus
ElseIf Text4.Text = "" Then
Text4.SetFocus
ElseIf Text5.Text = "" Then
Text5.SetFocus
ElseIf Text6.Text = "" Then
Text6.SetFocus
ElseIf Combo2.Text = "" Then
Combo2.SetFocus
End If
Else
pan
Data1.Recordset.Index = "xnasabah"
Data1.Recordset.Seek "=", Text1.Text
If Data1.Recordset.NoMatch Then
Data1.Recordset.AddNew
Data1.Recordset!no_rek = Text1.Text
Data1.Recordset!nama = Text3.Text
If Option1.Value = True Then
189
Data1.Recordset!j_kel = Option1.Caption
ElseIf Option2.Value = True Then
Data1.Recordset!j_kel = Option2.Caption
End If
Data1.Recordset!tempat_lhr = Text4.Text
Data1.Recordset!tgl_lahir = DTPicker1.Value
If Combo2.Text = "Islam" Then
Combo2.Text = "1"
Data1.Recordset!agama = Combo2.Text
ElseIf Combo2.Text = "Kristen" Then
Combo2.Text = "2"
Data1.Recordset!agama = Combo2.Text
ElseIf Combo2.Text = "Katolik" Then
Combo2.Text = "3"
Data1.Recordset!agama = Combo2.Text
ElseIf Combo2.Text = "Hindu" Then
Combo2.Text = "4"
Data1.Recordset!agama = Combo2.Text
ElseIf Combo2.Text = "Budha" Then
Combo2.Text = "5"
Data1.Recordset!agama = Combo2.Text
End If
Data1.Recordset!tlp = Text5.Text
Data1.Recordset!alamat = Text6.Text
Data1.Recordset.Update
DBGrid1.Refresh
Else
MsgBox " No Rekening Sudah Ada,Jadi Tidak Boleh sama!",
vbOKOnly + vbCritical, "KESALAHAN"
simpan.Enabled = False
End If
Data1.Recordset.Index = "xnasabah"
On Error Resume Next
Data1.Recordset.MoveLast
tombol_simpan
warna_mati
Tambah.SetFocus
End If
x:
End Sub
Private Sub kosong()
On Error GoTo x
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
190
Text6.Text = ""
Combo1.Text = ""
Combo2.Text = ""
Option1.Value = False
Option2.Value = False
DTPicker1.Value = Date
x:
End Sub
Private Sub mati()
On Error GoTo x
simpan.Enabled = False
batal.Enabled = False
x:
End Sub
Private Sub pan()
On Error GoTo x
Dim i As Integer, panbar(32000) As String
ProgressBar1.Min = LBound(panbar)
ProgressBar1.Max = UBound(panbar)
ProgressBar1.Visible = True
ProgressBar1.Value = ProgressBar1.Min
For i = LBound(panbar) To UBound(panbar)
ProgressBar1.Value = i
Next i
ProgressBar1.Visible = False
ProgressBar1.Value = ProgressBar1.Min
x:
End Sub
Private Sub tombol_simpan()
On Error GoTo x
simpan.Enabled = False
batal.Enabled = False
Tambah.Enabled = True
edit.Enabled = True
Hapus.Enabled = True
selesai.Enabled = True
refres.Enabled = True
x:
End Sub
Private Sub tombol_tambah()
On Error GoTo x
Tambah.Enabled = False
edit.Enabled = False
Hapus.Enabled = False
selesai.Enabled = False
simpan.Enabled = True
191
batal.Enabled = True
refres.Enabled = True
x:
End Sub
Private Sub tombol_batal()
On Error GoTo x
simpan.Enabled = False
batal.Enabled = False
Tambah.Enabled = True
edit.Enabled = True
Hapus.Enabled = True
selesai.Enabled = True
x:
End Sub
Private Sub warna_hidup()
On Error GoTo x
Text2.Enabled = True
Text3.Enabled = True
Text4.Enabled = True
Text5.Enabled = True
Text6.Enabled = True
Option1.Enabled = True
Option2.Enabled = True
Combo1.Enabled = True
Combo2.Enabled = True
DTPicker1.Enabled = True
Text2.BackColor = &H80000005
Text3.BackColor = &H80000005
Text4.BackColor = &H80000005
Text5.BackColor = &H80000005
Text6.BackColor = &H80000005
Option1.BackColor = &H80000006
Option2.BackColor = &H80000006
Combo1.BackColor = &H80000005
Combo2.BackColor = &H80000005
x:
End Sub
Private Sub warna_mati()
On Error GoTo x
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
Text4.Enabled = False
Text5.Enabled = False
Text6.Enabled = False
192
Option1.Enabled = False
Option2.Enabled = False
DTPicker1.Enabled = False
Combo1.Enabled = False
Combo2.Enabled = False
Text1.BackColor = &H80000004
Text2.BackColor = &H80000004
Text3.BackColor = &H80000004
Text4.BackColor = &H80000004
Text5.BackColor = &H80000004
Text6.BackColor = &H80000004
Option1.BackColor = &H80000006
Option2.BackColor = &H80000006
Combo1.BackColor = &H80000004
Combo2.BackColor = &H80000004
x:
End Sub
Private Sub tampilan()
On Error GoTo x
With Data1.Recordset
Text1.Text = !no_rek
Text2.Text = !nis
Text3.Text = !nama
Combo1.Text = !kelas
If Data1.Recordset!j_kel = "P" Then
Option1.Value = True
Else: Option2.Value = True
End If
Text4.Text = !tempat_lhr
Text5.Text = !tlp
Text6.Text = !alamat
DTPicker1.Value = !tgl_lahir
If Data1.Recordset!agama = "1" Then
Combo2.Text = "Islam"
ElseIf Data1.Recordset!agama = "2" Then
Combo2.Text = "Kristen"
ElseIf Data1.Recordset!agama = "3" Then
Combo2.Text = "Katolik"
ElseIf Data1.Recordset!agama = "4" Then
Combo2.Text = "Hindu"
ElseIf Data1.Recordset!agama = "5" Then
Combo2.Text = "Budha"
End If
End With
x:
End Sub
193
Private Sub text1_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Text2.SetFocus
End If
x:
End Sub
Private Sub text2_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Text3.SetFocus
End If
If Not IsNumeric(Chr(KeyAscii)) Then
KeyAscii = 0
End If
x:
End Sub
Private Sub text3_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Combo1.SetFocus
End If
x:
End Sub
Private Sub combo1_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Option1.SetFocus
End If
x:
End Sub
Private Sub option1_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Option2.SetFocus
End If
x:
End Sub
Private Sub option2_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Text4.SetFocus
End If
194
x:
End Sub
Private Sub text4_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Combo2.SetFocus
End If
x:
End Sub
Private Sub combo2_keypress(KeyAscii As Integer)
If KeyAscii = 13 Then
Text5.SetFocus
End If
End Sub
Private Sub text5_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Text6.SetFocus
End If
If Not IsNumeric(Chr(KeyAscii)) Then
KeyAscii = 0
End If
x:
End Sub
Private Sub text6_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
simpan.SetFocus
End If
x:
End Sub
Private Sub auto()
On Error GoTo x
Dim urutan As String * 5
Dim hitung As Byte
With Data1.Recordset
On Error Resume Next
Data1.Recordset.MoveLast
If .RecordCount = 0 Then
urutan = "00001"
Else
.MoveLast
hitung = Val(Right(.Fields("no_rek"), 5)) + 1
195
urutan = Right("00000" & hitung, 5)
End If
Text1 = urutan
End With
x:
End Sub
Private Sub cari_Click()
Data1.Recordset.Index = "xnasabah"
Data1.Recordset.Seek "=", Text9.Text
If Data1.Recordset.NoMatch Then
MsgBox "Tidak Ada Data Tersebut !!!"
Text9.SetFocus
Else
Text9.SetFocus
End If
End Sub
d) Desain Form Transaksi Pinjam
Kode Program :
Private Sub b()
On Error GoTo x
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 390 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 13) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 360 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
196
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 12) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 330 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 11) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 300 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 10) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 270 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 9) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 240 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 8) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 210 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 7) + _
Data1.Recordset!saldo_pjm
197
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 180 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 6) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 150 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 5) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 120 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 4) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 90 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 3) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 60 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 2) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
198
If Date - Data2.Recordset!tgl_trans >= 30 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 1) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans <= 30 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
x:
End Sub
Private Sub c()
On Error GoTo x
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 390 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 360 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
199
If Date - Data2.Recordset!tgl_trans >= 330 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 300 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 270 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 240 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 210 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 180 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 150 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
200
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 120 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 90 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 60 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 30 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
x:
End Sub
Private Sub DBCombo1_Change()
On Error GoTo x
With Data1.Recordset
Data1.Recordset.Index = "xnasabah"
Data1.Recordset.Seek "=", DBCombo1.Text
If Not .NoMatch Then
201
Text2.Text = !nama
On Error Resume Next
Text3.Text = !saldo_pjm
Else
End If
End With
Data1.Recordset.Index = "xnasabah"
x:
End Sub
Private Sub DBGrid1_RowColChange(LastRow As Variant, ByVal LastCol
As Integer)
On Error GoTo x
tampilan
DBGrid1.Refresh
x:
End Sub
Private Sub Form_Activate()
On Error GoTo x
Data1.Recordset.Index = "xnasabah"
Data2.Recordset.Index = "xpinjam"
On Error Resume Next
Data2.Recordset.MoveLast
b
Tambah.SetFocus
x:
End Sub
Private Sub Form_Unload(Cancel As Integer)
c
End Sub
Private Sub hapus_Click()
On Error GoTo x
If Text1.Text = "" Then
MsgBox "Klik Data yang Akan Dihapus Dulu Di Grid ??", vbOKOnly,
"pesan"
DBGrid1.Enabled = True
DBGrid1.AllowDelete = True
Else
With Data2.Recordset
If Not .NoMatch Then
Pesan = MsgBox("Yakin Akan Menghapus data Pinjam tersebut..??",
vbYesNo, "pesan")
On Error Resume Next
202
Data1.Recordset.Index = "xpjm"
Data1.Recordset.Seek "=", Text3.Text
If Pesan = vbYes Then
pan
.Delete
With Data4.Recordset
If Not .NoMatch Then
.Delete
End If
End With
On Error Resume Next
If Not Data1.Recordset.NoMatch Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = (Val(Text3.Text) - Val(Text4.Text))
Data1.Recordset.Update
Data1.Refresh
bersih
End If
Data1.Refresh
Data2.Refresh
DBGrid1.Refresh
kosong
End If
End If
End With
End If
On Error GoTo 0
On Error Resume Next
Data2.Recordset.MoveLast
x:
End Sub
Private Sub bersih()
On Error GoTo x
Data4.Recordset.Index = "xspn1"
Data4.Recordset.Seek "=", Text3.Text
If Not Data4.Recordset.NoMatch Then
Data4.Recordset.edit
Data4.Recordset!sspn = (Val(Text3.Text) - Val(Text4.Text))
Data4.Recordset.Update
Data4.Refresh
End If
Data4.Refresh
Data4.Refresh
DBGrid1.Refresh
kosong
x:
End Sub
203
Private Sub refres_Click()
On Error GoTo x
FORM_PINJAM.Refresh
Data1.Refresh
Data2.Refresh
DBGrid1.Refresh
On Error Resume Next
Data2.Recordset.MoveLast
x:
End Sub
Private Sub selesai_Click()
Unload Me
End Sub
Private Sub Tambah_Click()
On Error GoTo x
kosong
auto
tombol_tambah
warna_hidup
DBCombo1.SetFocus
x:
End Sub
Private Sub batal_Click()
On Error GoTo x
kosong
tombol_batal
warna_mati
simpan2.Visible = False
simpan.Visible = True
tampilan
x:
End Sub
Private Sub Form_Load()
On Error GoTo x
mati
warna_mati
kosong
simpan2.Visible = False
x:
End Sub
Private Sub coba()
On Error GoTo x
Data4.Recordset.Index = "xpjm2"
204
Data4.Recordset.Seek "=", Text3.Text
If Data4.Recordset.NoMatch Then
Data4.Recordset.AddNew
Data4.Recordset!no_rek = DBCombo1.Text
Data4.Recordset!spjm = Val(Text3.Text) + Val(Text4.Text)
Data4.Recordset.Update
ElseIf Not Data4.Recordset.NoMatch Then
Data4.Recordset.edit
Data4.Recordset!no_rek = DBCombo1.Text
Data4.Recordset!sspn = Val(Text3.Text) + Val(Text4.Text)
Data4.Recordset.Update
Data4.Refresh
End If
DBGrid1.Refresh
x:
End Sub
Private Sub pan()
On Error GoTo x
Dim i As Integer, panbar(32000) As String
ProgressBar1.Min = LBound(panbar)
ProgressBar1.Max = UBound(panbar)
ProgressBar1.Visible = True
ProgressBar1.Value = ProgressBar1.Min
For i = LBound(panbar) To UBound(panbar)
ProgressBar1.Value = i
Next i
ProgressBar1.Visible = False
ProgressBar1.Value = ProgressBar1.Min
x:
End Sub
Private Sub simpan_Click()
On Error GoTo x
If Text1.Text = "" Or DBCombo1.Text = "" Or Text4.Text = "" Then
MsgBox "Silahkan Lengkapi Datanya!!", vbOKOnly + vbExclamation,
"PERINGATAN"
If Text1.Text = "" Then
Text1.SetFocus
ElseIf DBCombo1.Text = "" Then
DBCombo1.SetFocus
ElseIf Text4.Text = "" Then
Text4.SetFocus
End If
Else
pan
Data2.Recordset.Index = "xpinjam"
205
Data2.Recordset.Seek "=", Text1.Text
With Data1.Recordset
Data1.Recordset.Index = "xnasabah"
Data1.Recordset.Seek "=", Text3.Text
If Not Text3.Text = 0 Then
MsgBox "Maaf Anda belum melunasi pinjaman" + Chr(13) _
+ Chr(13) + " Jadi Tidak boleh Meminjam Lagi ", vbOKOnly,
"Peringatan"
warna_mati
Else
If Data2.Recordset.NoMatch Then
Data2.Recordset.AddNew
Data2.Recordset!no_trans = Text1.Text
Data2.Recordset!tgl_trans = DTPicker1.Value
Data2.Recordset!no_rek = DBCombo1.Text
Data2.Recordset!jml_pinjam = Text4.Text
Data1.Recordset.Index = "xpjm"
Data1.Recordset.Seek "=", Text3.Text
If Not Data1.Recordset.NoMatch Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Val(Text3.Text) + (Text4.Text)
Data1.Recordset.Update
Data1.Refresh
Else
If Data1.Recordset.NoMatch Then
Data1.Recordset.AddNew
Data1.Recordset!saldo_pjm = Text4.Text
Data1.Recordset.Update
Data1.Refresh
End If
End If
Data2.Recordset.Update
DBGrid1.Refresh
coba
Else
MsgBox " Maaf No transaksi sudah Ada !", vbOKOnly + vbCritical,
"KESALAHAN"
simpan.Enabled = False
End If
End If
End With
Data2.Recordset.Index = "xpinjam"
On Error Resume Next
Data2.Recordset.MoveLast
On Error Resume Next
tombol_simpan
warna_mati
Tambah.SetFocus
206
End If
x:
End Sub
Private Sub kosong()
On Error GoTo x
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text6.Text = ""
DBCombo1.Text = ""
DTPicker1.Value = Date
x:
End Sub
Private Sub mati()
On Error GoTo x
simpan.Enabled = False
batal.Enabled = False
x:
End Sub
Private Sub tombol_simpan()
On Error GoTo x
simpan.Enabled = False
batal.Enabled = False
Tambah.Enabled = True
Hapus.Enabled = True
selesai.Enabled = True
refres.Enabled = True
x:
End Sub
Private Sub tombol_tambah()
On Error GoTo x
Tambah.Enabled = False
Hapus.Enabled = False
selesai.Enabled = False
simpan.Enabled = True
batal.Enabled = True
refres.Enabled = False
x:
End Sub
Private Sub tombol_batal()
On Error GoTo x
207
simpan.Enabled = False
batal.Enabled = False
Tambah.Enabled = True
Hapus.Enabled = True
selesai.Enabled = True
refres.Enabled = True
x:
End Sub
Private Sub warna_hidup()
On Error GoTo x
Text4.Enabled = True
DBCombo1.Enabled = True
DTPicker1.Enabled = True
Text4.BackColor = &H80000005
DBCombo1.BackColor = &H80000005
x:
End Sub
Private Sub warna_mati()
On Error GoTo x
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
Text4.Enabled = False
Text6.Enabled = False
DTPicker1.Enabled = False
DBCombo1.Enabled = False
Text1.BackColor = &H80000004
Text2.BackColor = &H80000004
Text3.BackColor = &H80000004
Text4.BackColor = &H80000004
Text6.BackColor = &H80000004
DBCombo1.BackColor = &H80000004
x:
End Sub
Private Sub tampilan()
On Error GoTo x
With Data2.Recordset
Text1.Text = !no_trans
DBCombo1.Text = !no_rek
DTPicker1.Value = !tgl_trans
Text4.Text = !jml_pinjam
DBGrid1.Refresh
With Data1.Recordset
Text6.Text = Val(Text3.Text)
Data1.Refresh
208
DBGrid1.Refresh
End With
End With
x:
End Sub
Private Sub dbcombo1_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Text4.SetFocus
End If
x:
End Sub
Private Sub text1_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
DBCombo1.SetFocus
End If
x:
End Sub
Private Sub Text4_Change()
On Error GoTo x
Text6.Text = Val(Text3.Text) + (Text4.Text)
x:
End Sub
Private Sub text4_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
simpan.SetFocus
End If
If Not IsNumeric(Chr(KeyAscii)) Then
KeyAscii = 0
End If
x:
End Sub
Private Sub auto()
On Error GoTo x
Dim urutan As String * 5
Dim hitung As Byte
With Data2.Recordset
If .RecordCount = 0 Then
urutan = "00001"
Else
.MoveLast
hitung = Val(Right(.Fields("no_trans"), 5)) + 1
urutan = Right("00000" & hitung, 5)
209
End If
Text1 = urutan
End With
x:
End Sub
e) Desain Form Setoran
Kode Program :
Private Sub b()
On Error GoTo x
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 390 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 13) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 360 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 12) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 330 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 11) + _
210
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 300 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 10) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 270 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 9) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 240 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 8) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 210 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 7) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 180 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 6) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
211
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 150 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 5) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 120 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 4) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 90 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 3) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 60 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 2) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 30 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = _
((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) *
Data1.Recordset!saldo_pjm) * 1) + _
Data1.Recordset!saldo_pjm
Data1.Recordset.Update
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans <= 30 Then
Data1.Recordset.edit
212
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
x:
End Sub
Private Sub c()
On Error GoTo x
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 390 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 360 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 330 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 300 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
213
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 270 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 240 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 210 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 180 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 150 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 120 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 90 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
214
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 60 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
Else
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans >= 30 Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Data4.Recordset!spjm
Data1.Recordset.Update
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
x:
End Sub
Private Sub DBCombo1_Change()
On Error GoTo x
With Data1.Recordset
Data1.Recordset.Index = "xnasabah"
Data1.Recordset.Seek "=", DBCombo1.Text
If Not .NoMatch Then
Text2.Text = !nama
On Error Resume Next
Text3.Text = !saldo_pjm
Else
End If
End With
Data1.Recordset.Index = "xnasabah"
x:
End Sub
215
Private Sub DBGrid1_RowColChange(LastRow As Variant, ByVal LastCol
As Integer)
On Error GoTo x
tampilan
x:
End Sub
Private Sub Form_Activate()
On Error GoTo x
Data1.Recordset.Index = "xnasabah"
Data2.Recordset.Index = "xsetor"
On Error Resume Next
Data2.Recordset.MoveLast
b
Tambah.SetFocus
x:
End Sub
Private Sub Form_Unload(Cancel As Integer)
c
End Sub
Private Sub hapus_Click()
On Error GoTo x
If Text1.Text = "" Then
MsgBox "Klik Data yang Akan Dihapus Dulu Di Grid ??", vbOKOnly,
"pesan"
DBGrid1.Enabled = True
DBGrid1.AllowDelete = True
Else
With Data2.Recordset
If Not .NoMatch Then
Pesan = MsgBox("Yakin Akan Menghapus data Setoran tersebut..??",
vbYesNo, "pesan")
On Error Resume Next
Data1.Recordset.Index = "xpjm"
Data1.Recordset.Seek "=", Text3.Text
If Pesan = vbYes Then
pan
.Delete
On Error Resume Next
If Not Data1.Recordset.NoMatch Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = (Val(Text3.Text) + Val(Text4.Text))
Data1.Recordset.Update
Data1.Refresh
bersih
End If
Data1.Refresh
216
Data2.Refresh
DBGrid1.Refresh
kosong
End If
End If
End With
End If
On Error GoTo 0
On Error Resume Next
Data2.Recordset.MoveLast
x:
End Sub
Private Sub bersih()
On Error GoTo x
Data4.Recordset.Index = "xpjm2"
Data4.Recordset.Seek "=", Text3.Text
If Not Data4.Recordset.NoMatch Then
Data4.Recordset.edit
Data4.Recordset!spjm = (Val(Text3.Text) - Val(Text4.Text))
Data4.Recordset.Update
Data4.Refresh
End If
Data4.Refresh
Data4.Refresh
DBGrid1.Refresh
kosong
x:
End Sub
Private Sub refres_Click()
On Error GoTo x
FORM_SETORAN.Refresh
Data1.Refresh
Data2.Refresh
DBGrid1.Refresh
On Error Resume Next
Data2.Recordset.MoveLast
x:
End Sub
Private Sub selesai_Click()
Unload Me
End Sub
Private Sub Tambah_Click()
On Error GoTo x
kosong
217
tombol_tambah
warna_hidup
auto
DBCombo1.SetFocus
x:
End Sub
Private Sub batal_Click()
On Error GoTo x
kosong
On Error Resume Next
tombol_batal
warna_mati
simpan1.Visible = False
simpan.Visible = True
tampilan
x:
End Sub
Private Sub Form_Load()
On Error GoTo x
mati
warna_mati
kosong
simpan1.Visible = False
x:
End Sub
Private Sub coba()
On Error GoTo x
Data4.Recordset.Index = "xpjm2"
Data4.Recordset.Seek "=", Text3.Text
If Data4.Recordset.NoMatch Then
Data4.Recordset.AddNew
Data4.Recordset!no_rek = DBCombo1.Text
Data4.Recordset!spjm = Val(Text3.Text) - Val(Text4.Text)
Data4.Recordset.Update
ElseIf Not Data4.Recordset.NoMatch Then
Data4.Recordset.edit
Data4.Recordset!no_rek = DBCombo1.Text
Data4.Recordset!spjm = Val(Text3.Text) - Val(Text4.Text)
Data4.Recordset.Update
Data4.Refresh
End If
DBGrid1.Refresh
x:
End Sub
218
Private Sub pan()
On Error GoTo x
Dim i As Integer, panbar(32000) As String
ProgressBar1.Min = LBound(panbar)
ProgressBar1.Max = UBound(panbar)
ProgressBar1.Visible = True
ProgressBar1.Value = ProgressBar1.Min
For i = LBound(panbar) To UBound(panbar)
ProgressBar1.Value = i
Next i
ProgressBar1.Visible = False
ProgressBar1.Value = ProgressBar1.Min
x:
End Sub
Private Sub simpan_Click()
On Error GoTo x
If Text1.Text = "" Or DBCombo1.Text = "" Or Text4.Text = "" Then
MsgBox "Silahkan Lengkapi Datanya!!", vbOKOnly + vbExclamation,
"PERINGATAN"
If Text1.Text = "" Then
Text1.SetFocus
ElseIf DBCombo1.Text = "" Then
DBCombo1.SetFocus
ElseIf Text4.Text = "" Then
Text4.SetFocus
End If
Else
pan
Data2.Recordset.Index = "xsetor"
Data2.Recordset.Seek "=", Text1.Text
With Data1.Recordset
Data1.Recordset.Index = "xnasabah"
Data1.Recordset.Seek "=", Text3.Text
If Text3.Text = 0 Then
MsgBox "Maaf Anda sudah Tidak Punya Pinjaman" + Chr(13) _
+ Chr(13) + " Jadi Tidak Perlu Setor Lagi ", vbOKOnly, "Peringatan"
Text2.Text = ""
Text3.Text = ""
DBCombo1.SetFocus
Else
If Data2.Recordset.NoMatch Then
Data2.Recordset.AddNew
Data2.Recordset!no_trans = Text1.Text
Data2.Recordset!tgl_trans = DTPicker1.Value
Data2.Recordset!no_rek = DBCombo1.Text
Data2.Recordset!jml_setor = Text4.Text
On Error Resume Next
Data1.Recordset.Index = "xpjm"
219
Data1.Recordset.Seek "=", Text3.Text
If Data1.Recordset.NoMatch Then
Data1.Recordset.AddNew
Data1.Recordset!saldo_pjm = Text4.Text
Data1.Recordset.Update
Data1.Refresh
Else
If Not Data1.Recordset.NoMatch Then
Data1.Recordset.edit
Data1.Recordset!saldo_pjm = Val(Text3.Text) - (Text4.Text)
Data1.Recordset.Update
Data1.Refresh
End If
End If
Data2.Recordset.Update
DBGrid1.Refresh
coba
Else
MsgBox " Maaf No transaksi sudah Ada !", vbOKOnly + vbCritical,
"KESALAHAN"
simpan.Enabled = False
End If
End If
End With
Data2.Recordset.Index = "xsetor"
On Error Resume Next
Data2.Recordset.MoveLast
tombol_simpan
warna_mati
Tambah.SetFocus
End If
x:
End Sub
Private Sub kosong()
On Error GoTo x
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text6.Text = ""
DBCombo1.Text = ""
DTPicker1.Value = Date
x:
End Sub
Private Sub mati()
On Error GoTo x
220
simpan.Enabled = False
batal.Enabled = False
x:
End Sub
Private Sub tombol_simpan()
On Error GoTo x
simpan.Enabled = False
batal.Enabled = False
Tambah.Enabled = True
Hapus.Enabled = True
selesai.Enabled = True
refres.Enabled = True
x:
End Sub
Private Sub tombol_tambah()
On Error GoTo x
Tambah.Enabled = False
Hapus.Enabled = False
selesai.Enabled = False
simpan.Enabled = True
batal.Enabled = True
refres.Enabled = False
x:
End Sub
Private Sub tombol_batal()
On Error GoTo x
simpan.Enabled = False
batal.Enabled = False
Tambah.Enabled = True
Hapus.Enabled = True
selesai.Enabled = True
refres.Enabled = True
x:
End Sub
Private Sub warna_hidup()
On Error GoTo x
Text4.Enabled = True
DBCombo1.Enabled = True
DTPicker1.Enabled = True
Text4.BackColor = &H80000005
DBCombo1.BackColor = &H80000005
x:
End Sub
221
Private Sub warna_mati()
On Error GoTo x
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
Text4.Enabled = False
Text6.Enabled = False
DTPicker1.Enabled = False
DBCombo1.Enabled = False
Text1.BackColor = &H80000004
Text2.BackColor = &H80000004
Text3.BackColor = &H80000004
Text4.BackColor = &H80000004
Text6.BackColor = &H80000004
DBCombo1.BackColor = &H80000004
x:
End Sub
Private Sub tampilan()
On Error GoTo x
With Data2.Recordset
Text1.Text = !no_trans
DBCombo1.Text = !no_rek
DTPicker1.Value = !tgl_trans
Text4.Text = !jml_setor
DBGrid1.Refresh
With Data1.Recordset
Text6.Text = Val(Text3.Text)
Data1.Refresh
DBGrid1.Refresh
End With
End With
x:
End Sub
Private Sub dbcombo1_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Text4.SetFocus
End If
x:
End Sub
Private Sub text1_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
DBCombo1.SetFocus
222
End If
x:
End Sub
Private Sub Text4_Change()
On Error GoTo x
On Error Resume Next
Text6.Text = Val(Text3.Text) - (Text4.Text)
x:
End Sub
Private Sub text4_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
simpan.SetFocus
End If
If Not IsNumeric(Chr(KeyAscii)) Then
KeyAscii = 0
End If
x:
End Sub
Private Sub auto()
On Error GoTo x
Dim urutan As String * 5
Dim hitung As Byte
With Data2.Recordset
If .RecordCount = 0 Then
urutan = "00001"
Else
.MoveLast
hitung = Val(Right(.Fields("no_trans"), 5)) + 1
urutan = Right("00000" & hitung, 5)
End If
Text1 = urutan
End With
x:
End Sub
223
f) Desain Form Simpan
Kode Program :
Private Sub a()
On Error GoTo x
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 390 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 13) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 360 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 12) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 330 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 11) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 300 Then
Data1.Recordset.edit
224
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 10) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 270 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 9) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 240 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 8) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 210 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 7) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 180 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 6) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 150 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 5) + _
225
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 120 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 4) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 90 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 3) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 60 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 2) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 30 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = _
((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) *
Data1.Recordset!saldo_spn) * 1) + _
Data1.Recordset!saldo_spn
Data1.Recordset.Update
Data5.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data5.Recordset!tgl_trans <= 30 Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
End If
End If
End If
End If
226
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
x:
End Sub
Private Sub c()
On Error GoTo x
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 390 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 360 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 330 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 300 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
227
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 270 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 240 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 210 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 180 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 150 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
228
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 120 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 90 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 60 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
Else
Data2.Recordset.MoveLast
Data4.Recordset.MoveLast
If Date - Data2.Recordset!tgl_trans >= 30 Then
Data1.Recordset.edit
On Error Resume Next
Data1.Recordset!no_rek = Data4.Recordset!no_rek
Data1.Recordset!saldo_spn = Data4.Recordset!sspn
Data1.Recordset.Update
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
229
x:
End Sub
Private Sub Form_Unload(Cancel As Integer)
c
End Sub
Private Sub Form_Activate()
On Error GoTo x
Data1.Recordset.Index = "xnasabah"
Data2.Recordset.Index = "xsimpan"
On Error Resume Next
Data2.Recordset.MoveLast
a
x:
End Sub
Private Sub DBCombo1_Change()
On Error GoTo x
With Data1.Recordset
Data1.Recordset.Index = "xnasabah"
Data1.Recordset.Seek "=", DBCombo1.Text
If Not .NoMatch Then
Text2.Text = !nama
On Error Resume Next
Text3.Text = !saldo_spn
Else
End If
End With
Data1.Recordset.Index = "xnasabah"
x:
End Sub
Private Sub DBGrid1_RowColChange(LastRow As Variant, ByVal LastCol
As Integer)
On Error GoTo x
tampilan
x:
End Sub
Private Sub hapus_Click()
On Error GoTo x
If Text1.Text = "" Then
MsgBox "Klik Data yang Akan Dihapus Dulu Di Grid ??", vbOKOnly,
"pesan"
DBGrid1.Enabled = True
DBGrid1.AllowDelete = True
230
Else
With Data2.Recordset
If Not .NoMatch Then
Pesan = MsgBox("Yakin Akan Menghapus data Simpan tersebut..??",
vbYesNo, "pesan")
On Error Resume Next
Data1.Recordset.Index = "xspn"
Data1.Recordset.Seek "=", Text3.Text
If Pesan = vbYes Then
pan
.Delete
With Data4.Recordset
If Not .NoMatch Then
.Delete
End If
End With
On Error Resume Next
If Not Data1.Recordset.NoMatch Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = (Val(Text3.Text) - Val(Text4.Text))
Data1.Recordset.Update
Data1.Refresh
bersih
End If
Data1.Refresh
Data2.Refresh
DBGrid1.Refresh
kosong
End If
End If
End With
End If
On Error GoTo 0
On Error Resume Next
Data2.Recordset.MoveLast
x:
End Sub
Private Sub bersih()
On Error GoTo x
Data4.Recordset.Index = "xspn1"
Data4.Recordset.Seek "=", Text3.Text
If Not Data4.Recordset.NoMatch Then
Data4.Recordset.edit
Data4.Recordset!sspn = (Val(Text3.Text) - Val(Text4.Text))
Data4.Recordset.Update
Data4.Refresh
End If
231
Data4.Refresh
Data4.Refresh
DBGrid1.Refresh
kosong
x:
End Sub
Private Sub refres_Click()
On Error GoTo x
FORM_SIMPAN.Refresh
Data1.Refresh
Data2.Refresh
DBGrid1.Refresh
On Error Resume Next
Data2.Recordset.MoveLast
x:
End Sub
Private Sub selesai_Click()
Unload Me
End Sub
Private Sub Tambah_Click()
On Error GoTo x
kosong
auto
tombol_tambah
warna_hidup
DBCombo1.SetFocus
x:
End Sub
Private Sub batal_Click()
On Error GoTo x
kosong
tombol_batal
warna_mati
simpan.Visible = True
tampilan
x:
End Sub
Private Sub Form_Load()
On Error GoTo x
mati
warna_mati
kosong
x:
232
End Sub
Private Sub coba()
On Error GoTo x
Data4.Recordset.Index = "xspn2"
Data4.Recordset.Seek "=", Text3.Text
If Data4.Recordset.NoMatch Then
Data4.Recordset.AddNew
Data4.Recordset!no_rek = DBCombo1.Text
Data4.Recordset!sspn = Val(Text3.Text) + Val(Text4.Text)
Data4.Recordset.Update
ElseIf Not Data4.Recordset.NoMatch Then
Data4.Recordset.edit
Data4.Recordset!no_rek = DBCombo1.Text
Data4.Recordset!sspn = Val(Text3.Text) + Val(Text4.Text)
Data4.Recordset.Update
Data4.Refresh
End If
DBGrid1.Refresh
x:
End Sub
Private Sub pan()
On Error GoTo x
Dim i As Integer, panbar(32000) As String
ProgressBar1.Min = LBound(panbar)
ProgressBar1.Max = UBound(panbar)
ProgressBar1.Visible = True
ProgressBar1.Value = ProgressBar1.Min
For i = LBound(panbar) To UBound(panbar)
ProgressBar1.Value = i
Next i
ProgressBar1.Visible = False
ProgressBar1.Value = ProgressBar1.Min
x:
End Sub
Private Sub simpan_Click()
On Error GoTo x
If Text1.Text = "" Or DBCombo1.Text = "" Or Text4.Text = "" Then
MsgBox "Silahkan Lengkapi Datanya!!", vbOKOnly + vbExclamation,
"PERINGATAN"
If Text1.Text = "" Then
Text1.SetFocus
ElseIf DBCombo1.Text = "" Then
DBCombo1.SetFocus
ElseIf Text4.Text = "" Then
Text4.SetFocus
233
End If
Else
pan
Data2.Recordset.Index = "xsimpan"
Data2.Recordset.Seek "=", Text1.Text
If Data2.Recordset.NoMatch Then
Data2.Recordset.AddNew
Data2.Recordset!no_trans = Text1.Text
Data2.Recordset!tgl_trans = DTPicker1.Value
Data2.Recordset!no_rek = DBCombo1.Text
Data2.Recordset!jml_simpan = Text4.Text
Data1.Recordset.Index = "xspn"
Data1.Recordset.Seek "=", Text3.Text
If Data1.Recordset.NoMatch Then
Data1.Recordset.AddNew
Data1.Recordset!saldo_spn = Text4.Text
Data1.Recordset.Update
Data1.Refresh
Else
If Not Data1.Recordset.NoMatch Then
Data1.Recordset.edit
Data1.Recordset!saldo_spn = Val(Text3.Text) + Val(Text4.Text)
Data1.Recordset.Update
Data1.Refresh
End If
End If
Data2.Recordset.Update
DBGrid1.Refresh
Else
MsgBox " Maaf No transaksi sudah Ada !", vbOKOnly + vbCritical,
"KESALAHAN"
simpan.Enabled = False
End If
coba
Data2.Recordset.Index = "xsimpan"
On Error Resume Next
Data2.Recordset.MoveLast
tombol_simpan
warna_mati
Tambah.SetFocus
End If
x:
End Sub
Private Sub kosong()
On Error GoTo x
Text1.Text = ""
Text2.Text = ""
234
Text3.Text = ""
Text4.Text = ""
Text6.Text = ""
DBCombo1.Text = ""
DTPicker1.Value = Date
x:
End Sub
Private Sub mati()
On Error GoTo x
simpan.Enabled = False
batal.Enabled = False
x:
End Sub
Private Sub tombol_simpan()
On Error GoTo x
simpan.Enabled = False
batal.Enabled = False
Tambah.Enabled = True
Hapus.Enabled = True
selesai.Enabled = True
refres.Enabled = True
x:
End Sub
Private Sub tombol_tambah()
On Error GoTo x
Tambah.Enabled = False
Hapus.Enabled = False
selesai.Enabled = False
simpan.Enabled = True
batal.Enabled = True
refres.Enabled = False
x:
End Sub
Private Sub tombol_batal()
On Error GoTo x
simpan.Enabled = False
batal.Enabled = False
Tambah.Enabled = True
Hapus.Enabled = True
selesai.Enabled = True
refres.Enabled = True
x:
End Sub
235
Private Sub warna_hidup()
On Error GoTo x
Text4.Enabled = True
DBCombo1.Enabled = True
DTPicker1.Enabled = True
Text4.BackColor = &H80000005
DBCombo1.BackColor = &H80000005
x:
End Sub
Private Sub warna_mati()
On Error GoTo x
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
Text4.Enabled = False
Text6.Enabled = False
DTPicker1.Enabled = False
DBCombo1.Enabled = False
Text1.BackColor = &H80000004
Text2.BackColor = &H80000004
Text3.BackColor = &H80000004
Text4.BackColor = &H80000004
Text6.BackColor = &H80000004
DBCombo1.BackColor = &H80000004
x:
End Sub
Private Sub tampilan()
On Error GoTo x
With Data2.Recordset
Text1.Text = !no_trans
DBCombo1.Text = !no_rek
DTPicker1.Value = !tgl_trans
Text4.Text = !jml_simpan
DBGrid1.Refresh
With Data1.Recordset
Text6.Text = Val(Text3.Text)
Data1.Refresh
DBGrid1.Refresh
End With
End With
x:
End Sub
236
Private Sub dbcombo1_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
Text4.SetFocus
End If
x:
End Sub
Private Sub text1_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
DBCombo1.SetFocus
End If
x:
End Sub
Private Sub text4_keypress(KeyAscii As Integer)
On Error GoTo x
If KeyAscii = 13 Then
simpan.SetFocus
End If
If Not IsNumeric(Chr(KeyAscii)) Then
KeyAscii = 0
End If
x:
End Sub
Private Sub Text4_Change()
On Error GoTo x
Text6.Text = Val(Text3.Text) + Val(Text4.Text)
x:
End Sub
Private Sub auto()
On Error GoTo x
Dim urutan As String * 5
Dim hitung As Byte
With Data2.Recordset
If .RecordCount = 0 Then
urutan = "00001"
Else
.MoveLast
hitung = Val(Right(.Fields("no_trans"), 5)) + 1
urutan = Right("00000" & hitung, 5)
End If
Text1 = urutan
End With
x:
End Sub
237
g) Desain MDI Form menu utama
Kode Program :
Private Sub backup_Click()
FORM_BACK_UP.Show
End Sub
Private Sub bunga_Click()
FORM_BUNGA.Show
End Sub
Private Sub exit_Click()
tanya = MsgBox(" Yakin Anda akan Keluar dari Program Ini...?", 4 + 32 +
256, "KONFIRMASI")
If tanya = 6 Then
End
End If
End Sub
Private Sub gantipassword_Click()
GANTI_PASSWORD.Show
End Sub
238
Private Sub lapnasabah_Click()
LAP_NASABAH.Show
End Sub
Private Sub lappengambilan_Click()
LAP_PENGAMBILAN.Show
End Sub
Private Sub lappinjam_Click()
LAP_PINJAM.Show
End Sub
Private Sub lapsetoran_Click()
LAP_SETORAN.Show
End Sub
Private Sub lapsimpan_Click()
LAP_SIMPAN.Show
End Sub
Private Sub nasabah_Click()
FORM_NASABAH.Show
End Sub
Private Sub pengambilan_Click()
FORM_PENGAMBILAN.Show
End Sub
Private Sub pinjam_Click()
FORM_PINJAM.Show
End Sub
Private Sub setoran_Click()
FORM_SETORAN.Show
End Sub
Private Sub simpan_Click()
FORM_SIMPAN.Show
End Sub
Private Sub Timer1_Timer()
Label4.Left = Label4.Left - 180
If Label4.Left <= -29000 Then
Timer1.Enabled = True
Label4.Left = "14000"
End If
End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
239
Select Case Button.Key
Case "a"
FORM_BUNGA.Show
Case "b"
FORM_NASABAH.Show
Case "c"
FORM_SIMPAN.Show
Case "d"
FORM_PINJAM.Show
Case "e"
FORM_PENGAMBILAN.Show
Case "f"
FORM_SETORAN.Show
LAP_SETORAN.Show
End Select
End Sub