Worddokument in Mailbody einfügen

6. Januar 2016 10:40

Hallo zusammen

Ich habe die Aufgabe, einen Emailversand zu erstellen. Die Mails sollen über SMTP verschickt werden. Das habe ich grundsätzlich alles hinbekommen mit einer Ausnahme. Im Mailbody soll als Inhalt ein vorher erzeugtes Worddokument eingefügt werden, also so, wie das der Standard beim Versand von Emails über Aktivitäten macht. Dort wird jedoch die NAV-Funktion für die Email-Erstellung vewendet, was ich aber mit SMTP nicht nutzen kann.

Ich habe eine Variable vom Typ Microsoft.Dynamics.Nav.SMTP.SmtpMessage.'Microsoft.Dynamics.Nav.SMTP erstellt. DIese hat die Methode AddAttachment mit der Syntax '[string AddAttachment :=] Mail.AddAttachment(System.IO.Stream attachmentStream, string attachmentName)'. Ich vermute, damit würde das Dokument direkt in den Body eingefügt.

Mein Problem ist nun dass ich nicht weiss, wie ich 'System.IO.Stream' definieren muss, damit ich das an dieser Stelle übergeben kann.

Kann mir da vielleicht jemand weiterhelfen bitte?

Re: Worddokument in Mailbody einfügen

6. Januar 2016 12:35

Hallo,

normalerweise ist das Attachment ein Mailangang, nicht der Body selbst.
Ob es eine gute Idee ist, ein Word- Document als Mail-Body zu verwenden (es sei denn es wird in HTML umgewandelt), denn nicht alle Mailprogramme können mit Word- Dokumenten umgehen.

Für das generelle Verfahren müsstest du dich mit dem Aufbau von Mails und dem Thema "Mime- Type" auseinander setzen.

Gruß Fiddi

Re: Worddokument in Mailbody einfügen

6. Januar 2016 12:41

Hi,

Ja, der Body wird als HTML formatiert. Das macht der Standard genauso, einfach über die CU 397, und ich möchte das nun einfach über die Funktionen de CU 400 tun. Wie gesagt, den Aufbau des Mails habe ich schon. Ich kann darin Tabellen erstellen und mit Daten füllen, Signaturen und Bilder mit Links einfügen, usw.

Was mir noch fehlt ist die Ecke mit einem Word als Inhalt, damit eben der Kunde hier freier ist in der Gestaltung des Emails, da das Worddoku dann irgendwo 'ausserhalb', bzw. über die Aktivitätenvoralgen erstellt und unterhalten werden kann

Re: Worddokument in Mailbody einfügen

7. Januar 2016 09:19

Hallo,

das einfachste dürfte sein, die Word- Datei als HTML abzuspeichern, und den Inhalt als Mailbody zu verschicken.

Gruß Fiddi

Re: Worddokument in Mailbody einfügen

7. Januar 2016 09:33

fiddi hat geschrieben:das einfachste dürfte sein, die Word- Datei als HTML abzuspeichern, und den Inhalt als Mailbody zu verschicken


Hi Fiddi,

Ja, genau das möchte ich eigentlich erreichen :-D
Nur, wie bekomme ich denn das html-file in den Body rein? Da blick ich eben leider nicht durch. :-(

Re: Worddokument in Mailbody einfügen

7. Januar 2016 10:11

Nur, wie bekomme ich denn das html-file in den Body rein? Da blick ich eben leider nicht durch


Nun der einfachste Weg dürfte sein, die HTML-Datei in eine Bigtext- Variable einzulesen, dann mit BigTExt.GETSUBTEXT(TextVar,1) in eine Textvariable zu packen, und dann mit Mail.AppendBoddy(TextVar) dem Mailbody hinzuzufügen.

Das sollte es gewesen sein.

Gruß Fiddi