UrmPermElementGetRaw
UrmPermElementGetRaw(int1, alpha2) : bigint
Element-Rechte ermitteln
Details
- int1: Elementtyp (
_UrmTypeElm...) - alpha2: Name des Elements
- Resultat:
bigintBerechtigungsflags - Siehe: Verwandte Befehle , Benutzerpflege ,
UrmPermElementGet ()
Mit dieser Anweisung können die eigenen Rechte überprüft werden. In (int1) wird der Elementtyp und in (alpha2) der Name des Elementes (siehe Benutzerpflege ) übergeben. Als Rückgabewert kommt ein bigint zurück, das alle Berechtigungsflags als Kombination der folgenden Konstanten enthält:
_UrmPermRead: Berechtigung zum Lesen_UrmPermCreate: Berechtigung zum Erzeugen_UrmPermModify: Berechtigung zum Ändern_UrmPermModifyOwner: Berechtigung zum Ändern bei Objektbesitz_UrmPermDelete: Berechtigung zum Löschen_UrmPermDeleteOwner: Berechtigung zum Löschen bei Objektbesitz_UrmPermExecute: Berechtigung zum Ausführen_UrmPermConfig: Berechtigung zur Änderung der Datenstruktur_UrmPermElmGroupRead: Berechtigung Elementgruppen lesen_UrmPermElmGroupInsert: Berechtigung Element zur Gruppe hinzufügen_UrmPermElmGroupDelete: Berechtigung Element aus Gruppe löschen_UrmPermElmGroupRead: Berechtigung Benutzer zu Benutzergruppe hinzufügen_UrmPermElmGroupInsert: Berechtigung Benutzer aus Benutzergruppe entfernen
Der Programmierer kann eigene Rechte definieren. Dazu stehen ihm die _UrmPermUser-Konstanten zur Verfügung.
Das Ergebnis kann mit den Konstanten verglichen werden und so festgestellt werden, welche Rechte vorhanden sind.
Ist das übergebene Element nicht vorhanden, wird 0 zurück gegeben.
Beispiel
// Darf ich eine Prozedur ausführen?
if (UrmPermElementGetRaw(_UrmTypeElmProcedure, 'LibDbServices') & _UrmPermExecute > 0\b)
{
LibDbServices:RecReorg();
...
}
// Benutzerdefiniertes Element abfragen
tRights # _UrmPermRead | _UrmPermModify;
if (UrmPermElementGetRaw(_UrmTypeElmCustom, 'ModuleCustomer') & tRights = tRights)
{
// Kundenmodul aufrufen
...
}
Mögliche Laufzeitfehler:
_ErrStringOverflow: Es wurde ein zu langer (mehr als80Zeichen) Elementname angegeben.