Domino 9 und frühere Versionen > ND9: Entwicklung

Frage zu Java Agenten

<< < (4/5) > >>

Bruce Willis:

--- Zitat von: Werner Götz am 02.03.18 - 08:00:00 ---...Man sollte das Ganze wohl im PostSave belassen, aber z.B. so umschreiben, dass der Agent mit RunWithDocumentContext das aktuell geöffnete Dokument (aus dem Hauptspeicher) nutzt ...

--- Ende Zitat ---
Vielen Dank.
Kannst Du bitte diese ein paar Zeilen hier schreiben?

Werner Götz:
Ich habe das jetzt mal so runter geschrieben, also ohne Gewähr ...


--- Code: --- Sub PostSave(Source As NotesUIDocument)
Dim doc As NotesDocument
Dim db As NotesDatabase
Dim agent As NotesAgent
Dim ret

Set doc = Source.Document
Set db = doc.ParentDatabase
Set agent = db.GetAgent("<agentname>")

'// der Agent sollte im Feld _retValue einen Returncode zurückliefern ...
doc.ReplaceItemValue("_retValue", "").SaveToDisk = False

ret = agent.runWithDocumentContext(doc)

If ret <> 0 Then Error 32000,  "Allgemeiner Fehler beim Aufruf des Agenten <agentname>"

ret = doc.GetItemValue("_retValue")(0)

Select Case ret
Case ...
...
Call doc.Save(True, True)
...
End Select
End Sub

--- Ende Code ---

Im Java-Agenten muss man dann über AgentContext.getDocumentContext() auf das Dokument zugreifen.

Hoffe, das hilft weiter?
-Werner

Bruce Willis:

--- Zitat von: Werner Götz am 04.03.18 - 14:24:17 ---Ich habe das jetzt mal so runter geschrieben, also ohne Gewähr ...
...

--- Ende Zitat ---
Hallo Werner,
vielen Dank!
Ich probiere es mal.
Gruß
Leo

jBubbleBoy:
Jetzt bist du wieder bei deinem Ursprung, mit dem Unterschied das dein Agent nicht über Formel sondern mittels Lotusscript aufgerufen wird, das wird dein Problem nicht lösen!
Gib den Java-Agenten an den Entwickler zurück, erkläre ihm die Probleme und gib ihm ggf. noch den Tipp mit LS2J.

Werner Götz:
@jBubbleBoy:
Warum sind wir denn wieder am Ursprung?
Das ist nicht ein einfaches Verlagern des Aufrufs!
Ich denke, dass mit meinem Vorschlag das Problem gelöst werden kann.

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln