Přechod mezi systémy ABRA Gen (migrace)
V praxi dochází často k potřebě přechodu mezi různými instalacemi ABRA Gen. Typicky je to v případě, kdy chce uživatel přejít z jednoho produktu ABRA Gen na jiný (např. z produktu ABRA Gen s daňovou evidencí na ABRA Gen s podvojným účetnictvím, příp. z produktu ABRA Gen pro Firebird na ABRA Gen pro Oracle či ABRA Gen pro MSSQL). Důvodem může být to, že uživatel např. požaduje nějakou funkcionalitu, která není dodávána k nižší produktové řadě a chce přejít na vyšší, vedl daňovou evidenci, ale nyní musí začít vést podvojné účetnictví, chce změnit databázovou platformu a přejít na výkonnější databázový server apod. Přechod je teoreticky možný i obráceně, tj. z "vyššího" produktu na "nižší". Stejný přechod lze realizovat i mezi dvěma instalacemi téhož systému, pokud to z nějakého důvodu potřebujete.
U některých variant přechodu mezi produkty ABRA Gen může být potřeba provést ještě nějaké dodatečné kroky v datech tak, aby bylo možné nový produkt řádně používat. Takovým případem je přechod mezi ABRA Gen s daňovou evidencí a jiným produktem ABRA Gen s podvojným účetnictvím. Zde spíše doporučujeme, pokud je to možné, se přechodu pomocí DBExport popsanému v této kap. vyhnout a s novým systémem začít úplně od začátku. Nicméně, pokud to není možné či vhodné (např. v ABRA Gen s daňovou evidencí vedete i sklady a chcete je převést), je třeba počítat s nutností několika dodatečných zásahů do převedených dat. Viz Přechod mezi ABRA Gen s daňovou evidencí a ABRA Gen s podvojným účetnictvím.
Do verze 10.01. vč. bylo možné zálohu dat z jednoho systému bez dalších úprav obnovit do jiného. Od v. 10.02 zavedením inkrementálního update, kdy se součástí zálohy dat staly nejenom data, ale i systémové objekty (metadata), viz Zálohování a obnovy dat, již toto není možné a přechod je tedy třeba řešit jiným způsobem.
Postup je následující:
- ve zdrojové instalaci se provede export dat ze zdrojové databáze následovně:
Pomocí nástroje DBExport se do souboru formátu databázový export (*.DBE) vyexportují data z vybraného spojení. Postup provedení a co je obsahem vyexportovaných dat, viz popis nástroje DBExport.
- v cílové instalaci se provede vytvoření nové databáze s importem těchto vyexportovaných dat následovně:
V nástroji DBAdmin:
- se zvolí volba Přidat nové spojení pro vytvoření nové databáze v cílové instalaci ABRA Gen (tím se zajistí vytvoření nové databáze dle souboru CreateDB.DBO, tedy vytvoří se databázové objekty systému ABRA Gen se správnou syntaxí příslušné platformy).
- v následujícím kroku Vlastnosti spojení je třeba zatrhnout volbu "Zobrazit pokročilé vlastnosti" a poté zpřístupněnou volbu "Editovat zákaznické úpravy".
- v kroku Zákaznické úpravy se zatrhne volba "Nahrát data ze souboru" a připojí se soubor *.DBE vyexportovaný z nástroje DBExport, z něhož se vytvořená databáze naplní daty vyexportovanými z původní databáze
- v kroku Zákaznické úpravy je k dispozici i možnost zadat "Adresář s DBO soubory". Je-li použita, pak se nová databáze vytvoří podle *.DBO souborů v tomto adresáři. Toto však nebudete pro běžný přechod mezi systémy potřebovat (je určeno pro řešení specifických servisních situací). Více viz popis v nástroji DBAdmin.
Pokud jste ve zdrojové databázi přidávali nějaké vlastní databázové entity (sloupce, vlastní tabulky, procedury, triggery, ...) a chcete je mít i na importní straně, je třeba zajistit jejich přidání do nově vytvořené databáze a to následovně:
- v kroku Zákaznické úpravy přidat *.DBO soubory s vlastními zákaznickými úpravami. Jedná se o vlastní *.DBO soubory, které se mají spustit (a operace z nich se mají provést) v různých fázích průběhu vytváření nové databáze.
Vlastní import přidání takových entit nijak neřeší (a ani nemůže, informace o nich nejsou obsaženy ve vyexportovaných datech). Pokud vyexportovaná data obsahují data z uživatelských sloupců, tabulek či sekvencí, ale nezajistíte přidání těchto entit na importní straně, nebude možné tato data naimportovat, import se zastaví, viz dále.
Jak bylo uvedeno v popisu nástroje DBAdmin, zatím neexistuje nástroj, jak takové vlastní *.DBO soubory získat ze zdrojové instalace automaticky a musíte si je vytvořit ručně pomocí nástroje DBOperations (DBO soubory jsou totiž binární soubory a uživatel je nemůže vytvořit jinak než prostřednictvím nástroje DBOperations).
Pokud jste zákaznické úpravy zdrojové databáze prováděli ve verzi vyšší než 10.02, je vám postup (pomocí *.DBO souborů) již známý. Pokud jste zákaznické úpravy prováděli ve verzi nižší, pracovali jste se systémem *.NXD souborů, který se pro tento účel používal dříve. Pokud v takovém případě nebudete vědět, jak na to a jak nyní vytvořit potřebné zákaznické *.DBO soubory, objednejte si jejich vytvoření v servisním oddělení dodavatele.
Po spuštění cílové instalace s tímto novým spojením, se vytvoří nová databáze, přičemž se případně provedou zákaznické úpravy, byly-li zadány vlastní *.DBO soubory, a naimportují se do ní data z *.DBE souboru.
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 průběhu importu může nastat situace, kdy exportní soubor obsahuje tabulku, sloupec tabulky nebo sekvenci, která v cílovém spojení neexistuje. V takovém případě import zobrazí dialogové okno s volbou Zopakovat nebo Přeskočit. Je tedy možné takové hodnoty buď vůbec do nově tvořené databáze neimportovat (přeskočit) anebo import přerušit, chybějící databázový objekt nejdříve doplnit (ručně např. pomocí nástroje DBOperations) a poté pokračovat v importu.
K takové situaci může dojít typicky v případě, kdy jste si na exportní straně přidávali např. vlastní tabulky, jejichž hodnoty jsou obsaženy v exportovaných datech, ale nezajistili jste jejich přidání na importní straně, jak bylo řečeno výše.
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í soubor také tabulku Export_ExportHeaderTable s informacemi o verzi systému ABRA Gen, ze které byla data exportována. Při vlastním importu se pak kontroluje, jestli je stejná major, minor a build verze. Pokud se verze liší, zobrazí se varovná hláška a soubor nebude možné naimportovat. Tj. převádět data pomocí nástroje DBExport je možné POUZE MEZI PRODUKTY TÉŽE VERZE!
Pokud by exportní soubor vznikl v nižší verzi, než je 14.53 (tj. ve které se ještě extra tabulka Export_ExportHeaderTable s informací o verzi neukládá), neprovede se žádná kontrola. Nicméně i tak je důrazně doporučeno data mezi verzemi tímto nástrojem nepřenášet.
Více viz kap. Nástroje.
Proto, aby bylo možné SQL dotazy připravit již na verzi 22.0 a přechod na Unicode verzi se co nejvíce urychlil, byla do ABRA Gen implementována technologie zástupných znaků, které dle verze ABRA Gen doplní nové nezbytné části SQL dotazů.
Od verze 22.0.0 ServicePack 26 respektive 22.0.1 ServicePack 24 jsou tyto zástupné znaky nahrazeny prázdným znakem.
Od verze 22.1.0 ServicePack 4 respektive 22.1.1. ServicePack 3 a výše jsou nahrazeny takto:
Firebird:
@{unicodeNvarcharCast(String what, int size, boolean withCollate)} vloží pouze zadané ID
Ostatní zástupné znaky, pokud budou použity, jsou nahrazeny prázdným znakem.
K přechodu mezi ABRA Gen s daňovou evidencí a ABRA Gen s podvojným účetnictvím
Dodatečné úpravy v datech po přechodu mezi těmito systémy plynou především z těchto jejich odlišností, které se týkají účtování:
- V produktu ABRA Gen s daňovou evidencí je pouze jediný Typ organizace a předvyplňují se dle něj pouze záznamy do definic uzávěrky mezd podle vzorů. V ostatních produktech je k dispozici více typů organizací a po prvním výběru typu organizace se automaticky doplní záznamy do účtového rozvrhu, účetních předkontací a definic uzávěrky mezd podle vzorů pro vybraný typ organizace. Bez nich nelze účtovat. Dodatečné pozdější změny je nutno řešit ručně porovnáním s dodávanými vzory.
- Množina typů dokladů, dodávaná výrobcem v rámci inicializačních dat pro produkt ABRA Gen s daňovou evidencí a pro ostatní produkty, není stejná. V ABRA Gen s daňovou evidencí je navíc např. typ Ostatní zápisy a naopak některé typy nejsou k dispozici, jelikož nemají pro ABRA Gen s daňovou evidencí význam (např. typ Interní doklady).
- V produktu ABRA Gen s daňovou evidencí se neúčtuje jako v podvojném účetnictví a všechny typy dokladů mají nastavenu položku Účtovat na Ne (což nelze uživatelsky v daném číselníku měnit), tudíž i všechny řady dokladů budou mít nastaveno Neúčtovat.
Tato nastavení jsou součástí inicializačních dat pro jednotlivé produkty ABRA Gen. Jak bylo ale objasněno u výkladu inicializačních dat, u migrace se soubor inicializačních dat z principu migrace nevyužívá - initdata se (stejně jako ostatní data) nahrají ze souboru *.DBE přesně tak, jak byla v původní databázi (což je záměr).
Je tedy třeba jiným způsobem zajistit doplnění převedených dat v cílovém produktu - možným řešením je např. vyhrát obsah všech potřebných tabulek z nově vytvořené "běžné" databáze naplněné aktuálně dodávanými inicializačními daty cílového produktu pomocí nástroje Scripter.exe a převést je poté do dat převedených z původního produktu ABRA Gen (tedy např. do dat převedených z produktu ABRA Gen s daňovou evidencí). Kontaktujte servisní oddělení výrobce. Dále si musí uživatel založit nové řady dokladů se správně nastaveným účtováním pro cílový produkt a je-li cílovým produktem produkt s podvojným účetnictvím, musí si převzít vzory těch účtů a předkontací, které potřebuje, postupným porovnáním s dodávanými vzory (pokud si je nevyhrál také z příslušných tabulek (Accounts, AccPresetDefs, AccPresetDefs2), a pak by stačilo je pouze zkontrolovat, případně upřesnit dle vlastní potřeby.
Po migraci výše uvedeným postupem z produktu ABRA Gen s daňovou evidencí jsou tabulky vzorů účetní osnovy MasterAccounts a předkontací MasterAccPresetDefs a MasterAccPresetDefs2 prázdné. Proto když uživatel vybere v nastavení firmy typ organizace např. Soukromá organizace - podnikatel a poté v agendě účetní osnovy použije funkci pro porovnání se vzorem, nenajdou se žádné rozdíly (stejná situace je i v předkontacích - např. funkce Nový podle vzoru). Tedy je nutné data vzorů do převedených dat doplnit. Např. právě vyhráním z databáze cílového produktu pomocí nástroje Scripter .exe. Teprve pak je možné porovnáním se vzory postupně získat odpovídající účetní osnovu a předkontace.
Dále v tabulce Typy dokladů (DocumentTypes) jsou všechny převedené nastavené jako neúčtované a další jejich parametry jsou také pro použití v cílovém produktu špatně. Je tedy třeba je smazat (kromě typu dokladu "Ostatní zápisy (99)", na který budou nejspíše v databázi odkazy) a doplnit aktuálně dodávané pro cílový produkt. Což lze řešit opět vyhráním z databáze cílového produktu pomocí nástroje Scripter.exe.
Dále si uživatel založí nové řady dokladů pro podvojné účetnictví (účtované FV, PP, FP, PV....) a převezme vzory těch účtů a předkontací, které potřebuje (pokud si je nevyhrál také).