multi value parameters with ODBC connections
I am trying to pass in a multivalue value parameter as a report parameter. I am able to preview it in the "Data" tab in Design view with the "Run" icon. On the "Preview" tab, I am able generate the data for the 2 parameters. But, when I try to view the report, I get an error. It states, "An error occurred during local report processing. An error has occurred during report processing. Cannot add multi value query parameter '?' for data set 'EMS' because it is not supported by the data extension." I have found some online suggestions that recommended joining the parameters. So, on the "Parameters" tab of my Dataset, I have added =Join(Parameters!Location.Value, ", "). This is pulling the values from the other dataset I'm using. I also tried putting the entire select in the "Parameters" tab of the Dataset, sort of like this "=SELECT <column> FROM <table> WHERE <column> in ('" & Join(Parameters!Location.Value, ", ") & "')". But, this doesn't work. Maybe I didn't do it correctly. I need to use ODBC connections because we need to keep our SQL environments abstracted as the reports are moved from development through to production. Any suggestions would be greatly appreciated.
October 28th, 2010 2:14pm

hello, taking your expression string literally, I see a couple of misplaced and missing quotations try this: ="SELECT <column> FROM <table> WHERE <column> in ('" & Join(Parameters!Location.Value, "', '") & "')" one simple way to test your expression based query string is to output it into a text box in the report so you see how it looks like
Free Windows Admin Tool Kit Click here and download it now
October 28th, 2010 3:20pm

Thanks. I actually noticed the quotes issues. I'm not getting any results back now that I've "fixed" the quote problem. I'll post back when I have more information.
October 28th, 2010 4:25pm

I have more info. I am finding SQL Profiler to be helpful in seeing the query being executed. This is what SQL Profiler is showing: exec sp_executesql N'select ltrim(rtrim(equipment_division)) as equipment_division from dynamics..eqsa0700 where ltrim(rtrim(equipment_branch)) in (@P1)',N'@P1 nvarchar(12)',N'2100'', ''2500' What would work, if I were doing straight sql would be: select ltrim(rtrim(equipment_division)) as equipment_division from dynamics..eqsa0700 where ltrim(rtrim(equipment_branch)) in ('2100', '2200')
Free Windows Admin Tool Kit Click here and download it now
October 29th, 2010 5:06pm

Hi, Read this article http://blog.summitcloud.com/2010/01/multivalue-parameters-with-stored-procedures-in-ssrs-sql/ to see if it helps. I think the basic idea should be the same. If this does not help you out of this problem, please say more details about the report. thanks, Jerry
November 1st, 2010 10:46pm

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics