In this video of SSRS Series, we are going to work on Cascade Parameter. I got this question from one of the visitor.
here is the scenario
He would like to provide facility to his users to choose the Column name from the Drop down( Parameter). Once the Column name is chosen then Next parameter should show values available in the table for that column ( Cascaded Parameter). The user should be able to choose multiple values if he/she like. Once user choose the values for parameter, He/She should be able to see the results as per values provided in the parameters.
Let's create the Main Query with two Parameters
Stored Procedure for the Values Parameter ( Cascaded Parameter)
Query for ColumnName parameter
What we will learn while creating this video for Cascade Parameter report by using Stored Procedures
How to create Stored Procedures with Dynamic SQL
How to use Stored Procedure in SSRS for DataSet
How to use Stored Procedure for Parameters
How to create Cascading Parameter in SSRS Report
here is the scenario
He would like to provide facility to his users to choose the Column name from the Drop down( Parameter). Once the Column name is chosen then Next parameter should show values available in the table for that column ( Cascaded Parameter). The user should be able to choose multiple values if he/she like. Once user choose the values for parameter, He/She should be able to see the results as per values provided in the parameters.
Let's create the Main Query with two Parameters
-- Main Query CREATE PROCEDURE dbo.MainQuery @ColumnName VARCHAR(100), @Values VARCHAR(MAX) AS BEGIN IF OBJECT_ID('tempdb..##Temp') IS NOT NULL DROP TABLE ##Temp DECLARE @Val VARCHAR(MAX) SET @Val=Replace(@Values,',',''',''') DECLARE @SQL NVARCHAR(MAX) SET @SQL='Select SalepersonFName,City,State,Country,Region into ##Temp from dbo.TotalSale where '+@ColumnName+' in ('''+@Val+''')' PRINT @SQL EXECUTE (@SQL) SELECT * FROM ##Temp END --Test your SP for Main Query EXEC dbo.MainQuery 'Country','Pakistan,India'
Stored Procedure for the Values Parameter ( Cascaded Parameter)
-- Multi Value Parameter Create PROCEDURE dbo.ColValues @ColumnName VARCHAR(100) AS BEGIN IF OBJECT_ID('tempdb..##TempValues') IS NOT NULL DROP TABLE ##TempValues DECLARE @SQL NVARCHAR(100) SET @SQL='Select '+@ColumnName+' As val into ##TempValues from dbo.TotalSale' EXECUTE (@SQL) SELECT DISTINCT * FROM ##TempValues END --Test your SP for Multiple values EXEC dbo.ColValues 'Country'
Query for ColumnName parameter
--Column Name Parameter Query SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_Name='TotalSale'
What we will learn while creating this video for Cascade Parameter report by using Stored Procedures
How to create Stored Procedures with Dynamic SQL
How to use Stored Procedure in SSRS for DataSet
How to use Stored Procedure for Parameters
How to create Cascading Parameter in SSRS Report
How to create Cascade Parameters in SSRS Report - SQL Server Reporting Services(SSRS) Tutorial
Hi Amir,
ReplyDeleteI want to create a SSRS report with dynamic parameters. I have 2 db servers i.e. server1 & server2 and server1 has db1 & server2 has db2 databases and db1 has table1 & db2 has table2 and the table structures are same. I want to make the server names and db names as parameterised as when the user select server names the corresponding db & table names will be selected. Please help me out with these requirements.
Kind regards,
Mohammed