SSRS - 多值参数 - 被视为'All'选项的表达式



i有一个SSRS报告,其中一个参数允许多个选择,我还添加了一个'所有'选项,它将将A'''传递到数据库中,例如选择所有部门。

所以在下拉菜单中,我们有类似的东西:

(选择全部)

所有(代码'')

hr(代码1)

it(代码2)

管理(代码3)

因此,(选择全)是具有多选择的标准选项,并且(全)是通过null/''的自定义选项。我们还有额外的(全部)允许所有部门(有些不在列表中)返回。我想做的是了解如果我选择(全部)其他选项(全部),那么如果我选择(全部)和人力资源,则将其传递给数据库?目前,如果我选择了这一点 - 只有人力资源的结果将显示。

我希望能够编写一个条件,说如果他们选择了(全部)这样做,但是我不确定阵列是如何通过的吗?我想模仿(全部)选择报告的内容?

选择内置选择所有选项时,SSR将参数设置为所有可能的值作为逗号分隔列表,该列表将传递给您的数据集。您的自定义所有人都有其自身的值,该值作为单个值发送,其余的值与其他值不同。

假设您的所有参数被重视为"全部",在您的数据集查询中,则需要为

WWHERE dept IN (@dept) OR 'All' IN (@dept)

如果您的全部&选择了HR,查询将是

的功能等效物
WHERE dept IN ('HR','All') OR 'All' IN ('HR','All')

有一些性能的影响,因此请确保您使用多个选项进行测试。

最新更新