Datový model - datové položky objektů
Dále naleznete popis těchto témat:
Datový model (seznam datových položek objektů resp. datasetů) může být k dispozici např.:
- v definici vstupních formulářů - při vkládání položek typu "Text", "Datum", "Číslo" aj. a dále v části Datové položky objektu ve vyvolaném Editoru výrazů
- v definici předkontací - v části Datové položky objektu v vyvolaném Editoru výrazů
- v definici panelů definovatelných údajů - v části Datové položky objektu ve vyvolaném Editoru výrazů, je-li buňka definována typem Objekt
- v definici definovatelného sloupce - v části Datové položky objektu ve vyvolaném Editoru výrazů, je-li sloupec definován typem Objekt
- v definici tiskových sestav - při vkládání položek typu "Text z databáze", "Obrázek z databáze", "Zatržítko" a jiných a dále při definici výrazů, skriptů, podmínek pro tisk apod. v části Datové položky objektu ve vyvolaném Editoru výrazů
- v definici definovatelných exportů - při vkládání položek typu "Text z databáze", viz popis vlastnosti Data a dále v části Datové položky objektu ve vyvolaném Editoru výrazů
- v definici výpočtového schématu - v položce "Položka" (při vkládání nové položky do definice) a dále v části Datové položky objektu ve vyvolaném Editoru výrazů
- v definici součtu (sčítané položky výpočtového schématu) - v části Datové položky objektu ve vyvolaném Editoru výrazů
- v definici druhů výkonů - v části Datové položky objektu ve vyvolaném Editoru výrazů
- v definici plateb - v části Datové položky objektu ve vyvolaném Editoru výrazů
- v editoru definic editačních seznamů - v položce "Položka" a dále v části Datové položky objektu ve vyvolaném Editoru výrazů
- v hromadných opravách v okně s definovatelným výčtem hromadně opravitelných položek (pokud se opravovaná položka vybírá z datového modelu)
- v definici pravidel pro zpracování doručených e-mailů - v položce "Název položky" (viz akce Změnit položky) a dále v části Datové položky objektu ve vyvolaném Editoru výrazů
- v definici kategorizačních údajů pro typ kategorie Položka resp. Číselníková položka
- v definici rozhodných položek v agendě Povolení oprav.
- apod.
Viz též Odkud lze vyvolat editor výrazů.
Jaký přesně bude mít vyvolaný datový model vzhled, závisí na tom, z jakého místa programu byl vyvolán.
V datovém modelu jsou na první úrovni zobrazovány:
- buď přímo objekty - případ definic předkontací, panelů definovatelných údajů a definic výrazů ve mzdových agendách (výpočtové schéma, definice součtu, definice druhů výkonů, definice plateb, ...). Nabízený objekt na hlavní úrovni je pak v daném místě typicky jediný:
Příklad, kdy se nabízí pouze jeden BO, v tomto případě Cizí bankovní účty, agendy Bankovní účty k firmě
- nebo datasety - případ definic výrazů a položek vkládaných do tiskových sestav resp. do definovatelných exportů. Nabízených datasetů na první úrovni je pak typicky více. Nabízí se datasety, které jsou definovány jako datové zdroje příslušného dynamického SQL pro dané programové místo. Viz kap. DynSQLEditor - subzáložka datasety.
Příklad, kdy se nabízí více datasetů při definici vlastností prvků Text z databáze, tj. položek vkládaných do definice tiskových sestav
Na dalších (podřízených) úrovních jsou k dispozici další položky objektů. Podle toho, odkud a pro jaký účel je vyvolán, jsou v datovém modelu všechny položky objektu nebo jen některé:
- všechny dostupné - např. je-li vyvolán při definici tisk. sestav, def. exportů, výrazů ve mzdových agendách apod.
Příklad datového modelu vyvolaného z definice definovatelného exportu při vkládání položky typu Text z databáze
- jen některé zafiltrované podle typu - je-li vyvolán v okamžiku, kdy lze vybírat jen z položek nějakého typu (např. při vložení položky do nějakého definovatelného formuláře, kde lze vložit jen položku určitého typu, nebo při hledání položky v definici výpočtového schématu, kdy lze do funkce Hledat zadat pouze položku určitého typu, v definicích ochrany dat, kdy se nabízí jen vybrané položky dané výrobcem apod.). Pak je v nadpisu okna uvedeno, o jaký typ položek se jedná:
Příklad datového modelu vyvolaného z definice výpočtového schématu při vkládání počítané položky, kdy takovou položkou může být jen některá z položek typu Celé číslo nebo Číslo. Obdobně ve funkci Hledat ve výpočtových schématech.
Příklad datového modelu vyvolaného z definice vstupního formuláře při vkládání prvku text, kdy takovým prvkem může být jen některá z položek typu Znaky
Příklad položek nabízených v k třídě objektů Aktivit (srovnejte s datovým modelem Aktivity nabízeným jinde)
- jen některé z jiného důvodu - je-li vyvolán z definice automatického vzkazu typu výraz. Zde má objekt na hlavní úrovni dvě podúrovně: NEW a OLD, každá větev dále jen s položkami na 1.úrovni. Význam viz položka Výraz v definici automatických vzkazů.
Příklad datového modelu vyvolaného z definice automatického vzkazu
Dále platí:
Jsou-li pro daný BO nadefinovány nějaké uživatelsky definovatelné položky, jsou rovněž dostupné mezi nabízenými položkami (vlastnostmi) daného BO. Je-li u nich zatrženo Umožnit podle této položky řadit seznam, jsou pak dostupné též rovnou přes hlavní dataset MAIN (např. v definici tiskových sestav, kdy je pak uživatelsky definovatelná položka dostupná rovnou jako MAIN.DefPolozka a nemusí se zpřístupňovat položka datasetu s ID business objektu (MAIN.ID.DefPolozka)).
Všechny BO, které jsou v programu k dispozici, jsou popsány v dokumentaci GenDoc.chm (viz Jak vyvolat nápovědu - struktury a definice), v části Business objekty, kde najdete jednotlivé položky BO, jejich názvy, jejich labely, popisky, datové typy atd.
Položka BO, resp. datasetu se může odkazovat na ID jiného BO, pak jsou k dispozici rovněž všechny jeho položky. Některé z těchto položek se opět mohou odkazovat na další BO, pak jsou k dispozici jejich položky atd. Obecně platí, že čím víc je "vnořená" položka, kterou v datovém modelu vybereme, tím déle bude trvat její vyhodnocení (jelikož se postupně musí načíst jednotlivé volané BO).
Z tohoto důvodu je u datasetů lepší používat položky definované v daném DynSQL přes aliasy, které jsou na první úrovni (na úrovni datasetů) v datovém modelu k dispozici (typicky položky se jménem tvořeným aliasem a jménem položky přes podtržítko např. Country_Name, viz kap. DynSQLEditor-datové položky zdroje dat.
Kromě datových objektů daných výrobcem se může nabízet i vlastní, definovaný uživatelem pomocí SQL. Tato možnost je k dispozici např. v editoru zobrazovaných údajů, viz záložka SQL v rámci funkce Nastavení.
Zobrazení datového modelu je pro přehlednost uspořádáno do hierarchického stromu. Má-li zobrazená položka alespoň jeden podřízený záznam, pak se vlevo od ní zobrazuje symbol nebo , takovým místům stromu pak říkáme uzly stromu:
- - uzel stromu pro danou větev má podřízené větve a je zabalený, jemu podřízené záznamy nejsou viditelné. To, který ze symbolů je zobrazen, závisí na zvoleném vzhledu systému ABRA Gen.
- - uzel stromu pro danou větev je rozbalený a ve stromu jsou viditelné i všechny záznamy podřízené rozbalenému záznamu. To, který ze symbolů je zobrazen, závisí na zvoleném vzhledu systému ABRA Gen.
Pokud daný uzel pro BO, resp. dataset rozbalíme, pak se zobrazí položky, které jsou na něm k dispozici:
Příklad rozbalení hlavní úrovně Business objektu Řádky faktury vydané
Ze zobrazeného datového modelu lze vybírat položky:
- dvouklikem myší na požadovanou položku
- stiskem klávesy Enter - stojí-li fokus na požadované položce
- funkčním tlačítkem, které je pro výběr k dispozici (funkční tlačítko OK nebo funkční tlačítko Přidej, je-li datový model vyvolán z Editoru výrazů)
Vybraná položka se přidá do editovaného výrazu na pozici kurzoru funkci, na které aktuálně stojí kurzor, byl-li datový model vyvolán v editace výrazů nebo se vyplní do příslušné položky pro výběr z datového modelu, byl-li datový model vyvolán z ní.
Pro každou položku je v seznamu uveden:
- Popis položky neboli "label" položky, (např. Vlastník, Celkem atd.)
- Název položky (např. Parent_ID, TAmount atd.)
- Grafická značka indikující typ položky:
- - Business objekt
- - Integer
- - Numeric
- - Boolean
- - DateTime
- - String
Pod datovým modelem jsou k dispozici přepínače pro nastavení třídění:
Přepínače pro nastavení, zda třídit dle abecedy a podle čeho položky prioritně v seznamu zobrazovat, zda dle popisu (českých popisů položek) či dle názvů (anglických názvů položek)
Není-li abecední třídění nastaveno, je pořadí položek dáno definicí příslušného Business objektu.