Požadavek do-request
Účel a dopady
Naplánuje odložené nebo opakované provedení libovolného vnořeného XML požadavku (nebo více požadavků) jako úlohu cronu. Požadavek jen zaeviduje úlohu a vrací se okamžitě; vnořený požadavek se skutečně provede až při běhu úlohy.
Dostupnost, kontext, oprávnění apod.
- Vyžaduje aktivovanou vlastnost uživatele
p_dorequest(interně rolir_request) nebop_admin(r_admin). - Nastavit
repeat/failsafena cokoli jiného nežnone/prázdné vyžaduje navícr_repeatnebor_admin. - Podléhá standardnímu transakčnímu zpracování obálky
<request>.
XML požadavek (syntax + popis)
<request>
<do-request
validity="{string}"
repeat="{string}"
failsafe="{string}"
sched-from-end="{bool}"
when-off="{bool}"
run-as="{number}"
by-action="{bool}"
db-log="{bool}"
name="{string}"
opt-roles="{string}"
log-output="{bool}"
ignore-result="{bool}"
http="{bool}"
>
<{libovolný požadavek}> +
</do-request>
</request>
Parametry a pravidla (atributy, potomci)
Plánovací atributy (validity, repeat, failsafe, sched-from-end, when-off, run-as, by-action, db-log) mají stejný význam jako u do-export – viz sdílený typ do-task.
Vlastní atributy:
name- Název úlohy. (typ:string; nepovinný)opt-roles- Volitelná role pro provedení vnořeného požadavku. (typ:string; nepovinný)log-output- Zapisovat výstup provedení do logu. (typ:bool; nepovinný; výchozí:true) – v dosavadní dokumentaci zcela chyběl.ignore-result- Považovat běh úlohy vždy za úspěšný bez ohledu na výsledek vnořeného požadavku (ovlivňuje jen interní vyhodnocení běhu/opakování, ne obsah odpovědi nado-requestsamotný). (typ:bool; nepovinný; výchozí:false) – v dosavadní dokumentaci zcela chyběl.http- Zpracovat vnořený požadavek v HTTP kontextu (vytvoří interníHTTPQuery). (typ:bool; nepovinný; výchozí:false) – v dosavadní dokumentaci zcela chyběl.
Potomek: alespoň jeden vnořený požadavek je povinný – bez něj se úloha vůbec nezaloží.
Příklady požadavku
(Zatím bez ověřeného příkladu; viz příklad do-request.)
Zpracování a vedlejší účinky
Při běhu úlohy se vnořený požadavek provede pod identitou uživatele, který registraci vytvořil (případně v zastoupení), výsledek se zabalí do <response type="{name}">…</response> a při log-output="true" (výchozí) zaloguje.
XML odpověď (syntax + popis)
<response>
<do-request
status="ok|error"
id="{number}"
next-run="{string}"
detail="{string}"
/>
</response>
Kořenový element odpovědi má vždy stejný název jako uzel požadavku – popis obsahu viz sdílený typ do-task-result (v době revize bez next-run).
Příklady odpovědi
(Zatím bez ověřeného příkladu.)
Chyby a reakce
status="error" detail="Nemate patricna opravneni"– volající nemár_requestanir_admin.status="error" detail="Systemova chyba pri vkladani pozadavku"– jednotná chyba pro ostatní případy selhání založení úlohy, včetně chybějícího vnořeného požadavku.status="skip" detail="Transakce byla preskocena"/status="error" detail="Transakce byla odvolana"– transakční přeskočení/odvolání obálky.