Microsoft SQL Server 2008

Co nowego w SQL Server 2008 R2: Reporting Services Udostępnij na: Facebook

Opublikowano: 3 marca 2010
Autor: Bartłomiej Graczyk

Reporting Services – odświeżone i usprawnione  Reporting Services – odświeżone i usprawnione
 Report Builder 3.0  Report Builder 3.0
 Demo 1. Wizualizacja informacji o sprzedaży zrealizowanej na obszarze USA  Demo 1. Wizualizacja informacji o sprzedaży zrealizowanej na obszarze USA
 Demo 2. Wizualizacja danych z wykorzystaniem Data Bars (pasków danych)  Demo 2. Wizualizacja danych z wykorzystaniem Data Bars (pasków danych)
 Demo 3. Przygotowanie i wykorzystanie Report Parts z zastosowaniem Report Buildera 3.0.  Demo 3. Przygotowanie i wykorzystanie Report Parts z zastosowaniem Report Buildera 3.0.
 Podsumowanie  Podsumowanie

 

Celem całego cyklu artykułów z serii „Co nowego w SQL Server 2008 R2” jest pokazanie i omówienie najnowszych funkcji powstającego właśnie produktu, jakim jest Microsoft SQL Server 2008 R2.

Tym razem zaprezentowane zostaną usprawnienia w obszarze raportowania z wykorzystaniem Microsoft SQL Server Reporting Services oraz Report Builder (v 3.0).

Reporting Services – odświeżone i usprawnione

Praca z danymi geograficznymi i mapami

Pierwszym z kluczowych elementów nowej wersji SQL Server Reporting Services jest możliwość sadzania danych geograficznych w raportach i posługiwania się nimi, w tym wizualizacja z wykorzystaniem map. Warto również wspomnieć w tym miejscu o możliwości integracji z Bing Maps.

Możliwości SSRS i wizualizacji danych pokazane zostały w sekcji Demo 1. tego artykułu.

Zgodność z ATOM data feeds

Raporty mogą być teraz dostarczane również w formacie zgodnym ze standardem ATOM – rozpoznawanym przez Gemini i inne narzędzia.

Report Manager

Obszar zarządzania raportami zyskał nową wizualizację (SharePoint-like UI), co dla wielu użytkowników końcowych nie jest bez znaczenia.

Pobierz
Pobierz artykuł w pliku:

Współużytkowane data sets (Shared Data Sets)

Developerzy rozwiązań raportowych z wykorzystaniem SSRS zapewne wiedzą doskonale o zaletach współużytkowanych źródeł danych (SharedData source). Microsoft SQL Server Reporting Services 2008 R2 to krok jeszcze dalej – data sets, dotąd wykorzystywane w obszarze jednego raportu, podobnie jak Date Sources mogą być już tworzone jako współużytkowane data set (Shared Data Set). Obecnie raz przygotowany data set może zostać wykorzystany wielokrotnie w wielu raportach, a dane pobrane za jego pomocą przechowywane są w cache’u, co znaczenie przyspiesza generowanie raportów, zwłaszcza przy bardzo złożonych zapytaniach.

Wygodną funkcją jest również przekształcanie w dowolnym momencie już istniejącego data set, osadzonego w danym raporcie, w obiekt typu współużytkowanego (ang. Shared Data Set).

Rozszerzona integracja z SharePoint (zarówno dla SharePoint 2007, jak i SharePoint 2010)

Dużym usprawnieniem dla osób wykorzystujących na co dzień SSRS jest możliwość stworzenia źródła danych opartego na Microsoft SharePoint List, co znacząco ułatwia raportowanie, gdy źródłem danych jest wspomniany SharePoint.

Warto również wspomnieć o zaimplementowaniu Query Buildera właśnie w obszarze pobierania danych ze źródeł typu SharePoint List.

Agregacje agregatów

Wraz z obecnie dostępną wersją SSRS twórcy raportów uzyskują możliwość stosowania zagnieżdżonych funkcji/wyrażeń wewnątrz innych wyrażeń agregujących. Przykładem może być wyliczanie średniej z sumy sprzedaży miesięcznej w danym roku Avg(Sum(Sales, "Month"), "Year").

Nowe element wizualizacji danych, np. Data Bars (paski danych)

Data Bars – są ciekawą formą prezentacji danych, zwłaszcza gdy w określonym zbiorze należy pokazać skalę różnicy między poszczególnymi elementami zbioru (np. skala sprzedaży danego produktu w różnych regionach czy przez różne osoby). Przykład wykorzystania pasków danych – w Demo 2.

Rozszerzenia Business Intelligence Development Studio

Wsparcie dla wersji 2008 i 2008 R2 raportów i projektów raportowych

Rozszerzenia wyrażeń RDL

  • Wyrażenia pozwalające odwołać się do obecnie stosowanego formatu renderowania lub globalnego elementu RenderFormat – (=Globals!RenderFormat.Name).
  • Możliwość określania nazw, m.in. dla arkuszy excelowych przy ich renderowaniu.
  • Dynamiczny podział stron oraz możliwość resetowania numeracji stron po podziale (org. After page break).

Galeria elementów raportowych (Report Parts)

SQL Server 2008 R2 Reporting services to wprowadzenie obiektów raportowych, które mogą być wykorzystywane wielokrotnie, w różnych raportach. Publikując element raportowy na serwerze, udostępnia się go innym autorom/developerom raportów. Elementy raportowe mogą być publikowane zarówno przez Business Intelligence Developer Studio, jak również przez Report Builder 3.0. Tworzący raporty mogą w dowolnym momencie wykorzystać opublikowane elementy, przeciągając je do swojego raportu.

Elementami raportów podlegającymi publikacji są:

  • Charts
  • Gauges
  • Images
  • Maps
  • Parameters
  • Rectangles
  • Tables
  • Matrices
  • Lists

Schemat przykładowego „cyklu życia” elementu raportu

  1. Osoba A tworzy raport, który zawiera wykres wykorzystujący jako dane, osadzony w ramach raportu data set

  2. Osoba A publikuje na serwerze raportowym wykres jako element raportu. Automatycznie Report Builder nadaje wykresowi unikalny ID. Wykres jest publikowany wraz z obiektem data set, który stanowi jego integralną część i zostaje „osadzony” w wykresie.

  3. Osoba B tworzy pusty raport, przeszukuje galerie elementów raportowych, znajduje opublikowany wykres i dodaje go do własnego raportu. Wykres jest od tego momentu częścią raportu osoby B.

  4. Osoba C osadza wykres z galerii w swoim raporcie, ale zmienia również jego typ (np. z kolumnowego na okrągły).

  5. Osoba C, jeśli posiada odpowiednie uprawnienia, publikuje nowy wykres, nadpisując stary na serwerze.

  6. Kiedy osoba B otwiera swój raport, element raportu pobrany z galerii elementów jest sprawdzony pod kątem aktualności. Jeśli od ostatniego otwarcia raportu na serwerze dokonano zmiany elementu raportu (wykresu), użytkownik B otrzymuje informacje o zmianie i może zaakceptować te zmiany, co spowoduje aktualizację komponentu w jego raporcie.

 Do początku strony Do początku strony

Report Builder 3.0

Kolejna odsłona narzędzia klienckiego – czyli Report Builder 3.0. Wersja SSRS 2008 R2 to krok w kierunku użytkowników końcowych, dostarczenie narzędzia, dzięki któremu osoba nietechniczna w prosty sposób wykorzysta środowisko SSRS do zbudowania i opublikowania własnego raportu. Narzędzie Report Builder 3.0 zapewnia jeszcze więcej możliwości, a jednocześnie korzystanie z niego jest proste. SQL Server 2008 Report Builder v3 to dopracowanie możliwości aplikacji m.in. przez:

  • implementację nowych funkcji wykorzystywanych do tworzenia raportów, jak chociażby wspomniane w tym artykule Data Bars (paski danych) czy mapy,
  • możliwość zdefiniowania własnego źródła danych dla tworzonego raportu (nie trzeba korzystać z definiowanego modelu raportowego),
  • możliwość pracy w trybie „server mode” zapewniającą zwiększenie wydajności pracy użytkownika końcowego z aplikacją przez wprowadzenie wykorzystania cache’u serwera do przechowywania danych wykorzystywanych przez użytkowników aplikacji Report Builder.

 Do początku strony Do początku strony

Demo 1. Wizualizacja informacji o sprzedaży zrealizowanej na obszarze USA

Krok 1. Zapytanie pobierające dane.

Do pobrania danych wykorzystany zostanie widok vSalesPerson zwracający informacje o obszarze (StateProvinceName) oraz wartości sprzedaży (SalesYTD), zrealizowane na terenie USA (CountryRegionName=’United States’).

Rysunek 1: Do pobrania danych wykorzystany zostanie widok vSalesPerson zwracający informacje o obszarze (StateProvinceName) oraz wartości sprzedaży (SalesYTD), zrealizowane na terenie USA (CountryRegionName=’United States’).

Data Set gotowy do użycia w raporcie.

Rysunek 2: Data Set gotowy do użycia w raporcie.

Krok 2. Prezentacja tabelaryczna wyników.

Tabelaryczna prezentacja wyników przez osadzenie w raporcie tabeli.

Rysunek 3: Tabelaryczna prezentacja wyników przez osadzenie w raporcie tabeli.

Krok 3. Osadzanie nowego obiektu w raporcie – mapa.

Wybór wizualizacji danych – komponent .NET Map.

Rysunek 4: Wybór wizualizacji danych – komponent .NET Map.

Nowy komponent umożliwia osadzenie w raporcie:

  • map pochodzących z galerii (preinstalowane mapy, w tym momencie dostępne mapy poszczególnych stanów USA oraz mapa całego kraju),
  • kształtów map pochodzących z popularnych formatów plików grafiki wektorowej – ESRI (.shp),
  • obszarów uzyskanych przez wykonanie zapytania SQL (org. SQL Spatial Data Query).

Krok 4. Wskazanie źródła pochodzenia kształtu mapy.

Wybór sposobu prezentacji danych – obszaru/mapy.

Rysunek 5: Wybór sposobu prezentacji danych – obszaru/mapy.

Do prezentacji danych sprzedaży wykorzystana zostanie mapa USA z podziałem na stany.

Rysunek 6: Do prezentacji danych sprzedaży wykorzystana zostanie mapa USA z podziałem na stany.

Ważnym elementem raportu zawierającego mapę może być jego integracja z Bing Maps. Efekt integracji można uzyskać, zaznaczając opcję „Add a Bing Maps layer”.

Możliwość integracji z Bing Maps.

Rysunek 7: Możliwość integracji z Bing Maps.

Krok 5. Określenie sposobu prezentacji analizowanego atrybutu na mapie.

Kolejny krok przy osadzaniu mapy to wybór sposobu wizualizacji danych na obszarze mapy. Dość interesujący jest w tym miejscu wybór mapy typu Bubble Map, na której wizualizacja odbywa się przez umieszczenie centrum chmurki (ang. Bubble) w odpowiednim miejscu danych, a rozmiar chmurki zależy od aktualnej wartości analizowanego atrybutu (np. wielkości sprzedaży). Można również skorzystać z opcji kolorowej mapy analitycznej (ang. Color Analytical Map), na której wartości analizowanego atrybutu zaznaczane są odpowiednimi kolorami.

Wybór typu wizualizacji.

Rysunek 8: Wybór typu wizualizacji.

Krok 6. Korelacja analizowanych danych (dane pochodzące ze stworzonego Data Set z osadzaną mapą).

Poprawna wizualizacja danych wymaga określenia sposobu łączenia analizowanych danych z obszarem, na który mają zostać naniesione. W tym celu należy jawnie zdefiniować połączenie między wspomnianym obszarem (mapą) a zapytaniem (wizualizowanymi danymi).

Korelacja danych podlegających analizie z obszarem ich wizualizacji (mapą). W prezentowanym przypadku połączenie między mapą a analizowanymi danymi odbywa się przez atrybut STATENAME (dla Spatial data) oraz StateProvinceName (dla analizowanych danych).

Rysunek 9: Korelacja danych podlegających analizie z obszarem ich wizualizacji (mapą). W prezentowanym przypadku połączenie między mapą a analizowanymi danymi odbywa się przez atrybut STATENAME (dla Spatial data) oraz StateProvinceName (dla analizowanych danych).

Krok 7. Wskazanie atrybutu podlegającego analizie oraz sposobu jego prezentacji.

Wybór wzoru mapy, analizowanego atrybutu oraz reguły kolorowania wyników.

Rysunek 10: Wybór wzoru mapy, analizowanego atrybutu oraz reguły kolorowania wyników.

Krok 8. Raport końcowy: podgląd.

Podgląd finalnego raportu wartości sprzedaży naniesionych na mapę sprzedaży.

Rysunek 11: Podgląd finalnego raportu wartości sprzedaży naniesionych na mapę sprzedaży.

 Do początku strony Do początku strony

Demo 2. Wizualizacja danych z wykorzystaniem Data Bars (pasków danych)

Krok 1. Prezentacja danych, które podlegać będą wizualizacji.

Tabelaryczna prezentacja analizowanych danych.

Rysunek 1: Tabelaryczna prezentacja analizowanych danych.

Krok 2. Osadzenie tabeli z danymi w raporcie.

Do tej pory korzystający z technologii SSRS najczęściej prezentowali dane w formie tabelarycznej. Mimo jej prostoty i czytelności czasami dość trudno w tabeli, w której dane zostały posortowane alfabetycznie według nazwy obszaru, wyłonić obszar o najwyższej sprzedaży, co doskonale widać na zamieszczonym poniżej podglądzie raportu.

Tabelaryczna prezentacja analizowanych danych z wykorzystaniem SSRS. Dane w raporcie posortowane według nazwy obszaru.

Rysunek 2: Tabelaryczna prezentacja analizowanych danych z wykorzystaniem SSRS. Dane w raporcie posortowane według nazwy obszaru.

Krok 3. Zwiększenie czytelności raportu przez dodanie pasków danych (org. Data Bars).

Dodanie do raportu pasków danych wymaga wykorzystania komponentu Data Bars dostępnego w SSRS 2008 R2.

Rysunek 3: Dodanie do raportu pasków danych wymaga wykorzystania komponentu Data Bars dostępnego w SSRS 2008 R2.

Krok 4. Ustawienia obiektu Data Bar.

Określenie rodzaju pasków zastosowanych do wizualizacji danych.

Rysunek 4: Określenie rodzaju pasków zastosowanych do wizualizacji danych.

Krok 5. Wskazanie elementu danych dla obiektu Data Bar.

Wskazanie atrybutu stanowiącego dane wejściowe dla obiektu Data Bar.

Rysunek 5: Wskazanie atrybutu stanowiącego dane wejściowe dla obiektu Data Bar.

Krok 6. Prezentacja raportu z obiektem Data Bar.

Wyjściowy raport sprzedaży wraz z obiektem pasków danych (org. Data Bar).

Rysunek 6: Wyjściowy raport sprzedaży wraz z obiektem pasków danych (org. Data Bar).

 Do początku strony Do początku strony

Demo 3. Przygotowanie i wykorzystanie Report Parts z zastosowaniem Report Buildera 3.0.

Krok 1. Otwarcie Report Builder.

Uruchomienie aplikacji Report Builder odbywa się przez stronę Report Manager.

Rysunek 1: Uruchomienie aplikacji Report Builder odbywa się przez stronę Report Manager.

Nowy ekran powitalny aplikacji Report Builder 3.0 umożliwia szybkie utworzenie raportu przez uruchomienie jednego z kreatorów bądź utworzenie pustego raportu.

Rysunek 2: Nowy ekran powitalny aplikacji Report Builder 3.0 umożliwia szybkie utworzenie raportu przez uruchomienie jednego z kreatorów bądź utworzenie pustego raportu.

Krok 2. Przygotowanie obiektu do publikacji.

W ramach tej demonstracji element raportu przygotowanego w Demo 2. zostanie opublikowany jako Report Part na serwerze raportowym.

Raport z elementem Matrix, który zostanie opublikowany jako Report Part.

Rysunek 3: Raport z elementem Matrix, który zostanie opublikowany jako Report Part.

Krok 3. Publikacja elementu raportu na serwerze.

Zatwierdzenie publikacji elementu Tablix1 na serwerze raportowym.

Rysunek 4: Zatwierdzenie publikacji elementu Tablix1 na serwerze raportowym.

Krok 4. Utworzenie nowego raportu wykorzystującego przygotowany wcześniej element.

W celu przygotowania nowego raportu, wykorzystującego opublikowany Report Part, należy połączyć się z serwerem raportowym, na którym został on opublikowany.

Tworzenie nowego raportu z użyciem Report Part Gallery.

Rysunek 5: Tworzenie nowego raportu z użyciem Report Part Gallery.

Po połączeniu z serwerem należy wskazać interesujący Report Part i osadzić go we własnym raporcie.

Osadzanie Report Part w nowym raporcie.

Rysunek 6: Osadzanie Report Part w nowym raporcie.

 Do początku strony Do początku strony

Podsumowanie

SQL Server Reporting Services 2008 R2 to platforma raportowa o coraz większych możliwościach. Niewątpliwymi nowościami jej kolejnej wersji są zaawansowane obiekty wizualizacji danych, np. zaprezentowane w tym artykule mapy czy paski danych, które stały się integralnymi elementami raportów. Warto również zwrócić uwagę, że pewne obszary platformy raportowej nieznacznie zmodyfikowano, aby jak najbardziej zbliżyć się do rodziny produktów o interfejsach typu SharePoint like UI oraz możliwościach wykorzystania obiektów SharePoint jako źródeł danych. Wskazuje to jednoznacznie zmierzanie i zachęcanie do integracji SSRS z Microsoft SharePoint Server. Więcej, wprowadzenie do użycia w obszarze raportowym obiektów takich jak Report Part jest niemal tożsame, jeśli chodzi o zastosowanie, z wykorzystywanymi w ramach MicrosftSharePoint Server –webpartami.


Bartłomiej Graczyk Bartłomiej Graczyk, analityk biznesowy i konsultant technologiczny
W ostatnich latach uczestnik wielu projektów, w których pełnił rolę projektanta, konsultanta technologicznego i analityka biznesowego w zakresie rozwiązań działających na platformie Microsoft SQL Server 2000/2005/2008, Sybase ASA/ASE, Oracle. Twórca autorskich rozwiązań i aplikacji bazodanowych m.in. dla Mars Polska, Polskapresse, Polskiej Telefonii Cyfrowej (Era), Rohe Polska, AGITO SA, Polbanku, PKP SA.
Od 2007 roku Microsoft Certified Trainer, prowadził autoryzowane szkolenia Microsoft w ramach współpracy z największymi ośrodkami szkoleniowymi w Polsce, m.in. ABC Data Centrum Edukacyjne i Combidata. W ramach działalności trenerskiej brał również udział w projektach szkoleniowych dla sektora publicznego: Kancelarii Prezesa Rady Ministrów, Centralnego Biura Antykorupcyjnego, Agencji Bezpieczeństwa Wewnętrznego, GIODO.
Inicjator offline’owej grupy Microsoft w Łodzi, autor artykułów na stronach Microsoft TechNet i w czasopismach branżowych.
Posiada certyfikaty: MCT, MCITP: Database Administrator, Database Developer, Business Intelligence Developer, MCDBA, MCSE, MCSA, Microsoft Certified Business Management Solutions Specialist & Professional for Microsoft Dynamics CRM 4.0.
 Do początku strony Do początku strony

Microsoft SQL Server 2008