SSRS | Díl 5 – Nastavení parametru v SSRS

Ve 4. díle (Díl 4 – Vytváříme report v SSRS) jsme si připravili jednoduchý report, který zobrazuje data o prodejích. Report má formu jednoduché tabulky zobrazující výsledek datasetu, který jsme si připravili v minulých dílech. Slíbili jsme si, že nebudeme report moc komplikovat, ale jednu věc bychom udělat měli. Report, který zobrazuje pouze tabulku není pro uživatele příliš vyhovující v tom smyslu, že se nad ním nedá filtrovat. Tento článek bude zaměřen na to, jak udělat nastavení parametru v SSRS, které umožňuje filtrování výsledků.

Nastavení parametru v SSRS

Po posledním cvičení bychom měli mít připravený report s tabulkou jako na obrázku:

Nebudeme si zadání komplikovat a budeme chtít pouze 1 filtr nad Sloupcem „Rok“ s tím, že se uživateli nabídne rozbalovací menu, ve kterém si bude moci vybrat rok, který chce zobrazit.

Vytvoření datasetu pro SSRS filtr

Každý filtr obsahuje nějakou nabídku hodnot. Seznam hodnot můžeme sepsat ručně tak, že napíšeme do filtru třeba roky 2015 a 2016. To ale není vůbec vhodné. Chceme totiž, aby byl report bezúdržbový. Často se v podniku staráte o desítky reportů a pokud nemáte tyto filtry dynamické, zabere vám opravdu mnoho času se o reporty starat a aktualizovat hodnoty.

Vytvoříme si proto dynamický dataset, který při filtru reportu načte seznam všech možných hodnot, které lze vybrat. Vzpomeňte si na díl, ve kterém jsme dělali dataset. K definici datasetu jsme použili script ad [1]. SQL dotaz pro dataset (Filtr Rok) bude vypadat logicky takto [2]. Výhoda je zřejmá, pokud by se uskutečnit prodej v roce 2017, filtr jej automaticky nabídne.

[1] Definice datasetu pro report

[2] SQL dotaz pro dataset filtru

 

 

 

 

 

 

 

SQL dotaz zkopírujeme a vytvoříme si v reportu nový dataset [3], [4]

[3] Nový dataset pro Filtr Rok

[4] Takto by to mělo vypadat

 

 

 

 

 

 

Definice parametru v Reporting Services

V momentě kdy máme připraven dataset pro filtr Rok, můžeme pokračovat nastavením parametru. Parametry se zakládají z karty Report data, položka Parameters, zvolíme Add parameter [5]. Na další obrazovce si parametr pojmenujeme a nastavíme datový typ Integer [6]. V dalším kroku klikneme na Available Values a zvolíme Get values from a query [7]. Následně potvrzením dokončíme nastavení parametru, po kliknutí na Preview po nás report vyžaduje vyplnit filtr rok [8].

Nastavení parametru v SSRS

[5] New Parameter

[6] Nastavení datového typu parametru

 

 

 

 

 

 

 

 

[7] Navázání parametru na dataset

[8] Výsledek po zdárném nastavení parametru

 

 

 

 

 

 

 

 

Provázání filtru s hlavním datasetem

To, že jsme úspěšně nastavili parametr v reportu ještě neznamená, že na parametr reaguje hlavní dataset, který vrací Tržby po produktech. Provázání je potřeba nastavit. Není to vůbec těžké. Stačí editovat hlavní dataset a do SQL dotazu napsat do WHERE klauzule jednoduchou podmínku, která nám výsledek omezí podle toho co je zrovna vybráno ve filtru.

Na parametry se v Reporting services dá v SQL dotazu bez problému odkázat. Parametr v SQL dotazu definujeme přes @NazevParametru [9]. Potom klikneme na kartu Parameters a obě hodnoty provážeme jako na obrázku [10]

[9] Provázání parametru s hlavním datasetem

[10] Dokončení provázání hlavního datasetu na parametr

 

 

 

 

 

 

A je vymalováno, nastavení parametru v SSRS je hotové. Report by měl na filtr bez problémů reagovat.

Nastavení parametru v SSRS

Další pokračování bude zaměřeno na Deploy SSRS reportu na Report server, aby si ho mohli prohlédnout uživatelé – Díl 6 – Deploy reportu v SSRS

Reagovat na příspěvek