čtvrtek 28. srpna 2008

TopN a Ostatní

Možná někdy budete potřebovat vytvořit report, který bude obsahovat „N“ nejlepších / nejhorších položek + jednu položku interpretující součet těch, které v „N“ nejlepších / nejhorších nejsou. Možný postup najdete níže.



1/ Zjištění pořadí položek
Pro zjištění pořadí jednotlivých položek dle ukazatele lze využít funkci RANK(), poté report dle tohoto sloupce setřiďte.



2/ Zobrazení „N“ nejlepších + zbytek
Přidejte nový sloupec, který bude obsahovat výpočet oddělující „TopN“ položek od ostatních, např.:

CASE WHEN Rank(Prodej."Výnos") <= @{TopX}{5} THEN Geografie.Stat ELSE 'Ostatní' END

Kde:
RANK(Prodej."Výnos") je sloupec s pořadím položky
@{TopX}{5} – „TopX“ je Presentation Variable a {5} je default hodnota (v případě, že budete chtít nechat uživatele dynamicky měnit hodnotu „N“, pak je vhodné použít Presentation Variable – jinak hodnota může být konstantní)



3/ Skupina pro podsoučty
Přidejte nový sloupec, který bude obsahovat výpočet pro určení podsoučtů (vzorec je podobný tomu předcházejícímu, ale místo názvu položky vrací hodnotu proměnné nebo text „Ostatní“):

CASE WHEN Rank(Prodej."Výnos") <= @{TopX}{5} THEN 'Top @{TopX}{5}' ELSE 'Ostatní' END



4/ Tabulka pro zobrazení hodnot
Při zobrazení hodnot použijte kontingenční tabulku. Do řádků použijte počítané sloupce - „Skupina“ (nastavte atribut „Skrytý“ a výpočet Součtu) a „Pobočka“. Vylučte původní sloupce dimenze a „Pořadí“.



5/ Graf pro zobrazení hodnot
Pro zobrazení hodnot zvolte podobně jako v případě tabulky počítaný sloupec „Pobočka“ (tj. ne původní „Stat“).



Erik Eckhardt.

Žádné komentáře: