SEBAGAIMANA kita ketahui, bahwa aplikasi pelaporan PDDIKTI Feeder telah dilengkapi dengan Web Service yang dapat digunakan untuk membantu dalam penyusunan laporan semester. Web service PDDIKTI feeder tersebut dikembangkan menggunakan SOAP (Simple Object Access Protocol) yaitu sebuah standarisasi dasar dari protokol komunikasi yang berbasis XML yang dapat digunakan untuk saling bertukar informasi terstruktur di antara aplikasi-aplikasi yang ada.
Well langsung saja, berikut tahapannya.
Artikel ini hanya untuk yang sudah paham dengan Yii2
Persiapan
- Framework Yii2. Dalam contoh ini saya menggunakan installasi template basic.
- Extention NuSoap. Dalam contoh ini, saya menggunakan paket dari Esyst yang beralamat di https://packagist.org/packages/esyst/nusoap. Untuk extension nusoap lainnya, bisa di cek di website https://packagist.org dengan kata kunci
yii2 nusoap
. - Karena kita akan menggunakan layanan web service dari aplikasi PDDIKTI Feeder, maka pastikan aplikasi tersebut sudah terinstall dengan benar dan sudah melakukan push prefill.
Oh iya sebelum lanjut, hal terpenting yang perlu diketahui adalah alamat wsdl dari webservice feeder yang akan dituju. Jika feedernya berada dalam satu PC dengan aplikasi wsclient ini, maka alamatnya adalah http://localhost:8082/ws/live.php?wsdl
untuk akses ke database utama, atau http://localhost:8082/ws/sandbox.php?wsdl
untuk akses ke database sandbox.
Sedangkan jika feedernya berada di PC lain yang berada dalam satu jaringan lokal (LAN) ataupun jaringan internet (WAN), maka alamatnya adalah http://alamat_server:port_feeder/ws/live.php?wsdl
atau http://alamat_server:port_feeder/ws/sandbox.php?wsdl
.
Untuk memastikan alamat wsdl webservice feeder tujuan kita sudah benar, ada baiknya kita test terlebih dahulu melalui web browser.
Dalam gambar diatas, terdapat kurang lebih 20 method yang di sediakan oleh web service feeder. Oleh karenanya, dalam artikel ini saya hanya akan membahas method GetToken()
, GetDictionary()
, GetRecord()
/GetRecordset()
. Sedangkan untuk method-method lainnya kita akan bahas dalam artikel selanjutnya.
Untuk penjelasan masing-masing method, silahkan merujuk ke artikel Mengenal Method-Method Web service Feeder.
Tahap Installasi
Untuk installasi point 1 dan 2 diatas, kita akan menggunakan bantuan composer
. Sedangkan untuk installasi point 3 silahkan mengacu pada panduan installasi yang ada di halaman http://forlap.ristekdikti.go.id
Install Yii2 melalui composer dengan perintah:
composer create-project yiisoft/yii2-app-basic wsclient 2.0.8

Hasil Installasi Yii2
Install NuSoap extension melalui composer dengan perintah:
composer require esyst/nusoap "0.2.1"

Installasi extension nusoap melalui composer
Jika langkah installasi diatas sudah selesai semua, berikutnya adalah membuat model Soap.
Nama dan lokasi file app\models\Soapmodel.php
Membuat halaman List Table (Method ListTable())
Tambahkan fungsi actionList() di file app\controllers\SiteController.php
Buat file listtable.php di lokasi app\views\site
Jika script diatas dijalankan maka akan tampil seperti berikut

Tampilan List Table menggunakan method ListTable()
Membuat Halaman Struktur Tabel (Method Dictionary())
Buat fungsi actionStruktur() di file app\controllers\SiteController.php
Berikutnya buat file struktur.php di lokasi app\views\site
Jika script diatas dijalankan, maka tampilannya adalah seperti berikut

Tampilan struktur tabel agama menggunakan method GetDictionary()
Membuat halaman View (Method GetRecordset)
Buat fungsi actionView() di file app\controllers\SiteController.php
Berikutnya buat file view.php di folder app\views\site
Jika script diatas dijalankan, maka tampilannya adala seperti berikut

View data menggunakan method GetRecordset()
Langkah terakhir adalah mengaktifkan Preety URL fil file app\config\web.php dan membuat file .htaccess di folder web seperti berikut
Berikut listing lengkap dari script diatas:
About the author