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

cha*_*win 2 parameters reporting-services ssrs-2008

我知道已经有一些关于此的问题,但我觉得我的有点不同。

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

我已经创建了一个生成这些行的数据集,示例行为:Label = "Last30Days", DateFrom = 2016-08-15, DateTo = 2016-09-13

基本上,我希望使用流程如下:用户加载报告,预定义日期范围参数默认为标签“手动”值 NULL。并且两个日期字段为空。用户可以选择将自己的日期范围指定为他们想要的任何内容,或者他们可以使用下拉菜单并选择预定义的日期范围,选择该范围后,它会填充日期参数。

这容易实现吗?我以前使用过级联参数,但不太像这样。当我输入此内容时,我想得更多,并且想知道我是否可以使用某种表达式...例如,当选择下拉列表中的选项时,将参数设置为这些值...?

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

Han*_*ist 5

不幸的是,由于SSRS 中的BUG “功能”,这不会按应有的方式工作。

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

https://connect.microsoft.com/SQLServer/feedback/details/268032/default-does-not-get-refreshed-for-cascading-parameters

这是一个可能的答案,但我认为它不适用于您的情况:

http://www.bp-msbi.com/2011/04/ssrs-cascading-parameters-refresh-solved/