[Gelöst] RTC: Berechtigung auf Action einschränken?

14. Mai 2014 12:08

Hallo,

wir haben eine sehr nützliche Funktion, mit der man aber auch viel kaputt machen kann wenn man sich nicht auskennt. Deshalb möchte ich gerne, dass nur ausgewählte Nutzer die Funktion ausführen dürfen.
Sie ist in der Page als Action verlinkt. Kennt jemand eine Möglichkeit, dass nicht jeder Nutzer die Funktion sieht bzw. ausführen kann?

UGo
Zuletzt geändert von UGo am 29. Juli 2014 12:54, insgesamt 1-mal geändert.

Re: RTC: Berechtigung auf Action einschränken?

14. Mai 2014 12:44

Actions verfügen über eine Enabled-Eigenschaft. Hier kannst du statt TRUE oder FALSE auch eine Boolean-Variable einsetzen (deklariert mit Eigenschaft IncludeInDataset = Yes), welche du per Quelltext (z.B. im OnOpenPage) auf True oder False setzt.
Das Gleiche funktioniert auch mit Visible. Ich persönlich bevorzuge bei sowas Enabled.

Re: RTC: Berechtigung auf Action einschränken?

14. Mai 2014 15:35

Hallo,

vorher sollte man in der "Benutzer Einrichtung" Tabelle ein neues Feld anlegen, um die Berechtigung überhaupt an die entsprechenden Benutzer zuzuweisen.

Entweder steuert man die Action nun mit Enable (wie es Natalie beschrieben hat), oder lässt die Action aktiv und gibt einen harten Fehler aus, falls der User dies nicht darf.
Im Code dann natürlich das neue Feld (Boolean) für die Berechtigung abfragen :-)


Gruß
Aydin

Re: RTC: Berechtigung auf Action einschränken?

19. Mai 2014 12:25

Vielen Dank für die schnelle Hilfe! Das Problem mit der enabled-Eigenschaft zu lösen finde ich sehr elegant. Kann man statt der Benutzerebene evtl. auch eine bestimmte Rolle zur Abfrage der Rechte nutzen?

Re: RTC: Berechtigung auf Action einschränken?

19. Mai 2014 17:38

Hallo,

sollte auch gehen.

Um von dem User die Zugriffrechte/Rolle abzufragen gibt es soweit ich weiß in der Codeunit 8705 "Mobile Permission Management" Beispiele dafür.
Man müsste die entsprechenden Tabellen im Code halt abfragen.


Gruß
Aydin