Haupt- und Antwortdokumente

  • Hallo,


    ich habe eine bestehende Datenbank mit 2 Masken, sagen wir mal A und B.
    Die Datenbank soll erweitert werden und dafür sollen aus diesen Masken A und B Antwortdokumente werden, die einem Hauptdokument X zugeordnet sind. Dieses Hauptdokument X kommt neu zur Datenbank hinzu.


    Wie stell ich es jetzt am geschicktesten an? In einer ntf.-Schablone habe ich es bereits realisiert, die Maske X zu erstellen und aus den Masken A und B Antwortdoks zu machen.


    Wenn ich jetzt aber die Schablone einfach über meine Datenbank stülpe, werden aus meinen bestehenden Doks zwar Antworten gemacht, allerdings fehlen ihnen die Hauptdoks und es fehlt auch ein $Ref-Feld, das doch eigentlich in jedem Antwortdok vorhanden sein sollte.


    Ich hatte an einen Agenten gedacht, der alle Doks durchläuft, die Hauptdoks anlegt, dort die UniqueID ausliest und in den Antwortdoks im $Ref-Feld den Wert der UniqueID zuweist. ???
    Hab sowas aber noch nie gemacht, vielleicht hat jemand Erfahrung damit und kann mir nen Tipp geben bzw. mir sagen, ob es ne bessere Lösung gibt.


    Danke schonmal im voraus.


    Gruß, Birdy

  • mhh, ich hoffe ich habe es richtig verstanden.


    Du willst aus den Dokumenten A und B Antwortdokumente machen, indem Du neue Hauptdokumente erstellst?


    Ich würde alle Dokumente A+B in einer Schleife durchlaufen und bei jedem Dokument ein neues Doc erstellen, wobei ich das Dokument A oder B zum Antwortdokument mache...


    [zu kompliziert ausgedrückt???]


    vielleicht hilft dies weiter:


    Sub Initialize
    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim collection As NotesDocumentCollection
    Dim doc As NotesDocument
    Set db = session.CurrentDatabase
    Set collection = db.AllDocuments
    Set doc = collection.GetFirstDocument()
    While Not(doc Is Nothing)


    ... Set Newdoc = New NotesDocument ( db )
    ... Newdoc.Form = "Hauptdokument"
    ... Call Newdoc.Save( True, True )
    ... Call doc.MakeResponse( Newdoc )
    ... Call doc.Save( True, True )



    ... Set doc = collection.GetNextDocument(doc)
    Wend
    End Sub

  • Geht sogar noch einfacher.


    Das NotesDocument hat eine Methode MakeResponse.
    Diesem gibst du einfach das Hauptdokument an und speicherst es ab.
    Schon ist es zu einer Antwort zum angegebenen Dokument geworden.

  • Zitat


    taurec schrieb:


    Das NotesDocument hat eine Methode MakeResponse.


    Bin immer an eleganteren Lösungen interessiert. Aber MakeResponse verwende ich schon.


    Oder beziehst Du Dich noch auf den 1. Beitrag :)


    Viele Grüße

  • Vielen Dank MPerio & taurec,


    ich werde das versuchen mit der MakeResponse-Methode.
    Hoffe mal, ich schaff das, bin ja ziemliche Anfängerin.


    Viele Grüße,
    Birdy