根据 SSRS 中的参数值调整日期值
Adjust Date values based on a parameter value in SSRS
我们有一个包含 Year , Start-Date, End-Date
字段的 SSRS
报告(开始日期和结束日期是 Date
控件,Year
是 Combo
值).我需要根据 Year
值限制开始日期和结束日期的值。
例如:如果 Year 值为 2016
,则 Start-Date 和 End-Date 值应介于 01/01/2016
和 12/31/2016
之间。
如何在 SSRS
中执行此操作?。请帮忙
这可以通过一个缺点来实现。您的日期选择器将不再是日历,而是带有日期的下拉列表。
创建一个查询来生成您要查找的日期列表,并将其作为数据集添加到报告中。然后在 Start-Date 和 End-Date 报告参数的属性中单击默认值窗格。选择从查询中获取值、select 适当的数据集、值字段和标签字段。
之后,当您 运行 报告时,您将看到一个下拉列表,其中包含查询返回的日期列表。只要确保您的日期查询依赖于年份报告参数即可。
我会使用 Year 值来确定 StartDate
和 EndDate
是否是 Year
之间的日期。使用表达式,您可以从 StartDate
获取年份并将其与 Year
值进行比较,根据该比较,您可以设置另一个参数 (StartDateHidden
),该参数对用户隐藏并根据比较。
StartDateHidden
的表达式。
=IIF(
Paramaters!StartDate.Value.Year = Parameters!Year.Value,
Paramaters!StartDate.Value,DateSerial(Parameters!Year.Value,1,1)
)
请注意,如果它是 Year
值中的日期,它将使用 StartDate
值填充 StartDateHidden
,否则它将设置 Year
值的第一个日期。
当 StartDate
不在年份值中时,您可以使用任何默认值。
EndDateHidden
的表达式。
=IIF(
Parameters!EndDate.Value.Year = Parameters!Year.Value,
Parameters!EndDate.Value,DateSerial(Parameters!Year.Value,12,31)
)
如果有帮助请告诉我。
我们有一个包含 Year , Start-Date, End-Date
字段的 SSRS
报告(开始日期和结束日期是 Date
控件,Year
是 Combo
值).我需要根据 Year
值限制开始日期和结束日期的值。
例如:如果 Year 值为 2016
,则 Start-Date 和 End-Date 值应介于 01/01/2016
和 12/31/2016
之间。
如何在 SSRS
中执行此操作?。请帮忙
这可以通过一个缺点来实现。您的日期选择器将不再是日历,而是带有日期的下拉列表。
创建一个查询来生成您要查找的日期列表,并将其作为数据集添加到报告中。然后在 Start-Date 和 End-Date 报告参数的属性中单击默认值窗格。选择从查询中获取值、select 适当的数据集、值字段和标签字段。
之后,当您 运行 报告时,您将看到一个下拉列表,其中包含查询返回的日期列表。只要确保您的日期查询依赖于年份报告参数即可。
我会使用 Year 值来确定 StartDate
和 EndDate
是否是 Year
之间的日期。使用表达式,您可以从 StartDate
获取年份并将其与 Year
值进行比较,根据该比较,您可以设置另一个参数 (StartDateHidden
),该参数对用户隐藏并根据比较。
StartDateHidden
的表达式。
=IIF(
Paramaters!StartDate.Value.Year = Parameters!Year.Value,
Paramaters!StartDate.Value,DateSerial(Parameters!Year.Value,1,1)
)
请注意,如果它是 Year
值中的日期,它将使用 StartDate
值填充 StartDateHidden
,否则它将设置 Year
值的第一个日期。
当 StartDate
不在年份值中时,您可以使用任何默认值。
EndDateHidden
的表达式。
=IIF(
Parameters!EndDate.Value.Year = Parameters!Year.Value,
Parameters!EndDate.Value,DateSerial(Parameters!Year.Value,12,31)
)
如果有帮助请告诉我。