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 /** * Tworzy nowy dokument * * @param data Array - Tablica z parametrami * @param data['dscrpt'] String - opis dokumentu * @param data['dctpid'] Int - typ dokumentu (types_of_documents:dctpid) * @param data['target'] Int - identyfikator stanowiska (organization_units:orunid) * @param data['prc_id'] Int - identyfikator sprawy (processes:prc_id) * @param data['state_'] Int - rodzaj dokumenty (1-wychodzący, 2-przychodzący, 3-wewnętrzny) * @param data['from_contact_symbol'] String - symbol nadawcy (contacts:symbol) * @param data['to_contact_symbol'] String - symbol odbiorcy (contacts:symbol) * * @return Int - id dokumentu jeśli sukces (documents:doc_id), 0 w razie niepowodzenia * * @throws Exception - SoapFault */ Int createDocument(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); } } ?>