Je wilt in je rapportage gebruik gaan maken van een parameter met bijvoorbeeld de namen van de landen waar je klanten hebt zitten. Het zal regelmatig voorkomen dat je een keuze-optie in je parameterbox wilt hebben met ‘Toon Alles’, in dit geval alle landen. De oplossing is als volgt. Maak een dataset aan in je rapportage
SELECT ' _Toon Alles' AS LandNaam, 9999999 AS LandID UNION ALL SELECT DISTINCT LandNaam, LandID FROM DimLand AS DL ORDER BY LandNaam |
We hebben nu een lijstje gegenereerd met alle unieke landen uit onze landentabel. Als eerste land hebben we het land’ _Toon Alles’, deze fungeert straks als parameter om alle landen te tonen. Let op dat er een spatie aan het begin staat. Dit is om zeker te weten dat hij straks bovenaan komt te staan.
Parameter aanmaken
Ga naar je rapport-parameters en maak de volgende parameter aan:
Dataset voor gebruik binnen je data-region in je rapport
Tot slot zullen we in onze dataset die de rapportage uiteindelijk wat extra’s moeten opnemen in de WHERE-Clause om te zorgen dat alle plaatsen worden getoond wanneer er voor ‘ _Toon Alles’ wordt gekozen!
SELECT * FROM DimKracht WHERE(@GeselecteerdeLandID = 9999999 OR LandID = @GeselecteerdeLandID) |
Default staat de parameter op een waarde van 9999999. Dit is ‘Alles tonen’. Wat we hierboven in onze hoofd-dataset doen is het volgende: Controleer of de parameter 9999999 is. Is hij dit stopt hij en toont hij alles. Is hij niet gelijk aan 9999999 dan springt hij automatisch naar het OR gedeelte en controleert de ingevoerde parameter.