输出报告上的已用时间

时间:2013-10-31 20:34:14

标签: reporting-services ssrs-2008

我想在报告上打印开始,结束和已用时间,但似乎没有任何效果。

="Elapsed: " + CStr(Now - CDate(Globals!ExecutionTime))

时出现错误

=Now - CDate(Globals!ExecutionTime)

打印已用时间。我需要将缩短的时间纳入更大的句子。 FormatDateTime抛出一个错误,因为System.TimeSpan无法转换为Date。

打印报告生成时间长度的字符串的正确公式是什么?

我知道解决方法是将经过的时间保留在自己的文本框中,但格式化要求会调用三次连续的字符串。

1 个答案:

答案 0 :(得分:2)

这可能会给你一些想法:

="Start: " & Globals!ExecutionTime.ToString() & vbcrlf
    & "End: " & Now().ToString() & vbcrlf
    & "Elapsed: " & DateDiff(DateInterval.Minute
            , Globals!ExecutionTime
            , Now()) mod 60
        & ":"
        & Right("0" & DateDiff(DateInterval.Second
                , Globals!ExecutionTime
                ,  Now()) mod 60
            , 2)

这给出了以下结果:

enter image description here

这看起来像你可能会追求的。

我只是使用vbcrlf作为换行符。

最重要的部分是Elapsed部分,它使用DateDiff来获取两个日期时间之间的差异,以获得分数和第二部分,并将其显示为mm:ss。您可以适应您的特定需求。