Adam
B.
Senior PHP
developer, BI
developer
Temat: Parametry kaskadowe vs bardzo duża tabela w sql
Witam,Mam następujący problem z Crystal Reports.
Mam tabele w sql która ma ponad 40 000 wierszy.
Parametrami "ograniczam" wiersze do 1 wartości
wcześniej ustawiłem po prostu dynamiczne kaskadowe parametry,
które to ograniczały wynik krok po kroku np:
-Country_id
-City_id
-User_id
Czyli jeżeli dobrze rozumiem to idzie automatycznie przez DISTINCT
- 1 parametr "SELECT DISTINCT Country_id FROM BigTable"
- 2 parametr "SELECT DISTINCT City_id FROM BigTable WHERE Country_id='{?Country_id}'"
- 3 parametr "SELECT DISTINCT User_id FROM BigTable WHERE Country_id='{?Country_id}' AND City_id='{?City_id}'"
Na początku działało OK - dopóki tabela nie urosła do 40 000 wierszy :/
wtedy pojawiły się problemy:
Jeżeli chodzi o wyświetlanie parametrów w CR-designer
to pomogło ustawienie w rejestrze wartości MaxRowsetRecords w
HKEY_LOCAL_MACHINE\SOFTWARE\Business Objects\Suite 12\Crystal Reports\DatabaseOptions\LOV
Tyle że w CR-server (InfoView) przy tak dużej ilości wierszy
wyświetlane są puste parametry, bez drop down list.
Chciałem zmodyfikować parametry w ten sposób, że nie odwołuję się
bezpośrednio do tej dużej tabeli tylko poprzez "sql commands"
to podzielić na inne tabele mniejsze np:
- 1 parametr to "select Country_id from Country"
- 2 parametr to "select City_id from City WHERE Country_id='{?Country_id}'"
- 3 parametr to "select User_id from BigTable WHERE City_id='{?City_id}' AND Country_id='{?Country_id}'"
Tylko to chyba tak się nie da w CR? :(
Może ktoś z grupy wie jak rozwiązać ten problem?