Tested on the R1.05 test server 2026-10-09..12 with a user project (own objects only); not yet on CI-Eng-Sample (ISS-188). Only results that were tested are included; inferences, code-only and manual-only points and the untested sample layout change were left out. - layouts: 'logout' is a secondary logout, always disabled on the R1.05 web client; 'exit' closes the window and ends the session (ISS-182). - create-display: R1.05 web client table (String items in text vs textField, fixed text alignment, start-hidden limits ISS-183, two visibility conditions, On entry display actions, rectangle blinking, verified connections, first load). - java-class 4a: signal arrays at scale, write on change, attribute arrays, offline javac/javap check; change-reset-class: new signals need the object recreated, attributes lost (ISS-185); opcdbg reset in cmd, TRIGGER_1 via dssqld -m. - string-items (ISS-187), users-groups, modbus-station (400 registers, comm loss), export-dataset (NAME range filter), item-alarming. - new task system-management/package-project.md; tools/ModbusSim.java (tested on R1.05: FC03/04/06/16, exceptions, modes); AMSI (ISS-186). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
38 lines
3.2 KiB
Markdown
38 lines
3.2 KiB
Markdown
---
|
|
task: Package a project for another CI Server (quick load files, display, layout, user) and check the install
|
|
version: R1.05
|
|
source: IM 36K10J10-01EN §5.6 (moving engineering data); IM 36K10L50-01EN §3; practiced with a user project on the R1.05 test server 2026-10-12 (remove and reload from the package, twice)
|
|
status: verified on R1.05 with a user project (not on CI-Eng-Sample)
|
|
---
|
|
|
|
# Package a project for another CI Server
|
|
|
|
Goal: a folder (zip) a junior engineer can install from, step by step, on another server.
|
|
|
|
## 1. What goes in
|
|
|
|
| Part | Notes |
|
|
|---|---|
|
|
| Quick load files `01_…` to `nn_…` in load order + `load.cmd` | sections, status items, line, station/points, items, trigger, class, object, users. **No node names** (leave `EQUIPMENT_NODE`, `FRONT_END_NODE` out) and no `NSID` / `ID_NUMBER`: the target assigns them. Insert (`-i`) only. |
|
|
| Removal files in reverse order + `remove.cmd` | so the install can be undone |
|
|
| Displays + a deploy script | copy to `DEPLOY\displays`, `jwuiutl -d -v -i -l … <display>` (must say *No problems found*), copy again (validation re-saves), `jwuiutl -e HTML -i -f DEPLOY <display>`. Displays without `<itemId>` bind by name, so new item numbers on the target do not matter. |
|
|
| Layout block + script | only the project's layout(s) between `<!-- <P>-BEGIN` / `<!-- <P>-END -->`, inserted before the first `<translations>`; the script makes a timestamped backup and checks the XML (sample: `examples/CI-Eng-Sample/layouts/layout.ps1`). |
|
|
| README | numbered steps with the exact command, the expected output and what to do if it differs |
|
|
| Pre-check script (read-only) | CI Server version (`%TLS_ALLUSERS_PATH%\lst\tls_versions.lst`), `dssqld` answers, longest file path ≤ 79 (ISS-020), `tls\jre\bin\javac.exe` present (Java classes compile on load), device reachable (TCP connect), each name free (filtered export per dataset, e.g. `'NAME = "<LINE>"'` on `MODBUS_LINE_DF`, `'EQUIPMENT_MAN = "<EQPNAME>"'`), layout name not used outside the project block |
|
|
| Post-install check | `itmval -g` of the station status item, one value to compare with the device's own software, a value the calculation updates (read twice), learn/initial states |
|
|
|
|
## 2. Script rules (found by testing the README in one Command Prompt)
|
|
|
|
- **`pushd "%~dp0"` … `popd`**, not `cd /d "%~dp0"`: the engineer runs the scripts one after the other
|
|
in the same prompt; a script that leaves the prompt in its own folder breaks the next command.
|
|
- `load.cmd`: delete the old `0*.qlo` first and end with `findstr /c:"_DF " 0*.qlo` (one result
|
|
line per data set; the last column is *Errors*). Otherwise old results (e.g. of an undo) are listed too.
|
|
- Wait after the line (`powershell -NoProfile -Command "Start-Sleep -Seconds 15"`, the equipment
|
|
manager starts) and after a class (about 20 s, compile) before the next file.
|
|
|
|
## 3. Test the package
|
|
|
|
On a test server: run the README's undo, then every step exactly as written, in one Command Prompt,
|
|
from a fresh copy of the zip; point the device address at a simulator (`tools/ModbusSim.java`) if
|
|
the device is not reachable. Compare the server against the package afterwards (filtered `ITEM_DF`
|
|
export by name range, class source from a `CLASS_DF` export, display file hash).
|