Domino 9 und frühere Versionen > ND7: Entwicklung
Autorenfeld per Server-Agent setzen
Peter Klett:
--- Zitat von: Blackraven am 16.09.11 - 08:56:46 ---@koehlerbv: ist so ne Art Workflow, ich möchte den derzeitigen Autor aus dem Autorenfeld löschen, und dafür im neuen Schritt nen anderen Benutzer ins Autor-Feld einfügen
--- Ende Zitat ---
Das ist keine Begründung, weshalb Du nicht beim Speichern (oder auch später im Queryclose) die Aktion nicht von dem aktiven Benutzer ausführen lassen kannst.
Vergiss das mit dem Agenten!
Der aktuelle Benutzer, der das Dokument im Workflow weitergibt, hat Autorenrechte auf das Dokument, also kann er es bearbeiten. Wenn dieser Benutzer das Autorenfeld ändert, kann er das Dokument trotzdem einmal speichern, da er derzeit der Autor ist. Nachdem das Dokument gespeichert wurde, kann er es nicht mehr, weil er dann nicht mehr Autor auf dem (gespeicherten) Dokument ist.
Wenn Du das Dokument im Queryclose speicherst, achte darauf, dass Du nicht ein SaveOption = "0" speicherst, weil Du das evtl. vorher gesetzt hast, um das Dokument nach einem Workflow-Button zwingend zu schließen (eine Falle, in die ich schon mal gelaufen bin).
Bau das so, das funktioniert 100 %ig, mit dem Agenten wirst Du niemals froh!
Blackraven:
@Peter: Danke, ich habs jetzt so gemacht wie du vorgeschlagen hast, und vorher ein Saveoptions="1" sicherheitshalber einfügt ;-)
Funzt :)
koehlerbv:
Du hast SaveOptions = "1" gesetzt und dann im Backend gespeichert?? Das wäre jetzt aber überhaupt gar keine gute Idee! Bist Du Dir im Klaren, was das bedeutet?
Bernhard
Peter Klett:
Call doc.RemoveItem ("SaveOptions")
halte ich für die bessere Lösung, falls Du nicht generell mit dem Feld ein Verhalten steuern willst
koehlerbv:
Peter, ich halte das für überflüssig, da SaveOptions ja eh nur im Frontend wirkt. Warum sollte man das also dann im Backend wieder entfernen müssen? Sowas setzt man doch nur, wenn das Dokument eigentlich nicht (SaveOptions = "0") im Frontend gespeichert werden soll.
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln