Asi nejsnažší je začít s makrem ve vba v aktualizovaném souboru, které zajistí načtení tabulky z oracle i aktualizaci všech navazujících struktur. Jeho spuštění je vhodné podmínit "správným" uživatelem (strojem, ...). bat (v čemkoliv) zajistí spolupráci s plánovačem úloh vč. nastavení prostředí.
Problémy:
Při aktualizaci v excelu řada kroků probíhá asynchronně, občas se něco předbíhá (typicky aktualizace kt předbíhá čtení dat, ...). To je nutné v makru zohlednit - např. zakázat během aktualizace operace na pozadí, ne vždy to jde.
Velký počet požadavků na aktualizaci tabulek může vyvolat nahodilé chyby (excel prostě spadne).
Rychlost :
Načítání dat z oracle je hodně pomalé (mám pocit, že to ms dělá schválně). Při větším objemu dat je někdy rychlejší vygenerovat csv soubor data čerpat z něj.
Ale v takovém případě je nutné nějak synchronizovat samostatně běžící úlohy.
Počet paralelních aktualizací souborů je často omezením.
Je také třeba myslet na administraci:
Tady je vhodný samostatný systém (tabulka, db, ..) db je asi nejlepší - umožňuje nejlépe monitorovat průběh pro více uživatelů.
Sledovat:
Stav aktualizace souborů z pohledu správce, hlášení o chybách (pád, chybějící data, nevalidní data po aktualizaci, ...), statistika aktualizací (doba trvání aktualizace jednotlivých souborů, počet paralelních úloh, ... - určité pomůže při plánování aktualizací.
Pro uživatele - info o úspěšné aktualizaci, řešení neúspěšné aktualizace (např. ponechání původního souboru + info)
Musí to běžet automaticky. Informace o chybách by se neměly v případě pádu ztratit.
citovat