【WinCC】使用VBS读取报警记录数据到EXCEL.doc

【WinCC】使用VBS读取报警记录数据到EXCEL.doc

ID:49951735

大小:318.50 KB

页数:10页

时间:2020-03-03

【WinCC】使用VBS读取报警记录数据到EXCEL.doc_第1页
【WinCC】使用VBS读取报警记录数据到EXCEL.doc_第2页
【WinCC】使用VBS读取报警记录数据到EXCEL.doc_第3页
【WinCC】使用VBS读取报警记录数据到EXCEL.doc_第4页
【WinCC】使用VBS读取报警记录数据到EXCEL.doc_第5页
资源描述:

《【WinCC】使用VBS读取报警记录数据到EXCEL.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、.【WinCC】使用VBS读取报警记录数据到EXCEL1概述介绍如何在WinCC项目中使用VBS脚本读取报警记录归档数据,并把获取的数据保存成新的Excel文件。 2软件环境WindowsXPSP3中文版、WinCC7.0SP2ASIA、MicrosoftofficeExcel2007 3访问原理WinCC报警记录数据是以压缩的形式存储在数据库中,需要通过WinCC连通性软件包提供的OLE-DB接口才能够解压并读取这些数据。当使用OLE-DB方式访问数据库时关键需要注意连接字符串的写法和查询语句的格式。连接字符串格式为“Provider=WinCCOLEDBProvider.1;

2、Catalog=***;DataSource=***;”,其中:Catalog为WinCC运行数据库的名称,当修改项目名称或在其它计算机上打开原项目时,Catalog会发生变化。建议使用WinCC内部变量“@DatasourceNameRT”获得当前项目的Catalog。DataSource为服务器名称,格式为“<计算机名称>WinCC”。3.1查询语句格式查询语句的格式要求如下:AlARMVIEW:SELECT*FROM[WHERE……optional]其中参数信息如下所示:ViewName:数据库表名。必须用需要的语言指定该表。比如:中文字符表名为:ALGVIEWCHT,英

3、文字符表明为:ALGVIEWENU等。Condition:为过滤标准。详细说明请参见下表:资料..表1查询参数表3.2查询结果查询结果作为记录集返回。可以根据需要有选择的返回特定的数据集。例如:oRs.Fields(0).Value返回的是消息的编号;oRs.Fields(2).Value返回的是消息的时间戳;oRs.Fields(37).Value返回的是消息文本的内容。记录集的结构如下表所示:资料..表2记录集结构资料..表3记录集结构(续表)注意:WinCC的归档数据是使用UTC(协调世界时)时间保存的。本例中所采用的时间均为UTC时间,如果需要实现在本地时间和UTC时间之

4、间的转换,请参考下列连接:如何计算本地时间和UTC时间的时间差,如何转换UTC时间成SQL语句格式?22115636如何将本地计算机时间的时间戳(日期时间)转换成协调世界时(UTC)?242011134组态介绍4.1准备工作1)创建变量其中AlmTagA、AlmTagB和AlmTagC用于组态报警,MySqlStr用于动态化查询条件。如下图所示:资料..图1变量2)组态报警在报警记录中组态如下报警:图2报警信息图3单个消息组态界面3)创建Excel模板在特定的路径下预先创建一个Excel文件作为模板,这样可以很好的控制输出格式。本例中在D:WinCCWriteExcel下创建一

5、个名称为abc.xlsx的Excel文件。如下图所示:资料..图4EXCEL模板4.2组态查询界面画面上新建五个按钮,上面的四个按钮分别用于设置不同的查询条件。按钮下方的静态文本用于显示查询条件。最下方的按钮用于执行查询报警记录的VBS脚本。其中查询条件的设定是通过按钮的直接连接方式实现。图5查询界面在按钮属性对话框的鼠标动作中选择直接连接打开如下界面,配置查询条件。其中来源部分为查询字符串,目标部分为存储查询条件的变量。资料..图6按钮直接连接配置4.3详细脚本介绍1)打开Excel模板以后台方式打开之前创建好的Excel模板。其中sheetname作为变量可以定义Excel中

6、Sheet的名字。需要注意模板文件的存储路径。SetobjExcelApp=CreateObject("Excel.Application")objExcelApp.Visible=FalseobjExcelApp.Workbooks.Open"D:WinCCWriteExcelabc.xlsx"objExcelApp.Worksheets(sheetname).Activate2)准备查询条件主要是确定和格式化Catalog和查询条件。关键脚本如下:'准备查询条件CatalogSettagDSNName=HMIRuntime.Tags("@DatasourceNameRT"

7、)tagDSNName.Read‘拼接查询条件MySqlStr.ReadsSql="ALARMVIEW:Select*FROMAlgViewCHT"&MySqlStr.Value其中MySqlStr为定义的内部字符串类型的变量,当点击查询条件中的按钮时,就会把相应的查询条件字符串传给该变量(需要根据项目的实际情况调整查询条件)。本例中的四条查询条件的完整语句如下图所示:资料..图7查询条件3)完整的代码'变量定义和初始化DimsPro,sDsn,sSer,sCon,conn,sS

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。