Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Christian97 am 17.04.03 - 12:42:59
-
Hallo,
ich möchte eine Schältfläche für verschiedene User verbergen.
Die User sind den Zugriffsfunktionen [Gruppe1] und [Gruppe2] zugeordnet.
Der Button soll nicht angezeigt werden, wenn der User keiner der beiden Gruppen zugeordnet ist. Er soll aber angezeigt werden, sobald ein User entweder Gruppe1 oder Gruppe2 Mitglied ist. Es gibt aber keinen Benutzer, der beiden Gruppen gleichzeitig zugeordnet ist.
Ich brauche also sowas wie eine XOR Funktion, da das normale ODER (|) sonst alle User aussperrt, die nicht in beiden Gruppen eingetragen sind.
Habt Ihr eine Idee oder einen geeigneten Workaround?
-
vPos1:=@if(@ismember("ABC";Feld1) & !@ismember("ABC";Feld2);1;0);
vPos2:=@if(!@ismember("ABC";Feld1) & @ismember("ABC";Feld2);1;0);
vResult:=vPos1+vPos2;
@if(vResult>0;"OK";"NJET")
Test auf "ABC":
Feld1 = ABC
Feld2 = ABC
vPos1 = 0
vPos2 = 0
=> njet
Feld1 = ABC
Feld2 = XYZ
vPos1 = 1
vPos2 = 0
=> ok
Feld1 = XYZ
Feld2 = ABC
vPos1 = 0
vPos2 = 1
=> ok
Feld1 = 123
Feld2 = XYZ
vPos1 = 0
vPos2 = 0
=> njet
müßt passen also, oder hab ich was übersehen auf die Schnelle?
-
Hy,
ungefähr so:
@IsNotMember("[Gruppe1]";@UserRoles) & @IsNotMember("[Gruppe2]";@UserRoles)
Cu
Martin
-
Unter der Voraussetzung, das du von Benutzerrollen redest:
Probier doch mal folgendes:
@IsNotMember("[Gruppe1]";@UserRoles) & @IsNotMember("[Gruppe2]";@UserRoles) ;
-
Vielen Dank Euch dreien!
@Rob
Deine Lösung ist GENAU DIE, die ich wollte. Vielen Dank!!
@meichhorner, Harvey:
Eure Lösung ist leider keine XOR Variante, sondern nur das normale logische ODER. Dort ist wahr, wenn mindestens eins der beiden wahr ist, also auch, wenn beide zutreffen. Das logische XOR (umgangssprachlich "entweder oder") ist nur dann wahr, wenn die beiden Aussagen verschieden sind. Und das war, was ich suchte.
Vielen Dank!
-
Auch auf die Gefahr hin, als Besserwisser zu Gelten:
Es ist keine Oder-Verknüpfung mehr. Dadurch sollte es funzen.
@meichhorner:
Da klingelt nur mal das Telefon und Zack, ist schon wieder einer schneller ;)
Spricht für das Forum, bald ist es soweit, das Fragen schon beantwortet sind, bevor sie gestellt werden ;D
-
@Harvey:
Du geltest nicht als Besserwisser, aber der Sachverhalt ist ganz schön verzwickt. Du hast zum Teil recht, denn es ist keine Oder-Verknüpfung mehr. Aber Deine Und-Verknüpfung trifft nur dann zu, wenn der User weder in Gruppe1, noch in Gruppe2 ist. Es soll aber wahr sein, wenn der User genau einer der beiden Gruppen enthalten ist.
-
@Harvey
tja, HideWhen Formeln ist eben immer ein gern diskutiertes Thema ;)
Nächstes mal rufst mich eben an, dann gebe ich dir einen Vorsprung ;D ;D ;D
Cu
Martin
-
@Christian97:
Was soll denn passieren, wenn ein User in beiden Rollen enthalten ist?
Du sagtest, das ein User nicht in beiden Rollen steht, aber andererseits legst du Wert darauf, das genau dieser Umstand berücksichtigt wird?!?
-
Ja, stimmt, dann hab ich das falsch geschrieben gehabt. Sorry!
Zwei Nutzergruppen (A und B) haben ihre eigenen Rollen ([RolleA] und [RolleB]). Weiterhin gibt es eine Gruppe C, die die Rolle [RolleC] zugewiesen hat. Die User Gruppen A und B haben aber teilweise auch die [RolleC]. Genau da setzt nun das Problem an: Ich will den Usern der Gruppen A und B erlauben, den Button zu sehen, aber nur denen, die auch die [RolleC] haben.
Ganz schön wirr, aber so funktioniert das bei mir. ;)
-
.