2016-11-29 120 views
0

我有一个SSRS报告,需要将秒转换为小时和分钟。这些值有负数和正数,其中一些超过24小时,我发现以下查询,它有帮助,但不会在24小时内显示。SSRS将正负秒转换为小时和分钟

名称| ID | VT
---- | - | ------
abc | 1 | -633600.000000

=IIF(SUM(Fields!VT.Value)=0,"0:00", 
IIF(SUM(Fields!VT.Value)< 0,"-"&Format(DateAdd("s",ABS(SUM(Fields!VT.Value)), "00:00"), "HH:mm"), 
Format(DateAdd("s",ABS(SUM(Fields!VT.Value)), "00:00"), "HH:mm"))) 

名称| ID | VT
---- | - | ------
abc | 1 | -16:00

它应该显示
名称| ID | VT
---- | - | ------
abc | 1 | -176:00

我尝试了上面重写以下,我得到语法错误,(它说我没有错误的定义)

=IIF(SUM(Fields!VT.Value)=0,"0:00", 
IIF(SUM(Fields!VT.Value)< 86400,"-"&Format(DateAdd("s",ABS(SUM(Fields!VT.Value)), "00:00"), "HH:mm"), 
    Floor(Fields!VT.Value/86400) & " days, " & Format(DateAdd("s",ABS(SUM(Fields!VT.Value)), "00:00"), "HH:mm") 

我在做什么错?

+0

我想你最后还需要2个右括号。 –

+0

@WEI_DBA谢谢!就是这样,我的语法现在是正确的,但我没有得到理想的结果。我会继续看看我是否得到期望的结果 – Veebster

回答

1

我想我明白了!

= IIF(SUM(字段VT.Value)= 0, “0:00”,地板(SUM(字段VT.Value)/ 3600)&! “:” &格式(DATEADD(”的”,ABS(SUM(字段VT.Value)!), “00:00”), “MM:SS”))

这是给我的结果,我需要。

相关问题