tau mengenai database yang akan dimanipulasi menggunakan visual basic. ...
Visual Basic merupakan bahasa pemrograman yang memungkinkan kita untuk ...
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Ucapan Terima Kasih Tentu saja saya ucapkan terima kasih kepada teman-teman yang telah bersedia mengikuti workshop kali ini dan membaca modul ini. Kemudian buat dosen-dosen yang telah menunjukkan
jalan
yang
terang
mengenai
seluk-beluk
database
perancangan
dan
implementasinya. Trus pada rekan-rekan aslab yang telah memberikan saran, dan tak lupa pada yang telah “cerewet dan sabar” dalam mengoreksi tata bahasa serta memberikan semangat untuk terus menulis, uuu makasih yach ???
Modul Ini Untuk Siapa ? Modul ini ditujukan bagi mereka yang merasa “beginner” hehe termasuk saya donk dan ingin tau mengenai database yang akan dimanipulasi menggunakan visual basic. Trus juga harus sabar yach, karena nanti kita akan menulis banyak script or coding (hehe jadi kaya pelajaran mengetik tuh). Klo yang udah merasa “advanced” pasti akan ketawa klo melihat modul ini, abis kata mereka “wah apaan nih, kok cuma kayak gini sih ?”. Maaf yach para “advanced database admin”, hehe just kidding euy.
CD Pendukung Wah berhubung penulis lagi baik dan waras, maka akan saya berikan segala macam keperluan database, mulai dari source code, modul tulisan, utility pendukung, de el el. Pokoknya mah akan ku serahkan, uuu itu bahasa apa yach, sepertinya kayak bahasa klo penulis lagi “disandra” ???
Kritik & Saran Wah kayaknya modul ini teh kurang banget dari kata sempurna, so penulis mengharapkan kritik & saran yang buanyakkk untuk penyempurnaan modul ini. Caci-maki, sumpah-serapah, omelan, kritik, saran, pujian (uuu maunya donk) bisa disampaikan melalui email penulis :
[email protected] atau
[email protected]. Boleh tanya apa aja kok, or
mo curhat juga boleh, yang nggak boleh adalah minjem duit ama penulis, hehehe maklum lah nasib aslab ?
diterangi senyum rembulan, Tangerang, 17 May 2006, pukul 03.00 dini hari
Yoga Prihastomo
Halaman
1
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Terminologi Database Pendahuluan Visual Basic merupakan bahasa pemrograman yang memungkinkan kita untuk membangun suatu sistem informasi menggunakan berbagai macam database yang ada. Database yang dapat digunakan anatar lain seperti : Microsoft Access, Microsoft SQL Server, MySQL, Paradox, Oracle, dan sebagainya. Pada workshop kali ini, tema yang diambil adalah “Pemrograman Dasar Database Dengan VB 6 & Microsoft Access”. Jadi untuk masalah databasenya kita akan menggunakan Microsoft Access dan Interfacenya Visual Basic dengan referensinya Microsoft ActiveX Data Object (ADO).
Konsep Normalisasi Normalisasi merupakan kondisi dimana relasi antar tabel telah terbentuk dengan baik sesuai kaidah dalam sebuah database. Normalisasi yang umum digunakan sampai tahap Third Normal Form (3 NF). Asumsinya adalah teman-teman paling tidak telah mengetahui dasar dari pembuatan normalisasi. Lalu normalisasi untuk apa ??? Normalisasi diperlukan agar hasil rancangan tabel-tabel nanti sesuai dengan masalah yang akan dihadapi. Kemudian normalisasi juga dapat dikatakan sebagai alat untuk menuju sasaran perancangan basis data, yakni : menghasilkan himpunan skema relasi yang mengizinkan pengguna untuk menyimpan informasi tanpa adanya redudansi data serta mengizinkan pengguna untuk mencari informasi yang dikehendaki dengan cepat dan mudah. Secara singkat & mudah tentunya, tahap normalisasi adalah sebagai berikut :
Tahap UnNormalized
Tulis data apa adanya yang diperoleh dari hasil analisa faktur atau tanda bukti lainnya. Tentunya susunan field dan isinya masih benar-benar tidak teratur.
First Normal Form (1NF)
Lengkapi data-data pada bentuk UnNormalized, sehingga setiap record data terisi dengan kata lain tidak ada field yang kosong (tidak terisi nilainya).
Second Normal Form (2NF)
Pisahkan antara Tabel Master dan Tabel Transaksi atau dengan kata lain pisahkan antara yang Primary Key dengan yang bukan.
Third Normal Form (3NF)
Tulis lagi semua table master yang telah terbentuk di 2NF, kemudian detailkan lagi atau brake down kembali tabel transaksi jika dimungkinkan sehingga menjadi tabel transaksi header dan tabel transaksi detail.
Halaman
2
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Tapi ketika saya ingin melakukan normalisasi, kadang-kadang saya juga tidak mengikuti aturan. Biasanya saya langsung ke tahap 3NF, karena jika kita telah biasa menganalisa sebuah faktur (tanda bukti), maka tidak menjadi masalah untuk langsung ke tahap 3NF. Tahap 3NF nantinya akan terbentuk tabel-tabel yang sudah normal dan siap untuk diimplementasi ke database. Berikut ini gambaran tentang proses normalisasi.
FAKTUR ( TANDA BUKTI )
PROSES ANALISA ( NORMALISASI )
TABEL-TABEL DALAM KEADAAN NORMAL
Info : Ketika kita sudah terjun ke lapangan (dunia kerja), ada kalannya terjadi ketidaksesuaian antara hasil analisa/perencanaan dengan hasil implementasi. Yang terpenting adalah “aplikasi sesuai dengan keinginan pengguna” dengan tidak peduli akan proses yang ada > atau dengan kata lain kita gunakan “Management By Objective”.
Konsep Tabel Kemudian terdapat istilah pada tabel, seperti :
Tabel Master
Tabel master merupakan tabel yang mewakili entitas tertentu, Ia berdiri independen. Tabel master yang nantinya akan dilakukan proses manipulasi data, seperti : update, insert dan delete. Contohnya : tabel barang, mahasiswa, dosen, mata kuliah, customer, supplier, dan sebagainya.
Tabel Transaksi
Tabel transaksi merupakan tabel yang terbentuk dari hasil transaksi pada suatu form transaksi, Ia tidak bersifat independen atau bergantung dengan tabel lain. Contohnya : tabel transaksi pemesanan barang, transaksi penjualan, dsb. Tabel transaksi ini dibagi menjadi 2, yaitu :
Transaksi Header Tabel dimana setiap field hanya ditulis / diinput / disimpan sekali. Artinya dalam sebuah faktur contohnya tanggal faktur, nomor faktur, id pelanggan akan ditulis / diinput satu kali saja atau tidak berulang.
Transaksi Detail Tabel dimana setiap field yang ditulis / diinput / disimpan boleh lebih dari satu kali. Artinya dalam satu nomor faktur, kita dapat melakukan transaksi lebih dari satu kali. Misalnya kita dapat memesan 2 monitor, 1 keyboard, 1 “tikus”. Dimana data tersebut boleh berulang dalam satu nomor faktur.
Halaman
3
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Konsep Query Query adalah sebuah objek seperti halnya tabel. Query dapat dibentuk dari satu atau lebih tabel yang telah terelasi. Di query kita akan menemukan sebuah fleksibilitas dari perancangan tabel, kita dapat melakukan manipulasi data, melakukan seleksi tabel berdasarkan kriteria tertentu dan sebagainya. Intinya query ini adalah “by request” atau sesuai permintaan dari pengguna. Nanti kita akan memanfaatkan query untuk pembuatan laporan.
Konsep Interface ke Database Pada Visual Basic, teknik pengaksesan ke database dapat dibagi menjadi dua, yakni :
Pengaksesan Diatur Oleh Sistem Operasi
Teknik ini menggunakan Data Source (ODBC) sebagai jembatan atau perantara ketika kita akan mengkoneksikan database dengan Visual Basic. Pada teknik ini, sistem operasi akan melakukan tugasnya sebagai manajer yang mengatur setiap koneksi ke database yang ada pada komputer. Tentunya database yang diakses adalah database yang sudah terdaftar dalam sistem operasi atau dengan kata lain, database tersebut telah memiliki driver yang ditunjukkan pada Data Source (ODBC).
Jadi untuk mengkoneksikan ke database, kita perlu membuat Data Source yang baru (new data source) pada Tab User DSN. Pada tab itu, kita buat Data Source dengan terlebih dahulu menentukan driver yang sesuai, kemudian nama server, teknik authentifikasi ke database, nama database. Setelah data source terbentuk, maka kita dapat melakukan tes koneksi ke database. Jika sukses, berarti data source kita dapat mengakses database dengan baik.
Halaman
4
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Pengaksesan Diatur Oleh Visual Basic
Pada teknik ini, Visual Basic selain bertindak sebagai pemrograman ke databasenya, ia juga mengatur koneksi yang terjadi pada database. Interface atau referensi yang digunakan dapat berupa :
Data Access Objects (DAO)
Remote Data Objects (RDO)
ActiveX Data Objects (ADO)
Visual Basic juga menyediakan kontrol-kontrol interface yang terdapat pada menu Component-nya untuk memudahkan user dalam menghubungkan databasenya dengan Visual Basic. Seperti Data (DAO), Microsoft Remote Data Control (MSRDC), Ado Data Control (ADODC), dan sebagainya Namun demikian, Visual Basic juga memberikan keleluasaan bagi mereka yang menyukai menulis program dalam menghubugkan ke databasenya. Jadi untuk menghubungkan ke database, kita juga dapat mengetik script pada editor Visual Basic baik pada form maupun modulenya. Bagi sebagian orang, mereka lebih menyukai teknik ini, selain fleksibel mereka juga menganggap teknik mengkoneksikan database lewat script lebih “elegan”.
Gambar teknik pengaksesan database dari visual basic
Gambar di atas memberikan gambaran tentang bagaimana sebuah database dapat terkoneksi ke Visual Basic. Setiap metode atau interface memiliki kelebihan dan kekurangan
masing-masing.
Jadi
disini
dituntut
kejelian
pemrogram
dalam
memanfaatkan fasilitas yang tersedia. Pemrogram harus tahu dengan baik, kapan ia harus memilih sebuah interface dengan untung ruginya.
Halaman
5
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Nah yang akan kita bahas adalah ActiveX Data Object (ADO), tanya kenapa ??? Begini ceritanya. ADO merupakan teknologi terbaru Microsoft dalam pengaksesan data (database) dan merupakan interface ke OLEDB. Sedangkan OLEDB merupakan strategi level bawah Microsoft sebagai interface ke seluruh tipe dari data. Bingung nggak ? Sama donk, klo bingung liat gambar aja yuk.
Gambar ADO sebagai interface pengaksesan ke database
Jadi,
ADO menawarkan sesuatu yang lebih dibanding metode yang telah disebutkan.
Sebenernya sih ada yang namanya ADO Data Control (ADODC) yang terdapat pada komponen visual basic. Menu Project Component (CTRL+T) Microsoft Ado Data Control 6.0 (OLEDB) yang merupakan kontol bagi interface ADO. Hehehe tapi kita nggak pake tuh, kan judul workshop kita pemrograman database, jadi kita ketik aja kali yach, I’m so sorry .
Gambar kontrol ADODC dari menu Project Component
Halaman
6
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Konsep Reference Ketika kita akan menggunakan suatu teknik pengaksesan ke data base, jangan lupa untuk mengaktifkan salah satu referensinya pada menu Project References. Kemudian aktifkan salah satu saja. Jika kita gunakan ADO, maka referencesnya Microsoft ActiveX Data Objects 2.x Library (semakin tinggi versinya semakin lengkap fitur yang ditawarkan).
Konsep Form Sebagai Interface Form ini berguna untuk pengguna akhir (end-user) berhubungan dengan databasenya. Bagi si perancang aplikasi, form adalah tempat kita menaruh kontrol-kontrol untuk manipulasi database. Begitu ceritanya. Form ini juga terbagi menjadi 2, yaitu :
Form Master
Form yang ditujukan untuk menangani tabel master, biasanya lebih sederhana and simple. Pada form ini akan dilakukan proses manipulasi data pada tabel master seperti proses insert, update dan delete data. Selain itu kita juga akan gunakan tombol-tombol navigasi untuk “menggerakkan” sebuah record dalam tabel.
Form Transaksi
Form yang ditujukan untuk menangani tabel transaksi, biasanya lebih rumit and kadang bisa melibatkan lebih dari 3 tabel. Yang jelas konsep header & detail ada di situ. Jika mendesain form, buatlah dengan perasaan yang mendalam, anggaplah kita lagi mendesain rumah untuk kita tinggali, pasti kita akan buat sebagus mungkin kan ? hehehe jangan asal-asalan, gunakan rasa seni kita, curahkan perasaan kita di setiap sudutnya (au ah elap). Buat orang yang melihat itu terkesan dan betah melihat form yang kita buat. Jika perlu pasang skin biar tambah memikat (hehehe bukan susuk loh). Jika masih belum puas, tambahkan animasi teks biar “hidup”.
Halaman
7
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Namun tapi ada form yang digunakan untuk hal-hal khusus, seperti form untuk Menu (MDI
Multiple Document Interface), form untuk login, form untuk animasi loading, dan sebagainya. Form-form ini memang sengaja dibuat untuk menunjang form utama kita yakni form master dan form transaksi dalam sebuah kesatuan sistem.
Konsep Kontrol Kontrol merupakan salah satu obyek atau komponen suatu aplikasi yang diletakkan di dalam form untuk membentuk suatu program aplikasi. Jadi sebuah form biasanya disusun atas kontrol-kontrol tertentu sesuai kebutuhan. Kontrol inilah yang nantinya akan berfungsi sebagai interface antara user dengan program aplikasi yang dibangun. Sekarang kita bahas yach sedikit mengenai kontrol yang standard, hehehe bagi yang “expert” gak usah dibaca. Kontrol ini terletak pada Toolbox. Jika kontrol tidak terlihat, maka klik menu View Toolbox. Tapi maaf yach, saya nggak akan jelaskan satu-satu, soalnya males dan kayaknya dah pada tau kan ?
Pointer
PictureBox TextBox
Label
CommandButton
Frame
OptionButton
CheckBox ComboBox
ListBox
HScrollBar
VScrollBar DriveListBox
Timer DirListBox
FileListBox
Shape
Line
Image
Data
OLE
Gambar Kontrol Standard Pada Visual Basic
Terlihat sebuah kontrol dengan nama Data dengan referensi Microsoft DAO 3.51 Object Library. Data ini juga merupakan kontrol yang dapat digunakan untuk mengakses database. Namun memiliki banyak kelemahan dalam hal fleksibilitas koneksi. Oleh karena itu kita tidak akan memakainya.
Halaman
8
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Kontrol Untuk Database Pada bagian ini saya akan jelaskan kontrol yang nanti kita akan pakai dalam pembuatan database, seperti : DataGrid, ListView dan SSTab. Ketiga kontrol ini secara default tidak terdapat di Toolbox Standard. Jadi kita perlu menambahkannya dari component. Caranya : menu Project Components (CTRL+T)
Untuk kontrol DataGrid, pilih Microsoft DataGrid Control 6.0 (OLEDB)
Untuk Kontrol ListView, pilih Microsoft Windows Common Controls 6.0 (SP6)
Untuk kontrol SSTab, pilih Microsoft Tabbed Dialog Control 6.0
SSTab
Data Grid
List View
Gambar Kontrol Untuk Database Pada Form
Adapun fungsi dari masing-masing kontrol adalah sebagai berikut :
SSTab berfungsi untuk menghemat pemakaian form, jadi dalam sebuah form kita dapat meletakkan banyak objek di setiap tab yang ada.
Data Grid berfungsi untuk menampilkan data maupun manipulasi (insert, update dan delete data) langsung darinya. Juga untuk memudahkan kita dalam mengambil data dari tabel master untuk form transaksi.
List View kita manfaatkan untuk mengentry data ke form transaksi. Jadi data yang dimasukkan lewat list view dapat berulang. Pada List View perlu dilakukan pengaturan sebelum digunakan. Caranya klik kanan pada list view properties. Pada combo view, gantilah menjadi 3-IvwReport, Pada tab column header, tambahkan field judul (insert column) & sesuaikan nama serta ukuran yang akan ditampilkan.
Halaman
9
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Konsep Report Laporan / report berguna untuk menampilkan data yang berasal dari tabel atau query pada database. Seperti : laporan data pelanggan, laporan data barang, dan sebagainya. Namun laporan ini juga dapat digunakan untuk membuat tanda bukti seperti faktur. Untuk membuat laporan, Visual Basic 6 menyediakan feature seperti data report dan crystal report. Namun jika kita ingin membuat laporan yang benar-benar profesional, maka kita dapat menggunakan
Crystal Report Professional versi 12 (info : versi bajakannya sudah ada di pusat perbajakan di jakarta). Namun jika kita seorang yang kreatif, maka kita dapat “mengawinkan” antara Visual Basic dengan HTML untuk laporannya dengan VBScript tentunya. Keuntungan dari pembuatan laporan berupa HTML adalah, ia akan kompatibel di semua platform komputer. Namun dibutuhkan kecermatan serta ketelitian dalam pembuatan laporan menggunakan HTML, karena menurut saya agak rumit bagi orang yang awam dengan HTML. Jadi pada workshop kita kali ini, saya akan mencoba mengenalkan pembuatan laporan dengan
data report dengan sedikit script pemrograman. Software Pihak Ketiga ( Crystal Report ) Data Tabel / Query
Visual Basic Report Embedded
Laporan ( Report )
Primitive Report ( HTML, TXT, dsb )
Konsep Validasi Ketika user ingin menginput field yang bertipe numerik, maka jika ia menginput berupa huruf atau karakter spesial program akan error. Oleh karena itu dibutuhkan suatu prosedur validasi masukan yang berfungsi mengontrol input dari user. Validasi memungkinkan kita untuk memberi tahu pengguna jika ia salah menginput data dengan pesan yang mudah dimengerti. Berikut ini salah satu contoh sederhana penggunaan validasi untuk mengontrol karakter bertipe numerik : Private Sub txtqty_KeyPress(KeyAscii As Integer) If (KeyAscii >= vbKey0 And KeyAscii lihat cara sebelumnya.
4.
Kemudian gunakan referensi ADO yaitu Microsoft Activex Data Object 2.x dari menu project references.
5.
Berikut ini desain menu utama.
6.
Berkut ini desain menu laporan.
Halaman
18
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
7.
Berikut ini desain form barang.
8.
Berikut ini desain form customer.
Halaman
19
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
9.
10.
Berikut ini desain form penjualan.
Berikut ini desain form pembayaran.
Halaman
20
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
11.
Berikut ini desain laporan data barang
12.
Berikut ini desain laporan data customer
13.
Berikut ini desain laporan penjualan
Halaman
21
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
14.
Berikut ini desain laporan pembayaran
15.
Berikut ini desain faktur penjualan
Halaman
22
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Listing Program Lengkap Form Barang Public char As String Public v, i As Integer Private Sub Form_Load() Me.Top = (Screen.Height - Height) / 2 Me.Left = (Screen.Width - Width) / 2 Call BukaKoneksi Call Tampil Call DGBarang Barang.Caption = " Master Barang char = Me.Caption v = Len(char) End Sub
"
Private Sub Form_Unload(Cancel As Integer) Tombol True Call Kosong MenuUtama.Show Unload Me End Sub Private Sub Tampil() On Error Resume Next txtkode.Text = RSBarang!KodeBarang txtnama.Text = RSBarang!NamaBarang txtharga.Text = RSBarang!Harga txtjenis.Text = RSBarang!Jenis On Error GoTo 0 End Sub Private Sub Kosong() txtkode.Text = "" txtnama.Text = "" txtharga.Text = "" txtjenis.Text = "" End Sub Private Sub DGBarang() Set RSBarang = New ADODB.Recordset RSBarang.CursorLocation = adUseClient RSBarang.Open "select * from barang", adLockOptimistic Set DataGrid1.DataSource = RSBarang AturDataGrid DataGrid1.Refresh End Sub Private Sub AturDataGrid() DataGrid1.Columns(0).Width DataGrid1.Columns(1).Width DataGrid1.Columns(2).Width DataGrid1.Columns(3).Width End Sub
Halaman
= = = =
DB,
adOpenDynamic,
1200 3200 1600 1600
23
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Private Sub Tombol(Buka As Boolean) cmdadd.Enabled = Buka cmdedit.Enabled = Buka cmddel.Enabled = Buka cmdfind.Enabled = Buka End Sub Private Sub KosongBarang() Dim Kobar As Integer If RSBarang.RecordCount = 0 Then txtkode.Text = "B0001" Else RSBarang.MoveLast Kobar = Right(RSBarang![KodeBarang], 4) + 1 txtkode.Text = Format(Kobar, "B0000") End If End Sub Private Sub cmdadd_Click() Call Kosong Tombol False Call KosongBarang txtnama.SetFocus End Sub Private Sub cmdsave_Click() On Error Resume Next If MsgBox("Apakah Data Akan Disimpan [Y/T] ?", vbYesNo + vbQuestion, "Pesan Simpan") = vbYes Then RSBarang.AddNew RSBarang!KodeBarang = txtkode.Text RSBarang!NamaBarang = txtnama.Text RSBarang!Harga = txtharga.Text RSBarang!Jenis = txtjenis.Text RSBarang.Update DataGrid1.Refresh Call Kosong Tombol True Else Exit Sub End If On Error GoTo 0 End Sub Private Sub cmdedit_Click() RSBarang!KodeBarang = txtkode.Text RSBarang!NamaBarang = txtnama.Text RSBarang!Harga = txtharga.Text RSBarang!Jenis = txtjenis.Text RSBarang.Update DataGrid1.Refresh End Sub Private Sub cmddel_Click() If MsgBox("Apakah Data Akan Dihapus [Y/T] ?", vbYesNo + vbQuestion, "Pesan Hapus") = vbYes Then RSBarang.Delete RSBarang.MoveFirst Call Tampil
Halaman
24
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
DataGrid1.Refresh Else Exit Sub End If End Sub Private Sub cmdexit_Click() If MsgBox("Apakah Akan Keluar Form [Y/T] ?", vbYesNo + vbQuestion, "Pesan Keluar") = vbYes Then Call Kosong Tombol True MenuUtama.Show Unload Me Else Exit Sub End If End Sub Private Sub cmdfind_Click() CARI = InputBox("Ketik Kode Barang Yang Dicari !", "Cari Barang") Dim Ketemu As Integer Ketemu = 0 RSBarang.MoveFirst Do Until RSBarang.EOF If UCase(Trim(RSBarang!KodeBarang)) = UCase(Trim(CARI)) Then Ketemu = 1 Exit Do End If RSBarang.MoveNext Loop If Ketemu = 1 Then Call Tampil Else MsgBox "Data Tidak Ditemukan", vbOKOnly, "Pesan Cari" End If End Sub Private Sub cmdfirst_Click() RSBarang.MoveFirst Call Tampil Tombol True End Sub Private Sub cmdnext_Click() RSBarang.MoveNext If RSBarang.EOF Then MsgBox "Data Sudah Di Akhir", vbOKOnly, "Pesan Next" RSBarang.MoveLast End If Call Tampil Tombol True End Sub Private Sub cmdprev_Click() RSBarang.MovePrevious If RSBarang.BOF Then MsgBox "Data Sudah Di Awal", vbOKOnly, "Pesan Previous" RSBarang.MoveFirst End If
Halaman
25
Workshop Pemrograman Dasar Database Dengan Visual Basic 6
Call Tampil Tombol True End Sub Private Sub cmdlast_Click() RSBarang.MoveLast Call Tampil Tombol True End Sub Private Sub txtcarikode_Change() Set RSBarang = New ADODB.Recordset RSBarang.CursorLocation = adUseClient RSBarang.Open "Select * From Barang Where KodeBarang txtcarikode.Text & "%'", DB, adOpenDynamic, adLockOptimistic Set DataGrid1.DataSource = RSBarang AturDataGrid DataGrid1.Refresh End Sub Private Sub txtcarinama_Change() Set RSBarang = New ADODB.Recordset RSBarang.CursorLocation = adUseClient RSBarang.Open "Select * From Barang Where NamaBarang txtcarinama.Text & "%'", DB, adOpenDynamic, adLockOptimistic Set DataGrid1.DataSource = RSBarang AturDataGrid DataGrid1.Refresh End Sub
Like
'"
&
Like
'"
&
Private Sub Timer1_Timer() Me.Caption = Left$(char, i) i = i + 1 If i = v Then i = 0 End If End Sub Private Sub txtharga_KeyPress(KeyAscii As Integer) If (KeyAscii >= vbKey0 And KeyAscii = vbKey0 And KeyAscii