Přejít na obsah
Skip to main content

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ě roli r_request) nebo p_admin (r_admin).
  • Nastavit repeat/failsafe na cokoli jiného než none/prázdné vyžaduje navíc r_repeat nebo r_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 na do-request samotný). (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_request ani r_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.

Související požadavky​