# Webová služba OrgRoleStructureRead verze 2.0.0 (Obecné webové služby) - popis rozhraní služby

Marbes Consulting s.r.o.

EOS4

Vygenerováno z verze 4.21.0.19.0.

Podmínky omezující zveřejnění

Autorem tohoto dokumentu je společnost MARBES CONSULTING s.r.o. Dokument obsahuje informace důvěrného charakteru a ve smyslu definice autorského práva (viz § 2, odst. 1 Zákona č. 121/2000 Sb., zákon o právu autorském) je duševním vlastnictvím autora a předmětem práva autorského. Dokument smí být použit výhradně za účelem, za kterým byl poskytnut a nesmí být bez předchozího souhlasu autora citován, kopírován, vytěžován1 nebo předán třetí fyzické či právnické osobě.

© 2009 MARBES CONSULTING s.r.o.

1 Vytěžováním se podle zákona č. 121/2000 Sb. rozumí trvalý nebo dočasný přepis celého obsahu nebo jeho podstatné části na jiný podklad, a to jakýmikoli prostředky nebo jakýmkoli způsobem.

## Obsah

- Obecné informace
- Seznam poskytovaných metod
- Seznam struktur dat
- Výjimky
- Popis poskytovaných metod
- Popis struktur dat

## Obecné informace

Rozhraní webové služby pro čtení informací o struktuře organizačních rolí.

## Seznam poskytovaných metod

Název | Popis
--- | ---
findPrimaryParentOrgRoleByTypeCode | Nalezení nadřazené organizační role s daným typem (případně jeden z výčtu) k předané organizační roli v primárním stromu organizačních rolí.
findSecondaryParentOrgRoleByTypeCode | Nalezení nadřazené organizační role s daným typem (případně jeden z výčtu) k předané organizační roli v sekundárním stromu organizačních rolí.
getAllSecondaryOrgRoleTrees | Načte seznam všech sekundárních stromů.
getPrimaryChildOrgRoles | Vrátí seznam potomků organizační role (jen podřízené organizační role) v primárním stromu.
getPrimaryOrgRoleParentOrgRole | Najde bezprostředně nadřízenou organizační roli k předané v primárním stromu.
getPrimaryRootOrgRoles | Načte všechny kořenové organizační role primárního stromu.
getSecondaryChildOrgRoles | Vrátí seznam potomků organizační role (jen podřízené organizační role) v sekundárním stromu.
getSecondaryOrgRoleParentOrgRole | Najde bezprostředně nadřízenou organizační roli k předané v sekundárním stromu.
getSecondaryOrgRoleTreeById | Nalezne sekundární strom organizačních rolí podle daného id.
getSecondaryRootOrgRoles | Načte všechny kořenové organizační role v sekundárním stromu.
isPrimaryOrgRoleRoot | Testuje, zda je daná organizační role kořenová v primárním stromu.
isSecondaryOrgRoleRoot | Testuje, zda je daná organizační role kořenová v sekundárním stromu.

## Seznam struktur dat

Název | Popis
--- | ---
EosBuildingInfo | Reprezentuje údaje o budově.
EosContactType | Reprezentuje typ kontaktního atributu.
EosContactTypeCategory | Reprezentuje kategorii typu kontaktního atributu.
EosContacts | Reprezentuje wrapper pro kolekci telefonů.
EosIdentifier | Reprezentuje identifikátor webového objektu slučující interní a externí ID.
EosOrgRole | Reprezentuje organizační roli.
EosOrgRoles | Reprezentuje wrapper pro kolekci organizačních rolí.
EosOrgStructureResponseFilter | Třída reprezentující filter odpovědi WS.
EosOtherContact | Reprezentuje telefoní kontakt.
EosPhoneContact | Reprezentuje telefoní kontakt.
EosSecondaryOrgRoleTree | Reprezentuje informaci o sekundárním stromu organizačních rolí.
EosSecondaryOrgRoleTrees | Reprezentuje wrapper pro kolekci informací o skundárních stromech organizačních rolí.
EosString | Třída reprezentující stringovou hodnotu.
EosTypeCodes | Reprezentuje wrapper pro kolekci typů organizačních jenotek nebo rolí.
EosUserField | Reprezentuje uživatelské pole.
EosUserFields | Reprezentuje kolekci uživatelských polí.
EosValue | Reprezentuje hodnotu string atributu, výčtového atributu a selectového atributu.

## Výjimky

### EosInvalidParameterException

Vyjímka reprezentuje špatný vstupní parametr do web metod.

### EosObjectNotFoundException

Výjimka reprezentuje stav, kdy nebyl objekt podle kriterií nalezen.

### EosUnexpectedException

Reprezentuje neočekávanou výjimku při volání WS. Jejím zdrojem musí být vždy jiná výjimka.

## Popis poskytovaných metod

### findPrimaryParentOrgRoleByTypeCode

Nalezení nadřazené organizační role s daným typem (případně jeden z výčtu) k předané organizační roli v primárním stromu organizačních rolí. Vyhledaná organizační role musí mít alespoň jeden z předaných typů.

#### Předpis

EosOrgRole findPrimaryParentOrgRoleByTypeCode (EosIdentifier orgRoleId, EosTypeCodes typeCodes, String clientId, EosOrgStructureResponseFilter responseFilter)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
orgRoleId | EosIdentifier | Ano | identifikátor organizační role, od které se hledají nadřazené organizační role
typeCodes | EosTypeCodes | Ano | kódy typů organizační role, která se hledá
clientId | String | Ano | identifikátor klienta, je povinný jen při předání externího Id v orgRoleId
responseFilter | EosOrgStructureResponseFilter | Ne | parametr, který říká které doplňující informace plnit, pokud je prázdný, žádne doplňkové informace nebudou plněny.

#### Výstup

EosOrgRole - nalezená organizační role alespoň jedním typem z předaných nebo null, pokud nebyla nalezena

#### Výjimky

EosObjectNotFoundException - výchozí předaná role nebyla podle identifikátoru nalezena
EosInvalidParameterException - byl předán nevalidní vstupní parametr
EosUnexpectedException - vnitřní chyba EOSu

### findSecondaryParentOrgRoleByTypeCode

Nalezení nadřazené organizační role s daným typem (případně jeden z výčtu) k předané organizační roli v sekundárním stromu organizačních rolí. Vyhledaná organizační role musí mít alespoň jeden z předaných typů.

#### Předpis

EosOrgRole findSecondaryParentOrgRoleByTypeCode (EosIdentifier secondaryOrgRoleTreeId, EosIdentifier orgRoleId, EosTypeCodes typeCodes, String clientId, EosOrgStructureResponseFilter responseFilter)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
secondaryOrgRoleTreeId | EosIdentifier | Ano | identifikátoru sekundárního stromu organizačních rolí
orgRoleId | EosIdentifier | Ano | identifikátor organizační role, od které se hledají nadřazené organizační role
typeCodes | EosTypeCodes | Ano | kódy typů organizační role, která se hledá
clientId | String | Ano | identifikátor klienta, je povinný jen při předání externího Id v orgRoleId
responseFilter | EosOrgStructureResponseFilter | Ne | parametr, který říká které doplňující informace plnit, pokud je prázdný, žádne doplňkové informace nebudou plněny.

#### Výstup

EosOrgRole - nalezená organizační role alespoň jedním typem z předaných nebo null, pokud nebyla nalezena

#### Výjimky

EosObjectNotFoundException - výchozí předaná role nebo sekundární strom organizačních rolí nebyly podle identifikátoru nalezeny
EosInvalidParameterException - byl předán nevalidní vstupní parametr
EosUnexpectedException - vnitřní chyba EOSu

### getAllSecondaryOrgRoleTrees

Načte seznam všech sekundárních stromů.

#### Předpis

EosSecondaryOrgRoleTrees getAllSecondaryOrgRoleTrees (String clientId)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
clientId | String | Ne | identifikátor klienta, není povinný

#### Výstup

EosSecondaryOrgRoleTrees - seznam všech sekundárních stromů

#### Výjimky

EosUnexpectedException - nastala vnitřní chyba EOSu

### getPrimaryChildOrgRoles

Vrátí seznam potomků organizační role (jen podřízené organizační role) v primárním stromu.

#### Předpis

EosOrgRoles getPrimaryChildOrgRoles (EosIdentifier parentOrgRoleId, String clientId, EosOrgStructureResponseFilter responseFilter)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
parentOrgRoleId | EosIdentifier | Ano | id organizační role, od které se budou hledat potomci
clientId | String | Ano | identifikátor klienta, je povinný jen při předání externího Id v parentOrgRoleId
responseFilter | EosOrgStructureResponseFilter | Ne | parametr, který říká které doplňující informace plnit, pokud je prázdný, žádne doplňkové informace nebudou plněny.

#### Výstup

EosOrgRoles - seznam potomků

#### Výjimky

EosObjectNotFoundException - objekt nebyl nalezen
EosInvalidParameterException - byl předán nevalidní vstupní parametr
EosUnexpectedException - nastala vnitřní chyba EOSu

### getPrimaryOrgRoleParentOrgRole

Najde bezprostředně nadřízenou organizační roli k předané v primárním stromu.

#### Předpis

EosOrgRole getPrimaryOrgRoleParentOrgRole (EosIdentifier childOrgRoleId, String clientId, EosOrgStructureResponseFilter responseFilter)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
childOrgRoleId | EosIdentifier | Ano | id organizační role, pro kterou se hledá nadřazená
clientId | String | Ano | identifikátor klienta, je povinný jen při předání externího Id v childOrgRoleId
responseFilter | EosOrgStructureResponseFilter | Ne | parametr, který říká které doplňující informace plnit, pokud je prázdný, žádne doplňkové informace nebudou plněny.

#### Výstup

EosOrgRole - rodičovskou organizační roli v primárním stromu, pokud je předaná entita kořenová, návratová hodnota není definována

#### Výjimky

EosObjectNotFoundException - objekt nebyl nalezen
EosInvalidParameterException - byl předán nevalidní vstupní parametr
EosUnexpectedException - nastala vnitřní chyba EOSu

### getPrimaryRootOrgRoles

Načte všechny kořenové organizační role primárního stromu.

#### Předpis

EosOrgRoles getPrimaryRootOrgRoles (String clientId, EosOrgStructureResponseFilter responseFilter)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
clientId | String | Ne | identifikátor klienta, není povinný
responseFilter | EosOrgStructureResponseFilter | Ne | parametr, který říká které doplňující informace plnit, pokud je prázdný, žádne doplňkové informace nebudou plněny.

#### Výstup

EosOrgRoles - seznam kořenových organizačních rolí promárního stromu

#### Výjimky

EosUnexpectedException - nastala vnitřní chyba EOSu

### getSecondaryChildOrgRoles

Vrátí seznam potomků organizační role (jen podřízené organizační role) v sekundárním stromu.

#### Předpis

EosOrgRoles getSecondaryChildOrgRoles (EosIdentifier secondaryOrgRoleTreeId, EosIdentifier parentOrgRoleId, String clientId, EosOrgStructureResponseFilter responseFilter)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
secondaryOrgRoleTreeId | EosIdentifier | Ano | identifikátor sekundárního stromu organizačních rolí
parentOrgRoleId | EosIdentifier | Ano | id organizační role, od které se budou hledat potomci
clientId | String | Ano | identifikátor klienta, je povinný jen při předání externího Id v parentOrgRoleId nebo v secondaryOrgRoleTreeId
responseFilter | EosOrgStructureResponseFilter | Ne | parametr, který říká které doplňující informace plnit, pokud je prázdný, žádne doplňkové informace nebudou plněny.

#### Výstup

EosOrgRoles - seznam potomků

#### Výjimky

EosObjectNotFoundException - objekt nebyl nalezen
EosInvalidParameterException - byl předán nevalidní vstupní parametr
EosUnexpectedException - nastala vnitřní chyba EOSu

### getSecondaryOrgRoleParentOrgRole

Najde bezprostředně nadřízenou organizační roli k předané v sekundárním stromu.

#### Předpis

EosOrgRole getSecondaryOrgRoleParentOrgRole (EosIdentifier secondaryOrgRoleTreeId, EosIdentifier childOrgRoleId, String clientId, EosOrgStructureResponseFilter responseFilter)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
secondaryOrgRoleTreeId | EosIdentifier | Ano | identifikátor sekundárního stromu organizačních rolí
childOrgRoleId | EosIdentifier | Ano | id organizační role, pro kterou se hledá nadřazená
clientId | String | Ano | identifikátor klienta, je povinný jen při předání externího Id v childOrgRoleId nebo v secondaryOrgRoleTreeId
responseFilter | EosOrgStructureResponseFilter | Ne | parametr, který říká které doplňující informace plnit, pokud je prázdný, žádne doplňkové informace nebudou plněny.

#### Výstup

EosOrgRole - rodičovskou organizační roli v sekundárním stromu, pokud je předaná entita kořenová, návratová hodnota není definována

#### Výjimky

EosObjectNotFoundException - objekt nebyl nalezen
EosInvalidParameterException - byl předán nevalidní vstupní parametr
EosUnexpectedException - nastala vnitřní chyba EOSu

### getSecondaryOrgRoleTreeById

Nalezne sekundární strom organizačních rolí podle daného id.

#### Předpis

EosSecondaryOrgRoleTree getSecondaryOrgRoleTreeById (EosIdentifier secondaryOrgRoleTreeId, String clientId)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
secondaryOrgRoleTreeId | EosIdentifier | Ano | id požadovaného sekundárního stromu organizačních rolí
clientId | String | Ano | identifikátor klienta, je povinný jen při předání externího Id v secondaryOrgRoleTreeId

#### Výstup

EosSecondaryOrgRoleTree - nalezený sekundární strom organizačních rolí

#### Výjimky

EosObjectNotFoundException - objekt nebyl nalezen
EosInvalidParameterException - byl předán nevalidní vstupní parametr
EosUnexpectedException - nastala vnitřní chyba EOSu

### getSecondaryRootOrgRoles

Načte všechny kořenové organizační role v sekundárním stromu.

#### Předpis

EosOrgRoles getSecondaryRootOrgRoles (EosIdentifier secondaryOrgRoleTreeId, String clientId, EosOrgStructureResponseFilter responseFilter)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
secondaryOrgRoleTreeId | EosIdentifier | Ano | identifikátor sekundárního stromu organizačních rolí
clientId | String | Ano | identifikátor klienta, je povinný jen při zadání externího id v secondaryOrgRoleTreeId
responseFilter | EosOrgStructureResponseFilter | Ne | parametr, který říká které doplňující informace plnit, pokud je prázdný, žádne doplňkové informace nebudou plněny.

#### Výstup

EosOrgRoles - seznam kořenových organizačních rolí v sekundárním stromu

#### Výjimky

EosObjectNotFoundException - objekt nebyl nalezen
EosUnexpectedException - nastala vnitřní chyba EOSu

### isPrimaryOrgRoleRoot

Testuje, zda je daná organizační role kořenová v primárním stromu.

#### Předpis

boolean isPrimaryOrgRoleRoot (EosIdentifier orgRoleId, String clientId)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
orgRoleId | EosIdentifier | Ano | id testované organizační role
clientId | String | Ano | identifikátor klienta, je povinný jen při předání externího Id v orgRoleId

#### Výstup

boolean - true pokud je organizační role kořenovou v primárním stromu

#### Výjimky

EosObjectNotFoundException - objekt nebyl nalezen
EosInvalidParameterException - byl předán nevalidní vstupní parametr
EosUnexpectedException - nastala vnitřní chyba EOSu

### isSecondaryOrgRoleRoot

Testuje, zda je daná organizační role kořenová v sekundárním stromu.

#### Předpis

boolean isSecondaryOrgRoleRoot (EosIdentifier secondaryOrgRoleTreeId, EosIdentifier orgRoleId, String clientId)

#### Parametry

Parametr | Typ | Povinný | Popis
--- | --- | --- | ---
secondaryOrgRoleTreeId | EosIdentifier | Ano | identifikátor sekundárního stromu organizačních rolí
orgRoleId | EosIdentifier | Ano | id testované organizační role
clientId | String | Ano | identifikátor klienta, je povinný jen při předání externího Id v orgRoleId nebo v secondaryOrgRoleTreeId

#### Výstup

boolean - true pokud je organizační role kořenovou v sekundárním stromu

#### Výjimky

EosObjectNotFoundException - objekt nebyl nalezen
EosInvalidParameterException - byl předán nevalidní vstupní parametr
EosUnexpectedException - nastala vnitřní chyba EOSu

## Popis struktur dat

### EosBuildingInfo

Reprezentuje údaje o budově. Není v EOSu skutečnou entitou, proto neobsahuje žádný identifikátor.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
building | EosValue | Ne | Název budovy.
floor | EosValue | Ne | Patro budovy.
room | EosValue | Ne | Místnost budovy.
externalRegistryId | EosValue | Ne | Odkaz na externi id registru budov.

### EosContactType

Reprezentuje typ kontaktního atributu.

Hodnota | Popis
--- | ---
PHONE | Telefon.
FAX | Fax.
EMAIL | Email.
WWW | WWW.

### EosContactTypeCategory

Reprezentuje kategorii typu kontaktního atributu.

Hodnota | Popis
--- | ---
HOME | Domů.
WORK | Do práce.
MOBILE | Mobilní.
BLANK | Bez kategorie.

### EosContacts

Reprezentuje wrapper pro kolekci telefonů.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
phoneContact | List<EosPhoneContact> | Ne | Kolekce telefonů(fax, mobil, ...).
otherContact | List<EosOtherContact> | Ne | Kolekce ostatních kontaktů(email, www, ...).

### EosIdentifier

Reprezentuje identifikátor webového objektu slučující interní a externí ID.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
externalId | String (255) | Ne | Id entity v externím systému.
eosIdentifier | String (255) | Ne | Unikátní identifikátor entity v EOSu (v rámci konkrétního potomka entity, tedy např. organizační role), při importu do EOSu nemá význam.

### EosOrgRole

Reprezentuje organizační roli.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
id | EosIdentifier | Ano | Identifikátor.
buildingInfo | EosBuildingInfo | Ne | Informace o budově.
userFields | EosUserFields | Ne | Uživatelská pole jednotlivých entit.
phones | EosContacts | Ne | Telefony přiřazené této entitě.
name | String (255) | Ano | Jméno organizační role.
code | String (100) | Ne | Kód organizační role.
sentence | Integer | Ne | Pořadí pracovní pozice v rámci nadřízené organizační jednotky.
altName | String | Ne | Alternativní název role.
unitId | EosIdentifier | Ano | Organizační jednotka, do které je role zařazena.
superiorId | EosIdentifier | Ne | Nadřazená organizační role.
typeCode | String (32) | Ne | Kód typu organizační role.

### EosOrgRoles

Reprezentuje wrapper pro kolekci organizačních rolí.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
orgRole | List<EosOrgRole> | Ne | Kolekce rolí.

### EosOrgStructureResponseFilter

Třída reprezentující filter odpovědi WS. Ná základě atributů třídy jsou plněny a vraceny doplňující informace k entitám a osobám.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
fillUserFields | boolean | Ne | Příznak zda plnit uživatelská pole.
userFieldCode | List<EosString> | Ne | Seznam identifikátorů uživatelských polí, kterou mohou být vráceny.
fillBuildingInfo | boolean | Ne | Příznak zda vracet budovy.
fillContacts | boolean | Ne | Příznak zda vracet kontakty.
fillOnlyPublicableContacts | boolean | Ne | Příznak zda vracet pouze veřejné kontakty.
contactEosIdentifier | List<EosString> | Ne | Seznam kontaktů, které mohou být vráceny.

### EosOtherContact

Reprezentuje telefoní kontakt.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
id | EosIdentifier | Ano | Identifikátor.
description | String (512) | Ne | Popis telefonu.
contactType | EosContactType | Ne | Typ kontaktu.
contactTypeCategory | EosContactTypeCategory | Ne | Kategorie typu kontaktu.
contact | EosIdentifier | Ne | Id atributu kontaktu.
primary | boolean | Ne | Určuje zda je kontakt primární.
publicable | boolean | Ne | Určuje zda je kontakt veřejný.
value | String (80) | Ne | Linka.

### EosPhoneContact

Reprezentuje telefoní kontakt.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
id | EosIdentifier | Ano | Identifikátor.
description | String (512) | Ne | Popis telefonu.
contactType | EosContactType | Ne | Typ kontaktu.
contactTypeCategory | EosContactTypeCategory | Ne | Kategorie typu kontaktu.
contact | EosIdentifier | Ne | Id atributu kontaktu.
primary | boolean | Ne | Určuje zda je kontakt primární.
publicable | boolean | Ne | Určuje zda je kontakt veřejný.
prefix | String (80) | Ne | Předvolba.
number | String (80) | Ano | Telefonní číslo.
extension | String (80) | Ne | Linka.

### EosSecondaryOrgRoleTree

Reprezentuje informaci o sekundárním stromu organizačních rolí.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
id | EosIdentifier | Ano | Identifikátor.
name | String (255) | Ano | Jméno sekundárního stromu organizačních rolí.

### EosSecondaryOrgRoleTrees

Reprezentuje wrapper pro kolekci informací o skundárních stromech organizačních rolí.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
secondaryOrgRoleTree | List<EosSecondaryOrgRoleTree> | Ne | Kolekce informací o skundárních stromech organizačních rolí.

### EosString

Třída reprezentující stringovou hodnotu. Třída slouží k opravě bugu v cxo.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
value | String (1024) | Ne | Hodnota.

### EosTypeCodes

Reprezentuje wrapper pro kolekci typů organizačních jenotek nebo rolí.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
typeCode | List<EosString> | Ne | Kolekce typů organizačních rolí.

### EosUserField

Reprezentuje uživatelské pole.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
name | String (255) | Ano | Jméno uživatelského pole.
content | String (512) | Ano | Hodnota uživatelského pole.
code | String (255) | Ano | Kód uživatelského pole.

### EosUserFields

Reprezentuje kolekci uživatelských polí.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
userField | List<EosUserField> | Ne | Kolekce uživatelských polí.

### EosValue

Reprezentuje hodnotu string atributu, výčtového atributu a selectového atributu. Dále pak hodnoty rozsahu výčtového atributu.

Jméno atributu | Datový typ | Povinné | Popis
--- | --- | --- | ---
id | EosIdentifier | Ano | Identifikátor.
content | String (512) | Ano | Samotná hodnota atributu.
comment | String (512) | Ne | Komentář hodnoty atributu.