Let’s say my report(SSRS 2005) have 5 columns. And I want to show/ hide columns based on a parameter(multi select with all 5 column names) selected by user. do as following
1)Create a parameter of type string (ColumnVisibility is name of my parameter) with desired column names in labels for the 5 columns and INT number(01,02,03,04,05) respectively in the values in “Available Values” section of the parameter wizard.
2) Then Go to column Properties on design . Go to “visibility” and paste following
=iif(instr(Join(Parameters!ColumnVisibility.Value,","),"01")>0,false,true)
3) repeat same for all the columns, by increasing the int value by 1..see following for example
2nd column -
=iif(instr(Join(Parameters!ColumnVisibility.Value,","),"02")>0,false,true)
3rd column
=iif(instr(Join(Parameters!ColumnVisibility.Value,","),"03")>0,false,true)
And so on.
for SSRS 2008, when you right click on the column you can see "Column Visibility" option. paste the code in "show or hide based on an expression" section for each column.
Hope this helps.
Arvind