Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: shiraz am 31.08.11 - 22:03:23

Titel: Mails(Inbox) kopieren
Beitrag von: shiraz am 31.08.11 - 22:03:23

Code
....
Dim collection As NotesDocumentCollection
	Set curdb = session.CurrentDatabase
	Set collection = curdb.UnprocessedDocuments
        Set doc = collection.GetFirstDocument()
....
		While Not(doc Is Nothing)

			Set newdoc = pd_db.CreateDocument	
			Call doc.CopyAllItems( newdoc, True )
....
                         Set doc = collection.GetNextDocument(doc)
		  Wend

Hallo,
ich will die ausgewählten mails mit hilfe eines agentes kopieren, es klappt bei mails(memo) ohne Probleme aber bei weitergeleiteten Anwort-Mails (reply) hab keinen erfolg !!!!

was mache ich falsch?

Gruß
Christian
Titel: Re: Mails(Inbox) kopieren
Beitrag von: m3 am 31.08.11 - 22:14:21
1) weiterleiten ist nicht "reply". Was jetzt?
2) In welchem Kontext wird der Code ausgeführt (Agent, ...)? Das ist für den Inhalt von UnprocessedDocuments relevant.
3) UnprocessedDocuments sind NICHT die Mails in der Inbox.
Titel: Re: Mails(Inbox) kopieren
Beitrag von: shiraz am 31.08.11 - 22:29:24
ich markiere paar Mails und starte ich mein Agent! die Mails werden kopiert aber die ausgewählten Antwort-Dokumente werden nicht bearbeitet!
Titel: Re: Mails(Inbox) kopieren
Beitrag von: m3 am 31.08.11 - 22:49:00
Wie äußert sich dieses "nicht bearbeitet"?
Titel: Re: Mails(Inbox) kopieren
Beitrag von: koehlerbv am 31.08.11 - 22:51:39
Ich denke auch, dass Martins Frage schon den Kern trifft, insbesondere, wenn ich das CopyAllItems lese  ;)

Bernhard
Titel: Re: Mails(Inbox) kopieren
Beitrag von: Peter Klett am 31.08.11 - 23:14:52
Kann es sein, dass Antwortdokumente in der Ansicht der "neuen" Datenbank hierarchisch angezeigt werden? Durch das Erstellen der neuen Dokumente ändert sich die UniversalID, die Antwortdokumente beinhalten aber im $REF den Verweis auf die alte DokumentID und haben daher kein Elterndokument in der Ansicht.

Ergänze Dein Script mal um diese Zeile

Set newdoc = pd_db.CreateDocument
newdoc.UniversalID = doc.UniversalID
Call doc.CopyAllItems( newdoc, True )


Titel: Re: Mails(Inbox) kopieren
Beitrag von: koehlerbv am 31.08.11 - 23:18:26
Das geht aber einfach mit einem NotesDocument.CopyToDatabase, Peter  ;)

Bernhard
Titel: Re: Mails(Inbox) kopieren
Beitrag von: shiraz am 31.08.11 - 23:29:41
Danke Jungs!
Danke Bernhard!


es klappt!!
Titel: Re: Mails(Inbox) kopieren
Beitrag von: Peter Klett am 31.08.11 - 23:34:53
Das geht aber einfach mit einem NotesDocument.CopyToDatabase, Peter  ;)

Bernhard
Klar, es gibt aber meist mehrere Wege und manchmal führen die auch zum gleichen Ziel, so wie hier ...
Titel: Re: Mails(Inbox) kopieren
Beitrag von: koehlerbv am 31.08.11 - 23:39:52
Naja, CopayAllItems und CopyToDatabase tun auf denersten Blick gleiches, aber da gibt schon interessante Nuancen (die man dann je nach Sachlage ausnutzen kann).

Bernhard
Titel: Re: Mails(Inbox) kopieren
Beitrag von: Tode am 01.09.11 - 09:12:31
Nuancen. die einem auch je nach Sachlage ins Genick schiessen... CopyToDatabase ist zum Beispiel sofort gespeichert, und damit ggf. für mich nciht mehr änderbar (wenn ich z.B. Autor bin und nicht in einem Autorenfeld stehe, oder wenn ich nicht in einem Leserfeld stehe)... das merkt man dann evtl. erst, wenn der erste Benutzer die Funktion ausprobiert (weil der keine Rolle "ReadAll" hat, o.ä.)... (natürlich vorausgesetzt, man testet nicht anständig, was wir natürlich immer alle tun)