Reporting services 我如何计算SSRS 2012的小时和分钟数?

Reporting services 我如何计算SSRS 2012的小时和分钟数?,reporting-services,Reporting Services,我的报告中有一列包含如下文本值: 01:30 00:45 02:15 等等。我怎样才能得到这样的总数 04:30 作为花费的总时间。我在尝试这个表达- = FLOOR(Sum(Cint(Left(Fields!est_pack_time.Value,2)), "DataSet1") ) & ":" & RIGHT("0" & (Sum(Cint(Right(Fie

我的报告中有一列包含如下文本值:

             01:30
             00:45
             02:15
等等。我怎样才能得到这样的总数

             04:30 
作为花费的总时间。我在尝试这个表达-

= FLOOR(Sum(Cint(Left(Fields!est_pack_time.Value,2)), "DataSet1") ) & ":" & RIGHT("0" & (Sum(Cint(Right(Fields!est_pack_time.Value,2)), "DataSet1") MOD 60), 2)

这给了我一些接近,但它仍然是不正确的。我将整个数据集的总时间相加

你的思路是对的——你的表达方式没有把分钟加总成小时的额外时间

更新后的表达式如下所示:

=Right("0" & Sum(CInt(Left(Fields!est_pack_time.Value,2)), "DataSet1")
    + Floor(Sum(CInt(Right(Fields!est_pack_time.Value,2)), "DataSet1") / 60),2)
  & ":" & Sum(CInt(Right(Fields!est_pack_time.Value,2)), "DataSet1") Mod 60
这是从小时数中提取总时间,将总分钟数中的溢出量相加,然后将分钟数连接到此字符串。它还使用前导零填充小时,以确保字符串始终为5个字符

在快速测试中对我有效:

最后,不言而喻,如果可能的话,最好不要以文本格式存储持续时间,但在您的情况下,这当然是不可能的。

您好,欢迎来到。请花点时间出去走走,仔细检查一下。你可能还想读书。
=replace( left(TimeSpan.FromTicks(Sum(Fields!TotalHours.Value)).TotalHours,3)&":"
& right(TimeSpan.FromTicks(Sum(Fields!TotalHours.Value)).TotalHours,3)*60,".","")
=split(TimeSpan.FromTicks(Sum(Fields!TotalHours.Value)).TotalHours,".").GetValue(0)  &":"
& Format(TimeSpan.FromTicks(Sum(Fields!TotalHours.Value)).TotalMinutes mod 60,"00")