pemanfaatan+datagrid+dan+truedbgrid+pada+vb
TRANSCRIPT
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 1
Mengenal DataGrid
DataGrid merupakan komponen yang disediakan pada VB6 untuk menampilkan data
dalam bentuk tabel. Untuk menggunakan DataGrid, anda perlu mengikut sertakan
Microsoft DataGrid Control 6.0.
Maka pada toolbox anda akan bertambah DataGrid control.
Menggunakan DataGrid dengan ADODC 1. Tanamkan pada form sebuah ADODC dan DataGrid
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 2
Dengan connection string sebagai berikut :
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Microsoft
Visual Studio\VB98\NWIND.MDB;Persist Security Info=False
Dan RecordSource ke tabel Customers
2. Aturlah properties DataGrid, DataSource ke ADODC1
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 3
3. Klik kanan pada DataGrid, dan pilih Retrieve fields
Dan Pilih Yes
Dan otomatis field-field yang ada pada tabel Customers akan ditampilkan pada
DataGrid
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 4
4. Anda dapat mengatur kolom pada DataGrid seperti menambah, mengurangi
ataupun menghapus pada Modus Edit, dengan klik kanan pada DataGrid1, dan
pilih Edit
Pada Modus Edit, jika klik kanan dilakukan, maka tampilkan popup menu akan
berubah menjadi sebagai berikut ini :
Misalnya anda ingin menghapus kolom CompanyName, maka anda dapat
memilih kolom CompanyName, dan klik kanan serta memilih Delete.
Memanfaatkan Split untuk membuat Freeze Column
1. Pada modus Edit pilih Split
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 5
2. Dan pada DataGrid akan terpisah menjadi dua jendela
.
Sembunyikan kolom-kolom pada jendela 1 dengan hanya menyisakan kolom
CustomerId, dengan klik kanan pada DataGrid1, dan pilih properties, kemudian
pada kolom Layout, pada Split0, dan lakukan untuk kolom CompanyName,
kemudian hilangkan tanda check pada properti Visible
Lakukan juga untuk kolom-kolom yang lain, dengan menyisakan kolom Customer
Id.
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 6
Sehingga tampilan menjadi sebagai berikut :
3. Kemudian hilangkan Record Selector untuk Split1
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 7
Sehingga menjadi sebagai berikut :
4. Kemudian atur ukuran Split sebesar ukuran CustomerId
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 8
5. Kemudian buang tanda check pada AllowSizing pada Split 0, ScrollBars set ke
dbgHorizontal
6. Dan akhirnya menjadi sebagai berikut :
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 9
5. Buatlah Referensi ke Microsoft ActiveX Data Object
Menggunakan DataGrid dengan ADO
1. Tanamkan sebuah DataGrid pada Form
2. Kemudian pada event Form_Load, lakukan koding berikut ini :
Dim MyConn As New Connection
Dim Rs As New Recordset
Private Sub Form_Load()
Dim Col As Column
MyConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\Program Files\Microsoft Visual Studio\VB98\NWIND.MDB;Persist
Security Info=False"
MyConn.CursorLocation = adUseClient
MyConn.Open
Rs.Open "Customers", MyConn, adOpenDynamic, adLockOptimistic
Set DataGrid1.DataSource = Rs
DataGrid1.Splits.Add (1)
For Each Col In DataGrid1.Splits(0).Columns
If Col.ColIndex > 0 Then
Col.Visible = False
End If
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 10
Next Col
DataGrid1.Splits(0).ScrollBars = dbgHorizontal
DataGrid1.Splits(1).RecordSelectors = False
DataGrid1.Splits(0).Size = 30
DataGrid1.Splits(0).AllowSizing = False
End Sub
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 11
Mengenal TrueDbGrid
Pada visual basic 6.0 telah tersedia Microsoft DataGrid, tetapi grid bawaan ini kadang-
kadang tidak memenuhi kebutuhan pemakai. Salah satu komponen Grid yang disediakan
oleh pihak ketiga (http://www.componentone.com) yang cukup populer dikalangan
programmer VB adalah TrueDbGrid.
Anda perlu mendownload dan menginstalasi TrueDbGrid sebelum dapat digunakan pada
project anda.
Setelah instalasi anda dapat memanfaatkan TrueDbGrid dengan menu Project,
Components, ComponentOne TrueDbgrid Pro 7.0 (OLEDB) untuk pemakaian dengan
ADO.
Sesaat setelah dimasukan kedalam project, pada toolbar anda akan bertambah dua kontrol
yaitu : TDBDropDown dan TDBGrid.
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 12
Menampilkan data dengan TrueDbGrid
Salah satu pemakaian TrueDbGrid adalah untuk menampilkan data. Pada TrueDbGrid
tersedia berbagai keunggulan seperti Split, Filter Bar.
Dan Lakukan koding berikut
Dim MyConn As New Connection
Dim Rs As New Recordset
Private Sub Form_Load()
Dim Split0 As TrueOleDBGrid70.Split
Dim Split1 As TrueOleDBGrid70.Split
Dim Col As Column
MyConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\Program Files\Microsoft Visual Studio\VB98\NWIND.MDB;Persist
Security Info=False"
MyConn.CursorLocation = adUseClient
MyConn.Open
Rs.Open "Customers", MyConn, adOpenDynamic, adLockOptimistic
Set TDBGrid1.DataSource = Rs
Set Split0 = TDBGrid1.Splits.Add(0)
For Each Col In Split0.Columns
If Col.ColIndex > 0 Then
Col.Visible = False
End If
Next Col
Split0.ScrollBars = dbgAutomatic
Split0.SizeMode = dbgNumberOfColumns
Split0.Size = 1
Set Split1 = TDBGrid1.Splits(1)
Split1.RecordSelectors = False
TDBGrid1.Refresh
End Sub
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 13
Membuat Baris berbeda Warna
Dengan koding sebagai berikut :
Dim MyConn As New Connection
Dim Rs As New Recordset
Private Sub Form_Load()
Dim Split0 As TrueOleDBGrid70.Split
Dim Split1 As TrueOleDBGrid70.Split
Dim Col As Column
MyConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\Program Files\Microsoft Visual Studio\VB98\NWIND.MDB;Persist
Security Info=False"
MyConn.CursorLocation = adUseClient
MyConn.Open
Rs.Open "Customers", MyConn, adOpenDynamic, adLockOptimistic
Set TDBGrid1.DataSource = Rs
Set Split0 = TDBGrid1.Splits.Add(0)
For Each Col In Split0.Columns
If Col.ColIndex > 0 Then
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 14
Col.Visible = False
End If
Next Col
Split0.ScrollBars = dbgAutomatic
Split0.SizeMode = dbgNumberOfColumns
Split0.Size = 1
Set Split1 = TDBGrid1.Splits(1)
Split1.RecordSelectors = False
Split0.AlternatingRowStyle = True
Split1.AlternatingRowStyle = True
Split0.EvenRowStyle.BackColor = RGB(&HCC, &HCC, &HCC)
Split1.EvenRowStyle.BackColor = RGB(&HCC, &HCC, &HCC)
TDBGrid1.Refresh
End Sub
Memanfaatkan Filterbar
Dim MyConn As New Connection
Dim Rs As New Recordset
Private Sub Form_Load()
Dim Split0 As TrueOleDBGrid70.Split
Dim Split1 As TrueOleDBGrid70.Split
Dim Col As Column
MyConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\Program Files\Microsoft Visual Studio\VB98\NWIND.MDB;Persist
Security Info=False"
MyConn.CursorLocation = adUseClient
MyConn.Open
Rs.Open "Customers", MyConn, adOpenDynamic, adLockOptimistic
Set TDBGrid1.DataSource = Rs
Set Split0 = TDBGrid1.Splits.Add(0)
For Each Col In Split0.Columns
If Col.ColIndex > 0 Then
Col.Visible = False
End If
Next Col
Split0.ScrollBars = dbgAutomatic
Split0.SizeMode = dbgNumberOfColumns
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 15
Split0.Size = 1
Set Split1 = TDBGrid1.Splits(1)
Split1.RecordSelectors = False
Split0.AlternatingRowStyle = True
Split1.AlternatingRowStyle = True
Split0.EvenRowStyle.BackColor = RGB(&HCC, &HCC, &HCC)
Split1.EvenRowStyle.BackColor = RGB(&HCC, &HCC, &HCC)
'Mengaktifkan Filter Bar
Split0.FilterBar = True
Split1.FilterBar = True
TDBGrid1.AllowUpdate = False
TDBGrid1.Refresh
End Sub
Private Sub TDBGrid1_FilterChange()
Dim Filter As String
Dim Col As Integer
Col = TDBGrid1.Col
TDBGrid1.HoldFields
Filter = ""
For I = 0 To TDBGrid1.Columns.Count - 1
If TDBGrid1.Columns(I).FilterText <> "" Then
If Filter <> "" Then
Filter = Filter & " And "
End If
Filter = Filter & TDBGrid1.Columns(I).DataField & " Like '" & _
TDBGrid1.Columns(I).FilterText & "*'"
End If
Next I
Rs.Filter = Filter
TDBGrid1.Col = Col
TDBGrid1.EditActive = True
End Sub
Private Sub TDBGrid1_KeyPress(KeyAscii As Integer)
If KeyAscii = 27 Then
For I = 0 To TDBGrid1.Columns.Count - 1
TDBGrid1.Columns(I).FilterText = ""
Next I
Rs.Filter = ""
End If
End Sub
Pemanfaatan TrueDBGrid untuk Entry Data TrueDBGrid dapat digunakan untuk entry data langsung dengan mengatur properti
AllowUpdate, dan AllowAddNew menjadi True, dengan syarat recordset tidak diopen
secara readonly.
Beberapa event yang berhubungan dengan Entry data pada kolom yang dapat diprogram
adalah sebagai berikut :
Private Sub DGrid_BeforeColUpdate(ByVal ColIndex As Integer, OldValue
As Variant, cancel As Integer)
If ColIndex = 2 Then
Pemanfaatan DataGrid dan TrueDBGrid pada VB Hendra, S.T.
Indoprog 16
If ThisDocType = "4" Or ThisDocType = "6" Then
Call FindPart_No(DGrid.Columns(2).Value, Part_Name, Harga_Pokok,
Harga_Jual, cancel)
Else
Call FindItemRetur(DGrid.Columns(2).Value, txtNoDoc.Text,
Part_Name, Qty, Price, PDisc, Cash_Disc, Net_Price, cancel)
End If
End If
End Sub
Private Sub DGrid_AfterColUpdate(ByVal ColIndex As Integer)
If ColIndex = 2 Then
If ThisDocType = "4" Or ThisDocType = "6" Then
DGrid.Columns(3).Value = Part_Name
DGrid.Columns(4).Value = 1
DGrid.Columns(5).Value = Harga_Jual
DGrid.Columns(6).Value = 0
DGrid.Columns(7).Value = 0
Else
DGrid.Columns(3).Value = Part_Name
DGrid.Columns(4).Value = Qty
DGrid.Columns(5).Value = Price
DGrid.Columns(6).Value = PDisc
DGrid.Columns(7).Value = Cash_Disc
DGrid.Columns(8).Value = Net_Price
End If
End If
Call HitungDetails
lChange = True
End Sub