第三方应用程序将URL参数传递给SSRS报告

时间:2016-09-16 22:17:40

标签: reporting-services

第三方应用程序传递的参数值如下:Parameters=Collapsed&Priority=P1%7cP2。它使用%7c(管道),而不是按照SSRS寻找它们的方式传递参数,如下所示:Parameters=Collapsed&Priority=P1&Priority=P2。该参数在SSRS中是多选的,可以在Report Builder中正常使用。我的where子句使用IN(@priority)。

如何让SSRS使用URL中传递的参数值?

1 个答案:

答案 0 :(得分:0)

如果无法更改应用程序以提供正确的多值参数语法(...&Priority=Value1&Priority=Value2&Priority=Value3...),则可以将数据集属性的“参数”部分中传递给数据集的值设置为以下表达式:

=split(Parameters!Priority.Value,"|")

这将采用管道分隔列表,并将其分成可以传递给SQL查询并与IN函数一起使用的项目列表。

我创建了一个虚拟报告来证明这一点:

<强>参数

<强>数据集

数据集属性

报告结果