Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Kadlec am 27.01.06 - 16:49:02

Titel: Problem mit Textliste für Evaluate
Beitrag von: Kadlec am 27.01.06 - 16:49:02
Hallo,

ich möchte in einer Evaluate Formel als Schlüssel mehrere Werte eingeben. Die Werte erhalte ich mit der Formel:

AddOperator = ws.Prompt(PROMPT_OKCANCELLISTMULT, _      ' Dialogbox zum auswählen SPE
         "Auswahl", "Es ist nur ein SPE eingetragen. Um diesen zu löschen musst Du mindestens einen neuen auswählen", "", OperatorList)   

Das Ergebniss ist:
(0)  BK
(1)  JS
 usw.

Für die Evaluate Formel brauche ich aber "BK" : "JS"
Das muss doch mit @Implode / @Explode irgendwie hinhauen oder??

Gruss
Boris
Titel: Re: Problem mit Textliste für Evaluate
Beitrag von: koehlerbv am 27.01.06 - 17:12:35
Wenn Du das Ergebnis aus AddOperator in ein Feld des aktuellen Dokuments schreiben kannst, bist Du fein 'raus - Du kannst Dich im String für Evaluate auf dieses Feld beziehen (Evaluate ("Deine Formel", DeinNotesDokument)

Wenn nicht, kannst Du nicht auf die LS-Variable zurückgreifen und musst diese tatsächlich erst in einer Schleife umbauen:

For iLoop = 0 to Ubound (AddOperator)
    szResult = szResult & {"} & AddOperator (iLoop) & {":}
Next

Das letzte ":" musst Du dann noch tilgen - Code oben ist nur fix hingepinselt.

Bernhard


Titel: Re: Problem mit Textliste für Evaluate
Beitrag von: Kadlec am 27.01.06 - 17:17:44
Ich schreibe das Ergebnis in ein Feld.
Aus diesem lese ich dann auch mit Evaluate die @Elements aus.

Der Versuch diese Feld auch als Key in der @Lookup Formel zu benutzen
schlägt aber fehl.

Boris
Titel: Re: Problem mit Textliste für Evaluate
Beitrag von: Kadlec am 27.01.06 - 17:32:54
Stop ich nehme alles zurück es funktioniert.
Ich habe den Bezug auf das Doc. in der Evaluate Formel vergessen.

Boris
Titel: Re: Problem mit Textliste für Evaluate
Beitrag von: koehlerbv am 27.01.06 - 17:35:57
Hallo Boris,

übergibst Du denn @dbLookup als Schlüssel eine Textliste? Habe ich da etwas missverstanden?
Das nur interessehalber, da es ja jetzt ansonsten funktioniert.

Bernhard
Titel: Re: Problem mit Textliste für Evaluate
Beitrag von: Kadlec am 27.01.06 - 19:00:30
Hi Bernhard,
bin jetzt zwar schon zu Hause aber so sieht der entsprechende Teil
des Agenten aus:

AddOperator = ws.Prompt(PROMPT_OKCANCELLISTMULT, _      ' Dialogbox zum auswählen SPE
         "Auswahl", "Es ist nur ein SPE eingetragen. Um diesen zu löschen musst Du mindestens einen neuen auswählen", "", OperatorList)         
            
doc.TempAddOperator = AddOperator      ' Temp Feld im Doc zum ablegen der Auswahl (AddOperator) wird am Ende wieder gelöscht
AddOperatorQuant = Evaluate({@Elements(TempAddOperator)},doc)
      
LUAddOpName = {T := @DbLookup("Notes":"NoCache";"";"}+LUView+{" ;TempAddOperator";2);@If(@IsError(T);"ERROR";T)}
OpName = Evaluate(LUAddOpName,doc)

Gruss + schönes Wochenende
Boris