当前页专属数据直接放在 Page Script 里,例如表格行、默认筛选条件、当前页显示开关、局部标题和局部阈值。表格模板的 Rows 字段可以填写变量名或函数名,这些数据不宜拆成单独 JSON 文档。
- 适合当前页独有配置
- 常用于表格数据和局部规则
- Rows 可填变量名或函数名
var tableRows = [
["Pump 1", "Running"],
["Pump 2", "Stop"]
];
var panelTitle = "未命名面板"; 当前页的数据优先来自 Page Script 变量、函数、内部 JSON Tag 和默认 alarm.js。它们适合保存页面参数、表格数据、显示规则和报警范围。
当前页的数据优先来自 Page Script 变量、函数、内部 JSON Tag 和默认 alarm.js。它们适合保存页面参数、表格数据、显示规则和报警范围。
当前页专属数据直接放在 Page Script 里,例如表格行、默认筛选条件、当前页显示开关、局部标题和局部阈值。表格模板的 Rows 字段可以填写变量名或函数名,这些数据不宜拆成单独 JSON 文档。
var tableRows = [
["Pump 1", "Running"],
["Pump 2", "Stop"]
];
var panelTitle = "未命名面板"; Python 或宿主侧脚本需要返回结构化数据时,优先写入内部 JSON Tag,PPT 页面用 `ReadTagJson(...)` 读取。这样报表、分页数据和查询结果仍然走统一 Tag 读写链,不需要页面直接调用 Python。
var rows = ReadTagJson("Device.ReportRows", []);
var updatedAt = ReadTagDateTime("Device.ReportUpdatedAt", null); 每页默认有一个受保护的 alarm.js,用来维护当前页报警窗口开关和范围。编辑核心对象 `HQVISU_PAGE_ALARM` 即可。
HQVISU_PAGE_ALARM = {
showWindow: true,
tags: [],
deviceCodes: [],
objectIdentifiers: [],
groupCodes: [],
areaCodes: []
}; 读取当前页的 PPT 报警设置。它不是运行端报警规则本身,而是当前页面随导出包携带的报警窗口开关和报警范围配置。当前页没有 alarm 配置时,会返回传入的回退值或默认结构。
var alarmConfig = getPageAlarm({
showWindow: true,
tags: [],
deviceCodes: [],
objectIdentifiers: [],
groupCodes: [],
areaCodes: []
});
if (alarmConfig.showWindow) {
qtedit.setComponentVisible("PageAlarmPanel", true);
} `showWindow` 表示当前页是否允许显示报警窗口;`tags` 是完整 Tag 点名范围;`deviceCodes` 是设备或 PLC 编码范围;`objectIdentifiers` 是对象或设备单元标识;`groupCodes` 是信号分组;`areaCodes` 是区域、产线、工段或系统范围。数组为空表示该维度不附加范围条件,不表示自动选择全部点位。
{
"showWindow": true,
"tags": [],
"deviceCodes": [],
"objectIdentifiers": [],
"groupCodes": [],
"areaCodes": []
} 读取当前宿主用户。它适合做轻量级个性化显示,例如页面欢迎语、当前操作人展示和当前用户标记。它不是权限系统本身,权限判断应以宿主机规则为准。
var username = GetCurrentUsername();
qtedit.setComponentText("CurrentUser", username || "Guest");
页面配置读取、报警读取和局部逻辑通常会集中出现在这里。