Domino 9 und frühere Versionen > Entwicklung

formel problem mit @Contains

(1/2) > >>

gentleman:
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

Semeaphoros:
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")

gentleman:

--- Zitat von: Semeaphoros am 13.09.04 - 17:01:24 ---@Contains(@UserRoles;"[Markt]") & @Contains(dok_status;"4. Abgeschlossen")
--- Ende Zitat ---

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

Glombi:
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

gentleman:
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

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln