|
2. Mengakses XML DOM Dengan Visual
Basic
Pada halaman ini saya akan mencoba mendemonstrasikan bagaimana
megakses data XML dengan Visual Basic. Pertama saya akan mengakses XML bentuk element dan
yang kedua tentunya mengkases XML bentuk attribut. Anda boleh memakai
salah satu atau kedua-dua metoda tersebut sekaligus pada aplikasi
anda. Untuk dapat mengakses data XML dengan Visual Basic, Microsoft menyediakan
file MSXML.DLL. File MSXML.DLL menyediakan pustaka fungsi-fungsi yang berhubungan dengan Model Objek
Dokumen XML. Melalui Model Objek ini Visual Basic dapat membaca data
XML.
a. Mengakses XMLDOM bentuk
Element Buat dokumen XML terlebih dahulu
dengan notepad nya windows. Ketik
seperti di bawah ini:
<XML>
<Karyawan>
<Nama>Hartoto</Nama>
<Tel>061-7348086</Tel> <Jabatan>WEB
Developer</Jabatan> </Karyawan>
<Karyawan> <Nama>Adien
PS.</Nama>
<Tel>061-4576815</Tel> <Jabatan>IT
Engineer</Jabatan> </Karyawan>
<Karyawan>
<Nama>Adlin</Nama>
<Tel>061-4677815</Tel>
<Jabatan>EDP</Jabatan> </Karyawan>
<Karyawan>
<Nama>Wisnu</Nama>
<Tel>061-4677615</Tel>
<Jabatan>STD</Jabatan> </Karyawan> </XML>
simpan dengan nama
"KaryawanEl.xml" pada folder yang sama dengan project yang akan kita
buat.
Sekarang
saatnya membuat project Visual Basic yang akan membaca dokumen XML yang
kita buat tadi. Buka Project Standard Visual Basic lalu klik Project
Refrence Lalu pilih Microsoft XML klik di sini untuk lihat gambar. tambahkan textbox sebanyak 4 buah,
label 3 buat command 4 buah. setting property dari masing-masig object
seperti tabel di bawah ini:
| |
Property |
|
Object |
Name |
Caption |
| form1 |
frmKaryawan |
Baca Karyawan Elemen XML |
| text1 |
txtNama |
|
| text2 |
txtTel |
|
| text3 |
txtJabatan |
|
| text4 |
txtRec |
|
| label1 |
|
Nama: |
| label2 |
|
Tel: |
| label3 |
|
Jabatan: |
| command1 |
cmdAwal |
|
| command2 |
cmdKembali |
|
| command3 |
cmdLanjut |
|
| command4 |
cmdAkhir |
|
Hasilnya
seperti gambar ini klik di
sini untuk lihat
gambar. Sampai di sini pembuatan antar mukanya. Sekarang waktunya
membuat kode. Ketik kode di bawah ini:
Option Explicit Dim oDOM As MSXML2.DOMDocument30
Dim oNode As IXMLDOMNode Dim PosRec As Integer, JlhRec As Integer
Private Sub cmdAkhir_Click() Set oNode =
oNode.parentNode.lastChild PosRec = oNode.childNodes.length
BacaData End Sub
Private Sub cmdAwal_Click()
PosRec = 0 Set oNode = oNode.parentNode.firstChild
BacaData End Sub
Private Sub cmdKembali_Click()
If PosRec > 0 Then Set oNode =
oNode.previousSibling PosRec = PosRec - 1
BacaData End If End Sub
Private Sub cmdLanjut_Click() If PosRec + 1 <
oNode.childNodes.length + 1 Then Set oNode =
oNode.nextSibling PosRec = PosRec + 1
BacaData End If End Sub
Private Sub Form_Load() Set oDOM = New
MSXML2.DOMDocument30 oDOM.Load App.Path & "\KaryawanEl.xml"
Set oNode = oDOM.childNodes(0).childNodes(0) JlhRec
= oNode.childNodes.length PosRec = 0 BacaData
End Sub
Private Sub BacaData() txtNama.Text =
oNode.childNodes(0).Text txtTel.Text = oNode.childNodes(1).Text
txtJabatan.Text = oNode.childNodes(2).Text
txtRec.Text = " " & PosRec + 1 & "/" & JlhRec + 1 & "
rekaman" End
Sub
Jika tidak ada MSXML2 pada komputer anda pakai MSXML,
jika tidak ada MSXML2.Domdocument30 pakai MSXML.Domdocument. Ini hanya
perbedaan versi. Disarankan memakai versi yang terbaru.
Tekan F5
atau klik Run - Start. Aplikasi akan tampak seperti gambar. Klik di sini untuk lihat gambar. Jika anda ingin source code dari
tutorial ini, klik di
sini
. |