GetOUMembers
A GetOUMembers művelet az egyik legizgalmasabb, mert ez nem egyént keres, hanem egy egész közösséget (osztályt, fiókot) listáz ki. A neve is ezt mutatja: "Szervezeti Egység Tagjainak Lekérése".
Nézzük meg az XSD alapján, mi kell a kéréshez, és mit kapunk válaszul.
1. GetOUMembers REQUEST (A kérés)
Az XSD-ben a GetOUMembersRequest komplex típusnál ezek a szabályok:
-
context:
minOccurs="1"→ KÖTELEZŐ. -
ouShortName:
minOccurs="1"→ KÖTELEZŐ. Ez az osztály rövid kódja (pl. "IT_SEC" vagy "FI_GYOR_01"). -
orgHierarchyCode:
minOccurs="1"→ KÖTELEZŐ. Megadja, melyik szervezeti fában keressünk (a banknak több is lehet, pl. jogi vagy funkcionális). -
listRecursively:
minOccurs="0"→ OPCIONÁLIS. Hatrue, akkor az alosztályok dolgozóit is kilistázza, nem csak a közvetlenül ott lévőket.
Példa Request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:org="http://organization.types.raiffeisen.hu/OrganizationData"
xmlns:com="http://common.types.raiffeisen.hu/common">
<soapenv:Header/>
<soapenv:Body>
<org:GetOUMembersRequest>
<org:context>
<com:appID>WIKI_APP</com:appID>
</org:context>
<org:ouShortName>IT_SEC_DEPT</org:ouShortName>
<org:orgHierarchyCode>MAIN_BANK_TREE</org:orgHierarchyCode>
<org:listRecursively>true</org:listRecursively>
</org:GetOUMembersRequest>
</soapenv:Body>
</soapenv:Envelope>
2. GetOUMembers RESPONSE (A válasz)
A válasz (GetOUMembersResponse) szerkezete:
-
resultCode:
minOccurs="1"→ Siker/Hiba. -
orgHierarchyCode:
minOccurs="1"→ Visszaigazolja, melyik fában kerestünk. -
persons:
minOccurs="0"ésmaxOccurs="unbounded". Ez egy lista, amiPersontípusú elemekből áll.
A Person típus belső felépítése az XSD szerint:
-
personId,fullName,role,ouShortName(mind opcionális, de a gyakorlatban kitöltik őket).
Példa Response:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:org="http://organization.types.raiffeisen.hu/OrganizationData">
<soapenv:Body>
<org:GetOUMembersResponse>
<org:resultCode>
<code>OK</code>
</org:resultCode>
<org:ouShortName>IT_SEC_DEPT</org:ouShortName>
<org:orgHierarchyCode>MAIN_BANK_TREE</org:orgHierarchyCode>
<org:persons>
<org:personId>creznek</org:personId>
<org:fullName>Creznek Gábor</org:fullName>
<org:role>Expert</org:role>
<org:ouShortName>IT_SEC_DEPT</org:ouShortName>
</org:persons>
<org:persons>
<org:personId>kovacsj</org:personId>
<org:fullName>Kovács János</org:fullName>
<org:role>Manager</org:role>
<org:ouShortName>IT_SEC_DEPT</org:ouShortName>
</org:persons>
</org:GetOUMembersResponse>
</soapenv:Body>
</soapenv:Envelope>
Hogyan használd a Wikiben?
Ezt a metódust akkor érdemes elővenni, ha a feladat például:
-
Egy osztály automatikus e-mail listájának összeállítása.
-
Annak ellenőrzése, hogy ki a főnöke az adott egységnek (a
rolemező alapján). -
Egy szervezeti ábra rajzolása, ahol az emberek az osztályokhoz vannak rendelve.
Érdekesség: Figyeld meg az XSD-ben a listRecursively mezőt! Ez egy boolean (igen/nem) típus. Ha ezt elfelejted beleírni a kérésbe, a banki rendszerek általában alapértelmezettnek veszik a false-t, tehát csak az adott osztály "saját" embereit látnád, a beosztott osztályokéit nem.
No comments to display
No comments to display