Wojciech Gardziński

Wojciech Gardziński Mieć rację godzinę
wcześniej niż inni:
przez godzinę być
...

Temat: Hurtownia danych + dowolne raporty księgowe dla holdingu

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_DataWarehouseFromManyTex...

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ą.Wojciech Gardziński edytował(a) ten post dnia 08.09.09 o godzinie 21:16