SSRS总时间

时间:2013-07-17 12:13:31

标签: time reporting-services sum reporting

我有一张桌子:

----------------------------------------------
Name    |     Activity     |    Activity Time
----------------------------------------------
        |                  |
        |   L030           |    07:15:00
Dan     |                  |
Smith   |------------------------------------
        |                  |
        |   L031           |    01:00:00
        |                  |
        |------------------------------------
        |   Total          |
        |                  |
---------------------------------------------
        |                  |
        |   L030           |    01:15:00
Steve   |                  |
Jones   |------------------------------------
        |                  |
        |   L031           |    06:00:00
        |                  |
        |------------------------------------
        |   Total          |
        |                  |
---------------------------------------------

该名称充当活动及其相关时间的父组。

我认为使用“添加总计”功能来生成总时间是一个简单的情况,但是该选项是灰色的。

是否可以使用“添加总计”功能?如果没有,是否有解决方法可以完成同样的工作?

由于

3 个答案:

答案 0 :(得分:1)

我认为在日期执行SUM是不可能的。

但是在这里工作:

将“活动时间”值作为整数分钟返回:

然后您可以在RS中将此值格式化为时间,并执行总计和:

这里是将Minutes as Integer格式化为时间格式的示例:

= (Fields!DurationInMinutes.Value/60) + ":" + (Fields!DurationInMinutes.Value - ((Fields!DurationInMinutes.Value/60) *60) +  ":00"

答案 1 :(得分:1)

=TimeSpan.FromTicks(Sum(Fields!DurationInMinutes.Value))

这应该会产生预期的结果。

答案 2 :(得分:0)

感谢WojciechIłowiecki让我走上正确的路线。

我将我想要呈现的时间作为分钟(作为整数)返回,并使用以下表达式在单个活动旁边的框中显示正确的格式化值:

 =FLOOR(Fields!Total_Time.Value / 60) & ":" & RIGHT("0" & (Fields!Total_Time.Value MOD 60), 2)

当然,当我使用上面的整数时,我可以使用“add total”函数并使用以下格式对其进行格式化:

=FLOOR(Sum(Fields!Total_Time.Value) / 60) & ":" & RIGHT("0" & (Sum(Fields!Total_Time.Value) MOD 60), 2)

解决。