Domino 9 und frühere Versionen > Entwicklung

Mailinhalt in andere DB übernehmen

(1/3) > >>

Axel:
Hi,

heute hab' auch mal ein Problem.

Ich habe folgende Anforderung: in einer Vorgangsdatenbank sollen auch eingegangene Mails eingefügt werden und einer Adresse zugeordnet werden.

So weit so gut.
Das Auslesen der Inbox, das Übernehmen des Absenders und des Themas ist kein Problem, das Zuordnen zu einer Adresse auch nicht.

Problem ist die Übernahme des Mailtextes. Ich habe Mails, die enthalten mehrere Body-Felder und außerdem scheinen sie mimecodiert zu sein. Siehe Anhang.

Wie bekomme ich nun den Mailtext in mein Dokument? Die normale Methode RTF-Inhalte zu kopieren, mit AppendRTItem, funktioniert nicht.

Was funktioniert ist CopyAllItems, aber ich will nicht alle Felder des Mails in meinem Vorgangsdokument haben.

Kann mir jemand weiterhelfen?   ???


Axel

ata:
... ich habe das gleiche Problem in meiner persönlcihen Support-Datenbank. Bei der Problemlösung habe ich so viel Zeit verschoosen, daß ich der einfach-heit-halber dazu übergegangen bin, das Dokument als Kopie zu übernehmen - die ganzen Fallunterscheidungen konnte ich nicht abfangen, da ich es mit sehr vielen Mail-Clients zu tun hatte, und bald jede Mail anders herinkam. Ich nehme also lieber die überflüssigen Felder in Kauf...

ata

koehlerbv:
Gerade im Zusammenhang mit
- Kodierungen
- grossen Attachments
- OLE-Objekten
- u.ä.
folge ich hier zu 100% Antons Vorgehen. Die "Nebengeräusche" sind lässlich, bestimmte unerwünschte Items kann man auch nach dem CopyToDatabase wieder entfernen. Wenn man eine sichere Item-Liste (entspr. der vorliegenden Situation) hat, kann man sogar alle Items, die nicht der eigenen white list entsprechen, entfernen. Aber auch hier muss schon wieder Aufwand und Nutzen (und Risiken) abgewogen werden.

Bernhard

Axel:
Hi,

vielen Dank für die Hinweise.  

Einen Punkt hatte ich bei meiner Fragestelung vergessen. Es soll eine andere Maske sein, also nicht die Memo-Maske aus der Mail-DB. Die Maske enthält außer den Mailinfos (Absender, Mailinhalt usw.) auch noch infos zur Adresse, Bearbeiter usw.

Hab' gestern Abend auch noch eine Lösung gefunden. Die zielt in eure Richtung.

Übernahme mit CopyAllItems
Alle Felder außer Body und $File löschen (ForAll item in newdoc.items...)
Zuweisen der Maske (newdoc.Form = ...)
Füllen der entsprechenden Felder

Scheint soweit ich das getestet habe, mit allen möglichen Mailinhalten zu funktionieren.


Axel

ata:
... ich hätte das Dokuemnt kopiert und nur die Maske umgeschossen...

ata

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln