1. Základní informace
1.1. Popis ovládacího prvku
TextArea je textové pole libovolné šířky a výšky určené k zadávání prostého textu s neomezenou délkou s možností vložení vynuceného přechodu na novou řádku – enteru. Při nastavení šířky na 0 pixelů se u textového pole nezobrazuje typické orámování, a také chybí možnost editace textu – hodnota textového pole se zobrazuje jako běžný odstavec s prostým textem.
1.2. Vytvoření nového ovládacího prvku
- Detailní popis vytváření nových ovládacích prvků v editačním formuláři je uveden v samostatné příručce Vytváření ovládacích prvků editačního formuláře.
1.3. Editace nebo smazání ovládacího prvku
- U každého existujícího ovládacího prvku se po jeho levé straně v editačním formuláři zobrazuje ikona tužky, která slouží pro změnu nastavení ovládacího prvku nebo jeho smazání.
- Jednotlivé ovládací prvky mohou být v editačním formuláři vertikálně přesouvány metodou Drag&Drop. Přesunutí spočívá v chycení ovládacího prvku nejlépe za jeho název umístěný v levém sloupci editačního formuláře, a následném tažení až na požadované místo v editačním formuláři.
- Z bezpečnostních důvodů je důležité mít povolenou funkci přesouvání ovládacích prvků pomocí zaškrtávacího pole „Drag&Drop“ umístěného nad toolbarem s ovládacími prvky. Při každém přihlášení do aplikace je toto pole nezaškrtnuté.
- Smazání textarea má za následek nevratné smazání databázového sloupce spojeného s touto textarea v databázi, a tudíž i ke smazání jejích hodnot ve všech záznamech databázové tabulky. Některé textarea v systémových editačních formulářích není možné smazat, protože jsou nutné k základní funkčnosti celé aplikace.
2. Seznam záložek v dialogu nastavení ovládacího prvku
- Obecné – Nastavení obecných vlastností
- Výchozí hodnota – Nastavení výchozí hodnoty u nově vytvářených záznamů
- Události – Nastavení javascriptových událostí
- Tlačítko – Nastavení tlačítka, které může být zobrazováno napravo vedle ovládacího prvku
- Nápověda – Nastavení textu nápovědy, který může být zobrazován v pravé části editačního formuláře
- Filtr – Nastavení filtru, který může být zobrazován v nahlížecí tabulce v záhlaví sloupce
- Práva – Nastavení práv
- Administrace – Nastavení ostatních vlastností
2.1. Záložka „Obecné“

2.1.1. Název
- Pro všechny datové typy
- Název ovládacího prvku zobrazovaný v editačním formuláři v samostatném sloupci s barevným pozadím nalevo vedle samotného textového pole.
2.1.2. Zkrácený název
- Pro všechny datové typy
- Volitelný název ovládacího prvku zobrazovaný v záhlaví nahlížecí tabulky, pokud je ovládací prvek zvolen jako jeden ze sloupců nahlížecí tabulky.
- Je-li zkrácený název uveden, zobrazuje se celý název ovládacího prvku v tooltipu nad zkráceným názvem.
- Není-li zkrácený název uveden, zobrazuje se v záhlaví nahlížecí tabulky celý název ovládacího prvku.
- Pomocí zkráceného názvu „ “ (pevná mezera) lze úplně skrýt název ovládacího prvku zobrazovaný v nahlížecí tabulce.
2.1.3. Slovník…
- Pro všechny datové typy
- Slovník zobrazuje seznam názvů ostatních ovládacích prvků, formulářů, nahlížecích stránek, kategorií, aplikací a aplikačních skupin, použitých napříč celou aplikací.
- Vyhledávání ve slovníku slouží k navržení správného názvu ovládacího prvku a k udržení konzistence názvosloví v celé aplikaci tak, aby se ovládací prvky se stejným významem umístěné na různých místech v aplikaci nazývaly stejným způsobem.
2.1.4. Datový typ
- Datový typ definuje druh nebo význam hodnot, kterých může ovládací prvek nabývat.
- Textarea používá jednotný databázový typ sloupce, který je přidružen k aktuálnímu ovládacímu prvku v databázi – „text“ u databáze Firebird a „nvarchar(max)“ u databáze MSSQL.
- Rozbalovací seznam obsahuje následující datové typy
Textový řetězec

- Klasické víceřádkové textové pole s orámováním.
- „String“ s neomezenou délkou, reprezentovaný jako databázový typ „text“ u databáze Firebird a „nvarchar(max)“ u databáze MSSQL.
Zdrojový kód

- CodeMirror textové pole s číslovanými řádky pro psaní obecného zdrojového kódu s barevným zvýrazněním syntaxe.
- „String“ s neomezenou délkou, reprezentovaný jako databázový typ „text“ u databáze Firebird a „nvarchar(max)“ u databáze MSSQL.
HTML

- CodeMirror textové pole s číslovanými řádky pro psaní obecného HTML kódu s barevným zvýrazněním syntaxe.
- „String“ s neomezenou délkou, reprezentovaný jako databázový typ „text“ u databáze Firebird a „nvarchar(max)“ u databáze MSSQL.
XML

- CodeMirror textové pole s číslovanými řádky pro psaní XML kódu s barevným zvýrazněním syntaxe.
- „String“ s neomezenou délkou, reprezentovaný jako databázový typ „text“ u databáze Firebird a „nvarchar(max)“ u databáze MSSQL.
JavaScript

- CodeMirror textové pole s číslovanými řádky pro psaní javascriptového kódu s barevným zvýrazněním syntaxe.
- „String“ s neomezenou délkou, reprezentovaný jako databázový typ „text“ u databáze Firebird a „nvarchar(max)“ u databáze MSSQL.
C#

- CodeMirror textové pole s číslovanými řádky pro psaní C# zdrojového kódu s barevným zvýrazněním syntaxe.
- „String“ s neomezenou délkou, reprezentovaný jako databázový typ „text“ u databáze Firebird a „nvarchar(max)“ u databáze MSSQL.
C++

- CodeMirror textové pole s číslovanými řádky pro psaní C++ zdrojového kódu s barevným zvýrazněním syntaxe.
- „String“ s neomezenou délkou, reprezentovaný jako databázový typ „text“ u databáze Firebird a „nvarchar(max)“ u databáze MSSQL.
Wiki

- CodeMirror textové pole s číslovanými řádky pro psaní obecného Wiki kódu.
- „String“ s neomezenou délkou, reprezentovaný jako databázový typ „text“ u databáze Firebird a „nvarchar(max)“ u databáze MSSQL.
Markdown

- CodeMirror textové pole s číslovanými řádky pro psaní textu se značkovací syntaxí Markdown.
- „String“ s neomezenou délkou, reprezentovaný jako databázový typ „text“ u databáze Firebird a „nvarchar(max)“ u databáze MSSQL.
2.1.5. Šířka
- Pro všechny datové typy
- Šířka ovládacího prvku uvedená v pixelech.
- Šířka se skládá ze dvou částí, z šířky samotného ovládacího prvku v editačním formuláři, a volitelně z šířky sloupce v nahlížecí tabulce, pokud je ovládací prvek zvolen jako ze sloupců nahlížecí tabulky.
- Při nastavení šířky na 0 pixelů se u textového pole nezobrazuje typické orámování, a také chybí možnost editace textu – hodnota textového pole se zobrazuje jako běžný odstavec s prostým textem.
2.1.6. Počet řádků
- Pro všechny datové typy
- Počet řádků určuje volitelnou výšku textového pole v editačním formuláři.
- Výchozí počet řádků je 5. Minimální počet řádků je 1, maximální 250.
2.1.7. Možnosti
- Vyžadované pole
- Pro všechny datové typy
- Zaškrtnutí vyžadovaného pole určuje, zda má být v editačním formuláři vyžadováno vyplnění platné hodnoty před jejím uložením do databáze.
- Nastavení vyžadovaného pole nemá vliv na databázový typ sloupce, který je přidružen k aktuálnímu ovládacímu prvku v databázi. Všechny databázové sloupce jsou nastaveny tak, že akceptují i databázovou hodnotu „null“.
- Hodnota může být v databázi uložena jako textový řetězec nenulové délky, textový řetězec nulové délky (prázdný string), nebo jako databázová hodnota „null“. Při sestavování podmínek databázového dotazu je tedy důležité počítat i s alternativou, že je ve sloupci v databázové tabulce uložena kromě textového řetězce nulové délky také databázová hodnota „null“. Taková podmínka může vypadat v řeči NG následovně: ta rovná se „“ nebo ta není definováno. A nyní v jazyce SQL: ng_ta = '' OR ng_ta IS NULL.
- Jen ke čtení
- Pro všechny datové typy
- Nastavení ovládacího prvku jen ke čtení určuje, zda má být v editačním formuláři textové pole disablované.
- Do disablovaného pole není možné ručně zapisovat hodnoty, samotné textové pole má zašedlé pozadí, a text hodnoty v tomto poli se zobrazuje odlišným fontem než u zbytku ovládacích prvků.
- Do disablovaného pole je možné vyplňovat hodnoty pomocí javascriptu:
- control_SetValue(#ng_#, 'abc');
- ta_Insert(#ng_#, 'abc');
- Ovládací prvky obecně je možné disablovat pomocí javascriptu:
- control_Disable(#ng_#); // Obecná javascriptová funkce pro všechny databázové ovládací prvky
- ta_Disable(#ng_#);
- Stejně tak je možné ovládací prvky pomocí javascriptu enablovat:
- control_Enable(#ng_#); // Obecná javascriptová funkce pro všechny databázové ovládací prvky
- ta_Enable(#ng_#);
- Ve výchozím nastavení není možné enablovat ovládací prvek, který je nastaven pouze ke čtení, javascriptové funkci control_Enable musí být předán druhý volitelný parametr „ignorereadonly“: control_Enable(#ng_#, true);
- Zakázat změnu hodnoty pomocí JavaScriptu
- Pro všechny datové typy ve spojení s možností „Jen ke čtení“
- Zaškrtnutí zákazu změny hodnoty pomocí javascriptu zajistí, aby u ovládacích prvků nastavených jen ke čtení nedošlo k podvržení hodnoty v internetovém prohlížeči ze strany potencionálních útočníků na editační formulář.
- Před uložením záznamu do databáze je vždy zkontrolováno, zda byla hodnota změněna pouze na straně serveru, a případně nastaví hodnotu na původní platnou.
- Skryté pole
- Pro všechny datové typy
- Nastavení skrytého pole určuje, zda má být ovládací prvek součástí editačního formuláře, avšak v uživatelském režimu nemá být viditelný.
- Skrytý ovládací prvek včetně vyplněné hodnoty je možné dohledat ve zdrojovém kódu webové stránky. Nelze ho tedy používat jako součást bezpečnostních opatření, k tomu se používají práva na ovládací prvek.
- Zobrazovat jako odkaz v nahlížecí tabulce k otevření záznamu na nové záložce
- Zaškrtnutí tohoto pole určuje, zda mají být hodnoty ovládacího prvku všude v aplikaci zobrazovány jako odkaz, který slouží k otevření záznamu na nové záložce.
- Povolit hromadné změny
- Pro datový typ: Textový řetězec
- Povolení hromadných změn určuje, zda má být v nahlížecí tabulce nebo plánovacím vícezdrojovém kalendáři pod samotnou hodnotou ovládacího prvku zobrazen odkaz s možností změny hodnoty bez nutnosti otevření a editace záznamu v editačním formuláři. Odkaz s možností změny se zobrazuje pouze v nahlížecích tabulkách nebo kalendářích, které mají povolené hromadné změny dat.
- Hromadné změny je možné provádět pouze přihlášeným uživatelem, anonymnímu uživateli se odkaz nezobrazuje.
- Spustit OnBeforeSave/OnAfterSave před uložením záznamu do databáze
- Pro datový typ textový řetězec ve spojení s možností „Povolit hromadné změny“
- Zaškrtnutí tohoto pole určuje, zda se při uložení hodnoty ovládacího prvku do databáze přímo z nahlížecí tabulky má spustit skript „OnBeforeSave“ a následně „OnAfterSave“, který
- může zamezit uložení hodnoty pomocí vyvolání přerušení,
- nebo může spustit dodatečné databázové operace, odeslání emailů apod.
- Dojde-li ve skriptu „OnBeforeSave“ k přerušení, zobrazí se uživateli text chybového hlášení, a k uložení hodnoty do databáze nedojde.
- Dojde-li ve skriptu „OnAfterSave“ k přerušení, zobrazí se sice uživateli příslušné chybové hlášení, na úspěšné uložení hodnoty do databáze to však již nemá vliv.
- Zaškrtnutí tohoto pole určuje, zda se při uložení hodnoty ovládacího prvku do databáze přímo z nahlížecí tabulky má spustit skript „OnBeforeSave“ a následně „OnAfterSave“, který
- Přichytit k předchozímu ovládacímu prvku
- Pro všechny datové typy
- Zaškrtnutí tohoto pole určuje, zda má být samotný ovládací prvek v editačním formuláři zobrazen napravo vedle předchozího, nebo bude zobrazen běžným způsobem pod předchozím ovládacím prvkem.
- Je-li ovládací prvek přichytáván k předchozímu, lze definovat šířku odsazení od předchozího ovládacího prvku
- Odsazení se definuje v pixelech v samostatném textovém poli, které je umístěno nalevo vedle textového pole „Šířka“.
- Detailní popis přichytávání k ovládacím prvkům je uveden v samostatné příručce Nastavení vzhledu.
- Komentář
- Pro datový typ: Textový řetězec
- Komentář určuje, zda má být textové pole zobrazeno jen ke čtení s možností vkládání komentářů pomocí tlačítka „Nový komentář“ umístěného pod textovým polem v editačním formuláři.
- Kliknutí na tlačítko „Nový komentář“ způsobí zobrazení nového dialogu s možností zadání komentáře ve formě prostého textu.
- Následné potvrzení zapsaného komentáře pomocí tlačítka „Vložit komentář“ nebo pomocí kombinace kláves „CTRL+ENTER“ vloží do ovládacího pole v editačním formuláři
- prázdnou řádku,
- jméno autora komentáře viz níže,
- čárku a mezeru,
- aktuální datum a čas,
- přechod na novou řádku a
- samotný text zapsaného komentáře.
- Autor
- Přihlašovací jméno – jméno autora bude přihlašovací jméno aktuálně přihlášeného uživatele
- Jméno – jméno autora bude celé jméno aktuálně přihlášeného uživatele
- Řazení
- Vzestupně – zapsaný komentář bude vložen na konec za prázdnou řádku
- Sestupně – zapsaný komentář bude vložen na začátek před prázdnou řádku
- Název tlačítka
- Nový komentář – text tlačítka bude nastaven na výchozí text „Nový komentář“
- Vlastní – text tlačítka bude nastaven na vlastní hodnotu
2.2. Záložka „Výchozí hodnota“

2.2.1. Výchozí hodnota
- Výchozí hodnota se používá u nově vytvářených záznamů v editačním formuláři. Jde o hodnotu, která se automaticky předvyplní do ovládacího prvku v situaci, kdy je otevřen editační formulář za účelem vytvoření nového záznamu, který dosud v databázi neexistuje.
- Výchozí hodnotu lze naplánovat pomocí skriptové funkce „SCHEDULEDEFAULTVALUE(ng_, abc)“ ze skriptu, který je součástí tlačítka pro otevření nového editačního formuláře.
- Rozbalovací seznam obsahuje následující typy výchozích hodnot:
- Vlastní – výchozí hodnotu definuje textová konstanta, proměnná, nebo kombinace obojího, zapsaná v textovém poli pod rozbalovacím seznamem. Mezi obvyklé proměnné patří „#lastvalue#“, „#lastvalue2#“ apod.
- Aktuální uživatel – přihlašovací jméno aktuálně přihlášeného uživatele
- Aktuální datum
- Aktuální čas
- Aktuální datum a čas
- Aktuální hodnota v databázi – aktuální hodnota v databázi má význam pouze ve spojení se zaškrtávacím polem „Vyplnit výchozí hodnotu před každým uložením záznamu do databáze“
- Sloupce některých databázových záznamů jsou měněny i na pozadí operačního systému například externími aplikacemi. Typicky jde o statusy, datumy zpracování databázového záznamu apod. Během doby, kdy má databázový záznam otevřený některý uživatel v editačním formuláři, může být hodnota takového sloupce změněna na pozadí externí aplikací. V takovém případě nesmí být pro uložení záznamu použita hodnota aktuálně přítomná v editačním formuláři (tato hodnota byla platná v době otevření záznamu), ale musí být použita hodnota aktuálně zapsaná v databázi.
- Z dotazu – výchozí hodnotu definuje výsledek databázového dotazu, který je vyhodnocen při otevření editačního formuláře
- JavaScript – výchozí hodnotu definuje javascriptová funkce spuštěná při otevření editačního formuláře, zapsaná v textovém poli pod rozbalovacím seznamem bez středníku na konci. Javascriptová funkce musí vracet textovou hodnotu.
2.2.2. Možnosti
- Vyplnit výchozí hodnotu při každém otevření editačního formuláře
- Zaškrtnutí tohoto pole určuje, zda dojde po otevření již existujícího záznamu k přepsání aktuální hodnoty v editačním formuláři na výchozí hodnotu.
- Ovládací prvky, které mají jako výchozí hodnotu nastavené volání externí funkce, například „ngef2(test)“, a zároveň mají zaškrtnuté vyplnění výchozí hodnoty při každém otevření editačního formuláře, mohou mít v databázi prázdnou nebo nevyplněnou hodnotu, a přesto se při pokusu o zobrazení této hodnoty všude v aplikaci kromě editačního formuláře vyhodnotí externí funkce nastavená jako výchozí hodnota.
- Vyplnit výchozí hodnotu před každým uložením záznamu do databáze
- Zaškrtnutí tohoto pole určuje, zda dojde před každým uložením záznamu k přepsání aktuální hodnoty v editačním formuláři na výchozí hodnotu.
- Ovládací prvky, které mají jako výchozí hodnotu nastavené volání externí funkce, například „ngef2(test)“, a zároveň mají zaškrtnuté vyplnění výchozí hodnoty před každým uložením záznamu do databáze, mohou mít v databázi prázdnou nebo nevyplněnou hodnotu, a přesto se při pokusu o zobrazení této hodnoty všude v aplikaci kromě editačního formuláře vyhodnotí externí funkce nastavená jako výchozí hodnota.
- Pouze při ruční změně hodnoty v jiném ovládacím prvku
- Ve spojení s možností „Vyplnit výchozí hodnotu před každým uložením záznamu do databáze“
- Zaškrtnutí tohoto pole určuje, zda dojde před každým uložením záznamu k vyhodnocení změny hodnoty v jednom z ostatních ovládacích prvků editačního formuláře. Pouze v takovém případě pak dojde k přepsání aktuální hodnoty v editačním formuláři na výchozí hodnotu.
- Tato možnost je výchozí u ovládacích prvků Watcheru, tj. „Změněno kým“ a „Změněno kdy“
2.3. Záložka „Události“

2.3.1. OnChange
- Událost „onchange“ určuje seznam javascriptových příkazů oddělených středníkem, které se vykonají po změně hodnoty a následném opuštění ovládacího prvku.
2.3.2. OnClick
- Událost „onclick“ určuje seznam javascriptových příkazů oddělených středníkem, které se vykonají po kliknutí myši na ovládací prvek.
2.3.3. OnFocus
- Událost „onfocus“ určuje seznam javascriptových příkazů oddělených středníkem, které se vykonají po vstupu do ovládacího prvku (ve chvíli, kdy ovládací prvek obdrží focus).
2.3.4. OnBlur
- Událost „onblur“ určuje seznam javascriptových příkazů oddělených středníkem, které se vykonají po opuštění ovládacího prvku tabelátorem či kliknutím myši mimo ovládací prvek.
2.4. Záložka „Tlačítko“

2.4.1. Nadpis
- Nadpis určuje název tlačítka, které se volitelně zobrazuje napravo vedle samotného ovládacího prvku v editačním formuláři.
- Nevyplněný název značí, že tlačítko nebude zobrazeno.
2.4.2. Šířka
- Šířka tlačítka uvedená v pixelech.
2.4.3. Klient
- Pole „Klient“ určuje seznam javascriptových příkazů, které se vykonají po stisknutí tlačítka. Rozbalovací seznam nabízí následující často používané javascriptové funkce:
- Opravdu chcete… ? – return confirm('Opravdu chcete... ?');
- AJAX… – return bt_Eval(this, 'ngef.aspx?test', 'evalFunction');
2.4.4. Server
- Dojde-li k úspěšnému vyhodnocení javascriptových příkazů, nebo pokud nejsou žádné javascriptové příkazy definované, bude následně spuštěn skript na straně serveru. Odkaz „Upravit skript“ slouží k otevření integrovaného grafického návrháře skriptů, ve kterém se definuje skript, resp. serverová část tlačítka.
- Vykonávání javascriptových příkazů lze přerušit příkazem „return false;“, který zamezí i následnému spuštění skriptu na straně serveru.
2.5. Záložka „Nápověda“

2.5.1. Nápověda
- Nápověda je text zobrazovaný napravo od ovládacího prvku v editačním formuláři.
- Nápovědy všech ovládacích prvků začínají na stejné svislé linii v rámci celého editačního formuláře.
- Text – text nápovědy je definován ručně zadaným textovým řetězcem ve víceřádkovém textovém poli pod radio buttonem
- Z dotazu – text nápovědy je definován výsledkem databázového dotazu, který je vyhodnocen při otevření editačního formuláře
- Detailní popis nápovědy je uveden v samostatné příručce Nastavení vzhledu.
2.5.2. Poznámky
- Poznámky slouží pro zadání libovolného textu určeného pro správce aplikace.
2.6. Záložka „Filtr“

2.6.1. Možnosti
- Zobrazit filtr v nahlížecí tabulce
- Zaškrtnutí tohoto pole určuje, zda má být v nahlížecí tabulce umožněno filtrování záznamů podle hodnot přítomných v databázi ve sloupci spojeném s tímto ovládacím prvkem. Rozbalovací seznam filtru je umístěný v záhlaví nahlížecí tabulky pod názvem ovládacího prvku.
- V rozbalovacím seznamu filtru se nezobrazují konkrétní hodnoty přítomné v databázi ve sloupci spojeném s tímto ovládacím prvkem, pouze možnosti:
- Vyhledání zadané hodnoty
- Vyhledání prázdných hodnot v databázi
- Vyhledání neprázdných hodnot v databázi
- Vyhledání podle složené podmínky
2.7. Záložka „Práva“

2.7.1. Práva
- Práva definují seznam uživatelských skupin a uživatelů, kteří mají oprávnění na zobrazení ovládacího prvku v editačním formuláři, a na zobrazování hodnot tohoto ovládacího prvku všude jinde v aplikaci.
- Uživatelé, kteří nemají práva na ovládací prvek,
- nevidí ovládací prvek ani jeho hodnotu v editačním formuláři, a ani ho nemohou dohledat ve zdrojovém kódu stránky v internetovém prohlížeči,
- nemohou zobrazit sloupec spojený s tímto ovládacím prvkem v nahlížecí tabulce nebo jiném vizuálním ovládacím prvku určeném pro prohlížení dat,
- mohou vytvořit záznam v editačním formuláři, ve kterém existuje ovládací prvek, na který nemají práva, hodnota těchto ovládacích prvků je pak nastavena na databázovou hodnotu „null“,
- nemohou smazat žádný záznam v editačním formuláři, ve kterém existuje ovládací prvek, na který nemají práva.
- Správce aplikace může způsobit logickou chybu, kdy se pomocí javascriptové funkce odkazuje na ovládací prvek, který pro některé uživatele nemusí být přístupný z pohledu práv. Proměnná „ng_“ se pak nahradí za hodnotu uloženou v databázi v tomto ovládacím prvku namísto odkazu na objekt samotného ovládacího prvku. Tato chyba ve většině případů zastaví načítání editačního formuláře, ten se celý disabluje, a uživateli je zobrazeno hlášení, že má kontaktovat administrátora aplikace. Tento druh chyby je možný z části eliminovat pomocí reportu „Ovládací prvky (JavaScript + nedostatečná práva)“.
2.7.2. Zobrazit hodnotu
- Zobrazení hodnoty ovládacího prvku může být omezeno pouze na uživatele, kteří daný databázový záznam vytvořili, anebo jsou nastaveni jako spoluvlastníci všech záznamů v nastavení editačního formuláře.
- Radio button obsahuje následující typy zobrazení hodnoty:
- Všem uživatelům – ovládací prvek včetně jeho hodnoty bude zobrazen všem uživatelům, kteří mají právo na daný ovládací prvek
- Pouze vlastníkovi nebo spoluvlastníkovi záznamu – ovládací prvek včetně jeho hodnoty bude zobrazen pouze uživatelům, kteří mají právo na daný ovládací prvek, a zároveň jsou vlastníci aktuálně otevřeného databázového záznamu v editačním formuláři (záznam vytvořili), nebo jsou nastaveni jako spoluvlastníci všech záznamů v nastavení editačního formuláře.
2.7.3. Nahradit práva ostatním ovládacím prvkům
- Funkce „Nahradit práva ostatním ovládacím prvkům“ slouží pro sjednocení práv v rámci celého editačního formuláře u ovládacích prvků, které spolu z pohledu práv souvisí.
- Díky odkazu „Zobrazit…“ je možné zobrazit seznam všech ovládacích prvků v editačním formuláři včetně nastavení práv těchto ovládacích prvků. U každého ovládacího prvku je zobrazeno zaškrtávací tlačítko, kterým je možné ovládací prvek vybrat. Při uložení ovládacího prvku se následně nastaví stejná práva i těmto vybraným ovládacím prvkům.
- Alternativou pro sjednocení práv v rámci celého editačního formuláře je zobrazení reportu dostupného ze záložky „Práva podřízených objektů“ v nastavení editačního formuláře.
2.8. Záložka „Administrace“

- Záložka „Administrace“ se zobrazuje pouze u existujících ovládacích prvků.
2.8.1. Identifikátor
- Identifikátor určuje název databázového sloupce, do kterého se v databázi ukládají hodnoty zadané prostřednictvím ovládacího prvku v editačním formuláři.
- Identifikátor je odvozen od názvu ovládacího prvku. Začíná prefixem „ng_“, a dále obsahuje alfanumerické znaky použité v názvu ovládacího prvku (systémové ovládací prvky prefix „ng_“ neobsahují). Při změně názvu ovládacího prvku je k dispozici tlačítko „Opravit“, které slouží k opravě identifikátoru, a tedy i přejmenování databázového sloupce v databázi. Pro přehlednost a eliminaci případných nedorozumění se doporučuje udržovat identifikátor v souladu s názvem ovládacího prvku. Pokud do databáze přistupují i externí aplikace a například čtou nebo zapisují data do tohoto sloupce, je nutné změnu identifikátoru naplánovat až na vhodnou dobu.
2.8.2. Plný identifikátor
- Plný identifikátor ovládacího prvku obsahuje i identifikátor editačního formuláře, a používá se v tiskových šablonách.
2.8.3. Šifrování
- Šifrování určuje, zda budou hodnoty uložené v tomto sloupci v databázi šifrovány buď pomocí výchozího šifrovacího klíče, nebo pomocí šifrovacího klíče uvedeného ve volitelném konfiguračním souboru „Config\EncryptionKey.txt“.
- Dešifrované hodnoty je možné zobrazit pouze v editačním formuláři, všude jinde v aplikaci se zobrazuje místo konkrétních hodnot uložených v databázi zástupný řetězec „*****“.
- Při dodatečném zapnutí šifrování se všechny hodnoty uložené v tomto sloupci v databázi zašifrují.
- Při dodatečném vypnutí šifrování se všechny hodnoty uložené v tomto sloupci v databázi dešifrují.
2.8.4. Hledání v nahlížecí tabulce
- Hledání určuje způsob, jakým budou záznamy v nahlížecí tabulce po zadání hledaného výrazu či slovního spojení vyhledávané v databázi.
- Textarea podporuje následující typy hledání:
- LIKE (obsahuje) – běžné „case-insensitive“ hledání pomocí klausule „LIKE“
- CONTAINS (MSSQL Full-Text) – fulltextové „case-insensitive“ hledání pomocí klauzule „CONTAINS“, které podporuje databáze MSSQL. Zaškrtnutí této volby automaticky zajistí vytvoření fulltextového indexu v databázi.
- Zakázat – hledání v tomto sloupci je zakázáno, a v nahlížecí tabulce se neobjevuje zaškrtávací tlačítko, kterým by bylo možné sloupec tabulky zahrnout do seznamu prohledávaných sloupců.
- Hledat bez diakritiky – zaškrtnutí tohoto pole zajistí, aby se z hledaného výrazu či slovního spojení zadaného v nahlížecí tabulce nejdříve odstranila diakritika. Aby takové hledání mohlo fungovat, je důležité zajistit, aby se i hodnoty do databáze v tomto sloupci ukládaly bez diakritiky, typicky ve skriptu „OnBeforeSave“ s použitím funkce „REMOVEDIACRITICS()“.
2.8.5. Ostatní
- Změnit typ na
- Rozbalovací seznam nabízí typy ovládacích prvků, na které je podporována konverze ovládacího prvku včetně automatické konverze dat přítomných v databázové tabulce.
2.8.6. Statistika
- Statistika zobrazuje agregovanou informaci o využívání ovládacího prvku napříč celou aplikací.
- Pomocí tlačítka „Statistika“ se zobrazí detailní report všech míst, kde je ovládací prvek použitý nebo referencovaný, včetně možnosti otevření nastavení takového místa či ovládacího prvku.
- Před každou změnou typu ovládacího prvku nebo datového typu, případně před každým smazáním ovládacího prvku z editačního formuláře, se doporučuje důkladně projít statistku ovládacího prvku, a eliminovat případná nedorozumění.
- Před každým smazáním ovládacího prvku z editačního formuláře se automaticky spustí vyhodnocení statistiky. Pokud je ovládací prvek někde v aplikaci používán nebo referencován, je nutné smazání ovládacího prvku znovu potvrdit.
2.9. Picker
- Pro konfiguraci pickeru na tomto ovládacím prvku slouží ikona lupy, umístěná v levém dolním rohu dialogu.
- Detailní popis pickeru je uveden v samostatné příručce Picker.
2.10. Tlačítka „Uložit“, „Uložit a pokračovat v editaci“, „Kopírovat“, „Smazat“ a „Zavřít“
- Tlačítko „Uložit“ – Uložení změn v nastavení ovládacího prvku.
- Tlačítko „Uložit a pokračovat v editaci“ – Uložení změn v nastavení ovládacího prvku a ponechání nastavení otevřeného pro další úpravy.
- Tlačítko „Kopírovat“ – Vytvoření nové kopie aktuálního ovládacího prvku se shodným nastavením, avšak s novým jedinečným identifikátorem.
- Tlačítko „Smazat“ – Trvalé odstranění ovládacího prvku.
- Tlačítko „Zavřít“ – Zavření dialogu s nastavením ovládacího prvku bez uložení změn.
3. Příklady
3.1. Javascriptové funkce
3.1.1. Obecné funkce
- var s = control_GetValue(#ng_#);
- var s = #ng_#.value;
- control_SetValue(#ng_#, s);
- control_SetValue(#ng_#, 'abc');
- ta_Insert(#ng_#, 'abc');
- picker_Open(#ng_#);
3.1.2. Textové řetězce
- #ng_#.value = 'abc';
3.1.3. Zdrojové kódy, HTML, XML, JavaScript, C#, C++
- ta_InitColorWords(['a', 'b']);
- ta_FormatAll(#ng_#);
3.2. Serverové funkce
- SCHEDULEDEFAULTVALUE(ng_, #ng_#)
- FORMATSTRING({0} – {1}, A, B)
- REQUESTQUERYSTRING(abc)
- SUBSTRING(abc, 0, 1)