Zum Hauptinhalt springen

UrmPermGetRaw

obj -> UrmPermGetRaw(alpha1, int2) : bigint

Ausführbar von Clients mit grafischer Oberfläche Ausführbar vom Server Ausführbar von Clients mit Programmierschnittstelle Ausführbar von der Web-Schnittstelle Ausführbar vom Druckprozessor Ausführbar von der ODBC-Schnittstelle Ausführbar vom SOA-Service

Alle Rechte ermitteln

Details

Mit dieser Anweisung kann ermittelt werden, welche Berechtigungen auf einer Elementgruppe der eigene Benutzer oder eine Benutzergruppe zugesichert oder entzogen bekommen hat.

  • Rechte einer Benutzergruppe ermitteln Der Deskriptor der Benutzergruppe wird in (obj) übergeben. In (alpha1) wird der Name der Elementgruppe angegeben, deren Rechte ermittelt werden sollen.
  • Die eigenen Rechte ermitteln Um die eigenen Berechtigungen zu ermitteln, wird als Deskriptor in (obj) 0 übergeben. Dabei werden dann die effektiven Rechte überprüft, die sich aus der Kombination der Rechte aller Benutzergruppen zusammen setzt, der der Benutzer zugeordnet ist. Der Name der Elementgruppe wird in (alpha1) übergeben. Es können nur die erlaubten Rechte (_UrmAllow) ermittelt werden.

In (int2) wird angegeben, ob die zugesicherten (_UrmAllow) oder die entzogenen (_UrmDeny) Rechte ermittelt werden sollen.

Das Resultat entspricht einem Bit-Muster, das an den Stellen auf 1 gesetzt ist, an denen das betreffende Recht auf den übergebenen Modus gesetzt ist. Zur Abfrage der Rechte stehen folgende Konstanten zur Verfügung:

Die Berechtigungen der alten Benutzerverwaltung können mit Hilfe von _UrmOldPerm...-Konstanten ermittelt werden. Die Konstanten sind im Abschnitt Konvertierung des alten Benutzersystems zusammengefasst.

Sind eigene Rechte definiert, können zusätzlich die _UrmPermUser...-Konstanten verwendet werden.

Beispiel

// Überprüfung der eigenen Rechte
if (UrmPermGetRaw(0, 'Customer', _UrmAllow) & _UrmPermRead > 0\b)
{
// Anzeige der Datensatzinformation
...
}

// Kombination von Rechten
tRights # _UrmPermRead | _UrmPermCreate | _UrmPermModify;
if (UrmPermGetRaw(0, 'Customer', _UrmAllow) & tRights = tRights)
{
// Änderungsdialog aufrufen
...
}

Mögliche Laufzeitfehler: