如果参数 A =(全选),则默认参数 B 为 "Y"



我有一个报告,要求我从一个我没有创建的过程中编写,该过程每个选项都有2个参数。

@AreaID 
@AreaID_All

因此,他们这样编码——如果你想搜索特定的区域id,你可以将区域id输入到@AreaID中,然后将"N"输入到@Area\id_All。

如果您想显示全部,那么您将在@AreaID中输入NULL,并在@AreaID_all中将"Y"输入。

还要求为@AreaID提供多选下拉列表。

我已经记下了这一部分,现在我不知道如何判断用户是否在@AreaID中选择了(全选),然后将@AreaID_All默认为"Y"

有什么想法吗?

您可以创建另一个数据集,该数据集返回作为可用值传递给参数的AreaID行数。

然后使用它与Parameters!AreaID.Count函数进行比较。

@AreaID_All集合表达式应该是这样的:

=Switch(
...
...
First(Fields!CountofAreaID.Value,"CountDataSet")=Parameters!AreaID.Count,"Y"
)

这意味着选择了Select All选项。

此外,我强烈建议您使用一个内部参数来验证@AreaID_All从用户那里获得的数据。

如果这有帮助,请告诉我。

最新更新