Beruflich Dokumente
Kultur Dokumente
com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Buka VB
2.
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
3.
4.
Klik Open
5.
Public
Public
Public
Public
Public
Public
Public
Public
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
4.4 Pengolahan Data Motor
Untuk melakukan pengolahan data kendaraan, buatlah form seperti bentuk di bawah ini. Desain tabel motor
telah disederhanakan. Para pembaca silakan mengubahkan sesuai kebutuhan.
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Coding :
Private Sub Form_Activate()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & App.Path &
"\DBKredit.mdb"
Adodc1.RecordSource = "belicash"
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1
DataGrid1.Refresh
'menampilkan daftar kode customer dalam combo1
Call BukaDB
RSCustomer.Open "Customer", CONN
Combo1.Clear
Do Until RSCustomer.EOF
Combo1.AddItem RSCustomer!Kodecus
RSCustomer.MoveNext
Loop
'menampilkan daftar kode motor di combo2
RSMotor.Open "Motor", CONN
Combo2.Clear
Do Until RSMotor.EOF
Combo2.AddItem RSMotor!Kodemtr
RSMotor.MoveNext
Loop
Call Auto 'memanggil IDCash otomatis dengan pola tanggal
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Tanggal = Date
End Sub
'memanggil IDCash otomatis dengan pola tanggal
'buka tabel becash dan cari IDCash yang paling besar
'jika tidak ada maka dibentuk yang baru
'jika sudah ada yang yang paling besar + 1
Private Sub Auto()
Call BukaDB
RSBeliCash.Open "select * from BeliCash Where IdCash In(Select Max(IdCash)From BeliCash)Order By
IdCash Desc", CONN
RSBeliCash.Requery
Dim Urutan As String * 10
Dim Hitung As Long
With RSBeliCash
If .EOF Then
Urutan = "CS" + Format(Date, "yymmdd") + "01"
IdCash = Urutan
Else
If Mid(!IdCash, 3, 6) <> Format(Date, "yymmdd") Then
Urutan = "CS" + Format(Date, "yymmdd") + "01"
Else
Hitung = Right(!IdCash, 2) + 1
Urutan = "CS" + Format(Date, "yymmdd") + Right("00" & Hitung, 2)
End If
End If
IdCash = Urutan
End With
End Sub
'menampilkan identitas customer yang dipilih di combo1
Private Sub COMBO1_Click()
Call BukaDB
RSCustomer.Open "select * from customer where kodecus='" & Combo1 & "'", CONN
If RSCustomer.EOF Then
MsgBox "kode customer tidak terdaftar"
Combo1.SetFocus
Else
LblNama = RSCustomer!nama
LblAlamat = RSCustomer!alamat
LblTelepon = RSCustomer!telepon
End If
End Sub
'menampilkan identitas motor yang dipilih di combo2
Private Sub Combo2_Click()
Call BukaDB
RSMotor.Open "select * from Motor where kodemtr='" & Combo2 & "'", CONN
If RSMotor.EOF Then
MsgBox "kode Motor tidak terdaftar"
Combo2.SetFocus
Else
LblMerk = RSMotor!merk
LblWarna = RSMotor!warna
LblHarga = Format(RSMotor!harga, "###,###,###,###")
End If
End Sub
Private Sub TxtDibayar_KeyPress(Keyascii As Integer)
If Keyascii = 13 Then
TxtDibayar = Format(TxtDibayar, "###,###,###")
If TxtDibayar = "" Or TxtDibayar < LblHarga Then
TxtKet = "kurang" & Space(1) & Format(LblHarga - TxtDibayar, "###,###,###")
CmdSimpan.Enabled = True
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
CmdSimpan.SetFocus
Else
If TxtDibayar = LblHarga Then
TxtKet = 0
Else
TxtKet = "kembali" & Space(1) & Format(TxtDibayar - LblHarga, "###,###,###")
End If
CmdSimpan.Enabled = True
CmdSimpan.SetFocus
End If
End If
If Not (Keyascii >= Asc("0") And Keyascii <= Asc("9") Or Keyascii = vbKeyBack) Then Keyascii
= 0
End Sub
Private Sub CmdSimpan_Keypress(Keyascii As Integer)
If Keyascii = 27 Then
TxtDibayar = ""
TxtKet = ""
TxtDibayar.SetFocus
End If
End Sub
Private Sub CmdSimpan_Click()
If Combo1 = "" Or Combo2 = "" Or TxtDibayar = "" Or TxtKet = "" Then
MsgBox "data belum lengkap"
Else
Dim SQLTambahJual As String
SQLTambahJual = "Insert Into
BeliCash(IdCash,Tanggal,kodecus,kodemtr,harga,dibayar,keterangan)" & _
"values('" & IdCash & "','" & Tanggal & "','" & Combo1 & "','" & Combo2 & "','" & LblHarga &
"','" & TxtDibayar & "','" & TxtKet & "')"
CONN.Execute (SQLTambahJual)
Form_Activate
Call Bersihkan
Form_Activate
Call cetak
End If
End Sub
Sub cetak()
CR.ReportFileName = App.Path & "\kwitansi beli cash.rpt"
CR.WindowState = crptMaximized
CR.RetrieveDataFiles
CR.Action = 1
End Sub
Private Sub Bersihkan()
Combo1 = ""
Combo2 = ""
LblNama = ""
LblAlamat = ""
LblTelepon = ""
LblMerk = ""
LblWarna = ""
LblHarga = ""
TxtDibayar = ""
TxtKet = ""
End Sub
Private Sub CmdBatal_Click()
Call Bersihkan
Form_Activate
End Sub
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Private Sub CmdTutup_Click()
Unload Me
End Sub
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Coding :
Private Sub Form_Activate()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & App.Path &
"\DBKredit.mdb"
Adodc1.RecordSource = "BeliKredit"
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1
DataGrid1.Refresh
Call BukaDB
RSCustomer.Open "Customer", CONN
Combo1.Clear
Do Until RSCustomer.EOF
Combo1.AddItem RSCustomer!Kodecus
RSCustomer.MoveNext
Loop
RSMotor.Open "Motor", CONN
Combo2.Clear
Do Until RSMotor.EOF
Combo2.AddItem RSMotor!Kodemtr
RSMotor.MoveNext
Loop
Call Auto
Tanggal = Date
End Sub
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Private Sub Auto()
Call BukaDB
RSBeliKredit.Open "select * from BeliKredit Where IdKredit In(Select Max(IdKredit)From
BeliKredit)Order By IdKredit Desc", CONN
RSBeliKredit.Requery
Dim Urutan As String * 10
Dim Hitung As Long
With RSBeliKredit
If .EOF Then
Urutan = "CR" + Format(Date, "yymmdd") + "01"
IdKredit = Urutan
Else
If Mid(!IdKredit, 3, 6) <> Format(Date, "yymmdd") Then
Urutan = "CR" + Format(Date, "yymmdd") + "01"
Else
Hitung = Right(!IdKredit, 2) + 1
Urutan = "CR" + Format(Date, "yymmdd") + Right("00" & Hitung, 2)
End If
End If
IdKredit = Urutan
End With
End Sub
Private Sub COMBO1_Click()
Call BukaDB
RSCustomer.Open "select * from customer where kodecus='" & Combo1 & "'", CONN
If RSCustomer.EOF Then
MsgBox "kode customer tidak terdaftar"
Combo1.SetFocus
Else
LblNama = RSCustomer!nama
LblAlamat = RSCustomer!alamat
LblTelepon = RSCustomer!telepon
End If
End Sub
Private Sub Combo2_Click()
Call BukaDB
RSMotor.Open "select * from Motor where kodemtr='" & Combo2 & "'", CONN
If RSMotor.EOF Then
MsgBox "kode Motor tidak terdaftar"
Combo2.SetFocus
Else
LblMerk = RSMotor!merk
LblHargaCash = Format(RSMotor!harga, "###,###,###,###")
End If
End Sub
Private Sub TxtDibayar_KeyPress(Keyascii As Integer)
If Keyascii = 13 Then
If TxtDibayar = "" Or Val(TxtDibayar) < (LblHarga) Then
TxtKet = "kurang" & Space(1) & Format(LblHarga - TxtDibayar, "###,###,###")
Else
If TxtDibayar = LblHarga Then
TxtKet = TxtDibayar - LblHarga
TxtDibayar = Format(TxtDibayar, "###,###,###")
Else
TxtKet = "kembali" & Space(1) & Format(TxtDibayar - LblHarga, "###,###,###")
End If
CmdSimpan.Enabled = True
CmdSimpan.SetFocus
End If
End If
10
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
If Not (Keyascii >= Asc("0") And Keyascii <= Asc("9") Or Keyascii = vbKeyBack) Then Keyascii
= 0
End Sub
Private Sub CmdSimpan_Keypress(Keyascii As Integer)
If Keyascii = 27 Then
TxtDibayar = ""
TxtKet = ""
TxtDibayar.SetFocus
End If
End Sub
11
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
If Not (Keyascii >= Asc("0") And Keyascii <= Asc("9") Or Keyascii = vbKeyBack) Then Keyascii = 0
End Sub
Private Sub TxtDP_KeyPress(Keyascii As Integer)
If Keyascii = 13 Then
If TxtDP = "" Then
MsgBox "Uang Muka harus diisi"
TxtDP.SetFocus
Exit Sub
Else
TxtDP = Format(TxtDP, "###,###,###,###")
TxtBunga.SetFocus
End If
End If
If Not (Keyascii >= Asc("0") And Keyascii <= Asc("9") Or Keyascii = vbKeyBack) Then Keyascii = 0
End Sub
'mencari harga motor kredit dan angsuran perbulan
Private Sub TxtLama_KeyPress(Keyascii As Integer)
If Keyascii = 13 Then
LblAngsuran = Round(Pmt(TxtBunga / 100 / 12, TxtLama, LblHargaCash), 0) * -1
LblAngsuran = Format(LblAngsuran, "###,###,###,###")
LblHargaKredit = Round(FV(TxtBunga / 100 / 12, TxtLama, LblAngsuran), 0) * -1
LblHargaKredit = Format(LblHargaKredit, "###,###,###,###")
CmdSimpan.SetFocus
End If
If Not (Keyascii >= Asc("0") And Keyascii <= Asc("9") Or Keyascii = vbKeyBack) Then Keyascii = 0
End Sub
4.8
Untuk melakukan pengolahan data pembayaran cicilan, buatlah form dengan bentuk seperti gambar di bawah
ini.
12
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
13
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
4.9 Pembuatan Laporan
4.9.1 Laporan Data Motor
Laporan ini dipanggil dari menu utama dengan coding sebagai berikut :
Private Sub mnlapmotor_Click()
CR.ReportFileName = App.Path & "\lap motor.rpt"
CR.WindowState = crptMaximized
CR.RetrieveDataFiles
CR.Action = 1
End Sub
Bentuk laporan :
Bentuk Laporan :
14
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Coding :
Private Sub Form_Load()
'On Error Resume Next
Call BukaDB
'cari data tanggal di tabel belicash
RSBeliCash.Open "Select Distinct Tanggal From BeliCash order By 1", CONN
RSBeliCash.Requery
Do Until RSBeliCash.EOF
'tampilkan dalam combo1
Combo1.AddItem Format(RSBeliCash!Tanggal, "DD-MMM-YYYY")
RSBeliCash.MoveNext
Loop
Dim RSBulan As New ADODB.Recordset
'cari bulan dalam tabel belicash
RSBulan.Open "select distinct month(Tanggal) as Bulan from BeliCash", CONN
Do While Not RSBulan.EOF
'tampilkan dalam combo2
Combo2.AddItem RSBulan!Bulan & Space(5) & MonthName(RSBulan!Bulan)
RSBulan.MoveNext
Loop
Dim RSTahun As New ADODB.Recordset
'cari tahun di tabel belicash
RSTahun.Open "select distinct year(Tanggal)
15
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Do While Not RSTahun.EOF
'tampilkan dalam combo3
Combo3.AddItem RSTahun!Tahun
RSTahun.MoveNext
Loop
CONN.Close
End Sub
Private Sub COMBO1_Click()
CR.SelectionFormula = "Totext({BeliCash.Tanggal})='" & CDate(Combo1) & "'"
CR.ReportFileName = App.Path & "\lap beli cash harian.rpt"
CR.WindowState = crptMaximized
CR.RetrieveDataFiles
CR.Action = 1
End Sub
Private Sub Combo3_Click()
Call BukaDB
RSBeliCash.Open "select * from BeliCash where month(Tanggal)='" & Val(Left(Combo2, 2)) & "'
and year(Tanggal)='" & (Combo3) & "'", CONN
If RSBeliCash.EOF Then
MsgBox "Data tidak ditemukan"
Exit Sub
Combo4.SetFocus
End If
CR.SelectionFormula = "Month({BeliCash.Tanggal})=" & Val(Left(Combo2, 2)) & " and
Year({BeliCash.Tanggal})=" & Val(Combo3.Text)
CR.ReportFileName = App.Path & "\LAP beli cash bulanan.rpt"
CR.WindowState = crptMaximized
CR.RetrieveDataFiles
CR.Action = 1
End Sub
Private Sub Combo4_Click()
CR.SelectionFormula = "Totext({BeliKredit.Tanggal})='" & CDate(Combo4) & "'"
CR.ReportFileName = App.Path & "\LAP BELI KREDIT HARIAN.rpt"
CR.WindowState = crptMaximized
CR.RetrieveDataFiles
CR.Action = 1
End Sub
16
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Private Sub Combo6_Click()
Call BukaDB
RSBeliKredit.Open "select * from BeliKredit where month(Tanggal)='" & Val(Left(Combo5, 2)) & "'
and year(Tanggal)='" & (Combo6) & "'", CONN
If RSBeliKredit.EOF Then
MsgBox "Data tidak ditemukan"
Exit Sub
Combo4.SetFocus
End If
CR.SelectionFormula = "Month({BeliKredit.Tanggal})=" & Val(Left(Combo5, 2)) & " and
Year({BeliKredit.Tanggal})=" & Val(Combo6.Text)
CR.ReportFileName = App.Path & "\LAP BELI KREDIT BULANAN.rpt"
CR.WindowState = crptMaximized
CR.RetrieveDataFiles
CR.Action = 1
End Sub
17
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
18
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Coding :
Private Sub Form_Load()
'On Error Resume Next
Call BukaDB
RSBayarCicilan.Open "Select Distinct TanggalByr From BayarCicilan order By 1", CONN
RSBayarCicilan.Requery
Do Until RSBayarCicilan.EOF
Combo1.AddItem Format(RSBayarCicilan!TanggalByr, "DD-MMM-YYYY")
RSBayarCicilan.MoveNext
Loop
Dim RSBulan As New ADODB.Recordset
RSBulan.Open "select distinct month(TanggalByr) as Bulan from BayarCicilan", CONN
Do While Not RSBulan.EOF
Combo2.AddItem RSBulan!Bulan & Space(5) & MonthName(RSBulan!Bulan)
RSBulan.MoveNext
Loop
Dim RSTahun As New ADODB.Recordset
RSTahun.Open "select distinct year(TanggalByr)
Do While Not RSTahun.EOF
Combo3.AddItem RSTahun!Tahun
RSTahun.MoveNext
Loop
CONN.Close
End Sub
19
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
Private Sub Combo3_Click()
Call BukaDB
RSBayarCicilan.Open "select * from BayarCicilan where month(TanggalByr)='" & Val(Left(Combo2,
2)) & "' and year(TanggalByr)='" & (Combo3) & "'", CONN
If RSBayarCicilan.EOF Then
MsgBox "Data tidak ditemukan"
Exit Sub
Combo4.SetFocus
End If
CR.SelectionFormula = "Month({BayarCicilan.TanggalByr})=" & Val(Left(Combo2, 2)) & " and
Year({BayarCicilan.TanggalByr})=" & Val(Combo3.Text)
CR.ReportFileName = App.Path & "\LAP bayar cicilan bulanan.rpt"
CR.WindowState = crptMaximized
CR.RetrieveDataFiles
CR.Action = 1
End Sub
Private Sub Command1_Click()
CR.ReportFileName = App.Path & "\lap bayar cicilan.rpt"
CR.WindowState = crptMaximized
CR.RetrieveDataFiles
CR.Action = 1
End Sub
Hasil laporan dari coding tersebut terlihat pada gambar-gambar berikut ini.
20
www.konsultasivb.com
Pusat Kursus VB.Net & Bimbingan Tugas Akhir
21