从第一天到最后一天筛选 12 个月的 SSRS 子报表
Filter SSRS subreport for 12 months from first day of month to last day of month
我有一个 SSRS 报告,其中包含典型的开始日期/结束日期参数,这些参数将根据 OrderDate 字段过滤掉销售订单信息。有了这份报告,我有一个子报告。这个 subrebort 基本上只不过是按月汇总相同的信息。此汇总信息应从该月的第一天(一年前)到结束日期参数月份的最后一天。这根本不考虑主要子报表的开始日期参数。
这是有点棘手的地方。例如,假设我在主报告中设置了开始日期/结束日期参数:
10/15/2016 - 11/15/2016
(请记住,就此而言,开始日期无关紧要)
我希望子报表显示 2015 年 12 月整个月到 2016 年 11 月整个月的每月销售总额,即使我的结束日期是 2016 年 11 月 15 日。
如果我现在在报告中为我的参数输入相同的日期,对于 2015 年 12 月的汇总,我将只能获得 15 日到 31 日的销售额。目前我有我的子报告过滤 OrderDate by:
Fields!OrderDate.Value>= DateAdd(DateInterval.Month, -12,Parameters!EndDate.Value)
我知道此过滤器当前未设置为参数的结束日期,只是一个大于参数,这是错误的,因为我希望 12 个月的历史记录在该月的最后一天停止我的结束日期参数的月份,但我也不知道如何实现。
希望我已经解释清楚了。对此的任何帮助将不胜感激。
您可以设置过滤器以仅获取子报表数据集、tablix 和一些可视化中特定范围内的日期:
在 Filter
选项卡的数据集属性或 Tablix 属性中使用这些设置:
在值文本框中,您应该使用表达式来计算日期范围。
开始日期
=DateSerial(Parameters!EndDate.Value.Year-1,Parameters!EndDate.Value.Month,1).AddMonths(1)
结束日期
=DateSerial(
Parameters!EndDate.Value.Year,Parameters!EndDate.Value.Month,1).AddMonths(1).AddDays(-1)
如果您的 EndDate
参数设置为 11/15/2016
,它应该将您的数据从 12/01/2015
过滤到 11/30/2016
如果有帮助请告诉我。
我有一个 SSRS 报告,其中包含典型的开始日期/结束日期参数,这些参数将根据 OrderDate 字段过滤掉销售订单信息。有了这份报告,我有一个子报告。这个 subrebort 基本上只不过是按月汇总相同的信息。此汇总信息应从该月的第一天(一年前)到结束日期参数月份的最后一天。这根本不考虑主要子报表的开始日期参数。
这是有点棘手的地方。例如,假设我在主报告中设置了开始日期/结束日期参数:
10/15/2016 - 11/15/2016
(请记住,就此而言,开始日期无关紧要)
我希望子报表显示 2015 年 12 月整个月到 2016 年 11 月整个月的每月销售总额,即使我的结束日期是 2016 年 11 月 15 日。
如果我现在在报告中为我的参数输入相同的日期,对于 2015 年 12 月的汇总,我将只能获得 15 日到 31 日的销售额。目前我有我的子报告过滤 OrderDate by:
Fields!OrderDate.Value>= DateAdd(DateInterval.Month, -12,Parameters!EndDate.Value)
我知道此过滤器当前未设置为参数的结束日期,只是一个大于参数,这是错误的,因为我希望 12 个月的历史记录在该月的最后一天停止我的结束日期参数的月份,但我也不知道如何实现。
希望我已经解释清楚了。对此的任何帮助将不胜感激。
您可以设置过滤器以仅获取子报表数据集、tablix 和一些可视化中特定范围内的日期:
在 Filter
选项卡的数据集属性或 Tablix 属性中使用这些设置:
在值文本框中,您应该使用表达式来计算日期范围。
开始日期
=DateSerial(Parameters!EndDate.Value.Year-1,Parameters!EndDate.Value.Month,1).AddMonths(1)
结束日期
=DateSerial(
Parameters!EndDate.Value.Year,Parameters!EndDate.Value.Month,1).AddMonths(1).AddDays(-1)
如果您的 EndDate
参数设置为 11/15/2016
12/01/2015
过滤到 11/30/2016
如果有帮助请告诉我。