WINCC向ACCESS写入数据
的有关信息介绍如下:WINCC报表是众多工控者的一个头痛问题。本文通过WINCC脚本向ACCESS数据库追加数据,来完成数据归档。从而可以进行查询、计算、打印等
新建一WINCC项目,并新建画面。打开画面,在画面中插入一按钮控件。
在WINCC数据库新建2个内部浮点型变量A1和A2。
右击控件,选择属性,并点击“事件”标签,在 鼠标>释放左键处添加VBS动作。
在动作打开的对话框输入如下脚本:
Dim objConnection
Dim strConnectionString
Dim lngValue
Dim lngValuea
Dim lngValueb
Dim strSQL
Dim objCommand
strConnectionString = "Provider=MSDASQL;DSN=SampleDSN;UID=;PWD=;" //SampleDSN为ODBC数据源
lngValuea = HMIRuntime.Tags("A2").Read
lngValueb = HMIRuntime.Tags("A1").Read
strSQL = "INSERT INTO wincc (lngValuea,lngValueb)values("&lngvaluea&","&lngvalueb&");"
Set objConnection = CreateObject("ADODB.Connection")
objConnection.ConnectionString = strConnectionString
objConnection.Open
Set objCommand = CreateObject("ADODB.Command")
With objCommand
.ActiveConnection = objConnection
.CommandText = strSQL
End With
objCommand.Execute
Set objCommand = Nothing
objConnection.Close
Set objConnection = Nothing
打开ODBC数据源(从控制面板,比较简单,不赘述)。新建一个.MDB用户数据源,如图所示,双击打开数据源。数据源选择建立的ACCESS数据库文件。如下面右侧图。点击“确定”。
注意 ACCESS文件需要先建立。
第4步注意ACCESS数据格式。如下左图。lngValuea和lngValueb分别对应的是A2和A1的值。数据类型选择单浮点。
图中day列为自建的时间列,格式问文本。这是因为文本变量便于其他地方调用,而时间变量的查询在有些软件中查询不方便。
day的格式见下右图,这个非常重要。
自此就完成了所有的组态。
在WINCC点击按钮,就会发现点一下,就会在ACCESS中追加一行数据。