action im action menu sperren

  • Ich bin gerade dabei ne DB in Notes 6 zu basteln und bin dabei jetzt auf folgendes Problem gestoßen. Ich möchte gern, dass eine Action im Menü (Action) nur für bestimmte Rollen zu sehen ist. Momentan hab ich es wohl so eingetellt, dass niemand die Action durchführen kann.
    Mir kam die Idee, dass ich die Action natürlich sperren kann (Hide action if formula ist true). Allerdings weiß ich nicht genau, wie ich dann weiter vorgehen muss.
    Die Action soll gesperrt werden für Benutzer der Rolle "Reader".
    Ist dies so richtig? oder lieg ich da völlig daneben???


    @If(@IsMember(@UserRoles ;"Reader"))


    Wäre nett, wenn mir jemand kurz helfen könnte.


    Danke.

  • @UserRoles gibt eine Wertliste zurück .....also höchstens @Contains("[Reader]"; @UserRoles).... was hast Du an @IsNotMember auszusetzen ...??

    [size=x-small]
    Computer sind da um zu rechnen!
    Nicht um Ausreden wie: "Ich kann nicht durch Null teilen!", auf den Bildschirm zu schreiben.
    [/size]

  • anscheinend funktioniert die ganze sache nicht so, wie ich möchte.


    denn mit dieser zeile


    @If(@IsMember(@UserRoles ;"[Reader]"))


    unter der Bedingung "Hide Action if formula is true"


    können Mitglieder der Gruppe "Manager" diese Action dennoch nicht sehen. Was habe ich also falsch gemacht, das es nicht funktioniert? Ist es irgendein kleiner Fehler oder ist die Formel doch komplett falsch?


    danke, wenn ihr mir helfen könnt.

  • Es heisst ja "Hide Action if formula is true"


    Das bedeutet wenn Du einfach die Formel "@IsNotMember("[Reader]"; @UserRoles)" nimmst dann ist die Formel wahr wenn der aktuelle User nicht diese Rolle hat.

    [size=x-small]
    Computer sind da um zu rechnen!
    Nicht um Ausreden wie: "Ich kann nicht durch Null teilen!", auf den Bildschirm zu schreiben.
    [/size]

  • okay. danke für die Hilfe.


    geht es auch so?


    @If(@Name([CN] ; @UserName) ="Reader")


    denn ich habe in meiner DB 3 "Nutzer" --> dies sind Gruppen. In einer externen DB auf meinem Server deklariere ich dann wer Mitglied in welcher Gruppe ist.
    Deshalb habe ich keine Rollen in meiner DB deklariert sonder Nutzer als Gruppen, da es nicht gestattet ist einzelne User direkt in der ACL meiner DB zuzulassen.

  • Hi,


    Erst spricht Du von Roles und jetzt auf einmal sind es Gruppen.


    Auch habe ich hiezu von meiner seite noch eine kleine Frage:


    Bist Du Dir sischer, dass diese Formel funktioniert?


    @UserName liefert z.B. Hans Mueller/Ext/ASC/ASCABG/DE
    @Name([CN]; @UserName) liefert in diesem Fall Hans Mueller


    Angewand auf Deine Formel wuerde es heissen,


    Verberge Aktion, wenn Hans Mueller = Reader ist :-?


    Andreas

  • okay. sorry, wenn ich mich da etwas falsch ausgedrückt hatte. Ich hatte halt in der Hilfe von Notes ein wenig gesucht und jetzt diese 2 Beispiele gefunden. Wie müsste es denn nun richtig heißen, wenn ich eine Action für die Gruppe "Reader" sperren möchte...

  • Unter der Voraussetzung, dass die Gruppe "Reader" auch wirklich nur Leser sind, versteckt dieses Konstrukt

    Code
    @TextToNumber(@Subset(@UserAccess(@DbName); 1)) <= 2


    die Aktion vor allen Lesern und niedriger

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl