Open Diagnosis 打开诊断

Open Diagnosis(打开诊断)属于 Interactions(交互)类行为,只在导出后的运行页面上、用户点击该图元时触发。它的作用是请求 HQ VISU 宿主机弹出“设备诊断窗口”,让操作员从画面上的某个设备图标直接打开该设备对应的诊断/状态弹窗。它不会在页面内自行绘制窗口,而是把参数交给宿主机,由宿主机通过内置弹窗模板打开诊断界面。注意:它依赖宿主机的弹窗协议,只有在 HQ VISU 宿主机里运行才有效,单独用浏览器打开导出文件不会弹出诊断窗。

交互

交互: Open Diagnosis 打开诊断

交互类点击行为:用户点击图元时,请求 HQ VISU 宿主机打开设备诊断弹窗,用于从画面跳到对应设备的实时诊断界面。

功能说明

Open Diagnosis(打开诊断)属于 Interactions(交互)类行为,只在导出后的运行页面上、用户点击该图元时触发。它的作用是请求 HQ VISU 宿主机弹出“设备诊断窗口”,让操作员从画面上的某个设备图标直接打开该设备对应的诊断/状态弹窗。它不会在页面内自行绘制窗口,而是把参数交给宿主机,由宿主机通过内置弹窗模板打开诊断界面。注意:它依赖宿主机的弹窗协议,只有在 HQ VISU 宿主机里运行才有效,单独用浏览器打开导出文件不会弹出诊断窗。

使用方法:编辑器里要填的字段

在行为编辑器里,除了通用的 Definition 和 Condition,主要填“弹窗目标(Popup Target)”这一组参数。这四个目标参数都是 JavaScript 字符串表达式(可以直接写常量,也可以写表达式动态拼)。编辑器里看到的标签和它最终传给宿主机的参数名对应关系如下:

  • Definition:准备逻辑。可在这里读标签、定义变量,供下面字段引用(如 var dev = 'F01';)。
  • PLC:目标所在的 PLC / 设备站名(对应载荷 PLC)。默认 'PLC'。
  • Template(对应载荷 ID):诊断弹窗的标识,弹窗标题通常就显示这个 ID。默认 'device-default'。
  • Status Prefix(对应载荷 DiagnosisControl):宿主机弹窗模板名,决定用哪个诊断模板打开。默认空 ''。
  • Title(对应载荷 GroupRightIndex):标签树前缀,不是完整标签名;宿主机会在它后面拼上模板里的后缀得到最终标签。默认 'ObjectName'。
  • Condition(对应载荷 Enabled):是否允许触发的开关,true 才会执行,false 则点击不弹窗。默认 true。
// 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 和前缀,让同一套模板服务多台设备。

注意事项 / 常见误区

常见误区:

  • Title / GroupRightIndex 只是标签树前缀,不是完整标签名。最终标签由宿主机拼成:PLC + 前缀 + 模板里的后缀,例如 PLC1 + AAA.bb + Run 得到 PLC1.AAA.bb.Run;前缀填成完整标签会导致拼出的标签错误。
  • 编辑器里看到的标签(Template / Status Prefix / Title)与传给宿主机的参数名(ID / DiagnosisControl / GroupRightIndex)不是同一个词,排错时按上面的对应关系看。
  • 四个目标字段是字符串表达式:写常量要带引号(如 'PLC1'),写动态值才用变量名(如 dev)。
  • Condition / Enabled 为 false 时点击不会有任何反应,调试“点了没弹窗”时先确认它没被关掉。
  • 弹窗由宿主机打开,效果取决于宿主机是否配置了对应的诊断模板(DiagnosisControl);脱离 HQ VISU 宿主机时不生效。
Open Diagnosis 打开诊断行为编辑器
图示 1: Open Diagnosis 编辑器

填 PLC、Template、Status Prefix、Title 等目标参数,点击时请求宿主机弹出设备诊断窗口。