Clicking the drillthrough link in a 2008 Multi valued parameter report after exporting to MHTML / Word formats which contains drillthrough action (Go to report) fails

PROBLEM:

1. Consider a report (rptParent) with a multi value query based parameter and it has links (table cell action “Go to report”) to rptChild.

2. The report (rptChild) renders pased on the parameter value it receives from rptParent.

3. When viewed on report server all the links work, both rptParent and rptChild works too.

4. Now either EXPORT or set up subscription to rptParent to MHTML / WORD etc.

5. When clicking the links on the exported / subscribed report rptParent, the report server complains about one of the parameter missing and would not render the report rptChild.

 

EXPLANATION:

 

This will work perfectly fine in Reporting Service 2005. The issue got introduced only in Reporting Service 2008.

This is because the way the URL is constructed. Notice the Urls generated.

Failing: https://localhost/ReportServer?%2fParametersTest&ParamValue=1%2c2&rs%3aParameterLanguage=&rc%3aParameters=Collapsed

 

Working:  https://localhost/ReportServer?%2fParametersTest&ParamValue=1&ParamValue=2&ParamValue=3aParameterLanguage=&rc%3aParameters=Collapsed

 

WORKAROUND:

 

As there are currently no plans to fix this in Katmai, follow the below workaround.

 

Try to construct the Drillthrough link manually as a hyperlink. The expression might look something like:

=Globals.ReportServerURL & "?" & Uri.EscapeDataString(Globals.ReportFolder & "/" & <<<TargetReportName>>> ) & <<ParametersAsString>>

For example, if the target report name is "ParametersTest" and you wanted to pass values 1, 2 and 3 to parameter "ParamValue", the URL would be:

=Globals.ReportServerURL & "?" & Uri.EscapeDataString(Globals.ReportFolder & "/ParametersTest") & "&ParamValue=1&ParamValue=2&ParamValue=3"