Agenten und Attachments

  • Hallo alle zusammen,


    ich habe mal wieder ein Problem ...


    Ich möchte einen Agenten dazu bringen an Dokumente einer Ansicht einen Anhang zu paken.
    Der Name des Anhanges und der Pfad stehe in den Felder Pfad und Dokument.
    Der Agent soll alle Dokumente einer Ansicht abarbeiten.



    Geht das überhaupt ? Und wenn ja, wo muss ich suchen ? Habe schon ein wenig rumprobiert, komme aber nicht wirklich weiter, denn in der Hilfe finde ich ständig nur was zum detachen aber kaum was zum anhängen :(


    Kann mir jemand einen Tip geben wie sowas geht ?


    Vielen lieben Dank ,


    Bussy

    • Offizieller Beitrag

    Ja es geht.


    Schleife über alle Dokumente in einer Ansicht:

    Code
    set doc = view.getFirstDocumentwhile Not doc is Nothing... ' Code zum Dateiänhängenset doc = view.GetnextDocument(doc)wend


    Datei anhängen

    Code
    Call NotesRichTextItem.embedObject(EMBED_ATTACHMENT,"",doc.Pfad(0) & "\" & doc.Anhangsname(0), "")


    Wie Du an den View und das RT-Item kommst ist Dir klar, oder?


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • Am flexibelsten bist Du, wenn Dein Agent den Wirkungskreis hat "Alle Dokumente in der Ansicht", dann kannst Du ihn entweder aus dem Menü Aktionen starten oder über "Command ToolsRunMacro" aufrufen und für mehrere Ansichten nutzen.


    Dim session as New NotesSession
    Dim collection as NotesDocumentCollection
    Dim doc as NotesDocument
    Dim ritem as NotesRichtextItem
    Dim docattachment as NotesEmbeddedObject



    Set collection=session.CurrentDatabase.UnProcessedDocuments


    Set Doc=collection.GetFirstDocument


    Do until Doc is nothing


    Set ritem=doc.GetFirstItem( FieldName$ )
    Set docattachment = rtem.EmbedObject( EMBED_ATTACHMENT, "", LocalPath$)
    Call doc.save(true,false)


    Set Doc=collection.GetNextDocument(doc)


    Loop

  • Hier meine fertige Lösung, falls mal wieder jemand wie ich so blöd sucht und nichts findet :-)))




    Danke nochmal für die schnelle Hilfe !!!