Inštalačné sady - všeobecne
Tu nájdete:

Systém ABRA Gen poskytuje řadu prostředků zákaznické modifikovatelnosti systému umožňujících upravit jej tak, aby splňoval požadavky uživatele. Tým však zároveň vyvstáva potreba mať možnosť rýchleho a bezchybného doručenia výsledného riešenia užívateľovi podľa jeho potrieb. Riešenie pritom môže pozostávať z balíčkov skriptov, definícií formulárov, definícií tlačových zostáv a exportov, definícií panelov, definícií obmedzení, definícií stĺpcov, užívateľsky definovateľných položiek, SQL skriptov, definícií DynSQL, užívateľsky definovateľných číselníkov, ... Niektoré časti je možné exportovať ručne a u klienta ich importovať, ale niektoré (typicky užívateľsky definovateľné položky) samostatnú podporu pre export a import nemajú.
Práve z tohto dôvodu je k dispozícii možnosť definovať si tzv. inštalačné sady. Do jedné instalační sady pak lze různé součásti zákaznického řešení "zabalit" ve formátu XML a tuto sadu potom v jiné instalaci (typicky u klienta) jednoduše načíst.
Inštalačné sady ďalej umožňujú dodávať odborové riešenia, ktoré by podporovali organizácie podnikajúce v určitom odvetví. Příkladem oborového řešení bylo dříve řešení pro organizace prodávající pevná paliva (uhlí), které mají povinnost odvádět daň z pevných paliv.
Použitie: Tvorba zákaznických (oborových) řešení:
Technik/konzultant, který má za úkol pro určitou skupinu klientů připravovat nějaké objednané řešení, si spustí novou agendu Instalační sady a vytvoří novou instalační sadu. Postupne vytvára (v rámci zákazníckeho riešenia) jednotlivé časti (formuláre, položky, definície zostáv, balíčky skriptov atď.). Tieto časti okamžite začleňuje (formou odkazu) do založenej inštalačnej sady. V okamihu, keď všetko funguje a inštalačná sada obsahuje odkazy na všetky svoje súčasti, môže vykonať export inštalačnej sady. Systém z odkazov uvedených v inštalačnej sade vyhľadá aktuálne dáta a vytvorí jeden exportný súbor. Tento súbor je následne možné poslať/odovzdať klientovi – prípadne ho u neho do agendy Inštalačné sady naimportovať. V prípade, že inštalačná sada s rovnakým menom už existuje, užívateľ je na to upozornený a môže rozhodnúť, ako sa má systém zachovať (zaktualizovať aktuálnu, neimportovať). V prípade, že existujú jednotlivé súčasti inštalačnej sady (report, formulár, …), tak záleží na tom, či ide o aktualizáciu inštalačnej sady, ktorá v systéme existovala a ktorá už obsahovala problematické súčasti. V prípade, že problematické súčasti neboli súčasťou aktualizovanej inštalačnej sady, užívateľ je opäť upozornený.

Inštalačné sady podporujú aj vytváranie verzií. Typicky sa môže stať, že sa vytvorí inštalačná sada pre určité objekty, ktoré sa vyexportujú do iného systému, ale tieto objekty dôjdu v zdrojovom systéme s časom zmeny. Pokiaľ je na pôvodnej inštalačnej sade začiarknutý parameter Sledovanie verzií, nie je nutné pre ne vytvárať novú sadu, ale je možné využiť funkciu Nová verzia na záložke Verzia. Vyvolá sa tak špeciálny sprievodca, ktorým je možné zosynchronizovať objekty, vytvoriť novú vyššiu verziu inštalačnej sady a zároveň uchovať informácie o histórii sady. Túto vyššiu verziu sady je potom možné štandardne vyexportovať a naimportovať do cieľového systému. A to aj vtedy, pokiaľ v cieľovom systéme chýba inštalačná sada s predchádzajúcimi verziami. Pokiaľ však sada s predchádzajúcimi verziami existuje, dôjde len k jej aktualizácii.
Je tiež možné vykonať i tzv. downgrade. Pokiaľ má užívateľ uchovaných viacero verzií jednej inštalačnej sady v *.ais súboroch, dôjde pri importe nižšej verzie sady do systému s vyššou verziou k poníženiu verzií objektov.

Do instalačních sad lze zahrnout následující typy Business Objektů (BO):
-
ABRA Apps - ABRA Apps. Název objektu se do instal. sady přebírá z položky Název. Jako identifikátor pro rozlišení různých aplikací se používá pole Identifikátor licence.
Při výběru se jako závislé objekty nabídnou všechny ABRA Apps Screens.
-
ABRA Apps Screens - ABRA Apps Screens. Název objektu se do instal. sady přebírá z položky Název, který je kombinací pole Název a pole Identifikátor licence z nadřazené ABRA Apps
-
Balíčky skriptů - Balíčky skriptů. Název objektu se do instal. sady přebírá z položky Popis.
Pokiaľ dôjde k importu skriptu, ktorý je zastaralý, sprievodca importom ho naimportuje s varovaním a nastaví sa na ňom Stav Nepoužívať.
Balíčky skriptů se budou exportovat včetně zdrojových kódů, pokud jsou k dispozici, jinak v binární formě. Pokud je zdrojový kód skriptu zakódovaný, bude zdrojový kód exportován v zašifrované podobě. Po importu jej bude možné znovu odkódovat.
-
Definice omezení - Definice omezení (včetně definic Filtrů a definic Hromadného označování) v číselnících, agendách, reportech a výběrech dokladů. Název objektu se do instal. sady přebírá z položky Název omezení (filtru, hromadného označování).
Je možné preniesť len tie definície obmedzení, ktoré majú nastavené zdieľanie ako Globálne.
-
Definovatelné číselníky - Definovatelné číselníky nadefinované uživatelem.
Formát výsledného XML odpovídá formátu, do kterého ukládá definice nástroj DefRollEditor.exe.
- Definovatelné exporty - Definovatelné exporty jednotlivých dokladů, knih dokladů či jiných vstupních přehledů, které nejsou systémové. Název objektu se do instal. sady přebírá z položky Název def. exportu.
- Definovatelné formuláře - libovolné vlastní Definovatelné formuláře vstupních oken. Název objektu se do instal. sady přebírá z položky Název definice.
- Definovatelné položky - vlastní Definovatelné položky, které jsou ve většině případů následně využity v definovatelných formulářích. Název objektu se do instal. sady přebírá z položky Název položky.
-
Dynamické SQL - vlastní definice Dynamických SQL dotazů pro komunikaci s SQL databázovým serverem.
Výsledné XML má formát XDL souboru, do kterého jej standardně exportuje nástroj DynSQLEditor.exe.
- Firemní parametry - nastavení Firemních parametrů, která ovlivňují chování programu podle požadavku uživatele. Název objektu se do instal. sady přebírá z položky Název Firemních parametrů. Nabízejí se pouze ty parametry, jejichž hodnota byla uživatelem změněna.
- Fulltextové hledání - definice položky - nastavení Fulltextové hledání, která ovlivňují chování fulltextového hledání v jednotlivých agendách nebo číselnících. Název objektu se do instal. sady přebírá z položky Název konkrétní definice fulltextového hledání.
- Importy a exporty- definice importů - Definice importů , umožňující definovat jednotlivé importy do ABRA Gen. Název objektu se do instal. sady přebírá z položky Název konkrétní definice importu.
- Importy a exporty- pravidla zpracování exportů - Pravidla zpracování exportů, umožňující definovat jednotlivá pravidla pro zpracování exportů například při vytváření dokladů pro systém EDI komunikace. Název objektu se do instal. sady přebírá z položky Název konkrétního pravidla.
- Importy a exporty- sady importů a exportů - Sady importních a exportních definic, umožňující definovat více importů i exportů do jednotlivých sad, které lze následně hromadně zpracovávat. Využitelné například pro systém EDI komunikace. Název objektu se do instal. sady přebírá z položek Kód a Název konkrétní sady.
- Importy a exporty- stavy zpracování - Stavy zpracování, Název objektu se do instal. sady přebírá z položek Kód a Název konkrétního stavu zpracování.
- Kontrolní body - Kontrolní body naplánovaných úloh. Název objektu se do instal. sady přebírá z položky Název.
- Naplánovaná úloha - Naplánované úlohy. Název objektu se do instal. sady přebírá z položky Název.
- Ochrana dat - definice - Definice ochrany dat. Název objektu se do instal. sady přebírá z položky Název.
- Ochrana dat - pravidla - Pravidla ochrany dat. Název objektu se do instal. sady přebírá z položky Název.
- Operace webových služeb - Operace webových služeb umožňují vzdálené získávání dat ze systému ABRA Gen přes internet. Název objektu se do instal. sady přebírá z položky Název.
-
Panely definovatelných údajů - Vlastní Panely definovatelných údajů uživatele sloužící k rychlému získání informací o vybraných hodnotách. Sú k dispozícii v dokladových agendách a veľkých číselníkoch. Název objektu se do instal. sady přebírá z názvu definice panelu, kterou je možno zadat pomocí funkce Uložit jako.
Je možné přenést pouze ty definovatelné panely, které jsou uloženy jako Globální.
- Role - Role. Název objektu se do instal. sady přebírá z položky Jméno.
- Skupiny rolí - Skupiny rolí. Sú na ne viazané prístupové práva a roly. Název objektu se do instal. sady přebírá z položky Jméno.
- Tiskové sestavy - Tiskové sestavy. Název objektu se do instal. sady přebírá z položky Název sestavy.
-
Účetní předkontace - Účetní předkontace, které umožňují automatizovat zúčtování zdrojových dokladů do účetnictví. Název objektu se do instal. sady přebírá z položky Název předkontace.
Je možné vyexportovať len tie predkontácie, ktoré obsahujú len výrazové riadky.
-
Uživatelské parametry - skupiny - Skupiny parametrů. Název objektu se do instal. sady přebírá z položek Kód a Název.
Mezi jednotlivými databázemi se skupiny parametrů i jejich položky párují přes pole UniqueID. Tím je zajištěno, že je možné záznamům měnit např. Kód a i poté se na druhé straně správně napárují na případné existující záznamy vzniklé dříve instalovanou instalační sadou.
- Uživatelské sloupce - Definice sloupců nadefinované uživatelem na záložkách seznam jednotlivých agend. Název objektu se do instal. sady přebírá z položky Nadpis sloupce. Nelze přenášet nastavené formátování systémových sloupců.
- Variantní vstupní formuláře - Variantní vstupní formuláře, ale pouze globální definice jednotlivých variant (uživatelské definice se přes instalační sady neexportují). Pokud pro dané místo systému (agenda + panel) existuje více variant s globální definicí, exportují se automaticky všechny (tj. nelze exportovat jen některé pro dané místo, tj. v Průvodci přidáním položek vybírat jen některé z nich). Název objektu se do instal. sady přebírá z položky Panel.
- Webové služby - Webové služby umožňují externím aplikacím volat operace webových služeb. Název objektu se do instal. sady přebírá z položky Název.
- Zpřístupnění položek pro API - Sprístupnenie položiek pre API umožňují definovat položky objektu, které budou v API dostupné i když uživatel nemá na agendu spojenou s objektem právo. Název objektu se do instal. sady přebírá z kombinace Typu položky instalační sady a Třídy objektu z agendy Sprístupnenie položiek pre API. .
Každý typ objektu je identifikován nějakým svým identifikátorem. Struktura identifikátoru se liší podle typu objektu.
Uživatelsky definovatelné položky - Identifikátor = třída Business objektu (BO), pro který jsou uživatelské položky definovány + název položky
Balíčky skriptů - Identifikátor = název balíčku skriptů
Variantní vstupní formuláře - Identifikátor = GUID agendy + název panelu
U variantních vstupních formulářů - do v. 14.52 vč. identifikátor vypadal = GUID agendy + název panelu + ID varianty (u výchozí varianty podtržítka). Pokud byste importovali nějakou starší sadu, bude tam identifikátor postaru.

Objekty, ktoré sú súčasťou inštalačnej sady, môžu byť závislé na niektorých iných objektoch. Při přidávání objektů přes Průvodce přidáním položek do instalační sady pak na tyto závislosti probíhá při dokončení kontrola, a pokud závislé objekty chybí, systém nabídne možnost je doplnit. Ide o tieto závislosti:
- Balíčky skriptov - balíčky skriptov.
- Definovatelné formuláře - definovatelné položky
- Definovateľné položky - definovateľné číselníky
- Dynamické SQL - definovateľné číselníky a definovateľné položky
- Exporty - definovateľné dynamické SQL
- Panely definovateľných údajov - definovateľné číselníky
- Skupiny rolí - roly
- Tiskové sestavy - definovatelná dynamická SQL
- Uživatelské parametry - skupiny - definovatelné číselníky
- Užívateľské stĺpce - definovateľné číselníky
- Webové služby - webové operácie
- Webové operace - balíčky skriptů
Zároveň je pre kontrolu závislostí možné použiť funkciu Skontrolovať závislosti.

Na importní straně se rozlišuje, zda se jedná o aktualizaci verze instalační sady nebo instalaci sady zcela nové. Dále se rozlišují dva typy importu:

V tomto oddíle popíšeme proces expertního importu instalační sady. Kroky, které se používají jen při instalaci nové verze, jsou označeny instalace, kroky, které se používají jen pro aktualizaci jsou označeny aktualizace. Scénář může spustit pouze uživatel s právem Expertní import. Proces importu probíhá následovně
- Systém provede kontrolu, zda požadovaná verze systému ABRA Gen v instalační sadě odpovídá verzi instalovaného systému ABRA Gen nebo je instalovaná verze vyšší.
- Systém se podle názvu instalační sady zjistí, zda se jedná o novou instalaci nebo o aktualizaci (tj. jestli v systému již neexistuje instalační sada téhož jména. Pokud ano, bude instalaci považovat za aktualizaci této sady).
- Aktualizácia: Systém porovná verzi existující sady s verzí importované sady.
- Zobrazí se uvítací zpráva, popisující k čemu instalační sada slouží, licenční ujednání a další informace. Také zobrazí informaci, zda se jedná o aktualizaci nebo novou instalaci.
- Supervisor nebo konzultant potvrdí zprávu.
- Systém provede činnost Aktualizace/založení záznamu instalační sady.
- Systém připraví množinu položek, které jsou shodné v nové verzi sady s již instalovaným objektem. Provádí se tak, že se porovná XML položek v nové verzi sady s XML, které se vygeneruje z instalovaných objektů. Tyto položky nemá smysl instalovat, protože v systému již existují.
- Aktualizácia: Pro každou položku zjistí, zda je položka v nové verzi sady aktualizována. Provádí se tak, že se porovná XML položek v nové verzi sady s XML položkami již nainstalované sady. Položky, které vůbec nejsou ve staré verzi původní sady se považují jako aktualizované.
-
Aktualizácia: Pro každou položku nové verze sady provede Test uživatelské změny položky a výsledek si zaznamená. Systém zobrazí položky importované sady v následujícím seznamu. Pokud se jedná o aktualizaci, pak zobrazí jen aktualizované položky (změněné od poslední verze).
- Kategorii (např. Reklamace)
- Typ položky (např. Balíček skriptů, Uživatelsky definovatelné položky atd...)
- Identifikace položky v uživatelské podobě (zajistí činnost Překlad identifikace položky)
- Zařazení položky (zajistí činnost Překlad identifikace položky)
- Stav - může nabývat několika hodnot, jejich popis viz dále Stav položky v Průvodci importem instalační sady.
- Instalovat položku (označené položky budou instalovány, neoznačené pouze importovány)
- Komentář importu (umožňuje uživateli zapsat důvod, proč instaluje nebo neinstaluje tuto položku)
- Pro položky se stavem 2 a 3 uživatel může provést činnost Zobrazení verzí položky.
- Uživatel může ručně odznačovat nebo označovat jednotlivé položky nebo hromadně všechny položky. K položkám může zapisovat komentář importu, do kterého zapíše, proč položku neinstaloval.
- Systém se dotáže, zda si uživatel přeje vytvořit zálohu instalovaných objektů do záložní instalační sady. Pokud uživatel bude souhlasit, provede se činnost Zálohování instalovaných objektů.
- Systém projde seznam označených položek a provede Instalace položky. Pořadí, v jakém bude instalovat položky instalační sady je uvedeno v tabulce Typy položek instalační sady, tučně označená čísla ve sloupci „Závislost“. Inštalácia: Systém spustí proceduru Install z knihovny Install z balíčku, jehož název je v položce typu Instalační balíček.
- Aktualizácia: Systém spustí spustí proceduru Update z téže knihovny. Jako parametr předá starou verzi instalační sady, která je instalována.
- Pro všechny položky, které nejsou v nové verzi instalační sady, ale existují ve staré verzi instalované sady a byly v ní instalovány se provede činnost Odinstalace položek.
- Systém provede činnost Zobrazení závěrečné zprávy.
Případné výjimky:
- Pokud se v kroku 1 zjistí, že instalovaná verze systému ABRA Gen je nižší než je požadováno, pak se instalace ukončí.
- Pokud se v kroku 2 zjistí, že se sada jmenuje „Záloha před instalací sady {jméno sady}“ pak se v seznamu sad pokusí dohledat sadu s daným názvem. Zobrazí uživateli dotaz, zda se jedná o vrácení změn provedených nad sadou "{jméno sady}". Pokud uživatel odpoví kladně, pak se k záložní sadě přistupuje jako k aktualizaci. Tedy dojde také k odinstalaci těch položek, které jsou v nalezené sadě (té původní) „navíc“ (oproti záloze). Jestliže se nepodaří sadu dohledat nebo uživatel odpoví na dotaz záporně, pak se k této sadě přistupuje jakoby se jednalo o instalaci nové sady.
- Pokud importovaná sada nepodporuje verze, pak se krok 3 neprovádí.
- Pokud se v kroku 2 zjistí, že verze importované sady je stejná nebo nižší než ta existující v systému, pak zobrazí varovnou zprávu, zda si uživatel přeje pokračovat.
- Pokud se v kroku 10. pro některou položku vyhodnotí, že má stav č. 6 – položka již existuje s jinou strukturou a nelze upravit, pak instalace končí.
- Pokud v krocích 15 dojde k chybě, pak zpracování bude pokračovat dále. Chybová zpráva se uloží, aby se mohla zobrazit v závěrečné zprávě.
- Pokud konzultant označí všechny položky jako neinstalovat, import sady skončí před zadáním parametrů instalace. Záznam s instalační sadou bude založen do systému nebo bude aktualizován záznam se starou verzí instalační sady.

V tomto oddíle popíšeme proces zjednodušeného importu instalační sady. Kroky, které se používají jen při instalaci nové verze, jsou označeny instalace, kroky, které se používají jen pro aktualizaci jsou označeny aktualizace.
- Systém provede kontrolu, zda požadovaná verze systému ABRA Gen v instalační sadě odpovídá verzi instalovaného systému ABRA Gen nebo je instalovaná verze vyšší.
- Systém se pokusí zjistit, zda se jedná o novou instalaci nebo o aktualizaci. Zjistí to podle toho, zda v systému je již instalována sada se stejným jménem.
- Aktualizácia: Systém porovná verzi existující sady s verzí importované sady.
- Zobrazí se uvítací zpráva, popisující k čemu instalační sada slouží, licenční ujednání a další informace. Také zobrazí informaci, zda se jedná o aktualizaci nebo novou instalaci.
- Supervisor nebo konzultant potvrdí zprávu.
- Systém provede činnost Aktualizace/založení záznamu instalační sady.
- Systém připraví množinu položek, které jsou shodné v nové verzi sady s již instalovaným objektem. Provádí se tak, že se porovná XML položek v nové verzi sady s XML, které se vygeneruje z instalovaných objektů. Tyto položky nemá smysl instalovat, protože v systému již existují.
- Aktualizácia: Pro každou položku zjistí, zda je položka v nové verzi sady aktualizována. Provádí se tak, že se porovná XML položek v nové verzi sady s XML položkami již nainstalované sady. Položky, které vůbec nejsou ve staré verzi původní sady se považují jako aktualizované.
- Aktualizácia: Pro každou položku nové verze sady provede Test uživatelské změny položky.
- Systém zkontroluje, zda někdo založil položku, kterou se instalační sada chystá založit. Nerozlišuje se, zda se tato položka podstatně liší a technicky není možné provést přepsání. Napr. Užívateľsky definovateľná položka má iný dátový typ ako je požadované.
- Tento krok je ve zjednodušené verzi importu přeskočen.
- Tento krok je ve zjednodušené verzi importu přeskočen.
- Tento krok je ve zjednodušené verzi importu přeskočen.
- Systém se dotáže, zda si uživatel přeje vytvořit zálohu instalovaných objektů do záložní instalační sady. Pokud uživatel bude souhlasit, provede se činnost Zálohování instalovaných objektů.
- Pro všechny položky kromě těch určených z kroku 7, systém provede činnost Instalace položky.
- Inštalácia: Systém spustí proceduru Install z knihovny Install z balíčku, jehož název je v položce typu Instalační balíček.
- Aktualizácia: Systém spustí spustí proceduru Update z téže knihovny. Jako parametr předá starou verzi instalační sady, která je instalována.
- Pro všechny položky, které nejsou v nové verzi instalační sady, ale existují ve staré verzi instalované sady a byly v ní instalovány se provede činnost Odinstalace položek.
- Systém provede činnost Zobrazení závěrečné zprávy.
Případné výjimky:
- Pokud se v kroku 1 zjistí, že instalovaná verze systému ABRA Gen je nižší než je požadováno, pak se instalace ukončí.
- Pokud importovaná sada nepodporuje verze, pak se krok 3 neprovádí.
- Pokud se v kroku 3 zjistí, že verze importované sady je stejná nebo nižší než ta existující v systému, pak se import ukončí.
- Pokud se v kroku 9 najde uživatelem modifikovaná položka, pak instalace končí.
- Pokud se v kroku 10 najde konfliktní položka, pak instalace končí.

Objekty, které byly součástí importované instalační sady a byly vybrány mezi položky určené k instalaci (viz položka Vybrat v průvodci importem instalační sady) se po dokončení tohoto průvodce na importní straně nainstalují (vytvoří).
Platí tu:
-
Variantní vstupní formuláře - na importní straně se případné již existující variantní formuláře v daném umístnění (agenda + panel) nijak nemažou ani nepřepisují. Importované se vždy přidají jako nové. Proto, pokud importujete stejnou sadu opakovaně (např. novou verzi) a v daném umístnění již nějaké variantní formuláře existují, je doporučeno nejdříve původní variantní formuláře vymazat. To můžete pohodlně provést např. v agendě Variantní formuláře.
V dané umístění můžete mít samozřejmě i nějakou variantu var. vstupního formuláře, která s importovanou sadou nijak nesouvisí. Takovou samozřejmě nijak mazat nemusíte. Nicméně i tak po importu doporučujeme stav variantních formulářů po importu sad zkontrolovat (minimálně jejich pořadí, názvy apod.) - aby např. nedošlo ke zbytečným duplicitám názvů, či k nechtěným změnám v pořadí a tudíž i v automatickém výběru variant apod.
Do v. 14.52 vč. platilo, že se na importní straně var. formulář přepsal, pokud byl identifikován jako ten, co byl naimportován sadou. To však bylo v řadě případů nežádoucí (uživatel mohl nechtěně přijít o změny, které v daných formulářích provedl).
Zde ostatní objekty platí: Pokud už na importní straně byly objekty nainstalovány a nedošlo k žádné jejich změně, znovu se k importu nenabízejí. Tj. při opakovaném importu instalační sady se tyto již nenabízejí v průvodci importem instalační sady (pokud se nejedná o novou verzi).