Untuk Membuat Program Perpustakaan visual basic 6 dengan microsoft access 2007
akan saya terangkan dengan menggunakan artikel episode karena saking
banyaknya kode yang akan digunakan sehingga membutuhkan banyak sekali
artikel yang bersambung dan disini saya akan menerangkan dari awal
hingga akhir pembuatan program Perpustakaan menggunakan visual basic 6 dengan database menggunakan microsoft access 2007.
Membuat program perpustakaan cukup rumit sehingga membutuhkan ketelitian
yang sangat besar sekarang saya akan memulai pembuatan program
perpustakaan menggunakan visual basic 6,
untuk pertama kali saya akan membuat form untuk insert data buku
kedalam database kali ini saya taruh di form1, komponen yang saya
gunakan adalah 4 label, 4 text, 2 button dan 1 listview dengan header
column Nama buku, Jumlah, Harga/1 dan Kode lihat gambar dibawah:
Kemudian buatlah database menggunakan Microsoft Access 2007 dengan table
pertama dbuku dan 5 kolom yaitu ID,NBuku,Harga,Jumlah dan Kode lihat
gambar dibawah ini:
a. Insert data ke database
Setelah itu simpan database yang sudah dibuat seforlder dengan project
yang sedang dalam proses pembuatan dengan nama perpus.accdb, setelah
database sudah dibuat kembali lagi ke visual basic
6 simpan dahulu project yang dalam proses kedalam folder yang sama
dimana database disimpan lalu klik
Project-->Preference-->Microsoft ActiveX Data Object 6.0
Library->OK dan buatlah 1 module pada project visual basic, masukkan
kode dibawah:
Public cn As ADODB.Connection
Public rs As ADODB.Recordset
Sub Main()
Set cn = New ADODB.Connection
cn.ConnectionString = "provider = microsoft.ace.oledb.12.0; data source=
" & App.Path & "\perpus.accdb;Persist Security Info=False"
cn.Open
Form1.Show
End Sub
Sub lihat()
Dim str As String
str = "select * from Dbuku"
Set rs = cn.Execute(str)
Form1.ListView1.ListItems.Clear
Do While Not rs.EOF
Set Item = Form1.ListView1.ListItems.Add(, , rs!Nama)
Item.SubItems(1) = rs!Jumlah
Item.SubItems(2) = rs!Harga
Item.SubItems(3) = rs!Kode
rs.MoveNext
Loop
Set rs = Nothing
End Sub
Selanjutnya klik kanan pada Project1(Project1.vbp) yang berada disebelah
kanan atas pilih Project1 properties Start Up Object pilih Sub main,
sebelum berlanjut ke tahap insert data ke database coba run dahulu,
kalau form1 terbuka itu menandakan sodah connect kedatabase.
Jika form1 sudah terbuka kemudian klik 2 kali form1 hapus semua kode yang ada dan masukkan kode dibawah ini:
Private Sub Command1_Click()
Set rs = New ADODB.Recordset
rs.Open "select * from Dbuku", cn, adOpenKeyset, adLockOptimistic
rs.AddNew
rs!Nbuku = Text1.Text
rs!Jumlah = Text2.Text
rs!Harga = Text3.Text
rs!Kode = Text4.Text
rs.Update
MsgBox "Data masuk"
Module1.lihat
Set rs = Nothing
End Sub
Private Sub Form_Load()
Module1.lihat
End Sub
Selanjutnya setelah Form1 jadi kemudian tambahkan menu button dengan
caption "Pinjam/Kembali" klik 2 kali dan masukkan kode Form2.Show lalu
buatlah form2 dan form3 dalam form2 gunakan beberapa komponen lihat
gambar dibawah:
Lalu pada databasenya tambahkan Table Pinjam dengan kolom : Nama,
Alamat, KTP, Jbuku, Jumlah, Jenis, Tanggal dan Kode seperti gambar
dibawah:
Setelah itu pada form3 masukkan komponen-komponen: 1 label dan 1 listview dengan Header Column
- Nama Peminjam
- Alamat Peminjam
- KTP Peminjam
- Judul Buku
- Jumlah
- Jenis
- Tanggal
- Harga
- Kode
Lihat gambar dibawah:
Selanjutnya pada form2 klik dua kali hapus semua kode yang ada dan masukkan kode dibawah:
Private Sub Combo2_DropDown()
Label10 = Combo2.Text
If Combo1.Text = "Kembali" Then
Label11.Visible = False
Set rs = New ADODB.Recordset
rs.Open "select * from Pinjam where Kode Like '%" & Combo2.Text
& "%' and Jenis='Pinjam'", cn, adOpenKeyset, adLockOptimistic
Text5 = rs!Jumlah
Text7 = rs!Harga
Call klop
Set rs = Nothing
ElseIf Combo1.Text = "Pinjam" Then
Label11.Visible = True
Label10 = Combo2.Text
Set rs = New ADODB.Recordset
rs.Open "select * from Dbuku where Kode='" & Combo2.Text & "'", cn, adOpenKeyset, adLockOptimistic
Label9 = rs!Nbuku
Text7 = rs!Harga
Set rs = Nothing
Else
End If
End Sub
Sub klop()
Set rs = New ADODB.Recordset
rs.Open "select * from Dbuku where Kode='" & Label10 & "'", cn, adOpenKeyset, adLockOptimistic
Label9 = rs!Nbuku
Set rs = Nothing
End Sub
Private Sub Command1_Click()
If Combo1.Text = "Pinjam" Then
Set rs = New ADODB.Recordset
rs.Open "select * from Pinjam", cn, adOpenKeyset, adLockOptimistic
rs.AddNew
rs!Nama = Text1.Text
rs!Alamat = Text2.Text
rs!KTP = Text3.Text
rs!Jbuku = Label9
rs!Jumlah = Text5.Text
rs!Jenis = Combo1.Text
rs!Tanggal = Text6.Text
rs!Harga = Label11.Caption
rs!Kode = Combo2.Text
rs.Update
MsgBox "Data masuk"
Call kurang
Module1.lihat
Set rs = Nothing
ElseIf Combo1.Text = "Kembali" Then
Set rs = New ADODB.Recordset
rs.Open "select * from Pinjam", cn, adOpenKeyset, adLockOptimistic
rs.AddNew
rs!Nama = Text1.Text
rs!Alamat = Text2.Text
rs!KTP = Text3.Text
rs!Jbuku = Label9
rs!Jumlah = Text5.Text
rs!Jenis = Combo1.Text
rs!Tanggal = Text6.Text
rs!Harga = Text7
rs!Kode = Combo2.Text
rs.Update
MsgBox "Data masuk"
Call tambah
Call hapus
Module1.lihat
Set rs = Nothing
ElseIf Combo1.Text = "" Then
MsgBox "Pilih jenis dahulu"
End If
End Sub
Private Sub Command2_Click()
Form3.Caption = "Laporan Data Lengkap Pinjam & Kembali"
Dim str As String
str = "select * from Pinjam"
Set rs = cn.Execute(str)
Form3.ListView1.ListItems.Clear
Do While Not rs.EOF
Set Item = Form3.ListView1.ListItems.Add(, , rs!Nama)
Item.SubItems(1) = rs!Alamat
Item.SubItems(2) = rs!KTP
Item.SubItems(3) = rs!Jbuku
Item.SubItems(4) = rs!Jumlah
Item.SubItems(5) = rs!Jenis
Item.SubItems(6) = rs!Tanggal
Item.SubItems(7) = rs!Harga
Item.SubItems(8) = rs!Kode
rs.MoveNext
Loop
Set rs = Nothing
Form3.Show
End Sub
Private Sub Command3_Click()
Form3.Caption = "Laporan Data Lengkap Pinjam"
Dim str As String
str = "select * from Pinjam where Jenis='Pinjam'"
Set rs = cn.Execute(str)
Form3.ListView1.ListItems.Clear
Do While Not rs.EOF
Set Item = Form3.ListView1.ListItems.Add(, , rs!Nama)
Item.SubItems(1) = rs!Alamat
Item.SubItems(2) = rs!KTP
Item.SubItems(3) = rs!Jbuku
Item.SubItems(4) = rs!Jumlah
Item.SubItems(5) = rs!Jenis
Item.SubItems(6) = rs!Tanggal
Item.SubItems(7) = rs!Harga
Item.SubItems(8) = rs!Kode
rs.MoveNext
Loop
Set rs = Nothing
Form3.Show
End Sub
Private Sub Command4_Click()
Form3.Caption = "Laporan Data Lengkap Kembali"
Dim str As String
str = "select * from Pinjam where Jenis='Kembali'"
Set rs = cn.Execute(str)
Form3.ListView1.ListItems.Clear
Do While Not rs.EOF
Set Item = Form3.ListView1.ListItems.Add(, , rs!Nama)
Item.SubItems(1) = rs!Alamat
Item.SubItems(2) = rs!KTP
Item.SubItems(3) = rs!Jbuku
Item.SubItems(4) = rs!Jumlah
Item.SubItems(5) = rs!Jenis
Item.SubItems(6) = rs!Tanggal
Item.SubItems(7) = rs!Harga
Item.SubItems(8) = rs!Kode
rs.MoveNext
Loop
Set rs = Nothing
Form3.Show
End Sub
Private Sub Command5_Click()
Form3.Caption = "Laporan Keuangan dari buku yang di kembalikan"
Set rs = New ADODB.Recordset
rs.Open "select sum(Harga) as tot from Pinjam where Jenis='Kembali'", cn, adOpenKeyset, adLockOptimistic
Form3.Label1 = "Rp. " & FormatNumber(rs!tot)
rs.Close
Set rs = Nothing
Form3.Show
End Sub
Private Sub Form_Load()
Text6 = Date
Set rs = New ADODB.Recordset
rs.Open "select * from Dbuku ", cn, adOpenKeyset, adLockOptimistic
Do While Not rs.EOF
Combo2.AddItem (rs!Kode)
rs.MoveNext
Loop
Set rs = Nothing
End Sub
Sub kurang()
Dim str As String
Set rs = New ADODB.Recordset
str = "Update Dbuku set Jumlah=(Jumlah-" & Text5 & ") where Kode='" & Combo2.Text & "'"
Set rs = cn.Execute(str)
Set rs = Nothing
End Sub
Sub luk()
Dim judul As String
Set rs = New ADODB.Recordset
rs.Open "select * from Dbuku where Kode='" & Combo2.Text & "'", cn, adOpenKeyset, adLockOptimistic
Label9 = rs!Nbuku
Set rs = Nothing
End Sub
Sub tambah()
Dim str As String
Set rs = New ADODB.Recordset
str = "Update Dbuku set Jumlah=(Jumlah+" & Text5 & ") where Kode='" & Combo2.Text & "'"
Set rs = cn.Execute(str)
Set rs = Nothing
End Sub
Sub hapus()
Set rs = New ADODB.Recordset
rs.Open "DELETE from Pinjam where nama='" & Text1 & "' and
Kode='" & Combo2.Text & "' and Jenis='Pinjam'", cn,
adOpenKeyset, adLockOptimistic
Set rs = Nothing
End Sub
Private Sub Text1_LostFocus()
If Combo1.Text = "Kembali" Then
Set rs = New ADODB.Recordset
rs.Open "select * from Pinjam where Nama Like '%" & Text1 & "%' and Jenis='Pinjam'", cn, adOpenKeyset, adLockOptimistic
Text2 = rs!Alamat
Text3 = rs!KTP
Combo2.Clear
Do While Not rs.EOF
Combo2.AddItem (rs!Kode)
rs.MoveNext
Loop
Set rs = Nothing
Else
End If
End Sub
Private Sub Text4_Change()
Call luk
End Sub
Private Sub Text5_Change()
If Not Text5 = "" And Not Text7 = "" Then
Label11 = Text5 * Text7
Else
End If
End Sub
Logika dari kode diatas adalah jika combo1.text="Pinjam" maka secara
otomatis combo2.list bertambah sesuai dengan data buku yang sudah di
insert dan ketika combo2.list dipilih salah satunya maka akan keluar
Harga dari kode buku yang sudah dipilih lalu ketika cutton Masukkan
diklik otomatis
jumlah buku berkurang dan jika
Combo1.text="Kembali" maka ketika text1 diketikkan nama peminjam lalu
pointer dipindah ke text2 maka secara otomatis pada text2 dan text3 akan
mengeluarkan data alamat dan KTP peminjam dan pada Combo2.list akan
memunculkan buku apa saja yang sedang dipinjam, lalu jika Combo2.list
dipilih salah satu kode buku yang dipinjam
label9.caption akan memunculkan Judul buku dan label10.Caption akan
memunculkan kode buku, jumlah otomatis akan sesuai dengan jumlah yang
dipinjam dan harga akan otomatis muncul.