Rozšiřující datové struktury | 
								#26 | 
Rozšířené datové struktury můžeme využívat pro přidávání obsahu do editačních formulářů na různých místech.
Obsah můžeme přidávat do editačních formulářů zpráv. Vytvoříme si strukturu, kterou poté v Nastavení → Workflow -> Druhy zpráv přidáme do druhu zpráv, který budeme využívat na domovské stránce ().
Stejně tak ho můžeme přidat do formuláře Dokumentů (). Vytvoříme strukturu a v Nastavení → Workflow → Druhy dokumentů ji přidáme do druhu dokumentu.
Ve formuláři si vyplníme Název a Typ a přesuneme se do Struktura, kam začneme psát kód, který nám bude vytvářet obsah formulářů.
Druhy kolonek
Jednoduchá kolonka
Jednoduchou kolonku vytvoříme takto:
{
        "name": "TEST",
        "fields": {
                "columns": [
                        {"id": "text1", "name": "Poznámka", "type": "string", "len": 100}
                ]
        }
}
- V id přidělíme kolonce id, které může být libovolné. Jakmile začneme kolonku využívat, id už neměníme.
 - name nese jméno, které se objeví vedle kolonky a půjde vidět ve formuláři.
 - Vyplníme type. Pokud to bude „string“, je nutné vyplnit i délku (viz. příklad).
 
Výsledek ve formuláři bude vypadat takto:
				
Roletka
Roletku můžeme vytvořit a naplnit dvěmi způsoby. První je automatické načtení řádků roletky z dat a druhý je ruční vytvoření řádků.
a. Automatické načtení
{
        "name": "TEST",
        "fields": {
                "columns": [
                        {"id": "centre", "name": "Středisko", "type": "enumInt",
                                "enumCfg": {"cfgItem": "e10doc.centres", "cfgValue": "ndx", "cfgText": "shortName"}}
                ]
        }
}
Zde provedeme stejný krok jako u jednoduché kolonky a k tomu přidáme další řádek kde:
- V cfgItem určíme, z jakých dat roletku naplníme.
 - cfgText určí, co se v řádcích roletky bude zobrazovat. V příkladu je to zkrácený název, ale mohl by to být i například název (fullName).
 
b. Ruční výčet
{
 "name": "TEST",
 "fields": {
  "columns": [
{"id": "typ_dapdpp", "group": "dp", "name": "Typ daňového přiznání", "type": "enumString", "len": 1,
        "enumValues": {
                                  "A": "A. za zdaňovací období",
                                  "B": "B. při vstupu do likvidace",
                                  "C": "C. v průběhu likvidace",
                                  "D": "D. za uplynulou část zdaň. obd. předcházející dni zániku při zrušení bez likvidace",
                                  "G": "G. při ukončení činnosti v rámci privatizace v případě stanoveném zvl. zák.",
                                  "H": "H. za období předch. dni zpracování návrhu na použití likv. zůstatku",
                                  "J": "J. za období předch. rozhodnému dni fúze nebo převodu jmění na společníka...",
                                  "K": "K. za období předcházející dni zápisu změny právní formy...",
                                  "L": "L. za období předcházející změně zdaň. období z kal. roku na hosp. rok nebo naopak",
                                  "M": "M. za období počínající dnem vzniku poplatníka",
                                  "O": "O. za období předcházející dni přemístění sídla evr. spol. zapsané do OR z území ČR",
                                  "P": "P. ke dni nabytí účinnosti rozhodnutí o úpadku",
                                  "R": "R. v průběhu insolvenčního řízení,",
                                  "T": "T. ke dni předložení konečné zprávy"
                                }
                        }
                ]
        }
}
- Do enumValues vypíšeme postupně všechny možnosti, které chceme v roletce zobrazit. Oddělujeme je čárkami.
 
				
Reference
Ve formuláři si můžeme vytvořit i kolonku, ve které budeme vybírat údaj z pravého sloupce.
{
        "name": "TEST",
        "fields": {
                "columns": [
                        {"id": "item", "name": "Položka", "type": "int", "reference": "e10.witems.items"}
                ]
        }
}
- Novou hodnotou je reference, kde nadefinujeme odkud se budou data nabízet.