发布于 2015-03-12 17:22:37
1楼
'变量定义和初始化
Dim sPro,sDsn,sSer,sCon,conn,sSql,oRs,oCom
Dim m,i,j
Dim LocalBeginTime, LocalEndTime
item.Enabled = False
On Error Resume Next
'准备查询条件 Catalog、UTC开始时间、UTC结束时间、时间间隔
Dim tagDSNName
Set tagDSNName = HMIRuntime.Tags("@DatasourceNameRT")
tagDSNName.Read
Dim DTPicker1,DTPicker2,DTPicker3,DTPicker4
Set DTPicker1=ScreenItems("DTPicker1")
Set DTPicker2=ScreenItems("DTPicker2")
Set DTPicker3=ScreenItems("DTPicker3")
Set DTPicker4=ScreenItems("DTPicker4")
Dim UTCBeginTime, UTCEndTime
UTCBeginTime = Year(DTPicker1.value) & "-" & Month(DTPicker1.value) & "-" & Day(DTPicker1.value) & " " & Hour(DTPicker2.value) & ":" & Minute(DTPicker2.value) & ":" & Second(DTPicker2.value)
UTCEndTime = Year(DTPicker3.value) & "-" & Month(DTPicker3.value) & "-" & Day(DTPicker3.value) & " " & Hour(DTPicker4.value) & ":" & Minute(DTPicker4.value) & ":" & Second(DTPicker4.value)
UTCBeginTime = DateAdd("h" ,-8,UTCBeginTime)
UTCEndTime= DateAdd("h" ,-8,UTCEndTime)
UTCBeginTime = Year(UTCBeginTime) & "-" & Month(UTCBeginTime) & "-" & Day(UTCBeginTime) & " " & Hour(UTCBeginTime) & ":" & Minute(UTCBeginTime) & ":" & Second(UTCBeginTime)
UTCEndTime = Year(UTCEndTime) & "-" & Month(UTCEndTime) & "-" & Day(UTCEndTime) & " " & Hour(UTCEndTime) & ":" & Minute(UTCEndTime) & ":" & Second(UTCEndTime)
'创建数据库联接
sPro = "Provider=WinCCOLEDBProvider.1;"
sDsn = "Catalog=" &tagDSNName.Value& ";"
sSer = "Data Source=.\WinCC"
sCon = sPro + sDsn + sSer
Set conn = CreateObject("ADODB.Connection")
conn.ConnectionString = sCon
conn.CursorLocation = 3
conn.Open
'******************************************************************************************************
Set oRs = CreateObject("ADODB.Recordset")
Set oCom = CreateObject("ADODB.Command")
oCom.CommandType = 1
Set oCom.ActiveConnection = conn
'------------------------------------
'定义查询的命令文本 SQL
sSql = "Tag:R,('SPC\TEMP_1'),'" & UTCBeginTime & "','" & UTCEndTime & "',,'TimeStep=10,1'"
oCom.CommandText = sSql
'填充数据到ListView中
Set oRs = oCom.Execute
m=oRs.recordcount
Dim DBGrid1
Set DBGrid1=HMIRuntime.ActiveScreen.ScreenItems("控件4")
DBGrid1.ClearFields
DBGrid1.Caption="111"
DBGrid1.Columns(0).caption="aaa"
DBGrid1.Columns(1).caption="bbb"
Set DBGrid1.DataSource = oRs.Recordset
'DBGrid1.Refresh
'*****************************************************************************************
'释放资源
Set oRs = Nothing
conn.Close
Set conn = Nothing
item.Enabled = True