1. Princip použití CAM Importer
Import dat do systému CAM probíhá po jednotlivých datových sadách a jejich typech. Pro daný datový zdroj (například RÚIAN) je možné definovat počáteční (výchozí) datovou sadu a její následné aktualizace (aktualizační importy). Každý import je defionovaného typu. Seznam podporovaných typů importů je možné rozšiřovat.
Podporované typy importů jsou:
RÚIAN - počáteční import a následné aktualizační importy
V aplikaci by měl vždy být pouze jeden aktivní import u něhož probíhá zpracování.
Stavy importů jsou:
INIT- probíhá prvotní načítání datového sady - bez zásahu uživatele
LOADED- datová sada je načtena a připravena k zpracování, uživatel může provádět kontrolu dat a zasílat aktualizace do CAMu.
FINISHED- všechny položky tvořící datovou sadu jsou zpracovány, import je dokončen a již není možné provádět žádné změny, uživatel může pouze prohlížet výsledky importu.
V rámci aktualizačních importů se zjišťuje, které záznamy byly přidány, změněny nebo odstraněny od posledního importu. Na základě toho vznikají změnové soubory pro jednotlivé aktualizace. Identifikované změny jsou následně porovnány s aktuálními daty v systému CAM a je připravena jejich aktualizace. Import dat je tak možné provádět postupně, celý proces je transparentní a kontrolovatelný. Současně je možné řešit i situace, kdy změny již jsou do systému CAM aplikovány jiným způsobem.
U datové sady ve stavu LOADED je uveden seznam položek v jednotlivých dílčích stavech
o nichž uživatel dále rozhoduje. Položkou se zde rozumí jednotlivý záznam
ze zdrojové datové sady, v případě záznamů z RÚIANu se jedná o jednotlivé místo (obec, část obce, …).
Stavy synchronizace jednotlivé položky:
LOADED- nahráno ze zdroje (výchozí stav), doposud nezpracováno a neporovnáno s daty v CAMu, přechod do dalšího stavu proběhne automatizovaně po porovnání s daty v CAMu
INSERT- nová položka a měla by být vložena do CAM, čeká na pokyn uživatele k vložení nebo označení jako ignorovaná
UPDATE- napárováno na stávající data a vyžaduje změnu, čeká na pokyn uživatele k aktualizaci nebo označení jako ignorovaná
NO_CHANGES- napárováno na data v CAMu, jsou totožná a změna není nutná, jedná se o koncovy stav, není potřeba žádná akce uživatele
SYNCED- změna byla zapsána do CAM, jedná se o koncový stav
IGNORE- označení položky jako ignorované, koncový stav, není potřeba žádná akce uživatele
V okamžiku kdy jsou všechny položky ve stavu NO_CHANGES, SYNCED nebo IGNORE je celý import dokončen a
přechází do stavu FINISHED.