5.6. Formulářové akce a další souvislosti
Použití formulářových akcí je dáno základní volbou typu akce, tedy volbou „Spouštět z:“. Může se stát, že tato volba bude v určité fázi tvorby akce již zamčená. To znamená, že v tu chvíli není možné zvolit, zda je akce formulářová, tabulková nebo API. Důvodem je nastavení formátu vstupu či výstupu. Právě na formátu záleží, jaký typ akce je použitý:
-
Formulářová akce má na vstupu draft daného typu dokumentu.
-
Tabulková akce může mít na vstupu PDK list, pokud je aktivovaný.
-
Služba / API akce může mít vstupní formát velmi různorodý.
Jakmile je akce jednou definována se vstupem či výstupem, uzamyká se volba režimu. Jedna akce může fungovat pouze v jednom ze tří režimů – formulář, přehled, nebo služba.
Spouštěcí body formulářových akcí
U formulářových akcí jsou velmi důležité tzv. spouštěcí body. Ty mohou být různého druhu a záleží na jejich umístění:
-
V kmeni dokumentu – akce se váže na dokument jako celek (např. při uložení nebo při volbě „Odeslat“).
-
V konkrétních místech formuláře – akce je vyvolána specifickou událostí.
Možnosti spouštěcích bodů:
-
Menu – vloží název/štítek akce do menu, jehož kotva se ve formuláři zobrazí.
-
Odeslat – tlačítko „Uložit“ nebo „Uložit a zavřít“ je nahrazeno tlačítkem „Odeslat“ se šipkou.
-
Zavřít – při kliknutí na křížek pro zavření formuláře se spustí akce, která může zavření i zablokovat.
-
Jako šablonu – určeno pouze pro intranetní Comex.
-
Nový formulář – akce se spustí při vytvoření nového dokumentu. Pokud jde o podtabulku s nastaveným propojením klíče, provede se předvyplnění ještě před spuštěním akce.
-
Otevřít – obdobné jako „Nový formulář“, ale při editaci již existujícího dokumentu.
-
Vytisknout – opět pouze pro intranet, zde nerozebíráme.
-
Uložit – při použití tlačítka „Uložit“ nebo „Uložit a zavřít“ se nejprve spustí akce. Před tím proběhnou validace (povinné kolonky a CBA kontroly).
-
Po uložení – akce spuštěná po dokončení uložení. V praxi se používá málo.
-
Přidání volby – na konec formuláře se vloží nové tlačítko s akcí. Tato varianta neprovádí validaci, pouze odešle draft do akce.
Vztah k XDS definici
Tyto spouštěcí body se používají pouze tehdy, pokud není v XDS definován uzel <action>.
-
Pokud uzel <action> v XDS existuje, jeho definice přetěžuje nastavení spouštěcích bodů v intranetu.
-
Pokud v XDS žádný uzel <action> není, provede se při editaci dotaz na dynamické spouštěcí body a formulář je respektuje.
Výhodou XDS definice je možnost:
-
Přidávat tlačítka s volitelným nebo dočasným zobrazením.
-
Použít vlastnost trigger (definuje se v rámci substruktury <action>).
-
Ovlivnit validaci pomocí vlastnosti validation – pokud je nastaveno na true, formulář před spuštěním akce provede povinnosti kolonek a CBA kontroly.
-
Volba mainzajistí nahrazení hlavního tlačítka dokumentu pro uložení tlačítkem takto označené akce. Volbu může mít i více akcí, ale měla by být zajištěna viditelnost jen jednoho hlavního.
Vlastnost trigger
Slouží k nastavení spouštěče akce a určuje její dostupnost ve formuláři.
-
button – Tlačítko u segmentu (v kmeni dokumentu, u oblasti či prvku).
-
menu – Položka menu u segmentu (v kmeni dokumentu, u oblasti či prvku).
-
on-before-close – Spustí se před zahozením draftu bez uložení (při zavření formuláře).
-
on-before-save – Uložení dokumentu (po validaci) – spouští se těsně před uložením.
-
on-change – Změna v kolonce; platí jen při umístění substruktury u konkrétní kolonky.
-
on-open – Otevření existujícího dokumentu k editaci.
-
on-new – Otevření nového (dosud neuloženého) formuláře.
-
on-save – Uložení dokumentu (po validaci) – spouští se po uložení.
-
on-select – Spuštění při výběru zdroje; platí jen při umístění na kolonku s výběrem.
-
repetition-button – Tlačítko v nástrojích opakovatelné oblasti/prvku (u každého výskytu).
-
repetition-tool – Ikona (bez štítku) v nástrojích opakovatelné oblasti/prvku (u každého výskytu).
-
repetition-menu – Položka menu v nástrojích opakovatelné oblasti/prvku (u každého výskytu).
-
tool – Ikona (nástroj) v kmeni dokumentu (globální lišta formuláře). Vlastnost trigger lze uvádět zejména u uzlu action (spustitelná akce v CBA definici).
Komunikace formuláře s akcí
Důležitým aspektem formulářových akcí je způsob komunikace mezi formulářem, resp. modulem COMEX, a samotnou akcí. Na vstupu má formulářová akce vždy tzv. draft – tedy XML podobu rozpracovaného dokumentu daného typu. Tento draft je vstupním datem pro další zpracování a je tím, co akce přímo využívá.
Atribut run-point
V rámci formulářových akcí je možné používat tzv. run-point. Tento atribut je formulářem na klientské straně umístěn do uzlu, u kterého byla akce spuštěna. Atribut ru-pointmá zvláštní význam v případech, kdy je tlačítko zobrazeno u opakování segmentu. V takové situaci je potřeba, aby akce věděla, které konkrétní opakování dokumentového draftu má být zpracováno, případně které je předmětem spuštěné akce.
Podřízené stránky
Specifika formulářových akcí
1. Úvod