Prechod medzi systémami ABRA Gen (migrácia)
V praxi dochádza často k potrebe prechodu medzi rôznymi inštaláciami ABRA Gen. Typicky je to v prípade, kedy chce užívateľ prejsť z jedného produktu ABRA Gen na iný (napr. z produktu ABRA Gen s jednoduchým účtovníctvom na ABRA Gen s podvojným účtovníctvom, príp. z produktu ABRA Gen pre Firebird na ABRA Gen pre Oracle či ABRA Gen pre MSSQL). Dôvodom môže byť to, že užívateľ napr. požaduje nejakú funkcionalitu, ktorá nie je dodávaná k nižšej produktovej rade a chce prejsť na vyššiu, viedol jednoduché účtovníctvo, ale teraz musí začať viesť podvojné účtovníctvo, chce zmeniť databázovú platformu a prejsť na výkonnejší databázový server a pod. Prechod je teoreticky možný i obrátene, tzn. z "vyššieho" produktu na "nižší". Rovnaký prechod je možné realizovať i medzi dvoma inštaláciami toho istého systému, ak to z nejakého dôvodu potrebujete.
V prípade niektorých variantov prechodu medzi produktmi ABRA Gen môže byť potrebné urobiť ešte nejaké dodatočné kroky v dátach tak, aby bolo možné nový produkt riadne používať. Takým prípadom je prechod medzi ABRA Gen s jednoduchým účtovníctvom a iným produktom ABRA Gen s podvojným účtovníctvom. Tu skôr odporúčame, pokiaľ je to možné, tak sa prechodu pomocou DBExport popísanému v tejto kap. vyhnúť a s novým systémom začať úplne od začiatku. Pokiaľ to však nie je možné alebo vhodné (napr. v ABRA Gen s jednoduchým účtovníctvom vediete i sklady a chcete ich previesť), je potrebné počítať s nutnosťou niekoľkých dodatočných zásahov do prevedených dát. Viď Prechod medzi ABRA Gen s jednoduchým účtovníctvom a ABRA Gen s podvojným účtovníctvom.
Do verzie 10.01. vrát. bolo možné zálohu dát z jedného systému bez ďalších úprav obnoviť do iného. Od v. 10.02 zavedením inkrementálneho update, keď sa súčasťou zálohy dát stali nielen dáta, ale aj systémové objekty (metadáta), viď Zálohovanie a obnovy dát, toto už nie je možné a prechod je preto potrebné riešiť iným spôsobom.
Postup je nasledujúci:
- v zdrojovej inštalácii sa vykoná export dát zo zdrojovej databázy nasledovne:
Pomocou nástroja DBExport sa do súboru formátu databázový export (*.DBE) vyexportujú dáta z vybraného spojenia. Postup realizácie a čo je obsahom vyexportovaných dát, viď popis nástroja DBExport.
- v cieľovej inštalácii sa vytvorí nová databáza s importom týchto vyexportovaných dát nasledovne:
V nástroji DBAdmin:
- sa zvolí voľba Pridať nové spojenie na vytvorenie novej databázy v cieľovej inštalácii ABRA Gen (tým sa zabezpečí vytvorenie novej databázy podľa súboru CreateDB.DBO, tzn. vytvoria sa databázové objekty systému ABRA Gen so správnou syntaxou príslušnej platformy).
- v nasledujúcom kroku Vlastnosti spojenia je potrebné začiarknuť voľbu "Zobraziť pokročilé vlastnosti" a potom sprístupnenú voľbu "Editovať zákaznícke úpravy".
- v kroku Zákaznícke úpravy sa začiarkne voľba "Nahrať dáta zo súboru" a pripojí sa súbor *.DBE vyexportovaný z nástroja DBExport, z ktorého sa vytvorená databáza naplní dátami vyexportovanými z pôvodnej databázy
- v kroku Zákaznícke úpravy je k dispozícii tiež možnosť zadať "Adresár s DBO súbormi". Ak ju použijete, nová databáza sa vytvorí podľa *.DBO súborov v tomto adresári. Toto však pre bežný prechod medzi systémami nebudete potrebovať (je určené na riešenie špecifických servisných situácií). Viac viď popis v nástroji DBAdmin.
Ak ste v zdrojovej databáze pridávali nejaké vlastné databázové entity (stĺpce, vlastné tabuľky, procedúry, triggery, ...) a chcete ich mať aj na importnej strane, je potrebné zabezpečiť ich pridanie do novo vytvorenej databázy a to nasledovne:
- v kroku Zákaznícke úpravy pridať *.DBO súbory s vlastnými zákazníckymi úpravami. Ide o vlastné *.DBO súbory, ktoré sa majú spustiť (a operácie z nich sa majú vykonať) v rôznych fázach vytvárania novej databázy.
Samotný import pridanie takýchto entít nijako nerieši (a ani nemôže, informácie o nich nie sú obsiahnuté vo vyexportovaných dátach). Ak vyexportované dáta obsahujú dáta z užívateľských stĺpcov, tabuliek či sekvencií, ale nezabezpečíte pridanie týchto entít na importnej strane, tieto dáta nebude možné naimportovať, import sa zastaví, viď ďalej.
Ako bolo uvedené v popise nástroja DBAdmin, zatiaľ neexistuje nástroj, ktorým by bolo možné vlastné *.DBO súbory získať zo zdrojovej inštalácie automaticky a musíte si ich vytvoriť ručne pomocou nástroja DBOperations (DBO súbory sú totiž binárne súbory a užívateľ ich nemôže vytvoriť inak ako prostredníctvom nástroja DBOperations).
Ak ste zákaznícke úpravy zdrojovej databázy robili vo verzii vyššej ako 10.02, je vám postup (pomocou *.DBO súborov) už známy. Ak ste zákaznícke úpravy robili vo verzii nižšej, pracovali ste so systémom *.NXD súborov, ktorý sa pre tento účel používal predtým. Ak nebudete vedieť, ako na to a ako teraz vytvoriť potrebné zákaznícke *.DBO súbory, objednajte si ich vytvorenie v servisnom oddelení dodávateľa.
Po spustení cieľovej inštalácie s týmto novým spojením sa vytvorí nová databáza, pričom sa prípadne vykonajú zákaznícke úpravy, ak boli zadané vlastné *.DBO súbory, a naimportujú sa do nej dáta z *.DBE súboru.
V souboru NEXUS.CFG můžete změnit počet vláken procesoru, které budou použity při importu dat z *.DBE souborů. Správné nastavení tohoto parametru (vzhledem k modelu vašeho procesoru) zrychlí nahrávání do databáze. Tento a další konfigurační parametry naleznete v Konfigurační soubor Nexus.cfg - oddíly a parametry.
V priebehu importu môže nastať situácia, keď exportný súbor obsahuje tabuľku, stĺpec tabuľky alebo sekvenciu, ktorá v cieľovom spojení neexistuje. V takom prípade import zobrazí dialógové okno s voľbou Zopakovať alebo Preskočiť. Je teda možné takéto hodnoty buď vôbec do novo tvorenej databázy neimportovať (preskočiť) alebo import prerušiť, chýbajúci databázový objekt najskôr doplniť (ručne napr. pomocou nástroja DBOperations) a následne pokračovať v importe.
K takejto situácii môže dôjsť typicky v prípade, keď ste si na exportnej strane pridávali napr. vlastné tabuľky, ktorých hodnoty sú obsiahnuté v exportovaných dátach, ale nezabezpečili ste ich pridanie na importnej strane, ako bolo povedané vyššie.
Převod uživatelských definic (číselníků, DynSQL)
- V původní ABRA Gen spustit nástroj DynSQLEditor.exe. Importovat jen uživatelské definice a tyto definice uložit do TXT.
- V původní ABRA Gen spustit nástroj DefRollEditor.exe. Importovat jen uživatelské definice číselníků a tyto uložit do TXT.
- V nové ABRA Gen v daných nástrojích, viz body výše otevřít uložený soubor a zvolit možnost Export uživatelských definic.
Následně je třeba zkontrolovat, že uživatelská DynSQL neobsahují na platformě závislé SQL fragmenty a případně tyto fragmenty opravit na novou platformu.
Od v. 14.53 obsahuje exportný súbor tiež tabuľku Export_ExportHeaderTable s informáciami o verzii systému ABRA Gen, z ktorej boli dáta exportované. Pri vlastnom importe sa následne kontroluje, či je rovnaká major, minor a build verzia. Pokiaľ sa verzie líšia, zobrazí sa varovná hláška a súbor nebude možné naimportovať. Tzn. prevádzať dáta pomocou nástroja DBExport je možné LEN MEDZI PRODUKTMI TEJ ISTEJ VERZIE!
Pokiaľ by exportný súbor vznikol v nižšej verzii, ako je 14.53 (tzn. v ktorej sa ešte extra tabuľka Export_ExportHeaderTable s informáciou o verzii neukladá), nevykoná sa žiadna kontrola. Avšak i tak sa dôrazne odporúča dáta medzi verziami týmto nástrojom neprenášať.
Viac viď kap. Nástroje.

Preto, aby bolo možné SQL dopyty pripraviť už na verziu 22.0 a prechod na Unicode verziu sa čo najviac urýchlil, bola do ABRA Gen implementovaná technológia zástupných znakov, ktoré podľa verzie ABRA Gen doplnia nové nevyhnutné časti SQL dopytov.
Od verzie 22.0.0 ServicePack 26 respektíve 22.0.1 ServicePack 24 sú tieto zástupné znaky nahradené prázdnym znakom.
Od verzie 22.1.0 ServicePack 4 respektíve 22.1.1. ServicePack 3 a vyššie sú nahradené takto:
ORACLE:
@{N} a @{NATIONAL} je nahradené znakom N
@{COLLATEUNICODE} je nahradené COLLATE XCZECH_CI resp. COLLATE XSLOVAK_CI resp. COLLATE XGERMAN_CI
@{COLLATEORA_USING_NLS_COMP} je nahradené COLLATE USING_NLS_COMP
@{unicodeNvarcharCast(String what, int size, boolean withCollate)} vykoná CAST, a prípadne podľa tretieho parametra COLLATE(východisková hodnota je true).
MSSQL:
@{COLLATEUNICODE} vloží COLLATE Czech_CI_AS resp. COLLATE Slovak_CI_AS resp. Latin1_General_CI_AS
@{unicodeNvarcharCast(String what, int size, boolean withCollate)} vloží len zadané ID
Ostatné zástupné znaky (viď zoznam pre Oracle), pokiaľ budú použité, sú nahradené prázdnym znakom.
K prechodu medzi ABRA Gen s jednoduchým účtovníctvom a ABRA Gen s podvojným účtovníctvom
Dodatočné úpravy v dátach po prechode medzi týmito systémami plynú predovšetkým z týchto ich odlišností, ktoré sa týkajú účtovania:
- V produkte ABRA Gen s jednoduchým účtovníctvom je len jeden Typ organizácie a predvypĺňajú sa podľa neho len záznamy do definícií uzávierky miezd podľa vzorov. V ostatných produktoch je k dispozícii niekoľko typov organizácií a po prvom výbere typu organizácie sa automaticky doplnia záznamy do účtového rozvrhu, účtovných predkontácií a definícií uzávierky miezd podľa vzorov pre vybraný typ organizácie. Bez nich nie je možné účtovať. Dodatočné neskoršie zmeny je nutné riešiť ručne porovnaním s dodávanými vzormi.
- Množina typov dokladov dodávaná výrobcom v rámci inicializačných dát pre produkt ABRA Gen s jednoduchým účtovníctvom a pre ostatné produkty nie je rovnaká. V ABRA Gen s jednoduchým účtovníctvom je navyše napr. typ Ostatné zápisy a naopak niektoré typy nie sú k dispozícii, pretože pre ABRA Gen s jednoduchým účtovníctvom nemajú význam (napr. typ Interné doklady).
- V produkte ABRA Gen s jednoduchým účtovníctvom sa neúčtuje ako v podvojnom účtovníctve a všetky typy dokladov majú nastavenú položku Účtovať na Nie (čo nie je možné užívateľsky v danom číselníku meniť), takže i všetky rady dokladov budú mať nastavené Neúčtovať.
Tieto nastavenia sú súčasťou inicializačných dát pre jednotlivé produkty ABRA Gen. Ako bolo ale objasnené v rámci výkladu inicializačných dát, pri migrácii sa súbor inicializačných dát z princípu migrácie nevyužíva - initdáta sa (rovnako ako ostatné dáta) nahrajú zo súboru *.DBE presne tak, ako boli v pôvodnej databáze (čo je zámer).
Je preto potrebné iným spôsobom zabezpečiť doplnenie prevedených dát v cieľovom produkte - možným riešením je napr. vyhrať obsah všetkých potrebných tabuliek z novo vytvorenej "bežnej" databázy naplnenej aktuálne dodávanými inicializačnými dátami cieľového produktu pomocou nástroja Scripter.exe a následne ich previesť do dát prevedených z pôvodného produktu ABRA Gen (tzn. napr. do dát prevedených z produktu ABRA Gen s jednoduchým účtovníctvom). Kontaktujte servisné oddelenie výrobcu. Užívateľ si ďalej musí založiť nové rady dokladov so správne nastaveným účtovaním pre cieľový produkt a ak je cieľovým produktom produkt s podvojným účtovníctvom, musí si prevziať vzory tých účtov a predkontácií, ktoré potrebuje, postupným porovnaním s dodávanými vzormi (pokiaľ si ich nevyhral aj z príslušných tabuliek (Accounts, AccPresetDefs, AccPresetDefs2), a potom by ich stačilo len skontrolovať, prípadne upresniť podľa vlastnej potreby.
Po migrácii vyššie uvedeným postupom z produktu ABRA Gen s jednoduchým účtovníctvom sú tabuľky vzorov účtovnej osnovy MasterAccounts a predkontácií MasterAccPresetDefs a MasterAccPresetDefs2 prázdne. Preto keď užívateľ v nastavení firmy vyberie typ organizácie napr. Súkromná organizácia - podnikateľ a následne v agende účtovnej osnovy použije funkciu na porovnanie so vzorom, nenájdu sa žiadne rozdiely (rovnaká situácia je i v predkontáciách - napr. funkcia Nový podľa vzoru). Je teda nutné dáta vzorov do prevedených dát doplniť. Napr. práve vyhraním z databázy cieľového produktu pomocou nástroja Scripter .exe. Až potom je možné porovnaním so vzormi postupne získať zodpovedajúcu účtovnú osnovu a predkontácie.
V tabuľke Typy dokladov (DocumentTypes) sú ďalej všetky prevedené nastavené ako neúčtované a ich ďalšie parametre sú pre použitie v cieľovom produkte nastavené tiež nesprávne. Je ich preto potrebné zmazať (okrem typu dokladu "Ostatné zápisy (99)", na ktorý budú pravdepodobne v databáze odkazy) a doplniť aktuálne dodávané pre cieľový produkt. Čo je možné riešiť opäť vyhraním z databázy cieľového produktu pomocou nástroja Scripter.exe.
Ďalej si užívateľ založí nové rady dokladov pre podvojné účtovníctvo (účtované FV, PP, FP, PV....) a prevezme vzory tých účtov a predkontácií, ktoré potrebuje (ak si ich nevyhral tiež).