如何将多个整数放入 SSRS 参数的值字段,以便可以在 WHERE 子句中使用 IN 语句?
请耐心等待。我认为这最终会是一个简单的语法问题,但解释太长了。
我有一份报告,希望将其分为两种类型的员工:Dedicated 和 Bureau。确定激活发生的时间是唯一的方法,专职工作人员在除 12 点和 13 点(中午至下午 2 点)之外的所有时间都在工作。
我创建了一个名为 @AgentType 的参数,并在 SQL 查询中添加了一个 where 子句
Where
[Hour] in (@AgentType)
然后,我将参数的数据类型设置为整数,并设置可用值,如图所示。
这作为一个测试非常有效,但是如果我尝试准确地模拟工作时间
SSRS 删除了我的逗号并将整数转换为 1234567...我还尝试使用表达式 =1,2,3... 但这在报告运行时导致了错误。
所以我的问题基本上是如何将多个整数放入 SSRS 参数的值字段,以便我可以在 WHERE 子句中使用 IN 语句?
最佳答案
这个解决方案可能适合您。您可以创建两个参数:AgentType
和 AgentTypeHidden
。
对于 AgentType
设置两个可用值,如下所示:
AgentTypeHidden
必须隐藏并设置为允许多个值:
不要使用此表达式设置任何可用值,而是设置默认值:
=IIF(
Parameters!AgentType.Value=1,
SPLIT("1,2,3,4,5,6,7,8,9,10,11,14",","),
SPLIT("12,13",",")
)
同时为 AgentTypeHidden
参数设置始终刷新
。
最后,在查询中使用 AgenTypeHidden
参数。
Where [Hour] in (@AgentTypeHidden)
请告诉我这是否有帮助。
关于reporting-services - 在 SSRS 参数中获取多个整数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39638047/