Temat:
Hurtownia danych + dowolne raporty księgowe dla holdingu na
podstawie zupełnie niestandardowych tekstowych wydruków
hierarchicznych (nieimportowalnych ani do Excela, ani przez ODBC)
Filmik:
http://afin.net/webcasts/Demo_DataWarehouseFromManyTextExports.swf
Opis:
Firma ma 4 oddziały, tu nazwy CELOWO zmieniłem na 'AA', 'BB', 'CC'
i 'DD'. Każdy z tych oddziałów na szczęście ma taki sam program
księgowy. Te programy nie dają dostępu do bazy, ale produkują
wydruki, tu: zestawienia obrotów i sald.
Wydruki te są bardzo trudne do obróbki. Pomijam fakt, że dane
dot. konta są w różnych wierszach, a konkretnie jest wiersz konta
i pod spodem wiersz wartości, to jeszcze, producent tejże FKi
celowo(!) żeby trudniej było cokolwiek z tym zrobić, wstawia
znaki typu CHR(8) i nie tylko w różne miejsca tekstu.
Takich plików mamy w tym przykładzie co miesiąc dla każdej z
firm - przychodzą mejlem, wrzucamy je do jednego katalogu,
nazywając odpowiednio 'AA200502.txt', itd.
Film pokazuje, jak można to wszystko skonsolidować:
1. Pokaz środowiska, czyli jakie katalogi, jak wygląda tekst, itp.
Teksty są obcięte do ok. 200 wierszy, normalnie mają ok 2
tysięcy wierszy, czyli konwersja trwa 30s*10 - ok. 5 minut. Jest to
CAŁOŚĆ danych księgowych w zakresie obrotów i sald księgowych
4 firm z 6-ciu miesięcy.
2. Konwersja plików tekstowych, która wszystkie pliki, jednym
procesem, ładuje do tabel nowego pliku Accessa
'AFIN.NET.ExportFile.mdb'
(Ten etap trwa stosunkowo długo, wspomniane powyżej 30 sekund -
proszę przewijać filmik.)
3. Otwierany jest arkusz - program zasilający hurtownię, tzw. IS
(na wzór SQL Server Information Services)
4. Prezentacja raportów, opartych na PEŁNEJ kostce OLAP.: tabela
przestawna, wykres
5. Prezentacja raportu, OGRANICZONEGO tylko do danych firmy 'AA'
(tzw partycja kostki) - tu po prostu mniejsza kostka od razu
zapisywana w oddzielnym katalogu (gdzie np. system plików ogranicza
dostęp) - można ją również np. wysyłać mejlem (tu pominięte)
6. Prezentacja dowolnego raportu księgowego w czystym arkuszu
Excela za pomocą funkcji DANE()
Wnioski:
1. Stworzenie takiego modelu zajęło 1 dzień, z tego co najmniej
pół poszło na odszyfrowywanie zagwozdek, zgotowanych przez
producenta owych wydruków.
2. Nie ma wzoru pliku tekstowego, którego nie dało by się
odczytać.
3. Odświeżenie całości procesu ładowania hurtowni danych
księgowych holdingu to ok. 6 minut - dwa kliknięcia myszą.
Oczywiście proces można automatycznie inicjować w nocy, czy też
uruchamiać na życzenie.
Proces ten może być również dowolnie ograniczany, czyli np.
tylko do jednego miesiąca (bo po co powtórnie konwertować
obrotówki ze stycznia), czy też jednej firmy, np. gdy w któreś z
firm coś tajemnie doksięgują w lutym i obroty na kontach w lutym
i następnych miesiącach się zmienią.
wtorek, 8 września 2009
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz