0% found this document useful (0 votes)
367 views8 pages

Tutorial Visual Basic 6 - Database MySQL Dan ADODC

Contoh program koneksi database MySQL dengan Visual Basic 6.0 menggunakan ADODC. Contoh kasus penyewaan mobil.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
367 views8 pages

Tutorial Visual Basic 6 - Database MySQL Dan ADODC

Contoh program koneksi database MySQL dengan Visual Basic 6.0 menggunakan ADODC. Contoh kasus penyewaan mobil.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

\

Pemrograman Visual ll- Studi Kasus Penyewaan Mobil


-
Kresna Adhi Pratama i PYK
Dadabase: PENYEWAANMOBIL
Struktur Tabel
1. Tabel: anggota
Field Type Width
kdanggota CHAR 5
nmanggota VARCHAR 25
gender CHAR 1
alamat VARCHAR 30
telepon VARCHAR 15
noktp VARCHAR 20
2. Tabel. karyawan
Field Type Width
kdkaryawan CHAR 5
nmkaryawan VARCHAR 25
jabatan
VARCHAR 5
password VARCHAR 15
Tabel:mobil
Field Type
nopolisi VARCHAR
nmmobil VARCHAR
tarif MEDIUMINT
Tabel:sewa
Field Type
nosewa CHAR
kdanggota CHAR
kdkaryawan CHAR
Tabel: detailsewa
Field Type
nosewa CHAR
nopolisi VARCHAR
tglsewa DATE
tglkembali DATE
status CHAR
Primary
Yes
3.
4.
5.
width
8
25
10
width
9
5
5
width
I
8
't
Primary
Yes
Primary
Yes
Primary
Primary
Yes
Form Master Anggota
Kode Program Form Master Anggota
Dinn mode As Boolean
Function KodeOtomatisO As String
Dim urut As Integer
liet [Link]
=
"SELECT
*
" &
"FROM anggota ORDER BY kdanggota"
[Link]
DataGridl. Refresh
With [Link]
If [Link] > 0 Then
.Movelast
Let urut
=
Val(Right(.Fields(O), 4)) + 1
Else
Let urut
=
I
End If
Let KodeOtomatis
=
"A" +
_
Format(urut, "0000')
End With
End Function
Function Cari(kode As String) As Boolean
Let Cari
=
False
Adodcl. Recordset. MoveFi rst
[Link] "kdanggota
=
'' &
_
kode & ""', ,
adSearchForward, 0
lf [Link]. EOF Then
Let Cari
=
False
Else
Let Cari =
True
End If
End Function
Private Sub Bersiho
Dim ctrl As Control
For Each ctrl In Me
,,,,tf
ttpuOf ctrl Is TextBox Then Let [Link]
=
If Typeof ctrl Is OptionButton Then Let
[Link] =
False
Flext ctrl
End Sub
Private Sub Aktifo
Dim ctrl As Control
For Each clrl In Me
If TypeOf ctrl Is TextBox Then
_
Let [Link]
=
True
If Type0f ctrl Is OptionButton Then
_
Let [Link]
=
True
lflext ctrl
End Sub
Private Sub NonAktifo
Dim ctrl As Control
For Each ctrl In Me
If TypeOf ctrl Is TextBox Then
_
Let [Link]
=
False
If TypeOf ctrl Is OptionButton Then Let
[Link]
=
False
Next ctrl
End Sub
Private Sub Tampilo
On Error Resume Next
With [Link]
Let txtKode,Text
=
.Fields(O)
Let [Link]
=
.Fields(1)
If .Fields(2)
=
"1" Then
Let [Link]
=
True
Else
Let [Link]
=
True
End If
Let [Link]
=
.Fields(3)
Let [Link]
=
.Fields(4)
Let [Link]
=
.Fields(5)
End With
End Sub
Private Sub cmdBatal_Click(
)
CallTampil
Call NonAktif
Let mode
=
False
End Sub
Private Sub cmdHapus_Clicko
On Error GoTo ErrCmdHapus
Dim kode As String
Dim ada, tanya As Byte
Let kode
=
InputBox("Ketikan kode anggota:",
"Hapus Anggota", "")
If Trim(kode)
= "" Then Exit Sub
Let ada = Cari(kode)
If ada
=
True Then
Let tanya = MsgBox("Hapus data?", vbYesNo,
"Konfirmasi")
If tanya
=
vbYes Then
Adodc 1 . Recordset. Delete
MsgBox "Data telah dihapus."
Call Bersih
CallTampil
End If
Else
MsgBox "Data tidak adal", "Hapus Anggota"
End If
Exit Sub
ErrCmdHapus:
MsgBox "Data gagal dihapus!"
End Sub
Private Sub cmdKeluar_Clicko
Unload Me
End Suh
Private Sub cmdSimpan_Click(
)
\
On Error GoTo ErrCmdSimpan
With [Link]
if mode
=
True Then .AddNew
Let .Fields(O)
=
[Link]
Let .Fields(1)
=
[Link]
If [Link] =
True Then
*
Let
'Fields(2) =
"1"
If [Link] =
True Then
-
Let .Fields(2)
= "Pu
Let .Fields(3)
=
[Link]
Let .Fields(4)
=
[Link]
Let .Fields(5)
=
[Link]
.Update
End With
llet mode
=
False
DataGrid 1. Refresh
Call NonAktif
MsgBox "Data berhasil disimpan."
Fxit Sub
ErrtfmdSimpan:
MsgBox "[Link] berhasil disimpan!"
End Sub
Private Sub cmdTambah-Click(
)
Let mode
=
True
Call Aktif
Call Bersih
Let [Link]
=
KodeOtomatis0
[Link]
End Sub
Private Sub cmdUbah-Clicko
Dim ada As Boolean
Dim kode As String
Let kode
=
InputBox("Ketikan kode anggota:",
_
"Ubah Anggota")
If Trim(kode)
=
"" Then Exit Sub
Let ada
= Cari(kode)
If ada
=
False Then
MsgBox "Data tidak ditemukan!"
Else
Call Aktif
CallTampil
[Link]
Let [Link]
=
False
Let mode
=
False
End If
End Sub
Private Sub Form_Loado
Let [Link]
=
"SELECT
*
FROM " &
"anggota ORDER BY kdanggota"
[Link]
Let [Link] =
False
DataGrid 1 , Refresh
Call Bersih
Call Tampil
Call NonAktif
End Sub
Private Sub Form_Unload(Cancel As Integer)
Dim tanya As Byte
Let tanya
=
MsgBox("Tutup program?",
_
vbYesNo, "Konfirmasi")
If tanya
=
vbNo Then Let Cancel
=
-1
End Sub
Form Master Karyawan
'ttt
:
xl.<iirlrt
Kode Program Form Master Karyawan
\
Dirn mode As Boolean
Function KodeOtomatisO As String
Dim urut As Integer
[Link] =
"SELECT
*
FROM '&
"karyawan ORDER BY kdkaryawan"
i{dodc1. Refresh
DataGrid [Link]
With [Link]
If Adodcl,[Link] > 0 Then
.MoveLast
Let urut
=
Val(Right(.Fields(0), 4)) + 1
Else
Let urut
=
1
End If
Let KodeOtomatis
=
"K" +
-
Format(urut, '0000")
Fnd With
End Function
Fuerction Cari(kode As String) As Boolean
Let Cari =
False
,Adodc1. Recordset. MoveFirst
Adodcl,[Link] "kdkaryawan
=
'" &
-
kode & ""', ,
adSearchForward, 0
lf Adodcl. Recordset. EOF Then
Let Cari =
False
Else
Let Cari =
True
End If
End Function
Pri\rate Sub Bersiho
Dim ctrl As Control
lFor Each ctrl In Me
If TypeOf ctrl Is TextBox Or
-
Type0f ctrl Is ComboBox Then [Link]
=
Flext ctrl
End Sub
Priqrate Sub Aktifo
Dim ctrl As Control
For Each ctrl In Me
If TypeOf ctrl Is TextBox Or
-
TypeOf ctrl Is ComboBox Then
-
Let [Link]
=
True
lNext ctrl
End Sub
Private Sub NonAlGifo
Dim ctrl As Control
For Each ctrl In Me
If Type0f ctrl Is TextBox Or
-
Typeof ctrl Is ComboBox Then
-
Let [Link] =
False
Next ctrl
End Sub
Private Sub Tampilo
On Error Resume Next
With [Link]
Let [Link] =
.Fields(0)
Let [Link]
=
.Fields(1)
Let [Link]
=
.Fields(2)
Let [Link] =
.Fields(3)
Let [Link]
=
.Fields(3)
End With
End Sub
Private Sub cmdBatal_Clicko
CallTampil
Call NonAktif
Let mode
=
False
End Sub
Private Sub cmdCari-Clicko
On Error GoTo ErrCmdCari
Dim kode As String
Dim ada As Boolean
Let kode =
InputBox("Ketikan kode karyawan:",
-
"Cari Data Karyawan", "")
If Trim(kode)
=
"" Then Exit Sub
Let ada = Cari(kode)
If ada =
False Then
MsgBox "Data tidak ada!"
Else
CallTampil
End If
Exit Sub
ErrCmdCari:
MsgBox "Pencarian tidak bisa dilakukanl"
End Sub
Private Sub cmdFirst-Click(
)
On Error Resume Next
Adodcl . Recordset. MoveFirst
CallTampil
End Sub
Private Sub cmdHapus_Click(
)
On Error GoTo ErrCmdHapus
Dim tanya As Byte
Let tanya
=
MsgBox("Hapus data?", vbYesNo,
_
"Hapus Karyawan")
If tanya
=
vbYes Then
Adodcl. Recordset. Delete
[Link]
CallTampil
MsgBox "Data berhasil dihapus."
End If
Exit Sub
ErrCmdHapus:
MsgBox "Data gagal dihapusl"
End Sub
MsgBox "Data berhasil disimpan,"
Prtvate Sub cmdlast-ClickO , Exit Sub
tCn Error Resume Next
ErrCmdSimpan:
[Link] MsgBox "Data tidak berhasil disimpanl"
CallTampil End Sub
End Sub
Private Sub cmdTambah_Clicko
Prlvate Sub cmdNext_ClickO
'
Call Bersih
On Error Resume Next Call Aktif
[Link]
[f Adodc 1. Recordset. EOF Then
MsgBox "Record terakhir." Let [Link]
=
False
Else Let [Link]
=
KodeOtomatisO
[Link] Let mode
=
True
Call Tampil
'
End Sub
End If
End Sub
I Private Sub cmdTutup_Clicko
Unload Me
Prfrvate Sub cmdPrev-ClickO End Sub
0n Error Resume Next
Private Sub cmdUbah_Click(
)
Sf Adodcl,[Link] Then Call Aktif
MsgBox "Record pertama."
Else Let [Link] =
False
[Link] Let mode
=
False
CallTampil End Sub
End If
End Sub Private Sub Form-Loado
Let [Link]
=
"SELECT
*
FROM' &
Pr$vate Sub cmdSimpan-ClickO " karyawan ORDER BY kdanggota"
On Error GoTo ErrCmdSimpan Let [Link]
=
False
Let [Link]
=
"*"
[f [Link] <> [Link] Then Let [Link]
= "*"
MsgBox "Password yang Anda ketikan tidak Let [Link]
=
False
sesuai l "
Exit Sub [Link] "ADMIN"
End If [Link] "KASIR"
With [Link] Call Tampil
If mode
=
True Then .AddNew Call NonAktif
End Sub
Let .Fields(O)
=
[Link]
Let .Fields(1)
=
[Link] Private Sub Form_Unload(Cancel As fnteger)
Let ,Fields(2) = [Link] Dim tanya As Byte
Let .Fields(3)
=
txtPassword,Text
Let tanya
=
MsgBox("Tutup program?",
_
.Update vbYesNo, "Konfirmasi")
End With
If tanya
=
vbNo Then Let Cancel
=
-1
Call NonAktif End Sub
$-et mode
=
False
Buatlah sebuah moduldengan nama file [Link] !
-\
Kode Program [Link]
Put:lic KodeKasir As String
Form Penyewaan dan Pengembalian
: : : : : : : : : : ; : : : : : : : i L i .t*anlterdekatrln- [Link]'Ssd ; : : : : ; : : : : : : : : : : : ,
DdaSewa----
Kode Program Form Penyewaan dan Pengembalian
Din:r total, subtotal As Currency
Private Sub SiapkanDatabaseo
Let [Link]
=
''SELECT
*
FROM
ser',va ORDER BY nosewa"
j-et
AdoDetsewa,RecrrrdSource
=
"SELECT
*
FROM
d,elail_sewa WHERE nosewa
=
"' & [Link] &
Let [Link]
=
"SELECT
x
FROM
mobil WHERE nopolisi NOT IN (SELECT nopolisi FROM
deLail_sewa WHERE status
=
'S')"
.et [Link] = 'SELECT
*
FROM
anggota ORDER BY kdanggota"
lAdoSewa. Refresh
AdoDetSewa. Refresh
AdoMobil. Refresh
,AdoAnggota . Refresh
End Sub
Private Sub IsiComboo
;On
Error GoTo ErrlsiCombo
[Link]
,AdoMobil. Refresh
With AdoMobil, Recordset
. MoveFirst
While Not .EOF
[Link] . Fields(0).Value
Nc. Sewa
No Polei h4ul,*
Selesai
t
. MoveNext
V/end
End With
ErrlsiCombo:
End Sub
Private Sub Aktifo
Let [Link]
=
True
Let [Link]
=
True
Let [Link]
=
True
Let [Link]
=
True
Let [Link]
=
True
Let [Link]
=
True
Let [Link]
=
True
End Sub
Private Sub NonAktifo
Let [Link]
=
False
Let [Link]
=
False
Let [Link]
=
False
Let [Link] =
False
Let [Link]
=
False
Let [Link]
=
False
Let [Link]
=
False
Let [Link]
=
False
Let [Link]
=
False
End Sub
f Fenprrhafian
$ub TotdBp.
Iddflp
i
lrans*si
I
i
t,--.--,.-
r----.-_----Z-:
Iextl
IextZ
Private Sub Bersiho
ilet [Link]
=
False
[-et [Link]
=
False
fi-et [Link]
=
""
llet [Link] =
""
ilet [Link] =
""
{-et [Link] =
""
End Sub
Prlvate Sub HitungSubTotalo
Dim lama As Integer
t-et lama
=
[Link] - [Link]
l-et subtotal
=
lama
*
[Link]
(2),
tlet [Link] =
Format(subtotal, " #,# # #.OO")
End Sub
Function KodeOtomatisO As String
Dim urut As Byte
With AdoSewa. Recordset
[Link]>0Then
.MoveLast
Let urut
=
Val(Right(.Fields(O), 3)) + 1
Else
Let urut
=
1
End If
Fnd With
t-et KodeOtomatis
=
Format(Now, "yyMMdd") &
Forrnat(urut, "000")
End Function
Prtoate Sub cmdSelesai_Clicko
With AdoSewa. Recordset
.AddNew
Let .Fields(0),Value =
[Link]
Let .Fields(1),Value
=
[Link]
Let .Fields(2).Value
=
KodeKasir
. Update
End With
Call Bersih
Call NonAktif
lLet AdoDetSewa,Recordsource =
"SELECT
*
FROM
detrail_sewa WHERE nosewa
=
"' & [Link] &
AdoDetSewa. Refresh
End Sub
Prlqrate Sub cmdTambah_Click(
)
l-et txtKdAnggota,Enabled = False
llet [Link] = "SELECT
x
FRoM
debail_sewa WHERE nopolisi
=
"' & [Link] & "'
AND status
=
'S"'
[Link]
Ef [Link] > 0 Then
MsgBox "Mobil sudah disewa! Silahkan pilih
mohil lain!"
Let [Link] = "SELECT
*
FROM detail_sewa WHERE nosewa
=
"' &
[Link] & ""'
AdoDetSewa, Refresh
Exit Sub
End If
Let AdoDetSewa,RecordSource
= "SELECT
x
FROM
detail_sewa WHERE nosewa
= "' & [Link] &
[Link]
AdoDetSewa. Recordset. Requery
With AdoDetSewa. Recordset
.AddNew
. Fields(0).Value
=
[Link]
.Fields(1).Value
= [Link]
.Fields(2).Value
=
[Link]
,Fields(3).Value
=
[Link]
.Fields(4),Value
=
"S"
,Update
End With
Let total
=
total + subtotal
Let [Link]
=
Format(total, " #,# # #.O0")
[Link]
End Sub
Private Sub cmdTransaksi_Click(
)
Call Bersih
Call NonAktif
Call IsiCombo
Let [Link]
=
True
Let [Link]
=
True
Let total
=
0
End Sub
Private Sub Combol_LostFocus(
)
AdoMobi L Recordset. MoveFi rst
[Link] "nopolisi
=
"' &
[Link] & ""',
, adSearchForward, 0
Call HitungSubTotal
End Sub
Private Sub DTPSelesai_Changeo
Call HitungSubTotal
End Sub
Private Sub Form_Loado
Call NonAktif
Call SiapkanDatabase
End Sub
Private Sub opKembali_Clicko
Let [Link]
=
True
Let [Link]
=
""
Let [Link]
=
False
txtKdSewa . SetFocus
End Sub
Private Sub opSewa_Click(
)
Let [Link]
=
KodeOtomatis
Let [Link]
=
True
Let [Link]
=
False
txtKdAn g gota. SetFocus
End Sub
Private Sub txtKdAnggota_KeyPress(KeyAscii
As Integer)
If KeyAscii
=
13 Then
[Link]
=
"SELECT
kdanggota FROM anggota WHERE kdanggota
= "'& Exit Sub
[Link] & ""' End If
[Link]
With AdoSewa. Recordset
If [Link] > 0 Then .MoveFirst
Let [Link]
=
True .Find "nosewa
= "' & [Link] & ""',
,
Let [Link]
=
True adSearchForward, 0
Let [Link]
=
True Let [Link]
=
.Fields(1).Value
[Link] End With
Else
Let [Link]
=
False With [Link]
MsgBox "Kode anggota tidak ada!" .MoveFirst
End If While .EOF
=
False
End If .Fields(4).Value
=
"K"
End Sub .Update
.MoveNext
Prlvate Sub txtKdSewa_KeyPress(KeyAscii As Wend
Integer) End With
Sf KeyAscii
=
13 Then
Let [Link]
=
"SELECT
*'{
MsgBox "Terima kasihl"
FROM detail sewa WHERE nosewa
=
"'&
[Link] & "' AND status
=
'S"' Call Bersih
[Link] Call NonAktif
If [Link]
=
0 Let [Link]
=
'SELECT
*
Then FROM detail_sewa WHERE nosewa
=
"' &
MsgBox "Tidak ada penyewaan dengan txtKdSewa.T
nornor" &[Link] &"!" [Link]
Call Bersih End If
Call NonAktif End Sub
Ga*atan:
.
Hubungkan objek Text1, Text2 dan Text3 dengan properti AdoSewa, AdoMobil dan AdoAnggota.
.
Objek DBGridl menggunakan Datasource dariobjek AdoDetSewa.

You might also like