我有两个有关事件的问题。(我不确定他们是否关心Milo
(我现在正在使用)或OPCUA。):
1)我创建了一个用于EventFilter
对象的MonitoringParameters
。
过滤器的selectClauses
是SimpleAttributeOperands
的数组,每个数组都有我的NodeId
的EventType
以及我要检索的属性的QualifiedName
。
事件类型及其属性具有ns=2
,但很奇怪,我必须指定限定名称,例如QualifiedName(ns=0, property_name)
。
这可行,但是我觉得这很混乱。指定ns=2
会产生空值,这引出了我的第二个问题:
2)在相同的设置中。当我添加一个SimpleAttribute
来引用服务器上不存在的限定名称时,我会收到一个空值。我原本希望这会引发错误(例如SQL
)。
非常感谢任何帮助。提前非常感谢!
您描述的第一种情况听起来像是服务器中的错误。
第二听起来很正确。创建该字段时,您可能已经收到指示,表明该字段在您的select子句结果中不存在。
规范对此有话要说:
如果所选字段不是事件的一部分,或者在EventFilterResult的selectClauseResults中返回了错误,则在Publish响应中的相应事件字段中返回空值。