【问题标题】:How to hide parameter based on another parameter value in SSRS如何根据SSRS中的另一个参数值隐藏参数
【发布时间】:2014-12-02 11:31:05
【问题描述】:

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

【问题讨论】:

  • 很遗憾,您无法在运行时更改参数的可见性。或者,您可以根据第一个参数的选定值来控制第二个参数的值。检查这篇文章 - stackoverflow.com/questions/21481738/…
  • Ram,您能否将其添加为问题的答案,而不是评论?这有助于其他用户识别未回答的问题。

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


【解决方案1】:

根据 Nathan 的评论,我在此处添加 Amar 的评论作为答案/部分答案

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

查看这篇文章 - Hide parameter (dropdown control from the toolbar) in SSRS based on another Parameter

【讨论】:

    【解决方案2】:

    正如 Amar 指出的那样,您不能动态隐藏参数,但您可以做的是为单值参数将它们变灰,如 here 所述。 对于多值参数不起作用,因为多值参数不允许为空。

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

    假设您有 2 个级联参数。所以你想从第一个参数中选择一些东西,根据你在第一个参数中选择的内容,你会在第二个参数中得到不同的结果。 (Microsoft has a documentation about this)

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

    Available Values 中,我们为第二个参数选择带有其值和标签的DataSet。可能看起来像这样:

    现在在DataSet中为第二个参数,这里DataSet1,我们需要指定什么时候显示有限的数据,什么时候不显示:

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

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

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

    【讨论】:

      猜你喜欢
      • 2021-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-02
      • 1970-01-01
      相关资源
      最近更新 更多