Crystal Reports 8如何将分钟传递给hh:mm

时间:2017-01-13 10:21:32

标签: crystal-reports crystal-reports-2008 crystal-reports-8.5

我的BD上有一个字段(称为Minutes),它计算总时间。我需要把它显示为hh:mm并且我使这个功能完美地工作但我确信有一种最快速,更简单的方法来获得相同的结果......你知道我怎么能做到这一点?我尝试了time(),有些尝试使用totext(),但没有任何作用......还看到了This,但它写的是4:08而不是04:08

 if Truncate(REMAINDER({TABLE.MINUTES},60))<10 then //if hour<10
       if len(TOTEXT(TRUNCATE((({TABLE.MINUTES}) MOD 60)/10),0) )>0 then //if minutes >9
            "0" + TOTEXT(Truncate ({TABLE.MINUTES}/60),0)+" : "+ TOTEXT(TRUNCATE((({TABLE.MINUTES}) MOD 60)/10),0) & TOTEXT((({TABLE.MINUTES}) MOD 60) MOD 10,0)
        else 
            "0" + TOTEXT(Truncate ({TABLE.MINUTES}/60),0)+" : 0"+  TOTEXT((({TABLE.MINUTES}) MOD 60) MOD 10,0)
    else
        if len(TOTEXT(TRUNCATE((({TABLE.MINUTES}) MOD 60)/10),0) )>0 then 
            TOTEXT(Truncate ({TABLE.MINUTES}/60),0)+" : "+ TOTEXT(TRUNCATE((({TABLE.MINUTES}) MOD 60)/10),0) & TOTEXT((({TABLE.MINUTES}) MOD 60) MOD 10,0)
        else 
            TOTEXT(Truncate ({TABLE.MINUTES}/60),0)+" : 0"+  TOTEXT((({TABLE.MINUTES}) MOD 60) MOD 10,0)

我需要的一些例子:

  • Minutes中的数据:09 - &gt;结果应为:00:09
  • Minutes中的数据:50 - &gt;结果应为:00:50
  • Minutes中的数据:60 - &gt;结果应为:01:00
  • Minutes中的数据:65 - &gt;结果应该是:01:05
  • Minutes中的数据:605 - &gt;结果应该是:10:05

非常感谢

1 个答案:

答案 0 :(得分:0)

试试这个:(在Crystal语法中)

if(Truncate({TABLE.MINUTES}/60) < 10) then
    ToText(Truncate({TABLE.MINUTES}/60),"00")+" : " +ToText(Remainder({TABLE.MINUTES},60),"00")