1. Základní informace

  • Import a export aplikací v NET Geniu slouží k přenášení aplikací mezi různými instalacemi systému, k nasazování nových verzí aplikací a k vytváření záložních kopií.
  • Funkce importu nové aplikace, aktualizace stávající aplikace i exportu aplikace jsou určeny pouze pro uživatele s nejvyšším oprávněním – uživatele Administrator s databázovým ID 1. Toto oprávnění je vyžadováno zejména kvůli možnosti zásahu do struktury, práv a vazeb aplikace.
  • Import nové aplikace je dostupný prostřednictvím ikony „Importovat aplikaci“ v navigační oblasti, nebo na hlavní stránce v administrátorském režimu volbou „Importovat aplikaci“ v průvodci „Vytvořit novou aplikaci“.
  • Aktualizace již existující aplikace probíhá v dialogu „Upravit aplikaci“ na záložce „Administrace“, která obsahuje samostatnou sekci „Importovat aplikaci“ určenou výhradně pro aktualizační import.
  • Export aplikace je dostupný v navigační oblasti prostřednictvím ikony „Exportovat aplikaci“, a umožňuje vytvoření souboru s příponou „nga“. Ta obsahuje kompletní definici aplikace, a případně také data nebo souborové přílohy, obojí podle zvolených možností v dialogu „Export aplikace“.
  • Import nové aplikace a aktualizace aplikace představují dva odlišné procesy:
    • import nové aplikace zakládá zcela novou instanci aplikace,
    • aktualizace aplikace nahrazuje existující aplikaci a mění její strukturu a konfiguraci podle importovaného souboru.
  • V cloudové variantě NET Genium Online není import nové aplikace ze souboru „nga“ k dispozici — dialog „Import nové aplikace“ nabízí pouze záložku „Šablony“. Aktualizace stávající aplikace ze souboru „nga“ v nastavení aplikace k dispozici je. Export aplikace omezený není.
  • Export aplikací a aplikačních skupin lze v dané instalaci vypnout i pro uživatele Administrator souborem „DenyExport.txt“ v adresáři „Config“ (na jeho obsahu nezáleží).
  • Soubor „nga“ je šifrovaný pevným klíčem NET Genia, který není tajný. S exportem obsahujícím data je proto nutné zacházet jako s nechráněnými daty.

2. Import nové aplikace

  • Možnosti uvedené v této kapitole se vztahují výhradně k importu zcela nové aplikace.
  • Import nové aplikace vytváří v NET Geniu samostatnou instanci aplikace a neprovádí žádnou aktualizaci aplikace stávající. Postup pro aktualizaci již existující aplikace je popsán samostatně v kapitole Aktualizace stávající aplikace.
  • Import nové aplikace je dostupný výhradně uživatelům s nejvyšším oprávněním, tedy uživateli Administrator s databázovým ID 1.
  • Import nové aplikace je dostupný prostřednictvím ikony „Importovat aplikaci“ v navigační oblasti, nebo na hlavní stránce v administrátorském režimu volbou „Importovat aplikaci“ v průvodci „Vytvořit novou aplikaci“.
  • Dialog „Import aplikace“ umožňuje import ze souboru „nga“, „xlsx“ nebo „xls“, případně ze šablony, jejichž seznam je uvedený na záložce „Šablony“.

2.1. Záložka „Ze souboru“

2.1.1. Možnosti

  • Jsem vlastníkem importovaných dat
    • Zaškrtnutí tohoto pole určuje, zda má importem dojít k přepsání vlastníka všech databázových záznamů ve všech importovaných databázových tabulkách. Vlastník záznamů v tabulkách historie změn se nemění.
    • Bez zaškrtnutí zůstávají u záznamů ID vlastníků ze zdrojového NET Genia – v cílovém NET Geniu mohou patřit jinému uživateli, nebo nemusí existovat.
    • Detailní popis vlastnictví a spoluvlastnictví záznamů je uveden v samostatné příručce Editační formulář.
  • Importovat historii záznamů
    • Zaškrtnutí tohoto pole určuje, zda má být importována historie záznamů všech importovaných databázových tabulek.
    • Podmínkou této funkce je, aby soubor s vyexportovanou aplikací historické záznamy obsahoval. Export s daty historii záznamů obsahuje vždy.
  • Importovat práva
    • Zaškrtnuto – Při importu práv budou použita ID uživatelů a uživatelských skupin přesně podle nastavení práv ve zdrojové (exportované) aplikaci a ve všech jejích podřízených objektech. Tato forma importu může způsobit datovou nekonzistenci mezi právy ve zdrojové a cílové aplikaci. Stejná ID mohou ve dvou různých NET Geniích značit rozdílné uživatele nebo uživatelské skupiny. Zároveň nemusí některá ID v cílovém NET Geniu existovat. V nastavení práv importované aplikace se pak budou zobrazovat místo názvu uživatelů nebo uživatelských skupin pouze čísla ID.
    • Nezaškrtnuto – Importovaná aplikace a všechny její podřízené objekty, které měly ve zdrojové aplikaci nastavené alespoň jedno právo, budou mít nastavená práva na uživatelskou skupinu „Users“. Objekty bez práv zůstanou bez práv, tedy přístupné jen administrátorům.
    • Totéž platí pro spoluvlastníky záznamů editačních formulářů: pokud měl editační formulář ve zdrojové aplikaci nastaveného alespoň jednoho spoluvlastníka, budou po importu bez zaškrtnutí spoluvlastníky všichni uživatelé ze skupiny „Users“ a mohou tak měnit záznamy ostatních uživatelů. Po importu je proto vhodné spoluvlastníky editačních formulářů zkontrolovat.
  • Zachovat vazby na jiné aplikace
    • Zaškrtnuto – Odkazy na objekty jiných aplikací (editační formuláře, ovládací prvky, nahlížecí stránky, dotazy) jsou převzaty s ID ze zdrojového NET Genia bez kontroly. Import je zastaven chybovou hláškou o porušení konzistence dat jen tam, kde odkaz hlídá databázový cizí klíč. Jinde odkaz na neexistující objekt zůstane neplatný, a pokud v cílovém NET Geniu existuje jiný objekt se stejným ID, bude na něj odkaz mířit.
    • Nezaškrtnuto – Provázanost vazeb na jiné aplikace a jejich podřízené objekty nebude zachována. Dotazy nad editačními formuláři jiných aplikací a ovládací prvky, které je používají, nebudou vytvořeny. Při případné existenci vazeb na jiné aplikace je zapotřebí tyto vazby projít a upravit.

2.1.2. Vyberte soubor

  • Tlačítko „Procházet...“ pro upload souboru importované aplikace s příponou „nga“, „xlsx“, „xlsm“ nebo „xls“.
  • Formát souboru „nga“ představuje standardní exportní a importní formát aplikací NET Genium, který obsahuje kompletní definici aplikace včetně její struktury, ovládacích prvků, vazeb a případně i dat nebo souborových příloh.
  • Formáty „xlsx“, „xlsm“ a „xls“ slouží pro automatické vytvoření nové aplikace na základě dat z aplikace Microsoft Excel.
    • Pro každý neprázdný list sešitu je vytvořen samostatný editační formulář, nahlížecí stránka s nahlížecí tabulkou a tlačítko pro vytvoření nového záznamu.
    • Řádek se záhlavím sloupců se vybírá pro každý list zvlášť (1. až 10. řádek). Sloupce se načítají zleva až po první prázdnou buňku záhlaví.
    • Pro každý sloupec je automaticky vytvořen ovládací prvek typu Textbox s datovým typem String.
    • Všechna data z řádků pod záhlavím jsou při importu automaticky naimportována do vytvořené databázové tabulky. Názvy sloupců i hodnoty delší než 50 znaků jsou zkráceny.
  • Import ze souboru „nga“ vytváří nové editační formuláře s identifikátory ze zdrojové aplikace. Pokud tabulka se stejným identifikátorem v cílovém NET Geniu již existuje, dostane nová tabulka číselnou příponu (například „ng_tabulka0“). Nový identifikátor se automaticky promítne jen do tiskových šablon ve formátu Excel; podmínky dotazů zapsané přímo v SQL, ostatní tiskové šablony, JavaScript a externí funkce je nutné upravit ručně.

2.1.3. Záložka „Šablony“

  • Každé NET Genium má na disku adresář „Store“ s podadresáři podle jazyka a v nich uložené ukázkové aplikace, které je možné tímto způsobem importovat.
  • Pro import šablony platí volby ze záložky „Ze souboru“. Data ve sloupcích s datem jsou při importu posunuta tak, aby odpovídala aktuálnímu měsíci.

3. Aktualizace stávající aplikace

  • Tato kapitola popisuje výhradně aktualizaci již existující aplikace. Import nové aplikace, který vytváří zcela novou instanci aplikace v NET Geniu, je popsán samostatně v kapitole Import nové aplikace.
  • Aktualizace stávající aplikace je dostupná výhradně uživatelům s nejvyšším oprávněním, tedy uživateli Administrator s databázovým ID 1.
  • Aktualizace stávající aplikace se provádí v dialogu „Upravit aplikaci“ na záložce „Administrace“, kde je k dispozici sekce „Importovat aplikaci“.
  • Aktualizace probíhá pomocí importu souboru s příponou „nga“, který nahrazuje strukturu a konfiguraci aplikace podle obsahu importovaného souboru. Soubor musí obsahovat právě jednu aplikaci; zda jde o tutéž aplikaci, NET Genium nekontroluje.
  • Aktualizace nejdříve stávající aplikaci smaže a poté ji ze souboru vytvoří znovu. Z toho plyne:
    • Všechny editační formuláře, ovládací prvky, nahlížecí stránky a dotazy aplikace dostanou nová ID. Přestanou proto fungovat uložené odkazy obsahující ID formuláře nebo nahlížecí stránky a ID zapsaná v JavaScriptu, prvcích HTML a externích funkcích.
    • Odkazy z jiných aplikací na aktualizovanou aplikaci (dotazy nad jejími editačními formuláři a ovládací prvky, které je používají, odkazy ve skriptech a e-mailech) jsou při smazání odstraněny a importem se neobnoví.
    • Smazána jsou i uživatelská nastavení všech uživatelů – oblíbené položky, portlety, nastavení a filtry nahlížecích tabulek – a nastavení synchronizace editačních formulářů aplikace.
    • Smazání aplikace a její nové vytvoření neprobíhají v jedné transakci. Pokud import skončí chybou, původní aplikace už neexistuje. Před aktualizací je proto vhodné aplikaci i s daty vyexportovat.
  • Data existujících tabulek se zachovávají přes zálohu, kterou NET Genium při smazání aplikace uloží do adresáře „Backup“ (soubory „ng_tabulka.xml“ a „ng_tabulka_history.xml“). Tabulky se párují podle identifikátoru, sloupce uvnitř tabulky rovněž podle identifikátoru. Nové sloupce zůstanou prázdné, data sloupců, které v nové verzi chybějí, se ztratí. Záloha starší než 1 hodina se nepoužije. Nové tabulky dostanou data ze souboru „nga“.
  • Tiskové šablony navázané na tlačítka se při každé aktualizaci uloží do adresáře „Templates“ jako nové kopie a tlačítka se přepnou na ně; úpravy šablon provedené v cílovém NET Geniu se tím přestanou používat.

3.1. Dialog „Upravit aplikaci“, záložka „Administrace“

3.1.1. Importovat aplikaci

3.1.1.1. Možnosti

  • Aktualizovat a zachovat stávající data
    • Zaškrtnutím tohoto pole se zobrazí tlačítko „Procházet...“, které slouží k aktualizaci aplikace se zachováním stávajících dat ve všech databázových tabulkách aplikace. Jiný způsob aktualizace k dispozici není.
    • Zachování stávajících dat je založeno na porovnání identifikátorů tabulek a sloupců – viz kapitola Aktualizace stávající aplikace.
    • Historie záznamů se při aktualizaci obnovuje vždy a vlastníci záznamů se nemění.
  • Importovat práva
    • Zaškrtnuto – Při importu práv budou použita ID uživatelů a uživatelských skupin přesně podle nastavení práv ve zdrojové (exportované) aplikaci a ve všech jejích podřízených objektech. Tato forma importu může způsobit datovou nekonzistenci mezi právy ve zdrojové a cílové aplikaci. Stejná ID mohou ve dvou různých NET Geniích značit rozdílné uživatele nebo uživatelské skupiny. Zároveň nemusí některá ID v cílovém NET Geniu existovat. V nastavení práv importované aplikaci se pak budou zobrazovat místo názvu uživatelů nebo uživatelských skupin pouze čísla ID.
    • Nezaškrtnuto – Chování je stejné jako u importu nové aplikace, viz kapitola Import nové aplikace. Práva nastavená v cílovém NET Geniu se nezachovají ani v jednom případě.
  • Zachovat vazby na jiné aplikace

3.1.1.2. Vyberte soubor

  • Tlačítko „Procházet...“ pro upload souboru importované aplikace s příponou „nga“.
  • Zobrazí se po zaškrtnutí možnosti „Aktualizovat a zachovat stávající data“.

4. Export aplikace

  • Export aplikace je dostupný prostřednictvím ikony „Exportovat aplikaci“, a je určen výhradně uživatelům s nejvyšším oprávněním — uživateli Administrator s databázovým ID 1.
  • Po stisknutí ikony „Exportovat aplikaci“ je vygenerován exportní soubor s příponou „nga“, který obsahuje kompletní definici aplikace. Export zahrnuje strukturu aplikace, ovládací prvky, vazby a podle zvolených voleb také data nebo souborové přílohy.
  • Export aplikace slouží k přenosu do jiného prostředí NET Genia nebo k vytvoření záložní kopie. Probíhá jednorázově bez dalších kroků uživatele. Po zvolení voleb exportu systém vytvoří soubor a nabídne jeho stažení.

4.1. Možnosti

  • Včetně dat
    • Zaškrtnutí tohoto pole určuje, zda mají být součástí výsledného exportu i databázové záznamy všech exportovaných databázových tabulek včetně historie záznamů.
  • Včetně příloh (soubory/obrázky)
    • Zaškrtnutí tohoto pole určuje, zda mají být součástí výsledného exportu i souborové přílohy všech exportovaných databázových tabulek. Přílohy se exportují jen spolu s daty; export dat bez příloh ponechá sloupce typu „File“ a „Image“ prázdné.

Obrázky vložené do ovládacích prvků „RichText“ a obrázek na pozadí aplikační skupiny jsou součástí exportu vždy. Z tiskových šablon se exportují jen ty, které jsou navázané na tlačítko.

Export neobsahuje uživatele a uživatelské skupiny, nastavení synchronizace, uživatelská nastavení (oblíbené položky, portlety, nastavení nahlížecích tabulek) ani externí funkce.

4.2. Tlačítka „Exportovat“ a „Zavřít“

  • Tlačítko „Exportovat“ – Spuštění exportu aplikace a vytvoření exportního souboru s příponou „nga“, který obsahuje vybranou aplikaci včetně všech nastavení a případně i dat nebo příloh, pokud jsou tyto možnost zvoleny.
  • Tlačítko „Zavřít“ – Zavření dialogu s exportem aplikace bez provedení exportu.