Selasa, Mei 12, 2009

Memanggil Webservice Menggunakan Ms Visual Basic 6

STUDI KASUS: MEMANGGIL WEBSERVICE BC1.1 DI INSW

Kali ini saya akan menuliskan tentang cara memanggil sebuah method di webservice dengan menggunakan M$ Visual Basic 6. Agar lebih mantap dan aplikatif, maka saya juga menggunakan studi kasus untuk memanggil sebuah method yang telah tersedia di webservice di INSW.

Sekilas Info Tentang Data BC1.1
Data BC1.1 adalah salah satu contoh data pre-notification untuk pengiriman dokumen impor. Seringkali untuk mendapatkan data ini, importir/PPJK mengalami kesulitan. Data BC1.1 merupakan data respon dari KPBC untuk perusahaan pengangkutan (baca: shipping agent) terkait dengan pengiriman dokumen manifestnya tersebut. Setiap 1 pos di dokumen manifes biasanya terhubung dengan 1 dokumen PIB dengan menggunakan parameter data BC1.1 tersebut. Oleh karena demi peningkatan pengawasan arus barang masuk di pelabuhan, maka sejak diberlakukannya implementasi sistem PDE Manifes, Bea Cukai mewajibkan informasi data BC1.1 tercantum disetiap dokumen PIB yang di kirim ke KPBC oleh importir/PPJK.

Mulai melakukan pemrograman
Sebelum melakukan pemrograman pemanggilan service menggunakan VB6, maka terlebih dahulu kita harus melakukan instalasi SOAP Toolkit yang bisa didownload di website Micro$oft. Software ini merupakan software yang dapat diunduh gratis berisi library-library SOAP yang bisa digunakan oleh VB6.

Alamat webservice BC1.1 adalah di http://services.insw.go.id/BC11Services/Services mempunyai satu method yang bisa di invoke yaitu CekBC11. Informasi detail tentang method Cek BC11 bisa ditemukan di WSDL yang disertakan. Disana kita melihat terdapat 2 parameter input yaitu string dan string0. Penjelasan tentang method tersebut dapat diringkas menjadi tabel sebagai berikut.

Parameter yang digunakan pada saat pemanggilan adalah Nomor dan Tanggal Bill of lading. Data ini sangat spesifik dan biasanya sudah cukup dikenal oleh para importir mengingat data ini merupakan salah satu dokumen pendukung yang "wajib" ada saat mengirimkan PIB disamping invoice.

Selanjutnya, kita buka software M$ Visual Basic 6. Buat sebuah project baru (Standar exe) kemudian buat satu form yang terdiri dari textbox dan tombol-tombol seperti contoh dibawah ini dan berilah nama variabel di masing-masing obyek tersebut.

Jangan lupa, kita juga harus membuat referensi ke library SOAP Toolkit yang telah kita instal tadi. Langkahnya:
- Buka menu Projects | References
- Cari library Micro$oft SOAP Type Library v3.0

- Kemudian klik tombol OK.

Kita mulai men-coding!
Pada form yang telah kita buat tadi, klik di tombol cmdInvoke ("Get BC1.1") ikut isikan baris sebagai berikut.
Private Sub cmdInvoke_Click()
Dim wsClient As SoapClient30
Dim strWSDL As String
Dim strResult As String
Dim noBL As String
Dim tgBL As String

Set wsClient = New SoapClient30
strWSDL = "http://services.insw.go.id/BC11Services/Services?WSDL"

noBL = txtNoBL.Text
tgBL = Format(txtTgBL.Value, "DD-MM-YYYY")

wsClient.MSSoapInit strWSDL
strResult = wsClient.cekBC11(noBL, tgBL)

Text2.Text = strResult
End Sub

Selanjutnya jalankan (Run) program yang kita buat ini. Masukan paramater Nomor BL dan Tanggal BL yang valid. Contoh response yang kita dapatkan akan keluar string sbb:
001476|22/04/2009|0001.0000.0000|040000|MT. LAUREN|04|PT INDORAMA SYNTHETICS TBK,
Langkah selanjutnya kita bisa lakukan parsing data tersebut untuk digunakan lebih lanjut.
Mudah, bukan? Selamat mencoba!

» Baca juga artikel yang berkaitan:

8 komentar. Sampeyan sudah?:

diankurniawan mengatakan...

terima kasih sharing nya, bermanfaat sekali

klanat mengatakan...

Itu kalo webservice-nya BC1.1(punya orang), truz kalo parsing datanya dari webservice kita sendiri? maksudnya,maz ngasih donk contoh XML yang kita buat sendiri yang bisa di upload ke web hosting truz....dan truz.... biar bisa konek ma VB 6... Tolong donk maz....NewBie bnget ne boz

klanat mengatakan...

Oh iya maz,Gini... aku mahasiswa WEC mlg, untuk tgs akhir rencananya mo buat web e-commerce truz adminnya dari VB 6. untuk liat jml pengunjung(counter),update data dilakukan dari VB. Menurut maz skripsi ini masuk akal g?dari segi efisiensi sama keamanan maksud saya... Mohon pencerahannya Maz.... Terima Kasih sebelumnya

mazirwan mengatakan...

@klanat: bikin dulu webservice servernya. bikin service apa gitu, yang paling mudah pake PHP aja (NuSOAP) kemudian di upload dan diinvoke pake VB. Lain kali deh aku tulis artikel tentang bikin service pake PHP, tapi gak janji ya :D

Lho sampeyan jurusan apa? ada baiknya di konsultasikan aja dulu dengan dosen pembimbing biar afdol.

Juniawan89 mengatakan...

Mas, saya punya method web service di java. ingin saya panggil di vb6 (client nya vb6). methodnya itu method insert. kalo saya pake code diatas, slalu saja error. bisa mnta contoh buat method insert ga ma? terimakasih banyak

syaiful imam mengatakan...

kalo memakai token key gimana?

Unknown mengatakan...

bos
bisa bantu kirim library SOAP toolkit via email
andhi_koeswojo@yahoo.com

matur sembah nuwun

hermawan mengatakan...

sekarang caranya gimana gan??
pake XML sekarang.. ga tau parameternya apa aja..
help..
- noHost
- tglHost
- kodeKantor
- sign