Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: forrest g am 09.04.03 - 15:12:18

Titel: problem mit evaluate
Beitrag von: forrest g am 09.04.03 - 15:12:18
hallo forum,

mein evaluate in script funktioniert nich.
woran liegt das wohl?

auszug aus dem script(hab das auf die entscheidenden zeilen gekürzt):

dim EingabeKategorie as string
dim ZKKategorie as string
Dim eval As Variant
Dim Trennzeichen As String
Trennzeichen = "~"

EingabeKategorie = doc.hdKategorie(0)   
ZKKategorie = rubrikdoc.ZKruKategorie(0)
ZKKategorie = ZKKategorie  + "~" + EingabeKategorie             
eval = Evaluate( | @explode( ZKKategorie; Trennzeichen ) | )

eval is immer leer!

danke im voraus und ciao
Titel: Re:problem mit evaluate
Beitrag von: Axel am 09.04.03 - 15:54:40
Hi,

versuch's mal so:

eval = Evaluate(|@Explode("| & ZKKategorie & |";"| & Trennzeichen & |")|)


Axel
Titel: Re:problem mit evaluate
Beitrag von: forrest g am 10.04.03 - 11:04:19
hi axel,
ich roll hier mal den blumenteppich aus... ;)

vielen dank, hat geklappt, super, danke schön. ;D

eine frage habe ich noch offen:
kannst du mir bitte die "verpackung" der argumente des @explode erklären?
ich es dachte, dass als argument ein string reicht?
wofür steht denn die kombination  "| &  ?

danke und tschö
Titel: Re:problem mit evaluate
Beitrag von: Axel am 10.04.03 - 11:25:58
Hi,

ein String reicht in dem Fall nicht, denn ZKKategorie und Trennzeichen sind ja Script-Variablen.

Deshalb mußt du das entsprechend zusammensetzen. Was Evaluate ausführt sieht eigentlich dann so aus:

Angenommen in ZKKategorie steht folgendes Wert1~Wert2~Wert3.
Als Trennzeichen gilt ~

@Explode("Wert1~Wert2~Wert3"; "~")

"| steht für zwei Anführungszeichen, in Script kann man auch das Pipe-Zeichen und die geschweifte Klammer als Zeichenkettenbegrenzer nehmen.

& ist der Verkettungsoperator für Zeichenketten in Script.
 
Axel
Titel: Re:problem mit evaluate
Beitrag von: forrest g am 10.04.03 - 11:47:20
hi axel,

danke für die antwort.

also muss ich bei evaluate in die script die scriptvariablen als zeichenkette behandeln?

Zitat
"| steht für zwei Anführungszeichen, in Script kann man auch das Pipe-Zeichen und die geschweifte Klammer als Zeichenkettenbegrenzer nehmen.
 
das wusste ich, nur die zusätzliche verkettung mit & versteh ich nich ganz...
denn mit "| hab ich die script-variablen doch als zeichenketten gekennzeichnet? (sorry, nich ich, sondern du!)

tschö
forrest g
Titel: Re:problem mit evaluate
Beitrag von: Axel am 10.04.03 - 12:15:27
Hi,

Explore erwartet Zeichenketten in Anführungszeichen, sonst geht es von einem Feldnamen aus.

...(|@Explode("| &

Das Anführungszeichen nach der Klammer steht für das Anführungszeichen der Zeichenkette und | - Zeichen beendet den ersten Teilstring. Dann hängst du die Variable (besser gesagt den Inhalt an). usw.

Axel

Titel: Re:problem mit evaluate
Beitrag von: Axel am 10.04.03 - 12:22:04
Hi,

schau mal hier:

http://www-10.lotus.com/ldd/today.nsf/62f62847467a8f78052568a80055b380/1b582ddee7c72e10852566ac005f0b99?OpenDocument (http://www-10.lotus.com/ldd/today.nsf/62f62847467a8f78052568a80055b380/1b582ddee7c72e10852566ac005f0b99?OpenDocument)

Vielleicht wird's dann klarer.

Axel
Titel: Re:problem mit evaluate
Beitrag von: forrest g am 10.04.03 - 13:16:07
hallo axel,
ist schon vielklarer geworden, das ganze gebilde hat mich etwas verwirrt.
hab mir das pdf von ldd trotzdem runtergeladen.

vielen dank für die hilfe und die antworten.

tschö

forrest g