ISS-048: report item prompt filter works (ITEM_DF filter on items)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
c98a33b736
commit
647777e975
4 changed files with 12 additions and 6 deletions
|
|
@ -134,8 +134,12 @@ Engineering Module (checked by the user 2026-10-01): the forms show the loaded f
|
||||||
*Report destination* = `DEST_NAME`, no field for `ADHOC_DEST`; Query with Structure / Keywords /
|
*Report destination* = `DEST_NAME`, no field for `ADHOC_DEST`; Query with Structure / Keywords /
|
||||||
Datasets panes; Time scheduling with *Correct for daylight saving*; Item triggering). Right-click ›
|
Datasets panes; Time scheduling with *Correct for daylight saving*; Item triggering). Right-click ›
|
||||||
*Generate* opens a dialog with *Destination* (preset `<None>`, `ADHOC_DEST` is not pre-selected) and
|
*Generate* opens a dialog with *Destination* (preset `<None>`, `ADHOC_DEST` is not pre-selected) and
|
||||||
one field per parameter prompt; an `[ITEM:…]` prompt gives an item tree browser, but the filter did
|
one field per parameter prompt; an `[ITEM:<filter>]` prompt gives an item tree browser. The
|
||||||
**not** limit it (whole tree shown, ISS-048). The run is made by the logged-in user (`ADMIN`, process
|
filter is an `ITEM_DF` filter (DSS syntax) added with `AND` for each tree node: all sections and
|
||||||
|
objects stay visible, but only matching items (and their sub-items) appear and can be picked.
|
||||||
|
Verified by the user: `NAME like "<Section>.*"`, `NAME like "*.L*"`, `DESCRIPTION like "Tank 1*"`
|
||||||
|
work; `%` is not a wildcard and `NAME = "….*"` matches nothing (no items, no error);
|
||||||
|
`SECTION = …` is not an `ITEM_DF` field (`DSS-E-FLT_SYN_ERR` on every expand) (ISS-048). The run is made by the logged-in user (`ADMIN`, process
|
||||||
`JHMISET…`) and printed to the chosen destination without errors. Generated reports are listed under
|
`JHMISET…`) and printed to the chosen destination without errors. Generated reports are listed under
|
||||||
the report by local time; *View* has its own *Destination* box and *Export…*; HTML reports render as
|
the report by local time; *View* has its own *Destination* box and *Export…*; HTML reports render as
|
||||||
HTML.
|
HTML.
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,8 @@ ENGLISH
|
||||||
! Report names: at most 16 characters.
|
! Report names: at most 16 characters.
|
||||||
!
|
!
|
||||||
! CIENG_TANK1 : values of all TANK1 items plus last-hour statistics of one item (parameter
|
! CIENG_TANK1 : values of all TANK1 items plus last-hour statistics of one item (parameter
|
||||||
! @p0, chosen in an item browser; its filter does not limit it, ISS-048); daily at 06:00.
|
! @p0, chosen in an item browser that shows only TANK1 items; sections stay
|
||||||
|
! visible, ISS-048); daily at 06:00.
|
||||||
! The activation time lies in the past; CI Server moves it to the next 06:00.
|
! The activation time lies in the past; CI Server moves it to the next 06:00.
|
||||||
! CORRECT_DAYLIGHT 1 keeps 06:00 across daylight-saving changes (with 0 the
|
! CORRECT_DAYLIGHT 1 keeps 06:00 across daylight-saving changes (with 0 the
|
||||||
! interval runs in UTC and 06:00 in January became 05:00 in October).
|
! interval runs in UTC and 06:00 in January became 05:00 in October).
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,7 @@ development system (see "Test system" in `progress.md`); they do not exist on ot
|
||||||
| ISS-045 | 2026-10-01 | REPORT (ad hoc from `dssqld`) | Generating ad hoc with `REPORT_DF.GENERATE` = 1 from `dssqld` (user `FULL AUTHORIZATION`) on a report without `ADHOC_DEST` logs `FSL-E-PRT_UNKUSER, Job submitted by unknown user (FULL AUTHORIZATION)` and `RPT-I-TRYPRINT` in `umhlog.log`; the generated report is stored normally. Phase 12 correction (2026-10-01): with `ADHOC_DEST` set the same error appears and nothing is printed (`CIENG_AUDIT`, `CIENG_TANK1` after a sample reload); the same report generated from the Engineering Module as `ADMIN` printed to `CIENG_FILE`. Related to the R1.03 known issue on report generation and default printers (IM 36K01A50, REPORT 1.11). | closed | Workaround documented: generate from the Engineering Module when printed output is needed (as `ADMIN` with destination `CIENG_FILE` it printed without errors, phases 11 and 12); runs from `dssqld` are stored but never printed, `ADHOC_DEST` does not help. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `.claude/skills/reporting/tasks/define-reports.md` §2; `knowledge/manuals/IM36K10C30-01EN.md` §6 |
|
| ISS-045 | 2026-10-01 | REPORT (ad hoc from `dssqld`) | Generating ad hoc with `REPORT_DF.GENERATE` = 1 from `dssqld` (user `FULL AUTHORIZATION`) on a report without `ADHOC_DEST` logs `FSL-E-PRT_UNKUSER, Job submitted by unknown user (FULL AUTHORIZATION)` and `RPT-I-TRYPRINT` in `umhlog.log`; the generated report is stored normally. Phase 12 correction (2026-10-01): with `ADHOC_DEST` set the same error appears and nothing is printed (`CIENG_AUDIT`, `CIENG_TANK1` after a sample reload); the same report generated from the Engineering Module as `ADMIN` printed to `CIENG_FILE`. Related to the R1.03 known issue on report generation and default printers (IM 36K01A50, REPORT 1.11). | closed | Workaround documented: generate from the Engineering Module when printed output is needed (as `ADMIN` with destination `CIENG_FILE` it printed without errors, phases 11 and 12); runs from `dssqld` are stored but never printed, `ADHOC_DEST` does not help. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `.claude/skills/reporting/tasks/define-reports.md` §2; `knowledge/manuals/IM36K10C30-01EN.md` §6 |
|
||||||
| ISS-046 | 2026-10-01 | DATABASE (`dssqld` memo) | A memo field loaded from a file (`@"<file>"@`, IM 36K10L50 §3.10) fails with a relative name (`CRL-E-ENOENT`, the file is read on the server side) and with a long absolute path (`DSSG-E-STRBUFSMAL`, buffer 83); a short absolute path works. The manual gives no limits. | closed | Documented: use inline memos, or an absolute path ≤ 82 characters. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `.claude/skills/system-management/tasks/dss-tools.md` §2; `knowledge/manuals/IM36K10L50-01EN.md` §4 |
|
| ISS-046 | 2026-10-01 | DATABASE (`dssqld` memo) | A memo field loaded from a file (`@"<file>"@`, IM 36K10L50 §3.10) fails with a relative name (`CRL-E-ENOENT`, the file is read on the server side) and with a long absolute path (`DSSG-E-STRBUFSMAL`, buffer 83); a short absolute path works. The manual gives no limits. | closed | Documented: use inline memos, or an absolute path ≤ 82 characters. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `.claude/skills/system-management/tasks/dss-tools.md` §2; `knowledge/manuals/IM36K10L50-01EN.md` §4 |
|
||||||
| ISS-047 | 2026-10-01 | REPORT (RQL manuals) | The manuals disagree: default `@WORKSPACE` 500 KB (IM 36K10R40 §2.2.2) vs 16 KB (IM 36K10C30 table 2.1-1, IM 36K10P20 §9.6); maximum `@WIDTH` 512 (R40, P20 §4) vs 5000 (P20 §9.6); `@FORMFEED` described with opposite meanings (C30: not 1 = form feed; P20: 0 = blank lines, default 1). Installed set-up files set `@workspace` explicitly (500 in `rptge1.rpt`, 100 in `rptgen.rpt`) and `@formfeed 0` for the interactive generator. | closed | Not tested (no printer); the set-up files make the defaults irrelevant in practice. Closed 2026-10-01 (confirmed by user). | `knowledge/manuals/IM36K10R40-01EN.md` §2; `knowledge/manuals/IM36K10P20-01EN.md` §3 |
|
| ISS-047 | 2026-10-01 | REPORT (RQL manuals) | The manuals disagree: default `@WORKSPACE` 500 KB (IM 36K10R40 §2.2.2) vs 16 KB (IM 36K10C30 table 2.1-1, IM 36K10P20 §9.6); maximum `@WIDTH` 512 (R40, P20 §4) vs 5000 (P20 §9.6); `@FORMFEED` described with opposite meanings (C30: not 1 = form feed; P20: 0 = blank lines, default 1). Installed set-up files set `@workspace` explicitly (500 in `rptge1.rpt`, 100 in `rptgen.rpt`) and `@formfeed 0` for the interactive generator. | closed | Not tested (no printer); the set-up files make the defaults irrelevant in practice. Closed 2026-10-01 (confirmed by user). | `knowledge/manuals/IM36K10R40-01EN.md` §2; `knowledge/manuals/IM36K10P20-01EN.md` §3 |
|
||||||
| ISS-048 | 2026-10-01 | REPORT (ad-hoc parameters) | The prompt `[ITEM:NAME like "CI-Eng-Sample.TANK1.*"]Item for statistics:` (filter form as in IM 36K10C30 §2.1) gives an item tree browser in the Engineering Module generate dialog, but the tree shows all sections, not only `TANK1` items (checked by the user). | open | Try other filter forms (`%` wildcard, `SECTION = …`, `[ITEM:TAG="…"]`) and the display report component. | `.claude/skills/reporting/tasks/define-reports.md`; `knowledge/manuals/IM36K10C30-01EN.md` §2; `examples/CI-Eng-Sample/18_report_df.qli` comment |
|
| ISS-048 | 2026-10-01 | REPORT (ad-hoc parameters) | The prompt `[ITEM:NAME like "CI-Eng-Sample.TANK1.*"]Item for statistics:` (filter form as in IM 36K10C30 §2.1) gives an item tree browser in the Engineering Module generate dialog, but the tree shows all sections, not only `TANK1` items (checked by the user). | open | Answered 2026-10-01 with a temporary report (removed), checked by the user: the filter is an `ITEM_DF` filter joined with `AND` to each tree node. It **does** limit the items: with `NAME like "CI-Eng-Sample.TANK1.*"` only TANK1 items (incl. `CALC.VOLUME`, `JFLOW.sPerMin`, `LEVEL.MAX`) appear and can be picked; sections and objects always stay in the tree, which is what the first check saw. `NAME like "*.L*"` and `DESCRIPTION like "Tank 1*"` also work; `%` is not a wildcard, `NAME = "….*"` matches nothing, `SECTION = …` gives `DSS-E-FLT_SYN_ERR`. Ready to close. | `.claude/skills/reporting/tasks/define-reports.md`; `knowledge/manuals/IM36K10C30-01EN.md` §2; `examples/CI-Eng-Sample/18_report_df.qli` comment |
|
||||||
| ISS-049 | 2026-10-01 | AUDIT (item option *Audit trailing wanted*) | IM 36K10G10 ch. 9 and the classifier list (IM 36K10L25 App. 1, `ITEM.VALUE.MODIFY.<source>`, `ITEM.HIGH-LIMIT…`) suggest item changes are audited per item when `AUDIT_INFO` = 1. On R1.03.00 none of the tested tools produced an `ITEM.*` event: `itmval -p` writes are not audited at all (with `AUDIT_INFO` 0 or 1); value writes through DSS (`dssqld -m ITEM_VAL`) and Engineering Module *Update value* are audited as dataset events (`ITEM_VAL`, `ITEM_VALUE` / `ITEM_VALUE_STR` / `STATUS`) for every item regardless of `AUDIT_INFO`. Operator-display writes and PROCESS writes (`opc.sup` `AUDIT = YES`, `COMPUTE` classifiers off by default) were not tested (no input field in the sample displays). | open | Test an operator value input on an item with `AUDIT_INFO` 1 (needs a display with an input field) and, if wanted, PROCESS with `AUDIT = YES`. | `.claude/skills/audit-trail/tasks/configure-audit.md` §1; `.claude/skills/audit-trail/tasks/read-audit-trail.md` §2; `knowledge/manuals/IM36K10L25-01EN.md` §3 |
|
| ISS-049 | 2026-10-01 | AUDIT (item option *Audit trailing wanted*) | IM 36K10G10 ch. 9 and the classifier list (IM 36K10L25 App. 1, `ITEM.VALUE.MODIFY.<source>`, `ITEM.HIGH-LIMIT…`) suggest item changes are audited per item when `AUDIT_INFO` = 1. On R1.03.00 none of the tested tools produced an `ITEM.*` event: `itmval -p` writes are not audited at all (with `AUDIT_INFO` 0 or 1); value writes through DSS (`dssqld -m ITEM_VAL`) and Engineering Module *Update value* are audited as dataset events (`ITEM_VAL`, `ITEM_VALUE` / `ITEM_VALUE_STR` / `STATUS`) for every item regardless of `AUDIT_INFO`. Operator-display writes and PROCESS writes (`opc.sup` `AUDIT = YES`, `COMPUTE` classifiers off by default) were not tested (no input field in the sample displays). | open | Test an operator value input on an item with `AUDIT_INFO` 1 (needs a display with an input field) and, if wanted, PROCESS with `AUDIT = YES`. | `.claude/skills/audit-trail/tasks/configure-audit.md` §1; `.claude/skills/audit-trail/tasks/read-audit-trail.md` §2; `knowledge/manuals/IM36K10L25-01EN.md` §3 |
|
||||||
| ISS-050 | 2026-10-01 | AUDIT (classifier `STORAGE`) | Setting `AUDIT_EVENT_CLAS_DF.STORAGE` = 0 for `DATASET.NULL-ATTR.MODIFY.ENT-ENG-MOD` at 17:01:12 did not stop the next `dssqld -m ITEM_VAL` change from being stored (17:01:12.573). IM 36K10L25 §3.2 explains a per-process cache refreshed every `ECL_REFRESH` s (default 1800); the notifier here is `DSSSDA`, so the change should apply within 30 minutes. | closed | Re-tested: at 17:32:18 (after the 30-minute refresh) the same change was **not** stored, so the flag works with a delay. Set back to 1 at 17:32; the next change was still not stored (the cache works in both directions). Documented: allow up to `ECL_REFRESH` (1800 s) or restart CI Server. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `.claude/skills/audit-trail/tasks/configure-audit.md` §1; `knowledge/manuals/IM36K10L25-01EN.md` §3 |
|
| ISS-050 | 2026-10-01 | AUDIT (classifier `STORAGE`) | Setting `AUDIT_EVENT_CLAS_DF.STORAGE` = 0 for `DATASET.NULL-ATTR.MODIFY.ENT-ENG-MOD` at 17:01:12 did not stop the next `dssqld -m ITEM_VAL` change from being stored (17:01:12.573). IM 36K10L25 §3.2 explains a per-process cache refreshed every `ECL_REFRESH` s (default 1800); the notifier here is `DSSSDA`, so the change should apply within 30 minutes. | closed | Re-tested: at 17:32:18 (after the 30-minute refresh) the same change was **not** stored, so the flag works with a delay. Set back to 1 at 17:32; the next change was still not stored (the cache works in both directions). Documented: allow up to `ECL_REFRESH` (1800 s) or restart CI Server. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `.claude/skills/audit-trail/tasks/configure-audit.md` §1; `knowledge/manuals/IM36K10L25-01EN.md` §3 |
|
||||||
| ISS-051 | 2026-10-01 | AUDIT (manual vs installed) | Differences between IM 36K10L25 and R1.03.00: (1) App. 1 lists subject `F/T-SYSTEM`, the installed classifiers use `CI-SERVER` (logins) and also `EAL OPERATION` (subject and action) and source `VIA-OPC-UAS`, not in the manual; 463 classifiers installed. (2) App. 1 explanations of `SHELVE` and `UN-SHELVE` are swapped. (3) `QUESIZE`: manual default and maximum 200 kB, `adtsys.sup` help default 10 kB, minimum 10 (file sets 200). (4) `TIMEFMT` default: manual `DD/MM/YY hh:mm:ss.ppp`, `adtsys.sup` help without `.ppp`; `ADTLOG` output shows milliseconds (manual right). (5) `dssqld` changes are recorded with source `ENT-ENG-MOD`, not `QUICKLOAD`. (6) The selection expression language is not described in the manual; the compiler listing gives the words and operators (no `LIKE`). (7) `ADT` group lifetime 52 weeks on the test system vs 2 days default when `ADTSTO` creates it (§2.1.1). | closed | Documented in the L25 summary and the `audit-trail` skill. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `knowledge/manuals/IM36K10L25-01EN.md`; `.claude/skills/audit-trail/tasks/*.md` |
|
| ISS-051 | 2026-10-01 | AUDIT (manual vs installed) | Differences between IM 36K10L25 and R1.03.00: (1) App. 1 lists subject `F/T-SYSTEM`, the installed classifiers use `CI-SERVER` (logins) and also `EAL OPERATION` (subject and action) and source `VIA-OPC-UAS`, not in the manual; 463 classifiers installed. (2) App. 1 explanations of `SHELVE` and `UN-SHELVE` are swapped. (3) `QUESIZE`: manual default and maximum 200 kB, `adtsys.sup` help default 10 kB, minimum 10 (file sets 200). (4) `TIMEFMT` default: manual `DD/MM/YY hh:mm:ss.ppp`, `adtsys.sup` help without `.ppp`; `ADTLOG` output shows milliseconds (manual right). (5) `dssqld` changes are recorded with source `ENT-ENG-MOD`, not `QUICKLOAD`. (6) The selection expression language is not described in the manual; the compiler listing gives the words and operators (no `LIKE`). (7) `ADT` group lifetime 52 weeks on the test system vs 2 days default when `ADTSTO` creates it (§2.1.1). | closed | Documented in the L25 summary and the `audit-trail` skill. Close when the user confirms. Closed 2026-10-01 (confirmed by user). | `knowledge/manuals/IM36K10L25-01EN.md`; `.claude/skills/audit-trail/tasks/*.md` |
|
||||||
|
|
|
||||||
|
|
@ -44,8 +44,9 @@ lifetime.
|
||||||
Parameter prompt meta-information (makes a pick list in the generate dialog): `[ITEM:<filter>]`,
|
Parameter prompt meta-information (makes a pick list in the generate dialog): `[ITEM:<filter>]`,
|
||||||
`[OBJECT:<class>:<filter>]`, `[DATE]`, `[TIME]`, `[DATE:TIME]`, `[LIST:a:b:c]`, followed by the
|
`[OBJECT:<class>:<filter>]`, `[DATE]`, `[TIME]`, `[DATE:TIME]`, `[LIST:a:b:c]`, followed by the
|
||||||
prompt text, e.g. `[ITEM:NAME like "CI-Eng-Sample.TANK1.*"]Item for statistics:`. **Installed:** the
|
prompt text, e.g. `[ITEM:NAME like "CI-Eng-Sample.TANK1.*"]Item for statistics:`. **Installed:** the
|
||||||
`[ITEM:…]` prompt opens an item tree browser in the generate dialog, but the filter did not limit
|
`[ITEM:…]` prompt opens an item tree browser in the generate dialog; the filter (an `ITEM_DF`
|
||||||
the tree (ISS-048). The installed
|
filter, `*` wildcard, `like`) limits the **items** shown, while sections and objects always stay
|
||||||
|
in the tree (ISS-048, verified). The installed
|
||||||
system reports use lower case (`[item]`, `[date:time]`, `[list:Days:Hours:Minutes]`).
|
system reports use lower case (`[item]`, `[date:time]`, `[list:Days:Hours:Minutes]`).
|
||||||
|
|
||||||
Query editor: *Ctrl+Space* lists keywords, datasets and fields. Basics of RQL (§2.1) are
|
Query editor: *Ctrl+Space* lists keywords, datasets and fields. Basics of RQL (§2.1) are
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue