Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: ajo am 14.07.04 - 12:16:49

Titel: Mehrfachwert per Script mailen
Beitrag von: ajo am 14.07.04 - 12:16:49
Hallo.

Ich habe mir ein Formular erstellt, bei dem die Felder im Querysave als Richtext
gemailt werden. Bei Mehrfachwerten (Kontrollkästchen mit 5 Auswahlen) wird allerdings immer nur der 1. Wert genommen.
Beispiel: Für das Feld "rechte" wird "lesen", "ändern" und "löschen" ausgewählt, übermittelt wird nur der Wert "lesen".

Auszug aus dem Script:

   rt.appendtext "Programm: " + d.progname (0)
   rt.addnewline (1)
   rt.appendtext "Anmeldename: " + d.username (0)
   rt.addnewline (1)
   rt.appendtext "Rechte: " + d.rechte (0)

Wenn jemand versteht was ich meine wär ich für nen Tip dankbar ;D

Gruss Alex
Titel: Re:Mehrfachwert per Script mailen
Beitrag von: klaussal am 14.07.04 - 12:20:24
d.rechte(0) = 1. wert aus der liste
die null macht's....
Titel: Re:Mehrfachwert per Script mailen
Beitrag von: ajo am 14.07.04 - 14:11:55
Steig leider noch nicht ganz durch und finde in der Hilfe auch nix.
Was müsste ich denn anstelle der 0 angeben, wenn ich alle ausgewählten
Optionen übermittelt haben möchte ?
Titel: Re:Mehrfachwert per Script mailen
Beitrag von: Glombi am 14.07.04 - 14:23:48
Es ginge so:

dim ret_eval as Variant
 rt.appendtext "Programm: " + d.progname (0)
   rt.addnewline (1)
   rt.appendtext "Anmeldename: " + d.username (0)
   rt.addnewline (1)
ret_eval = Evaluate( |@Implode(rechte;", ")|,d)
   rt.appendtext "Rechte: " + ret_eval(0)

Andreas
Titel: Re:Mehrfachwert per Script mailen
Beitrag von: Thomas Schulte am 14.07.04 - 15:29:43
Alternativ kann man seit V6 auch anstelle der Evaluate Funktion
Ergebnis = Join(Source,Delimiter) nehmen.

Thomas
Titel: Re:Mehrfachwert per Script mailen
Beitrag von: klaussal am 14.07.04 - 15:37:08
... join macht aber genau das gleiche wie @implode.
Titel: Re:Mehrfachwert per Script mailen
Beitrag von: ajo am 14.07.04 - 15:45:47
sieht jetzt so bei mir aus:


rt.appendtext "Programm: " + d.progname (0)
   rt.addnewline (1)
   rt.appendtext "Anmeldename: " + d.username (0)
   rt.addnewline (1)
   Dim ret_eval As Variant   
   ret_eval = Evaluate( |@Implode(rechte;", ")|,d)
   rt.appendtext "Rechte: " + ret_eval(0)   

Bekomme als Fehler "Wrong number of array subscripts" ....
Titel: Re:Mehrfachwert per Script mailen
Beitrag von: ajo am 14.07.04 - 16:17:04
Hab den Fehler grad gefunden. Hatte beim ausprobieren "Formel für Auswahl verwenden" anstelle "Auswahl pro Zeile" in der Auswahl genommen.
Funktioniert jetzt.

Danke euch für die Unterstützung !!

Gruss Alex
Titel: Re:Mehrfachwert per Script mailen
Beitrag von: Thomas Schulte am 14.07.04 - 16:33:38
... join macht aber genau das gleiche wie @implode.
Dat is richtich, aber
1. musst du dich nicht mehr mit der speziell für Anfänger etwas nervigen Strukturierung des Evaluate Befehls rumschlagen.
2. Scheint es, da es Native Script ist einen Tick schneller zu laufen.

Thomas
Titel: Re:Mehrfachwert per Script mailen
Beitrag von: Glombi am 14.07.04 - 16:43:41
Endlich gibt es das in Script!
So ein Joint ist doch mal was  :^)

Evaluate wird somit von der Liste gestrichen, wenn ich was in Script implodieren lassen will.

Um was explodieren zu lassen, brauche ich aber nach wie vor die Formelsprache...

Andreas
Titel: Re:Mehrfachwert per Script mailen
Beitrag von: umi am 15.07.04 - 08:35:19
Um was zu explodieren kannst du es ja "splitten", s.h. Hilfe unter Split