通讯协议051——全网独有的OPC HDA知识一之接口(六)IOPCHDA_SyncUpdate

本文简单介绍OPC HDA规范的IOPCHDA_SyncUpdate(可选)接口方法,更多通信资源请登录网信智汇(wangxinzhihui.com)。

1)HRESULT  QueryCapabilities(pCapabilities)

此函数指定服务器支持哪些更新方法。这是所有支持OPCHDA SyncUpdate接口的服务器所必需的方法。

此调用使用ENUM作为返回参数;这对于位掩码值是不正确的,并且排除了服务器指定多个支持的方法。为了避免对此次维护更新的IDL进行更改,对此的更正将推迟到2.0版

2)HRESULT  Insert(dwNumItems, phServer, ftTimeStamps, vDataValues, pdwQualities, ppErrors)

此函数在一个或多个项目的指定时间戳将值和质量插入到历史数据库中。如果在指定的时间戳存在值,则不应插入新值;ppErrors应指示错误。这是接口上的一个可选方法。

此函数用于在指定的时间戳插入新值;例如插入实验室数据以反映数据收集的时间。

phServer、ftTimeStamps、vValues和pdwQualities是numItems大小的数组。若要在同一时间插入多个不同项目的值,则ftTimeStamp数组将为每个项目具有相同的时间。要插入单个项目的值、时间戳和质量流,请将项目数组的大小设置为要插入的值的数量,并在每个元素中放置相同的ItemID。

3)HRESULT  Replace(dwNumItems, phServer, ftTimeStamps, vDataValues, pdwQualities, ppErrors)

此函数用于替换历史数据库中一个或多个项目在指定时间戳处的值和质量。如果在指定的时间戳处不存在值,则不应插入新值;ppErrors应指示错误。这是接口上的一个可选方法。

此函数用于替换指定时间戳处的现有值;例如,未正确处理但插入历史数据库的正确实验室数据。

phServer、ftTimeStamps、vValues和pdwQualities是numItems大小的数组。若要在同一时间替换多个不同项目的值,则ftTimeStamp数组将为每个项目提供相同的时间。要替换单个项的值、时间戳和质量流,请将项数组的大小设置为要替换的值的数量,并在每个元素中放置相同的ItemID。

4)HRESULT  InsertReplace (dwNumItems, phServer, ftTimeStamps, vDataValues, pdwQualities, ppErrors)

此函数在历史数据库中为一个或多个项目插入或替换指定时间戳的值和质量。如果项目在指定的时间戳上有一个值,则新的值和质量将取代旧的值。如果在该时间戳处没有值,则函数将插入新数据。函数在返回之前一直运行到完成。这是接口上的一个可选方法。

此功能旨在无条件地插入/替换值和质量;例如对坏传感器的值的校正。

phServer、ftTimeStamps、vValues和pdwQualities是numItems大小的数组。若要在同一时间设置多个不同项目的值和质量,则ftTimeStamp数组将为每个项目具有相同的时间。要为单个项设置值、时间戳和质量流,请将项数组的大小设置为要插入/替换的值的数量,并在每个元素中放置相同的ItemID。

S_OK作为ppError当HDA服务器无法判断在该时间戳是否已经有值时,允许单个值的返回代码。如果HDA服务器可以确定新值是否替换已经存在的值,则应使用OPC_S_INSERTED或OPC_S_REPLACED返回该信息。

5)HRESULT  DeleteRaw (htStartTime, htEndTime, dwNumItems, phServer, ppErrors)

此函数用于从历史数据库中删除组中一个或多个项目的指定时域的值、质量和时间戳。这是接口上的一个可选方法。

此功能用于删除意外输入历史数据库的数据;例如从具有不正确时间戳的源删除数据。

如果在特定项目的时间范围内未找到任何数据,则返回S_FALSE的成功状态,并且该项目的错误代码为OPC_S_NODATA。

6)HRESULT  DeleteAtTime (dwNumItems, phServer, ftTimeStamps, ppErrors)

此函数用于删除历史数据库中组中一个或多个项目的指定时间戳的值和质量。这是接口上的一个可选方法。

此功能用于删除历史数据库中的特定数据;例如不正确且不能正确再现的实验室数据。

未完待续。更多通信资源请登录网信智汇(wangxinzhihui.com)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值