如何根据SSRS中的其他参数值隐藏参数

时间:2014-10-07 22:14:18

标签: reporting-services ssrs-2008 ssrs-2008-r2 ssrs-tablix ssrs-grouping

您好我有2个参数param1和param2。 param1的值为true和false。我的要求是如果我在param1中选择true,那么param2应该被隐藏,如果我在param1中选择false,那么param2应该是可见的。这可以通过SSRS实现吗?

2 个答案:

答案 0 :(得分:3)

根据内森的评论,我在这里将Amar的评论添加为答案/部分答案

不幸的是,您无法在运行时更改参数的可见性。或者,您可以根据第一个参数的选定值控制第二个参数的值。

查看此帖子 - Hide parameter (dropdown control from the toolbar) in SSRS based on another Parameter

答案 1 :(得分:2)

正如Amar指出的那样,你无法动态地隐藏参数,但是你可以做的是将它们灰化为单值参数,如the documentation所述。 对于不能工作的多值参数,因为不允许多值参数为空。

但您可以修改DataSet和参数的默认值。限制用户的选择列表。 让我举个例子:

我们假设您有2个级联参数。因此,您希望从第一个参数中选择一些内容,并根据您在第一个参数中选择的内容,在第二个参数中获得不同的结果。 (here

现在我们可以使用此级联来设置第二个参数中的值。因此,例如,如果我们在第一个参数中选择值1,我们希望第二个参数处于正常状态并显示其数据可供选择,但在任何其他情况下,我们希望第二个参数具有可供选择的有限数据。这就是我要展示的内容。你有第二个参数,如下所示:

Microsoft has a documentation about this

Available Values中,我们选择DataSet及其sceond参数的值和标签。这看起来像这样:

General information for second parameter

现在在第二个参数的DataSet中,DataSet1,我们需要指定何时显示有限数据,何时不显示:

Available Values for second parameter

因此,当第一个参数的值不是All时,我们所做的是设置一个标签-1,其值为1,否则DataSet将返回表/函数中的所有数据/存储过程/等。

最后,当第一个参数不是-1时,第二个参数应具有默认值All,并选择标签1。所以回到第二个参数属性。对于Default Values,需要指定值-1

DataSet for second parameter

因此,现在用户只能获取列表中预先选择的All,以便在第一个参数不是1时进行选择。否则将提供完整列表。现在要做的就是声明当第二个参数的值为-1时所做的事情。

我希望能帮到别人。 请在评论中告诉我。