Szczegóły dla poszczególnych typów dokumentów (wszystkie szczegółowe przykłady posiadają parametry jak w ogólnym przykładzie):
Definicja parametrów:
<?php /** * Aktualizuje dane istniejącego dokumentu * * @param data Array - Tablica z parametrami * @param data['doc_id'] int - ID dokumentu * @param data['dscrpt'] String - opis dokumentu * @param data['tpstid'] Int - status dokumentu * @param data['prc_id'] Int - identyfikator sprawy (processes.prc_id) * @param data['prtpid'] Int - identyfikator procedury (procedures_def.prtpid) * @param data['from_contact_symbol'] String - symbol nadawcy (contacts.symbol) * @param data['to_contact_symbol'] String - symbol odbiorcy (contacts.symbol) * * @return bool - TRUE jeżeli operacja zakończyla się powodzeniem * * @throws Exception - SoapFault */ Int updateDocument(Array data) ?>
Przykłady wywołań:
// Plik MyService.php umieszczony w apps/edokumenty. // MyService.php <?php define('EDOK_API_LOGIN', 'developer'); define('EDOK_API_PASSWORD', 'developer'); define('DEFAULT_ENTITY_SYMBOL', 'demo'); require_once('./classes/eDokumentyApi/EDokApiClient.inc'); $options = array( 'location' => 'http://{host}:{port}/eDokumentyApi.php', "uri" => "eDokumentyAPI", 'encoding'=>'UTF-8' ); $client = new EDokApiClient(NULL, $options); $client->setUser(EDOK_API_LOGIN); $client->setPass(md5(EDOK_API_PASSWORD)); $header = new SoapHeader('eDokumentyAPI', 'entity_symbol', DEFAULT_ENTITY_SYMBOL); $client->__setSoapHeaders($header); $doc_id = NULL; try { $data = array( 'dscrpt' => 'SOAP TEST '.date('d H:m:s'), 'prc_id' => 567, 'dctpid' => 1, 'target' => 54, 'from_contact_symbol' => '12345', 'to_contact_symbol' => '54321', ); $doc_id = $client->createDocument($data); var_dump($doc_id); } catch(SoapFault $fault) { var_dump($fault); if ($fault->faultcode < 100) { trigger_error("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR); } } ?>