Autor Thema: Verständnisfrage zu EVALUATE  (Gelesen 2647 mal)

Offline ReinerB

  • Junior Mitglied
  • **
  • Beiträge: 93
Verständnisfrage zu EVALUATE
« am: 07.09.05 - 15:11:27 »
Dieser Befehl wird in LotusScript benutzt um eine @Formel auf ein Dokument-Item anzuwenden?

Kann man die @Formeln aus der Formelsprache auch auf Programm-Variablen in LotusScript anwenden?

Grüße
Reiner



Glombi

  • Gast
Re: Verständnisfrage zu EVALUATE
« Antwort #1 am: 07.09.05 - 15:33:54 »
Das hatten wir schon zig mal hier - bitte suche mal nach Evaluate

Andreas

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re: Verständnisfrage zu EVALUATE
« Antwort #2 am: 07.09.05 - 23:48:54 »
Jo, außerdem steht das auch in der Designerhilfe, wie Du Strings an Evaluate übergeben kannst. Ausführungszeichen-Problematik kannst Du umgehen, indem Du Pipe ( | ) oder geschweifte Klammern ( {, } ) anstatt Ausführungszeichen ( " ) verwendest.
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline ReinerB

  • Junior Mitglied
  • **
  • Beiträge: 93
Re: Verständnisfrage zu EVALUATE
« Antwort #3 am: 08.09.05 - 11:09:14 »
Sorry wegen des Themas,
habe jetzt mal einiges mehr gelesen hier in diesem Forum und sollte eigentlich etwas schlauer sein wegen EVALUATE.

Aber folgendes Problem kapiere ich nicht:

Dim t(1) As String
Dim t2 As Variant
Dim t3 As Variant
t(0) = "gh"
t(1) = "ab"
t2 = Evaluate(|@Sort(t)|)
t3 = Evaluate(|@Sort("gh":"ab")|)

Warum ist t3 gefüllt und t2 leer? Das will in meinen Kopf nicht rein. Erkennt SORT t nicht als Tabelle? In reiner Formelsprache funktioniert dieses Beispiel.

Ziemlich ratlos
Reiner

Driri

  • Gast
Re: Verständnisfrage zu EVALUATE
« Antwort #4 am: 08.09.05 - 12:08:02 »
Wenn Du Variablen aus Script übergeben willst, darfst Du die nicht so direkt mit in die Formel schreiben.

Richtig wäre in dem Fall :

t2 = Evaluate(|@Sort(| & t & |)|)

Offline ReinerB

  • Junior Mitglied
  • **
  • Beiträge: 93
Re: Verständnisfrage zu EVALUATE
« Antwort #5 am: 08.09.05 - 13:47:37 »
Danke für den Tipp. Über Variablen-Einbindung in @Formeln in LS habe ich auch was im Forum gefunden.

Aber deine Änderung wird nicht angenommen, Type mismatch. t ist doch ein Array aus String und somit eine Textliste oder nicht? @Sort funktioniert doch mit Textlisten.

Oder muß ich eine Änderung machen:
Dim t4 as Variant
t4 = t
t2 = Evaluate(|@Sort(| & t4 & |)|)

Wird vom Designer genommen, bringt aber bei der Ausführung einen Type Mismatch.

Eine Idee?

Und schon wieder bin ich ratlos    :-:
Reiner

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.885
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Verständnisfrage zu EVALUATE
« Antwort #6 am: 08.09.05 - 14:13:04 »
ALSO:

Evaluate arbeitet mit TEXT, Dein t ist ein ARRAY.

Du musst entweder Dein Array in einen Text parsen, wie ihn die Formel erwartet:

tString = {"} & Implode( t , {" : "} ) & {"};

t2 = Evaluate( {@Sort(} & tString & {)}

oder aber Du übergibst den Wert über ein Dokument....

set doc = New NotesDocument( DeineDB )
doc.sortField = t
t2 = Evaluate( "@Sort( sortField )" , doc )

HTH
Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz