Hallo zusammen,
ich hab mal wieder ein kleines Problem, für das ich einen Schubs in die richtige Richtung brauche.
Folgendes Szenario:
Ich habe ein Workflowdokument, das verschiedene Stationen durchläuft. Einige der Beteiligten müssen den Workflow kommentieren, andere müssen ein Votum abgeben und der Chef muss am Ende eine Entscheidung treffen.
Kommentare, Votum und Entscheidung werden mit Hilfe einer Dialog-Maske eingegeben, in deren QueryClose Event dann das Responsedoc erzeugt wird. Klappt soweit alles problemlos.
Um allen Beteiligten einen schnellen Zugriff auf die Antworten zu ermöglichen gibt es im Hauptdokument eine eingebettete Ansicht, die die zu diesem Doc gehörenden Antworten anzeigt. Funktioniert auch, aber ich kann in der Ansicht nicht auf alle Felder der Dokumente zugreifen.
Öffne ich die jeweiligen ResponseDocs, werden mir alle Feldinhalte korrekt angezeigt, speichere ich die Dokumente jetzt nochmals ab, stehen die Werte auch in der Ansicht zur Verfügung. Und genau hier liegt mein Problem: Wie sorge ich dafür, dass alle Feldwerte zur Verfügung stehen, ohne dass die Dokumente nochmals im Client geöffnet und gespeichert werden müssen? (Auf die Dokumente sollen nach der Anlage keine Schreibzugriffe mehr erfolgen.)
Hier mein für die Anlage der Antwordokumente verwendeter Scriptcode (nicht lachen

)
| Dim session As New NotesSession |
| Dim db As NotesDatabase |
| Dim doc As NotesDocument |
| Dim docResp As NotesDocument |
| Dim AdminRead As NotesItem |
| Dim AllReader As NotesItem |
| Dim AllRoles As NotesItem |
| Dim UserAutor As NotesItem |
| Dim uComment As NotesItem |
| Dim typeTM As NotesItem |
| Dim datAnlage As NotesItem |
| |
| Dim item As NotesItem |
| |
| Set db = session.CurrentDatabase |
| Set doc = db.GetDocumentByUNID( baseID ) |
| Set docResp = db.CreateDocument |
| |
| docResp.Form = "Kommentar" |
| |
| Set item = doc.GetFirstItem("gwflow_ReaderResp") |
| item.IsReaders= True |
| Call item.CopyItemToDocument(docResp, "gwflow_resp_ReaderWF") |
| item.IsReaders= False |
| |
| Set item = doc.GetFirstItem("gwflow_LeserImmer") |
| Call item.CopyItemToDocument(docResp, "gwflow_resp_ReaderRoles") |
| |
| Set UserAutor = New NotesItem( docResp, "gwflow_resp_Ersteller", readerUser , AUTHORS) |
| Set uComment = New NotesItem( docResp, "gwflow_resp_Kommentar", comment) |
| Set datAnlage = New NotesItem( docResp, "gwflow_resp_AnlageDat", Today) |
| |
| |
| Select Case aktNr |
| |
| Case "1": |
| Set typeTM = New NotesItem( docResp, "gwflow_resp_TypTM", "TM_gwflow_resp_Stellung") |
| |
| Case "2": |
| Set typeTM = New NotesItem( docResp, "gwflow_resp_TypTM", "TM_gwflow_resp_Stellung") |
| |
| Case "4": |
| Set typeTM = New NotesItem( docResp, "gwflow_resp_TypTM", "TM_gwflow_resp_Vstd") |
| Set VoteVstd = New NotesItem( docResp, "gwflow_resp_Entscheidung", voteVstd) |
| |
| Case "6": |
| Set typeTM = New NotesItem( docResp, "gwflow_resp_TypTM", "TM_gwflow_resp_BR") |
| Set VoteVstd = New NotesItem( docResp, "gwflow_resp_Votum", voteBR) |
| |
| Case "8": |
| Set typeTM = New NotesItem( docResp, "gwflow_resp_TypTM", "TM_gwflow_resp_Vstd") |
| Set VoteVstd = New NotesItem( docResp, "gwflow_resp_Entscheidung", voteVstd) |
| |
| Case Else |
| Set typeTM = New NotesItem( docResp, "gwflow_resp_TypTM", "ups") |
| |
| End Select |
| |
| |
| Call docResp.Save( True, False ) |
| Call docResp.MakeResponse( doc ) |
| Call docResp.Save( True, False ) |
| |