ci-server-engineer/.claude/skills/graphics/tasks/create-display.md
2026-10-01 18:57:44 +10:00

59 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
task: Build a display in the Edit Module and check the saved file
version: R1.03
source: IM 36K10C50-01EN §1.2, §1.7, §2, §4.8.1; practiced on CI-Eng-Sample (display CIENG_Tank) 2026-10-01
status: verified
---
# Build a display (Edit Module)
The user draws; Claude gives the steps and checks the result. Example = the sample display
`examples/CI-Eng-Sample/displays/CIENG_Tank.xml`.
## Steps for the user
1. Start the Edit Module and log in.
2. *File > New Display*, name `<DisplayName>`; tick **HTML display** if it should also run in a
browser (the editor then hides unsupported components and properties).
3. Add components from the component bar, for example:
- **Text** — title.
- **Number field** — in the Properties sheet click **Value**, open the connection dialog,
*Items* tab, pick `<Section>.<Tag>`.
- **Alarm Overview** — right-click > *Component Properties*; *Filter* tab for an ASA, section
or tag filter; *Types* tab for current/historical.
- **Trend** — component properties, pen 1 = `<Section>.<Tag>` (a new trend has 5 empty pens;
the item must be in a storage group).
4. *File > Save* (or *Save with Revision Information*). Close the tab when done: an open
display is locked (`<DisplayName>.lck`) and `jwuiutl` skips it.
## Check the saved file
Folder `%TLS_WAP_PATH%\cfg\operatorInterfaces\DEPLOY\displays\` (and with HTML mode also
`%TLS_WAP_PATH%\mobileoperator\operatorInterfaces\DEPLOY\displays\<DisplayName>.html`).
```
grep -n "<html>\|<width>\|<height>\|itemName\|itemId\|<source" <DisplayName>.xml
```
- `<html>true</html>` = HTML mode; `<width>`/`<height>` must be set for the HTML display.
- Item connections: `<itemName>` + `<itemId>` (node.group.number…); trend pens:
`<source type="sourceID" uri="ci:/item/<item>"/>` (`uri=""` = empty pen).
- Write a fixed value with a button (verified in the HTML display, `CIENG_Tank` *Manual (0)* /
*Auto (1)*): `<button>` › `<data>` › `<action type="actionSetItemAttribute">` with
`<event type="event" event="On action"/>`, `<filter type="filter"><value>1.0</value></filter>`
and a `<connection>` with `<direction>2</direction>`, `<itemName>`, `<itemAttribute>ItemValue`
(the factory popups use `ItemValueOW`, presumably the overwrite variant like `itmval -o`; not tested). The factory popup `AOG_SetNumberPV` uses the
same action behind its *Apply* button.
- After the item is deleted and loaded again it gets a **new id**; the display still validates,
but on 2026-10-01 the HTML display showed **0** and the popup `ITM-E-NO_MAIN, No main item
found` for a number field whose stored `<itemId>` was stale, also in a fresh session. Deleting
the `<itemId>` line (keeping `<itemName>`) and redeploying fixed it: the field binds by name.
Sample displays therefore carry no `<itemId>`; for displays made in the Edit Module, reconnect
or remove the ids after reloading items (ISS-052).
## Verified (CIENG_Tank, 2026-10-01)
Text `CI-Eng-Sample Tank 1`, number field on `TANK1.LEVEL` (live: 72 → 61), alarm overview
(no filter; listed the TANK1.LEVEL alarms), trend pen `TANK1.LEVEL` (legend
`CI-Eng-Sample.TANK1.LEVEL [CIENG_SCAN10S]` = highest-priority storage group). In the HTML
display the trend drew no line (ISS-041).