【问题标题】:SSRS - Cascading Parameter? Parameter value then shows two other parameters?SSRS - 级联参数?参数值然后显示另外两个参数?
【发布时间】:2018-01-09 16:30:00
【问题描述】:

抱歉,如果这是相当直截了当的。我对 SRSS 很陌生,并且正在寻找解决方案,但不幸的是,我不知道如何继续。

我的报告目前有 1 个参数(选择一个是/否选项 - 这也是在数据集的 where 子句中设置的 = Where Choice = @choice....

我遇到的问题是,如果用户选择是,我希望它显示月份和年份的两个日期参数,然后要求用户选择这些然后查看报告。我遇到了级联参数,但如果我错了,请纠正我,这与本例中的第一个参数有关。但是,“是”或“否”是从案例陈述中派生出来的,它与日期无关,并且从数据库的角度来看它们不相关。所以不知道我怎样才能让它工作。我需要添加表达式吗?

  • 当 Choice = Yes 时,我需要显示两个参数
  • 然后我需要知道如何将其添加到数据集(如果只选择了“是”)。

再次抱歉,这可能是直截了当的,但我尝试了几天没有成功。

提前致谢。

【问题讨论】:

  • 月份和年份是参数吗?它们在某些方面与选择是不是不同?
  • 是不同的,因为与第一个参数 f 选择无关,但会将当前数据集限制为多个记录

标签: reporting-services parameters


【解决方案1】:

首先,您不能有条件地隐藏参数,因此所有 3 个参数都需要从一开始就可见。但是,您可以控制它们的行为以获得更好的功能。

我建议将数据集添加到提供年份列表的报告中。此数据集将用于填充 Year 参数的可用值。您可以在此处让查询检查 Choice 参数,如果将其设置为“否”,则查询仅返回“不适用”。所以一年的下拉菜单只有一个选项,因为它基本上是禁用的。对 Month 参数和数据集重复相同的步骤。

您还需要确保主数据集能够处理这些值。所以WHERE 子句可能看起来像这样:

WHERE (Year = @Year and Month = @Month) or @Year = 'Not Applicable'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多