SSRS报告表达式显示每周,每月和年初至今总计

时间:2018-06-02 22:49:21

标签: ssrs-2012

有一份显示每日计数和美元的报告。我尝试使用其他列来显示每周,每月和每年的总计。

过去我通过创建单独的每周,每月和每月ytd数据集然后使用查找表达式来填充字段来完成此操作。是否可以使用引用我的主数据集的表达式(包括日期列)来获取每周,每月和每年的总数?

如果可以,我不确定如何将表达式写入: 回顾过去7天,获得那些日子的总数 获取当月的总计 获得YTD总计。

任何人都可以提供任何帮助将不胜感激。我附上了一个我试图创建的报告示例。

谢谢。enter image description here

1 个答案:

答案 0 :(得分:0)

您只需使用每个表达式作为 Dollar Amt 列的过滤器。它将确定是否为每行数据添加美元amt 或0。

屁股你有一个日期字段 - 我会在DATE打电话。

<强> YTD

=SUM(IIF(YEAR(FIELDS!DATE.VALUE) = TODAY.Year, FIELDS!DOLLAR_AMT.VALUE, CDEC(0)))

<强>每月

=SUM(IIF(FORMAT(FIELDS!DATE.VALUE, "yyyyMM") = FORMAT(TODAY, "yyyyMM"), FIELDS!DOLLAR_AMT.VALUE, CDEC(0)))

每周会有所不同,取决于你的一周(太阳 - 坐,星期一......)和你一周的第一天设置,但你得到了一般的想法。如果您使用星期一 - 星期日可能是这样的:

<强> WTD

=SUM(IIF(FIELDS!DATE.VALUE >= TODAY.AddDays(1 - TODAY.DayOfWeek), FIELDS!DOLLAR_AMT.VALUE, CDEC(0)))

CDEC用于将0添加到美元金额 - 否则,当您尝试添加1.25 + 0时,您将收到错误。 C 将转换为的 DEC 进制。

相同的逻辑将适用于计数 - 只需使用Unit_Count字段并删除零的CDEC转换。