Reporting services SSRS根据另一个参数设置参数值

Reporting services SSRS根据另一个参数设置参数值,reporting-services,parameters,ssrs-2008,Reporting Services,Parameters,Ssrs 2008,我知道在这方面已经有一些问题了,但我觉得我的问题有点不同 我构建了一个基于日期范围的报告,用户可以使用两个日期参数(DateFrom、DateTo)指定该范围。但是,我想要一个提供预定义日期范围的下拉列表,例如“上30天”、“上60天”、“上90天”、“上个月” 我已经创建了一个生成这些行的数据集,示例行是: Label=“last30天”,DateFrom=2016-08-15,DateTo=2016-09-13 基本上,我希望使用流程如下所示: 用户加载报告时,预定义的日期范围参数默认为标签

我知道在这方面已经有一些问题了,但我觉得我的问题有点不同

我构建了一个基于日期范围的报告,用户可以使用两个日期参数(DateFrom、DateTo)指定该范围。但是,我想要一个提供预定义日期范围的下拉列表,例如“上30天”、“上60天”、“上90天”、“上个月”

我已经创建了一个生成这些行的数据集,示例行是: Label=“last30天”,DateFrom=2016-08-15,DateTo=2016-09-13

基本上,我希望使用流程如下所示: 用户加载报告时,预定义的日期范围参数默认为标签“手动”值NULL。并且这两个日期字段为空。用户可以选择将自己的日期范围指定为所需的日期范围,也可以使用下拉列表选择预定义的日期范围,选中该范围后,将填充日期参数

这容易做到吗?我以前使用过级联参数,但不是这样。当我输入这个的时候,我想知道我是否可以使用某种表达式…比如,当下拉列表中的一个选项被选中时,将参数设置为这些值

编辑:
所以我能让它正常工作。我在预设下拉列表中添加了“上[30 | 60 | 90]天”、“上个月”和“手动”的可用值(标签/值匹配)。我将默认设置为“手动”。我向预设日期数据集中添加了一个参数,并将其指向“预设日期”参数。然后,我设置了两个日期参数,将数据集用作它们的默认值。现在,当您使用下拉列表时,它会像我所希望的那样填充两个日期参数……但是如果您尝试在填充后选择一个不同的参数,它们不会改变……

不幸的是,由于SSRS中的错误“功能”,这将无法正常工作

微软已经关闭了这个BUG功能,因为我们讨厌我们的客户,它按照设计工作(尽管它很愚蠢)

这里有一个可能的答案,但我认为它在你的情况下不起作用:


您可以使用日期范围参数的默认值属性,默认情况下使用下拉列表填充参数。但是,如果用户指定日期,参数将被填充。如果您需要进一步的帮助,请告诉我。@alejandrozuleta您发表评论时,我刚刚试过。它“有点有效”,请参见OP中的“我的编辑”。它使用我想要的值填充参数,但是如果您尝试更改下拉列表,日期参数中的值不会更改。如果用户填充参数,并且下拉列表未设置为手动,会发生什么情况?哪个是范围,下拉列表中指定的还是日期参数中指定的?}@alejandrozuleta如果我不理解你的问题,很抱歉。但它现在的设置方式是。DateFrom/DateTo是传递到存储过程中的数据。因此,您可以将下拉列表设置为“Last90Days”,它将正确填充日期参数,然后您可以手动更改日期……当您运行报告时,它将根据用户在日期参数中键入的内容运行。我使用“手动”选项的唯一原因是报表打开时不会自动运行。它首先等待用户输入日期,或者等待他们选择预定义的日期范围。我将使用另外两个设置为内部的参数,然后添加一些逻辑来确定何时应使用指定的日期或下拉日期。如果这听起来像是一个可能的解决方案,我会详细回答。是的,我在研究其他论坛/网站时发现了这一点。我确实找到了一个解决方案,但它需要有两个以上的可见参数,它们的可用值等于通过PresetDates参数过滤的数据集返回的数据。然后将实际的DateFrom DateTo设置为这两个新参数……这是有效的,因为当您更改下拉列表时,它现在会使DateFrom DateTo值无效(不在可用值列表中),并强制刷新参数……但我不想让用户混淆他们不使用的额外参数。英雄联盟