Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: gentleman am 13.09.04 - 16:38:27
-
hi,
ich benötige eine formel, die folgende kriterien erfüllen muss.
(die formel dient zum verbergen einer aktion, wenn diese bedingungen erfüllt sind...)
1.... @Contains(@UserRoles;"[Markt]")
...... der user muss also die rolle markt besitzen
2.... @Contains(dok_status;"4. Abgeschlossen")=1
...... das feld dok_status muss auf 4. Abgeschlossen stehen
habs so probiert:
@Contains(@UserRoles;"[Markt]");
@Contains(dok_status;"4. Abgeschlossen")=1
hier nimmt er mir allerdings nur die 2te zeile an.
d.h. auch eine andere rolle sieht diesen button, obwohl sie nicht die rolle markt besitzen.
vielen dank schonmal :)
marc
-
Na ja, in einer Formel wird immer der zuletzt ausgewertete Ausdruck als Resultat zurückgegeben. Wenn Du also einfach 2 Ausdrücke hintereinander stellst, geht der erste spurlos verloren. Was Du brauchst, ist entweder eine "Oder" Verbindung (mit dem Pipe-Zeichen | dargestellt) oder eine "Und" Verbindung (mit dem Apmersand & ) dargestellt. Da ich Deine Bedingung nicht so ganz präzis interpretieren kann, hier mal nur eine Vermutung, dass Du ein "Und" brauchst, etwa so:
@Contains(@UserRoles;"[Markt]") & @Contains(dok_status;"4. Abgeschlossen")
-
@Contains(@UserRoles;"[Markt]") & @Contains(dok_status;"4. Abgeschlossen")
hi,
danke für die antwort.
also was ich brauch is folgendes:
ich habe 2 rollen: markt und marktfolge
zudem hab ich für jedes dokument ein statusfeld - dieses geht bis 4. Abgeschlossen
ich habe nun eine aktion erstellt.
in dem eigenschaften feld unter "aktion verbergen wenn formel:" muss nun die formel rein.
diese aktion sollen allerdings nur die leute von marktfolge sehn, also:
@Contains(@UserRoles;"[Markt]");
und diese aktion soll marktfolge nur im status 1-3 sehen (nich in status 4. Abgeschlossen), also so:
@Contains(dok_status;"4. Abgeschlossen")=1
aber leider funktioniert das ganze mit deiner & formel auch ned...
vielen dank für die hilfe :)
marc
-
So muss es sein:
!(@Contains(@UserRoles;"[Markt]") & !@Contains(dok_status;"4. Abgeschlossen"))
Am besten ist es bei Hide - When so heranzugehen: Wann will ich das sehen und damit den Ausdruck basteln.
Anschließend ein Klammer drumherum und ein ! (= Negierung) voran und fertig ist es!
TMC wird dazu bald was in den Best Practices veröffentlichen... Es lohnt sich, das zu verinnerlichen!
Andreas
-
SUPER!!!!
vielen vielen dank, funktioniert.
nur komisch is dass es so nich funktioniert:
!(@Contains(@UserRoles;"[Markt]") & !@Contains(dok_status;"4. Abgeschlossen"))
sondern so:
!(@Contains(@UserRoles;"[Marktfolge]") & !@Contains(dok_status;"4. Abgeschlossen"))
da drehts anscheinend bei der ersten formel was um...
aber so gehts :)
danke
marc
-
SUPER!!!!
vielen vielen dank, funktioniert.
nur komisch is dass es so nich funktioniert:
!(@Contains(@UserRoles;"[Markt]") & !@Contains(dok_status;"4. Abgeschlossen"))
sondern so:
!(@Contains(@UserRoles;"[Marktfolge]") & !@Contains(dok_status;"4. Abgeschlossen"))
da drehts anscheinend bei der ersten formel was um...
aber so gehts :)
danke
marc
Das heisst doch nichts anderes, als dass die Rolle nicht [Markt], sondern [Marktfolge] heisst ...
Bernhard