WINC查询归档数据时查询语句中需要用到查询记录的开始时间与结束时间,这两个时间需要转换成格林威治时间才能查询,查询后的结果如果用到时间数据,还要转换成北京时间,对于刚做WINCC归档数据项目的人来讲都可能会遇到这个问题,由于对格林威治时间构成及格式不了解,解决这个问题往往需要查好多资料花好长的时间,费时费力。为此我编写了两个函数分享给大家,代码不是很简洁但能用,已经经过了测试,也希望能有人提供更简单的方法。
'北京时间转换成格林威治时间
Function utcs( inputDate )
Dim data1,data2
Dim nian,yue,ri,shi,fen,miao
data1=Dateadd("h",-8,inputDate)
nian=Year(data1)
yue=Month(data1)
ri=Day(data1)
shi=Hour(data1)
fen=Minute(data1)
miao=Second(data1)
data2=nian &"-"&Right("00"&yue,2)&"-"&Right("00"&ri,2)&" "
data2=data2&Right("00"&shi,2)&":"&Right("00"&fen,2)&":"&Right("00"&miao,2)
utcs=data2
End Function
'格林威治时间转换北京时间
Function sutc(inputDate)
Dim data1,data2
Dim nian,yue,ri,shi,fen,miao
data1=Dateadd("h",8,inputDate)
nian=Year(data1)
yue=Month(data1)
ri=Day(data1)
shi=Hour(data1)
fen=Minute(data1)
miao=Second(data1)
data2=nian &"-"&Right("00"&yue,2)&"-"&Right("00"&ri,2)&" "
data2=data2&Right("00"&shi,2)&":"&Right("00"&fen,2)&":"&Right("00"&miao,2)
sutc=data2
End Function
