Masky
Maskou se v systému ABRA Gen obvykle rozumí uživatelsky definovatelný řetězec, který po aplikování na vstupní hodnotu určuje její výstupní podobu. Vstupní hodnotou může být číslo, variabilní či specifický symbol, seznam souborů či hodnot číselníku atp.
V systému ABRA Gen se můžete setkat s několika typy masek.
Dále naleznete:
Zobrazovací maska pro číselné hodnoty
Tato maska určuje způsob zobrazování před a za desetinnou čárkou, zda se budou oddělovat tisíce, či zda se desetinná část doplní nulami a pod.
V definic lze použít následující znaky:
Znak | Popis |
---|---|
0 |
Zástupný znak pro číslo. Pokud vstupní hodnota obsahuje číslo na pozici, kde se objeví '0', tak se číslo přenese do výstupního řetězce. V opačném případě se na tuto pozici dosadí '0'. Maska 0.000 aplikovaná na číslo '7,1', zobrazí hodnotu '7,100'. Na číslo '7,1239', zobrazí hodnotu '7,124'. |
# |
Zástupný znak pro číslo. Pokud vstupní hodnota obsahuje číslo na pozici, kde se objeví '#', tak se číslo přenese do výstupního řetězce. V opačném případě se na tuto pozici nedosadí nic. Typicky se používá v desetinné části masky, když požadujeme, aby se desetinná část formátovala dynamicky. Nalevo od desetinné části nemá znak '#' na počet zobrazených čísel vliv, kromě případu, kdy je číslo desetinné a začíná 0, poté se vypustí. Příklad 1: Maska 0.### aplikovaná na číslo '7,1', zobrazí hodnotu '7,1'. Na číslo '7,12', zobrazí hodnotu '7,12'. Na číslo '7,1239', zobrazí hodnotu '7,124'. Příklad 2: Maska #.000 aplikovaná na číslo 0,12 zobrazí hodnotu ,120. |
. |
Desetinná čárka. První znak '.' v řetězci formátu masky určuje umístění oddělovače desetinných míst formátované hodnoty. Na jakýkoli následující znak '.' se nebere zřetel. Podoba desetinné čárky je určena nastavením Windows. Ve výchozím stavu obvykle čárka. Pakliže je v desetinné části masky uvedeno méně znaků, než obsahuje vstupní hodnota, dojde k aritmetickému zaokrouhlení na daný počet míst výstupní masky. Příklady viz výše.
|
, |
Oddělovač tisíců. Pokud řetězec formátu masky obsahuje jeden nebo více znaků ',', výstup bude obsahovat oddělovače tisíců vložené mezi každou skupinu třech číslic nalevo od desetinné čárky. Umístění a počet znaků ',' ve formátovacím řetězci masky nemá na výstup vliv; pouze se tímto způsobem určí potřeba oddělovače tisíců. Podoba oddělovače tisíců je určena nastavením Windows. Ve výchozím stavu obvykle mezera. Maska 0.00 aplikovaná na číselnou hodnotu '1,20', zobrazí číselnou hodnotu '1,20' |
E+ |
Vědecká notace. Maska 00.000 E+ aplikovaná na číselnou hodnotu '178468', zobrazí '17,847 E+4'. |
'xx'/"xx" |
Znaky uzavřené do jednoduchých nebo složených uvozovek se do výstupního řetězce přenesou v nezměněné podobě. Maska 0,',-' aplikovaná na číselnou hodnotu '178468' zobrazí '178 486,-'. |
; |
Ve formátovacím řetězci masky se středníkem oddělují kladné, záporné a nulové hodnoty (v tomto pořadí). Maska 0.000,;0.###, aplikovaná na číselnou hodnotu '1,47,' zobrazí '1,470'. Pokud je však aplikována na číselnou hodnotu '-1,47', zobrazí '-1,47'. |
Pro konstrukci masek může sloužit editor Nastavení zobrazovací masky, který je dostupný přes tlačítko Editovat masku . Maska se poté konstruuje dle voleb, jejichž funkčnost vyplývá z jejich názvu. Viz následující obrázek:
Příklad vzhledu dialogu pro nastavení masky. ABRA vzhled.
Slouží k omezení vstupního seznamu souborů na soubory určitého typu. Např. typu obrázek (*.jpg, *.gif), text (*.txt), dokument (*.odt, *.doc, *.pdf) a pod. Případně lze masku konstruovat tak, aby jí vyhovovaly soubory určitého jména nebo mající v názvu určitý řetězec (*2012*) atd. V určitých agendách je možné při tvorbě filtrační masky pro soubory taktéž použít notaci regulárního výrazu.
Jedná se o specielní typy masek, které slouží k omezování záznamů číselníku. Jejich bližší popis viz položka Číselník na definovatelné položce.
Tento typ filtrační masky se uplatňuje na různé vstupní textové řetězce. Mohou jimi být např. odesílatel, adresát, předmět či název přílohy v e-mailech, zvláštní EAN v maloobchodním prodeji, výkony ve mzdách a pod. Systém řetězec vyhodnotí dle masky a dále postupuje dle podmínek přidělených patřičné masce. Při tvorbě filtrační masky pro řetězec lze v některých případech použít notaci regulárního výrazu.
Jedná se o případy, kdy se dle zadané masky generuje podoba výstupního řetězce, která se dosazuje do další vstupní položky. Např. přenos podoby variabilního nebo specifického symbolu na platební příkaz.