Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Aladdin Sane am 19.07.04 - 12:48:22
-
Hallo,
ich bearbeite Dokumente in einer Ansicht im Web mit einem Agenten, der vom User per Schaltfläche ausgeführt wird. Die Änderungen sollen danach in der View angezeigt werden-
Nach der Ausführung muss noch der "Refresh" Button des Browsers gedrückt werden,
damit die Änderungen sichtbar werden.
Kann das nicht irgendwie in LS integriert werden?
Oder meinetwegen auch als Formel.
So sieht das aus:
...
Dim view As NotesView
Set view = db.GetView( "Overview" )
Call view.refresh
Set doc=view.getFirstDocument
While Not doc Is Nothing
//Dokument bearbeiten
Call doc.save(True,True)
Set doc=view.getnextDocument(doc)
Wend
Call view.refresh
gruß
pASCAL
-
Der Agent wird übrigens so aufgerufen:
@Command([ToolsRunMacro];"Up_1");
Ich habe den Code dann um folgende Zeile erweitert:
@Command([ToolsRefreshAllDocs])
Aber der Klick auf den Browser-Refesh-Button muss trotzdem ausgefürt werden.
Führe ich den Agenten zweimal aus, indem ich zweimal auf meinen Refresh-Button klicke,
werden die Änderungen angezeigt.
Aber nicht wenn ich den AGenten im Code doppelt ausführe:
Also so:
@Command([ToolsRunMacro];"Up_1");
@Command([ToolsRunMacro];"Up_1")
-
@Command([ViewRefreshFields]) sollte gehen.
-
@Command([ViewRefreshFields])
führt bei mir im Web zur Fehlermeldung "Seite kann nicht angezeigt werden..."
Nanu?
-
Bzgl. dem @Command([ViewRefreshFields])
sehe ich gerade in der Hilfe:
This @command works on the Web only if "Use applet in the browser" is in effect for the implementing view or folder.
Das hatte ich nicht aktiviert.
ISt jetzt markiert - trotzdem gleiche Fehlermedlung.
-
probiers vielleicht mal mit Javascript
Print "<script>"
Print "history.go();"
Print "</script>"
weiß leider nicht, ob das klappt.
-
Habe ich probiert.
Es tut sich auch was, aber der Frame bleibt anschließend weiß....
-
hast du die anderen Kommandos, die nach dem Agentaufruf kommen, rausgenommen?
-
ja
-
dann probiers viellciht mal anstelle von
history.go();
mit
framename.location.href="pfad zur Ansicht";
-
Hm Pfad zur Ansicht...
Etwas so?
Print "framename.location.href=" + Chr(34) + "http"+Chr(47)+Chr(47) + "domino_server" +Chr(47) +"tiefsee.nsf" +Chr(47) +"Overview?OpenView"+ Chr(34) + ";"
Ausgabe dann so:
framename.location.href="http//domino_server/tiefsee.nsf/Overview?OpenView";
Aber gleiches Ergebnis
-
Inhalt ist weiß?
Kein Fehler?
Mit Aktualisieren-Aktion des Browsers wird der korrekte Inhalt angezeigt?
Ich hab keine Ahnung mehr, was da los sein könnte...