Tvorba reportů v MS Reporting Services 2008 – 3. díl
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Tvorba reportů v MS Reporting Services 2008 – 3. dílTvorba reportů v MS Reporting Services 2008 – 3. díl

 

Tvorba reportů v MS Reporting Services 2008 – 3. díl

Google       Google       5. 8. 2013       17 042×

Budeme pokračovat v tématu z předchozího dílu, věnovaného tvorbě parametrů reportu. Přidáme do reportu parametry různých datových typů a kromě jejich použití jako filtru dat si ukážeme, jak pomocí parametrů měnit vzhled reportu.

Reklama
Reklama

Přidávání parametrů

  1. Základní tabulku tedy máme hotovou a můžeme přejít k obohacení reportu o parametry (příslušné datové sady naleznete v minulém díle). Nejprve vytvoříme parametr pro filtraci záznamů na základě křestního jména (bude se testovat, jestli je hodnota parametru obsažena jako podřetězec). Půjde o parametr textového typu, který bude moct zůstat nevyplněn (report pak bude vracet záznamy se všemi jmény). Vytvoříme tedy nový parametr a pojmenujeme ho Name – jeho základní nastavení bude vypadat jako na obrázku:

    Žádné výchozí hodnoty u tohoto parametru nastavovat nebudeme.

  2. Dalšími dvěma parametry nabídneme uživateli filtraci dat podle specifikace geografické lokality. K tomu použijeme dva parametry, jeden pro výběr státu a druhý pro výběr menšího územního celku v rámci vybraného státu. Založíme nový parametr country a nastavíme ho následovně:

    Tento parametr bude nabízet hodnoty získané datasetem ds_country, položku Available values vyplníme takto:

  3. Následně přidáme parametr province pro výběr menší geografické oblasti. Provázání poskytovaných oblastí na základě vybrané země je zajištěno ve zdrojovém datasetu (všimněte si, že po spuštění reportu není možné vybrat „provincii“, dokud není vybrána alespoň jedna země). Nastavení reportu bude vypadat takto:

    U tohoto reportu budeme chtít, aby byly ve výchozím stavu vybrány všechny hodnoty, to provedeme následujícím nastavením:

  4. Dále přidáme dvojici parametrů pro výběr záznamů s určitým datem vzniku (resp. datem registrace zákazníka). Tyto parametry pojmenujeme Date_from a Date_to a oba budou typu Date/Time. První z nich bude moct zůstat nevyplněn (tím pádem nebude specifikována dolní mez rozsahu) a výchozí hodnota druhého bude nastavena na aktuální datum. Základní nastavení obou bude vypadat následovně (hodnoty Name a Prompt se pochopitelně budou lišit):
    U parametru Date_to v záložce Default Values zaškrtneme volbu Specify Values a tlačítkem Add přidáme novou hodnotu a specifikujeme ji výrazem (tlačítko Fx) – výchozí hodnota bude definována funkcí Today, která vrací aktuální datum (viz obrázek).
  5. Posledním parametrem budeme ovlivňovat (ne)zobrazování sloupce obsahujícího e-mailové adresy zákazníků. Tento parametr pojmenujeme pHide a bude typu Boolean.
    Pokud vám vadí, že hodnoty, jenž parametr po spuštění reportu nabízí, jsou anglicky, můžete je „překrýt“ v záložce Available values (dojde tak nicméně k vizuální změně tohoto parametru).
    Klikněte pravým tlačítkem myši na záhlaví sloupce s e-mailovými adresami a zvolte možnost ColumnVisibility a jeho viditelnost nastavte na hodnotu parametru hide:
    Tímto jsme dokončili přidávání parametrů. Nyní je potřeba ještě upravit základní datovou sadu reportu tak, aby reflektovala uživatelem zvolené hodnoty parametrů. Do zdrojového dotazu této datové sady tedy přidáme WHERE sekci, která bude vypadat takto:
WHERE sp.StateProvinceID in (@province)
AND cr.CountryRegionCode in (@country)
AND per.FirstName LIKE (@Name+'%')
AND ((per.ModifiedDate BETWEEN @Date_from AND @Date_to)
        OR (@Date_from is NULL AND per.ModifiedDate <=@Date_to)
    )ORDER BY st.Name, per.FirstName,per.LastName ASC

Všimněte si, že parametry „Date_from“ a „Date_to“ jsou porovnávány s hodnotou ModifiedDate. Tato hodnota uchovává datum poslední modifikace záznamu, ne nutně datum registrace zákazníka – v této ukázce je tedy použita trochu „uměle“ :-).

Výsledný report pak po spuštění vypadá takto:

Závěr

V posledních dvou článcích jsme se naučili, jak založit nový report, naplnit jej datovými výstupy z požadované databáze a tyto výstupy filtrovat pomocí parametrů. Také jsme si ukázali, že parametry jsou použitelné i pro podmíněné formátování designu reportu.

Prozatím nešlo o nic, co by bylo nezvládnutelné s použitím „běžných“ technologií, v následujících částech se nicméně konečně dostaneme k funkcím Reporting Services, které umožňují shlukování dat do skupin (a další práci s nimi), tvorbu grafů, atd.

Právě tyto funkce představují hlavní sílu tohoto reportovacího nástroje.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
3 hlasy
Google
Jakub v současné době pracuje jako BI specialista ve společnosti Tieto Czech. Mimo to se zajímá o databáze a dolování dat.
LinkedIn    

Nové články

Obrázek ke článku RAD Studio a Windows Store

RAD Studio a Windows Store

RAD Studio je první vývojové prostředí se zabudovanou podporou balení aplikací typu Win32 a Win64 pro jejich umístění a šíření prostřednictvím Windows 10 Store.

Reklama
Reklama
Obrázek ke článku Testujte na 2 400+ Android a iOS zařízení

Testujte na 2 400+ Android a iOS zařízení

V dnešní době, kdy většina softwaru pro mobilní aplikace je tvořena a distribuována průběžně, mnohdy do celého světa je třeba zajistit také průběžnou automatizaci testování mobilního softwaru. V případě mobilních aplikací pro Android a iOS začíná být problém, jak testovat na obrovském množství kombinací HW variant, rozměrů, edic operačních systémů různých výrobců v různých částech světa na reálných zařízení. Simulátory a emulátory nejsou většinou to pravé. Pokud již testuji, jak si udělat vlastní beta distribuci opravdovým reálným testerům napříč platformami?

Obrázek ke článku Funkcie main vo Windows API

Funkcie main vo Windows API

V tretej časti seriálu o Windows API budeme hovoriť o funkčných prototypoch main. Funkčný prototyp je tvorený názvom funkcie a typom signatúry, pričom sa vynecháva telo funkcie. 

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý