我有几个Parameters
,我想基于掀起结果的用户选择,但是当我从我的多值Parameter
我的报告的错误选择与Failed to evaluate the FilterValues of the DataSet 'DST_MyThirdDataSet'
SSRS多值参数不过滤
我有我的第一个DataSet
调用DST_MyFirstDataSet
这是用来创建名为Parameter
名为Parameter1
。
我的第二个DataSet
被称为DST_MySecondDataSet
是根据Parameter1
中选择的内容进行过滤的。我的过滤器看起来是这样的:
Expression [DataSet1Id] Integer = CInt(Parameters!Parameter1.Value)
这是我用我叫Parameter2
秒Parameter
这是一个多值参数。这似乎工作正常。
我的第三个DataSet
被称为DST_MyThirdDataSet
,我已经建立了基于Parameter2
中选择的内容进行过滤。我的过滤器看起来是这样的:
Expression [DataSet2Id] Integer In CInt(Parameters!Parameter2.Value)
无论我在网上看了看,似乎支持我所(使用In
操作和使用Parameters!Parameter2.Value
),但我仍然似乎得到这个愚蠢的错误。
有没有人看到我在哪里可能会出错?
编辑
看来工作的,如果不是转换的Parameter
到Integer
,我转换Field
为String
,但为什么不能我做的是我本来的方式吗?
谢谢!你的回答确实解决了我的问题。但是,我只想澄清一点,'Parameters!Parameter2.Value'确实可行。即使你说它是一个数组是正确的,那也没问题,因为我使用的是“IN”运算符,它允许在一个“数组”数组中进行查找。最终解决我的问题是将参数数据类型设置为整数。再次感谢! – scapegoat17
您正在'Cint(Parameter ...)中使用in运算符'cint函数不返回数组,并且不能在数组中的每个值上工作。所以它没有做你认为的事情。 –