我想在 SSRS 报告中显示持续时间
我的数据库字段是 SQL 中的时间。它转换 SSRS 中的时间跨度。
格式为:下午 1:00 - 下午 3:50
我怎样才能做到这一点 ?
Fields!StartTime.Value.ToString() + " PM - " +
Fields!EndTime.Value.ToString() + " PM" is not working..
这是在以下方法的帮助下实现这一目标的一种可能方法Custom code
在SSRS中。以下示例不会详细介绍创建 SSRS 报告的详细信息,但应该介绍如何在 SSRS 中实现时间格式化。
分步过程:
创建一个名为dbo.Timespans
使用下面提供的脚本SQL脚本。用一些数据填充它,如屏幕截图所示#1.
创建 SSRS 报告并使用该表dbo.Timespans
作为数据源。参考截图#2.
单击Report
菜单并选择Report Properties
。选择Code
左侧部分的选项卡。
将 SSRS 自定义代码部分下给出的代码粘贴到自定义代码文本框中。单击“确定”。这段代码需要一个timeSpan
值和format
细绳。然后它将格式化时间数据并以字符串形式返回。参考截图#3.
右键单击时间栏并选择Expression...
粘贴表达式=Code.FormatTimeSpan(Fields!StartTime.Value, "hh:mm tt") + " - " +
Code.FormatTimeSpan(Fields!EndTime.Value, "hh:mm tt")
in the Set expression for: Value
文本框。参考截图#4 and #5.
截屏 #6显示报告的执行情况。
希望有帮助。
SQL 脚本:
CREATE TABLE [dbo].[Timespans](
[Id] [int] IDENTITY(1,1) NOT NULL,
[StartTime] [time](7) NULL,
[EndTime] [time](7) NULL,
CONSTRAINT [PK_Timespans] PRIMARY KEY CLUSTERED ([Id] ASC)) ON [PRIMARY]
GO
SSRS 自定义代码:
public function FormatTimeSpan(timeSpanValue as TimeSpan, format as string) as string
Dim dateValue as DateTime
dateValue = new DateTime(timeSpanValue.Ticks)
return dateValue.ToString(format)
end function
屏幕截图#1:
屏幕截图#2:
屏幕截图#3:
屏幕截图#4:
屏幕截图#5:
屏幕截图#6:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)