<block ignore="0" context="context_name" action="action_name"
variable="variable_name" notvariable="variable_name" get="url_parameter_name"
profile="kod_profilu"
name="jmeno_bloku" copy="1">
... obsah bloku ...
</block>
Blok je logická část XML dokumentu. Pomocí atributů lze omezit zobrazení/provádění bloku jen v případě, že je splněná nějaká podmínka.
Atributy:
ignore - (nepovinný) Pokud je nastaven na 1, celý blok se ignoruje. Lze použít místo poznáky pro "zneplatnění" části dokumentu.context - (nepovinný) Pokud je nastaven, provede se pouze v případě, že je roven aktuálnímu kontextu dokumentu.
Od verze 4.2103.153 je možné zadat i více hodnot oddělených středníkem. Pokud hodnota začíná vykřičníkem (např. context='!insert'), podmínka provedení se neguje.
Hodnota context="#nocontext" určuje, že se blok provede v případě, že nemá formulář nastaven žádný kontext.action - (nepovinný) Blok se provede v případě, že byla provedena akce zadaného jména (bylo stisknuto příslušné tlačítko - viz tagy action a button).variable - (nepovinný) Blok se provede v případě, že je nastavena proměnná zadaného jména a má neprázdnou a nenulovou hodnotunotvariable - (nepovinný) Blok se provede v případě, že není nastavena proměnná zadaného jména, nebo má prázdnou nebo nulovou hodnotuget - (nepovinný) Blok se provede v případě, že je v url nastaven parametr zadaného jména a má neprázdnou a nenulovou hodnotuprofile - (nepovinný) Blok se provede v případě, že je aktuální uživatel v zadaném uživatelském profilu. Lze zadat i více kódů profilů oddělených středníkem. name - (nepovinný) Jméno bloku. V datovém XML formuláři nastaví při vyplnění proměnnou zadaného jména na hodnotu 1. Tím se zaznamená, že blok už byl proveden.copy - (nepovinný) Určuje, jestli se má blok v předávacím formuláři zobrazovat a provádět opakovaně. Pokud je nastaveno na 0, provede se jen jednou a pak už je ignorován.
<block context="insert">
... obsah bloku - provede se jen pokud je aktuální kontext formuláře nastaven na "insert" ...
... obvykle se používá ve formulářích s mode="event"
</block>
<block context="!delete">
... obsah bloku - NEprovede se při delete ...
</block>
<block variable="moje_promenna">
... obsah bloku se provede pouze v případě, že je nastavená proměnná "moje_promenna" ...
... a má neprázdnou a nenulovou hodnotu ...
</block>
<block get="muj_parametr">
... obsah bloku se provede pouze v případě, že je v url nastaven parametr "muj_parametr" ...
... a má neprázdnou a nenulovou hodnotu ...
</block>
<block action="jmeno_akce">
... obsah bloku, který se provede pouze v případě, že bylo stisknuto tlačítko se zadaným jménem ...
... smysl má ve formulářích s mode "process" a "data"
</block>
<block profile="ZAM;RED">
... obsah bloku se provede pouze v případě, že aktuální uživatel je v jednom ze zadaných profilů ...
</block>
<block ignore="1">
... obsah bloku se ignoruje ...
</block>
<block copy="0" name="jmeno_bloku">
... obsah bloku ...
... po provedení ve formuláři s mode="data" se nastaví proměnná zadaného jména
a v dalších krocích se formulář ignoruje.
</block>