--- manual: IM 36K10C50-01EN title: Edit Module edition: 3rd Edition, Sep. 2023 version: R1.03 status: display CIENG_Tank built by the user in the Edit Module (text, number field, alarm overview, trend) and checked as XML and HTML 2026-10-01; jwuiutl search, validate and HTML export verified; other components, symbols, actions and the tutorial from docs --- # Edit Module (R1.03) The Edit Module draws displays and symbols for the Operator Interface (desktop) and the HTML display. Displays are XML files (`IM36K10R30-01EN.md` §1). Section numbers refer to the manual. ## 1. Window and files (§1) - Window: sheets, component bar, graphic sheet, symbols sheet, menu, toolbar, edit area. - *File > New Display* (Ctrl+N), *New Symbol* (Ctrl+Shift+N), *Save* (Ctrl+S), *Save with Revision Information* (who/when/why, kept in `revisionHistory`), *Save As*, *Save Selection as* (new symbol or display), print area, print. Open displays are locked (`.lck`); autosave writes `.xml.autosave`. - *Edit > Find* searches the open display; `jwuiutl -m` searches all. - **HTML display** check box (new display dialog / display properties): the editor then offers only HTML-supported components, properties and actions, and saving also writes the HTML file. HTML mode can be switched off later. Not for enterprise displays. The tab icon shows normal / HTML / HTML with unsupported content. - Localisation: *Tools > Configure Localization* → *Extract Text*, add locale, translate; global and per-file tables; the operator's locale decides. - *Playback > Record* records operator/editor sessions; *Open viewer* plays them back. ## 2. `jwuiutl` — batch operations (§1.5) `jwuiutl.cmd` (in `tls\com`, Java; runs from a normal prompt): | Option | Use | |---|---| | `-d` / `-s` | Only displays / only symbols (`-p `, `-g `) | | `-v` | Validate (connected items exist, components defined); report only. `-l ` writes the result, `-i` shows progress (`Validating ` / `Info: No problems found`) | | `-vf` | Force validation and **save** every display/symbol | | `-u` | Unlock locked files (`.lck` left by a crashed editor) | | `-c` / `-a` | Clean up temporary files / validate + unlock + clean up | | `-m ` / `-M ` | Print matching components (CSV) / with actions and properties | | `-e HTML [-o ] [-f ] []` | Export HTML displays | | `-b`, `-z`, `-h true/false` | Also save `.xml.bin` (faster loading) / compressed / set HTML mode | | `-un`, `-pw` | User for enterprise displays | **Verified on the test system:** `-d -m TANK1` and `-d -v -i -l` ran without errors; locked displays and displays saved by a newer version are skipped (`*** Display locked `, `… created with a newer version of CI Server (R1.04.0.0)`); `-e HTML -i -f DEPLOY CIENG_Tank` wrote `mobileoperator\operatorInterfaces\DEPLOY\displays\CIENG_Tank.html`. ## 3. Components (§2) Shapes (rectangle, ellipse, arc, polygon, spline, line, links), text / text field / text area / password field, number and number field, icon, rectangular and circular scales, radial, data bar, spinner, slider, push/toggle button, check box, radio button, combo box, list box, date and time field, **alarm overview** (current/historical; acknowledge, block, shelve, link display, export; dialog tabs Types, Columns, Filter, Alarm link display, Appearance, Header and footer, Fetching, Alarm Shelving, Enterprise, Advanced, Attributes), list of blocked items, alarm sound, dataset tables (view/edit dataset records), report, **trend** (pens on items with history; shows limits; time slider and controls; definitions can be saved from the operator interface), DTS trend, micro trend, playback indicator, calculation/function, JavaScript function, web browser, PDF viewer, navigation tree, display generator, map viewer. ## 4. Sheets (§4) Visualization (displays/symbols tree), zoom, visibility groups (shown by zoom factor), **parameters** (default read-only ones such as `name`, `attachedObject`, `client`, `server`, `mouseX`; user-defined with scope; `$name` in command lines), messages, symbols, **properties** (connect a property to an item attribute, parameter or dataset field; linear transformations; writable properties: value, item name parts, id, units, description, status number/text, control status, option bits), layers, attributes, edit history (undo/redo), **actions** (open / close display, execute command, read/write parameters; triggered by component events). Open-display action (verified): `` with `` (factory files also use `ActivateReplace`), ``, optional `` (empty = current window) and ``, plus `` entries for display parameters. Layout commands from a component: *Execute command* `ACTION ` (e.g. `ACTION navigate back default`). A trend property connected by mistake (`chart.attribute[00]` -> item) makes the Operator Interface show *Short attribute name ... is invalid* when the display opens; remove the connection. ## 5. Symbols (§5) *File > New Symbol*; put it on a palette (attributes sheet); external user-defined parameters become properties of each instance; after changing a symbol run *Tools > Validate all Symbols* and *Validate all Displays* (with all tabs closed); a symbol can be linked to a PROCESS Service class so each instance shows one object; data location (display, operator's CI Portal, display's server, enterprise, node). ## 6. What the display file stores (verified with CIENG_Tank) - `` with `true`, ``, ``, grid, revision history, visibility groups, layers. - Components as elements (`text`, `numberField`, `alarmOverview`, `chart` = trend). - Item connections in ``: `CI-Eng-Sample.TANK1.LEVEL` **and** `1.1.248.0.0.1.1.7`. Trend pens: ``; a new trend has 5 empty pens. - **After a sample remove/reload the item got id 268** while the file kept 248: `jwuiutl -v` still reported *No problems found*, and a newly opened session showed the live value — the name is what counts. Sessions that were already open kept the old binding (value frozen) until the display was opened in a new session. ## 7. Tutorial (§6) Builds wheels, faceplates, valve symbols, indicators, PID faceplates with mode and setpoint dialogs, scales, limit colours, tag info and pinning buttons — a guided exercise in the GUI.