我正在尝试在报表的矩阵中包含累计总列数。 这是我目前使用的表达方式:
=RunningValue(Ceiling((SUM(Fields!MINUTES.Value)/60)*4)/4,Sum,"RowGroup")
问题是总计似乎每天重置。
我在报告中有3个组:父级是月份日,类型,然后是子类型。 我想要它以便子类型将在这些日子里积累:
所以6月1日/假日/年度= 2 - 累计= 2 .. 6月2日/假日/年= 1 - 累积= 3
上面表达式中的 rowgroup
是矩阵中的第3级子类型组。
无论我尝试什么,我都无法在这些日子里得到它,就像我上面说的那样,它似乎不会延续到第二天。
以下是示例数据集:
+------+------------+---------+----------+---------+
| User | Date | Type | Subtype | Minutes |
+------+------------+---------+----------+---------+
| 158 | 13/02/2015 | Holiday | Annual | 90 |
| 158 | 13/02/2015 | Meeting | Training | 300 |
| 158 | 13/02/2015 | Lunch | Lunch | 60 |
| 158 | 03/06/2015 | Holiday | Annual | 120 |
| 158 | 03/06/2015 | Meeting | Meeting | 285 |
| 158 | 04/06/2015 | Holiday | Sick | 120 |
| 158 | 04/06/2015 | Holiday | Annual | 200 |
+------+------------+---------+----------+---------+
我的矩阵列组是用户。 行组是日期,然后是类型,然后是子类型。
然后我在列分组之外有一个总列。
我现在尝试根据type
和sub-type
列添加minutes
累计总数。
作为示例(查看holiday
,annual
条目):
03/06/2015 - 120 minutes
13/02/2015 - 90 minutes = 210 minutes
04/06/2015 - 200 minutes = 410 minutes.
答案 0 :(得分:1)
从MSDN page for RunningValue获取,在您的表达式中添加scope
会产生此效果。
对于每个新范围的实例,RunningValue的值重置为0。 如果指定了组,则在组表达式更改时重置运行值。如果指定了数据区域,则会为数据区域的每个新实例重置运行值。如果指定了数据集,则不会在整个数据集中重置运行值。
要解决此问题,只需删除范围:
=RunningValue(Ceiling((SUM(Fields!MINUTES.Value)/60)*4)/4,Sum)
这将在所有日期内进行总计(因为天数是您的最高级别)。如果这是不正确的,您可能会举例说明报告目前正在做什么,以及您希望它做什么?