功能说明
Open Diagnosis(打开诊断)属于 Interactions(交互)类行为,只在导出后的运行页面上、用户点击该图元时触发。它的作用是请求 HQ VISU 宿主机弹出“设备诊断窗口”,让操作员从画面上的某个设备图标直接打开该设备对应的诊断/状态弹窗。它不会在页面内自行绘制窗口,而是把参数交给宿主机,由宿主机通过内置弹窗模板打开诊断界面。注意:它依赖宿主机的弹窗协议,只有在 HQ VISU 宿主机里运行才有效,单独用浏览器打开导出文件不会弹出诊断窗。
Open Diagnosis(打开诊断)属于 Interactions(交互)类行为,只在导出后的运行页面上、用户点击该图元时触发。它的作用是请求 HQ VISU 宿主机弹出“设备诊断窗口”,让操作员从画面上的某个设备图标直接打开该设备对应的诊断/状态弹窗。它不会在页面内自行绘制窗口,而是把参数交给宿主机,由宿主机通过内置弹窗模板打开诊断界面。注意:它依赖宿主机的弹窗协议,只有在 HQ VISU 宿主机里运行才有效,单独用浏览器打开导出文件不会弹出诊断窗。
Open Diagnosis(打开诊断)属于 Interactions(交互)类行为,只在导出后的运行页面上、用户点击该图元时触发。它的作用是请求 HQ VISU 宿主机弹出“设备诊断窗口”,让操作员从画面上的某个设备图标直接打开该设备对应的诊断/状态弹窗。它不会在页面内自行绘制窗口,而是把参数交给宿主机,由宿主机通过内置弹窗模板打开诊断界面。注意:它依赖宿主机的弹窗协议,只有在 HQ VISU 宿主机里运行才有效,单独用浏览器打开导出文件不会弹出诊断窗。
在行为编辑器里,除了通用的 Definition 和 Condition,主要填“弹窗目标(Popup Target)”这一组参数。这四个目标参数都是 JavaScript 字符串表达式(可以直接写常量,也可以写表达式动态拼)。编辑器里看到的标签和它最终传给宿主机的参数名对应关系如下:
// Definition
var dev = 'F01';
// 各目标字段(字符串表达式)
PLC: 'PLC1'
Template(ID): dev // 弹窗标题显示 F01
Status Prefix(DiagnosisControl): 'device-default'
Title(GroupRightIndex): 'AAA.bb' // 仅前缀
Condition(Enabled): true
// 运行时等价于:
qtedit.openDiagnosis({
PLC: 'PLC1', ID: 'F01',
DiagnosisControl: 'device-default',
GroupRightIndex: 'AAA.bb'
});
典型场景:在设备总览或工艺画面上,为每个泵、阀、电机等设备图标绑定 Open Diagnosis。操作员点击图标后,弹出该设备的诊断/状态窗口,查看实时位、报警和参数,无需切换到专门的诊断页面。也可以配合 Definition 动态决定目标,例如根据当前选中的设备号组合 ID 和前缀,让同一套模板服务多台设备。
常见误区:
填 PLC、Template、Status Prefix、Title 等目标参数,点击时请求宿主机弹出设备诊断窗口。