Marcin
S.
BI Consultant, ETL
developer
Temat: Sprawdzenie odczytanch rekordow w podraporcie
Witam,mam raport na Commandzie z 4-ma parametrami. Dwa z nich sa obowiazkowe (pSet, pProjekt), dwa pozostale sa opcjonalne z przypisanymi domyslnymi wartosciami 'ALL' (pT_Name - string) i 99999 (pT_ID - number). Parametry obsluzone w SQLu. Wszystkie parametry jako single value.
Raport glowny ma podraport w sekcji Footer. Podraport rowniez na Commandzie, do ktorego przekazuje 3 parametry pSet, pProjekt i pT_ID. Parametru pT_Name nie moge przekazac, poniewaz nie mam pola w tabeli, po ktorym moge zmapowac z raportu glownego do podraportu.
Ponadto w podraporcie pole przyrownane do pT_ID jest typu varchar2, w raporcie glownym number (w obu przypadkach rozne tabele)
Parametry w podraporcie rowniez obsluzone w Commandzie.
Obsluga parametrow pT_Name i pT_ID w raprocie glownym:
... WHERE...
AND
( case
when 99999 = {?pT_ID} then 1 else
(case when Pole_id = {?pT_ID} then 1 else 0 end)
end ) = 1
AND
(case
when upper('ALL') = upper('{?pT_Name}') then 1 else
(case when upper(Pole_name) like upper('{?pT_Name}%') then 1 else 0 end)
end) = 1
Obsluga pT_ID w podraporcie:
...WHERE...
AND
(case
when 99999 = to_char({?pT_ID}) then 1 else
(case when Pole_id_var = to_char({?pT_ID}) then 1 else 0 end)
end ) = 1
Raport dziala poprawnie w sytuacji kiedy, parametry opcjonalne zachowaja domyslne wartoci, user wybiera wartosci dla parametrow obowiazkowych LUB
jesli user wprowadzi wartosc dla parametru pT_ID, wowczas podraport wyswietli rekordy odpowiadjace rekordom w raporcie glowynm - dla wprowadzonych parametrow.
Natomiast jesli user wprowadzi wartosc dla parametru pT_Name a pT_ID zostawi z domyslna wartoscia, wowczas podraport wyswietli (za duzo) rekordy odpowiadjace tylko dwom obowiazkowym parametrom.
W raporcie glownym jest grupowanie po Pole_id i jezeli umieszcze podraport w GroupFooterze, wowczas wyswietla on prawidlowo rekordy odpowiadajace polu Pole_id z raportu glownego. Niestety dane z podraportu musza byc na koncu raportu.
Pytanie jak sprawdzic i przekazac do podraportu informacje o rzeczywiscie odczytanych/pobranych rekordach w raporcie glownym w pzrypadku uzycia parametru pT_Name ?
Bede wdzieczny za sugestie, zastosowalem kiedys rozwiazanie z przekazywaniem zmiennych shared, ale raportu nie mam a z glowy wylecialo :/