Definice formulářů - Pluginy neboli Doplňky
Zde je uvedeno, k čemu lze v ABRA Gen využívat, jsou popsány doplňky různých typů a uvedeny příklady použití.
Pro zjednodušení výkladu budeme též používat zkratky:
Dále naleznete:
V některých případech využití Definovatelných formulářů (UDF formulářů) je potřeba zobrazovat takové informace, pro které buď nejsou prvky Udf formulářů k dispozici nebo by byla definice UDF velmi složitá. Protože ale takové požadavky mají mnoho variant, lze v takovém případě do Udf formuláře v ABRA Gen použít tzv. "Pluginy" neboli Doplňky.
Plugin neboli doplněk je prvek Udf formulářů, který stejně jako jiné prvky má vlastní nastavení a způsob zobrazení (případně i editace). Typicky plugin zprostředkovává pro uživatele zobrazení komplexních nebo specifických informací nebo informací, které vyžadují specifické zobrazení.
Pluginy jsou nedílnou součástí Udf formulářů a nemají žádné specifické licencování.
Tato technologie je velkou měrou využívána zejména v agendách CallCentra pro řešení různých způsobů zobrazení informací k dohledané firmě nebo osobě. Využití ale tyto položky naleznou samozřejmě i v jiných agendách.
Ve většině doplňků je možno nastavit, že se nemají načítat data doplňku okamžitě, ale až na žádost uživatele. Viz popis údaje Provádět vyhodnocování automaticky v definici prvku Doplněk v daném Udf formuláři. Význam ostatních údajů, které se nastavují k jednotlivým doplňkům plyne z jejich názvu nebo z jejich popisu zde.
U doplňků, v jejichž definici se zadává výraz, se tímto výrazem rozumí výraz, který se vyhodnocuje tzv. QREvaluatorem systému ABRA Gen (tentýž je použit např. v předkontacích).
Umožňuje v definici uvést odkaz na jiný již existující Udf formulář.
Tento doplněk s výhodou využijete, pokud máte pro daný Business objekt několik Udf formulářů pro zobrazování jednotlivých dílčích informací a paralelně chcete mít jeden Udf formulář souhrnný, na němž budou zobrazeny znovu všechny dílčí informace ale najednou. Pomocí tohoto doplňku takový souhrnný Udf formulář snadno vytvoříte bez nutnosti kopírovat jejich obsah - bude se jen jednoduše odkazovat na jiné Udf formuláře.
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Definovatelný formulář | Zde vyberete Udf formulář, jehož obsah se má v tomto doplňku zobrazovat. Nabízí se jen Udf k danému Business objektu kromě právě editovaného (jiná složitější kontrola případné nepřímé rekurze zde není). |
Umožňuje zobrazovat seznam příloh (Dokumentů) souvisejících s aktuálním objektem (k němuž je Udf formulář definován) případně s jiným zadaným objektem (jehož identifikace musí být zadána), a to i včetně detailů jednotlivých příloh. Doplněk zobrazuje Dokumenty stejným způsobem, jako je tomu jinde v systému v záložce Přílohy, viz Záložka Přílohy - obecně.
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Zobrazovat i detail dokumentů | Možnost zatrhnout, zda se má v Udf formuláři zobrazit i pole pro zobrazení "náhledu" na daný Dokument (viz totéž ve spodní části záložky Přílohy). |
Zobrazovat navigátor |
Možnost zobrazit v Udf formuláři pod seznamem firem lištu navigátoru:
Navigátor v této záložce obsahuje tlačítka:
|
Vlastní identifikace objektu / Třída |
Pokud se tento doplněk umístí na Udf formulář příslušející k objektu, ke kterému existují vazby na Dokumenty, není potřeba už definovat výraz. Pokud tomu tak není nebo pokud chce uživatel v doplňku zobrazovat Dokumenty k jinému objektu, musí zadat Vlastní identifikaci objektu, tj. CLSID (identifikační GUID) Business objektu dané třídy, k němuž připojené Dokumenty chce zobrazovat, a ve výrazu napsat výraz, který bude vracet ID objektu, ke kterému se mají Dokumenty zobrazovat. Objasníme na příkladu: Příklad
Mějme zakázky, kde každá zakázka je určena pro určitou osobu. Chceme si k zakázce osobu zadávat z číselníku osob a zobrazovat s ní související přílohy. Tudíž si k zakázce nadefinujeme číselníkovou extra Udf položku (např. X_osoba), viz Definice položek, do níž budeme ke každé zakázce zadávat výběrem z adresáře osob osobu, pro kterou je naše zakázka určena. Dále si nadefinujeme Udf formuláře pro zadání této položky a rovněž si do něj vložíme prvek Doplněk typu Dokument. Musíme zde zadat třídu objektu zakázek a výraz s odkazem na Udf položku pro zadání osoby resp. ID osoby v ní zadané, viz obrázek: Příklad definice Vlastní identifikace objektu pro doplněk Dokumenty Příklad výsledného Udf formuláře k objektu Zakázka, kde se k osobě zadané k dané zakázce zobrazují dokumenty, které jsou k ní připojené (viz záložka Přílohy dané osoby) Třídu daného Business objektu můžete dohledat v popisu Struktur a definic GenDoc.chm. V dokumentaci GenDoc.chm jsou CLSIDBusiness objektů uvedeny jak v nekomprimovaném delším 36-ti znakovém tvaru (32 znaků vč. pomlček), resp. v 38-mi znakovém (vč. pomlček, závorek), tak v pakovaném 26-ti znakovém tvaru (viz PackedGUID), ve kterém se používají v programu (podle nich lze rovněž popis v dokumentaci GenDoc.chm rychle dohledat). |
Výraz | Položka pro zadání vlastního výrazu. 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 Edituj. Kdy je a kdy není třeba u tohoto doplňku výraz zadávat, je detailně objasněno v předchozí položce. |
Zobrazuje firmy příslušející k osobě, jejíž ID se zjistí vyhodnocením zadaného výrazu. Doplněk dále podporuje i možnost zobrazení vybrané firmy v číselníku firem (viz dále funkce "Do číselníku" v navigátoru doplňku).
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Zobrazovat informační panel | Možnost zatrhnout, zda se má v Udf formuláři zobrazit i pole pro zobrazení "náhledu" na daný Dokument (viz totéž ve spodní části záložky Přílohy). |
Zobrazovat navigátor |
Možnost zobrazit v Udf formuláři pod seznamem firem lištu navigátoru: Navigátor v této záložce obsahuje tlačítka:
|
Výraz |
Položka pro zadání vlastního výrazu. 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 Edituj. Zde je třeba zadat výraz, který bude vracet ID osoby, ke které se mají firmy zobrazovat. Objasníme na příkladu: Příklad
Mějme zakázky, kde každá zakázka je určena pro určitou osobu. Chceme si k zakázce osobu zadávat z číselníku osob a zobrazovat si i s ní související firmy. Tudíž si k zakázce nadefinujeme číselníkovou extra Udf položku (např. X_osoba), viz Definice položek, do níž budeme ke každé zakázce zadávat výběrem z adresáře osob osobu, pro kterou je naše zakázka určena. Dále si nadefinujeme Udf formuláře pro zadání této položky a rovněž si do něj vložíme prvek Doplněk typu Firmy příslušející k osobě. Musíme zde zadat výraz s odkazem na Udf položku pro zadání osoby resp. ID osoby v ní zadané, tj. v našem případě X_Osoba.ID: Příklad výsledného Udf formuláře k objektu Zakázka, kde se k osobě zadané k dané zakázce zobrazují firmy, které jsou k ní připojené (viz záložka Firmy k dané osobě). |
Umožňuje v Udf formuláři zobrazit web odpovídající webové adrese, která se zjistí vyhodnocením zadaného výrazu.
Chování doplňku ovlivňuje parametr
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Zobrazovat webovou adresu | Možnost zobrazit v Udf formuláři i vypočtenou URL adresu (vyhodnocenou ze zadaného výrazu). |
Zobrazovat tlačítka pro ovládání prohlížeče | Možnost zobrazit v Udf formuláři i tlačítka pro posun vzad a vpřed, obnovení a tlačítko pro vyvolání plnohodnotného webového prohlížeče. Jejich význam je zřejmý. |
Výraz |
Položka pro zadání vlastního výrazu. 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 Edituj. Zde je třeba zadat výraz, který bude vracet WWW adresu, která se má zobrazit. Objasníme na příkladu: Mějme zakázky, kde každá zakázka je určena pro určitou firmu. Chceme si k zakázce rovnou zobrazovat web dané firmy. Tudíž si k zakázce nadefinujeme Udf formulář a do něj vložíme prvek Doplněk typu Internetový prohlížeč. Musíme zde zadat výraz s odkazem na položku, v níž je požadovaná WWW adresa, tj. v našem případě Firm_ID.WWWAddress. Pokud pak k zakázce zadáme firmu (viz položky v detailu zakázky), která má ve svých údajích zadanou WWW adresu, je možno si v Udf formuláři zobrazit odpovídající webovou stránku. |
Zobrazuje kategorizační údaje příslušející k firmě, jejíž ID se zjistí vyhodnocením zadaného výrazu. Vzhled doplňku, význam položek a dostupných funkcí v liště navigátoru, je obdobný jako panel pro zobrazení kategorizačních údajů na subzáložce Kategorizace v adresáři firem.
Z uvedeného důvodu je zbytečné doplněk používat v definovatelných formulářích k agendě Adresář firem, přestože je to teoreticky možné.
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají shodné údaje jako u doplňku Firmy příslušející k osobě.
Zobrazuje NACE kódy příslušející k firmě, jejíž ID se zjistí vyhodnocením zadaného výrazu. Vzhled doplňku a význam položek, je obdobný jako panel pro zobrazení NACE kódů na subzáložce Kategorizace v adresáři firem. Doplněk dále podporuje i možnost zobrazení vybraného NACE kódu v číselníku Kódy NACE (viz dále popis obdobné funkce "Do číselníku" v navigátoru doplňku Firmy příslušející k osobě).
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají shodné údaje jako u doplňku Firmy příslušející k osobě.
Zobrazuje osoby příslušející k firmě, jejíž ID se zjistí vyhodnocením zadaného výrazu. Doplněk dále podporuje i možnost zobrazení vybrané osoby v číselníku Osoby (viz dále popis obdobné funkce "Do číselníku" v navigátoru doplňku Firmy příslušející k osobě). Obdoba předchozího doplňku Firmy příslušející k osobě jen zde se jedná o opak, tj. o zobrazení souvisejících osob k firmě.
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají shodné údaje jako u doplňku Firmy příslušející k osobě.
Zobrazuje údaje podle definice panelu definovatelných údajů detailu resp. panelu definovatelných údajů seznamu. Není zde podporována editace definic, pouze její výběr. Takto (v doplňku) použitý panel definovatelných údajů neumí řešit agregační funkce – používá se např. nad seznamem při současném označení více záznamů. V případě, že jsou v panelu použity agregační funkce, zobrazí se prázdná buňka. (Tedy obdobně jako se to chová v agendách v případě, že není nic označeno).
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Panel | Zde vyberete panel definovatelných údajů, jehož obsah se má v tomto doplňku zobrazovat. Nabízí se jen uživatelské definice (tj. nenabízí se zde Základní definice dodávané výrobcem) a to globální i neglobální, které jsou nadefinované k agendě, která odpovídá hlavní třídě objektu, k němuž je definován Udf formulář. Tzn. že se zde nenabízí definice panelů definované k řádkům (viz panely definovatelných údajů Obsahu) či jiným řádkovým údajům dané agendy. |
Umožní zobrazit informace o vzájemných obchodech vlastní a vybrané firmy a o vzájemných pohledávkách. V podstatě funguje jako přehled pohledávek a závazků (viz reporty Časová struktura pohledávek a Časová struktura závazků) provedený pro jednu firmu. Bere se ohled i na případné zásadní opravy a slučování firem, viz předchůdce a následovníci firem. (Tj. pokud byla firma zadaná na dokladu později opravena zásadní opravou v adresáři příp. došlo ke slučováním firem.) Je možné určit, za jaké období jsou dané informace požadovány.
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Omezovat podle datumu dokladu | Možnost omezit za doklady vystavené jen v zadaném časovém intervalu. |
Zohledňovat zálohové listy | Viz popis stejnojmenného prvku v reportech Časová struktura pohledávek a Časová struktura závazků. |
Zohledňovat dobropisy daň. zál. listů | Viz popis stejnojmenného prvku v reportech Časová struktura pohledávek a Časová struktura závazků. |
Výraz | Položka pro zadání vlastního výrazu. 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 Edituj. Zde je třeba zadat výraz, který bude vracet ID firmy, ke které se má přehled zobrazovat. |
Umožní zobrazit interní prohlížeč Vizualizace dat. Ovládací prvky prohlížeče se shodují s těmi na záložce Vizualizace dat.
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Použít aplikaci Vizualizace dat |
Možnost vybrat aplikaci Vizualizace dat. |
Výraz pro určení Vizualizace dat aplikace |
Položka pro zadání vlastního výrazu. 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 Edituj. |
Slouží k zobrazování obrázku ze souboru, jehož umístění se zjistí na základě definice výrazu. Kromě možnosti přímého zobrazení je k dispozici i možnost vyvolat odpovídající aplikaci (grafický editor nebo prohlížeč).
K zobrazování obrázků odpovídajících určité položce v databázi (které jsou uloženy v dané položce) slouží subzáložka Foto nebo můžete též využít uživatelsky definovatelných formulářů s prvkem Obrázek.
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Zobrazovat název výsledného souboru | Možnost zobrazit v Udf formuláři i vypočtenou cestu k výslednému souboru (vyhodnocenou ze zadaného výrazu). |
Zobrazovat tlačítko pro zobrazení v externím programu | Možnost zobrazit v Udf formuláři i tlačítko pro vyvolání plnohodnotného prohlížeče asociovaného s příponou souboru s obrázkem. |
Používat zabudovaný prohlížeč | Je možné volitelně vůbec obrázek nezobrazovat, ale prostřednictvím doplňku a tlačítka pro vyvolání externí aplikace ho pouze zpřístupňovat. |
Zobrazovat tlačítka zabudovaného prohlížeče |
Je-li zatrženo, pak bude ve spodní části formuláře k dispozici lišta s tlačítky a položkami pro nastavení, jak si přejete obrázek v zabudovaném prohlížeči zobrazovat. Popis viz popis obdobných voleb v kap. Záložka Foto - obecně:
Tlačítka a zatrhávací políčka pro nastavení zobrazení obrázku |
Výraz |
Položka pro zadání vlastního výrazu. 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 Edituj. Zde je třeba zadat výraz, který bude vracet cestu k obrázku, který se má zobrazovat. Objasníme na příkladu: Příklad
Mějme zakázky, kde každá zakázka může být doplněna fotodokumentací. Fotodokumentace je dle interních směrnic firmy uložena v určitých adresářích a pod 5-timístným jménem odvozeným z kódu zakázky. Chceme si k zakázce zadávat příslušné adresáře a z každého z nich zobrazovat daný obrázek. Tudíž si k zakázce nadefinujeme extra Udf položku typu adresářová cesta (např. X_Adresar), viz Definice položek, do níž budeme zadávat adresář. Dále si nadefinujeme Udf formuláře pro zadání této položky a rovněž si do něj vložíme prvek Doplněk typu Prohlížeč obrázků. Musíme zde zadat výraz pro určení souboru, např.: X_Adresar + '\'+ NxLeft(Code,5) + '.gif'. (Smysluplnost příkladu zde není podstatná, příklad má pouze demonstrovat použití tohoto doplňku. V praxi by se jistě našlo mnoho praktických variant, jak specifikovat jména obrázků jiným způsobem).
Příklad výsledného Udf formuláře k objektu Zakázka, kde se ze zadaného adresáře a kódu zakázky odvodí jméno obrázku k zobrazení |
Totéž jako Prohlížeč obrázků (PictureFilePlugin) ale zobrazující textový soubor. Umožňuje volitelně zobrazovat obsah souboru buď přímo v tomto doplňku nebo vyvolat plnohodnotný editor.
Totéž jako Prohlížeč obrázků (PictureFilePlugin) ale fungující s AVI a MPEG soubory. Umožňuje volitelně přehrávání buď přímo v tomto doplňku nebo externě.
Zobrazuje soubory a adresáře z adresáře zjištěného na základě výrazu uvedeného v definici. Součástí definice doplňku není nastavení třídění výsledného seznamu, ale je možné ho nastavit přímo na zobrazeném doplňku. Velikosti a uspořádání sloupců a vybrané třídění tohoto doplňku se na daném formuláři pamatují. V seznamu funguje Ctrl+C, Ctrl+X a Ctrl+V, lokální kontextové menu a dvojité kliknutí myší (DblClick) standardně jako v externím exploreru. Také je možné do složek přesouvat soubory přetažením myší z průzkumníku souborů (Průzkumník Windows, Total Commander atp.). Taktéž je možné přetažením myši do adresářů kopírovat maily z MS Outlook nebo Thunderbird.
Pokud dojde k nějaké chybě, bude hlášení chyby zobrazeno tučně v cestě doplňku (např. pokud nebyl nalezen na doplňku zadaný adresář).
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Zobrazovat cestu | Možnost zobrazit v Udf formuláři i cestu (vyhodnocenou ze zadaného výrazu). |
Zobrazovat tlačítko pro vyvolání exploreru | Možnost zobrazit v Udf formuláři i tlačítko pro vyvolání externího exploreru. |
Zobrazovat i podadresáře |
Možnost volitelně zobrazovat i adresáře obsažené v zobrazovaném adresáři. Není-li zatrženo, zobrazují se jen soubory obsažené přímo v daném adresáři. Zároveň je aktivní i tlačítko pro návrat do nadřízeného adresáře. |
Zobrazovat i skryté | Možnost volitelně zobrazovat i skryté soubory/adresáře v zobrazovaném adresáři. |
Maska souborů |
Umožňuje filtrovat soubory pomocí masky. Více masek je možno oddělit středníkem. *.docx;*.xlsx |
Masku vyhodnotit výrazem | Po zatržení se skryje položka Maska souborů a zobrazí se okno "Výraz pro určení masky souboru". 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 Edituj. Tato položka umožňuje volitelně používat pro filtraci souborovou masku danou vyhodnocením výrazu. |
Výraz |
Položka pro zadání vlastního výrazu. 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 Edituj. Zde je třeba zadat výraz, který bude vracet cestu k adresáři, jehož obsah se má zobrazovat. Objasníme na příkladu: 'C:\Faktury_prijate' Mějme zakázky, kde každá zakázka je doplněna externí dokumentací (smlouvy apod.). Veškerá dokumentace k dané zakázce je dle interních směrnic firmy uložena na serveru v adresářích, jejichž jméno je dáno kódem zakázky. Chceme si k zakázce zobrazovat podrobnosti tj. i tyto dokumenty. Nadefinujeme Udf formulář, do nějž vložíme prvek Doplněk typu Souborový systém - adresář. Musíme zde zadat výraz pro určení souboru, např. '\\Share\Zakazky\' + NxLeft(Code,5). |
Tento doplněk zobrazuje vývoj pro skladovou položku tak, jak ho zobrazuje agenda Vývoj SCM.
Příklad využití doplňku SCM pro rychlé zobrazení vývoje v řádcích faktury
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje, které mu poskytnou informace o skladu, sklad. kartě a definici sloupců:
Nadpis | Popis | |
---|---|---|
Zobrazit tlačítko pro otevření dokladu | Při zaškrtnutí tohoto parametru se nad seznamem s vývojem zobrazí panel, v jehož pravé části bude umístěno tlačítko Doklad. Tlačítko Doklad je funkční tlačítko s volbou, které umožňuje otevření dokladu z aktuálního řádku vývoje a to buď samostatně nebo přes aktuální agendu. Pokud nebude zároveň zaškrtnuto tlačítko Provádět vyhodnocování automaticky, zobrazí se na v levé části panelu i tlačítko Načíst. Jeho popis viz popis funkce v kap. Definovatelné formuláře - záložka Detail. | |
Výraz pro určení ID definice sloupců |
Položka pro zadání vlastního výrazu, který bude vracet ID definice sloupců bilance. Výraz může být velmi jednoduchý, tj. obsahovat "natvrdo" zadaný identifikátor příslušné definice sloupců. Pokud bude výraz např. '1000000000', tak to bude v demodatech znamenat definici sloupců "Obchod". ID vašich definic sloupců bilance zjistíte např. prostřednictvím panelu definovatelných údajů detailu. |
Položky pro zadání vlastního výrazu. 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 Edituj. |
Výraz pro určení ID skladu |
Zde je třeba zadat výraz, který bude vracet identifikátor (ID) skladu, pro který se má zobrazit SCM vývoj. Nad třídou Objednávka přijatá - řádek bude výraz pro načtení skladu Store_ID. |
|
Výraz pro určení ID skladové karty |
Zde je třeba zadat výraz, který bude vracet identifikátor (ID) skladové karty, pro kterou se má zobrazit SCM vývoj. Nad třídou Objednávka přijatá - řádek bude výraz pro načtení skladové karty Storecard_ID. |
Na základě definice provádí SQL dotaz resp. dotazy a výsledek prezentuje pomocí grafu. Pracuje tedy na podobném principu jako doplněk SQL dotaz - tabulka (SQLGridPlugin), který ale výsledek zobrazuje ve formě tabulky (gridu).
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Nadpis grafu | Možnost zadat nadpis, pokud jej chcete u grafu rovněž zobrazit. |
Typ grafu |
Je možné vybrat z čtyřech typů grafů:
Typ grafu mj. ovlivňuje, jaké další položky se budou zadávat. |
Zobrazovat legendu a nadpis legendy | Možnost nastavit, zda chcete ke grafu zobrazit i legendu a jakou. |
Zobrazovat 3D | Možnost zvolit, zda má být graf zobrazen jako prostorový nebo jen plošný. |
Zobrazovat černobíle | Je-li zatrženo, bude graf zobrazen pouze v černobílém provedení. |
Styl popisků | Určuje, jak se má zobrazit popis jednotlivých hodnot grafu (hodnota, procento, hodnota a procento,...). |
Styl |
Je k dispozici pouze pro typ grafu Sloupcový. Umožňuje nastavit, zda se mají SQL dotazy zobrazovat vedle sebe, za sebou, nad sebou atd. Význam jednotlivých možností je zřejmý z následujících obrázků sloupcového grafu o dvou veličinách (2 SQL, viz dále seznam SQL):
|
Vždy kruh |
Je k dispozici pouze pro typ grafu Koláčový. Je-li zatrženo, pak výsledný graf přizpůsobí tak, aby i při zmenšené velikosti okna měl tvar kruhu. Význam je zřejmý z následujících obrázků:
Příklad zobrazení téhož sloupcového grafu. V prvním případě, je-li položka Vždy kruh zatržena, v druhém případě, není-li zatržena. |
seznam SQL |
Je k dispozici pouze pro typ grafu Sloupcový, Spojnicový, Koláčový. Každá řada grafů má vlastní SQL dotaz (SQL1, SQL2.....). Zde je možno si jednotlivé SQL dotazy pro daný graf nadefinovat. Ke každému SQL pak zadáte odpovídající SQL výraz v následující položce SQL výraz. Pro přidání, odstranění či přejmenování SQL slouží funkce Přidat, Odstranit resp. Přejmenovat, které lze vyvolat buď z lokální nabídky menu nad seznamem SQL nebo které jsou dostupné jako funkční tlačítka navigátoru pod seznamem SQL.
Příklad definice doplňku typu SQL dotaz - graf se třemi SQL a vyvolanou nabídkou lokálního menu Platí:
|
SQL výraz |
Položka pro zadání vlastního výrazu. 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 Edituj. Zde je třeba zadat SQL výraz. Platí:
Objasníme na příkladech: Příklad 1
V agendě Adresář firem si ke každé firmě chceme zobrazit ve formě grafu fakturovanou částku bez daně z faktur vydaných. Tudíž si nadefinujeme definovatelný formulář se jménem Prodeje z FV (Graf) pro třídu Firma, do nějž vložíme prvek Doplněk typu SQL dotaz - graf. Musíme zde zadat příslušný SQL výraz pro vrácení požadovaných záznamů z databáze v požadované syntaxi. V našem případě si zadáme SQL pro načtení částky z hlaviček faktur vydaných pro danou firmu:
Styl popisku navolíme na Hodnoty, Styl na Skupinový. Výsledek ve formě sloupcového grafu pak může být následující: Příklad výsledného definovatelného formuláře Prodeje z FV (Graf) k objektu Firma, s využitím doplňku SQL dotaz - graf. Příklad 2
Stejný případ jako výše pouze s přidáním datumových popisků osy x. Tudíž si nadefinujeme definovatelný formulář se jménem Prodeje z FV časově (Graf) pro třídu Firma, do nějž vložíme prvek Doplněk typu SQL dotaz - graf. Zadáme následující SQL:
Styl popisku navolíme na Hodnoty, Styl na Skupinový. Výsledek ve formě sloupcového grafu pak může být následující: Příklad výsledného definovatelného formuláře Prodeje z FV časově (Graf) k objektu Firma, s využitím doplňku SQL dotaz - graf. Příklad 3
V tomto složitějším příkladu budeme pracovat se změnou barvy, popiskem osy x a porovnáním dvou hodnot. Doplníme předcházející příklad, kdy si v agendě Adresář firem ke každé firmě zobrazíme ve formě grafu ročně fakturovanou částku bez daně z faktur vydaných a přijatých zároveň. Tudíž si nadefinujeme definovatelný formulář pod názvem Prodeje a Nákupy (Graf) pro třídu Firma, do nějž vložíme prvek Doplněk typu SQL dotaz - graf. Musíme zde zadat příslušné SQL výrazy pro vrácení požadovaných záznamů z databáze v požadované syntaxi. V našem případě si zadáme dvě SQL pro načtení částek z hlaviček faktur vydaných a přijatých pro danou firmu: SQL1, které přejmenujeme na Faktury vydané
SQL2, které přejmenujeme na Faktury přijaté
Funkčnost obou těchto složitějších SQL je optimalizována pro Firebird verze 2.5. Zatrhneme Zobrazovat legendu, jejíž popis zadáme Typy dokladů, Styl popisku navolíme na Hodnoty a Styl na Skupinový. Výsledek ve formě sloupcového grafu pak může být následující: Příklad výsledného definovatelného formuláře Prodeje a Nákupy (Graf) k objektu Firma, s využitím doplňku SQL dotaz - graf. Při porovnávání hodnot musíme mít na zřeteli, že v některém intervalu může být jedna z hodnot nulová (např. v našem příkladě je nulová částka z FP v systémovém období 0000 a poté v období 2011). SQL výraz tedy musíme stavět tak, aby s touto nulovou hodnotou počítal a jako nulovou ji i vypsal. Pokud by byla nulová hodnota ze seznamu vypuštěna "rozjely" by se porovnávané hodnoty. Porovnání částek v našem příkladě je poněkud zjednodušeno. Ve skutečnosti bychom pro sumární hodnoty prodeje a nákupu museli započítat i jiné doklady, např. dobropisy atd. SQL výraz by byl tedy o to komplexnější. Funkčnost SQL snadno ověříme tak, že si nadefinujeme zároveň s SQL doplňkem Graf i SQL doplněk Tabulka, který nám pro tentýž SQL výraz musí vypsat totožné hodnoty. Pokud žádné hodnoty nevypíše, je v SQL chyba. |
Na základě definice provádí SQL dotaz a výsledek zobrazuje pomocí gridu (needitovatelného seznamu). (Viz prvek needitovatelný seznam, ovšem s tím, že zde nejsou k dispozici všechny možnosti needitovatélného seznamu, jako tomu bývá jinde, jako např. označování apod.). Názvy jednotlivých sloupců se automaticky odvozují od případně aliasovaných názvů sloupců v SQL výrazu.
Seznam standardně podporuje třídění a to pomocí kliknutí na hlavičku sloupce nebo nastavením volbou v lokálním menu nad hlavičkou sloupců. Viz třídění u memory datasetů. Velikosti a uspořádání sloupců a vybrané třídění se na daném formuláři pamatují.
Doplněk podporuje zobrazení lokálního menu přes pravé tlačítko myši s funkcí Uložit obsah buňky do schránky, která umožní přes běžnou zkratku ctrl+C zkopírovbat obsah buňky a přes zkratku ctrl+V jej zase vložit na potřebné místo.
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Zobrazovat informační panel | Možnost zobrazit v Udf formuláři nad seznamem informační panel. |
Zobrazovat navigátor |
Možnost zobrazit v Udf formuláři pod seznamem lištu navigátoru:
Navigátor v této záložce obsahuje tlačítka:
|
SQL výraz |
Položka pro zadání vlastního výrazu. 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 Edituj. Zde je třeba zadat SQL výraz. Objasníme na příkladech: Příklad 1
Pokud např. pro objekt Firma si nadefinujeme formulář s doplňkem SQL dotaz-tabulka a zadáme následující výraz
dostaneme v adresáři firem při zobrazení takovéhoto formuláře grid o jednom sloupci s nadpisem Celkem bez daně, v němž budou zobrazeny celkové částky z hlaviček faktur vydaných vystavených na aktuální firmu. Můžeme přidat sloupec se zkratkou dokladu a číslem, např.:
Tímto způsobem můžeme konstruovat praktické příklady, viz následující řešení. Příklad 2
Mějme zakázky, kde si ke každé zakázce chceme zobrazovat např. přehled faktur (řádků faktur) na ni vystavených. Tudíž si k zakázce nadefinujeme definovatelný formulář, do nějž vložíme Vodorovný panel a prvek Doplněk typu SQL dotaz - tabulka. Zadáme příslušný SQL výraz pro vrácení požadovaných záznamů z databáze a údajů do požadovaných sloupců, např. pro faktury přijaté. Totéž zopakujeme např. pro faktury vydané. Výsledek může být např. následující: Příklad výsledného Udf formuláře k objektu Zakázka, s využitím doplňku SQL dotaz - tabulka, kde se k zakázce zobrazují seznamy požadovaných dokladů ALIAS v SQL výrazu vs. znakové sady - alias při provozu na Firebird/MSSQL může obsahovat libovolné znaky (unicode). Při provoze s Oracle může obsahovat pouze znaky z kódování, ve kterém běží databáze (Windows-1250). |
Obsahuje definici funkčních tlačítek a k nim příslušných akcí.
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Šířka tlačítka |
Uživatel si může u každého tlačítka nadefinovat Velikost tlačítka (jedna velikost společná pro všechny). U doplňku je možné definovat, zda mají být tlačítka orientována vodorovně nebo svisle. U tlačítek není možné definovat ShortCut, protože tlačítka v doplňku touto vlastností nedisponují. Toto je možné definovat pouze v menu. |
Výška tlačítka | |
Uspořádání | |
Vlastnosti jednotlivých tlačítek včetně výrazu pro akci, která se má vykonat při stisku tlačítka, se definují pomocí editovatelného seznamu. Obsažené položky: | |
Typ |
Vyberete typ akce. K dispozici jsou následující typy akcí: Jejich konkrétní popis včetně příkladů je uveden dále. ShellCommand
Umožní vyvolat libovolný program např. Poznámkový blok a předat mu parametry. Výraz zadaný v položce Výraz by měl po vyhodnocení vrátit řetězcovou hodnotu ve tvaru 'PROGRAM|Parametry', např. 'NOTEPAD|c:\bat\davka.bat' Nezapomeňte, že řetězcové hodnoty je zapotřebí uzavírat do jednoduchých uvozovek. ABRAServiceCommand
Umožní vyvolat "service" z ABRA Gen. Uživatel si může vybrat z existujících "servisů". Výraz zadaný v položce Výraz by měl po vyhodnocení obsahovat název aplikačního modulu z ABRA Gen, např. POS. Názvy některých aplikačních modulů a odpovídající název pro jejich volání:
ABRASiteCommand
Umožní vyvolat agendu/site z ABRA Gen a předat jí tzv. SiteCommand. Výraz zadaný v položce Výraz by měl po vyhodnocení obsahovat:
K dispozici jsou následující SiteCommandy:
Kromě výše uvedených jsou v systému k dispozici ještě další SiteCommandy a to buď definované na předkovi všech Site, na DynSite či RollSite nebo případně na jednotlivých agendách. Jedná se o SiteCommandy využívané například pro volání akcí ze záložek Začínáme. Lze je ale využívat i k jiným účelům, např. zde (samozřejmě jen ty, které jsou zde smysluplné). Příklady některých z nich:
Použití objasníme na příkladech: Příklad
Výraz pro vyvolání číselníku dealerských tříd (např. z adresáře firem), ve kterém se fokus postaví v záložce Seznam na záznam s určitou identifikací a to na deal. třídu, do které patří aktuální firma:
Příklad - DoShow
Výraz pro zobrazení detailu určitého záznamu, např. pro vyvolání číselníku dealerských tříd (např. z adresáře firem), kde se fokus postaví na detail záznamu s určitou identifikací, zde na deal. třídu, do které patří aktuální firma (přičemž číselník bude zafiltrován pouze za danou deal. třídu):
Příklad - DoNew
Výraz pro vyvolání číselníkové agendy, např. Adresáře osob, v režimu "Nový":
Příklad - DoNew s předvyplněním jedné položky
Příklady výrazů pro TemplateParams pro jednu položku k předání nové agendě: Výraz pro vyvolání agendy nabídek vydaných v režimu "Nový" z Adresáře firem s předvyplněním firmy firmou podle položky ID z objektu (firmy), ke kterému je nadefinován takový Udf formulář:
Výraz pro vyvolání agendy objednávek přijatých v režimu "Nový" z číselníku zakázek s předvyplněním firmy firmou z údajů dané zakázky, tj. objektu, ke kterému je nadefinován takový Udf formulář): s předvyplněnou firmou podle ID firmy z objektu (zakázky), ke kterému je nadefinován takový Udf formulář:
Příklad - DoNew s předvyplněním dvou a více položek
Příklady výrazů pro TemplateParams pro více položek k předání nové agendě: Výraz pro vyvolání agendy objednávek přijatých v režimu "Nový" z číselníku zakázek s předvyplněním firmy firmou z údajů dané zakázky, tj. objektu, ke kterému je nadefinován takový Udf formulář, a s předvyplněným popisem podle názvu objektu (zakázky), ke kterému je nadefinován takový Udf formulář:
Výraz pro vyvolání agendy aktivit v režimu "Nový" z číselníku zakázek s předvyplněním firmy firmou z údajů dané zakázky, tj. objektu, ke kterému je nadefinován takový Udf formulář, s předvyplněním střediska střediskem z údajů dané zakázky a s předvyplněnou zakázkou podle položky ID z objektu, ke kterému je nadefinován takový Udf formulář, tj. podle ID aktuální zakázky:
Příklad - DoNewOnlyWithoutPrompt s importem aktuálního dokladu
Výraz pro vyvolání agendy faktur vydaných v režimu "Nový" s tím, že se do rozeditované faktury rovnou naimportuje aktuální dodací list, ke kterému je nadefinován takový Udf formulář:
Uvedený příklad nemá příliš praktického využití, má pouze demonstrovat tuto možnost a konstrukci výrazu. Nijak neřeší, zda je aktuální doklad již uložen nebo, jde-li o již existující doklad, zda je importovatelný (pokud není, systém nahlásí, že tohoto zástupce nelze spustit). SiteCommand s importem jiných dokladů byste využili spíše v rámci skriptování (např. po uložení nového DL rovnou vyvolat jeho import do FV apod. Viz též příklady skriptování.) Příklad - QueryByUserDynSQLCondition
Výraz pro vyvolání agendy faktur přijatých, ve které zobrazí pouze faktury přijaté k dané firmě:
Uvedený příklad výrazu je zjednodušený a nezobrazuje všechny faktury pro danou firmu, pokud byla firma zásadně opravována po vytvoření nějakých faktur. Pokud bychom chtěli brát v potaz i případné zásadní opravy firem či jejich slučování, pak by výraz mohl vypadat následovně:
Příklad - FilterByUserDynSQLCondition
Výraz pro vyvolání agendy zakázek z číselníku firem, ve které se zobrazí pouze zakázky, které mají zadánu vazbu na aktuální firmu:
Příklad - QueryByID
Mějme v agendě Výdaje vozidel nadefinovaný Udf formulář, na němž chceme mít funkční tlačítko pro zobrazení detailu jízdy, ke které je aktuální výdaj připojen, ovšem na rozdíl od DoShow zde se záložkami a s vytvořením červeného omezení. Výraz pro vyvolání agendy Jízdy, ve které se zobrazí pouze konkrétní jízda, k níž je připojen aktuální výdaj, pak může vypadat například následovně:
Jedná se tedy o zobrazení detailu záznamu z dokladové agendy, který se váže k aktuálnímu záznamu, k němuž je definován Udf formulář. Podobného efektu bychom dosáhli použitím DoShow
de ovšem s tím, že agenda by sice opět byla omezená jen za daný záznam, ale na záložce Omezení by to nebylo nijak uživatelsky vidět. Příklad - DoEdit
Mějme v agendě Výdaje vozidel nadefinovaný Udf formulář, na němž chceme mít funkční tlačítko pro zobrazení detailu jízdy, ke které je aktuální výdaj připojen, a rovnou pro rozeditování dané jízdy. Výraz pro vyvolání agendy Jízdy, ve které se zobrazí pouze konkrétní jízda, k níž je připojen aktuální výdaj, s tím, že se rovnou otevře v editačním režimu, pak může vypadat například následovně:
Příklad - DoEditOnly
Výraz pro vyvolání číselníku dealerských tříd (např. z adresáře firem), ve kterém se dohledá záznam s určitou identifikací a to na deal. třídu, do které patří aktuální firma s tím, že se rovnou otevře v editačním režimu bez dalších záložek:
CallToCommand
Pokud je v agendě Telefonní přístroje nadefinován přístroj s ovladačem aplikace sloužící pro volání, umožní tato funkce vyvolat danou aplikaci (např. Skype, jehož ovladač je dodáván) a předá jí identifikaci volaného. Výraz zadaný v položce Výraz by měl po vyhodnocení obsahovat volací adresu, např. pro program Skype (karel.vonasek). Příklad
Vytvoříme definovatelný formulář pro Adresář firem s přidaným doplňkem Tlačítka s akcemi - CallToCommand. Do položky výraz uvedeme:
Poté bude při kliku na tlačítko definovatelného formuláře vyvolán patřičný telefonní klient, např. Skype, kterému bude předána hodnota uvedená v poli Tel. 1 na Sídle firmy v Adresáři firem. MailToCommand
Umožní vyvolat aplikaci sloužící pro elektronickou poštu (např. MS Outlook, Mozilla Thunderbird atp.) a předá jí identifikaci adresáta. Výraz zadaný v položce Výraz by měl po vyhodnocení obsahovat e-mailovou adresu např. vonasek@firma.cz. Tj. po stisku tlačítka se pak prostřednictvím asociace s protokolem mailto: otevře aplikace e-mailového klienta asociovaná s tímto protokolem s rozepsanou novou e-mailovou zprávou a předvyplněnou e-mailovou adresou. Viz též využití mailto:. Příklad
Vytvoříme definovatelný formulář pro Adresář firem s přidaným doplňkem Tlačítka s akcemi - MailToCommand. Do položky výraz uvedeme:
Poté bude při kliku na tlačítko definovatelného formuláře vyvolán výchozí mailový klient, např. Thunderbird, kterému bude předána hodnota uvedená v poli E-mail na Sídle firmy v Adresáři firem. RunScript
Umožní spustit skriptovací funkci (tj. libovolnou funkcionalitu realizovanou pomocí skriptování) zadanou v položce Výraz v syntaxi JmenoBalicku.JmenoKnihovny.JmenoMetody bez parametrů. Skriptovací funkce, která se pomocí této akce volá, musí být deklarována ve správné syntaxi v nějakém balíčku skriptů, ve skriptu druhu Knihovna. Jednotlivé procedury nebo metody musí být navrženy tak, že očekávají jediný parametr Self:TSiteForm, což je "form", na kterém je uživatelsky def. formulář, který akci RunScript obsahuje. Tento parametr se do volání přidá automaticky. Hlavičku funkce ve správném formátu si lze nechat vygenerovat v agendě Balíčky skriptů pomocí funkce Vygenerovat hlavičku. Příklad
Deklarace metody: Deklarujeme metodu jménem "MojeMetoda" ve skriptování v balíčku "MujBalicek" s knihovnou "MojeKnihovna":
Volání:
|
Popis | Zde zadáte, jaký popis se má zobrazovat na daném tlačítku. |
Hint | Zde můžete zadat text, který se bude zobrazovat jako tooltip tlačítka (po najetí myší). |
Výraz |
Výraz pro vlastní akci. 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 (může se lišit dle verze a nastaveného 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ů. Běžný uživatel se nemusí konstruováním těchto výrazů vůbec zabývat, může si objednat jejich přípravu u servisních konzultantů výrobce. |
Umožní zobrazit informace o obratech vybrané firmy. V podstatě funguje jako přehled obratů dodavatelů a odběratelů dohromady (viz reporty Obraty odběratelů a Obraty dodavatelů) provedený pro jednu firmu. Bere se ohled i na případné zásadní opravy a slučování firem, viz předchůdce a následovníci firem. (Tj. pokud byla firma zadaná na dokladu později opravena zásadní opravou v adresáři příp. došlo ke slučováním firem.) Je možné určit, za jaké období jsou dané informace požadovány.
K tomuto doplňku se mimo údajů popsaných u prvku Doplněk v definici Udf formuláře zadávají následující údaje:
Nadpis | Popis |
---|---|
Omezovat podle datumu dokladu | Možnost omezit za doklady vystavené jen v zadaném časovém intervalu. |
Faktury | Viz popis obdobného prvku v reportech Obraty odběratelů a Obraty dodavatelů. |
Účtenky | Viz popis obdobného prvku v reportech Obraty odběratelů a Obraty dodavatelů. |
Zálohové listy | Viz popis stejnojmenného prvku v reportech Obraty odběratelů a Obraty dodavatelů. |
Zálohové listy daňové | Viz popis stejnojmenného prvku v reportech Obraty odběratelů a Obraty dodavatelů. |
Stav zaplacení | Viz popis stejnojmenného prvku v reportech Obraty odběratelů a Obraty dodavatelů. |
Výraz | Položka pro zadání vlastního výrazu. 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 Edituj. Zde je třeba zadat výraz, který bude vracet ID firmy, ke které se má přehled zobrazovat. |