Založení firmy

Převod dat na MS SQL

Doporučení

Převod dat na (edici systému) SQL Server provádějte vždy až po konzultaci s naší linkou technické podpory. Nesprávná instalace SQL Serveru nebo některá zákaznická řešení třetích stran nepřipravená na provoz nad SQL daty mohou způsobit nefunkčnost Varia po převodu dat na SQL. Po převodu dat na SQL je také nutno provést přelicencování Varia na SQL licenci.

Většina zákaznických řešení po jejich spuštění provádí připojení vlastní datové struktury z MDB/SQL databází na základě nastavení konkrétní firmy, pod kterou jsou spuštěna, tedy na základě volby, zda je konkrétní firma provozována na MDB či SQL. Některá zákaznická řešení mohou volbu mezi MDB/SQL verzí datové struktury provádět na základě nastavení celého datového profilu Varia. Z těchto důvodů nedoporučujeme převod dat na SQL Server v případě, že pro používaná zákaznická řešení není k dispozici potřebná definice SQL datové struktury (po převodu se mohou stát tato řešení nefunkční). Zároveň nedoporučujeme v jednom datovém profilu provozovat firmy na různých datových uložištích, tedy jak na MDB tak na SQL zároveň. Doporučujeme vždy převést veškeré firmy na SQL Server a nové firmy poté již zakládat výhradně na SQL Serveru.

Před každou operací s daty je nutno provést jejich zálohu pro případ havárie.
Pokud je prováděn převod dat z MDB na SQL Server, na kterém jsou již provozovány jiné databáze, doporučujeme provést před zahájením převodu kompletní zálohu všech uživatelských databází.

Nejrychlejším způsobem zálohy SQL databází je zkopírovaní SQL databází odpojených od SQL Serveru. Po pořízení kopie lze jednoduše databáze zpět připojit k původnímu či jinému SQL Serveru. Pro tento účel lze využít procedury spav_odpojdata a spav_pripojdata (spav_odpoj_all_dbs a spav_pripoj_all_dbs_from_dir) popsané v článku Uložené procedury v databázi master.

Legenda

#### - číslo databáze (např. 0001, 5001, atd.)

Po klepnutí na tlačítko SQL/File v možnostech Varia (Nástroje -> Možnosti -> položka Firmy) se zobrazí dialog Průvodce založením firmy s následujícími možnostmi:

 

1. Převést stávající data zvolených firem z file serveru (souborů mdb) na SQL server.

Poznámka: Pozor, SQL server přistupuje k datům jiným způsobem, než při využití dat v MDB souborech. Může se stát, že se některá zakázková zobrazení či tiskové formuláře po přechodu na SQL server zpomalí. V takovém případě je nutná optimalizace těchto reportů pro SQL (dotazy je nutno přepsat na jejich předávací varianty v syntaxi Transact-SQL) - tyto optimalizace řešíme jako práci na zakázku (placený servis).

V případě práce s MDB databází nelze tyto optimalizace využít. Někdy výrazně pomůže úprava dotazů tak, že základní kritéria jsou již určena jako parametry dotazu (pokud vždy v sestavě filtrujete podle jednoho kritéria, je možné data tímto způsobem "předfiltrovat" předem a tím zvýšit jejich výkon).

Tato volba má za úkol převést všechny databázové soubory vybraných firem na SQL server. Budou převedeny pouze databáze, k nimž existuje definice datové struktury pro MSSQL.

Definice pro databáze Data####.mdb, DMaj####.mdb, DMzd####.mdb, DOLE####.mdb, DUct####.mdb, DSED####.mdb a Firmy.mdb (Databáze Firmy je automaticky převedena na SQL server při prvním převodu dat na SQL server nebo při založení jakékoli firmy na SQL serveru) jsou od výrobce k dispozici v podadresářích jednotlivých modulů adresáře Setup\Vario v datovém profilu. Pro ostatní databáze (dále jen zákaznické) je nutno v případě nedostupnosti definic vytvořit (nebo si objednat u výrobce systému Vario) vlastní.

U vybraných zákaznických řešení jsou definice datové struktury pro MSSQL k dispozici ve složce datového profilu Varia v podadresářích jednotlivých modulů/doplňků v adresáři Setup\Upravy. Složka Data v adresáři modulu/doplňku obsahuje *.cfg konfigurační soubor a adresář se skripty pro vytvoření datové struktury. Pro modul Evidence smluv je k dispozici potřebná definice dat pro SQL v těchto umístěních datového profilu:
\Setup\Upravy\Moduly\Evidence_smluv\Data\DEvi#### - skripty s definicí datové struktury, \Setup\Upravy\Moduly\Evidence_smluv\Data\DEvi####.cfg - konfigurační soubor.

Popis jednotlivých kroků

Mezi kroky se pohybujete pomocí tlačítek Další a Zpět.

a) Ze seznamu vyberete firmy, jejichž data jsou umístěna na fileserveru.

b) Vyplníte název SQL serveru a vyberete porovnávání (COLLATION) databází (čeština nebo slovenština). Je nutné, aby výchozí porovnávání SQL serveru bylo shodné s vybraným porovnáváním databází. (V opačném případě nastanou problémy (collation conflict) při použití procedur využívajících dočasných tabulek v databázi tempdb).

c) Zadejte adresář, ve kterém mají být umístěny SQL databáze (cesta k adresáři musí být zadána z pohledu SQL serveru, Variem je nabízena na zvoleném SQL Serveru nastavená výchozí cesta k uživatelským databázím a logům).

d) Klepněte na Dokončit. Na SQL serveru bude vytvořena struktura všech databází Varia a zákaznických databází, jejichž definice datové struktury pro SQL je umístěna v datovém profilu. Do těchto databází budou převedena data z existujících mdb databází. Existuje-li již alespoň jedna z právě vytvářených databází na SQL serveru, zobrazí se hlášení s informací o existujících databázích, v takovém případě je třeba zmíněné databáze na SQL serveru odstranit a převod opakovat.

Po dokončení převodu dojde k přesunutí původních mdb databází v datovém profilu do nově vytvořeného adresáře Prevedeno_na_SQL_date_time.

 

2. Převést stávající data zvolených firem z SQL serveru na file server (do mdb souborů).

Tato volba převede data vybraných firem z databází na SQL serveru do mdb databází. Podmínkou úspěšného převodu je existence fileserverových šablon databází Data####.mdb, DMaj####.mdb, DMzd####.mdb, DOLE####.mdb, DUct####.mdb a v případě zakázkových databází např. DEvi####.mdb. Tuto funkci nedoporučujeme po delší době provozu nad SQL serverem (vzhledem k rozdílným způsobům aplikování integritních omezení) používat.

Od vydání 20170522 již není povoleno převádět data z SQL serveru do MDB databází.

 

3. Převést zákaznickou databázi na SQL server.

Tato volba převede libovolnou zákaznickou mdb databázi, pro kterou je definován konfigurační soubor (*.cfg soubor) a skripty pro vytvoření datové struktury), na SQL server.

V případě, že je databáze "číslovaná", bude proveden převod pro všechny firmy, které mají data na SQL serveru, a pouze pro mdb databáze, jejichž obraz ještě není na SQL serveru vytvořen. Např. databáze DEvi####.mdb budou převedeny pro firmy 1 a 3, jejichž data jsou umístěna na SQL serveru. Pro firmu 2, která nemá data na SQL serveru, zůstane databáze na fileserveru. Pro firmu 4, která má data na SQL serveru, ale zároveň již má na SQL serveru databázi DEvi0004, nebude převod proveden a bude se pokračovat v převodu pro další firmu. Po převodu bude zobrazeno hlášení o databázích, které nebyly převedeny.

V případě, že je databáze "nečíslovaná" (společná pro všechny firmy), bude proveden převod pouze jednou pro jedinou existující mdb databázi.

Popis jednotlivých kroků

Mezi kroky se pohybujete pomocí tlačítek Další a Zpět.

a) Vyplníte název SQL serveru a vyberete porovnávání (COLLATION) databází (čeština nebo slovenština). Je nutné, aby výchozí porovnávání SQL serveru bylo shodné s vybraným porovnáváním databází. (V opačném případě nastanou problémy (collation conflict) při použití procedur využívajících dočasných tabulek v databázi tempdb).

b) Zadejte adresář, ve kterém mají být umístěny SQL databáze (cesta k adresáři musí být zadána z pohledu SQL serveru, Variem je nabízena na zvoleném SQL Serveru nastavená výchozí cesta k uživatelským databázím a logům).

c) Klepněte na Dokončit a vyberte umístění šablony *.cfg. V tomto umístění musí existovat také adresář se skripty pro založení datové struktury na SQL serveru.

Po dokončení převodu dojde k přesunu původních mdb databází v datovém profilu do nově vytvořeného adresáře Prevedeno_na_SQL_date_time.

 

4. Převést libovolnou databázi na file server.

Tato volba převede libovolnou SQL databázi do mdb databáze. V případě "číslované" databáze musí existovat její fileserverová šablona ????####.mdb. V případě "nečíslované" musí existovat původní fileserverový soubor. V obou případech budou před převodem smazána všechna data z cílových MDB databází (nezapomeňte na zálohu). Tuto funkci nedoporučujeme po delší době provozu nad SQL serverem (vzhledem k rozdílným způsobům aplikování integritních omezení) používat.

Od vydání 20170522 již není povoleno převádět data z SQL serveru do MDB databází.

 

Související dokumenty