Oprava a komprese
Funkce Oprava a komprese (dále jen Oprava) provádí opravu a kompresi databází a kontrolu jejich integrity. Průběh celé operace je zaprotokolován do souboru Kontrola_integrity_yyyymmdd_hhnn.txt uloženého v adresáři právě používaného datového profilu Varia. yyyy v znázvu souboru označuje rok, mm měsíc, dd den, hh hodinu a nn minutu spuštění kontroly.
Před spuštěním Opravy lze zadat následující volby:
1) Datové soubory všech firem
2) Datový soubor aktuální firmy
3) Vybraný MDB soubor...
Na začátku první fáze (Oprava a komprese) je do souboru vario.ini v adresáři datového profilu zapsán řádek
Stop=probíhá oprava a komprese databází.
a uživateli, který se pokusí spustit Vario, se zobrazí hlášení:
Vario nelze nyní spustit. Data jsou neořístupná protože: probíhá oprava a komprese databází.
Do protokolu je zapsána hlavička v závislosti na volbách uvedených výše. V případě volby 1) je zapsán řádek
DD.MM.YYYY HH:mm:ss: Oprava a komprese databází všech firem spuštěna uživatelem JMENOUZIVATELE na stanici JMENOSTANICE.
v případě volby 2)
DD.MM.YYYY HH:mm:ss: Oprava a komprese databází firmy NAZEVFIRMY spuštěna uživatelem JMENOUZIVATELE na stanici JMENOSTANICE.
a v případě volby 3)
DD.MM.YYYY HH:mm:ss: Oprava a komprese databáze JMENODATABAZE spuštěna uživatelem JMENOUZIVATELE na stanici JMENOSTANICE.
Pokud nelze Opravu provést (alespoň jedna z databází je používána jiným uživatelem), je do souboru zaprotokolován pro první nalezenou neopravitelnou databázi řádek
DD.MM.YYYY HH:mm:ss: Opravu a kompresi nelze provést, protože databáze JMENODATABAZE je právě používána.
a Oprava je ukončena s chybovou hláškou stejného znění.
V opačném případě (databáze nejsou uzamčeny) je pro každou Opravovanou databázi zapsán řádek
DD.MM.YYYY HH:mm:ss: Oprava a komprese databáze JMENODATABAZE spuštěna.
a v případě úspěšné opravy dále
DD.MM.YYYY HH:mm:ss: OK: Oprava a komprese dokončena.
Pokud se Oprava nezdaří, je místo předchozího řádku zaprotokolován řádek
DD.MM.YYYY HH:mm:ss: Chyba: Oprava a komprese se nezdařila.
Po dokončení Opravy nezávisle na úspěchu zpracování jednotlivých databází je do protokolu zapsán řádek
DD.MM.YYYY HH:mm:ss: Oprava a komprese databází dokončena.
Během druhé fáze jsou prováděny stejné operace uvedené v článku Kontrola integrity v bodech B2) až B5). Do souboru s protokolem jsou zapisovány shodné údaje s výjimkou hlavičky, jejíž znění je následující:
DD.MM.YYYY HH:mm:ss: Kontrola integrity databází spuštěna s vynecháním kontroly platnosti hodnot v jednotlivých polích. (není kontrolována doménová integrita)
a s výjimkou popisu jednotlivých kroků kontroly, které jsou omezeny na následující:
1) Kontrola klíčů ...
2) Kontrola dat v relacích ...
3) Kontrola existence relací ...
4) Kontrola existence tabulky MSysCompactError ...
Pokud proběhne celá operace bez chyb (zamčená databáze není považována za chybu), je v souboru vario.ini změněn řádek
Stop=probíhá oprava a komprese databází.
na
Stop=
což znamená, že uživetelé se mohou do Varia opět přihlásit. Pokud byla nalezena nějaká chyba, je řádek
Stop=probíhá oprava a komprese databází.
změněn na
Stop=data jsou poškozena.
a uživateli, který se pokusí spustit Vario, se zobrazí hlášení:
Vario nelze nyní spustit. Data jsou neořístupná protože: jsou poškozena.