ci-server-engineer/knowledge/manuals/IM36K10R40-01EN.md
cliu bf7d88a027 R1.05 re-check batch 3: alarms, audit, authorization, classes, HAC, reporting, pyTOOLS
Full manual diffs (L15, C20, E30, L25, J40, C10 §2, L10, P10, P11, J20,
C30, P20, R40, E10) and read-only checks on the shared R1.05 test server.
Skills and summaries moved to R1.05; new skill pytools (IM 36K10P40) from
docs (no Python on the test server). Issues ISS-132..181; corrections to
version-differences (E10, E30, P11, dss_ath_grp_u0104); C10 summary lists
the 3 new authorization actions; r105-verification V10-V17.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 10:21:36 +11:00

85 lines
5.8 KiB
Markdown
Raw Permalink 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.

---
manual: IM 36K10R40-01EN
title: Report Server Setup
edition: 4th Edition, Feb. 2026 (R1.05); content unchanged since the 3rd Edition, Sep. 2023 (R1.03): the revision table lists contact information only; the full text diff found only wording in §1 ("block", "REPORT Service" for "RPT")
version: R1.05 (first written for R1.03)
status: R1.03: processes, start/stop scripts, rptman.sup and the generator set-up files checked; interactive generator and rptstp verified 2026-10-01. R1.05 test server (2026-10-09, read-only): processes, rptman.sup and .rpt files (identical to R1.03), start/stop scripts (new extension-script call) and the interactive generator verified; rptstp not re-tested. Separate server processes, extra generators and custom destinations from docs
---
# Report Server Setup (R1.05)
How REPORT Service is built and configured. Writing reports: `IM36K10P20-01EN.md` (RQL) and
`IM36K10C30-01EN.md` (Engineering Module). Section numbers refer to the manual.
## 1. Parts (§1)
| Block | Process | Job |
|---|---|---|
| Manager | `RPTMAN` | Stores report definitions, schedules (through HISTORY Service), event triggers and ad-hoc requests; hands generation to a generator; manages generated reports |
| Generator | `RPTGE1` (executable `rptgen`) | Runs the RQL of a report and writes the result; ad-hoc queries use copies of the generator |
| Report stopper | `rptstp <generator>…` | Cancels the report a generator is working on |
| Info servers (RPI) | `rpidic`, `rpidis` (DSS dictionary), `rpidix` (DSS data), `rpifil`, `rpiitm`, `rpihis`, `rpialm`, `rpievt`, `rpiopc`, `rpicif` | Fetch data for the generator; **linked into the generator by default** — separate processes only when the data lives on another node |
Default layout (installed): one node, servers linked into `rptgen`; `report_start.cmd` (in
`tls\com`) refuses to start when HISTORY Service is not running, then starts `rptman` and
`rptgen -n rptge1`. The separate `rpi*` lines and a second generator (`rptge2`) and `rptgsp`
are present but commented out. `report_stop.cmd` stops `rpt*` and `rpi*` with `durstp`.
**R1.05 (installed, not in the manual):** `report_start.cmd` finally calls every
`tls\com\?*_report_start.cmd`, and `report_stop.cmd` first calls every `?*_report_stop.cmd`
(extension scripts, ISS-121); otherwise unchanged. `rptman.sup`, `rptge1.rpt`, `rptgen.rpt` and
`rptgsp.rpt` are byte-identical to R1.03 (verified 2026-10-08/09).
Full functionality needs BUS, DATABASE, HISTORY, ITEM, AUDIT, PROCESS Services and INTEGRATION.
## 2. Setup files (§2.2)
- `tls\sup\rptman.sup` (manager): `HIS = <node>, <name>, <task>` (default `0, HIS, 0`),
`DUR_QUEUE_SIZE` (500 KB). `FPATH`/`SPATH` are not used. **Installed:** `his = 0, HIS, 0`,
`dur_queue_size = 500`. Also present: `rptini.sup` (only a licence-like value, undocumented).
- Generator set-up descriptions are RQL files with extension `.rpt`, named after the instance:
- `rptge1.rpt` (background generator) — installed: `@workspace 500`, `@page_size 66`,
`@width 120`, `@left_margin 1`, `@top_margin 1`, header (line, customer name centred,
description right, `Report of DD-MMM-YY`, line), footer (line, report name, `page n`, line),
`dictionary rpidis.'tlsdic';`, `login rptman;` (priority 0). Every background report gets
this layout unless its query overrides it.
- `rptgen.rpt` (interactive) — no `LOGIN` (that is what makes the generator interactive),
`@page_size 23`, `@formfeed 0`, `@workspace 100`.
- `rptgsp.rpt` — a spare generator with `login rptman, 9` (not started by default).
Documented defaults when a variable is not set: top 3, bottom 6, left/right 0, width 80
(40–512), page 72 (20–255), sort space 100 KB, workspace 500 KB (C30 and P20 say 16 KB, ISS-047).
- `DICTIONARY` in the set-up file chooses the dictionary server/node; default `rpidis.'tlsdic'`
(file `%TLS_DAT_PATH%\tlsdic_dss.dic`).
## 3. More generators (§2.4)
Add `start /B /NORMAL %TLS_ROOT_PATH%\tls\exe\rptgen -n rptge2` to `report_start.cmd` and a
`tls\sup\rptge2.rpt` ending with `LOGIN rptman, <p>;`. A generator only takes reports with a
priority ≥ its own; one generator must keep priority 0. Higher-priority reports are generated
first. Admin rights and a restart needed (not practiced).
## 4. Layout defaults (§3.1, §3.2)
Put shared header/footer/margins in the set-up file (or a new `.rpt` given with `-s`).
`@export 1` gives comma-separated output (for files read by other programs). Memory: `@workspace`
(strings, records), `@sortspace` (ORDER/GROUP BY; spills to `tls\lst` when too small).
## 5. Destinations (§3.3)
The Engineering Module offers file, printer and system log destinations; R1.03 adds printer
management devices and destinations (`IM36K10C30-01EN.md` §3). Adding a new built-in destination
means changing `rpt_print.c` (not shipped as buildable on the test system), re-linking `rptman`
and adding a list entry to `report_val.dss` (`dss -d`) — system integrator work, not practiced.
## 6. Interactive mode (§4) and stopping (§5)
`rptgen -s rptgen.rpt` starts a foreground generator (prompt `RPT>`); end with `QUIT;`. Useful to
try RQL and inspect datasets without defining a report. `rptstp rptge1` cancels the running
report of `RPTGE1` (also the *Cancel* button / `REPORT_DF.CANCEL`).
**Verified 2026-10-01:** piped input works (`rptgen -s rptgen.rpt < query.rql`), set
`SET @NEXT 0;` first or every page waits for Enter. `rptstp rptge1` stopped an endless loop
report within seconds; `GENERATE` went back to 0, an empty generated report was stored, the
generator stayed running and took the next report normally. Task: skill `reporting`.
**Verified on R1.05 (2026-10-09, read-only):** a piped query file starting with
`SET @NEXT 0; SET @PAGE_SIZE 0;` and ending with `QUIT;` ran and ended normally; `@VERSION` =
`1.05.00`. `rptstp` not re-tested (shared server).