Skladba ověřovacího dotazu

Ověřování dostupnosti v registru probíhá na základě dotazu s třemi proměnnými - první dvě jsou id uživatele a id role, třetí pak samotný název akce, která je požadována.

Dotaz je obdobný tomu v add-onu, jen jsou vynechány dokumentové typy. Naopak je znám název požadované akce, což v add-onu není. Hlavní tabulka (název pohledu role na registr akcí) xactrgs obsahuje sloupce xc_del a xc_arch. Tyto dva údaje musí obsahovat hodntu 0 (nula) - tj. akce nebyla zlikvidována, ani není pozastavena (archivována). Dále existuje tabulka xactrgs_mtch_usrid se sloupcem mtch_usrid (pdk uživatele) a tabulka xactrgs_mtch_rlid se sloupcem mtch_rlid (č. role uživatele). Tyto tabulky jsou na hlavní propojeny pomocí cizího klíče tdk (tdk=xactrgs.pdk).

Pokud k hlavní tabulce není připojeno žádné omezení, tj. neexistuje žádné neodstraněné opakování xactrgs_mtch_usrid ani xactrgs_mtch_rlid, pak to znamená, že dostupnost akce není nijak omezována na uživatele či roli uživatelů. Pakliže existuje propojení na uživatele, musí se id uživatele nacházet v některém z připojených záznamů xactrgs_mtch_usrid (tj. mtch_usrid = pdk uživatele zasílajícího požadavek). Pokud existuje propojení na roli, musí se role uživatele nacházet v některém z připojených záznamů xactrgs_mtch_rlid (tj. mtch_rlid = id role uživatele zasílajícího požadavek). Pokud jsou k xactrgs připojeny jak role tak uživatelé (nepravděpodobné), tak se uživatel musí nacházet v průsečíku obou hodnot.

Další podmínkou použitelnosti služby je volba správného prostředí pro chod akce, tedy prostředí serverové služby. K tomu slouží boolean sloupeček mtch_envsrv hlavní tabulky. Pokud je tento sloupec nastaven na hodnotu 1, je to OK, jakékoli jiné, vč. null znamenají nedostupnost akce jako služby.

Zároveň v hl. tabulce xactrgs existuje sloupec head_name, který obsahuje název akce. V registru akcí platí, že k jednomu head_name je max. jeden záznam, který je nevyhozený a nearchivovaný (xc_del a xc_arch se rovnají nule). Je tedy možné postupovat i opačně a kouknout rovnou do tabulek připojených, zda je tam nějaké omezení na roli a uživatele či nikoli.

Podsložka s popisem akce (služby) se nachází ve sloupečku sttn_trnfld v hlavní tabulce xactrgs. Podsložka se neshoduje s názvem akce, ale dá se z něj většinou odvodit + je třeba znát identifikátor sestavení (build string), který je součástí hodnoty ve sloupci sttn_trnfld.


Skladba ověřovacího dotazuUmístění popisu službyREST API