"Tymczasowa Baza Raportu" - nazwa robocza, trzeba wymyślić coś
lepszego, najlepiej z angielska ;)
Do rzeczy:
Na świecie jest wiele problemów...
... w świecie raportów, też.
W AFINIE raporty można robić na wiele, wiele sposobów: funkcjami,
funkcjami z przyspieszaczem (PowerCalculation), ze wspomaganiem
serwera (ServerCalculation), można też wyklejać raporty IS-em,
dużo można.
Ale są raporty, które się jakby do tego nie chciały dopasować,
np wymyślmy sobie, taki, niby, prosty raport:
Własny nagłówek tabeli
klient1, wartość miesięczna, wartość narastająca, wartość
czegoś tam z innej bazy, np. nr telefonu
klient2,...
klient3,...
...
klient100
Własne podsumowanie i formułki
1. Jeżeli chcemy to zrobić funkcjami - proszę bardzo, ale wtedy
trzeba 300 funkcji. Wygoda, cud malina, uniwersalność... ale to
dalej 300 funkcji. Można to przyspieszać i to znacznie, ale
ciągle jest problem - jak to komuś wyślemy, to ów musi mieć
AFINA.
Można, oczywiście, zrobić publikację i to automatyczną, ale to
i tak trwa kilka ładnych sekund...
2. Można wyklejać IS-em - ale też to trwa tyle samo, bo przecież
te 300 zapytań musi się wykonać...
3. można próbować tabelą przestawną, ale.... to dane z
różnych źródeł oraz sztywna ilość klientów, konieczność
własnego nagłówka, własnych formatów, np. formatowanie
warunkowe i formułek na dole... TP odpada! TP jest za cienka!
A można też tak (C) WojciechG 2014
Lista klientów to pewna lista, charakterystyczna jako indeks (jest
w relacji) dla każdej tej kolumny danych. Więc robimy 1. tabelę
pomocniczą:
klient1
klient2
...
klient100
Nic więcej!
Robimy drugą tabelę pomocniczą:
klient1, wartość miesięczna
klient2,...
...
klient100,...
Robimy trzecią tabelę pomocniczą:
klient1, wartość narastająco
klient2,...
...
klient100,...
Robimy CZWARTĄ tabelę pomocniczą:
klient1, cośtam z tej innej bazy
klient2,...
...
klient100,...
A na końcu robimy tabela1 LEFT JOIN tabela2 LEFT JOIN tabela3 LEFT
JOIN tabela4
I mamy raport, jak na wstępie. 100 (STO) razy szybciej!
Clou tematu tkwi w tym, że te źródła są różne, zwykle
excelkowe, a bazy danych nie ma - jak przeniesiemy to do Accessa, to
tracimy formaty excelowe. No, bagno.
Ale od czego jest AFIN? Przecież IS może utworzyć bazkę w locie
i dane zapisać do tej bazy.
Więc zapisuje, potem wykleja raport do zadanego wzorca raportu i
kasuje tabelki a może nawet i bazę.
Powtarzam - przyspieszenie ok 100 razy! A właściwie, tyle razy,
ile jest wierszy.
Filmik:
http://afin.net/webcasts/Demo_TemporalReportDatabase.swf
wtorek, 19 sierpnia 2014
Subskrybuj:
Posty (Atom)