Editor sloupců (Editor definic sloupců)
Slouží k nadefinování obsahu a vzhledu seznamů zobrazovaných v různých záložkách jednotlivých agend (tj. definice zobrazení sloupců, jejich pořadí atd.). V dalším textu naleznete:
Editor vyvoláte v dané agendě:
- volbou v menu: Nastavení→Zobrazení sloupců→Editor sloupců - platí jen pro hlavní seznam dané agendy. Ve vyvolaném editoru nadefinujete seznam sloupců dle vašich požadavků a tuto definici uložíte pod zadaným jménem. Uložená definice přibude pod zadaným jménem jako volba v příslušné větvi menu:
Příklad menu s nabízeným Editorem sloupců a dvěma uživatelskými definicemi s názvy Definice 1... a Definice 2.... Volba Stav z posledního zavření agendy slouží pro zrušení zobrazování podle pojmenované definice a odpovídá stavu při posledním zavření dané agendy.
- volbou Editor sloupců z lokálního menu vyvolaného nad nadpisem některého z aktuálně zobrazených sloupců
Poté se zobrazí okno editoru, přičemž se do něj zobrazí seznam všech dostupných sloupců, které lze v daný okamžik zobrazit a stav zatržení a pořadí se načte podle obsahu definice zobrazení sloupců aktuálně vybrané pro zobrazení aktuálního seznamu, k němuž byl editor vyvolán. V horní části okna editoru je k dispozici položka Vybraná definice typu skrytý seznam. Zde se zobrazuje název aktuálně vybrané definice, ale můžete si zvolit jinou ze seznamu již existujících definic. Jakmile ve vybrané definici něco změníte, název v položce Vybraná definice zmizí, tím jste upozorněni, že je třeba změny v definici uložit. Pokud není žádná definice aktuálně vybraná pro zobrazení (je zvolena volba Stav z posledního zavření agendy, viz výše), pak pořadí a stav zatržení odpovídají stavu z posledního zavření agendy a položka Vybraná definice je prázdná.
Vyvolaný Editor definic s příkladem uživatelské definice v agendě faktur vydaných
Ovládání:
- Načtenou definici můžete prohlížet, případně upravovat a poté pomocí funkce Uložit jako uložit pod stejným nebo libovolným jiným jménem (pak přibude jako nová v seznamu uživatelských definic).
- U každého sloupce je možno v zatrhávacím poli zatrhnout, zda se má zobrazovat.
- Lze měnit pořadí sloupců pomocí tlačítek
a
nebo z klávesnice kombinací kláves Ctrl+šipka dolů a Ctrl+šipka nahoru, pokud je fokus na příslušném sloupci (což je zvýrazněno). - Pokud k tomu máte přístupové právo, můžete i definovat nové sloupce, či tyto opravovat (např. jim přímo odtud zadat jejich šířku, nastavit formát apod.) nebo mazat.
- Zvolenou definici si lze označit jako výchozí.
- Definici lze uložit do souboru či ze souboru načíst.
- Velikost dialogového okna je uživatelsky nastavitelná a pamatuje se na uživatele globálně pro všechny agendy.
Práce s definicemi sloupců je obdobná práci s definicemi omezení v záložce Omezení.
Dále viz popis položek a Funkce editoru pro práci s definicemi.
V seznamu jsou uvedeny následující položky:
| Název | Popis |
|---|---|
| Zobrazit |
Zatržítkem v prvním sloupci editoru lze nastavit, které sloupce se mají aktuálně v seznamu zobrazovat (zatrženo) a které nikoliv (nezatrženo). Pro rychlejší ovládání: K nastavení "zatržení" lze standardně využít i klávesnici (viz popis mezerníku). |
| Nadpis sloupce | Identifikace sloupce jeho názvem, resp. nadpisem sloupce, který se v případě zobrazení zobrazí jako nadpis sloupce v seznamu. U systémových sloupců je tento název dán výrobcem. U uživatelem definovaných sloupců je název sloupce součástí jeho definice (viz dále definice jednoho sloupce). |
| Šířka sl. |
Aktuální šířka sloupce v pixlech. Šířku sloupců lze paralelně nastavovat i mimo editor sloupců přímo v zobrazeném seznamu uchopením rozdělovníku mezi sloupci (nad každým sloupcem) a tažením myší na požadovanou šířku. |
| Systémový |
Informace, zda jde o systémový sloupec (z dfm definice formuláře dodávané výrobcem) či nikoli. Systémové nelze opravovat ani mazat. Sloupce definované uživatelsky je možno libovolně opravovat i mazat či přidávat další (má-li k tomu uživatel přístupové právo Modifikovat seznam sloupců). |
| Typ | Typ sloupce vyplývající z jeho definice – viz dále popis v dialogu definice jednoho sloupce. |
| Název | Kl. | Popis: |
|---|---|---|
| Uložit jako | - |
Aktuální nastavení uloží jako definici pod zadaným jménem jako tzv. Pojmenovanou definici. Podle tohoto jména pak budete definice vybírat z menu Nastavení nebo z lokálního menu (viz výše), proto by mělo být co nejvýstižnější. Definici můžete uložit jako
Do definice zobrazení sloupců se ukládá nastavené zatržení sloupců k zobrazení, jejich pořadí a šířky jednotlivých sloupců. Práce s definicemi sloupců je obdobná práci s definicemi omezení v záložce Omezení. Takto uloženou definici sloupců je možné přiřadit i uživatelské definici omezení a to funkcí Uložit omezení i s definicí sloupců na záložce omezení. |
| Přejmenovat | - |
Možnost opravit název definice a příznak Globální definice. Uložit definice pod novým názvem jakožto globální může jen uživatel s právem Vytvářet a rušit globální definice sloupců. Pokud je přejmenována výchozí definice, pak automaticky přestane být výchozí a uživatel ji musí jako výchozí znovu označit (důvodem je identifikace definice právě dle jména). |
| Odstranit | - | Vymaže aktuálně vybranou definici (jejíž název je aktuálně zobrazen v omezovacím panelu) ze seznamu definic. Odstranit globální definici může jen uživatel s právem Vytvářet a rušit globální definice sloupců. |
| Výchozí | - |
Jednu z definic lze označit jako výchozí. Je-li nějaká definice nastavena jako výchozí, pak při otevření agendy použije program tuto definici jako implicitní nastavení a rovnou podle ní zaktivuje seznam. Příznak Výchozí se pamatuje na agendu a uživatele, tedy každý uživatel může mít jako výchozí jinou definici. Funkce obsahuje tři podvolby:
Je-li jedna z definic označena jako výchozí, způsobí to, že od toho okamžiku se při otevření této agendy tímto uživatelem nebude obnovovat stav zobrazení podle stavu před posledním uzavřením agendy (viz výklad Naposledy použité neuložené sloupce), ale vždy se znovu načte z definice označené jako výchozí. Poté, co uživatel do agendy vstoupí, může se sloupci manipulovat (měnit pořadí, šířky a ne/zobrazení jednotlivých sloupců), ale jakmile agendu zavře, o tyto změny přijde, protože při příštím otevření se opět sloupce nastaví podle výchozí definice. (Samozřejmě pokud uživatel nastavení definice coby výchozí mezitím nezrušil). |
| Šipka nahoru/dolů
|
Pomocí těchto šipek lze měnit pořadí sloupců v seznamu, tedy v tomto dialogu pořadí jednotlivých záznamů v seznamu sloupců. Aktuální záznam se posouvá ve směru šipky o jeden řádek výše nebo níže. Téhož lze v současnosti a i nadále docílit přímo v samotném gridu myší "přetahováním" sloupců na jiné místo. |
|
| Nový sloupec | - |
K dispozici jen tehdy, pokud přihlášený uživatel má přístupové právo Modifikovat seznam sloupců. Po vyvolání funkce se zobrazí dialogové okno definice sloupce. |
| Opravit sloup. | - | Oprava definice aktuálního sloupce. Funkce je k dispozici pouze tehdy, pokud přihlášený uživatel má přístupové právo Modifikovat seznam sloupců. Opravovat lze také sloupce systémové, pokud má uživatel právo Měnit formátování systémových sloupců. |
| Smazat sloup. | - | Smazání aktuálního sloupce z definice. Funkce je k dispozici pouze tehdy, pokud přihlášený uživatel má přístupové právo Modifikovat seznam sloupců. Mazat nelze systémové. |
| Odstranit formátování | - | Odstraní nastavené formátování aktuálního sloupce z definice. Funkce je k dispozici pouze tehdy, pokud má sloupec (systémový nebo uživatelský) nastaveno formátování. K provedení funkce musí mít přihlášený uživatel přístupové právo Měnit formátování systémových sloupců. |
| Zobrazit sloup. | - | Zobrazení definice sloupce. Zobrazovat nelze systémové, jelikož to nemá význam (jsou definovány přímo v DFM formulářích). |
| Do souboru Ze souboru |
- |
Funkce pro export a import definovatelných sloupců v seznamu (název, typ, výraz / odkaz na položku, barva sloupce, podmínky, ...) a aktuálně nastaveného zobrazení sloupců (viditelnost, šířka, pořadí) do/z XML souboru. Funkce jsou k dispozici pouze pro uživatele, který má přístupové právo Modifikovat seznam sloupců. Metoda, která importuje/exportuje definice definovatelných sloupců (název, typ, výraz / odkaz na položku, barvička sloupce, podmínky, ...) nemá nic společného s definicí, jak jsou sloupce zobrazeny v seznamu (viditelný/neviditelný, šířka, pořadí). Nicméně aby bylo možné vyexportovat i toto, exportuje se navíc i aktuální definice zobrazení sloupců. Při importu se tato definice naimportuje a zpracuje (viditelnost, šířka, pořadí). Pak je jen na uživateli, jestli ji bude chtít zachovat (pak ji musí buď použít nebo uložit pod nějakým jménem) anebo ji nepoužije. Technické řešení: Do exportu se vysílají vždy všechny existující uživatelské sloupce dané agendy (zobrazené v editoru). Definice uložená v XML je strukturovaná dle SiteID dané agendy a v ní dle GridID daného gridu (gridů může být v jedné agendě víc) a dále pro jednotlivé definice sloupců určené pro daný grid. Definice sloupce pak obsahuje jednotlivé elementy s daty shodných jmen jako jsou položky v tabulce, kde jsou definice uloženy (UserGridColumnsDefs). Sloupce jsou identifikovány atributem ColumnID. Při importu z XML souboru se z XML dohledá pouze větev odpovídajícího SiteID a GridID a ve druhém kroku větev prázdného SiteID a odpovídajícího GridID (pro sdílené definice přes více agend). Z této větve se načte kolekce Columns a jednotlivé definice sloupců se aditivně načtou do tabulky UserGridColumnsDefs. Přitom identifikační položkou je ColumnID dané definice. Existující definice se z XML přepíše, nová definice se přidá. Importované sloupce se následně zobrazí v dialogu. Importovat lze samozřejmě pouze definice vytvořené pro danou agendu. |
| OK | - | Aktuální nastavení zatržítek a pořadí sloupců se aplikuje na seznam, k němuž byl editor sloupců vyvolán, a zavře okno. |
| Použít | - | Aktuální nastavení zatržítek a pořadí sloupců se aplikuje na seznam, k němuž byl editor sloupců vyvolán. |
| Storno | - | Zavře editor definic bez uložení provedených změn, s výjimkou případně uložených definic sloupců a s výjimkou nově nadefinovaných nebo importovaných sloupců. |
V této volbě se definuje vlastní obsah buňky (položka z tabulky databáze, položka Business objektu) a dále její vzhled, tj. formát a maska pro zobrazení. Pro tyto definice platí obdobná pravidla jako pro vkládání položek do tiskových sestav.
K dispozici zde jsou následující záložky:
| Obsažené záložky: | Záložka Data | Záložka Formát | Záložka Maska |
|---|
Zde máte možnost zadat definici dat, které se mají ve sloupci zobrazovat. Položky zde nastavitelné:
| Název | Popis |
|---|---|
| Typ |
Položka typu skrytý seznam, ve které zvolíte, jakého typu budou zobrazovaná data, resp. odkud se budou příslušné údaje čerpat. Předvyplňuje se naposledy použitý typ. Možnosti: V tomto případě následující položka, která je k dispozici pod přepínačem, je položka typu skrytý seznam, ze kterého vyberete odpovídající položku. Nabízejí se zde položky, které jsou v daném místě programu k dispozici. Jedná se o položky tzv. datasetu a jsou dané programově, uživatelsky je nelze nijak ovlivňovat (ale bohužel ani prohlížet, jak jsou definovány). V nabídce se zobrazuje z datasetu popisek (DisplayLabel) a v závorce výraz (FieldName) - pro jednoznačnou identifikaci. Nezaměňujte s tabulkami z databáze a položkami těchto tabulek, k nimž existuje automaticky generovaná a dodávaná dokumentace F1Doc.chm. Zde se nejedná o položky z tabulek databáze! Jedná se o jakýsi seznam položek, prostřednictvím kterých se v daném místě programu přistupuje k některým položkám dostupných Business objektů (BO), a jejich prostřednictvím k záznamům databáze. Typicky obsahuje všechny položky editovatelné v záložce Detail a případně některé jen zobrazovatelné. Položky jsou buď datové a ty vedou přímo na některou položku dostupného BO, nebo jsou kalkulované a ty jsou potom dle svého výrazu nějak programově napočítávány. Tedy některé položky zde dostupné naleznete i přes volbu Objekt. Na rozdíl od volby Objekt zde však můžete najít i nějaké položky počítané, které ve volbě Objekt samozřejmě nemohou být k dispozici. Jelikož položky datasetu v daném místě programu jsou vyhodnocené a načtené do paměti, pak se dá obecně říci, že pro položku, která je k dispozici jak přes dataset, tak přes BO, bude použití definice přes tabulku (dataset) výhodnější, jelikož její zobrazení pak bude rychlejší. V tomto případě v následující položce musíte uvést odkaz přímo na datovou položku objektu (BO), resp. nějaký výraz. Výraz můžete zapsat ručně nebo jej můžete sestavit komfortněji pomocí Editoru výrazů, který si můžete vyvolat po stisku funkčního tlačítka Pokud tedy chcete v buňce zobrazovat např. součet hodnot ze dvou jiných položek a takový součet není jednou z napočítaných položek datasetu, pak musíte použít tento typ a nadefinovat si příslušný výraz sami. Rovněž pokud chcete v buňce zobrazovat hodnoty ze svých uživatelsky definovatelných položek, pak musíte použít tento typ, jelikož položky datasetu definovaného výrobcem se samozřejmě nemohou odkazovat na položky uživatelské. Pokud máte zobrazen definovatelný sloupec, který obsahuje definovatelnou položku typu Celé číslo se způsobem editace Skrytý seznam nebo Svislý či Vodorovný přepínač, je místo uložené hodnoty z databáze (1,2,3,.....) zobrazen text ze seznamu hodnot v definici definovatelné položky pro příslušnou položku. Pokud je v databázi uložena hodnota, která je mimo rozsah nadefinovaných textů v definici položky, je v seznamu zobrazen text "Položka výčtu nebyla nalezena". Objasníme na příkladu: Máte nadefinovánu a v definovatelném sloupci zobrazenu uživatelsky definovatelnou položku dle popisu výše, která může nabývat hodnot První, Druhá nebo Třetí. Pokud pak z definovatelné položky hodnotu Třetí smažete, v definovatelném sloupci bude hodnota Třetí nahrazena textem "Položka výčtu nebyla nalezena". Nevýhodou tohoto typu jsou omezené možnosti třídění seznamu podle těchto sloupců. Typ Objekt není k dispozici pro neobjektový dataset, např. paměťový dataset. Pro paměťové datasety se nabízí typ Výraz. V případě, že zobrazená data nejsou spojena přímo s určitým objektem, ale jsou přebírána z paměťového datasetu (MemoryDataset), může být nad daným seznamem k dispozici možnost definování sloupců typu Výraz. Pro typ Výraz je následně možné zadat Položku, Třídu a samotný Výraz.
Pokud chcete poskytnout uživateli možnost definování uživatelského sloupce nad seznamem čerpajícím z paměťového datasetu v rámci skriptování. |
| Nadpis sloupce |
Definice nadpisu pro daný sloupec. Povinná položka. V případě typu "Tabulka" předvyplní při výběru/změně vybrané položky nadpisem definovaným v datasetu. U sloupců typu Objekt předvyplnění není možné, zde musí nadpis sloupce uživatel zadat ručně. Pokud se nezadá třída, ve výrazu lze používat pouze položky datasetu (obdobně jako v případě typu Tabulka) a funkce běžně nabízené v editoru výrazu. |
| Hint | Skrytý popis sloupce, který se zobrazí po najetí myši na záhlaví sloupce.
Hint je k dispozici pouze pro typ sloupce Objekt! |
| Výchozí šířka sloupce | Výchozí šířka sloupce v pixlech, která se použije pro první zobrazení. Později má uživatel možnost šířku sloupce změnit myší přímo v seznamu. |
| Způsob zobrazení |
Možné způsoby zobrazení:
|
| Položka číselníku k zobrazení | K dispozici jen, je-li jako Způsob zobrazení zvolen číselník. Zadáte jméno položky číselníku, která se má v seznamu zobrazovat. Zobrazení číselníkové položky bude vždy v textové formě. |
| Chránit právem Vidět nákupní ceny | Určuje, zda se na daný sloupec bude vztahovat přístupové právo Vidět nákupní ceny, protože pokud jej uživatel nemá, nemůže mít možnost si dané informace zpřístupnit ani definovatelnými sloupci. Nemá význam u sloupců, které jsou daným právem chráněny vždy - viz popis přístupového práva Vidět nákupní ceny. |
Na této záložce si nastavíte formát zobrazení příslušného výsledného údaje. Konkrétní nabídka ovládacích prvků se může lišit v závislosti na zvoleném způsobu zobrazení na záložce Data.
| Název | Popis |
|---|---|
| Zarovnání |
Položka typu typu přepínač, kterou určíte, jakým způsobem chcete výsledný údaj zarovnat (vlevo, na střed nebo vpravo). |
| Vlastní barva písma |
Zatrhávací položka s nabídkou několika desítek systémových barev v podobě skrytého seznamu. Je-li volba zatržena, bude se výsledný text zobrazovat zvolenou barvou, v opačném případě se použije barva z výchozího barevného schématu. |
| Vlastní barva podkladu |
Obdoba předchozí volby, určuje barvu podkladu výsledného údaje (pozadí buňky). Zatržení této volby způsobí deaktivaci volby Vlastní barva podkladu určená výrazem a případné vymazání zadaného výrazu. (Barva může být určena buď konstantní hodnotou platnou pro všechny buňky v daném sloupci, nebo výrazem.) |
| Vlastní barva podkladu určená výrazem |
Kromě systémových barev je možné zadat zcela libovolnou barvu definovanou výrazem. Výraz musí vracet index požadované barvy (celé číslo), které získáte použitím funkce RGBColor nebo HLSColor. Může se jednat o alternativu k podmíněnému formátování. Následující výraz zobrazí buňku s červeným podkladem, pokud je marže záporná, se zeleným podkladem, pokud je marže vyšší než 20 %, a s neutrálním bílým podkladem, pokud se marže nachází v rozmezí 0 až 20 %. if (Margin < 0, RGBColor(255, 127, 127), if (Margin <= 10, RGBColor(255, 255, 255), RGBColor(127, 255, 127))) |
| Obdélníkové vykreslení podkladu |
V případě zatržení této položky podklad ve zvolené barvě nevyplní celou plochu buňky - místo toho se na pozadí vykreslí barevný obdélník se zaoblenými rohy a kolem něj zůstanou prázdné okraje. Barvu podkladu, která se použije pro tento efekt, je možné určit libovolným dostupným způsobem, tedy volbami Vlastní barva podkladu, Vlastní barva podkladu určená výrazem nebo Vlastní barva podkladu definovaná v rámci podmíněného formátování. |
| Tučné písmo |
Výsledný údaj se zobrazí tučně. |
| Kurzíva |
Výsledný údaj se zobrazí kurzívou. |
| Podmínka buňky |
Kromě výchozího formátování definovaného prostřednictvím výše uvedených položek je možné definovat také podmíněné formátování, které se uplatní pouze v případě, že obsah buňky splňuje podmínku zadanou výrazem. Tj. pokud je na daném řádku splněna zadaná podmínka, tak se buňka vykreslí jinak (jinou barvou, tučně apod.). Pro zobrazení typu grafické procento může podmíněná barva přebít základní barvu sloupce. (Např. do 50-ti procent bude mít graf jednu barvu a nad 50% jinou barvu apod.). Výraz můžete zapsat ručně nebo jej můžete sestavit komfortněji pomocí Editoru výrazů, který si můžete vyvolat po stisku funkčního tlačítka Obdobná funkčnost viz podmíněné formátování v MS Excel. Pokud potřebujete nastavit více než dvě různé barvy podkladu pro způsob zobrazení, který vám umožní zadat pouze jednu podmínku, využijte volbu Vlastní barva podkladu určená výrazem. |
Po definici podmínky v podmíněném formátování lze využít volby "Nezobrazovat obsah", pak pokud je podmínka splněna, nebude u daného řádku zobrazována žádná hodnota.
Podmíněné formátování lze použít jak pro sloupce typu Tabulka, tak pro sloupce typu Objekt.
Možnost zadat si formátování výstupu dle vlastních požadavků pomocí zobrazovací masky pro číselnou hodnotu. K dispozici jen pro Způsob zobrazení typu Výchozí.
Tabulkové údaje se zobrazují jen podle masky v dané tabulce.
/
. Rozdíl od předchozí volby viz výše. Výraz může obsahovat kromě matematických a jiných funkcí také 
/
(v závislosti na verzi systému a na nastavení vzhledu). Ve výrazech jsou k dispozici funkce a data z objektů dostupných v daném místě programu, viz funkce a datové položky objektu v editoru výrazů.