In SQL Server Reporting Services kun je datasets aanmaken. Een van de best-practices is om deze datasets tot een minimum te beperken, het liefst zelf maar 1. Zodra iemand ooit het rapport moet aanpassen hoeft hij niet vele datasets langs om alles na te zoeken maar kan hij volstaan met een dataset.
Onderstaand voorbeeld toont hoe je dit kunt oplossen in je dataset. Geen moeilijke dingen in het rapport maar aanpakken bij de bron;
USE AdventureWorksDW GO DECLARE @GeselecteerdeKlantID AS INT DECLARE @GeselecteerdeLandID AS INT SET @GeselecteerdeKlantID = 0 SET @GeselecteerdeLandID = 2 SELECT DC.CustomerKey, DC.FirstName, DG.GeographyKey, DG.EnglishCountryRegionName, SUM(FIS.SalesAmount) AS SalesAmount FROM FactInternetSales AS FIS LEFT OUTER JOIN DimCustomer AS DC ON FIS.CustomerKey = DC.CustomerKey LEFT OUTER JOIN DimGeography AS DG ON DC.GeographyKey = DG.GeographyKey WHERE ( ISNULL(@GeselecteerdeKlantID, 0) = 0 OR DC.CustomerKey = @GeselecteerdeKlantID) AND ( ISNULL(@GeselecteerdeLandID, 0) = 0 OR DG.GeographyKey = @GeselecteerdeLandID) GROUP BY DC.CustomerKey, DC.FirstName, DG.GeographyKey, DG.EnglishCountryRegionName





















Tags
