Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Jenson am 31.08.04 - 16:04:13

Titel: Problem mit Evaluate
Beitrag von: Jenson am 31.08.04 - 16:04:13
Moin,

ich brauche in einem Script, dass von einem Hintergrundagenten ausgeführt wird den Benutzernamen des derzeit in der Session angemeldeten Benutzers. (Das ganze ist eine Webseite). Wenn ich mit der @Formelsprache @UserName abfrage, dann bekomme ich den auch. Allerdings muss ich an dieser Stelle wegen der gewünschten Funktionalität LotusScript verwenden. Hier bekomme ich dann immer den Namen des Servers zurück. Also dachte ich daran es über Evaluate zu probieren.

Folgende Zeilen:

Dim Session as New NotesSession
Dim db As New NotesDatabase( "", "" )
Dim doc As NotesDocument
Dim dateTime As New NotesDateTime( "" )
Dim usrname As NotesName
Dim username As string
Dim NoAddress As string
Dim Initials As string
Dim ret As Variant
Dim SekInt As Integer
Dim Sekunden As String
Dim YYMMDD As String
Dim docID As String
Dim eval As Variant


eval = Session.Evaluate("@UserName", doc)


ergeben bei mir aber die Fehlermeldung:


"Not a member: Evaluate (156)"

Ich hab mich schon durch zich Beispiele in der Hilfe gewühlt und bin keinen Schritt weiter.

doc

Jenson
Titel: Re:Problem mit Evaluate
Beitrag von: Semeaphoros am 31.08.04 - 16:10:36
NotesSession.Evaluate gibt es nur, wenn man via COM draufzugreift, also nicht in LS. In LS muss stattdessen die Evaluate-Funktion verwendet werden, sprich ohne SessionDot
Titel: Re:Problem mit Evaluate
Beitrag von: Glombi am 31.08.04 - 16:11:59
Das geht so nicht, da das Script auf dem Server ausgeführt wird und dort der Servername als username zurückgeliefert wird, wie Du bereits festgestellt hast.

Du musst in Deiner Maske ein Feld (Berechnet zur Anzeige) mit dem Wert @Username erstellen.
Auf das Feld kannst Du dann in dem Agenten zugreifen.


Generell: Die Syntax wäre
eval = Evaluate("@UserName")
print "Der Username ist = " & eval(0)

Andreas
Titel: Re:Problem mit Evaluate
Beitrag von: koehlerbv am 31.08.04 - 16:12:22
Evaluate ist auch kein Member der Klasse NotesSession, sondern ein LS-Statement / function. Schau Dir die Syntax mal in der DesignerHelp genau an. Dann wirst Du auch feststellen, dass der Parameter doc in diesem Zusammenhang überflüssig ist.

Bernhard
Titel: Re:Problem mit Evaluate
Beitrag von: Glombi am 31.08.04 - 16:13:33
Bernhard, Du bist aber spät dran  ;D  ;)

Andreas
Titel: Re:Problem mit Evaluate
Beitrag von: Semeaphoros am 31.08.04 - 16:14:45
Obacht Bernhard, NotesSession.Evaluate gibt es, wenn man über COM, also von aussen, draufzugreift
Titel: Re:Problem mit Evaluate
Beitrag von: koehlerbv am 31.08.04 - 16:16:37
Na, ich wollte Dir (und jens) auch mal den Vortritt lassen  ;D
Titel: Re:Problem mit Evaluate
Beitrag von: koehlerbv am 31.08.04 - 16:23:17
Obacht Bernhard, NotesSession.Evaluate gibt es, wenn man über COM, also von aussen, draufzugreift

Ja, natürlich, aber dass das hier kein COM-Zugriff war, war doch offensichtlich.

Bernhard
Titel: Re:Problem mit Evaluate
Beitrag von: Jenson am 31.08.04 - 16:24:41
Danke soweit :)

Ich bin wohl irgendwie auf die COM Schiene geraten. Wenn ich das nun eval=Evaluate(|@UserName|) ausführe erhalte ich keinen Fehler, aber dafür den Unterzeichner des Agenten.

Ein Feld kann ich hier leider nicht anlegen, da ich mich nicht im NotesClient befinde. Das ganze ist ein Agent der gerufen wird, wenn Formulareingaben einer Webseite abgeschickt werden.

Jenson
Titel: Re:Problem mit Evaluate
Beitrag von: Semeaphoros am 31.08.04 - 16:26:26
Gemau in diesem Formular, das zurückgeschickt wirst, musst Du das Feld einfügen, Andreas hat ja ausdrücklich gesagt, dass man das fürs WEB so machen muss.
Titel: Re:Problem mit Evaluate
Beitrag von: Jenson am 31.08.04 - 16:30:15
Aber ob das gut ist, wenn der komplette Name im HTMLCode steht?

Jenson
Titel: Re:Problem mit Evaluate
Beitrag von: koehlerbv am 31.08.04 - 16:36:41
Weiss auf weiss oder ein verstecktes Feld ?
Titel: Re:Problem mit Evaluate
Beitrag von: Glombi am 31.08.04 - 16:38:28
Du kannst das Feld im Web verbergen, das sollte dennoch funktionieren. Oder ein HTML hidden Flag mitgeben. Da kannst Du Deine Kreativität austoben.

Andreas
Titel: Re:Problem mit Evaluate
Beitrag von: koehlerbv am 31.08.04 - 16:40:51
Andreas, Du bist aber spät dran     ;D  ;)

Andreas
Titel: Re:Problem mit Evaluate
Beitrag von: Jenson am 31.08.04 - 16:42:08
Also soweit wäre ich auch noch kreativ geworden :-) Ich meinte wenn sich jemand den Sourcecode anzeigen lässt (rechte Maustaste, Quelltext anzeig...), dann sieht er immer unsere internen Namen ...

Aber dann würde es logischerweise richtig funktionieren, da ich dann einfach das Formularfeld nutzen kann.


Jenson
Titel: Re:Problem mit Evaluate
Beitrag von: Glombi am 31.08.04 - 16:43:46
Andreas, Du bist aber spät dran     ;D  ;)

Andreas
Heist Du jetzt auch schon Andreas , Bernhard ;D
Titel: Re:Problem mit Evaluate
Beitrag von: koehlerbv am 31.08.04 - 16:48:43
Ich glaub', jetzt isses soweit  ;D ;D ;D ;D

"Bruce Willis" hatte ja gestern auch schon was gefaselt von den komischen Vögeln, die flattern ...  ;D

Berndreas  ;D
Titel: Re:Problem mit Evaluate
Beitrag von: koehlerbv am 31.08.04 - 16:50:32
... Ich meinte wenn sich jemand den Sourcecode anzeigen lässt (rechte Maustaste, Quelltext anzeig...), dann sieht er immer unsere internen Namen ...

Naja, wenn die Leute den Quelltext brauchen, um nachzuschauen, wie sie heissen  ;D

Bernhard
Titel: Re:Problem mit Evaluate
Beitrag von: Semeaphoros am 31.08.04 - 16:51:34
... es heisst doch immer wieder "zurück zu den Quellen" ....  ;D
Titel: Re:Problem mit Evaluate
Beitrag von: koehlerbv am 31.08.04 - 16:53:13
Ah ! Deswegen ! Eine Aufforderung an Debile oder an welche mit Alzmann (oder wie der Kerl hiess) ...

Bernhard
Titel: Re:Problem mit Evaluate
Beitrag von: Semeaphoros am 31.08.04 - 17:03:11
Salzheimer?    ;D   Oder wars Pfeffershauser?
Titel: Re:Problem mit Evaluate
Beitrag von: koehlerbv am 31.08.04 - 17:05:09
Nein, nein, das war irgendwas mit "Alz" ! Weil: So heisst nämlich der Fluss, aus dem unser ... unser ... äh, wie heisst der grosse See hier nochmal ?  

Bernhard  ;D
Titel: Re:Problem mit Evaluate
Beitrag von: Semeaphoros am 31.08.04 - 17:07:45
Salzsee?? --   ;D