需要将wincc的数据周期性存入数据库中,数据库名称:CPL_MES ODBC数据源名称:CPL_C, 表格名称:TZX
编写的VB项目函数如下:
Sub SAVEDATA
Dim objConnection
Dim objCommand
Dim objRecordset
Dim strConnectionString
Dim strSQL
Dim FCJZQJS,HZZQJS,KZBZQJS,HZRCL,FCJRCL,KZBRCL,BZFCJSD,BZHZSD,BZKZBSD,GYXXCSL,[1SJJSL],[2SJJSL],[3SJJSL],[4SJJSL],[5SJJSL],OP01BJ,OP02BJ,OP03BJ,OP04BJ,OP05BJ,OP06BJ,OP07BJ,OP08BJ,OP09BJ,OP10BJ,OP11BJ,OP12BJ,OP13BJ
FCJZQJS=HMIRuntime.Tags("ST47有件小车计数").Read
HZZQJS= HMIRuntime.Tags("ST74有件小车计数").Read
KZBZQJS=HMIRuntime.Tags("ST63有件小车计数").Read
HZRCL= HMIRuntime.Tags("后轴日产量").Read
FCJRCL= HMIRuntime.Tags("副车架日产量").Read
KZBRCL= HMIRuntime.Tags("控制臂日产量").Read
BZFCJSD= HMIRuntime.Tags("上位编组前幅数量设定").Read
BZHZSD= HMIRuntime.Tags("上位编组后幅数量设定").Read
BZKZBSD= HMIRuntime.Tags("上位编组前控数量设定").Read
GYXXCSL= HMIRuntime.Tags("工艺线累计").Read
[1SJJSL]= HMIRuntime.Tags("1#升降机计数").Read
[2SJJSL]= HMIRuntime.Tags("2#升降机计数").Read
[3SJJSL]= HMIRuntime.Tags("3#升降机计数").Read
[4SJJSL]= HMIRuntime.Tags("4#升降机计数").Read
[5SJJSL]= HMIRuntime.Tags("5#升降机计数").Read
OP01BJ= HMIRuntime.Tags("ACC_OP01蜂鸣器").Read
OP02BJ= HMIRuntime.Tags("ACC_OP02蜂鸣器").Read
OP03BJ= HMIRuntime.Tags("ACC_OP03蜂鸣器").Read
OP04BJ= HMIRuntime.Tags("ACC_OP04蜂鸣器").Read
OP05BJ= HMIRuntime.Tags("ACC_OP05蜂鸣器").Read
OP06BJ= HMIRuntime.Tags("ACC_OP06蜂鸣器").Read
OP07BJ= HMIRuntime.Tags("ACC_OP07蜂鸣器").Read
OP08BJ= HMIRuntime.Tags("ACC_OP08蜂鸣器").Read
OP09BJ= HMIRuntime.Tags("ACC_OP09蜂鸣器").Read
OP10BJ= HMIRuntime.Tags("ACC_OP10蜂鸣器").Read
OP11BJ= HMIRuntime.Tags("ACC_OP11蜂鸣器").Read
OP12BJ= HMIRuntime.Tags("ACC_OP12蜂鸣器").Read
OP13BJ= HMIRuntime.Tags("ACC_OP13蜂鸣器").Read
strConnectionString = "Provider=MSDASQL;DSN=CPL_C;UID=sa;PWD=Pass123;"
Set objConnection = CreateObject("ADODB.Connection")
objConnection.ConnectionString = strConnectionString
objConnection.Open
Set objRecordset = CreateObject("ADODB.Recordset")
Set objCommand = CreateObject("ADODB.Command")
objCommand.ActiveConnection = objConnection
strSQL = "insert into TZX (FCJZQJS,HZZQJS,KZBZQJS,HZRCL,FCJRCL,KZBRCL,BZFCJSD,BZHZSD,BZKZBSD,GYXXCSL,[1SJJSL],[2SJJSL],[3SJJSL],[4SJJSL],[5SJJSL],OP01BJ,OP02BJ,OP03BJ,OP04BJ,OP05BJ,OP06BJ,OP07BJ,OP08BJ,OP09BJ,OP10BJ,OP11BJ,OP12BJ,OP13BJ,QR) values ("&_
"'"&FCJZQJS&"',"&_
"'"&[HZZQJS]&"',"&_
"'"&KZBZQJS&"',"&_
"'"&[HZRCL]&"',"&_
"'"&FCJRCL&"',"&_
"'"&KZBRCL&"',"&_
"'"&BZFCJSD&"',"&_
"'"&BZHZSD&"',"&_
"'"&BZKZBSD&"',"&_
"'"&GYXXCSL&"',"&_
"'"&[1SJJSL]&"',"&_
"'"&[2SJJSL]&"',"&_
"'"&[3SJJSL]&"',"&_
"'"&[4SJJSL]&"',"&_
"'"&[5SJJSL]&"',"&_
"'"&OP01BJ&"',"&_
"'"&OP02BJ&"',"&_
"'"&OP03BJ&"',"&_
"'"&OP04BJ&"',"&_
"'"&OP05BJ&"',"&_
"'"&OP06BJ&"',"&_
"'"&OP07BJ&"',"&_
"'"&OP08BJ&"',"&_
"'"&OP09BJ&"',"&_
"'"&OP10BJ&"',"&_
"'"&OP11BJ&"',"&_
"'"&OP12BJ&"',"&_
"'"&OP12BJ&"',"&_
"'"&OP13BJ&"',"&_
"'0')"
'MsgBox (strSQL)
objCommand.CommandText = strSQL
objCommand.Execute
Set objCommand = Nothing
objConnection.Close
Set objRecordset = Nothing
Set objConnection = Nothing
End Sub
VBS动作中编写周期性存入数据库动作如下:我在内部变量新建了无符号16位变量"satuse",然后给这个动作定义的1秒的触发器
Option Explicit
Function action
Dim v1
v1=HMIRuntime.Tags("satuse").Read
If v1 Then
Call SAVEDATA
HMIRuntime.Tags("satuse").Write 0
End If
End Function
但始终无法将数据存入数据库,朋友们帮我看看,问题出在哪里?还有不清楚的再留言问我