【问题标题】:How to cascade parameters in SSRS having specific values如何在具有特定值的 SSRS 中级联参数
【发布时间】:2014-09-17 13:46:47
【问题描述】:

我的报告中有 2 个参数“Groupby1”和“Groupby2”,对于第一个参数,我指定了一些值,例如 A 列、B 列、C 列。现在我需要根据第一个参数级联第二个参数如果我在 Groupby1 参数中选择 A 列,它应该只显示 Groupby2 参数中的 B 列和 C 列。这可以实现吗?

【问题讨论】:

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


    【解决方案1】:

    是的,这很容易实现。诀窍是使数据集仅依赖于第一个参数,并将其结果用于第二个参数的可用选项。

    关于如何实现这一点的更多细节:

    1. 使用选项创建第一个参数。 (GroupBy1)

    2. 创建一个在Where 中使用该参数或作为过滤器的数据集。

      SELECT 'Web' as Department WHERE 'IT' in ( @GroupBy1 )
      UNION ALL
      SELECT 'Database' as Department WHERE 'IT' in ( @GroupBy1 )
      UNION ALL
      SELECT 'Accounts Payable' as Department WHERE 'Accounting' in ( @GroupBy1 )
      UNION ALL
      SELECT 'Shipping' as Department WHERE 'Warehouse' in ( @GroupBy1 )
      UNION ALL
      . . .
      
    3. 创建一个使用该数据集作为可用选项的参数。 (GroupBy2)

    在您的核心数据查询或过滤器中使用这些参数的任意组合。

    一个限制是必须在报表中对参数进行排序,以便 GroupBy1 在 GroupBy2 之前。

    【讨论】:

    • 但是我的参数不是来自数据集,这些值是在参数中指定的
    • 我更改了答案,以展示如何为包含硬编码选项的第二个参数创建数据集。
    猜你喜欢
    • 1970-01-01
    • 2016-04-27
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多