wonderware - Wonderware Historian 查询中的某些日期时间过滤器不返回任何数据
问题描述
我正在从SQL Server Management Studio查询Wonderware Historian Database,发现有时我没有得到值,这取决于我设置的日期时间过滤器,即使使用完全检索模式也是如此。
我可以通过以下语句获取 10 月前十天的值:
SELECT *
FROM Runtime.dbo.History
WHERE TagName = 'SFRL_JP\QInst'
AND wwRetrievalMode = 'Full'
AND wwQualityRule = 'Extended'
AND wwVersion = 'Latest'
AND DateTime >= '20191001 00:00:00'
AND DateTime <= '20191101 00:00:00';
但是,如果我将开始日期更改为 10 月 2 日(或之后的任何一天),则查询仅返回值为 0 的 tupla:
SELECT *
FROM Runtime.dbo.History
WHERE TagName = 'SFRL_JP\QInst'
AND wwRetrievalMode = 'Full'
AND wwQualityRule = 'Extended'
AND wwVersion = 'Latest'
AND DateTime >= '20191002 00:00:00'
AND DateTime <= '20191101 00:00:00';
使用Historian Query和Historian Trends获得相同的结果。
第一条语句的所有返回数据似乎都很好(QualityDetail = 192
和OPCQuality = 192
)。
我看不出第二个查询有什么问题。
解决方案
看起来 latest.dat 文件在一段时间内损坏了,所以我尝试将这些日期的现有数据导出到 .csv 文件中,然后上传这组新的 CSV 文件,指定“原始值”而不是“更新值”并通过 FastLoad 为该特定标签处理它们并检查值。查询似乎没问题,但几天后再次出现相同的错误。
最后,解决方案来自在 Historian 上安装补丁:Wonderware Historian 11.6 SP1 P02。
推荐阅读
- ssl - 是否可以在 Istio 网关上启用带有 TLS 终止的 HTTP/2?
- databricks - 如何在 Databricks 自动化集群上安装库
- google-cloud-platform - Google 存储:删除客户提供的加密密钥
- c# - 无法在某些 PC 上启动进程
- elasticsearch - 即使使用 update_by_query 顺序更新文档时,弹性搜索也会出现版本冲突
- encryption - rsa 解密和使用 nec
- java - 无法解析构造函数'BarEntry(java.lang.String, java.lang.Float)
- python - 使用 Python 读取 csv 文件中的特定行
- docker - 操作已超时 --> 无法解析 Windows 容器中的名称
- scala - Akka Streams:如何用未来的结果更新一个字段