WikiPrint - from Polar Technologies

Przewodnik wdrożeniowca > Publikacja teczki RWA w danej jednostce organizacyjnej

Funkcja publikuje daną teczkę pod wskazaną jednostką organizacyjną. Jednostka musi być oznaczona jako "Repozytorium". W przypadku jeśli wskazana teczka zawiera pod teczki procesem można sterować poprzez parametr publish_all - domyślnie publikuje wszystkie pod teczki.

Definicja parametrów:

<?php

/**
  * Publikuje teczkę w danym dziale (repozytorium).
  *
  * @param array $data - Tablica z parametrami. Poniżej obsługiwane klucze.
  * @param $data['doss_symbol'] String - Symbol teczki (dossiers_list.dossmb)
  * @param $data['doss_name'] String - Nazwa teczki (dossiers_list.ndenam))
  * @param $data['dos_id'] Int - ID teczki (dossiers_list.dos_id) - parametr zamienny z doss_symbol i doss_name
  * @param $data['org_unit_symbol'] String - Symbol stanowiska na którym ma być opublikowana teczka (organization_units.orunsm)
  * @param $data['org_unit_name'] String - Nazwa stanowiska (organization_units.ndenam)
  * @param $data['orunid'] Int - ID stanowiska (organization_units.orunid) - parametr zamienny z org_unit_symbol i org_unit_name
  * @param $data['publish_all'] Int - Wartość 1 lub 0 - 1 - publikuje wszystkie teczki podrzędne względem wskazanej (wartość domyślna), 0 - publikuje tylko wskazaną 
  *
  * @access public
  * @return array dsexid - ID wyciagu (doss_extract_list.dsexid)
  * @throws Exception, UserRightsException
  * @since 1.8.9
  */
int publishDossier(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);

$prc_id = NULL;

try {
    $data = array(
        'doss_symbol' => 60,
        'org_unit_symbol' => 'C'
    );
    $dsexid = $client->publishDossier($data);
    var_dump($dsexid);
} catch(SoapFault $fault) {
    var_dump($fault);
    
    if ($fault->faultcode < 100) {
        trigger_error("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR);
    }
}

?>