admin 管理员组

文章数量: 1184232


2024年4月30日发(作者:php的中文含义)

WINCC一起学-VBS读取变量归档

WINCC 一起学-VBS读取变量归档-一

4、读取变量归档

连接数据库成功,下一步就是从归档之中读取数据了,读取数据要用到两个对象,

“set”和“d”对象

4.1 set

4.1.1 简介

ADO Recordset 对象用于容纳一个来自数据库表的记录集。一个 Recordset 对象由记录和列(字

段)组成。在 ADO 中,此对象是最重要且最常用于对数据库的数据进行操作的对象。

4.1.2 创建对象方式

Dim oRs

Set oRs = CreateObject("set")

4.1.3 属性

4.1.4 方法

4.1.5 事件

4.1.6 集合

4.2 ADO Command

4.2.1 简介

ADO Command 对象用于执行面向数据库的一次简单查询。此查询可执行诸如创建、添加、取回、删除

或更新记录等动作。如果该查询用于取回数据,此数据将以一个 RecordSet 对象返回。这意味着被取回

的数据能够被 RecordSet 对象的属性、集合、方法或事件进行操作。Command 对象的主要特性是有能

力使用存储查询和带有参数的存储过程

4.2.2 属性

4.2.3 方法

4.2.4 集合

4.3 查询归档数据

4.3.1 查询语法和参数

语法:8 字节长 ValueID 的请求:

TAG_LLVID:R,

ValueName>,,[,][,]

4 字节长 ValueID 的请求:

TAG:R,

ValueName>,,[,][,]

参数:

具体详细信息参考手册C

4.3.2 注意事项

归档查询的语句也只有几个地方需要修改

1、:常用的是ValueName方式查询,较为直接,在

WINCC7.3SE版本中,从变量记录里也看不到各个归档的ValueID参数是多少

了,而且使用ValueName参数,很直观的就能看到是在归档名称和变量名称,很容

易找到位置。

ValueName 的格式为“ArchiveNameValue_Name”:其中ArchiveName就是变

量归档的归档名称,Value_name:是指该归档名称内的,变量名称,如下图:

2、TimeBegin和TimeEnd参数:这两个参数是采用的SQL格式的UTC时间,具体格式必须

是:“YYYY-MM-DD hh:mm:”,毫秒可以省略,主要是日期的分隔符为“-”。有朋友用

FormatDate或者其他函数把当前时间转换成UTC时间之后,没有注意最终的时间格式,导致

查询不成功,把时间转成SQL格式时间,有两种方式一是设置电脑的上的时间设置,在控制面

板里面的区域语言里面,如图

还有就是可以自己写脚本,计算UTC时间,同时转成yyyy-MM-dd这种格式,使用文档中提供

的脚本如图:

4.3.4 读取测试

从历史趋势上看,自2017-02-08 16:40:00至2017-02-08 17:18:00之间有数

据。通过读取记录集的RecordCount属性,看看查询到的结果只要不等于0,就

说明查询成功,脚本如图:

执行结果如图:

通过上图看出,oRs的RecordCount属性是34,说明有34个数值,读取成功。


本文标签: 时间 查询 归档