ci-server-engineer/.claude/skills/item-engineering/tasks/block-item.md
cliu 48426a0a14 R1.05 write tests V9, V10, V12, V15 on the shared test server
With the user's approval: item blocking and string length, alarm raise /
acknowledge / delay / repeat and INFO event, report generate / print /
item trigger / rptstp / SPOOL, class change and reset and attribute
change. All results match R1.03 (ISS-028 still holds). Everything was
removed again; before/after snapshot identical. ISS-129 and ISS-158
closed. Test package saved in examples/CI-Eng-Sample/shared/write_test;
snapshot.ps1 now removes the dss_*.tmp files its own exports leave.

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

43 lines
2.2 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.

---
task: Block / unblock an item and write to a blocked item
version: R1.05 (first written for R1.03)
source: IM 36K10G10-01EN 5th ed. (Feb. 2026) §3.3, §3.4; IM 36K10C10-01EN 5th ed. (Feb. 2026) §3.4, §3.5; practiced with CI-Eng-Sample 2026-09-30 (R1.03)
status: verified on R1.03 (2026-09-30); on R1.05 the BLOCKED fields of SECTION_DF, ITEM_DF and ITEM_VAL and the option bits are unchanged (checked 2026-10-08, read-only); blocking and writes to a blocked item not re-tested on the shared R1.05 test server, re-test awaits a decision (ISS-129) Re-tested on R1.05 2026-10-09 on the shared test server with the user's approval (temporary sample records, everything removed, before/after snapshot identical): block, silent ignore without -o, write with -o, unblock leaves ublk (V9).
---
# Block / unblock an item
A blocked item is not updated (e.g. during device maintenance). Blocking can be done per item,
sub-item or section; sub-items of a blocked item keep working. **Changes live behaviour:**
follow the user's chosen way of working.
Block (`BLOCKED` 1) or unblock (`BLOCKED` 0) with an update file and `dssqld -m`:
```
@FIELDS
NAME,BLOCKED
@ITEM_DF
"<Section>.<Tag>",1
```
```
dssqld -m block.qli -l block.qlo
```
(Engineering Module: right-click the item or section › *Block/Unblock*.)
## Behaviour (verified on R1.03 with `CI-Eng-Sample.TANK1.INFLOW`)
- Blocked: option flag `blk` appears in `itmval -g`; the status number is unchanged (stayed 9).
- `itmval -p -n <item> -v <value>` on a blocked item is **silently ignored** (exit code 0, no
message, value unchanged); so is `dssqld -m` on `ITEM_VAL.ITEM_VALUE` (reports *Modified*, 0
errors). Check `blk` in `itmval -g` before writing (`knowledge/issues.md` ISS-011). Add `-o` to overwrite:
`itmval -p -n <item> -v <value> -o`.
- After unblocking, `blk` is gone but `ublk` (option bit 16, *updated blocked*) remains: the
item was written by an application (`itmval -o`) while it was blocked (IM 36K10C10 §3.5,
ISS-001).
R1.05 (re-tested 2026-10-09, V9): same behaviour. `CI-Eng-Sample.TANK1.INFLOW` blocked → option
`blk`, status 9; `itmval -p … -v 77` exit 0, value unchanged; `-o` wrote 88 and added `ublk`; after
unblocking `blk` was gone and `ublk` stayed.