用报警记录又记不了按钮中写的角本动作记录.
有人用以下方法作过,不知效果怎样?
下面是引用:
-------------------------------------------------------------------
wincc v6.2以后就有Wincc/Audit 选件了,可以可靠记录操作员操作和项目变更.
麻烦说详细一点啊,怎么用啊??
不过我是直接写入数据库的,也比较自由方便。
数据库为SQL2005,在管理工具中建立系统DSN:ZJG_DevDSN,Wincc中建立某个变量的触发器脚本。代码如下,已经测试通过。
Option Explicit
Function action
Dim objConnection
Dim strConnectionString
Dim strSQL
Dim objCommand
Dim objRecordSet
Dim RecordCount
Dim DeviceName
On Error Resume Next
Dim data(5)
Dim i
For i = 0 To 4
data(i) = "Null"
Next
DeviceName=CStr("1#设备运行状态测试")
Data(1)=HMIRuntime.tags("Ractor/Motor1.AUT_ON_OP").read
Data(2)=HMIRuntime.tags("Ractor/Motor1.QRUN").read
If Data(1)="1" Then 'data(1)存放的是字符串类型,当时判断bool量有问题
Data(1)="远程"
End If
If Data(1)="0" Then
Data(1)="就地"
End If
If Data(2)="1" Then
Data(2)="启动"
'MsgBox Data(2)
End If
If Data(2)="0" Then
Data(2)="停止"
'MsgBox Data(2)
End If
'MsgBox Date()&" "&Time()
'MsgBox Data(1)
'MsgBox Data(2)
''''Continute to insert data to database
data(0) ="Insert into Device_record(DeviceName,DeviceTime,DeviceStatus,DeviceMode)values('"& DeviceName &"','"& Date() &" "& Time() &"','"& data(2) &"','"& data(1) &"')"
'MsgBox data(0)
strConnectionString = "Provider=MSDASQL;DSN=ZJG_DevDSN;UID=sa;PWD=;"
Set objConnection = CreateObject("ADODB.Connection")
objConnection.ConnectionString = strConnectionString
objConnection.Open
Set objCommand = CreateObject("ADODB.Command")
With objCommand
.ActiveConnection = objConnection
.CommandText = data(0)
'debug.print objConnection.execute(data(0))
End With
'MsgBox"ok"
objCommand.Execute
Set objCommand = Nothing
objConnection.Close
Set objConnection = Nothing
End Function