WINCC脚本读取程序
wincc通过VBS读取控件
wincc通过VBS读取控件
在wincc7.0中做了个名称为main主画面,在main中添加一个名称为b画面窗口,再做一个名称为trend的模板画面,trend里面用了个名称为c的趋势控件,并在主画面中做了一个按钮,当我单击按钮的时候,在main中弹出trend画面并把相应的变量传递给trend里面的趋势控件c。
我想法是通过函数读取控件,然后改变控件的属性来达到变量传递的效果,这样就可以通过一个模板和多个按钮来实现单击不同按钮显示不同变量的趋势。
我通过函数SetobjCon2=HMIRuntime.Screens(
问题补充:
我想通过函数SetobjCon2=HMIRuntime.Screens(“Main.b:trend”).ScreenItem s(“c”)读取控件,但为什么编译不过去?
最佳答案
我觉得你这句没写错,
附我写的脚本如下:
dimnum
setnum=HMIRuntime.Screens(“start.画面窗口1:trend”).ScreenItems(“control”)
的确能获得此控件的属性,我怀疑你是不是忘记定义objCon2了?。
使用Wincc中的VBS进行变量读取
使用Wincc中的VBS进行变量读取使用Wincc中的VBS进行变量读取转载▼标签:分类:WinCC知识/探索winccvsb脚本变量writeread属性Wincc6包含了VBS脚本编程,对于我等熟悉VB编程的可谓带来的福音,但是,由于西门子的C脚本编程功能实在太强大,加上要保持以前版本的一致性和用户编程习惯的延伸性,所以对于VBS脚本并没有太多的介绍。
这里我先来介绍一下Wincc中对于控件引用的一般性论述。
Wincc对于控件引用一般都采取定义变量-》使用Set 变量=对象.(方法或属性)->引用变量来做的。
在变量读取或写入的过程中,我们要接触到一些属性和方法,例如,Read和Write方法,变量的Value属性,熟练掌握这些属性和方法相当重要。
下面解释一下Write和Read方法的语法:Read data 其中data是读取变量的方法,如果data=1,直接从AS系统读取,相当于C脚本中的Get*****wait()函数,如果省略,则从Wincc变量管理器中建立的变量中读取。
Write data,1 其中data是需要写入变量的数值,1代表直接写入AS系统,相当于C脚本中的Set*****wait()函数,1省略,则写入到由Wincc变量管理器建立的变量中去。
实例:读取变量的方法:1 Dim objTagSet objTag=HMIRunTime.Tags("变量名")objTag.Read2 HMIRunTime.Tags("变量名").Read如果以上例程改成直接读取AS系统变量的话,程序为:1 Dim objTagSet objTag=HMIRunTime.Tags("变量名")objTag.Read,12 HMIRunTime.Tags("变量名").Read,1写变量的方法:1 Dim objTagSet objTag=HMIRunTime.Tags("变量名")objTag.Write 1 '向变量写入数值1'也可以写为 objTag.Write 10 向变量写入数值102 HMIRunTime.Tags("变量名").Write 1'也可以写为 objTag.Write 10除了以上方法外,你也可以将一个中间变量的值写入:Dim objTag,valSet objTag=HMIRunTime.Tags("变量名")objTag.Readval=objTag.Value '中间变量val存放了变量的值objtag.Write val '写入变量中去当然,其余的方法还有很多,这些都需要自己在编程过程中总结和灵活运用。
wincc wscriptshell对象使用
WinCC 是 Siemens 的一种工业自动化控制系统。
WinCC 提供了 WScriptShell 对象,可以用来在脚本中执行 Windows 操作系统的一些命令。
在 WinCC 的脚本中使用 WScriptShell 对象,你可以执行一些系统操作,例如运行外部程序、创建快捷方式、访问网络资源等。
以下是一个简单的示例,展示如何使用 WScriptShell 对象在 WinCC 脚本中执行一个外部程序:
vbs复制代码
Dim shell
Set shell = CreateObject("WScriptShell")
' 执行外部程序
shell.Run "C:\Path\to\your\program.exe", 1, True
在这个示例中,我们首先创建了一个 WScriptShell 对象。
然后,使用 Run 方法来执行指定的外部程序。
Run 方法的第一个参数是要运行的程序路径,第二个参数是窗口样式(1 表示窗口最大化,0 表示隐藏窗口),第三个参数 True 表示程序执行完毕后自动关闭。
除了 Run 方法,WScriptShell 对象还有其他一些方法可以用于执行系统操作。
你可以根据具体需求选择适当的方法。
请注意,使用 WScriptShell 对象时需要谨慎处理输入参数和输出结果,确保脚本的安全性和稳定性。
另外,由于涉及系统操作,请确保你了解相关操作的风险和后果,并在测试和部署脚本时格外小心。
WINCC常用脚本说明
WINCC 常用脚本说明——第一篇(2011-06-郑州-SZL)一、 VBS1.定义变量格式:Dim 变量实例:Dim GDH1,PCH1,CL1,BC1,Silo1,PH1Dim GDH2,PCH2,CL2,BC2,Silo2,PH22.注释格式:’’ (英文下)实例: '换柜 21、22、23、24\25'工单开始 31、32、33、34\35'工单结束 41、42、43、44\45'1--换柜,2--工单开始,3--班开始,4--工单结束,5--班结束3.读变量取值格式:=HMIRuntime.Tags("").READ实例:MES_WO = ""MES_WO=HMIRuntime.Tags("CP_A_GDH").READ4.写变量赋值格式:HMIRuntime.Tags("").Write实例:HMIRuntime.Tags("CP_A_GDCZBZ").Write 3,15.调用windows dialog格式:If MsgBox("", vbYesNo, "CONFIRM") = Then实例:If MsgBox("确定工单开始?", vbYesNo, "CONFIRM") = vbYes Then6.提示Messagebox格式:MsgBox("")实例:MsgBox("CP 工单开始取消")7.IF 判断格式:if HMIRuntime.tags("").read <> 0 thenEnd if实例:if HMIRuntime.tags("WSJ_A_GDH_1").read <> 0 thenEnd if8.打开控件组态对话框格式:ScreenItems(“”).TollbarButtonClick =实例:ScreenItems(“Control1”).TollbarButtonClick =29.数据库操作WinCC访问数据库的三种方法:a)使用WinCC OLE DB Provider 访问WinCC过程值和消息归档实例:Set conn = CreateObject(“ADODB.Connection”)Conn.open“Provider = WinCCOLEDBProvider.1;catalog = CC_OpenArch;Data Source = .\WinCC” b)使用MS OLE DB Provider 访问WinCC用户归档实例:Set conn = CreateObject(“ADODB.Connection”)C onn.open“Provider=SQLLEDB.1;Integrated Security = SSPI; Persist SecurityInfo = false ; Initial Catalog = CC_OpenArch; Data Source = .\WinCC” c)使用VBS脚本通过ODBC访问数据库1)连接数据库:实例:YX = HMIRuntime.Tags("CP_A_GDH").READstrConnectiOnString = "Provider=SQLOLEDB.1;Persist Security Info=False;UserID=dbzs1;Password=dbzs1;Initial Catalog=DBZS1;Data Source=10.65.248.20\WINCC"'strSQL = "select distinct MATID from MES_ZS_WOR_CUT_BACK where WOID='" &YX& "'"Set objCoNnection = CreateObject("ADODB.Connection")objConnection.ConnectiOnString = strConnectionStringobjConnection.openSet objR = CreateObject("ADODB.RecorDset")Set obJCommand = CreateObject("mand")objCommand.ActiveCoNnection = objConnection2)查找数据库实例:strSQL = "Select mzwcb.MATID FROM MES_ZS_WOR_CUT_BACK mzwcb WHEREmzwcb.WOID='"&YX&"' AND mzwcb.MATID LIKE '270%'"3)写数据库实例:MandText = StrsqLSet objR = objCommand.ExEcuteJX =""JX = objR(0)HMIRuntime.Tags("CP_A_JXPH").Write JX4)关闭数据库实例:Set obJCommand = NothingobjConnection.CloseSet objR = NothingSet objCoNnection = Nothing5)数据库存储过程操作mandText="WSJ_REPORT'"&GDH1&"','"&BC1&"','"&PCH1&"','"&PH1&"','"&Silo1&"',"&CL1&",'"&CStr(Now)&"',3"'V ="WSJ_REPORT '"&GDH&"','"&BC&"','"&PCH&"','"&PH&"','"&Silo&"',"&CL&",'"&CStr(Now)&"',3"'MSgbox("1BKS")'objCommand.Execute二、 C脚本1.定义变量格式:type 变量实例:int GDH1;Byte GDH2;Double GDH3;2.注释格式:// (英文下)实例: //换柜 21、22、23、24\25//工单开始 31、32、33、34\35//工单结束 41、42、43、44\45//1--换柜,2--工单开始,3--班开始,4--工单结束,5--班结束3.读变量取值格式:GetTagByte("",);实例:GetTagByte("WSJ_A_GDBL");GetTagByte("WSJ_A_OFWO5");4.写变量赋值格式:SetTagByte("",);实例:SetTagByte("WSJ_A_GDBL",1);SetTagByte("WSJ_A_OFWO5",1);5.调用windows dialog格式:MsgBox("", vbYesNo, "CONFIRM")实例:MsgBox("确定工单开始?", vbYesNo, "CONFIRM") = vbYes Then6.提示Messagebox格式:MsgBox("")实例:MsgBox("CP 工单开始取消")7.IF 判断格式:if ()else实例:if ("WSJ_A_GDH_1"== 0)Else8.打开控件组态对话框格式:SetPropWord(lpszPictureName,””,””,)实例:SetPropWord(lpszPictureName,”Control1”,”TollbarButtonClick”,2)三、动态对话框函数判断取值实例:('C_SA509_CASING_CUR_1'<=63 || 'C_SA509_CASING_CUR_2'<=63 || 'C_SA509_CASING_CUR_3'<=63) && 'C_SA509_STATE'==1四、 WinCC组包含影响整个WinCC系统的函数1.BOOL GetHWDiag(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName, LPCTSTR lpProperties)函数运行时该函数可实现诊断的直接启动,由事件触发。
实验成功的WINCC读取TXT文件代码--VBS
Dim fsoDim txtfileDim a'a=HMIRuntime.Tags("FileName").ReadSet fso = CreateObject("scripting.filesystemobject")If fso.FileExists("E:\test\Export\UserArchiveControl\12345678FAIL.txt") Then 'MsgBox "文件存在"'If fso.FileExists("D:\\Export&Import\\"&CStr(a)&".txt") ThenSet txtfile = fso.OpenTextFile("E:\test\Export\UserArchiveControl\12345678FAIL.txt")MsgBox "开始读取"HMIRuntime.Tags("Var_1").Write txtfile.ReadLineHMIRuntime.Tags("Var_2").Write txtfile.ReadLineHMIRuntime.Tags("Var_3").Write txtfile.ReadLineHMIRuntime.Tags("Var_4").Write txtfile.ReadLineHMIRuntime.Tags("Var_5").Write txtfile.ReadLineHMIRuntime.Tags("Var_6").Write txtfile.ReadLineHMIRuntime.Tags("Var_7").Write txtfile.ReadLineHMIRuntime.Tags("Var_8").Write txtfile.ReadLineHMIRuntime.Tags("Var_9").Write txtfile.ReadLineHMIRuntime.Tags("Var_10").Write txtfile.ReadLineHMIRuntime.Tags("Var_11").Write txtfile.ReadLineHMIRuntime.Tags("Var_12").Write txtfile.ReadLineHMIRuntime.Tags("Var_13").Write txtfile.ReadLineHMIRuntime.Tags("Var_14").Write txtfile.ReadLineHMIRuntime.Tags("Var_15").Write txtfile.ReadLineHMIRuntime.Tags("Var_16").Write txtfile.ReadLineHMIRuntime.Tags("Var_17").Write txtfile.ReadLineHMIRuntime.Tags("Var_18").Write txtfile.ReadLineHMIRuntime.Tags("Var_19").Write txtfile.ReadLineHMIRuntime.Tags("Var_20").Write txtfile.ReadLineMsgBox "导入数据成功/Import Successful"txtfile.CloseElseMsgBox "文件不存在/File is not existing"End If最终效果图。
在Wincc用VBS脚本读写ACESS数据库
Else
'定义combol对象
Dim com
Set com=ScreenItems("combolbox_receipe")
com.Clear
Do While Not ResultSet.EOF
com.AddItem ResultSet("name").value,ResultSet("Id").valuE
ResultSet.MoveNext
Loop
com.ListIndexFra bibliotek=0 Set ResultSet=Null'结果集置空
com.AddItem "请选择配方...",0
'首先打开数据库
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
'依次读出数据库中配方的数量
WinccV7.3使用VBS脚本读取excel文件数值
WinccV7.3使用VBS脚本读取excel文件数值WinccV7.3 使用VBS脚本读取excel文件数值案例:wincc项目路径下有一个excel文件,数据表sheet1内容如下:现在我们需要把这个文件中的数据读取出来,显示在输入输出域当中,本例以读取R1C1和R2C2为例。
在wincc页面上放置两个输入输出域,名字分别为R1C1和R2C2,R1C1数据类型为字符串,R2C2数据类型为十进制数,页面上放置一个按钮,用于读取数据。
wincc新建一个内部变量path,用于存放excel文件的路径。
在wincc 页面打开事件中写入一下VBS脚本。
Sub OnOpen()Dim pathSet path=hmiruntime.Tags("path")path.write HMIRuntime.ActiveProject.Path & "\\myxls.xlsx"End Sub在按钮的点击事件中写入以下脚本:Sub OnClick(Byval Item)Dim xlApp,xlBook,pathDim r1c1,r2c2Set r1c1=ScreenItems("r1c1")Set r2c2=ScreenItems("r2c2")path=HMIRuntime.Tags("path").ReadSet xlApp=CreateObject("excel.application")xlApp.Visible=FalsexlApp.Workbooks.Open pathxlApp.Worksheets("Sheet1").Activater1c1.outputvalue=xlApp.Worksheets("Sheet1").cells(1,1).valuer2c2.outputvalue=xlApp.Worksheets("Sheet1").cells(2,2).value xlApp.Workbooks.ClosexlApp.QuitSet xlApp=NothingEnd Sub经测试可以实现需要的功能。
wincc读取归档数据
读取wincc归档数据到Excel表格的VBS脚本:Dim fnamefname="d:\baobiao\report.xls"Dim ObjExcelAppSet objExcelApp = CreateObject("Excel.Application")objExcelApp.Workbooks.Open fnameDim cnn As Stringcnn = "provider=WinCCOLEDBProvider.1;catalog=CC_gz_food_09_07_14_14_54_22R;data source=wincc01\WinCC"dim cc1 as objectSet cc1 = CreateObject("adodb.connection")cc1.ConnectionString = cnncc1.CursorLocation = 3cc1.OpenDim rst As ObjectSet rst = CreateObject("adodb.recordset")Dim time1Dim time2Time1=” 2009-09-24 00:00:00.000”Time2=” 2009-09-24 23:59:00.000”Dim ssql As Stringssql ="Tag:R,'LNGArchive\shuishi','" & time1 & "','" & time2 & "','timestep=3600,258'"rst.Open ssql, cc1rst.MoveFirsti=2do until rst.EofobjExcelApp.worksheets ("sheet1").Cells(2, i).V Alue = rst.fields(2).valuei=i+1loopobjExcelApp.ActiveWorkbook.SaveobjExcelApp.Workbooks.ClosEobjExcelApp.QuiTcc1.CloseSet cc1 = NothingSet rst = Nothingend if注:1)以上脚本为读取Wincc归档(LNGArchive)中的变量(shuishi)到Excel中,每小时读取一个数据写在Excel第二行,第二列开始。
Wincc的VBS脚本使用
W i n c c的V B S脚本使用------------------------------------------作者xxxx------------------------------------------日期xxxx变量读写: Write和Read方法的语法:读:1 Dim objTag Set objTag=HMIRunTime.Tags("变量名")2 HMIRunTime.Tags("变量名").Read写:1 Dim objTag Set objTag=HMIRunTime.Tags("变量名")objTag.Write 1 '向变量写入数值12 HMIRunTime.Tags("变量名").Write 1中间变量的值写入:Dim objTag,valSet objTag=HMIRunTime.Tags("变量名")objTag.Readval=objTag.Value '中间变量val存放了变量的值VBS语言使用方法概述:VBScript的全称是:Microsoft Visual Basic Script Editon.(微软公司可视化BASIC 脚本版).正如其字面所透露的信息, VBS(VBScript的进一步简写)是基于Visual Basic的脚本语言.我进一步解释一下, Microsoft Visual Basic是微软公司出品的一套可视化编程工具, 语基于Basic. 脚本语言, 就是不编译成二进制文件, 直接由宿主(host)解释源代码并执行, 简单点说就是你写的程序不需要编译成.exe, 而是直接给用户发送.vbs的源程序, 用户就能执行了.一、入门: 1) 注释(以REM或'开头)行在程序中不起作用, 但能让别人更容易读懂你的程序. 2) 变量好像一个盒子, 或一个代号, 可以代表你想代表的东西. 变量赋值使用"="3)以""包裹起来的字符称之为"字符串"4)函数像一个"黑箱", 有参数和返回值, 用"="左边的变量可以接住返回值5) Inputbox函数弹出一个输入对话框,Msgbox则用于输出例:REM 输入并回显你的名字'使用InputBox和Msgbox函数Dim name,msgmsg="请输入你的名字:"name=Inputbox(msg,"名称")Msgbox(name)上例中,Dim用来声明一个变量, 在VBS中, 变量类型并不是那么重要, 就是说VBS中你不用考虑name储存的是一个整数还是一个小数(学名叫"浮点数"), 也不用考虑是不是字符串(一串字符, 比如:"Hello World"), VBS会自动帮你搞定. 所以第三行语句可以删除, 效果不会变.常量:格式是:const 常量名=常量值.例如: const PI=3.1415926 const NAME="记忆碎片"二、进阶数据类型转换:1)Dim a,b,ca=inputbox("a是:","输入半径")b=Inputbox("b是:","输入半径")c=a*2+b*2Msgbox(c)这个输入1、2时是62)Dim a,b,ca=inputbox("a是:","输入半径")b=Inputbox("b是:","输入半径")c=(a+b)*2Msgbox(c)这个输入1、2时是24为什么会不一样呢? 在数学上c=(a+b)*2 和 c=a*2+b*2是等价的, 在VBS中也是如此. 问题出在"+"上, 在VBS中, +不仅仅是加号的意思还表示把两个字符串连接起来, 例如"Hello"+"World"="HelloWorld" have you understood? 你还记得InoutBox函数的返回值吗? 是字符串! 这就看出问题了吧, 在编程中"1"不等于(<>)1, "1"是一个字符, 而1是一个数, 所以a,b都是字符串变量, "1"+"2"="12", 这就好像我们小时跟伙伴开玩笑问他们1+1=?一样, 我们总是笑着说"错啦,应该是11".但为什么, a可以*2却不发生错误呢? 这时VBS比较智能的一个表现, 如果这个字符串的内容是一个数且对他进行数学运算, 则把字符串强制转换成数参与运算如果字符串代表一个数, 但不参加数学运算, 而是参加字符串运算(合并)则当作字符串处理, 所以你看到a+b=12, 这时候a+b的结果是一个字符串, 当它要乘以2的时候就被强制转换成了数字12, 这样我就得到了结果24怎么修改这个程序呢? 我们需要用到另一个内建的函数:int, int函数的功能是将输入值转成整数值, 我们这样修改: c=(int(a)+int(b))*2四、循环结构for....nextdim i,jfor i=1 to 9for i=1 to 9str=str & i * j & " " '&是和并字符串的符号next '每个next对应一个fornext1)do..loop和exit do的用法2) while当表达式true的时候执行循环体,until反之3) for...next是计数循环, 每次执行计数器递加4) 嵌套循环的作用和写法 4.5) &用于连接字符串5) vbCrLf相当于键盘上的回车键五、数组定义:dim 数组名(元素数量), 这里大家要注意一点, 这里定义的元素数量总是比你要的要少一个, 因为一个数组的起点是0号数据而不是1, 所以大家一定要小心: 你需要10个数据, 就定义"9"。
WinCC VBS脚本
再次读取变量时,异步读直接将映像区中的数据返回,变量读取的 时间不受AS系统和总线负载的影响。同步读直接从AS系统读取当前值, 比异步读方式要花费更长的时间。
12
IS Sales TAS 2012.02 / TECH Talk / For internal use only.
2
IS Sales TAS 2012.02 / TECH Talk / For internal use only.
Visual Basic Script
脚本系统 VBS脚本 变量读写 调试诊断 例程分析
WinCC集成了微软基于VB的运行期脚本语言
使用微软标准的工具编辑和调试 能够访问ActiveX控件和其它Windows应用的属性和方法
易于学习
3
程序具有良好的容错性
IS Sales TAS 2012.02 / TECH Talk / For internal use only.
图形编辑器中的VBS
脚本系统 VBS脚本 变量读写 调试诊断 例程分析
VBS可实现类似ANSI C的功能: 基于对象(VBS)/基于功能(C)
wordvalue访问数据库邮件windows等图形编辑器中的vbs脚本系统vbs脚本变量读写调试诊断例程分析vbs可用于对象属性和事件图形编辑器中的vbs属性任务循环或变量触发脚本通过返回值设置属性子程序使用item传递参数属性任务和事件任务可同时执行独立脚本线程脚本系统vbs脚本变量读写调试诊断例程分析事件任务子程序使用item传递参vbs对象模型winccv7对象和列表对象对象提供的属性winccv7新增了alarm对象可以通过该对象创建和访问报警条目hmiruntime对象例子
WinCC VBS脚本
WinCC 变量读写——异步/同步
脚本系统 VBS脚本 变量读写 调试诊断 例程分析
13
异步写
VBS: write (C: SetTagXXX) 此方式将数值分配给变量管理的写任务,并立即返回调用语句继续 执行,系统不等待数值真正写入。 调用者不知道数值何时真正写入。
同步写
VBS: write,1 (C: SetTagXXXWait) 此方式将数值分配给变量管理的写任务,并等待数值真正写入后才 返回调用语句。 与异步写相比,同步写要花费更多时间,所需时间取决于具体的AS 系统和通道。 为了避免性能问题,尽量避免周期性地使用同步写的方式。
11
IS Sales TAS 2012.02 / TECH Talk / For internal use only.
WinCC 变量读写——异步/同步
脚本系统 VBS脚本 变量读写 调试诊断 例程分析
异步读与同步读的比较
异步读第一次读取变量时,需要向AS系统请求数值,并且将该过程 变量添加到映像区,因此比同步读的第一次读取需要更长的时间。
访问数据库邮件windows等图形编辑器中的图形编辑器中的vbsvbs脚本系统vbs脚本变量读写调试诊断例程分析vbs可用于对象属性和事件图形编辑器中的图形编辑器中的vbsvbs属性任务循环或变量触发脚本通过返回值设置属性子程序使用item传递参数属性任务和事件任务可同时执行独立脚本线程脚本系统vbs脚本变量读写调试诊断例程分析事件任务子程序使用item传递参vbsvbs对象模型对象模型winccv7winccv7对象和列表对象对象提供的属性winccv7新增了alarm对象可以通过该对象创建和访问报警条目hmiruntime对象例子
例如,读变量: VBS代码: Tag.Read C代码: WORD value = GetTagWord(“Tag”)
在WinCC中如何使用VBS读取报警记录数据到EXCEL
在WinCC中如何使用VBS读取报警记录数据到EXCEL1概述介绍如何在WinCC项目中使用VBS脚本读取报警记录归档数据,并把获取的数据保存成新的Excel文件。
2软件环境Windows XP SP3中文版、WinCC7.0 SP2 ASIA、Microsoft office Excel 20073访问原理WinCC报警记录数据是以压缩的形式存储在数据库中,需要通过WinCC连通性软件包提供的OLE-DB接口才能够解压并读取这些数据。
关于WinCC连通性软件包的详细信息请参考连接:37436159当使用OLE-DB方式访问数据库时关键需要注意连接字符串的写法和查询语句的格式。
连接字符串格式为“Provider= WinCCOLEDBProvider.1; Catalog= ***; Data Source= ***;”,其中:Catalog为WinCC运行数据库的名称,当修改项目名称或在其它计算机上打开原项目时, Catalog会发生变化。
建议使用WinCC内部变量“@DatasourceNameRT” 获得当前项目的Catalog。
Data Source 为服务器名称,格式为“<计算机名称>\WinCC”。
3.1 查询语句格式查询语句的格式要求如下:AlARMVIEW:SELECT * FROM <ViewName> [ WHERE<Condition>……optional ]其中参数信息如下所示:ViewName:数据库表名。
必须用需要的语言指定该表。
比如:中文字符表名为:ALGVIEWCHT,英文字符表明为:ALGVIEWENU等。
Condition:为过滤标准。
详细说明请参见下表:表1查询参数表3.2查询结果查询结果作为记录集返回。
可以根据需要有选择的返回特定的数据集。
例如:oRs.Fields(0).Value 返回的是消息的编号;oRs.Fields(2).Value 返回的是消息的时间戳;oRs.Fields(37).Value返回的是消息文本的内容。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
a12=HMIRuntime.tags("alp12").read
a13=HMIRuntime.tags("alp13").read
a14=HMIRuntime.tags("alp14").read
a15=HMIRuntime.tags("alp15").read
a36=HMIRuntime.tags("alp36").read
a37=HMIRuntime.tags("alp37").read
a38=HMIRuntime.tags("alp38").read
a39=HMIRuntime.tags("alp39").read
a40=HMIRuntime.tags("alp40").read
a51=HMIRuntime.tags("alp51").read
a52=HMIRuntime.tags("alp52").read
a53=HMIRuntime.tags("alp53").read
a54=HMIRuntime.tags("alp54").read
a55=HMIRuntime.tags("alp55").read
a1=HMIRuntime.tags("alp1").read
a2=HMIRuntime.tags("alp2").read
a3=HMIRuntime.tags("alp3").read
a4=HMIRuntime.tags("alp4").read
a5=HMIRuntime.tags("alp5").read
b5=b4/86400
b6=b3+b5
a= "Provider=msdasql;dsn=zl;UID=alp;pwd=alp;"
b= "insert into PD_ZLJ(RQ,COL1,COL2,COL3,COL4,COL5,COL6,COL7,COL8,COL9,COL10,COL11,COL12,COL13,COL14,COL15,COL16,COL17,COL18,COL19,COL20,COL21,COL22,COL23,COL24,COL25,COL26,COL27,COL28,COL29,COL30,COL31,COL32,COL33,COL34,COL35,COL36,COL37,COL38,COL39,COL40,COL41,COL42,COL43,COL44,COL45,COL46,COL47,COL48,COL49,COL50,COL51,COL52,COL53,COL54,COL55,COL56,COL57) values (" & b6 & "," & a1 & "," & a2 & "," & a3 & "," & a4 & "," & a5 & "," & a6 & "," & a7 & "," & a8 & "," & a9 & "," & a10 & "," & a11 & "," & a12 & "," & a13 & "," & a14 & "," & a15 & "," & a16 & "," & a17 & "," & a18 & "," & a19 & "," & a20 & "," & a21 & "," & a22 & "," & a23 & "," & a24 & "," & a25 & "," & a26 & "," & a27 & "," & a28 & "," & a29 & "," & a30 & "," & a31 & "," & a33 & "," & a33 & "," & a34 & "," & a35 & "," & a36 & "," & a37 & "," & a38 & "," & a39 & "," & a40 & "," & a41 & "," & a42 & "," & a43 & "," & a44 & "," & a45 & "," & a46 & "," & a47 & "," & a48 & "," & a49 & "," & a50 & "," & a51 & "," & a55 & "," & a53 & "," & a54 & "," & a55 & "," & a56 & "," & a57 & ");"
a21=HMIRuntime.tags("alp21").read
a22=HMIRuntime.tags("alp22").read
a23=HMIRuntime.tags("alp23").read
a24=HMIRuntime.tags("alp24").read
a25=HMIRuntime.tags("alp25").read
set c =CreateObject("adodb.connection")
c.connectionstring = a
c.open
set d =createobject("mand")
d.activeconnection = c
mandtext = b
d.execute
a31=HMIRuntime.tags("alp31").read
a32=HMIRuntime.tags("alp32").read
a33=HMIRuntime.tags("alp33").read ห้องสมุดไป่ตู้
a34=HMIRuntime.tags("alp34").read
a35=HMIRuntime.tags("alp35").read
End Function
a26=HMIRuntime.tags("alp26").read
a27=HMIRuntime.tags("alp27").read
a28=HMIRuntime.tags("alp28").read
a29=HMIRuntime.tags("alp29").read
a30=HMIRuntime.tags("alp30").read
a6=HMIRuntime.tags("alp6").read
a7=HMIRuntime.tags("alp7").read
a8=HMIRuntime.tags("alp8").read
a9=HMIRuntime.tags("alp9").read
a10=HMIRuntime.tags("alp10").read
a41=HMIRuntime.tags("alp41").read
a42=HMIRuntime.tags("alp42").read
a43=HMIRuntime.tags("alp43").read
a44=HMIRuntime.tags("alp44").read
a45=HMIRuntime.tags("alp45").read
Dim a31,a32,a33,a34,a35,a36,a37,a38,a39,a40