【接上篇】
上篇文章大致介绍了如何将wincc数据整点记录在指定的文件夹内,其中如何将数据写入MSSQL未给出源文件,今日将原VBS脚本文件提供出来给大家参考用。
首先我们打开VBS脚本编辑器,建立动作脚本:TOMSSQL.bac
脚本源文件如下:
Option Explicit
Function action
Dim Data1, Data2, Data3 , Data4, Data5,Data6, Data7,Data8
'读取wincc变量
Data1=Now()'获取系统日期时间
Data2=Round(HMIRuntime.tags("test_data1").read,3)'取3位小数
Data3=Round(HMIRuntime.tags("test_data2").read,3)' 取3位小数
Data4=Round(HMIRuntime.tags("test_data3").read,3)'取3位小数
Data5=Round(HMIRuntime.tags("test_data4").read,3)'取3位小数
Data6=Round(HMIRuntime.tags("test_data5").read,3)'取3位小数
Data7=Round(HMIRuntime.tags("test_data6").read,3)'取3位小数
Data8=Round(HMIRuntime.tags("test_data7").read,3)'取3位小数
Dim adoConn '定义ADO连接对象?
Dim ConnectionStr '定义数据库连接字符串?
Dim sqlStr,adoRst'获取连接数据库字符串
ConnectionStr="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=master;Data Source=DESKTOP-FD6EA86\WINCC"'不同项目此引号里面的数据源要更换
Set adoConn = CreateObject("ADODB.Connection")
adoConn.Open ConnectionStr
If adoConn.State = 0 Then
Msgbox "连接数据库失败!"
Else
'Msgbox "连接数据库成功!"
End If
Dim sSql,oRs,oCom
'写入数据库
sSql=" insert into tt1(tt,t1,t2,t3,t4,t5,t6,t7)VALUES('"&Data1&"','"&Data2&"','"&Data3&"','" &Data4&"','"&Data5&"','"&Data6&"','"&Data7&"','"&Data8&"')"
Set oRs = CreateObject("ADODB.Recordset")
Set oCom = CreateObject("ADODB.Command")
Set oCom.ActiveConnection = adoConn
oCom.CommandType = 1
oCom.CommandText = sSql
Set oRs = oCom.Execute
oRs.CLOSE
Set oRs = Nothing
adoConn.Close
Set adoConn = Nothing
End Function
目前应用在真实的案例:
增加文件夹记录按钮,可以在wincc运行画面直接打开文件夹:
|