Návody > Export do SQL databáze >Report tabulka

Report tabulka

Report Tabulka

V tabulka typu Report je především určena pro export dat z více modulů současně, kde modul má přiřazen jeden či několik řádků a proměnné daného modulu jsou organizovány ve sloupcích. Z tohoto důvodu byl do definice sloupců tabulky doplněn typ sloupce "Prefix, který se neexportuje do SQL databáze, ale slouží  jen jako prefix proměnných definovaných na daném řádku. Není tedy nutné vypisovat do jednotlivých buněk celé jméno proměnné, stačí zadat jméno proměnné bez prefixu a ve sloupci prefix zadat konkrétní prefix řádku. Při exportu je prefix z daného řádku ke všem proměnným na řádku automaticky doplněn. Existují i další metody, jak si ušetřit práci s opisování stejných textů, ty budou popsány dále.

Názvy sloupců v definici řádků tabulky

Ve stromu exportního projektu se v tabulce typu Report nachází větev řádky. Ta obsahuje předpis všech řádků. které se pokusí systém exportovat při každém spuštění úlohy. V záhlaví řádků jsou zobrazeny sloupce tak, jak jsou definovány v tabulce sloupců dané SQL tabulky. Jejich názvy jsou však v některých případech označeny znakem '*' a někdy různě uvozeny.

Ukázka definice řádků tabulky typu Report s využitím předvoleb a odkazů

Ukázka definice řádků tabulky typu Report s využitím předvoleb a odkazů

Doplňky k názvu sloupce mají přispět ke snadnější orientaci v tabulce a jsou tyto:

'*' - označuje sloupce, které jsou součástí primárního indexu, priorita sloupců je určena pořadím definice v tabulce sloupců
/Název sloupce/ - takto označený sloupec nebude exportován do SQL databáze, slouží jen k účelům exportu (prefix, poznámka, neznámý typ hodnot)
/Název sloupce=@/ - Název sloupce=@ poukazuje na to, že sloupec je typu prefix a zobrazení znaku '@' v buňkách znamená, že zde bude automaticky při exportu doplněn obsah sloupce typu Prefix v daném řádku
<Název sloupce> - uvození jména sloupce do špičatých závorek poukazuje na to, že hodnoty jsou vždy předvolené a do sloupce se při definic řádků nic nezadává (sloupce typu WriteTime - čas zápisu řádku do SQL, TaskTime - čas spuštění úlohy, atp.)

Vkládání, kopírování a mazání definic řádků

Jednotlivé řádky lze do tabulky přidávat Insert, v tabulce posouvat Alt+Up Alt+Down, kopírovat Ctrl+C Ctrl+V i mazat Delete. Operace jsou rovněž dostupné přes hlavní i lokální nabídku a nástrojovou lištu. Nechtěně provedené operace je možné vrátit zpět Ctrl+Z.

Jednotlivé sloupce v řádku je potřeba vyplnit požadovanou hodnotou dle typu sloupce, která bude sloužit k exportu dat do SQL databáze. Pokud je v definici sloupců zadán i sloupec typu Prefix, není potřeba ve sloupcích, které vyžadují zadání proměnné, prefix zadávat.

Předvolené hodnoty v definici řádků

V definici sloupců tabulky je možné zadat ve sloupci Předvolba libovolný text. Pokud definujeme nový řádek a ponecháme některé sloupce nevyplněné, použije se tato předvolba pro daný sloupec a zobrazí se ve špičatých závorkách, např. <@.TeplVenkovni>. Takto zobrazená hodnota v buňce říká, že daný sloupec nebyl zadán a byla použita předvolba z definice sloupců tabulky a znak '@' nahrazuje text ve sloupci typu Prefix daného řádku.

prod_tip_sm Tip!

Pokud budou exportována data z více modulů stejného typu, je vhodné definovat sloupec typu prefix, do kterého se budou uvádět jen prefixy konkrétních modulů pro daný řádek. Sloupce pak mohou být definovány jako jednotlivé proměnné modulu, jejichž jméno bude u jednotlivých modulů stejného typu pravděpodobně shodné. Proto je vhodné jméno proměnné zadat jako předvolbu při definici sloupců. Při vkládání definic řádků do tabulky tak bude potřeba zadat pouze prefix modulu, ostatní sloupce se doplní přednastavenou hodnotou.

Odkazy mezi sloupci při definici řádků

Při definici řádků může nastat potřeba, aby se dva či více sloupců odkazovaly na stejnou proměnnou. Typicky například při použití typu sloupců Value, Valid a UpdateTime, kde z jedné proměnné lze získat hodnotu, její validitu a čas, kdy byla naposledy občerstvena. Takto definované tři sloupce vyžadují zadání u každého řádku totožně třikrát tutéž proměnnou.

Aby se předešlo zbytečným duplicitám při zadávání, byl  zaveden odkaz na hodnotu jiného sloupce ve stejném řádku. Do buňky stačí zadat text $Název sloupce a při  zadání či změně hodnoty v odkazovaném sloupci se změna automaticky promítne do sloupce s odkazem. Odkazované hodnoty jsou pak uvozeny znaky $: $@.TeplVenkovni$.

Odkaz na hodnotu jiného sloupce stejného řádku lze použít i v předvolbě. Takováto hodnota bude pro přehlednost zobrazena takto: <$@.TeplVenkovni$>.

Zadání prázdné proměnné

Při kontrole (kompilaci) se kontroluje existence všech proměnných a zadání všech sloupců. Pokud není proměnná, nebo hodnota v buňce zadána, je vyhlášena chyba, aby nedošlo omylem k opomenutí zadání. Pokud však nemá být hodnota daného sloupce a řádku do SQL skutečně exportována (nemá být například použita předvolba), je potřeba zadat namísto prázdné buňky  znak '$', nebo text '$EMPTY'. Takto vyplněná buňka nebude kontrolována a do SQL databáze nebude zapisována.

prod_tip_sm Tip!

Odkazy na sloupce, lze provádět při definici řádků i v předvolbách při definici sloupců. Pokud je však potřeba do konkrétní buňky zadat jinou proměnnou, než je předvolená, stačí její jméno zadat do buňky. Prefix modulu se doplní automaticky ze sloupce typu Prefix, pokud je zadán.