Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: bernino1 am 20.10.05 - 14:16:07
-
hallo leute,
möchte via url wenn möglich bestimmte informationen wie zB username per lotusscript transportieren.
laut noteshilfe und forum hier müsste dies doch so funktionieren:
Set sess = New NotesSession
arg = sess.DocumentContext.Query_String(0)
pl = Instr(arg, "&")
If pl = 0 Then
Print "nix gefunden - schmarrrn"
Else
Print "Url = " + arg
End If
(starte den agent mit schaltfläche mit [toolsrunmakro] im browser)
ich lande aber immer beim "schmarrn" ;-) ????
was mache ich hier falsch?
wär super wenn mir jemand einen rat geben könnte.
danke und grüsse vom bodensee
berndt
-
Hi,
wahrscheinlich enthält Query_String kein &-Zeichen.
Axel
-
also das wär ja dann doch etwas zu einfach :-)
hier die url:
url: http://server/pfad/db/Unter_eingabe?OpenForm&test
muß das "&" speziell in die url geladen werden oder genügt es, dies einfach im browser anzuhängen!?
(wobei ich überhaupt nix find - egal wonach ich suche!)
-
Zum testen würde ich zunächst mal folgendes machen:
Set sess = New NotesSession
arg = sess.DocumentContext.Query_String(0)
Print arg
Was wird ausgegeben?
Andreas
-
hab ich gemacht - es wird garnix ausgegeben!
is mir schleierhaft!!
kann es am form liegen? (ich hab ja eine form offen und kein dokument!)
-
1. Wenn Du den Agent via @Command startest erhält er ja gar keine Information in der URL !
2. Verwende besser den Query_STring_Decoded anstatt des Query_String, da dieser schon alle Zeichen richtig decodiert hat.
Was willst Du machen? Werte aus dem aktiven Dokument übernehmen oder dem Agent Parameter übergeben?
-
ich möchte nur den username per url übergeben um mit diesem fortlaufend bei jedem webqueryopen ein notesdok. (sone art notescookie :-) mit werten zu befüllen bzw. abzugleichen!
ich probier jetzt mal den Query_STring_Decoded!
-
auch der Query_STring_Decoded is leider leer ???
-
Aus der Hilfe (http://www-12.lotus.com/ldd/doc/domino_notes/6.5.1/help65_designer.nsf/855dc7fcfd5fec9a85256b870069c0ab/50e4269b9b1baa0b85256e00004ac58f?OpenDocument&Highlight=0,documentcontext). Ich hab das wichtige mal fett gemacht
For an agent run from a browser with @Command[ToolsRunMacro], the in-memory document is the current document. In the case of WebQueryOpen, this is the document before Domino converts it to HTML and sends it to the browser; in the case of WebQuerySave, this is the document before Domino saves it. If the form on which the document is based contains a field named the same as a Domino-supported CGI variable, the in-memory document also contains the value of that variable. (You must explicitly design the CGI variables into the form, for example, as hidden fields.)
-
hab das hilfe-dok schon gelesen.
geb aber ehrlich zu - gecheckt hab ich´s nicht :D
inzwischen denk ich aber was ich zu tun habe - probiers mal aus und sollte ich nicht weiter kommen bin ich so unverschämt und meld mich nochmal!
danke - bis dann
berndt
-
Lies mein 1!
Entweder Du rufst deinen Agent per URL auf dann kannst Du wie gewohnt den Parameter in der URL übergeben und per Query_String_Decoded aus dem Context auslesen
ODER
Du schreibst den Usernamen in ein Feld und Liest dieses Feld aus dem Context aus.
z.B. Dein Feld im Form heisst Username , Computed when Composed Formel: @username
In deinem Agent machst Du dann
set context = s.documentcontext
dim username as string
username = context.getitemvalue("username")(0)
tada => in der Variable username ist dein Feldwert aus dem Form gespeichert
-
ich denke ich hab die lösung gefunden!
(danke thomas und urs für die hints!)
ich setzte ein verstecktes feld mit dem namen Query_String_Decoded - dann erhalte ich exakt das ergebnis das ich brauchte!
vielen dank
schöne grüsse vom bodensee
berndt