17. März 2009 01:02
Unsere Marketingabteilung möchte gerne aus Segmenten Serienemails versenden. Und zwar mit persönlicher Anrede, Dateianhängen und natürlich noch am Liebsten mit Textformatierung. Nach dem automatischen Erstellen der Mails sollen sie aber nicht sofort verschickt werden, sondern fertig (mit Text und Anhang) als Outlook-Mail auf dem Bildschirm erscheinen, so dass man nochmal drüber sehen kann. Ist alles ok, klickt man auf "Senden".
Die Textformatierung konnte ich ihnen noch ausreden. Jedoch hat jeder Weg, den ich zur Realisierung gegangen bin, einen Haken.
Die Basis ist ein Report, der aus einer Textdatei den Haupttext der Mail einliest und über dessen Requestform die anzuhängenden Dateien angegeben werden können. Über Segmentkopf->Segmentzeilen liest er dann aus der Kontaktkarte den Namen und den Anredecode und stellt die Anredezeile zusammen, die dann oberhalb des Haupttexts aus der Textdatei kommt. So weit, so gut.
1. Ansatz: Mails über die Codeunit 397 generieren. Hier kann man die Standardfunktionen benutzen. Das klappt auch eigentlich super, bis auf den kleinen Nachteil, dass man die Dateianhänge mit dem Mailclient Mozilla Thunderbird nicht lesen kann :( Das liegt ansich an Thunderbird, da der die Mail nicht richtig dekodieren kann, wenn sie im Richtext Format gesendet wird. Das erscheint zwar nicht ganz logisch, da die Mail als HTML-Mail generiert wird (was im Fenster der Mail auch eindeutig so steht). Es ist aber egal , ob man die Mail als HTML oder Text Only erstellen lässt - Thunderbird kann sie ohne Addons nicht lesen. Im AOL-Client verhält sich das wohl genauso. Da ich nicht davon ausgehen kann, dass jeder Outlook als Mail-Client hat (Outlook empfängt die Mail problemlos und richtig), habe ich diesen Weg also erstmal verworfen.
2. Ansatz: ich habe mir über die Outlook-Automations eine eigene Codeunit zum Mailversand gebaut. In der treten die oben genannten Probleme nicht auf. Aber: der Mailbody muss als Variable übergeben werden. Somit ist bei 1024 Zeichen Schluss. Das ist aber zu wenig Platz. Zweites Problem: wenn viele Mails generiert werden und dementsprechend viele Mailfenster geöffnet auf dem Bildschirm sind, kommt ab der 99. Mail eine Outlook-Fehlermeldung, dass der Anhang in dem gewählten Verzeichnis nicht erstellt werden kann. Das könnte man noch umgehen, indem man die Mails häppchenweise verschickt, aber die Beschränkung auf 1024 Zeichen bleibt immer noch. Also auch Käse.
3. Ansatz: Versand per SMTP (Codeunit 400). Das kann sowohl mehr als 1024 Zeichen als auch den problemlosen Versand der Anhänge. Aber die Mails können vor dem Versand nicht mehr durchgelesen werden, da SMTP kein Mailfenster öffnen kann.
4. Ansatz; ich erstelle eine Excel-Tabelle mit der Liste der Empfänger, die man in der Word-Serien-Mail-Funktion verarbeiten kann. Nur finde ich da ums Verrecken keinen Weg, um Dateianhänge mizugeben
Wenn jemand mir die Lösung für eines der 4 Probleme verraten kann (oder eine externe Lösung weiss, die alles beherrscht), wäre ich echt sehr dankbar, da ich so langsam an der Sache verzweifele.
Ich hoffe, ich habe in der Forensuche nicht die Lösung übersehen :)