Domino 9 und frühere Versionen > ND6: Entwicklung

Auswertung aus einer Dialogliste

(1/2) > >>

cebolina:
Hallo @All,

Ich habe folgendes Problem:

Als Auswahl in einer Dialogliste (Mehrfachwerte zulassen) stehen folgende Werte zur Verfügung:
Text1|1
Text2|2
Text3|3
...
Text7|7

Bei Auswahl von "Text2" und "Text4" werden im Feld also nur die Aliasse (Bsp.: "2" ; "4") gespeichert.

Jetzt möchte ich in einem anderen (berechneten) Feld erreichen, dass folgendes enthalten ist:
"0#1#0#1#0#0#0"

Ich möchte also wissen, welche Elemente meines Quellfeldes ausgewählt wurden und welche eben nicht (0 = nein, 1= ja).
Also in meinem Besipiel: "Text1" = nein, "Text2" = ja, "Text3" = nein, "Text4" = ja, "Text5" bis "Text7" = nein.
Das Ganze soll in einem einfachen Text-Feld erfolgen (also keine Mehrfachwerte).
Die "#" soll lediglich als Trennzeichen fungieren. Ich brauche diese Information übrigens später für weitere Berechnungen in meinem Dokument.

Kann mir bitte jemand auf die Sprünge helfen, wie man sowas macht? Mir fehlt irgendwie der richtige Lösungsansatz und ich weiß auch nicht so recht wonach ich im Forum suchen soll.

Danke und Gruß
Stefan


Joe:
Hallo Stefan,

wie wär's mit so etwas als Formel für das Textfeld:

@If( @Contains(Dialogliste;"1");"1";"0")+"#"+
@If( @Contains(Dialogliste;"2");"1";"0")+"#"+
@If( @Contains(Dialogliste;"3");"1";"0")+"#"+
@If( @Contains(Dialogliste;"4");"1";"0")+"#"+
@If( @Contains(Dialogliste;"5");"1";"0")+"#"+
@If( @Contains(Dialogliste;"6");"1";"0")+"#"+
@If( @Contains(Dialogliste;"7");"1";"0")

Nur mal so grob hingeworfen! ;-)

Gruß Joe

m3:
Text|1
Text|2
...

in ein verstecktes Multifavlue Feld schreiben und von dort in der Dialogleiste verwenden.

Dann kannst Du in einem anderen Feld mit ein paar @-Formeln (@left, @right, ...) den String so hin bekommen, wie Du ihn willst.

cebolina:
@Joe

Zunächst mal vielen Dank. Die Formel funktioniert und gibt mir das gewünschte Ergebnis zurück. :D

Jetzt muss ich das Ganze nur noch in eine Schleife packen, weil die Anzahl der Elemente in der Dialogliste von Dokument zu Dokument unterschiedlich sein kann (sorry, habe ich in meinem ersten Posting nicht geschrieben).

Gruß
Stefan

m3:
Eleganter:

Ein Multivalue-Textfeld "Werte", in das die einzelnen Werte stehen, die Dialogliste holt sich die Werte aus dem Feld.
Und in dem Computed Field steht dann nur noch:


--- Code: ---y := @RightBack(Werte; "|") ;
z := @Transform(y; "x"; @If(x = Dialogliste; "1"; "0") );
@Implode( z; "#")
--- Ende Code ---

Keine endlosen @If-Wüsten.  :)

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln