![]() |
![]() |
Data Form wizard adalah salah satu fasilitas Add In yang disediakan oleh Visual Basic untuk membuat form isian data lokal maupun remote.
Pada Modul ini kita akan memanfaatkan fasilitas ini untuk mempelajari kontrol ADODC yang diperkenalkan sejak Visual Basic 6.0.
Anda dapat mengaktifkan fasilitas ini melalui menu Add Ins, Add Ins Manager, dan kemudian akan muncul dialog box Add-In Manager, dan lakukan double klik pada VB 6 Data Form Wizard.
Untuk mengaktifkan data form wizard anda dapat memilihnya langsung pada menu Add-Ins, sehingga ditampilkan dialog box Data Form Wizard.
Lakukan klik Next, dan akan muncul dialog box berikutnya yaitu memilih jenis database yang akan digunakan, dalam hal ini Access (data lokal), atau Remote (SQL server)
Misalnya kita memilih Access, dan akan muncul dialog box berikut ini :
Tentukan nama database yang akan digunakan, misalnya C:\Program Files\Microsoft Visual Studio\VB98\Nwind.mdb, dan lakukan klik pada tombol Next.
Dalam hal ini kita akan menggunakan ADO Data Control.
Tentukan Record Source yang akan digunakan, dalam hal ini kita menggunakan tabel Customers, kemudian tentukan field-field yang akan digunakan, dan kolom yang akan di Sort, dan klik pada Next.
Selanjutnya tentukan tombol-tombol yang ingin ditambahkan pada form, dan klik pada next.
Akhirnya akan menghasilkan suatu form frmCustomer.
Untuk menjalankan frmCustomer, anda dapat melakukan pengaturan pada Project, Project Properties, dan lakukan pemilihan frmCustomer pada bagian StartUp Object.
Lakukan klik kanan pada kontrol ADODC, dan pilih ADODC Properties
Hal yang paling paling penting dari suatu ADODC adalah Connection String. Connection String ini dapat dibuat dengan command Build, atupun dengan mengetik sendiri.
PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=C:\Program Files\Microsoft Visual Studio\VB98\Nwind.mdb;
Misalnya dengan menggunakan command Build.
Dalam hal ini PROVIDER yang kita gunakan adalah Microsoft.Jet.OLEDB.3.51. Jenis provider ini sangat tergantung kepada jenis database yang kita gunakan, dalam hal ini adalah *.mdb.
Catatan :
Microsoft.Jet.OLEDB.3.51, hanya mampu membuka sampai database Access 97, untuk membuka data Access 2000, anda perlu mengunakan PROVIDER Microsoft.Jet.OLEDB.4.0.
Selanjutkan adalah menunjukkan database yang kita gunakan dalam connection.
Klik pada Test Connection untuk mencoba keberhasilan koneksi dengan sumber data.
Halaman Authentication dapat digunakan untuk login ke sistem database yang membutuhkan authentication User Name dan Password, misalnya pada database SQL Server.
Halaman RecordSource digunakan untuk menentukan sumber data dari Table, Query ataupun suatu SQL Statement. Dalam hal ini menggunakan SQL Statement :
select CustomerID,CompanyName,Address,City,ContactName,ContactTitle,Country,Fax,Phone,PostalCode,Region from Customers
Hasil dari Data Form Wizard menggunakan metode bound kontrol terhadap kontrol ADODC. Untuk mempelajari cara bound kontorl tersebut lakukan klik pada txtFields(0), dan pelajari properti-propertinya :
Property | Value |
DataSource | DatPrimaryRs |
DataField | CustomerId |
Dalam hal ini Property DataSource berisi DatPrimaryRs (nama dari kontrol ADODC), dan properti DataField berisi CustomerId (nama dari field yang di bound)
Periksa juga txtFields(1), dst.
Event datPrimaryRS_Error, merupakan event yang akan dibangkitkan ketika terjadi kesalahan pada proses data oleh ADODC.
Private Sub datPrimaryRS_Error(ByVal ErrorNumber As Long, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, fCancelDisplay As Boolean) 'Ini merupakan tempat anda menempatkan kode error handling MsgBox "Data error event hit err:" & Description End Sub
Event datPrimaryRS_MoveComplete, merupakan event yang akan dibangkitkan ketika terjadi perubahan posisi record.
Private Sub datPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 'Dalam hal ini akan menampilkan posisi record pada data kontrol datPrimaryRS.Caption = "Record: " & CStr(datPrimaryRS.Recordset.AbsolutePosition) End Sub
Event datPrimaryRS_WillChangeRecord, merupakan event yang akan dibangkitkan ketika akan terjadi perubahan pada record, yang dapat dipelajari dari parameter adReason, dan perubahan tersebut dapat dibatalkan dengan parameter adStatus.
Private Sub datPrimaryRS_WillChangeRecord(ByVal adReason As ADODB.EventReasonEnum, ByVal cRecords As Long, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 'Merupakan tempat anda menempatkan kode validasi, ubah isi bCancel menjadi False untuk membatalkan perubahan 'Event ini akan dibangkitkan ketika terjadi hal seperti
Dim bCancel As Boolean Select Case adReason Case adRsnAddNew Case adRsnClose Case adRsnDelete Case adRsnFirstChange Case adRsnMove Case adRsnRequery Case adRsnResynch Case adRsnUndoAddNew Case adRsnUndoDelete Case adRsnUndoUpdate Case adRsnUpdate End Select If bCancel Then adStatus = adStatusCancel End Sub
Event cmdAdd_Click, merupakan event untuk command button cmdAdd.
Private Sub cmdAdd_Click() On Error GoTo AddErr datPrimaryRS.Recordset.AddNew Exit Sub AddErr: MsgBox Err.Description End Sub
Event cmdDelete_Click, merupakan event untuk command button cmdDelete
Private Sub cmdDelete_Click() On Error GoTo DeleteErr With datPrimaryRS.Recordset .Delete .MoveNext If .EOF Then .MoveLast End With Exit Sub DeleteErr: MsgBox Err.Description End Sub
Event cmdRefresh_Click, merupakan event untuk command button cmdRefresh
Private Sub cmdRefresh_Click() 'Bagian ini dibutuhkan pada lingkungan multiuser
On Error GoTo RefreshErr datPrimaryRS.Refresh Exit Sub RefreshErr: MsgBox Err.Description End Sub
Event cmdUpdate_Click, merupakan event untuk command button cmdUpdate
Private Sub cmdUpdate_Click() On Error GoTo UpdateErr datPrimaryRS.Recordset.UpdateBatch adAffectAll Exit Sub UpdateErr: MsgBox Err.Description End Sub
Event cmdClose_Click, merupakan event untuk command button cmdClose
Private Sub cmdClose_Click() Unload Me End Sub
Event Form_Unload, merupakan event untuk Form_Unload
Private Sub Form_Unload(Cancel As Integer) Screen.MousePointer = vbDefault End Sub
PENTACOM, Jl. Samosir No. 21 Medan.
pentacom@yahoogroups.com