wincc訪問Acess數(shù)據(jù)庫
劉玉蓉
發(fā)布于2014-10-14 17:52
99
0
標簽:
我用的時wincc6.2,怎樣去讀寫另一臺電腦上的一個Acess數(shù)據(jù)庫中的內(nèi)容?
佳答案
WINCC的VBS可以很好的操作EXCEL,操作ACCESS也沒有問題。
Wincc用VBS腳本讀寫ACESS數(shù)據(jù)庫
首先要進入系統(tǒng)的數(shù)據(jù)庫設定。設定完后,將ACess數(shù)據(jù)庫的路徑存入Wincc中對應的一個變量。然后在用到數(shù)據(jù)庫內(nèi)容的地方,用
Sub OnOpen()
""打開時檢查一下系統(tǒng)路徑
If Trim(HMIRuntime.Tags("Db_Path").Read)="" Then
MsgBox "請檢查系統(tǒng)數(shù)據(jù)庫路徑,系統(tǒng)檢測到不正常!現(xiàn)在路徑是:" & HMIRuntime.Tags("Db_Path").Read
Else
""定義combol對象
Dim com
Set com=ScreenItems("combolbox_receipe")
com.Clear
com.AddItem "請選擇配方...",0
""首先打開數(shù)據(jù)庫
Dim Conn,ResultSet
Set Conn = CreateObject("ADODB.Connection")
Set ResultSet = CreateObject("ADODB.Recordset")
Conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & HMIRuntime.Tags("Db_Path").Read
ResultSet.open "Select * From recipe",Conn,1,1
""依次讀出數(shù)據(jù)庫中配方的數(shù)量
Do While Not ResultSet.EOF
com.AddItem ResultSet("name").value,ResultSet("Id").valuE
ResultSet.MoveNext
Loop
com.ListIndex =0
Set ResultSet=Null""結果集置空
Set Conn=Null ""連接置空
ResultSet.Close ""結果集關閉
Conn.close ""連接關閉
End If
End Sub
當系統(tǒng) 切換到此頁面時,將從數(shù)據(jù)庫中讀出表recipe中的值,到Combolbox中,并且將ListIndex=0的那一項列為默認項