Pencarian dengan MSFlexGrid

Terkadang kamu masih sangat bingung kan menentukan media pencarian itu menggunakan apa, hmm memang pada umumnya orang akan cenderung menggunakan DataGrid sebagai alternatif pertama untuk melakukan pencarian item di dalam suatu program. Nah.. sekarang aku akan sedikit mengupas tentang penggunaan komponen MSFlexGrid sebagai media pencarian item di dalam program Visual Basic kamu. Simak baik-baik yach...!
  • Buka proyek baru aplikasi VB kamu (udah tau donk gimana cara ngebukanya?!)
  • Tambahkan satu komponen dari menu Project --> Preferences --> Microsoft ActiveX Data Objects 2.1 Library.
  • Tambahkan satu komponen lagi dari menu Project --> Components --> Microsoft FlexGrid Control 6.0.
  • Panggil komponen MsFlexGrid ke dalam Form.
  • Panggil komponen Label ke dalam Form.
  • Panggil komponen TextBox ke dalam Form.
  • Panggil komponen CommandButton ke dalam Form.
  • Berikut adalah hasilnya:
  • Lakukan pengaturan pada setiap komponen, ikuti pengaturannya berikut:
  • Berikut adalah tampilan hasilnya:
  • Jika form serta komponennya sudah kamu atur, baiknya form ini kamu simpan dulu deh, caranya klik ikon Save () pada Toolbar.
  • Selanjutnya simpan project sesuai dengan keinginan kamu.

  • Selanjutnya, kamu buka halaman kode program, hmm dah tau kan caranya?. Ok begini lho..klik menu View --> Code, dan kemudian salin kode program berikut ini tanpa meninggalkan satu langkah sedikit pun. OK ... ^_^ laksanakan....!!??!!!%$#&^*(!
Option Explicit
Private KonekDb As New ADODB.Connection
Private Rs_Barang As ADODB.Recordset
Private StrKonekDb As String

Private Sub BukaDatabase()
Set KonekDb = New ADODB.Connection

StrKonekDb = "Provider=Microsoft.Jet.OLEDB.4.0;Persist " _
& "Security Info=False;Data Source=" _
& App.Path + "\InventoryDb.mdb"

On Error Resume Next
If KonekDb.State = adStateOpen Then
KonekDb.Close
Set KonekDb = New ADODB.Connection
KonekDb.Open StrKonekDb
Else
KonekDb.Open StrKonekDb
End If
End Sub

Sub AktifGridBarang()
With GridBarang
.Cols = 7

.RowHeightMin = 300
.Col = 0
.Row = 0
.Text = "NO"
.CellFontBold = True
.ColWidth(0) = 400
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter

.RowHeightMin = 300
.Col = 1
.Row = 0
.Text = "KODE"
.CellFontBold = True
.ColWidth(1) = 1100
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter

.Col = 2
.Row = 0
.Text = "NAMA BARANG"
.CellFontBold = True
.ColWidth(2) = 3300
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter

.Col = 3
.Row = 0
.Text = "SATUAN"
.CellFontBold = True
.ColWidth(3) = 900
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter

.Col = 4
.Row = 0
.Text = "H BELI[Rp.]"
.CellFontBold = True
.ColWidth(4) = 1500
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter

.Col = 5
.Row = 0
.Text = "H JUAL[Rp.]"
.CellFontBold = True
.ColWidth(5) = 1500
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter

.Col = 6
.Row = 0
.Text = "STOK"
.CellFontBold = True
.ColWidth(6) = 700
.AllowUserResizing = flexResizeColumns
.CellAlignment = flexAlignCenterCenter
End With
End Sub

Sub TampilGridData()
Dim Baris As Integer
GridBarang.Clear
Call AktifGridBarang

GridBarang.Rows = 2
Baris = 0

With Rs_Barang
If .BOF Then
MsgBox "DATA BARANG UNTUK MASIH KOSONG", _
vbOKOnly + vbInformation, "Perhatian"
Exit Sub
Else
.MoveFirst
Do While Not .EOF
Baris = Baris + 1
GridBarang.Rows = Baris + 1
GridBarang.TextMatrix(Baris, 0) = Baris
GridBarang.TextMatrix(Baris, 1) = !Kode_Barang
GridBarang.TextMatrix(Baris, 2) = !Nama_Barang
GridBarang.TextMatrix(Baris, 3) = !Satuan
GridBarang.TextMatrix(Baris, 4) = !Harga_Distributor
GridBarang.TextMatrix(Baris, 5) = !Harga_Retail
GridBarang.TextMatrix(Baris, 6) = !Stok
.MoveNext
Loop
End If
End With
End Sub

Private Sub Form_Load()
Call BukaDatabase
Set Rs_Barang = New ADODB.Recordset
Rs_Barang.Open "SELECT * FROM Barang ORDER BY Kode_Barang", _
KonekDb, adOpenDynamic, adLockOptimistic

Call TampilGridData
End Sub

Private Sub txtCari_Change()
Set Rs_Barang = New ADODB.Recordset
Rs_Barang.Open "SELECT Kode_Barang, Nama_Barang, " _
& " Satuan, Harga_Distributor, Harga_Retail, " _
& " Stok From Barang " _
& " WHERE Nama_Barang LIKE '%" & txtCari.Text & "%' " _
& " ORDER BY Kode_Barang", _
KonekDb, adOpenDynamic, adLockBatchOptimistic

If Rs_Barang.BOF Then
MsgBox "TIDAK MENEMUKAN DATA YANG DICARI " _
& " - " & txtCari.Text & " - DALAM KOLEKSI ", _
vbInformation, "Informasi"

txtCari.Text = ""
txtCari.SetFocus
Else
Call TampilGridData
End If
End Sub

Private Sub tbKeluar_Click()
Unload Me
End Sub

  • Coba kamu jalankan dengan menekan tombol F5 pada keyboard. Nah..nah.. pasti belum jalankan??!! Hayooo.. pasti ada yang lupa!!! Hmmm......!!!!???
  • Yup betul banget, kamu kan belum buat sebuah Database dan Tabel kan makanya programnya Error. OK deh kita mulai buat yach....!!!
  • Buka aplikasi Microsoft Access nya (disini aku masih pake Office 2003 lho, jangan bingung yach..!)
  • Klik menu Create a new file.
  • Klik menu Blank database.
  • Simpan dan Letakkan database dalam satu tempat (folder) ketika kamu menyimpan form dan proyek sebelumnya. Berilah nama InventoryDb pada database tersebut.
  • Klik kanan menu Create table in Design view--> Design View.
  • Ikuti pengaturan pada tabel berikut ini ya, pokoknya jangan sampai salah lhoo...!!! Hmmm.. kalo ada yang salah ya program ndak bisa jalan to yooo.....!!!!!
  • Gini..ni.. kalo udah nampil di Design Table. Jadi canteeek khaaaannnn.....!!! ^_^
  • Kalo semuanya udah di atur, simpen deh tabelmu dengan nge-klik ikon Save (), trus kasih nama tabel kamu dengan nama Barang. OK ;) ....! Paham yak...????!!!
  • Untuk saat ini selsai deh aplikasi Pencarian menggunakan komponen MsFlexGrid, tapi sebelum kamu ngejalanin (Run) programnya, harusnya kamu isi dulu deh tabelmu. Ya diisi beberapa data dulu lah, atau terserah kamu aja dah yang penting tabel Barang nggak kosong. Tau kan cara ngisi data manual langsung di Tabel, kuanggap dah tau aja deh ya...?? dah cuapek banget neh....!!!!.
  • Kalo tabel Barang udah ada isinya, trus kamu baru boleh ngejalanin (nge-Run) aplikasi Pencarian Barang nya. Moga-moga.. programmu lancar yak...! Nih Contohnya kalo dah sukses....!!!.
  • Tu sebenere datanya ada bejibun lhooo... tapi berhubung aku nyari nama barang yang ada hubungannya dengan soto, ya itu.. yang nongol cuma barang yang ada hubungannya sama SOTO.
  • OK mudah-mudahan bermanfaat yak...! Terima kasiiiihhh....!!!$%^^$#@&**
Posted on 11:24 AM by Indah Indriyanna and filed under | 14 Comments »

14 komentar:

put3 said... @ June 2, 2009 at 2:08 PM

nice info...

dynastybat said... @ July 3, 2009 at 11:04 AM

maaf y kak,
aq pngen tau ne code untk MSHFlexgrid sbgai penampung dari tabel relasi.jd nt di MSHFlexgrid tu ky' relasi tabel gt wktu progrm start.
kLo tau,tLong d upLoad y kak.
ok thnks.

Anonymous said... @ November 30, 2009 at 10:08 PM

maaf sebelumnya saya kemarin membeli buku tentang " buku panduan tugas akhir membuat aplikasi penggajian karyawan dengan visual basic 6.0" oleh bunafit nugroho dan indah indriyana, penerbit Alif Media.
tapi sayang sekali, banyak isi dari tabel kosong tidak ada tulisannya, padahal isi tabel tersebut penting dalam pembahasan materi di dalam buku tersebut.Karena kekosongan tersebut mengakibatkan saya tidak bisa memepelajari buku yang saudara buat...

adapun tabel yang kosong dalam buku tersebut yakni.
halaman 20 : tabel 2.1 struktur direktori dan fungsinya
halaman 24 : tabel 2.2 konfigurasi form utama
halaman 25 : tabel 2.3 konfigurasi menu utama
halaman 30 sampai dengan 33 : tabel 2.4 pengaturan form master data pegawai
halaman 57 sampai dengan 58 : tabel 2.5 penagturan form master data keluarga


saya minta tolong dikirimkan tabel berupa softcopy, yang kosong tersebut ke alamat email saya ini, ato kirim ke alamat saya " jl bara 2 no 124 Dramaga Bogor"


bogor. 30 nopember 2009

KAMALUDDIN MAHFUDZ

Bekasi Bad Boy said... @ February 22, 2010 at 4:47 PM

Saya tertarik dengan artikel anda ini, dan sudah saya pelajari namun saya masih bingung kalo mau nambah data langsung di gridnya bagaimana scriptnya.
Makasih
email to : lomri.doank@gmail.com

abdul rojak said... @ February 16, 2012 at 12:10 AM

manttrab euy.......
ini yang sedang saya cari..

makasi ya kak...

jokowic said... @ April 28, 2012 at 9:20 PM

menarik banget gan artikelnya..

perlu dicoba neh...

parker said... @ June 16, 2012 at 9:03 AM

Siph gan membantu..^^

tukar link ya
tipstugaskita.blogspot.com
XD

tamy said... @ July 20, 2012 at 3:14 PM

mbk kalau datanya bukan kesimpen di access caranya gimana??
datanya itu kesimpen di datakamus.dat!!
mhn bantuannya!! :))

Sity said... @ March 2, 2013 at 3:36 PM

makasih banget infonya

Anonymous said... @ June 13, 2013 at 1:40 PM

terimakasih artikelnya membantu sekali

Anonymous said... @ August 6, 2015 at 9:12 PM

Kak mhon bntuan nya. Sya bwt program mnggunakan mshflexgrid . di mana dlmny menmpilkan field kode nama jumlah. Sya sudah input beberapa data inginnya jika sya klik baris 3 maka mncul jumlah dari baris 3 di teks nya. Dan jika klik baris 2 mka mncul jumlah baris 2 di teks nya. Tapi masalahnya skrg jika sya klik baris 3 data yv mincul d teks adlh data baris 2 sdngkn klik baris 4 daya yg mncul baris 3 mhon bntuannya segera kak. Karna ini tugas sya. Mhon krim k email @triewahyunich@gmail.com trima ksih kak

Unknown said... @ April 19, 2016 at 3:59 PM

bingung mw comment juga mw nanya apa mbak..... blom script,otak saya udah error dluan... :D

Unknown said... @ April 19, 2016 at 4:00 PM

bingung mw comment juga mw nanya apa mbak..... blom script,otak saya udah error dluan... :D

VVIPCF said... @ January 17, 2017 at 1:35 PM

jumlah data yg ditampilkan hanya 43.749 baris, sebabnya kenapa yah, padahal data di acces mencapai 80.000 baris

Post a Comment

Kalo mau komentar harus sopan yach..!