19

Click here to load reader

Dokumen_Teknis_Webservice_EPSBED_V.1.4

Embed Size (px)

Citation preview

Page 1: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumen Teknis Webservice EPSBED

Dokumen ini berisi tentang

desain dan implementasi

webservice untuk setiap

Perguruan Tinggi

Page 2: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 2

DAFTAR REVISI

Versi Pemilik Deskripsi Revisi Tanggal

1.0 Ario Sutomo 21/08/2010

1.1 Ario Sutomo Penambahan File EPSBED default TRFPA.DBFuntuk transaksi_fasilitas_penunjang_akademik

20/10/2010

1.2 Ario Sutomo - Master Dosen dihilangkan

- perubahan fungsi serialize() menjadi json_encode()

- perubahan fungsi unserialize() menjadi json_decode()

18/12/2010

1.3 Ario Sutomo Perbaikan beberapa penulisan 31/12/2010

1.4 Ario Sutomo Perbaikan URL download 10/11/2011

Page 3: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 3

1. Daftar Isi 1. Daftar Isi ......................................................................................................................................... 3

2. Persyaratan ................................................................................................................................... 4

2.1. Software requirements .......................................................................................................... 4

2.2. Tahapan instalasi .................................................................................................................. 4

2.3. Frequently asked questions.................................................................................................. 6

3. Protokol .......................................................................................................................................... 7

4. Webservice .................................................................................................................................... 9

4.1. Jenis webservice ................................................................................................................... 9

4.1.1. Webservice data ............................................................................................................ 9

4.1.2. Webservice jumlah ...................................................................................................... 12

4.1.3. Webservice decoder .................................................................................................... 14

4.2. Cara pemanggilan webservice ........................................................................................... 14

4.2.1. Webservice jumlah ...................................................................................................... 14

4.2.2. Webservice data .......................................................................................................... 15

4.2.3. Webservice decoder .................................................................................................... 16

Lampiran A : Daftar Konstanta File EPSBED .................................................................................. 18

Referensi ............................................................................................................................................... 19

Page 4: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 4

2. Persyaratan

2.1. Software requirements Berikut kebutuhan perangkat lunak yang dibutuhkan agar webservice dapat berjalan:

• PHP versi 5.2 (agar PHP extension dbase bisa dipasang)

• PHP extension dbase enabled

• PHP extension zlib enabled

• PHP extension pcre enabled

2.2. Tahapan instalasi Berikut tahapan instalasi webservice :

• Download file http://pdpt.dikti.go.id/repo/webservice.tar.gz dan simpan di folder

“htdocs” webserver Anda (misal: /usr/local/www/apache22/data/webservice )

• Ekstrak file webservice.tar.gz tersebut sehingga pada folder “htdocs” webserver

terdapat 5 file sebagai berikut:

o nusoap.php

o dc_conn.php

o epsbed.php

o epsbed_fungsi.php

o epsbed_supplement.php

• Edit file dc_conn.php dan ubah konstanta berikut ini :

o NAMA_PT : diisi dengan singkatan nama perguruan tinggi yang sesuai (sesuai

folder)

o BASE_URL1 : full path ke folder file-file EPSBED (*.DBF). Untuk lokasi path di

Windows menggunakan double backslash (contoh: d:\\data\\epsbed\\2008-2\\

), sedangkan untuk di Linux/Unix cukup satu slash saja (contoh:

/home/epsbed/2008-2/ )

Page 5: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 5

o PASSWORD_DIKTI : password yang akan digunakan untuk getting data (

defaultnya "d1kt1123", jika diubah mohon untuk menginformasikannya ke

pihak integrator Dikti )

o DBF_XXX : diisi dengan nama file EPSBED (*.DBF) yang sesuai. Daftar konstanta

file EPSBED bisa dilihat di lampiran.

Contoh isi file dc_conn.php :

<?php /* * Ubah baris-baris berikut sesuai kebutuhan */ define('NAMA_PT', 'ITB'); define('NAMA_WSDL_EPSBED', 'epsbed_'.NAMA _PT.'.wsdl'); define('PASSWORD_DIKTI', 'd1kt1123'); define('BASE_URL1', '/home/epsbed/ 2008-2/'); //path *nix /* * Daftar nama file EPSBED */ define('DBF_MASTER_BADAN_HUKUM', 'MSYYS'); define('DBF_MASTER_PTI', 'MSPTI'); define('DBF_MASTER_FAKULTAS', 'MSFAK'); define('DBF_MASTER_PRODI', 'MSPST'); define('DBF_MASTER_MHS', 'MSMHS'); define('DBF_MASTER_RIWAYAT_PEND_DOSEN', 'MSPDS'); define('DBF_TABEL_KURIKULUM_MK', 'TBKMK'); define('DBF_TRX_AKTIVITAS_KULIAH', 'TRAKM'); define('DBF_TRX_NILAI_SEMESTER_MHS', 'TRNLM'); define('DBF_TRX_TBL_BOBOT_NILAI', 'TBBNL'); define('DBF_TRX_MHS_CLKDONA', 'TRLSM'); define('DBF_TRX_MENGAJAR_DOSEN', 'TRAKD'); define('DBF_TRX_DOSEN_KCSL', 'TRLSD'); define('DBF_TRX_KAP_MHS_BARU', 'TRKAP'); define('DBF_TRX_FASILITAS_AKD', 'TRFAS'); define('DBF_TRX_PUBLIKASI_DOSEN', 'TRPUD'); define('DBF_TRX_PNA', 'TRPIM'); define('DBF_TRX_KUISIONER', 'TRTES'); define('DBF_TRX_LABORATORIUM', 'TRLAB'); define('DBF_TRX_ISIAN_PERTANYAAN', 'TRPPG'); define('DBF_TRX_RIWAYAT_MHS_S3', 'MSPHS'); define('DBF_TRX_KERMA_PT_LN', 'TRKLN'); define('DBF_TRX_RIWAYAT_MHS_BEA', 'TRMBW'); define('DBF_TRX_MHS_ASING', 'TRMLN'); define('DBF_TRX_PINDAHAN_MHS_ASING', 'TRPID'); define('DBF_TRX_VISI_MISI', 'TRVMT'); define('DBF_TRX_VISI_MISI_PRODI', 'TRVMS'); define('DBF_TRX_NILAI_SEMESTER_MHS2', 'TRNLP'); define('DBF_TRX_SKRIPSI', 'TRSKR');

• Untuk menguji apakah webservice sudah dapat diakses bisa dilakukan dengan

membuka alamat http://alamat.pt/webservice/epsbed.php di browser (dengan

Page 6: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 6

asumsi lokasi folder “htdocs” webservice adalah

/usr/local/www/apache22/data/webservice )

Gambar 1 - Contoh tampilan webservice di browser

2.3. Frequently asked questions

Page 7: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 7

3. Protokol Protokol yang digunakan oleh webservice adalah SOAP versi 1.1.SOAP (Simple Object Access

Protocol) adalah standar untuk bertukar pesan-pesan berbasis XML melalui jaringan komputer

atau sebuah jalan untuk program yang berjalan pada suatu sistem operasi (OS) untuk

berkomunikasi dengan program pada OS yang sama maupun berbeda dengan menggunakan

HTTP dan XML sebagai mekanisme untuk pertukaran data.

SOAP menspesifikan secara jelas bagaimana cara untuk meng-

encode header HTTP dan file XML sehingga program pada suatu

komputer dapat memanggil program pada pada komputer lain

dan mengirimkan informasi, dan bagaimana program yang

dipanggil memberikan tanggapan.

SOAP adalah protokol ringan yang ditujukan untuk pertukaran

informasi struktur pada lingkup desentralisasidan terdistribusi.

SOAP menggunakan teknologi XML utuk mendefinisikan rangka

kerja pemesanan terekstrensi di mana menyediakan konstruksi

pesan yang dapat dipertukarkan pada protokol berbeda. Rangka

kerja dirancang bebas dari model pemrograman dan spesifikasi

implementasi semantik.

Untuk implementasinya menggunakan NuSOAP 0.7.3 (http://nusoap.sourceforge.net/ ).

Contoh isi SOAP message berdasarkan struktur pada gambar di atas.

POST /repo/gundar/epsbed.php HTTP/1.0 Host: 118.98.233.66:443 User-Agent: NuSOAP/0.7.3 (1.114) Content-Type: text/xml; charset=ISO-8859-1 SOAPAction: "urn:epsbed_GUNADARMA.wsdl#master_riway at_pendidikan_dosen" Content-Length: 710 <?xml version="1.0" encoding="ISO-8859-1"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/ encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc e" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="urn:epsbed_GUNADARMA.wsdl"> <SOAP-ENV:Body><tns:master_riwayat_pendidikan_dosen xmlns:tns="urn:epsbed_GUNADARMA.wsdl"> <passwd xsi:type="xsd:string">d1kt1123</passwd> <dari xsi:type="xsd:int">1</dari> <sampai xsi:type="xsd:int">5</sampai> <compressed xsi:type="xsd:int">1</compressed> </tns:master_riwayat_pendidikan_dosen> </SOAP-ENV:Body>

Gambar 2 Struktur SOAP

Page 8: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 8

</SOAP-ENV:Envelope>

Page 9: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 9

4. Webservice

Secara garis besar, return value dari webservice dapat ditentukan melalui parameter yang

dilewatkan ketika melakukan pemanggilan. Return value dari webservice ini adalah string

dengan format JSON yang ter-encode dengan menggunakan base64. Untuk

menterjemahkannya perlu dilakukan proses decode terlebih dahulu.

Return value tersebut dapat diatur agar dapat di kompresi (menggunakan zlib) atau tidak.

Kalau mengaktifkan fitur kompresi, akan meringankan proses pengiriman datanya (traffic

network), tetapi akan memberatkan server ketika proses kompresinya.

4.1. Jenis webservice Webservice ini terdapat 3 jenis webservice sebagai berikut:

• Webservice data

• Webservice jumlah

• Webservice decoder

4.1.1. Webservice data Webservice jenis “data” ini merupakan webservice utama yang akan digunakan untuk

mengambil data-data yang diperlukan sesuai dengan nama webservicenya.

No Nama Webservice File EPSBED default Keterangan

1 master_badan_hukum MSYYS.DBF Master Badan Hukum

2 master_perguruan_tinggi MSPTI.DBF Master Perguruan Tinggi

3 visimisi_perguruan_tinggi TRVMT.DBF Visi Misi Perguruan Tinggi

4 master_fakultas MSFAK.DBF Master Fakultas

5 master_program_studi MSPST.DBF Master Program Studi

6 visimisi_program_studi TRVMS.DBF Visi Misi Program Studi

7 master_mahasiswa MSMHS.DBF Master Mahasiswa

8 master_riwayat_pendidikan_dosen MSPDS.DBF Master Riwayat Pendidikan Dosen

9 kurikulum_matakuliah TBKMK.DBF Tabel Kurikulum/Matakuliah

10 transaksi_aktivitas_kuliah TRAKM.DBF Transaksi Aktivitas Kuliah

Mahasiswa

11 transaksi_nilai_semester_mhs TRNLM.DBF Transaksi Nilai Semester

Page 10: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 10

Mahasiswa

12 transaksi_nilai_semester_mhs2 TRNLP.DBF Transaksi Nilai Semester

Mahasiswa

13 transaksi_tabel_bobot_nilai_semester TBBNL.DBF Tabel Bobot Nilai

14 transaksi_mahasiswa_clkdona TRLSM.DBF Transaksi Mahasiswa

Cuti/Lulus/Keluar/D.O./Non-aktif

15 transaksi_mengajar_dosen TRAKD.DBF Transaksi Mengajar Dosen

16 transaksi_dosen_kcsl TRLSD.DBF Transaksi Dosen Keluar/Cuti/Studi

Lanjut

17 transaksi_kapasitas_mhs_baru TRKAP.DBF Transaksi Kapasitas Mahasiswa

Baru

18 transaksi_fasilitas_penunjang_akademik TRFAS.DBF /

TRFPA.DBF

Transaksi Fasilitas Penunjang

Akademik

19 transaksi_publikasi_dosen TRPUD.DBF Transaksi Publikasi Dosen

20 transaksi_nama_pimpinan_dan_pna TRPIM.DBF Transaksi Nama Pimpinan dan

Tenaga Non-akademik

21 transaksi_hasil_isian_kuisioner TRTES.DBF Transaksi Hasil Isian Kuesioner

22 transaksi_lab TRLAB.DBF Transaksi Laboratorium

23 transaksi_isian_jawaban_pertanyaan TRPPG.DBF Transaksi Isian Jawaban

Pertanyaan

24 transaksi_riwayat_mhs_s3 MSPHS.DBF Master Riwayat Pendidikan

Mahasiswa Jenjang S-3

25 transaksi_kerma_pt_ln TRKLN.DBF Transaksi Kerjasam Dengan P.T.

Luar Negeri

26 transaksi_riwayat_mhs_beasiswa TRMBW.DBF Transaksi Mahasiswa Beasiswa

27 transaksi_mhs_asing TRMLN.DBF Transaksi Mahasiswa Asing

28 transaksi_pindahan_mhs_asing TRPID.DBF Transaksi Pindahan Mahasiswa

Asing

29 transaksi_skripsi TRSKR.DBF Transaksi Skripsi Mahasiswa

Parameter yang digunakan pada webservice ini terbagi 2 kelompok:

• Untuk webservice master_badan_hukum, master_perguruan_tinggi,

visimisi_perguruan_tinggi dan master_fakultas memiliki 2 parameter :

o passwd : string� password webservice sesuai dengan isi konstanta

PASSWORD_DIKTI pada file dc_conn.php

o compressed : int (1=true, 0=false)� menentukan format data yang akan

dikirim apakah dalam bentuk terkompresi atau tidak

• Untuk webservice yang lainnya memiliki 4 parameter :

Page 11: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 11

o passwd : string� password webservice sesuai dengan isi konstanta

PASSWORD_DIKTI pada file dc_conn.php

o dari : int� nomor record awal yang akan di ambil datanya

o sampai : int� nomor record akhir yang akan di ambil datanya

o compressed : int� menentukan format data yang akan dikirim apakah dalam

bentuk terkompresi atau tidak

Tujuan digunakannya parameter dari dan sampai untuk sebagian besar webservice adalah

untuk membatasi pengambilan data secara besar-besaran yang akan membebani server

masing-masing PT.

Return value (setelah di decode) dari masing-masing webservice data adalah berupa array

dengan struktur sebagai berikut:

[err_no] => integer : Kode error ( 0 jika tidak ada error) [err_teks] => string : Teks error ( kosong jika nil ai field [err_no]=0 ) [data] => array ( [0] => array ( [field sesuai struktur file .DBF dari web service yang dipanggil ] ) [1] => array ( [field sesuai struktur file .DBF dari web service yang dipanggil ] )

… … …

[n] => array ( [ field sesuai struktur file .DBF dari we bservice yang dipanggil ] ) )

Contoh return value untuk webservice master_fakultas()

Array ( [err_no] => 0 [err_teks] => [tab] => MSFAK [data] => Array ( [0] => Array ( [KDPTIMSFAK] => 031037 [KDFAKMSFAK] => 01 [NMFAKMSFAK] => FAKULTAS ILMU K OMPUTER [deleted] => 0 ) [1] => Array (

Page 12: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 12

[KDPTIMSFAK] => 031037 [KDFAKMSFAK] => 02 [NMFAKMSFAK] => FAKULTAS ILMU E KONOMI [deleted] => 0 ) [2] => Array ( [KDPTIMSFAK] => 031037 [KDFAKMSFAK] => 03 [NMFAKMSFAK] => FAKULTAS TEKNIK SIPIL & PERENCANAAN [deleted] => 0 ) [3] => Array ( [KDPTIMSFAK] => 031037 [KDFAKMSFAK] => 04 [NMFAKMSFAK] => FAKULTAS TEKNOL OGI INFORMASI [deleted] => 0 )

dst

4.1.2. Webservice jumlah Webservice jenis “jumlah” ini merupakan webservice pendukung dari “webservice data”,

yang berfungsi untuk mendapatkan jumlah record yang terdapat pada “webservice data” yang

akan di panggil. Nama “webservice jumlah” ini sama dengan nama webservice data nya,

hanya saja diakhiri dengan “_count”.

No Nama Webservice

1 master_program_studi_count

2 visimisi_program_studi_count

3 master_mahasiswa_count

4 master_riwayat_pendidikan_dosen_count

5 kurikulum_matakuliah_count

6 transaksi_aktivitas_kuliah_count

7 transaksi_nilai_semester_mhs_count

8 transaksi_nilai_semester_mhs2_count

9 transaksi_tabel_bobot_nilai_semester_count

10 transaksi_mahasiswa_clkdona_count

11 transaksi_mengajar_dosen_count

12 transaksi_dosen_kcsl_count

Page 13: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 13

13 transaksi_kapasitas_mhs_baru_count

14 transaksi_fasilitas_penunjang_akademik_count

15 transaksi_publikasi_dosen_count

16 transaksi_nama_pimpinan_dan_pna_count

17 transaksi_hasil_isian_kuisioner_count

18 transaksi_lab_count

19 transaksi_isian_jawaban_pertanyaan_count

20 transaksi_riwayat_mhs_s3_count

21 transaksi_kerma_pt_ln_count

22 transaksi_riwayat_mhs_beasiswa_count

23 transaksi_mhs_asing_count

24 transaksi_pindahan_mhs_asing_count

25 transaksi_skripsi_count

Parameter yang digunakan pada webservice “jumlah” ini memiliki 2 parameter :

• passwd : string� password webservice sesuai dengan isi konstanta PASSWORD_DIKTI

pada file dc_conn.php

• compressed : int (1=true, 0=false)� menentukan format data yang akan dikirim

apakah dalam bentuk terkompresi atau tidak.

Return value (setelah di decode) dari masing-masing webservice jumlah adalah berupa array

dengan struktur sebagai berikut:

[err_no] =>integer : Kode error ( 0 jika tidak ada error) [err_teks] => string : Teks error ( kosong jika nil ai field [err_no]=0 ) [jumlah] =>int : Jumlah record seluruh data

Contoh return value untuk webservice master_mahasiswa_count ()

Array ( [err_no] => 0 [err_teks] => [jumlah] => 77439 )

Page 14: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 14

4.1.3. Webservice decoder Webservice jenis “decoder” ini merupakan webservice untuk mengakomodasi client

pengambil data yang tidak dapat men-decode return value dari webservice yang dipanggil.

Webservice “decoder” ini hanya terdiri dari satu webservice saja, yaitu:

/** * Decode data * * @param string password webservice * @param string data yang akan di decode * @return string decoded-data berupa csv */ decode_data($password, $data)

Return value dari decode_data ini adalah format CSV, yang mana setiap record dipisahkan

dengan 3 karakter tilde (~~~). Sedangkan masing-masing field dipisahkan dengan 3 karakter

vertical bar (||| ).

Record pertama merupakan nama field, sedangkan record kedua dan seterusnya adalah

isinya.

Sebagai contoh untuk keluaran hasil decode_data berikut ini:

KDPTIMSFAK|||KDFAKMSFAK|||NMFAKMSFAK|||deleted~~~03 1037|||01|||FAKULTAS ILMU KOMPUTER|||0~~~031037|||02|||FAKULTAS ILMU EKONOMI| ||0

Jika diparsing dengan benar akan menghasilkan data sebagai berikut:

KDPTIMSFAK KDFAKMSFAK NMFAKMSFAK deleted 031037 01 FAKULTAS ILMU KOMPUTER 0 031037 02 FAKULTAS ILMU EKONOMI 0

4.2. Cara pemanggilan webservice Kode berikut ini merupakan contoh pemanggilan webservice menggunakan PHP untuk masing-

masing jenis. Pastikan file nusoap.php berada satu direktori dengan file php yang memanggil

webservice.

4.2.1. Webservice jumlah <?php set_time_limit(0); require_once('nusoap.php'); $w = 'http://123.456.789.111/webservice/epsbed.php? wsdl'; $soapclient = new nusoap_client($w, true); $is_compressed = 1;

Page 15: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 15

$data = $soapclient->call('master_mahasiswa_count', array('passwd' => 'd1kt1123', 'compressed' => $is_compressed)); if ($is_compressed==1) { $data = json_decode(gzuncompress(base64_decode($da ta))); } else { $data = json_decode(base64_decode($data)); } if ($data['err_no'] != 0) { echo $data['err_no'].' - '.$data['err_teks']; } else { echo "<pre>"; var_dump($data); echo "</pre>"; } // Display the request and response $err = $soapclient->getError(); if($err){ echo "<p><b>ERROR! ".$err."</b></p>"; echo"<b>SOAP Request</b>"; echo"<pre>".htmlentities($soapclient->request)."</ pre>"; echo"<b>SOAP Response</b>"; echo"<pre>".htmlentities($soapclient->response)."< /pre>"; }else{ echo '<h2>Request</h2>'; echo '<pre>' . htmlspecialchars($soapclient->reque st, ENT_QUOTES) . '</pre>'; echo '<h2>Response</h2>'; echo '<pre>' . htmlspecialchars($soapclient->respo nse, ENT_QUOTES) . '</pre>'; } ?>

4.2.2. Webservice data <?php set_time_limit(0); require_once('nusoap.php'); $w = 'http://123.456.789.111/webservice/epsbed.php? wsdl'; $soapclient = new nusoap_client($w, true); $is_compressed = 1; $data = $soapclient->call('master_mahasiswa', array ('passwd' => 'd1kt1123',

'dari' => 100, 'sampai' => 500,

'compressed' => $is_compressed)); if ($is_compressed==1) { $data = json_decode(gzuncompress(base64_decode($da ta))); } else { $data = json_decode(base64_decode($data)); } if ($data['err_no'] != 0) { echo $data['err_no'].' - '.$data['err_teks']; } else { echo "<pre>"; var_dump($data);

Page 16: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 16

echo "</pre>"; } // Display the request and response $err = $soapclient->getError(); if($err){ echo "<p><b>ERROR! ".$err."</b></p>"; echo"<b>SOAP Request</b>"; echo"<pre>".htmlentities($soapclient->request)."</ pre>"; echo"<b>SOAP Response</b>"; echo"<pre>".htmlentities($soapclient->response)."< /pre>"; }else{ echo '<h2>Request</h2>'; echo '<pre>' . htmlspecialchars($soapclient->reque st, ENT_QUOTES) . '</pre>'; echo '<h2>Response</h2>'; echo '<pre>' . htmlspecialchars($soapclient->respo nse, ENT_QUOTES) . '</pre>'; } ?>

4.2.3. Webservice decoder Parameter compressed harus di isi 0

<?php set_time_limit(0); require_once('nusoap.php'); $w = 'http://123.456.789.111/webservice/epsbed.php? wsdl'; $soapclient = new nusoap_client($w, true); $is_compressed = 0; $data = $soapclient->call('master_mahasiswa', array ('passwd' => 'd1kt1123', 'dari ' => 100, 'samp ai' => 500, 'compressed' => $is_compressed)); if ($data != "") { $data = base64_decode($data); $data = $soapclient->call('decode_data', array('pa sswd' => 'd1kt1123', 'data' => $data)); if ($data != 'Password DIKTI salah') { $a = explode('~~~', $data); $field = explode('|||', $a[0]); $value = array(); for ($i=1; $i<count($a); $i++) { $f = array(); $temp = explode('|||', $a[$i]); $idx = 0; foreach ($field as $k => $v) { $f[ $v ] = $temp[ $idx ]; $idx++; } $value[] = $f; } echo '<pre>'; var_dump($value);

Page 17: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 17

echo '</pre>'; } else { echo $data; } } else { echo 'no-data'; } // Display the request and response $err = $soapclient->getError(); if($err){ echo "<p><b>ERROR! ".$err."</b></p>"; echo"<b>SOAP Request</b>"; echo"<pre>".htmlentities($soapclient->request)."</ pre>"; echo"<b>SOAP Response</b>"; echo"<pre>".htmlentities($soapclient->response)."< /pre>"; }else{ echo '<h2>Request</h2>'; echo '<pre>' . htmlspecialchars($soapclient->reque st, ENT_QUOTES) . '</pre>'; echo '<h2>Response</h2>'; echo '<pre>' . htmlspecialchars($soapclient->respo nse, ENT_QUOTES) . '</pre>'; } ?>

Page 18: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 18

Lampiran A : Daftar Konstanta File EPSBED Berikut daftar konstanta file EPSBED beserta keterangannya yang terdapat pada file

dc_conn.php

No Nama Konstanta Keterangan

1 DBF_MASTER_BADAN_HUKUM Master Badan Hukum

2 DBF_MASTER_PTI Master Perguruan Tinggi

3 DBF_MASTER_FAKULTAS Master Fakultas

4 DBF_MASTER_PRODI Master Program Studi

5 DBF_MASTER_MHS Master Mahasiswa

6 DBF_MASTER_RIWAYAT_PEND_DOSEN Master Riwayat Pendidikan Dosen

7 DBF_TABEL_KURIKULUM_MK Tabel Kurikulum/Matakuliah

8 DBF_TRX_AKTIVITAS_KULIAH Transaksi Aktivitas Kuliah Mahasiswa

9 DBF_TRX_NILAI_SEMESTER_MHS Transaksi Nilai Semester Mahasiswa

10 DBF_TRX_TBL_BOBOT_NILAI Tabel Bobot Nilai

11 DBF_TRX_MHS_CLKDONA Transaksi Mahasiswa Cuti/Lulus/Keluar/D.O./Non-aktif

12 DBF_TRX_MENGAJAR_DOSEN Transaksi Mengajar Dosen

13 DBF_TRX_DOSEN_KCSL Transaksi Dosen Keluar/Cuti/Studi Lanjut

14 DBF_TRX_KAP_MHS_BARU Transaksi Kapasitas Mahasiswa Baru

15 DBF_TRX_FASILITAS_AKD Transaksi Fasilitas Penunjang Akademik

16 DBF_TRX_PUBLIKASI_DOSEN Transaksi Publikasi Dosen

17 DBF_TRX_PNA Transaksi Nama Pimpinan dan Tenaga Non-akademik

18 DBF_TRX_KUISIONER Transaksi Hasil Isian Kuesioner

19 DBF_TRX_LABORATORIUM Transaksi Laboratorium

20 DBF_TRX_ISIAN_PERTANYAAN Transaksi Isian Jawaban Pertanyaan

21 DBF_TRX_RIWAYAT_MHS_S3 Master Riwayat Pendidikan Mahasiswa Jenjang S-3

22 DBF_TRX_KERMA_PT_LN Transaksi Kerjasam Dengan P.T. Luar Negeri

23 DBF_TRX_RIWAYAT_MHS_BEA Transaksi Mahasiswa Beasiswa

24 DBF_TRX_MHS_ASING Transaksi Mahasiswa Asing

25 DBF_TRX_PINDAHAN_MHS_ASING Transaksi Pindahan Mahasiswa Asing

26 DBF_TRX_VISI_MISI Visi Misi Perguruan Tinggi

27 DBF_TRX_VISI_MISI_PRODI Visi Misi Program Studi

28 DBF_TRX_NILAI_SEMESTER_MHS2 Transaksi Nilai Semester Mahasiswa

29 DBF_TRX_SKRIPSI Transaksi Skripsi Mahasiswa

Page 19: Dokumen_Teknis_Webservice_EPSBED_V.1.4

Dokumentasi Teknis Webservice EPSBED v1.4

Hal - 19

Referensi

• Wikipedia - http://en.wikipedia.org/wiki/SOAP

• NuSOAP – SOAP Toolkit for PHP ( http://nusoap.sourceforge.net/ )