changed: Soll-/IST-Profile

This commit is contained in:
Edmond Gebara 2026-07-08 13:52:11 +02:00
parent 582e36b05c
commit afc61308c7
2 changed files with 16 additions and 1 deletions

View file

@ -103,6 +103,19 @@ per institute (down from 10 h; do not regress this).
- **Out vs Neu list Add targets:** adding a line to the wrong collection
duplicated every FS creation row. The Neu list is derived now, but the same
copy-paste class applies to the four remaining lists.
- **Verify ALL FOUR outputs after any Work-file change — not just one.** A sorted
multiset compare of a single output (e.g. Ist-MitarbeiterProfile) can be
byte-identical while a sibling (Soll-Profile) silently diverges. Seen: the
AppAccess `ProfilName` flipped from `"Anwendungszugriff <name>"` to the AD
description because a source-column read changed `$item.'Beschreibung'` (a
column that does NOT exist in `*_Anwendungen.csv` → always `$null` → empty →
fell through to the intended default) to `$item.'Beschreibung (256 Zeichen)'`
(the real, populated column). Ist / GruppenAnlegen / Gruppenverwaltung matched
exactly; only Soll-Profile differed — cols 3+6 of the 638 AppAccess rows.
Corollary: **a read of an absent column is load-bearing "always-empty"
behavior.** Do not "fix" a phantom column name to the real one without checking
the downstream `if (-not $x)` default it feeds; set the value to `""` explicitly
instead so a future rename can't resurrect the bug.
- **Prefix filter (Anwenderrollen):** `R125GUX*`/`<SPKID>GUX*` objects fall
THROUGH (original cascade had an empty first branch). The explicit
`StartsWith` check preserves this regardless of the prefix CSV content.