techdoc:pravidla_esoform
Obsah
- 1. Navigace v prostředí
- 2. Základní ovládání generovaných stránek
- 3. Implementace navigace dle potřeb zákazníka
- 4. Syntaxe předlohy HTM bez formy
- 5. Syntaxe předlohy HTM s formou
- 6. Syntaxe předlohy IDC
- 7. Syntaxe předlohy HTX
- 8 Parametry stránky
- 9. Parametry formy
- 10. Parametry hyperlinku
- 11. Odkazy na formulář a mezi formuláři
- 12. Odkazy mezi sestavami a formuláři
- 13. Parametry sestav Stimulsoft
- 14. Vysvětlení pojmů
Navigace v prostředí
Účel navigace | Orientace v informačním systému, propojení interních a externích informačních zdrojů, propojení informačních systémů z různých základních systémů a z různých technologií. |
Prvek | Popis prvku |
Vstupní stránka (Příklad) |
Vstupní stránka do systému může obsahovat odkazy na všechny informační zdroje, které se používají v organizaci. Může obsahovat důležité údaje jako je adresa IČO a DIČ firmy apod.. Jedním z odkazů je odkaz na základní pracovní rám ESO 9. |
Modul (Příklad) |
V systému mohou být definovány stránky, které slouží jako výchozí bod skupiny činností např. správa obchodního případu, správa skladu apod.. V průběhu práce je někdy nutné přecházet z jedné skupiny činností do druhé. K tomu slouží definice modulů. Zavoláním hyperlinku s definicí modulu se modul stane aktivní a všechny další stránky, které budou otevřeny, budou patřit k tomuto aktivnímu modulu. Následující hyperlink nastaví na aplikačním serveru nový aktivní modul a vrátí startovní stránku modulu a případnou záložku na stránce modulu: esoform.asp?TModule=xxx&TBM=BookMark&TURL=Default.htm#BookMark |
Základní rám (Příklad) |
Základní rám je rozdělen na levou, pravou a horní část. Na levé straně je navigační strom činností(kořenových a všech), pravá část slouží jako hlavní pracovní okno systému a horní menu obsahuje tyto základní volby:
|
Stránka uživatele (Příklad) |
V databázi uživatelů je definována adresa pracovní stránky uživatele. Na této stránce jsou zobrazeny činnosti uživatele v systému, odkazy, na kterých uživatel data pořizuje nebo na kterých získává informační výstupy. Jinou stránku bude mít ředitel firmy, jinou hlavní účetní apod.. Volání stránky uživatele lze povést promocí hyperlinku: esoform.asp?FormType=LogUser |
Navigace (Příklad) |
Navigace umožní zobrazit seznam aktivních modulů a aktivních stránek. V navigaci lze provést přechod na startovní stránku
modulu nebo na otevřenou stránku v rámci modulu. Dále lze uzavřít stránky na aplikačním serveru, čímž se uvolní nepotřebné zdroje. Uzavřením
modulu lze uzavřít všechny stránky v modulu. Stránky generované aplikačním serverem rozdělujeme na nezávislé a závislé. Nezávislé stránky jsou ty, jejichž datový zdroj nemá vazbu na jiný datový zdroj jiné generované stránky (není ve vazbě MasterSlave, SlaveMaster, nebo Parameters). U závislých stránek je tomu naopak. Pokud zavřeme stránku, zavřou se i všechny stránky závislé na této stránce. Pokud přejdeme na stránku, která má také závislé stránky, pak se aktivací vybrané stránky její závislé uvolní a zavřou. Pokud u vybrané stránky zvolíme její volání s obnovou dat, provede aplikační server znovu načtení datového zdroje. Volání navigace lze provést pomocí hyperlinku: esoform.asp?FormType=ModuleInfo |
Odhlášení |
Odpojí uživatele od aplikačního serveru a uzavře všechny alokované zdroje, zároveň zobrazí definovanou stránku a případnou záložku na stránce. Volání odhlášení lze provést pomocí hyperlinku: esoform.asp?FormType=UnLogUser&TBM=BookMark&TURL=Default.htm#BookMark |
Základní ovládání generovaných stránek
Prvek | Popis prvku |
Odkazy | Odkazy jsou volby, kterými se provádí přechod v navigaci nebo volání generovaných stránek. Pokud je na serveru otevřena generovaná stránka, potom stejný odkaz pro uživatele otevře tuto již vytvořenou stránku. Obdobně nová aktivace již aktivního modulu nastaví pouze znovu startovní stránku modulu a stav tohoto modulu jako aktivní. |
Vstupní pole | Slouží k pořízení dat. Pokud se jedná o generovanou stránku s přímým datovým propojením, tak provádí kontrolu přípustnosti pořizované hodnoty. Kontrola je prováděna na číselné a datumové hodnoty. Datum lze zadávat s libovolnými oddělovači mezi dnem, měsícem a rokem, rok lze zadat ve zkrácené formě. Stiskem klávesy ESC dojde k návratu původní hodnoty. V polích určených pro výběr z možností lze zvolit hodnotu pomocí prvního písmene. |
Tlačítko |
Datové akce lze spouštět pomocí tlačítek. Tlačítka jsou rozdělena do následujících skupin:
|
Klávesa |
Datový zdroj lze ovládat pomocí kláves, se stiskem klávesy ALT:
|
Informace o stavu formuláře |
Stav formuláře je indikován grafickým symbolem, rozeznáváme následující stavy:
|
Menu formuláře |
Formulář má doplňující menu dalších akcí s datovým zdrojem:
|
Volba zpět | MS IE umožňuje volbu přechodu mezi stránkami směrem dopředu nebo dozadu (volba zpět). Pokud bude použita volba přechodu na hyperlink, který již by pro uživatele volán na aplikačním serveru, zobrazí se stav této otevřené stránky. Zároveň se s přechodem na aktivní stránku zavírají stránky závislé na této stránce. |
Implementace navigace dle potřeb zákazníka
Prvek | Popis prvku |
WEB start | Základní řešení je dodáváno jako WEB ESO9 start, který obsahuje vzor navigace, dále stránky nastavení systému a základní předlohy generovaných stránek. Toto řešení je dodáváno jako podklad implementace pro zákazníka a nelze je měnit pro jednotlivé implementace. Lze pouze využívat předlohy generovaných stránek pro formuláře a sestavy. |
WEB zákazníka |
Implementace systému pro zákazníka spočívá ve vytvoření aplikačního WEBu. Na něm se
vytvoří plná navigace dle potřeb implementace. Týká se především definice stránek uživatelů a definice modulů. Při volání generovaných stránek pro formuláře a sestavy lze využívat stránky uložené na WEBu ESO9 start. Pokud je požadována předloha z WEBu zákazníka a tuto nelze nalézt, provede aplikační server hledání předlohy na ESO 9 start. Hledá se ve stejném adresáři pod stejným názvem předlohy (viz parametry Tpage, TURL). Další prvky jako např. grafické prvky, pozadí apod. se vždy volají relativně k umístění stránky ESOFORM.ASP, takže i tyto prvky je možno modifikovat dle potřeb implementace. Na WEB zákazníka lze připravit předlohy pro generování stránek. Pokud se pod stejným jménem a ve stejném adresáři vytvoří modifikovaná předloha, pak se i pro stránky volané z ESO 9 start použijí modifikované předlohy. |
Syntaxe předlohy HTM bez formy
Účel předlohy HTM bez formy | Slouží k navigaci. Při volání pomocí ESOFORM.ASP lze do stránky doplnit parametry uživatele na aplikačním serveru. |
Volání | esoform.asp?Tpage=name.htm&FormType=Page |
Prvek | Popis prvku |
<%up_jméno_položky%> |
Pokud je jméno položky shodné s jménem parametru uživatele, které eviduje aplikační server, pak se ve stránce nahradí tento parametr hodnotou položky.
Seznam parametrů uživatele lze zjistit zavoláním procedury spUserParams. |
Obrázek (Příklad) |
<img src="xxx" width="xxx" height="xxx" alt="xxx"> |
Scr | Cesta ke zdroji obrázku. Pokud se jedná o definici obrázku ve stránce, která bude generována, potom se uvede relativní cesta vzhledem k umístění esoform.asp. |
Width | Šířka obrázku v bodech. |
Height | Výška obrázku v bodech. |
Alt | Alternativní textový popis obrázku. |
Syntaxe předlohy HTM s formou
Účel předlohy HTM s formou | Vygenerovaná stránka obsahuje formulář sloužící k editaci dat. Data představuje datový zdroj, který je definován SQL příkazem, skládající se ze sloupců a řádků. Vždy je nutné přiřadit datový zdroj zobrazení a k tomu slouží Forma <FORM>.Forma ohraničuje oblast zobrazení přiřazenou datovému zdroji. V jedné stránce může být více forem a tak můžeme editovat více různých datových zdrojů. Pro tvorbu formuláře budeme používat HTML editor MS Front Page. Slovo ohraničené < > označuje výraz syntaxe jazyka HTML. |
Prvek | Popis prvku |
Forma
(Příklad) |
<form name="xxx" method="POST" action="xxx">...</form> Definuje oblast stránky, která bude použita pro editaci dat. V jedné stránce může být více forem. Následují prvky jsou funkční pouze uvnitř formy. |
Name | Určuje symbolické jméno formy, která se využívá především pro odkazy mezi formami. |
Action
(Příklad) |
Udává odkaz, na který se odešle obsah formuláře po stisku tlačítka s vlastností SUBMIT. |
Základní editační prvek (Příklad) |
<input type="text" size="xxx" name="xxx" value=”xxx” id="xxx" tabindex="xxx" title="xxx" mask="xxx" style="xxx" readonly> Umožňuje zobrazení a editaci datové položky. Ve formě může být více editačních prvků. |
Name |
Název určuje jednu ze tří následujících možností:
|
Size | Délka editovacího pole. |
MaxLength | Maximální délka vstupního řetězce, pokud není vyplněno je rovno skutečné velikosti položky v databázi. |
Readonly | Lze pouze zobrazit a nelze editovat datovou položku. |
Required | Pokud je v INPUT elementu v předloze stránky atribut REQUIRED, klient u těchto položek kontroluje před uložením obsah. V případě nevyplnění neumožní uložit. V editoru je za nevyplněnými položkami červený vykřičník. Po vyplnění vykřičník zmizí. Platné pouze v obecném klientovi |
SpellCheck | Internet Explorer má standardně zapnutou kontrolu pravopisu v textových položkách. V exportních/importních položkách však tato kontrola nemá smysl, navíc pro rozsáhlé texty (> 100kB) může dle výkonu klientské stanice taková kontrola významně zdržovat. V položkách TextArea byl proto zaveden atribut "SpellCheck" nabývající hodnot "true" (standardně) nebo "false". Pokud je kontrola pravopisu tímto atributem vypnutá, nebude internetový prohlížeč tuto kontrolu provádět. |
TabIndex | Určuje pořadí ve formuláři. |
Value |
Pro základní hodnoty MEMORY položek. Pokud je uvedena hodnota %jméno_položky%, naplní se jako výchozí hodnota MEMORY položky
hodnota z položky datového zdroje odpovídajícího jména. Pokud je uvedeno %UP_jméno_parametru%, pak se hodnota naplní podle hodnoty parametru uživatele na aplikačním serveru. Pro účely filtrovacích formulářů (tj. formulářového StartFiltru a řádkového RowFiltru v obecném klientovi) lze předat hodnoty pro inicializaci filtrovacích podmínek. Týká se pouze položek typu "text", položky typu "checkbox", "select" a "url" mají výchozí hodnoty filtrovacích podmínek vždy "nefiltrovat". Kromě vlastního předání hodnoty UP parametru lze u vybraných UP parametrů posunout jejich hodnotu o zadané celé číslo. Jedná se o UP parametry UP_DTCURRENTDATE, UP_DTESO_GETDATE a UP_UCET_OBD. Např. hodnota "%UP_UCET_OBD-2" vrátí aktuální účetní období - 2. V kombinaci s řádkovým filtrem s hodnotou "RowFilter=1" lze pak přímo vyfiltrovat data dle hodnot atributu "value" v textových položkách. |
Id | Spojovací název mezi polem a jeho návěštím. |
Title | Pokud pole není spojeno s žádným návěštím, lze pomocí title přiřadit návěští. Viz Návěští. |
Mask |
|
Style |
Pokud je pro danou datovou položku požadován styl odlišný od běžných položek ve formuláři, lze jej uvést v tomto atributu. Styl se zapisuje v syntaxi vlastnost: hodnota;.
Příklad: style="color: pink;" - zobrazí položku jinou barvou style="display: none;" - skryje položku ve formuláři (resp. v zobrazení editor/detail) |
Doc |
V parametru je uveden název sloupce pro uložení jednoznačné identifikace dokumentu v databázi. V editoru a browse jsou pak zobrazeny akce pro práci s dokumenty. Při ukládání dokumentu do dokumentové databáze se volají následující obchodní pravidla:
Procedura má 3 vstupní parametry:
|
Scan | Pokud je uvedena - pouze v kombinaci s atributem DOC, viz výše - v parametru hodnota "1", zobrazí se na formuláři s vazbou na DOC databázi tlačítko "Skener". S jeho pomocí lze naskenovat z TWAIN rozhraní dokumenty přímo do DMS. |
MF_SCANNAME | Pokud je v datovém zdroji formuláře s dokumentem (ve kterém je zobrazeno tlačítko "Skener", viz výše) uvedena položka MF_SCANNAME, bude při skenování výsledný soubor pojmenován dle obsahu tohoto parametru. Pokud je skenováno více stránek najednou (a ukládána každá zvlášť), jsou stránky postupně číslovány od 1 do počtu stránek. V aplikaci ESO9Start je tato položka plněna typem a číslem zdrojového dokladu. |
data-JSfunction |
Položka může obsahovat název javascriptové funkce, která se volá po každém navázání dat na položku (posun dat, volání obchodních pravidel, synchronizace forem, ...). Podrobnější popis funkčnosti viz ESO9wiki.
Příklad: <input type="text" size="15" name="KOD_SUBJEKTU" id="fp3" mask="QP" data-JSfunction="MyScript.js:MyFunction"> Dostupné pouze pro obecného klienta. |
DATA-FILTEROP |
Atribut může obsahovat výchozí filtrovací operátor pro formulář StartFiltru (resp. řádkového filtru). Pouze pro obecného klienta. Příklad (ve filtru se předvyplní podmínka "Účetní období >= (aktuální účetní období - 2)"): <input type="text" name="UCET_OBD" size="7" value="%UP_UCET_OBD-2%" data-filterop=">=" readonly id="fpUCET_OBD"> |
Editace volného textu
(Příklad) |
<textarea rows="xxx" name="xxx" cols="xxx" value=”xxx” id="xxx" tabindex="xxx" title="xxx" readonly >Text</textarea>
Umožňuje editaci volného textu. |
Rows | Počet viditelných řádků. |
Cols | Počet viditelných sloupců. |
Výběr z možností
(Příklad) |
<select name="xxx" size="1" id="xxx" tabindex="xxx" title="xxx" sql="xxx" selected="xxx" data-filter="xxx" readonly > <option selected value="1">první</option> <option value="2">druhá</option> <option value="3">třetí</option> </select> Umožňuje výběr z několika předefinovaných možností. Jednotlivé volby lze definovat buď napevno v HTML předloze, nebo dynamicky z databáze. Pro pevnou definici je třeba v HTML předloze uvést všechny volby výčtem v tagu OPTION. Pro dynamické plnění hodnot z databáze stačí naplnit atribut SQL v tagu SELECT, tagy OPTION se neuvádí. Hodnoty lze dynamicky filtrovat podmínkou uvedenou v atributu data-filter. |
Selected | Předvolená hodnota. Je-li použito dynamické plnění hodnot z databáze, obsahuje explicitně hodnotu předvolené volby. |
Option | Jednotlivé volby. |
Value | Obsahuje hodnotu, která bude zapsána do datové položky, ve formuláři je viditelný pouze popisný text. |
SQL |
Pro dynamické plnění hodnot z databáze obsahuje SQL dotaz pro načtení hodnot pro volby
OPTION. V SQL dotazu musí být v 1.sloupci uvedena hodnota(atribut VALUE), ve 2.sloupci textový popis(obsah tagu
OPTION). Ostatní sloupce budou ignorovány. SQL dotaz může být parametrizován:
|
Size | Slouží pro nastavení počtu viditelných řádků z rozevírací nabídky. Není-li uvedeno, zobrazí se standardně jeden řádek. Užitečné v případě, kdy výběr z nabídky provádím stiskem tlačítka a potřebuji vědět nejen z jakého stavu, ale i do kterého stavu hodnotu přepínám. |
Data-Filter |
Umožňuje filtrovat hodnoty nebo text v combo boxu na základě hodnot(-y) jiné položky/položek. Filtrování se provádí po jakékoli změně ve formuláři. Filtr obsahuje vždy právě 3 položky:
Vyfiltruje hodnoty v comboboxu začínající textem obsahu datové položky KOD_ZBOZI. |
Zaškrtávací políčko (CheckBox)
(Příklad) |
<input type="checkbox" size="xxx" name="xxx" id="xxx" tabindex="xxx" title="xxx" readonly>
Umožňuje zobrazení a editaci booleanovské datové položky(hodnoty typu Ano/Ne). Zaškrtnutý checkbox znamená hodnotu položky 1, odškrtnutý hodnotu 0. V tabulce (browse) i detailu (editor) se checkbox zobrazuje stejně (tj. jako zaškrtávací políčko). Význam jednotlivých atributů je stejný, jako v případě editačního políčka typu TEXT. |
Odkaz (hyperlink) |
<input type="url" size="xxx" name="xxx" id="xxx" tabindex="xxx" > Umožňuje zobrazení odkazu v editoru i browse. Hodnotou položky je kompletní HTML TAG <a href=...>. Pro klienty se formátuje vždy jako read-only položka. |
Obrázek ve formě (Detail) |
<img datasrc="#ESOPAGECTL" datafld="1_OBRAZEKURL" name="OBRAZEKURL" alt="Obrázek nenalezen" style="max-width: 500px; height: 500px;"/> Tag img umožňuje vložit obrázek, který se buď načítá pomocí DMS s maskou "IMGFROMDMS", kdy DOKUMENTFILEGUID je přímo položka v datovém zdroji z DMS <img datafld="1_DOKUMENTFILEGUID" name="DOKUMENTFILEGUID" datasrc="#ESOPAGECTL" alt="Obrázek" mask="IMGFROMDMS" width="300"> nebo se načítá pomocí URL adresy z datového zdroje: <img datasrc="#ESOPAGECTL" datafld="1_OBRAZEKURL" name="OBRAZEKURL" alt="Obrázek nenalezen" style="max-width: 500px; height: 500px;"/> OBRAZEKURL reprezentuje libovolné jméno položky z datového zdroje ve kterém je uložena adresa URL obrázku |
Návěští
(Příklad) |
<label for="xxx" accesskey="x">xxx</label>
Definuje textový popis vstupního pole, používá se při práci s položkami datového zdroje, při volbě setřídění, filtrace a hledání, při volbě řádků pro sestavy. Dále se použije při tvorbě BROWSE jako nadpis sloupců browse. Pokud na textu návěští je hyperlink do číselníku (<a> </a>), musí být hyperlink „uvnitř“ <label …> </label>. Potom je možno z pole, které je s hyperlinkem spojeno, vyvolat číselník klávesou F12. |
For | Spojovací název mezi polem a jeho návěštím. |
Accesskey | Rychlý přístup na položku pomocí Alt/písmeno. |
Tlačítko
(Příklad) |
<input type="button" value="xxx" name="xxx">
Používá se k volání uživatelských akcí s daty nebo pro volání další závislé stránky. |
Type |
|
Title | Bublinová nápověda nad tlačítkem (tooltip). |
Value | Viditelné návěští tlačítka. |
Name |
Název spouštěné uživatelské akce. Akce může mít formu uložené procedury nebo třídy v DLL knihovně (pak je její název složen z prefixu "Actx_",
názvu DLL knihovny a jména třídy, která akci implementuje). Akce se standardně volá pro aktivní řádek datového zdroje. Pokud je za názvem akce
parametr „;TFORM=FNAME”, pak se volání akce provede pro všechny řádky datového zdroje ve formě s názvem FNAME, která je umístěna
ve stejné stránce. Akce dostane parametry jak ze zdrojové, tak z cílové formy. Další parametry viz přenos souboru novější varianta.
|
brwAction |
Pro zobrazení tlačítka v tabulkovém zobrazení (browse) nabývá nenulových hodnot. Zobrazení tlačítka pod tabulkou slouží k urychlení práce v tabulkovém zobrazení.
Pokud je parametr zadán na odkazu v záhlaví formy (caption), bude zobrazen formou tlačítka v navigační liště. Hodnota parameru určuje pořadí, v němž mají být tlačítka v záhlaví seřazena. Týká se pouze nového designu obecného klienta dostupného od v6.0. Příklad: <input type="button" value="Zvyš stav" name="spSDOK_StavInc" brwAction="30"> |
Řídící parametry akce |
Parametry, které umožňují definovat chování formuláře během akce a po ní. Zapisují se do výstupních parametrů uživatelské akce (stored procedura nebo DLL knihovna).
|
Přenos souboru varianta starší
(Příklad) |
Pomocí tohoto prvku lze realizovat zápis a čtení souboru do/z položky. Je zobrazen jako tlačítko s nadpisem z atributu TITLE. Stiskem tlačítka je vyvolán dialog pro výběr nebo zadání souboru. Po výběru a potvrzení cesty a jména souboru je proveden vlastní přenos souboru z/do položky. <INPUT TYPE=FILE NAME=TXTPOLOZKA TITLE="Přenos souboru" DOWNLOAD PATH=MF_STAZENE DEFAULT=MF_SOUBORMASKA > Platné pouze v COM+ verzi. |
Name | Povinné jméno položky do/z které se ukládá text. |
Value | Maska pro vstupní výstupní soubor – konstanta. |
Title |
Text který se objeví na generovaném tlačítku. Pokud není vyplněno TITLE, pak z mají význam pouze parametry NAME a DOWNLOAD. Prvek se generuje jako tlačítko s názvem BROWSE, které volá dialog výběru souboru, a vstupní položka, do které je přenese vybrané jméno souboru. Přenos se provede po opuštění vstupní položky se zadaným jménem souboru k přenosu. |
Download | Pokud je uveden, provádí se zápis do souboru, není-li přítomen, pak čtení ze souboru. |
Path |
Jméno položky kam se ukládá naposledy vybraná cesta k souboru. Po výběru a přenosu se cesta k vybranému souboru zapíše do položky formy zadané v
Atributy |
Default | Jméno položky odkud se bere default maska pro dialog výběru souboru. V dialogu pro výběr souboru je zadána default hodnota a to buď z hodnoty VALUE z předlohy nebo z položky datového zdroje jejíž jméno je uvedeno v atributu DEFAULT (tento atribut má přednost před VALUE). |
Přenos souboru varianta novější
(Příklad) |
Pomocí těchto prvků lze realizovat zápis a čtení souboru do položky:
|
Jméno souboru | Použije se z položky COLUMN_MASK_NAME. |
Obsah souboru | Zapíše se do položky COLUMN_FILE_NAME. |
Přejmenování souboru | V případě načtení souboru z klienta na server se použije parametr RENAME a hodnota z položky COLUMN_NEW_NAME. |
Formát souboru | Pokud je ve formě v datovém zdroji uveden parametr MF_FileFormat, bude se jím řídit kódování ukládaného/načítaného souboru. Parametr může nabývat hodnot "UTF8", "WIN1250" a "Default" (ANSI kódování dle nastavení klientské stanice). |
Odkaz
(Příklad) |
V předloze stránky je možno umístit odkaz naplňovaný z položky formy (např. odkaz na
UPDATE 19.02.2018: Tento postup již nefunguje k otevírání lokálních souborů (cesta file:\\dir\..) v obecném klientovi. Z bezpečnostních důvodů nové prohlížeče neumožňuje programově tyto cesty otevírat. Zápis odkazu:
Např. v předloze Subjekt odkaz na Obchodní rejstřík:
Text odkazu se zároveň doplní do názvu stejné akce vyvolané v kontextovém menu v tabulce/browse. Pokud odkaz text nemá (je tvořen např. ikonou), lze text do akce v browse předat v atributu hyperlinku NAME:
|
Přenos binárních souborů |
Pomocí tohoto prvku lze přenášet binární soubory mezi klientem a aplikačním serverem.
SyntaxeFILE:mf_položka říká, že se soubor má ukládat nebo číst z fyzického adresáře na počítači aplikačního serveru. Adresář a cesta je zadána hodnotou mf_ZdrojovySoubor nebo mf_CilovySoubor. Adresář i cesta jsou relativní a jsou vztaženy k aktuálnímu aplikačnímu webu do podadresáře soubory. Je-li tedy tato cesta zadána např. bin\soubor.bin, tak přenášený soubor bude uložen v adresáři soubory\bin\soubor.bin v aktuálním aplikačním webu. Pokud je třeba soubor vytvořit v jiné cestě, lze využít symbolickou cestu $APPPATH, která bude při zakládání souboru nahrazena reálnou cestou v instalačním adresáři ESO9. Viz příklad níže. Je-li požadováno po uploadu souboru spuštění stored procedury(např.další zpracování přeneseného souboru), je její jméno v položce Akce. Pokud není třeba provádět žádnou další akci, je třeba pole Akce naplnit hodnotou XXX. |
Download |
Z aplikačního serveru na klienta. mf_ZdrojovySoubor – relativní cesta do aplikačního webu (defaultně se soubor pro přenos hledá v podadresáři soubory). mf_VystupniSoubor – absolutní cesta (na klientovi) k požadovanému výstupnímu souboru (kam se mf_ZdrojovySoubor přenese). <input type="text" name="mf_ZdrojovySoubor" title="Cesta ke zdrojovému souboru:" size="30"> <input type="text" name="mf_VystupniSoubor" size="60" DOWNLOADBIN="FILE:mf_ZdrojovySoubor" title="Cesta k výstupnímu souboru:"> <input type="button" value="Download" name="Akce;DOWNLOADBIN=FILE:mf_ZdrojovySoubor"> Pokud je obsah souboru na serveru uložen v libovolné datové položce ve formuláři, resp. pokud soubor na serveru vzniká (např. exportem nebo jinou akcí), lze jej binárně přenést z datové položky do souboru na klientovi vynecháním prefixu FILE:. <input type="text" name="mf_Soubor" DOWNLOADBIN="mf_ZdrojovySoubor" title="Cesta k ISDOC souboru" size="60" id="fpmf_Soubor"> <input type="button" value="Export ISDOC/X" name="Actx_Eso9lib.CISDOCExportOK;DOWNLOADBIN=mf_ZdrojovySoubor"> V takovém případě je výstupní parametr akce Actx_Eso9lib.CISDOCExportOK se jménem mf_ZdrojovySoubor naplněn binárními daty a odeslán na klienta jako soubor se jménem uvedeným v položce mf_Soubor. Na klientovi se pak soubor zpracuje běžným způsobem dle svého typu. |
Upload |
Z klienta na aplikační server. mf_CilovySoubor - relativní cesta (na serveru) do aplikačního webu (defaultně se přenesený soubor vytváří v podadresáři soubory). Pokud je třeba soubor vytvořit v jiné cestě, lze využít symbolickou cestu $APPPATH, která bude při zakládání souboru nahrazena reálnou cestou v instalačním adresáři ESO9. Např. konstrukce UPLOADBIN=FILE:$APPPATH\TMP\MF_CILOVYSOUBOR nahraje soubor z položky MF_CILOVYSOUBOR do adresáře (typicky) c:\Program Files\ESO9\ESO9net\TMP. mf_Soubor – absolutní cesta (na klientovi) k souboru pro přenos. <input type="text" name="mf_Soubor" UPLOADBIN="FILE:mf_CilovySoubor" title="Cesta k cílovému souboru:" size="30"> <input type="text" name="mf_CilovySoubor" title="Cesta k cílovému souboru:" size="30"> <input type="button" value="Upload" name="Akce;UPLOADBIN=FILE:mf_CilovySoubor"> Pokud není třeba obsah souboru z klienta ukládat do souboru na serveru, ale stačí jej použít přímo jako hodnotu položky z datového zdroje (typicky jako vstupní parametr akce na tlačítko), lze z výše uvedené syntaxe vynechat prefix FILE:. <input type="button" value="Upload" name="Akce;UPLOADBIN=mf_CilovySoubor"> V takovém případě se obsah souboru načte do hodnoty datové položky. Pokud se má jednat o textový soubor (a hodnota položky bude dále použita jako datový typ String / VarChar), je třeba v datovém zdroji uvést jeho kódování, tj. přidat položku MF_FileFormat. Pokud kódování v datovém zdroji uvedeno nebude, bude se obsah souboru do datové položky nahrávat binárně (tj. jako datový typ Byte[] / LongVarBinary). Je třeba na to myslet např. při deklaraci parametrů uživatelské akce, do níž se obsah souboru nahraného z klienta předává. |
Navigace mezi stránkami formou záložek | Navigace mezi stránkami je řešena položkami <data> . Pokud více stránek tvoří logickou skupinu, lze navigaci mezi nimi realizovat pomocí horizontálních záložek. Uživatel tak vidí danou činnost v kontextu ostatních. Odkazy na všechny stránky ve skupině jsou uložené v includované stránce tak, aby byly dostupné v záhlaví všech stránek skupinu tvořících. Odkazy musí být uvedeny v párovém DIVu s id="ESO9GroupLinks". Příklad: <body> <div id="ESO9GroupLinks" style="display: none;"> <data value="esoform.asp?TPage=nakup/faphlav.htm&StartFilter=2&HDOKSTYLE=/* definice barvy pro neuhrazené FPU po splatnosti */ case when (vlHDokUhrazen < 2) and dtsplatno < getdate() then concat(char(35), 'ff0000') else null end as mf_rowstyle,&SDOKSTYLE=&WHERE=WHERE IDTYPDOK=56 AND IDHDOK_VZOR=2&IDTYPDOK_STAVHDOK=56&ORDERBY=ORDER BY CIS_DOK&VZORTEXT=FPU režijní tuzemská&RelType=PARAMETERS&Cinnost=2. 1. 3. 1&TModule=Nákup&DataAction=LAST&Title=FPU režijní tuzemská">FPU režijní tuzemská</data> <data value="esoform.asp?TPage=nakup/FaPSloz&RelType=Same&brwAction=10">Složky</data> <data value="esoform.asp?TPage=ucet/qUcZa&RelType=Same">Rozúčtování</data> </div> </body> Include se uvádí ihned za TAGem <form>. Důvod je, že server musí odkazy zpracovat a proto musí být uvedeny pod tagem <form>, kam na ně dosáhne. Příklad: <body> <form method="POST" name="HDOK"> <%$INCLUDE:Include\FPULinks.htm%> ... Rozšíření o druhou úroveň Navigaci pomocí záložek lze rozšířit i o druhou úroveň. Tedy na první úrovni záložek vybereme stránku a v té stránce budeme moci vybírat ještě podsekce (další stránky související s "nadřazenou sekcí". V principu jde o to, aby data položky toho seznamu měly každá unikátní ID, na toto ID lze připojit další úroveň tabů pomocí data-relation vloženého do divu. ID další úrovně je ESO9GroupLinks2(3,4,5...) kdy každý další div odkazuje na druhou úroveň jiné položky První úroveň je stejná, změní se jen id u položky, která má druhou úroveň: <div id="ESO9GroupLinks" style="display: none;"> <data value="esoform.asp?TPage=ucet/qUcZa&RelType=Same" id="rozuct" >Rozúčtování </a> <data value="esoform.asp?TPage=nakup/FaPSloz&RelType=Same&brwAction=10" id="slozky">Složky</a> Druhá úroveň se odkazuje v divu na položku z první úrovně <div id="ESO9GroupLinks2" data-relation="rozuct" style="display: none;"> <data value="esoform.asp?TPage=ucet/qUcZa&RelType=Same">Podsekce Rozúčtování" </a> <div id="ESO9GroupLinks3" data-relation="slozky" style="display: none;"> <data value="esoform.asp?TPage=ucet/qUcZa&RelType=Same">Podsekce Složek" </a> toto se vše píše do jednoho souboru a ten se dává includem do všech stránek Zpřesnění identifikace tabu s konkrétní stránkou Jelikož se záložky vkládají do všech stránek, ve kterých se vyskytují a na ty stránky je možné vejít i jiným způsobem, než přes zmíněné záložky tak není příliš možností rozpoznat, zda aktuální stránka patří k aktivní záložce. Proto je zde vnitřní mechanismus rozeznávající .htm samotné stránky. Nicméně implementačně je možné využít stejné .htm stránky pro více záložek, typicky se odkazuje na stejnou stránku s různým SQL ANDWHERE parametrem. Toto lze řešit úpravou hyperlinku vedoucího na tuto stránku. Jde nejen o hyperlink záložky, ale i ostatní hyperlinky vedoucí na stránku externě: Do hyperlinku se doplní &activetab=IDzáložky pro jednu úroveň záložek a pro dvě úrovně pak &activetab=IDzáložky;IDzáložkyDruhéÚrovně. Do všech hyperlinků tedy vkládáme vždy ID záložek, které se označí po stisku toho hyperlinku. Pak úprava výše uvedeného příkladu vypadá takto: <div id="ESO9GroupLinks" style="display: none;"> <data value="esoform.asp?TPage=ucet/qUcZa&activetab=rozuct;podrozuct&RelType=Same" id="rozuct" >Rozúčtování </a> <data value="esoform.asp?TPage=nakup/FaPSloz&activetab=slozky;podslozky&RelType=Same&brwAction=10" id="slozky">Složky</a> <div id="ESO9GroupLinks2" data-relation="rozuct" style="display: none;"> <data value="esoform.asp?TPage=ucet/qUcZa&activetab=rozuct;podrozuct&RelType=Same" id="podrozuct">Podsekce Rozúčtování" </a> <div id="ESO9GroupLinks3" data-relation="slozky" style="display: none;"> <data value="esoform.asp?TPage=ucet/qUcZa&activetab=slozky;podslozky&RelType=Same" id="podslozky">Podsekce Složek" </a> |
Vícezáložkový editor
(Příklad) |
Obsah formuláře editoru lze vertikálně členit do záložek pro lepší přehlednost. Jednotlivé stránky editoru se definují tagy <hr>, tyto tagy musí být vloženy
mimo tabulky. Strana vícestránkového editoru začíná HR tagem s class=EsoTabStart, končí koncem formy nebo dalším tagem HR s class=esoTabStart nebo tagem HR s class=EsoTabEnd.
Části, které nejsou uvnitř stránek, jsou viditelné vždy. Na začátku zobrazení editoru je aktivní první strana. Názvy tagů pro přepínání jednotlivých stránek se zadávají jako id
u tagu HR s class=EsoTabStart.
Příklad: <hr id="Základní údaje" class="EsoTabStart" > |
Horizontálně uzavíratelné bloky v editoru |
Vybrané položky editoru mohou být uzavřené v samostatných horizontálních blocích/sekcích, které je možné uživatelsky otvírat (ve výchozím zobrazení jsou uzavřené). Tyto
sekce jsou uvozeny tagem HR se třídou class="EsoHiddenBlockStart" a končí tagem HR se třídou class="EsoHiddenBlockEnd". Atribut ID v uvozovacím tagu HR slouží jako nadpis bloku. Uvnitř
bloku by měla být tabulka.
Příklad: <hr id="Základní údaje" class="EsoHiddenBlockStart" > ... <hr id="Základní údaje" class="EsoHiddenBlockEnd" > |
<%$INCLUDE:adresa.htm%>
(Příklad) |
Tento parametr do cílového formuláře vtáhne uvedenou HTML stránku na pozici umístění parametru. Například adresu firmy do tiskových obchodních formulářů. |
<%$INCLUDE:<stránka>
[:podmínka]%> |
Podmíněné vtažení HTML stránky. Za zadání cesty k includovanému souboru je možno zadat podmínku (oddělenou dvojtečkou) ve tvaru shodném s podmínkou v příkazu %IF z HTX. V podmínce se dá odkazovat na parametry uživatele a na parametry na odkazu nebo z vazby. Include se provede pouze při splnění podmínky. |
<%$INCLUDEHTML:<HTML kód>
:podmínka%> |
Podmíněné vtažení HTML kódu do stránky stránky podobně, jako v případě $INCLUDE: pouze s tím rozdílem, že HTML fragment se nevtahuje do stránky z jiného souboru, ale je přímo uveden v tomto TAGu. Podmínka je v tomto případě povinná, jinak by řešení nedávalo smysl. V některých případech může být toto řešení přehlednější, než používat množství podmíněně includovaných souborů. |
include Dashbordu |
Vtažení dashbordu do stránky stránky. Vložení se provede zapsáním tagu div s maskou dashbordinc. Uvnitř tagu je a href který udává dashbord, který se má zobrazit. Div musí být vložen uvnitř formy.
Př.: <div id="dashbord" mask="dashbordinc" style="width: 100%; height: 100%;"> <a href="esoform.asp?tpage=xxx.htm&RelType=Parameters&Formtype=DashOk&Requery=1" style="display:none;">Dashbord</a> </div> |
Syntaxe předlohy IDC
Účel předlohy IDC
(Příklad) |
SQL dotaz pro sestavu je uložen v souboru s příponou IDC. Obsahuje definici SQL dotazu a jméno stránky, ve které je cílová podoba zobrazení.
V textu SQL se mohou vyskytnou parametry, které budou převzaty z volání hyperlinku nebo z předchozího datového zdroje, tyto parametry budou v syntaxi označeny procenty %jméno_parametru%. V souboru může být více SQL příkazů. Každý pak má v tiskové podobě svou vlastní oblast zobrazení. |
Prvek | Popis prvku |
Datasource | Například „eso9sql“, aplikační server s tímto parametrem nepracuje. |
SQLStatement: | Určuje začátek SQL příkazu, jednotlivé řádky mají na začátku +. Jeden SQLStatement odpovídá jednomu úseku <%begindetail%>… <%enddetail%> v HTX předloze, ve stejném pořadí, v jakém je v předloze zapsán. |
Parametrizace SQLStatementu | SQLStatement lze parametrizovat, pokud se v jeho syntaxi objeví názvy položek označených %jméno_položky%, tyto části se aplikační server pokusí zaměnit za hodnoty položek z předchozí formy nebo z hodnot uživatele. Takto upravený SQLStatement se pak dále volá na databázovém serveru. |
Template | Obsahuje adresu a jméno HTX předlohy. |
Template: %TPage% | Označuje, že v hyperlinku, který volal IDC předlohu se vymění parametr TPage podle výsledku SQLStatementu a pro takto upravený hyperlink se pokračuje ve volání. Slouží pro volání různých IDC předloh v závislosti na vyhodnocení SQL statementu |
Parametrizace Template | Obdobně jako SQLStatement lze parametrizovat i Template a to buď celý nebo jeho část, potom se použije jiné HTX pro stejné IDC. Například pro tisk formulářů v cizím jazyce. |
Syntaxe předlohy HTX
Účel předlohy HTX
(Příklad) |
Tisková podoba sestavy je uložena v souboru s příponou HTX. Tato definice stránky umožňuje vkládat v MS Front Page speciální symboly potřebné pro zobrazení dat. Zobrazovaná oblast se pro datový zdroj vypíše opakovaně pro všechny řádky datového zdroje, který byl vytvořen vyhodnocením SQL statementu v IDC předloze. |
Prvek | Popis prvku |
<%begindetail%> | Začátek oblasti zobrazení dat pro jeden datový zdroj. |
<%enddetail%> | Konec oblasti zobrazení dat pro jeden datový zdroj. |
<%name:length:mask%> |
Zobrazení položky řádku datového zdroje, "name" odpovídá názvu sloupce v datovém zdroji. Parametr LENGTH udává počet znaků, které budou pro položku zobrazeny, případně na ně bude doplněna její délka. Parametr MASK udává tvar výpisu položky:
;TH – pro číslo vypíše oddělovače tisíců. |
<%idc.name:length%> |
Zobrazení parametru, který byl předán při tvorbě datového zdroje z hyperlinku nebo vazbou PARAMETERS.
Parametr může být i vně bloku <%begindetail%><%enddetail%> |
Podmíněné zobrazení
(Příklad) |
Umožní na základě vyhodnocení podmínky pro každý řádek datového zdroje změnit způsob zobrazení datového výstupu. Funguje pouze uvnitř bloku <%BEGINDETAIL%><%ENDDETAIL%>. Může být vnořeno až do úrovně 15. |
Syntaxe IF |
<%IF podmínka %> ...... <%ENDIF%> <%IF podmínka %> ...... <% |
Syntaxe podmínky | Podmínka je logický výraz obsahující názvy položek databáze, které jsou výsledkem SQL statementu z IDC nebo systémových položek, konstanty, závorky a logické operátory. Vyhodnocuje se podle závorek a zleva doprava. Při vyhodnocování výrazu se hodnoty položek převádějí na stejný typ podle první položky. Výjimkou jsou operátory CONTAINS, kdy se převádějí na string. |
Operátory |
|
Konstanty |
|
Systémové položky |
|
<%$INCLUDE:adresa.htm%>
(Příklad) |
Tento parametr do cílového formuláře vtáhne uvedenou HTML stránku na pozici umístění parametru. Například adresu firmy do tiskových obchodních formulářů. |
<%$INCLUDE:<stránka>
[:podmínka]%> |
Podmíněné vtažení HTML stránky. Za zadání cesty k includovanému souboru je možno zadat podmínku (oddělenou dvojtečkou) ve tvaru shodném s podmínkou v příkazu %IF z HTX. V podmínce se dá odkazovat na parametry uživatele a na parametry na odkazu nebo z vazby. Include se provede pouze při splnění podmínky. |
<%$PAGEBREAK%>
(Příklad) |
Pokud je vloženo uvnitř sekce <%begindetail%><%enddetail%>, provede se po vypsání celého řádku odstránkování, tzn. vygeneruje se patička stránky, odstránkování, hlavička stránky. Pokud je vloženo mimo sekci, provede se ihned odstránkování a negeneruje patička a hlavička stránky. (Hlavička a patička stránky viz parametry stránky). Typické použití parametru je spolu s podmíněným zobrazením. |
Zobrazení datumu v XLS | Pro správné zobrazení datumu při parametru PRINTDEST=XLS musí mít buňka tabulky atribut CLASS=XLSDATE. |
Odeslání sestavy jako email
(Příklad) |
Pokud se ho kódu HTML umístí následující sekce, potom se při volbě CTRL/T a odeslání jako mail nabízí uvedená adresa. Adresu lze parametrizovat pomocí syntaxe
MAILTO z výsledku SQL dotazu. Dále lze parametrizovat předmět zprávy pomocí syntaxe MAILSUBJECT.
<xml id="Eso9DocInfo" > <eso9doc> <mailto><%EMAIL%></mailto> <mailsubject>Faktura č.<%CIS_DOK%></mailsubject> </eso9doc> </xml> |
Parametry stránky
Účel parametrů stránky |
Jsou vždy uvedeny v záhlaví stránky (mezi tagy <head>…</head>) a obsahují parametry, které platí pro všechny formy stránky. <meta name="xxx" content="xxx"> |
Parametr (name) | Popis parametru (content) |
TITUL |
Obsahuje titul stránky, který se objeví v Navigaci. Definuje se: <title>Name</title> |
CLIENTPRINT | Definuje místo tvorby generátorových sestav v obecném klientovi. Pokud je nastaveno "0", sestava se bude kompletně sestavovat a renderovat na straně serveru. Její zobrazení tak bude rychlejší a to zejména na mobilních zařízeních s omezeným výkonem. Na druhé straně tento typ renderování neumožňuje použít v sestavě interaktivní prvky, jakými jsou třídění, uzavírání sekcí a zobrazení panelu se záložkami. Pokud je tedy třeba v sestavě používat některé z interaktivních prvků, je třeba přepnout generování sestavy na klienta (hodnota "1") a to buď parametrem "ClientPrint=1" na odkazu nebo parametrem "Typ tvorby=Klient" v definici sestavy. V kombinaci s parametrm mf_FileName umožňuje definovat uložení souborové sestavy (PDF, XLS, DOC, JPG) na straně serveru či klienta (ClientPrint=1). |
CLOSEFORMS (Příklad) |
Pokud je nastaveno "1", pak po odeslání vygenerované stránky klientovi proběhne uzavření zdrojů na aplikačním serveru. Parametr je funkční pouze při současném nastavení CLIENTPRINT=0. |
DIRECTPRINT |
Podrobnější příklady použití jednotlivých hodnot parametru DirectPrint najdete na naší wikipedii v tomto článku. |
ESOHELP | Lze nastavit hyperlink, který označuje místo, kde lze získat nápovědu ke stránce, lze ji vyvolat stiskem klávesy F1 ve vygenerované stránce. |
ESOLANGUAGE |
Pokud je v content jeden z podporovaných jazyků SK, EN, DE, PL, HU překládá se stránka do cílového jazyka použitím obrácené překladové funkce. Pokud je při překladu z jiného jazyka nalezeno více shodných výrazů, použije se první z nich.
Je-li v content jazyk CZ nebo nepodporovaný kód, přepínač se ignoruje. Pokud je současně v předloze uveden přepínač NOTRANSLATE, má přednost před ESOLANGUAGE. Umožňuje tvorbu předloh stránek v jiném jazyce než CZ tak, aby správně probíhal překlad do ostatních jazyků. |
FRAGMENT | Je-li stránka použita jako eso include (<%$include:… %>, pak se nevkládá celý její obsah, ale pouze vnitřní HTML první nalezené formy. |
HASHJSFUNCTIONS | Pokud je na aplikaci zapnutá ochrana hyperlinků a ve stránce jsou použity spec. skripty obsahující odkazy (strom činností, panel s událostmi), budou v případě použití META TAGu překódovány i odkazy ve skriptech. |
KFPRINT | Parametr se uplatní při tisku formulářových a kompozitních sestav. Nabývá hodnot KF – vyvolán integrovaný prohlížeč, HTML – vytiskne výstup do HTML, Print – zavolá tiskový dialog. |
NOTRANSLATE |
Je-li vyplněno "1", neprovede se překlad stránky. Používá se, pokud je stránka vytvořena v jazyce, ze kterého nelze překládat nebo pokud jde o správcovskou stránku, kterou nepoužívají uživatelé.
Viz též přepínač ESOLANGUAGE. |
ONLYHTML | Je-li vyplněno "1", pak se do HTML stránky sestavy nevkládá žádná klientská ActiveX komponenta. |
PAGEBREAK
(Příklad) |
Je-li vyplněno "Auto", pak se pro opakovaný tisk po každé vygenerované stránce provede odstránkování. |
PRINTDEST
(Příklad)S |
Je-li vyplněno "XLS" nebo "PIVOT", pak se tisk provede do komponenty typu Excel, resp. PIVOT tabulka/graf ve webovém prohlížeči.
Je-li vyplněno "EXPAND", pak se na klientovi projde výsledný tvar sestavy a na místa hyperlinků ESOFORM.ASP?TPAGE=*.IDC se vtáhne odpovídající další sestava. (Parametr EXPAND je funkční pouze při současném nastavení CLIENTPRINT=1.) Je-li vyplněno "CSV", pak se provede export do CSV a výsledný soubor se přenese na klienta, kde se uloží do složky pro stažené soubory. Formát exportu lze parametrizovat na odkazu pomocí parametrů:
Pro sestavy typu Stimulsoft:
Další typy výstupů:
|
PAGEFOOTER
(Příklad) |
Je-li vyplněno "1", pak se poslední forma ve stránce použije jako patička sestavy. |
PAGEHEADER
(Příklad) |
Je-li vyplněno "1", pak se první forma ve stránce použije jako hlavička sestavy. |
READONLY | Je-li vyplněno "1", pak se v ve všech formách na stránce nastaví všem položkám příznak READONLY, nezobrazí se editační tlačítka v EDITORu a BROWSE neumožní editaci dat. |
REFRESHBAR | Je-li vyplněno „None“, pak se v dočasných sestavách nezobrazí navigační lišta umožňující nové generování dočasné sestavy. |
REPEATFOR
(Příklad) |
Lze použít pouze pro FormType=Report. Content může mít hodnoty:
|
REQUERY | Je-li vyplněno "1", pak se při aktivaci již vytvořené stránky provede obnova dat. |
TEMPPRINT
(Příklad) |
Je-li vyplněno "1", pak se nejdříve zjišťuje, zda sestava již nebyla generována a uložena dříve, pokud ano, předá se na klienta pouze HTML stránka takto uložené sestavy, jinak se generováním vytvoří dočasná sestava a její HTML tvar se uloží na server, ta se pak odešle klientovi. Je-li vyplněno "2", pak je navíc sestava rozlišena pro jednotlivé uživatele. |
TXTPRN | Aktivuje ve stránce textový tisk (pro jehličkovou tiskárnu) z obecného klienta pomocí služby ESO9 Support Service. V kontextovém menu stránky se objeví položky "Textový tisk" a "Konfigurace textového tisku". |
Parametry formy
Účel parametrů formy |
Jsou vždy uvedeny v záhlaví formy (mezi tagy <form>…</form>)a obsahují parametry, které platí pro celou formu. <input type="hidden" name="xxx" value="yyy"> |
Parametr (name) | Popis parametru (value) |
BROWSEFIELDS |
Umožňuje nadefinovat si viditelné sloupce browse (tabulky) přímo v HTML předloze formuláře. Pokud tento parametr není uveden, bude záviset výchozí zobrazení browse na zobrazení editoru, tj. počet a pořadí sloupců bude dáno počtem a pořadím položek v HTML předloze editoru (resp. šířku sloupců a popř. i jejich viditelnost v browse lze nastavit maskou BrwSize). Změny pořadí a viditelnosti sloupců v browse lze samozřejmě dosáhnout i konfigurací.
Příklad: <input type="hidden" name="BROWSEFIELDS" value="KOD_SUBJEKTU;DTVYSTAVENO;CIS_DOK"> Pokud k formuláři neexistuje výchozí konfigurace, zobrazí se browse podle popisu z HTML předlohy, pokud k formuláři bude uložena výchozí konfigurace, bude mít tato přednost. |
EDITMS |
Parametr nastavený na hodnotu 1 umožní editaci při volání formy jako číselníku (ve vazbě SlaveMaster). Přenos vybraného řádku do pořízené formy se musí provést z menu formy. Např. EDITMS=1. Platné pouze v COM+ verzi. |
FILTERFIELDNAMES |
Seznam filtrovacích položek ve vazbě mezi formami, seznam je oddělený čárkami (pouze pro RelType="SlaveMaster"). Např. při vyvolání číselníku zboží na skladě do složky dokladu je zadané číslo skladu, číselník zboží na skladě musí být filtrován přes toto číslo skladu |
FORMTYPE
(Příklad) |
Typ zobrazení formy :
|
HIDENFIELDS |
Parametr umožní načítat hodnoty sloupců datového zdroje do hyperlinků nebo obrázků, aniž by tyto sloupce byly ve stránce viditelné. <input type="hidden" name="hiddenfields" value="polozka1;polozka2;...polozkax" > |
MAXDATAROWS |
Parametr umožní omezení datového zdroje na definovaný počet řádků uvedený v hodnotě parametru. Zabrání tím neefektivnímu zatěžování databázového serveru při práci nad rozsáhlými daty. Např. MAXDATAROWS=100 |
MULTIPAGE (Příklad) |
Vícestránkový editor je definován nad formou v předloze zadáním "1". Jednotlivé stránky editoru se definují tagy <hr>, tyto tagy musí být vloženy mimo tabulky. Strana vícestránkového editoru začíná HR tagem s class=EsoTabStart, končí koncem formy nebo dalším tagem HR s class=esoTabStart nebo tagem HR s class=EsoTabEnd. Části, které nejsou uvnitř stránek, jsou viditelné vždy. Na začátku zobrazení editoru je aktivní první strana. Názvy tagů pro přepínání jednotlivých stránek se zadávají jako id u tagu HR s class=EsoTabStart. |
NAVBAR
(Příklad) |
Není-li parametr uveden nebo je jeho hodnota prázdná, pak jsou zobrazena všechna tlačítka a povoleny všechny akce v BROWSE. Hodnota může obsahovat kombinaci následujících slov oddělených středníky. Výskyt slova znamená, že se daný prvek nezobrazuje.
|
PACKFORM | Je-li vyplněno "1", pak se forma zobrazí ve sbaleném stavu. |
READONLY | Je-li vyplněno "1", pak se ve formě nezobrazí editační tlačítka a BROWSE neumožní editaci dat. |
RELATIONACTION
(Příklad) |
Jméno uložené procedury, která je při vazbě mezi formami definována v cílové formě, a vyvolá se při akci FCHANGE nad MF_položkami v cílové formě. Jako vstupní parametry dostává hodnoty ze zdrojové i cílové formy. Výstup nastavuje ve zdrojové formě pouze MF_položky. |
RESYNCALL | Jeho uvedení v parametrech řídící formy s libovolnou hodnotu (například 1) udává, že při provedení akce z podřízené formy, která vyvolá obnovu dat se v řídící formě, obnoví v řídící formě všechny sloupce aktuálního řádku. Pokud parametr není uveden, obnovují se pouze sloupce ze základní tabulky pohledu. Spočtené položky pohledu v řídící formě musí mít předponu “CF_“. |
RELTYPE
(Příklad) |
Při práci s daty je třeba zobrazovat datové zdroje, které mají nějakou vazbu na data již zobrazená. Vztah mezi datovými zdroji může nabývat následujících možností :
|
ROWSCOUNT | Určuje počet řádků při zobrazení formy jako browse. |
SETFIELDNAME | Definuje vazební datovou položku mezi formami, pokud není vyplněna, odvodí se na aplikačním serveru. Odvození se provede tak, že se do SETFIELDNAME nastaví jméno toho sloupce Master formy, který určuje jednoznačný klíč datového zdroje Master formy (tj. první sloupec datového zdroje formy). Hodnota může být parametrizována hodnotou položky z aktuálního řádku zdrojové formy (pokud je forma ve vazbě); parametr se uvádí v syntaxi %PARAMETR%. |
SETFIELDNAME2 | Definuje datovou položku zdrojové formy, do níž se přenáší hodnota položky SETFIELDNAME z cílové formy. Pokud není vyplněna, použije se položka definovaná v parametru SETFIELDNAME. Umožňuje použití číselníkových forem nezávislých na názvech položek v obou formách (slave i master). |
SFORM (Příklad) |
Jméno formy, na kterou je vazba. Tato forma musí být umístěna ve stránce vždy dříve. Pokud není uvedeno, rozumí se první forma ve stránce. Jen při RelType=MasterSlave. |
SIMPLEFILTER | Seznam položek formuláře (oddělený středníkem), které se uživateli nabízí ve zjednodušeném filtrovacím formuláři. Zjednodušený filtr obsahuje pouze vyjmenované položky (narozdíl od komplexního filtrovacího formuláře, který je kopií editoru) zobrazené v jediném sloupci. Ze zjednodušeného filtrovacího formuláře se lze tlačítkem přepnout na komplexní filtr. |
STARTFILTER (Příklad) |
Aktivace vstupního filtru :
|
VERIFYSAVE (Příklad) |
Při editaci v režimu BROWSE dojde k dotazu na potvrzení akce před uložením nového nebo změněného řádku. Při VERIFYSAVE=1. |
VIEW
(Příklad) |
Definuje datový zdroj v syntaxi jazyka SQL. Jako datový zdroj lze použít buď výběrový dotaz nebo uloženou proceduru (stored procedure).
V případě použití výběrového dotazu se předpokládá syntaxe "SELECT sloupce FROM tabulka/pohled WHERE podmínky ORDER BY třídění". Pokud parametr VIEW obsahuje jen jedno slovo, přidá k němu aplikační server "SELECT * FROM ". Pokud je v něm výraz %jméno_parametru%, potom se při vytvoření formy nahradí vstupním parametrem formy buď z hyperlinku nebo z předchozí formy při vazbě PARAMETERS. Pokud je uvedeno %UP_jméno_parametru%, pak se hodnota naplní podle hodnoty parametru uživatele na aplikačním serveru. Pokud je jako datový zdroj formy použita uložená procedura, může mít dvojí syntaxi:
|
VIEWNAME
(Příklad) |
Jméno pohledu, jehož obchodní pravidla se mají aplikovat. Lze uvést názvy až dvou pohledů oddělených ";". Všechna pohledová obchodní pravidla se tak budou spouštět 2x v pořadí, ve kterém jsou pohledy v parametru uvedeny. Pokud není uvedeno a VIEW je jedno slovo, pak je VIEWNAME rovno VIEW . |
REFRESH_ALL_FORMS |
Příklad použití: <input type="hidden" name="Refresh_All_Forms" value="hodnota">. Význam: je-li v dané formě zadán tento parametr, provede se po definované akci obnova datových zdrojů všech forem ve stránce.Pozor! V závislosti na počtu forem ve stránce a množství dat v nich může tento parametr významně zpomalit odezvu aplikace. Hodnoty parametru je bitová mapa s následujícími významy:
|
SHOW_2ND_STARTFILTER |
Příklad použití: <input type="hidden" name="Show_2nd_StartFilter" value="1">. Význam: ve větších formách může být přehlednější zobrazit ve StartFiltru tlačítka Filtr/Vložit/Smazat nejen na zápatí, které již může být mimo monitor, ale i v záhlaví filtru, které je vždy vidět. Uvedením tohoto parametru s hodnotou "1" se zdvojí tlačítka i do záhlaví formy. |
DROPTARGET |
Příklad použití: <input type="hidden" name="DropTarget" value="Doc">. Význam: je-li v dané formě zadán tento parametr, může forma sloužit jako cíl akce drag&drop, tj.lze do ní vkládat soubory nebo adresáře přetažením myší. Hodnoty parametru:
|
NOREFRESH |
Příklad použití: <input type="hidden" name="NoRefresh" value="1">. Význam: potlačí automatickou obnovu dat ve formě po vložení nebo editaci řádku. Jedná se o potenciálně nebezpečnou akci (vlivem třídění nebo filtrování může editovaný řádek změnit svou pozici nebo zcela vypadnout z datového kurzoru), je tedy třeba jej používat s rozvahou. Ruční obnovu dat ve formě lze samozřejmě nadále provádět. |
MAXDATAROWSALLOW |
Maximální počet řádků, které smí načíst datový zdroj aktivní formy (netýká se sestav). Není-li ve formě uveden, bere se hodnota z parametrů aplikace. Počet vět, které by se na základě aktuálních filtrovacích podmínek načetly, si určí aplikační server ještě před vlastním načtením dat. Omezení se uplatní nejen při načtení dat do formy (a to buď do hlavní formy ve stránce, nebo do libovolné závislé formy), ale i při vkládání nové věty nebo kopii stávající (v obou případech se kontroluje, zda by nová věta již nepřekročila zadaný limit). Výhoda uvedeného řešení před ostatními možnostmi založenými na pevném omezení (MaxDataRows) tkví v tom, že nejsou-li splněny podmínky (počet řádků), vůbec nedojde ke čtení dat a tedy k potenciálnímu obsazení paměti na aplikačním serveru. |
ALLOWALLROWS | V odůvodněných případech je třeba načítat do formy všechna data bez omezení daného parametrem MAXDATAROWSALLOW. K tomu účelu slouží parametr ALLOWALLROWS. Je-li ve formě uveden s hodnotou 1, neuplatní se při čtení dat omezení dané hodnotou parametru MaxDataRowsAllow a data se načtou všechna. Parametr lze do formy vložit buď přímo v její předloze, nebo přes uživatelské akce jen vybraným uživatelům/skupině uživatelů. |
ROWSCOUNTQUERY |
Pokud je v aplikaci nebo ve formuláři použit parametr MAXDATAROWSALLOW pro kontrolu počtu uživatelem načítaných řádků, sestavuje si aplikační server SQL dotaz pro zjištění tohoto počtu. Použije pro to jednoduchý mechanismus, kdy rozparsuje výchozí SQL datový zdroj, určí části FROM a WHERE a sestaví nový SQL dotaz ve struktuře SELECT Count(ID sloupec) FROM tabulka WHERE podmínka(-y). Pokud je datový zdroj formuláře komplikovanější, nemusí se vždy rozparsovat korektně. Pokud se nepodaří sestavit korektní SQL dotaz pro zjištění počtu načítaných řádků, restrikce se na daný formulář neuplatní (tj. je povoleno načtení libovolného počtu vět). Pro tyto případy existuje parametr ROWSCOUNTQUERY, kterým lze zadat SQL dotaz pro zjištění počtu načítaných řádků, tedy „napovědět“ aplikačnímu serveru jak správně zjistit počet řádků. Dotaz musí obsahovat pouze část SELECT a FROM, část WHERE se doplní automaticky jako kombinace podmínek z původního datového zdroje formuláře a filtrovacích podmínek zadaných uživatelem nebo z konfigurace. Dotaz musí vracet celočíselnou skalární hodnotu (tj. jedno číslo). Např. SELECT Count(IDZBOZI) FROM QMAJETEK. |
QPCOLS | Ve zrychleném číselníku (aka našeptávač) v obecném klientovi může tento parametr obsahovat výčet sloupců oddělených středníkem pro zobrazení v našeptávači. Bude-li nad stejnou formou (číselníku) nadefinována defaultní konfigurace, bude mít přednost před pevně vyjmenovanými sloupci z parametru "QPCOLS". |
ROWFILTER |
Příznak, že se má ve formuláři zobrazit filtr jako součást tabulkového zobrazení (browse). Pokud je zadán, bude ve formuláři nad tabulkou
zobrazen řádek s možností zadávání filtrovacích podmínek (podobně, jako např. filtrování v Excelu). Platné pouze pro obecného klienta. Může nabývat hodnot:
|
ESO9DB |
Jméno aplikační databáze, která bude použita pro práci s touto formou. Standardně pracují všechny formuláře s jedinou aplikační databází (vazba se zadává ve Správci ESO9), ve vybraných případech lze tímto parametrem aplikační databázi pro danou formu změnit. Změna aplikační databáze znamená zejména:
Parametr může být dále parametrizován v syntaxi %PARAM%. Hodnota takového parametru se pak hledá v datovém zdroji zdrojové formy. |
ROWHEIGHT |
Umožňuje nastavit výšku řádků tabulky (browse) jedné formy. Pokud se výška řádků tabulky nastaví v CSS stylopisu,
změní se ve všech formách v celé aplikaci. Tento parametr tedy umožňuje selektivní nastavení pouze v jedné formě. Hodnota se udává v pixelech. Pozn. Pokud ve stylopisu chceme nastavit pevnou výšku řádků tabulky, musíme do něj přidat třídu .esoBr_RowHeight s hodnotou v pixelech. Výchozí hodnota je 25px. |
AUTOROWHEIGHT |
Umožňuje automatické nastavení výšky řádku tabulky (browse) podle množství (zalomeného) textu v buňce. Text se tak
zobrazí celý bez nutnost roztahovat sloupec. Hodnota 1 znamená, že je parametr nastaven. |
UPDATEAFTERSET |
Příznak, že se má po každé změně hodnoty položky ve formuláři ukládat hodnota celé věty (formy). Eliminuje se tím
nutnost uložit větu tlačítkem Uložit Hodnota 1 znamená, že je parametr nastaven. |
SETBRWAUTOHEIGHT | Příznak, na kolik max řádků se má nastavit výška browse oproti ROWSCOUNT. Slouží pro dotykové aplikace a ve spolupráci s ROWSCOUNT pro načtení více dat, než je zobrazeno. Parametrem ROWSCOUNT se nastaví třeba načtení 9999 řádků a SETBRWAUTOHEIGHT se omezí zobrazení browse na 8 řádků.Následné rolování stylusem neprovádí komunikaci s aplikačním serverem a vyhledání záznamu pro editaci je rychlejší. |
ROWSTYLE_LEGEND |
Umožňuje zobrazit pod formulářem legendu k obarvení řádků (datový parametr MF_ROWSTYLE ) nebo jednotlivých položek (datový parametr SLOUPEC_ROWSTYLE ). Kliknutím na barvy legendy lze filtrovat. Legenda obsahuje použitou barvu a její popis/význam.
Barva se zadává ve tvaru '#RRGGBB', následuje oddělující mezera a textový popis významu použité barvy. Příklad použití: <input type="hidden" name="Rowstyle_Legend" value="#FF0033 Po splatnosti 2+ dnů;#FF3333 Po splatnosti 1 den;#FF6633 Splatno dnes"> |
ROWSTYLE_COLUMN_LEGEND | Při filtrování dle barev v legendě (viz parametr ROWSTYLE_LEGEND) se implicitně filtruje dle barvy řádku (položka MF_ROWSTYLE). Pokud se legenda (a tedy i filtrování nad ní) vztahuje k jinému sloupci, je třeba v tomto parametru uvést jeho jméno. |
ONUNLOADMESSAGE |
Umožňule zobrazit informační hlášení při přechodu z jednoho formuláře na druhý. Do hodnoty parametru se vepisuje informační hlášení, nebo pole z datového zdroje ve ketrém je text informačního hlášení.
V případě že je uvedeno pole z dat je třeba toto pole uvést i v HIDDENFIELDS. Příklad: <input type="hidden" name="OnUnloadMessage" value="Toto je zpráva, která se zobrazí při přechodu na jiný formulář."> nebo <input type="hidden" name="OnUnloadMessage" value="MF_TXTINFORMACE"> |
ONUNLOADACTION |
Umožňule spustit akci při přechodu z jednoho formuláře na druhý. Do hodnoty parametru se vepisuje název procedury, nebo pole z datového zdroje ve ketrém je název procedury.
V případě že je uvedeno pole z dat je třeba toto pole uvést i v HIDDENFIELDS.
Pokud by byl ve formuláři současně i parametr ONUNLOADMESSAGE, tak má přednost a tento se nezpracuje. Příklad: <input type="hidden" name="OnUnloadAction" value="spProcedura"> nebo <input type="hidden" name="OnUnloadAction" value="MF_PROCEDURA"> |
ONERRORSOUND |
Umožňule přehrát zvuk při zobrazení chybového hlášení ve formě. Hodnota parametru je název souboru s cestou v aplikačním webu. Příklad: <input type="hidden" name="onErrorSound" value="sound/beep-1.wav"> |
ONINFOSOUND |
Umožňule přehrát zvuk při zobrazení informačního hlášení ve formě. Hodnota parametru je název souboru s cestou v aplikačním webu. Příklad: <input type="hidden" name="onInfoSound" value="sound/beep-1.wav"> |
CHAT | Zapojí do formuláře Chat. Jako hodnota je uveden název tabulky, ke které se Chat připojuje. Podmínkou je existence ID tabulky v datovém zdroji formy. Viz. Popis |
Parametry hyperlinku
Účel parametrů hyperlinku |
Mají přednost před parametry ve formě. Cesta_k_esoform.asp/ESOForm.asp?param1=value1¶m2=value2&…. Pokud jednotlivé parametry obsahují speciální znaky (&, <, >, ", ...), které mají vliv na parsování HTML TAGů, je třeba je uvádět v HTML encodingu; tedy např. znak & převést na &, znak > převést na > atd. Pokud se jedná o definici hyperlinku ve stránce, která bude generována pomocí esoform.asp, pak se cesta k esoform.asp neuvádí. |
Parametr (param) | Popis parametru (value) |
BRWACTION |
Parametr umožňuje vybrané odkazy zobrazit formou tlačítka v záhlaví formy. Všechny ostatní odkazy budou dostuponé pod sbalovací nabídkou Odkazy, resp. Sestavy. Hodnota parameru určuje pořadí, v němž mají být tlačítka v záhlaví seřazena. Příklad: <a href="esoform.asp?FormType=GenRep&Kod_sestavy=Dokl_kos&RelType=Parameters&brwAction=1">Tisk likvid. lístku</a> |
CINNOST | Uvedený parametr se zobrazuje v záhlaví MS IE a v navigaci pro snadnější orientaci v systému. |
CLIENTPRINT
(Příklad) |
Viz parametr stránky. |
CONFIG | Pokud je uvedeno jméno konfigurace formy, pak je tato konfigurace nastavena pro první formu na stránce. Hledá se nejprve v konfiguracích uživatele a pak ve společných konfiguracích. Parametr se uplatní pouze při vytváření nové stránky, pokud ještě není v navigaci. |
DATAACTION
(Příklad) |
První akce, která se ihned automaticky provede po vytvoření formy. Může mít následující hodnoty :
|
DONTADDSFORMID | Pokud jsou stránky mezi sebou odkazovány parametrem TPage, vytváří se mezi nimi standardně vazba (automatickým přidáním parametru SFormID). V některých případech tuto vazbu mezi formami vytvářet nechceme (např.kvůli násobení stránek v historii navigace při cyklickém přecházení mezi několika stránkami). Přidáním tohoto parametru na hyperlink se sice otevře aktivní stránka s daty, na druhou stranu se ale mezi nimi nevytvoří relace a nebude možné předávat parametry mezi formami vazbou, pouze na hyperlinku. |
DONTREQANSW | Při dlouhotrvajících akcích (tisk sestavy, akce na tlačítko) nůže docházet ke kolizi s automatickým voláním některých činností (např. obnova pravého pruhu s významnými událostmi). Tyto činnosti tak skončí chybou (aplikační server neobsloužil jejich volání, protože je zaneprázdněn dříve spuštěnou akcí), která znemožní např. zobrazení dlouho vytvářené sestavy (vlastní sestava v pořádku doběhne a je dostupná v navigaci/historii). Řešením je přidání parametru hyperlinku DONTREQANSW=1 (Don't Request Answer), který bude pro vybrané stránky potlačovat chybu připojení k serveru v případě, že je server zaneprázdněn důležitější akcí. V ESO9Start / ESO9PAM je tento parametr zapojen pouze v pravém pruhu s vyhodnocením událostí. |
DONTUSEINTO | Pro speciální případy nemusí být obnova stránky započítána do časového intervalu vypršení timeoutu uživatelské session; přesto, že se taková stránka bude obnovovat např. automaticky každých X minut, může uživateli vypršet timeout na session. Parametr se uvádí na odkazu se syntaxí DONTUSEINTO=1. Nadpis takové stránky se zároveň neobjeví v nadpisu záložky prohlížeče a stránka se neobjevuje ani v seznamu navštívených. |
ESO9DB | Viz parametr formy. |
FILTERFIELDNAMES
(Příklad) |
Viz parametr formy. |
FORMTYPE
(Příklad) (Příklady DASHOK) (Příklady GANTTOK) |
Pokud není uvedeno, je "editor", jinak definuje typ akce :
|
MAXDATAROWS | Viz parametr formy. |
PAGEBREAK | Viz parametr stránky |
PRINTDESTHTM | Umožní nastavit formát přílohy e-mailu v případě tisku Stimulsoft sestav do HTML (resp. MHT). Pokud není parametrem řečeno jinak, bude příloha ve formátu PDF. |
PRINTERNAME | Při přímém tisku na tiskárnu (parametr DirectPrint=1) lze tímto parametrem určit název tiskárny, na níž se sestava vytiskne. Hodnotu parametru lze zadat buď napřímo, nebo parametricky v syntaxi PRINTERNAME=%PrinterName%. Pro fungování je třeba mít nainstalovanou podpůrnou službu obecného klienta (ESO9 Support Service) ze stránky s nápovědou. Pouze pro obecného klienta. |
PRN_LANG | Parametr s hodnotou kódu jazyka pro překlad Stimulsoft sestav. Může nabývat hodnot SK, EN, DE, HU a PL. Pokud sestava obsahuje řetězce přeložené do daného jazyka, zobrazí se v něm, jinak se zobrazí ve výchozím jazyce, ve kterém byla vytvořena. |
RELTYPE
(Příklad) |
Viz parametr formy. |
REPEATFOR
(Příklad) |
Viz parametr stránky. |
REPORTISFORM | V novém designu obecného klienta (od v6.0) jsou všechny odkazy z formy dostuponé pod sbalovací nabídkou Odkazy, resp. Sestavy. Identifikace sestav probíhá automaticky dle syntaxe odkazu. Některé sestavy však mohou být uživateli považovány spíše za formuláře a tedy patřit do rozbalovací nabídky Odkazy. Pokud má být sestava zařazena do rozbalovací nabídky Odkazy, je třeba v jejím URL použít parametr ReportIsForm. |
REQUERY | Pokud je parametr uveden při použití číselníku, pak se při každém volání provede obnova dat datového zdroje (REQUERY=1). |
ROWSCOUNT | Viz parametr formy. |
SENDBYMAIL | Pouze pro IDC/HTX sestavy. Umožňí odeslání sestavy e-mailem v příloze (SendByMail=1) nebo těle (SendByMail=2) mailu. Standardně se používá v kontextovém menu nad IDC/HTX sestavou, nicméně lze použít i samostatně pro rychlejší odeslání e-mailu, než ze Stimulsoft sestav. |
SETFIELDNAME
(Příklad) |
Viz parametr formy. |
SETFIELDNAME2
(Příklad) |
Viz parametr formy. |
SMCLOSE | Pokud je parametr uveden při použití číselníku, pak se při každém volání znovu vytváří datový zdroj (SMCLOSE=1). |
SMPLUS
(Příklad) |
Přípona názvů vazebních položek při vícenásobném použití stejného číselníku v jedné formě (pouze při RELTYPE=SlaveMaster) |
SMPRED | Předpona názvů vazebních položek při vícenásobném použití stejného číselníku v jedné formě (pouze při RELTYPE=SlaveMaster), např. při přenosu do MF položek |
STARTFILTER
(Příklad) |
Viz parametr formy. Pokud je v obrazovce více forem, filtruje se první |
STARTFILTFIELD | Obsahuje jméno položky cílové formy, do které se přenese hodnota z položky zdrojové formy, nad kterou je vyvolán číselník se zapojeným vstupním filtrem. |
STARTFILTVALUE | Nastavení počáteční hodnoty položky pro vstupní filtr – počáteční hodnota |
STARTINSERT
(Příklad) |
Pokud je 1, pak se cílová forma otevře prázdná a připravená pro vkládání nových řádků. Lze kombinovat s DATAACTION=Insert. |
STITECHINFO | Pokud je 1, vytiskne se na zápatí Stimulsoft sestavy technické info o její předloze (ID, kód a název sestavy). |
TBM
(Příklad) |
Záložka v cílové stránce, používá se především při definici startovního místa modulu. |
TEMP | Pokud je 0, pak se provede nové generování dočasné sestavy. |
TEXTPRINT | Do cílové stránky se negenerují HTML tagy, ale pouze čistý text. Využitelné např.pro tisky formátované jako čistý text. |
TFORM | Jméno forma ve stránce, do které se nastavují parametry odkazu, případně na kterou je realizována vazba. Pokud není uvedeno, použije se první forma ve stránce |
TITLE | Zadaná hodnota parametru se naplní do titulu stránky. |
TMODULE
(Příklad) |
Definuje název modulu, jeho startovní stránka je určena parametrem TURL a případně záložkou TBM. esoform.asp?Tmodule=xxx&TBM=BookMark&TURL=Default.htm#BookMark |
TPAGE
(Příklad) |
Cesta a jméno ke stránce předlohy relativně k umístění esoform.asp. Pokud se nenalezne na WEBu zákazníka, hledá se na WEBu start. Hodnota může být parametrizována hodnotou položky z aktuálního řádku zdrojové formy (pokud je forma ve vazbě); parametr se uvádí v syntaxi %PARAMETR%. |
TURL
(Příklad) |
Cílový hyperlink, který je buď startovní místo modulu, nebo je třeba získat stránku ze Start WEBu a zachovat její odkazy k WEBu zákazníka. Pokud se nenalezne na
|
TVIEW
(Příklad) |
Definuje pohled na data jako SQL dotaz. Má přednost před hodnotou VIEW definovanou ve formě. |
Odkazy na formulář a mezi formuláři
Požadavek | Řešení |
Odkaz na formulář
(Příklad) |
Pokud chceme zavolat vygenerovanou stránku s napojením na datový zdroj, zavoláme následující hyperlink: Esoform.asp?Tpage=xxx. Pokud není hyperlink součástí záhlaví formy (caption) a nejedná se o odkaz na číselník (vazba SlaveMaster), je třeba k odkazu explicitně přidat CSS třídu pro správné formátování: <a href="esoform.asp?TPage=sklad/Vydejkas&RelType=Parameters"><span class="ESO_form_href">Opravná výdejka :</span>. Pokud je hyperlink součástí záhlaví formy (caption), může navíc obsahovat text libovolné datové položky z formy (např. počet aktuálních podřízených záznamů v dané evidenci). Obsah datové položky se do textu hyperlinku přidává v syntaxi: <a href="esoform.asp?TPage=nastaveni/HDokPozn&RelType=Same" data-field="numHDOKPOZN">Poznámky</a> |
Parametry volání odkazu mezi formuláři
(Příklad) |
Pokud má mít datový zdroj volané stránky vazbu na datový zdroj volající stránky, je toho možno dosáhnout voláním následujícího hyperlinku. Esoform.asp?TPage=xxx&RelType=xxx |
Parametry datového zdroje na odkazu |
Parametry lze v cílovém formuláři naplňovat buď z datového zdroje zdrojového formuláře, nebo z hyperlinku. Parametr na hyperlinku může mít buď pevnou podobu, nebo může být parametrizován libovolnou datovou položkou zdrojového formuláře a to buď pro definované systémové parametry ESO9(např. pro parametr WHERE bude URL Esoform.asp?TPage=Stranka.htm&RelType=Parameters&WHERE=where idhdok = %idhdok_new%) , nebo obecně pro libovolné datové parametry z cílového formuláře (např. Esoform.asp?TPage=Stranka.htm&RelType=Parameters&nove_cislo_dokladu=%cis_dok% ). |
Tvorba kombinovaného formuláře
(Příklad) |
V jedné stránce je možné mít více forem s vazbou mezi datovými zdroji. Opět určujeme vazbu mezi zdrojovou a cílovou formou, zdrojová forma musí být ve stránce uvedena dříve než cílová forma. V cílové formě jsou potom následující parametry (ve formě HIDDEN polí): Sform, RelType |
Odkazy mezi sestavami a formuláři
Požadavek | Řešení |
Zadání parametrů sestavy pomocí formuláře
(Příklad) |
Pokud chceme zadat parametry pro tisk sestavy nebo pro vytvoření editačního formuláře, můžeme je zadat pomocí definice předlohy. Ve VIEW předlohy můžeme definovat SQL dotaz, který zajistí předvyplnění hodnot parametrů, například můžeme načíst maximální hodnoty z databáze. Jména parametrů mohou být libovolná. K položkám můžeme přidat hyperlink pro volání číselníku s výběrem hodnot parametrů. Volání cílového výstupu můžeme provést buď voláním hyperlinku s definicí vazby PARAMETERS, nebo stiskem SUBMIT tlačítka, když parametr ACTION obsahuje adresu cílové stránky a vztah Reltype=Parameters, pokud jsou tlačítko a akce ve formě definovány. |
Volání sestavy z formuláře
(Příklad) |
Například pro tisk faktury z formuláře pořízení faktury definujeme hyperlink na cílovou stránku s typem vazby PARAMETERS. V cílové definici SQL dotazu máme parametr %jméno_položky%, který určuje položku datového zdroje ze zdrojové formy. Cílový zdroj se vytvoří tak, že jako hodnota parametru se dosadí hodnota položky ze zdrojové formy. Jako parametr může být použito i pole datového zdroje, které není ve formuláři zobrazeno (např. idhdok) |
Volání sestavy ze sestavy
(Příklad) |
Například pro přechod ze sumární sestavy na detailní pohled definujeme v tiskové podobě sumární sestavy hyperlink, který bude mít ve svém volání jméno parametru =
<%jméno_položky%>, kde jméno položky určuje sloupec datového zdroje. Při tvorbě sestavy na aplikačním serveru se místo <%jméno_položky%> dosadí hodnota sloupce v řádku a hyperlink pak volá detailní sestavu s konkrétním parametrem. Cílová sestava má v SQL dotazu
%jméno_parametru% a místo něj se dosadí hodnota parametru. Příklad:
|
Volání formuláře ze sestavy
(Příklad) |
Formulář ze sestavy můžeme volat stejně jako sestavu (viz výše) s využitím modifikace hyperlinku při vytvoření sestavy a parametrizace SQL ve formuláři. Nebo můžeme využít parametru TVIEW. Hyperlink v sestavě : esoforms.asp?TPage=form.htm&TView=”select * from table where FieldName = %FieldName%” V cílovém formuláři bude parametr VIEW nahrazen hodnotou TVIEW spolu z jeho modifikací, ke které dojde při tvorbě sestavy na aplikačním serveru. |
Parametry sestav Stimulsoft
Jméno parametru | Hodnota |
mf_SendMailTo | Pokud je parametr naplněn e-mailovou adresou (popř. více adresami oddělenými ";"), provede se tisk sestavy a její odeslání na uvedenou adresu (-y). Jednotlivá adresa může být uvozena prefixem "BCC:"; v tom případě se v e-mailu použije jako slepá kopie (blind copy). Parametr může být uveden buď na odkazu (potom jeho hodnota platí pro všechny sestavy tištěné tímto odkazem) nebo v datovém zdroji sestavy (potom lze tuto hodnotu specifikovat pro každou sestavu zvlášť). Pokud je parametr uveden na odkazu, může být jeho hodnota dále parametrizována položkou z datového zdroje formy (syntaxe %PARAM%), odkud se tisk volá. Pokud hodnota parametru začíná znakem "$", budou k e-mailu přiloženy všechny navázané dokumenty z DMS, jejichž popis nezačíná slovem "Ne". Formát odesílané sestavy může být libovolný s výjimkou MHT (HTML). |
mf_SendMailSubject | Předmět e-mailu. Parametr může být uveden na odkazu nebo v datovém zdroji sestavy (viz mf_SendMailTo). |
mf_SendMailBody | Tělo e-mailu. Parametr může být uveden na odkazu nebo v datovém zdroji sestavy (viz mf_SendMailTo). |
mf_FileName | Pokud je parametr naplněn jménem souboru (bez přípony), bude do něj po vytištění sestava uložena. Pokud zkombinujeme parametry po odeslání sestavy mailem s parametrem pro uložení sestavy do souboru, dojde k uložení sestavy do souboru a jejímu následnému odeslání e-mailem s tím, že jméno souboru s přílohou je dáno jménem souboru, do nějž jsme sestavu uložili. Je-li hodnotou parametru celá cesta i se jménem souboru, zůstane po odeslání e-mailu soubor se sestavou uložen na disku; je-li hodnotou parametru pouze jméno souboru, uloží se sestava do TEMP adresáře v daném uživatelském profilu a po odeslání se smaže. Pokud je název souboru pro uložení sestavy uvozen znakem "$", nedojde při ukládání sestavy k jejímu přepisu pokud soubor již existuje. Pokud je parametr uveden na odkazu, může být jeho hodnota dále parametrizována položkou z datového zdroje formy (syntaxe %PARAM%), odkud se tisk volá. |
mf_ShowMail | Parametr říká, zda se má (hodnota "1") nebo nemá (hodnota "0") před odesláním zobrazit náhled e-mailu. Parametr může být uveden na odkazu nebo v datovém zdroji sestavy (stejně jako např. mf_SendMailTo). Pokud parametr není zadán, uplatní se stejné nastavení z konfigurace klientské komponenty. |
ENC_PWD | Parametr s heslem pro tiskové výstupy do PDF ve Stimulsoftu. Parametr lze uplatnit stejným způsobem, jako všechny ostatní řídící parametry GS, tj. z vazby nebo z odkazu. Zaheslování PDF výstupu lze použít pro všechny cíle tisku, tj. pro tisk na monitor, do souboru, do DMS nebo pro odeslání sestavy e-mailem. |
GENREPTOOLBAR | Parametr s hodnotou 0 zruší generování nástrojové lišty do záhlaví Stimulsoft sestav (v MHT/HTML5 formátu). Platné pouze pro obecného klienta. |
XLSOPTIONS |
Parametrizace vlastností výstupu pro typ sestavy STIXLSX a STIXLSXFORM (Excel).
|
PDFOPTIONS |
Parametrizace vlastností výstupu pro typ sestavy STIPDF (formát PDF).
|
Vysvětlení pojmů
Pojem | Vysvětlení |
Stránka |
V textu se rozumí odpověď
|
Tag | Je to výraz syntaxe jazyka HTML uzavřený mezi znaky "<" a ">". Definuje způsob zobrazení informace na obrazovce klienta. |
Předloha stránky | Stránky, které zobrazují data aplikace jsou generovány spojením dvou zdrojů. Grafické definice způsobu zobrazení dat a vlastních dat ve formě datového zdroje. Předlohou stránky rozumíme předpis, který obsahuje grafický tvar zobrazení dat v syntaxi jazyka HTML a výraz SQL, který specifikuje datový zdroj. |
Forma | Forma je ta část předlohy stránky, která vymezuje oblast, ve které budou zobrazena data z datového zdroje. Jednotlivé prvky uvnitř formy jsou pak buď popisné texty, nebo prvky ve kterých se zobrazují hodnoty dat. Forma definuje zobrazení jednoho řádku datového zdroje. |
Datový zdroj | Pokud je výraz SQL proveden na databázovém serveru, pak server vrací odpověď ve formě datového zdroje, což je dvourozměrná tabulka složená ze řádků a sloupců. Tato tabulka představuje výsek z dat uložených na databázovém serveru. |
Sloupec datového zdroje | Je to prvek tabulky datového zdroje, který obsahuje hodnoty dat stejné skupiny. Jeho název se používá pro propojení mezi datovým zdrojem a vizuálním prvkem ve formě v předloze stránky. |
Řádek datového zdroje | Je to prvek tabulky datového zdroje, který obsahuje hodnoty dat všech sloupců pro jeden výskyt. Kolik řádků má datový zdroj, tolik řádků bude vidět při zobrazení formy ve tvaru browse, tolikrát se zobrazení formy zopakuje při tvorbě tiskové sestavy. |
Stránka generovaná aplikačním serverem | Pokud dostane aplikační server požadavek na zpracování předlohy stránky, vybere nejdříve z předlohy SQL výraz, ten zpracuje na databázovém serveru a potom výsledek ve formě datového zdroje zobrazí podle grafické definice v předloze stránky. |
Formulář | Formulářem se rozumí vygenerovaná stránka, která slouží k aktualizaci dat. |
Sestava | Sestava je vygenerovaná stránka, která slouží pouze k zobrazení dat, |
Dočasná sestava | Pokud je třeba sestavu, která vzniká komplikovaným dotazem a informace v ní mají trvalejší platnost (nejsou bezprostředně závislé na aktuálním stavu dat), lze sestavu vygenerovat například v noci a následující den používat její údaje bez nutnosti nového generování. Tím dochází k urychlení přístupu k informaci a snížení zátěže databázového serveru. |
Tiskový formulář | Tiskový formulář je vygenerovaná stránka, která slouží pouze k zobrazení dat, její předloha je složena z více forem a její grafický tvar je dán obecnými zvyklostmi (faktura, pokladní doklad). |
Parametry uživatele na aplikačním serveru | Pro konkrétní aplikaci a aplikační server existuje dohodnutá uložená procedura, která vrací nastavení parametrů uživatele. Tyto hodnoty zjišťuje a eviduje aplikační server a je možné je používat ve výrazech SQL a v předlohách, aniž by bylo nutné samostatně psát SQL příkazy pro jejich zjišťování. Jména parametrů jsou závislé na názvech sloupců datového zdroje, který vrací dohodnutá uložená procedura. Ve stránkách a výrazech SQL mají tyto parametry před svým jménem předponu up_. |
Runtime parametry uživatele na aplikačním serveru |
Použití je obdobné jako parametry uživatele na aplikačním serveru pouze s tím rozdílem, že hodnoty parametrů se nečtou z databáze, ale doplňuje je za běhu aplikační server nebo klient.
|
DokuWiki Appliance - Powered by TurnKey Linux
techdoc/pravidla_esoform.txt · Poslední úprava: 17.07.2025 18:00 autor: 127.0.0.1