Synchronizácia slovníka - D2000 CfgSynchronizeDictionary
Funkcia SynchronizeDictionary je súčasťou programu D2000 CfgSynchro. Je určená na kopírovanie (synchronizáciu) obsahu slovníka medzi dvoma databázami (resp. aplikáciami D2000).
Prostredníctvom užívateľského rozhrania je možné identifikovať zmenené slovníky a následne ich podľa potreby kopírovať medzi konfiguračnými databázami (synchronizácia databáz). Je vhodný aj na synchronizáciu databáz, ktoré vznikli kópiou originálnej konfiguračnej databázy a oddelene v nich boli vykonávané zmeny.
Porovnávanie slovníkov
Pre potreby synchronizácie konfiguračných databáz sa slovníku, pre každý text, automaticky určuje obraz
(náprotivok) z druhej databázy. Tento obraz musí mať zhodný kompozitný (zložený) kľúč, ktorý ho
identifikuje.
Kompozitný kľúč pozostáva z TEXTKEY (jednoznačný kľúč textu) a LNG_IDX (identifikátor jazyka). Táto
dvojica jednoznačne určuje položku v tabuľke slovníkov a je unikátna.
Z vyššie uvedeného vyplýva, že ak v dvoch rôznych konfiguračných databázach vytvoríme položky s rovnakým kľúčom a jazykom, pri ich synchronizácií budú tieto objekty považované za dva totožné a bude možná ich vzájomná synchronizácia, pretože majú rovnaký kompozitný kľúč. Pokiaľ by sa niektorá zo zložiek kompozitného kľúča líšila, položky budú považované za rôzne a nebude možná ich synchronizácia. Môže ešte nastať prípad, že dve databázy obsahujú rovnaký jazyk pod rôznym identifikačným číslom. Aby bolo možné správne synchronizovať takéto databázy je nutné spárovať tieto jazyky. Pri absencii niektorého jazyka je taktiež možné tento jazyk pridať do Databázy, v ktorej sa nenachádza.
Na obrázku sú zobrazené spárované položky z dvoch databáz podľa kompozitného kľúča. Jednotlivé záznamy obsahujú:
ID | Je určené len na jednoduchšiu orientáciu a prehľadnosť. |
Kľúč | Kľúč textov spoločný pre obe databázy (ľavú, pravú). |
Jazyk | Zobrazuje jazyk textu. |
Ľavá databáza | Text z ľavej databázy. |
Pravá databáza | Text z pravej databázy. |
Stavy a značky objektov
1 | Dáta sa zhodujú v oboch databázach (nie je možná synchronizácia). |
2 | Dáta sú rozdielne a sú vhodným kandidátom na synchronizáciu. |
3 | Dáta sú rozdielne a budú sa aktualizovať alebo vkladať v smere šípky. |
4 | Jedna databáza neobsahuje dáta a budú zmazané aj z druhej v smere šípky. |
Text zobrazený modrou farbou ma aktuálnejší dátum zmeny.
Text (NULL) označený červenou farbou vyznačuje položku s nedefinovaným
textom.
Ak sa nachádza v zobrazení text (NULL) štandardnej čiernej farby, tak táto informácia značí, že pre
daný kľúč bola nadefinovaná hodnota ako (NULL).
Prázdny text znamená, že položka pre daný kľúč sa nenachádza v databáze.
Značky prenosu
Prenos z ľavej databázy do pravej. | |
Prenos z pravej databázy do ľavej. | |
Nezmenený stav. | |
Hlavné okno
1 | Panel na otvorenie databáz. |
2 | Filter podľa stavu. |
3 | Filter podľa jazyka. |
4 | Filter podľa masky. |
5 | Nástroje na synchronizáciu databáz. |
6 | Párovanie jazykov. |
7 | Uloženie zmien do databáz. |
8 | Zobrazenie dát. |
9 | Zatvorenie programu. |
Otváranie databáz
V prvom kroku je potrebné databázu otvoriť, otvorenie sa vykonáva pomocou nasledujúcich nástrojov:
1 | Meno databázy. |
2 | Otvorenie databázy. |
3 | Zatvorenie databázy. |
Pre synchronizáciu dát je potrebné mať otvorené obe databázy.
Filtrovanie zobrazených dát
Po otvorení databáz sa zobrazia všetky texty slovníkov. Pre lepšiu prehľadnosť a jednoduchšiu manipuláciu
s textami je možné použiť filtre zobrazenia.
Filtrovať dáta je možné tromi spôsobmi - podľa stavu, podľa jazyka a podľa masky. Filter funguje aj ako
kombinácia všetkých spôsobov.
Filter podľa stavu -
- Všetky - zobrazí všetky texty z databáz
- Rozdiel – zobrazí všetky texty, ktoré nemajú zhodné dáta – dáta určené na synchronizáciu
- Neoznačené– zobrazí texty, ktoré obsahujú rozdiely a nie je ešte určené, akým spôsobom sa majú synchronizovať
- Označené – zobrazí objekty, ktoré obsahujú rozdiely a je už určený spôsob synchronizácie
- Označené --> - zobrazí texty, ktoré obsahujú rozdiely a budú sa synchronizovať zľava doprava
- Označené <-- - zobrazí texty, ktoré obsahujú rozdiely a budú sa synchronizovať sprava doľava
Filter podľa jazyka -
- * - zobrazí všetky texty
- „xxx“ – zobrazí len objekty, ktorých LNG_IDX zodpovedá jazyku „xxx“
Filter podľa masky – zobrazí len objekty, ktorých textový kľúč zodpovedá maske.
Nástroje na synchronizáciu databáz
Po selekcii jednotlivých riadkov je možné vybrať spôsob, akým sa budú databázy synchronizovať. Vykonanie samotnej synchronizácie sa spustí po stlačení tlačidla .
Po tomto kroku sa zmeny uložia do databázy, do tej doby je možné označovanie spôsobu synchronizácie ľubovoľne meniť.
Spôsoby synchronizácie databáz:
-
Označí riadok ako úpravu pravej databázy podľa ľavej.
-
Označí riadok ako úpravu ľavej databázy podľa pravej.
-
Označí riadok ako úpravu podľa času poslednej aktualizácie nahradením starých dát novými.
-
Zruší spôsob synchronizácie.
-
Jednu zo štyroch funkcií je možné vybrať na takzvanú rýchlu voľbu, ktorá sa vykonáva dvojklikom
myši.
Výber rýchlej voľby sa uskutoční prostredníctvom checkboxov nachádzajúcich sa vedľa tlačidiel.
Párovanie jazykov
Pre správne zobrazenie súvisiacich textov je nutné mať správne spárované jazyky. V dvoch databázach môžu
byť rovnaké jazyky pomenované odlišným menom, poprípade jazyk sa v jednej z dvoch databáz nemusí nachádzať.
Z tohto dôvodu bol vytvorený nástroj na párovanie jazykov. Nástroj sa spúšťa automaticky po otvorení
oboch databáz alebo je možné ho spustiť tlačidlom .
Na obrázku je znázornené okno slúžiace na párovanie jazykov.
ID v okne 1 a 2 zobrazuje ID jazyka z databázy a Jazyk zobrazuje jeho meno v databáze.
ID a jazyk v okne 3 je len orientačný, nenachádza sa v žiadnej databáze, ale po spárovaní sa s názvom jazyka z
okna 3 bude pracovať.
Časti a funkcie okna:
1 | Jazyky z ľavej databázy. |
2 | Jazyky z pravej databázy. |
3 | Spárovaný jazyk. |
4 | Posúva jazyky v Okne 1. |
5 | Posúva jazyky v Okne 2. |
6 | Pridáva Jazyk z okna 2 do okna 1 alebo odoberá pridaný jazyk z okna 1. |
7 | Pridáva Jazyk z okna 1 do okna 2 alebo odoberá pridaný jazyk z okna 2. |
8 | Uloženie zmien a ukončenie okna. |
Pridané jazyky sa ukladajú do databáz po zatvorení tohto okna. S nespárovanými jazykmi nie je možné pracovať v procese synchronizácie.
VAROVANIE:
Nesprávnym spárovaním jazykov sa dáta nesprávne zobrazia a synchronizácia môže spôsobiť nekorektné
aktualizovanie databáz.
Pridať komentár