问题标签 [wonderware]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
651 浏览

sql-server - 如何从 InTouch Wonderware 或 SQL Server 2014 调用 SOAP Web 服务

我一直在尝试从 InTouch Wonderware 或 MS SQL 2014 调用现有的 SOAP Web 服务。两者中的哪一个调用它并不重要,因为 Wonderware 项目无论如何都会读取/写入 SQL Server 数据库。

我的知识主要限于 Wonderware 及其访问 SQL Server 数据库的程序内选项,这与 Web 服务主题的常规指南不兼容。

Web 服务由客户提供,已有十多年的历史并已外包,这排除了对其进行任何更改的可能性。目标是通过 ID 从 Web 服务请求原材料数据,然后返回生成的材料数据。每个函数的参数都有文档记录,但唯一存在的 URL 需要用户名/密码,并直接显示 WSDL 文件的内容。该文件(当保存在本地时)在 SoapUI 上运行,并且测试用例提供所需的结果。

我的问题是第一步 - 连接到 Web 服务并发送/接收消息。WebSVC(InTouch Web 服务客户端)无法处理基本身份验证,即使在链接中包含用户名和密码时也无法连接(在任何浏览器中都可以使用)。关于该主题的指南通常已经过时,或者与手头的问题不匹配。

由于我对数据库和 Web 编程的知识有限,我该如何使用 Web 服务(最好以简单的方式)?性能无关紧要——数据库平均每分钟处理的请求少于 10 个,延迟不会破坏任何重要的东西。

0 投票
3 回答
190 浏览

sql-server - 将不匹配记录的结果设为 NULL

我正在尝试在 Wonderware 中的表中查询某些数据。我知道查询的“a”部分中有一些数据,其 TagName 等于“Weightdata2.uiID”。但是“b”部分没有匹配的数据,因此查询返回空数据集。但是,如果那里没有匹配的数据,我想在 uiWater 列中获取 'a' 部分和 'b' 的数据,其中 NULL 或零。

这是我的查询:

我想要这样的结果

0 投票
1 回答
240 浏览

sql-server - SQL Server 2016 Express 中的行级安全性?

我正在使用第三方应用程序(Wonderware Historian)并尝试实现行级安全性。该数据库托管在 SQL Server 2016 Express 上,有人知道 RLS 是否在 express 版本中可用?我已经翻遍了,找不到明确的答案。

这就是我得到的,直觉说 express 不支持这个,但我想在我们探索升级到 SQL Server 2016(标准)之前确定。

0 投票
2 回答
1315 浏览

wonderware - Wonderware Historian:查询 Runtime.Events 视图

我想用 SQL 查询 Runtime.Events 视图。我尝试了以下方法:

select * from Runtime.dbo.Events给出以下错误:

OLE DB provider "INSQL" for linked server "INSQL" returned message "Event History no longer supports queries that do not provide time".

select * from Runtime.dbo.Events where EventTime >= '2018-09-01 00:00:00' and EventTime <= '2018-11-01 00:00:00'给出了这个非描述性错误:

Cannot execute the query "..." against OLE DB provider "INSQL" for linked server "INSQL".

日期格式似乎是正确的,因为当我尝试使用不同的格式时,我收到错误,指的是错误的日期格式。

如何查询此视图?

0 投票
1 回答
33 浏览

wonderware - Wonderware 信息服务器过程图形

我正在使用 WIS 3.1。在Process Graphics中,我有两个 Intouch 窗口:wnd1 和 wnd2。它们是使用 WinXMLExporter 发布的。Wnd1 具有带操作的按钮:显示“wnd2”,而 Wnd2 具有带操作的按钮:显示“wnd1”。当我选择面板中的每个窗口(进程图形 - WindowSet - wnd1 或 wnd2)时,一切正常。当我定期(大约每 40 秒)按下每个窗口上的按钮时,会出现另一个窗口。没关系。但是,当我一分钟以上什么都不做,然后按下按钮时,我看到了错误 - 带有“查找窗口错误:wnd1(或 wnd2)”的 MessageBox。感谢帮助!

0 投票
1 回答
782 浏览

wonderware - 在 Wonderware Intouch 中缩放单支笔历史趋势

Wonderware Intouch 标签具有多个与缩放标签值相关的点域(.minraw、.maxraw、.mineu、.maxeu)。但似乎这些是只读的点域。我需要能够在运行时更改单支笔 [关联到特定标签] 的 mineu/maxeu,而无需更改整个趋势 .MinRange 和 .MaxRange。

示例场景:我们有 4 支笔在 Intouch 历史趋势上显示历史数据。三支笔的缩放对于这种特定的数据视图非常有用,但与其他笔相比,笔 4 的数据仅略微上下移动。如果我们仅在该笔上放大 (.MinRange / .MaxRange),则所有其他笔数据都偏离趋势。如何仅在一支笔上动态更改缩放比例?

0 投票
3 回答
1386 浏览

sql-server - 用每组中的前一个非空值替换空值

我正在通过自定义 SQL 查询连接到 Tableau 上的 Microsoft SQL Server。我有一个包含 3 个字段 DateTime、TagName、Value 的表,我想用每组 TagName 中的最后一个(尊重 DateTime 值)非空值替换 Value 字段中的空值。

新表应如下所示:

这已经是我尝试过的了,但是它在不考虑 TagNames 值的情况下替换了 NULL 值(在此示例中只有一个 TagName)。

我想通过添加来做几乎同样的事情OVER(PARTITION BY TagName),但它抛出了一个错误。(这是因为它不适用于SELECT TOP 1.)

0 投票
1 回答
258 浏览

wonderware - 如何从 Archestra 中的数据网格视图将数据显示到文本框?

我想通过在 Archestra 软件中选择不同的行来从数据网格视图的文本框中显示数据。是否有语法让我可以显示数据?

目前我正在使用语法

我需要一种语法,以便可以在文本框中显示选定的行。

我需要在 Wonderware Archestra 软件中执行此操作。

0 投票
1 回答
990 浏览

excel - Historian 检索数据

我有一个 Excel 工作表,其中包含从 Historian 数据库中提取的数据,用于 Wonderware 服务器中的排放标签。我需要知道如何编写在两个日期范围之间上传数据的 SQL 查询。开始日期结束日期。

我已经收集了我想要的数据和显示,我只是不知道如何在用户在另一个表单上输入的两个日期范围之间实现。我不知道该怎么做。

我什么都没试过,因为我不确定如何用 excel 实现参数查询。

我想要的是 Datetime >= 我需要在哪里设置它询问用户的开始日期和结束日期?我不知道如何在 excel 中执行此操作,我是历史学家添加的新手。

0 投票
0 回答
189 浏览

excel - Wonderware 历史标签

当我运行我的函数以将 Wondereware 中的历史记录值检索到 Excel 中时,它只加载了 50 个标签中的 4 个。

我试图选择其中包含标签名称的单元格,它似乎只需要 4 个标签名称,而我需要全部 50 个。

它加载的 4 个标签。我需要 50 个标签。