回复:如何在WINCC中做操作员行为记录??

小焱

  • 帖子

    752
  • 精华

    1
  • 被关注

    9

论坛等级:侠圣

注册时间:2006-04-05

普通 普通 如何晋级?

发布于 2008-11-21 23:53:00

0楼

用报警记录又记不了按钮中写的角本动作记录.
有人用以下方法作过,不知效果怎样?
麻烦说详细一点啊,怎么用啊??
不过我是直接写入数据库的,也比较自由方便。

数据库为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

开朗,爱学
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32916条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。