【问题标题】:SSRS format total minutes into total HH:MM:SSSSRS 格式总分钟到总 HH:MM:SS
【发布时间】:2018-11-06 14:09:13
【问题描述】:

当前报表表达式以 Days:Hours:Minutes:Seconds 显示数据

=cstr(floor((sum(Fields!phoneInOutbound.Value) / 86400))) & " days " & 
cstr(floor(((sum(Fields!phoneInOutbound.Value) Mod 86400) / 3600))) & ":" & 
cstr(floor((((sum(Fields!phoneInOutbound.Value) Mod 86400) Mod 3600) / 60))) & ":" & 
cstr(floor(((sum(Fields!phoneInOutbound.Value) Mod 86400) Mod 3600) Mod 60))

我试图让它显示总小时数:分钟数:秒数。

到目前为止,我只设法使用以下表达式获得分钟:秒;

=cstr(floor((sum(Fields!phoneInOutbound.Value) / 60))) & " : " & 
cstr(floor(((sum(Fields!phoneInOutbound.Value) Mod 60))))

知道如何重新配置​​以便获得总小时数:分钟数:秒数吗?

【问题讨论】:

  • 您是否尝试过仅使用原始语句减去第一个 cstr 语句?看来这就是你获得分钟的方式:秒。你能改变Select 语句吗?在将日期放入 SSRS 之前,这可能更容易正确格式化日期。
  • 嗨,亚历克斯,感谢您的回复。我试过省略第一个 cstr 语句,但得到“17:18:30”的结果。由于原来是“1 天 17:18:30”,我正在寻找像“41:18:30”这样的结果希望这是有道理的!我对 SSRS 很陌生,但仍在努力解决它。
  • 谢谢!!知道了。 =cstr(floor((sum(Fields!phoneInOutbound.Value) / 86400*24))) & ":" & cstr(floor((((sum(Fields!phoneInOutbound.Value) Mod 86400) Mod 3600) / 60) )) & ":" & cstr(floor(((sum(Fields!phoneInOutbound.Value) Mod 86400) Mod 3600) Mod 60))
  • 我把我的评论移下来作为答案,如果这是你采取的路线,你可以这样标记它。谢谢!

标签: visual-studio reporting-services ssrs-2012 sql-server-data-tools


【解决方案1】:

好的,所以您基本上需要添加第一条语句(最初是几天)加上第二条语句(最初是小时)。您可以更改第一条语句以获取天数 * 24 以将天数恢复为小时数 THAN + 2nd 语句。可能有一种更简单的方法,不确定您的数据集是什么样的,甚至不确定您从哪个数据库读取。只是想让你思考正确的方向。

【讨论】:

    【解决方案2】:

    如果我是你,我会在 sql 端处理它,只使用 ssrs 作为保存数据的地方。您可以使这变得简单或复杂。当我的意思是复杂时,我的意思是您从 Minutes 文件中获取数据,然后向其中添加“min”+ seconds 值 +“sec”。通过将整个事物包装在另一个命名查询中并创建一个计算字段。个人不太喜欢利用 SSRS 进行计算,因为您正在使用报表服务器的内存来执行此操作(应该用于报告而不是处理计算)但是如果这种方法对您来说很容易,那么您将拥有更多的权力。下面是在 SQL 端处理此问题的示例代码。

    create table #temp_time_test (
        phoneInOutbound_IN datetime
        ,phoneInOutbound_OUT datetime
        )
    
        insert into #temp_time_test values 
        ('11/06/2018 12:24:13.790','11/06/2018 12:34:13.790')
    
    
    
        select DATEDIFF(MINUTE,phoneInOutbound_IN,phoneInOutbound_OUT) from #temp_time_test
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多