$object.canRead()
canRead($object)
Prüft, ob der aktuell angemeldete Nutzer das angegebene Objekt lesen darf, und liefert einen Wahrheitswert.
Im Gegensatz zur impliziten Berechtigungsprüfung beim Attributzugriff (die für ein nicht lesbares Objekt den leeren Wert liefert) schlägt diese Funktion nie fehl und filtert nicht. Sie erlaubt es einem Skript, bei fehlenden Rechten explizit zu verzweigen – etwa um für nicht anzeigbare Objekte einen alternativen Ablauf umzusetzen.
Die Prüfung erfolgt für den aktuell angemeldeten Nutzer und folgt denselben Regeln wie die implizite Berechtigungsprüfung: standardmäßige Verweigerung, Rollenvererbung entlang der Sicherheitshierarchie sowie Vollzugriff für Administratoren oder Ausführungen im Systemkontext.
| Name | Typ | Typbeschreibung | Pflicht | Standardwert |
|---|---|---|---|---|
| object | Fachobjekt | Das Objekt, dessen Lesezugriff geprüft wird. | ja |
Typ: Wahrheitswert
true, wenn der aktuelle Nutzer das Objekt lesen darf, sonst false (insbesondere für null).
all(`my.module:Contract`).filter(c -> $c.canRead())
Ausgabe: Alle Verträge, die der angemeldete Nutzer lesen darf.
if($contract.canRead(), $contract.get(`my.module:Contract#name`), "(nicht sichtbar)")
Ausgabe: Der Vertragsname, falls lesbar, sonst ein Platzhalter – ohne einen Berechtigungsfehler auszulösen.