Standardmäßig ermöglicht FastReport.Net E-Mails mit einer angehängten Berichtsdatei in einem der verfügbaren Exportformate zu senden. Manchmal ist es jedoch erforderlich, den Inhalt eines Berichts in den Textkörper einer E-Mail einzufügen. Diese Möglichkeit kann gefragt sein, wenn Sie beabsichtigen, den Inhalt des Berichts in einer Korrespondenz zu besprechen. In Antworten auf eine E-Mail mit einer angehängten Datei wird diese Datei nicht mehr angezeigt. Deshalb muss man sich die Zeit nehmen, einen Brief mit der angehängten Datei zu finden, um den Bericht zu sehen und zu verstehen, worum es geht. Dies kann auch nützlich sein, wenn Sie Ihre E-Mails auf Ihrem mobilen Gerät durchsehen. Eine Berichtsdatei zu herunterladen und in einer anderen Anwendung zu öffnen, es ist nicht sehr praktisch.
In FastReport.Net können wir E-Mails aus dem Code einer benutzerdefinierten Anwendung senden und damit die Einstellungen für E-Mails festlegen. Leider kann eine E-Mail-Nachricht nur Klarschrift enthalten, ohne Bilder und HTML-Markierung. Daher können wir den Export des Berichts in das TXT-Format verwenden, um ihn dann in den Text der E-Mail einzufügen.
Natürlich hat das txt-Exportformat viele Einschränkungen – das völlige Fehlen von Grafiken, interaktiven Objekten und komplexen Markups - nur Text. Daher sollte es nur in einfachen Berichten mit klarer Datenhierarchie und einfachem Markierung verwendet werden. Ein ideales Beispiel sind einfache Listen. Betrachten Sie ein Beispiel für das Senden einer E-Mail mit einem Bericht in einer Nachricht:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
//Erstellen wir einen Export in ein Textformat FastReport.Export.Text.TextExport text = new FastReport.Export.Text.TextExport(); //Exportieren wir in eine Datei oder einen Stream report.Export(text, "Template.txt"); //Erstellen wir einen Export in einen Brief FastReport.Export.Email.EmailExport email = new FastReport.Export.Email.EmailExport(); //Geben wir den Titel des Briefes ein email.Subject = "Test"; //Geben wir die Antwortnachricht im Textformat ein email.MessageBody = File.ReadAllText("Template2.txt"); //Geben Sie die Adresse des Empfängers ein email.Address = "gromozeka@gmail.com"; //Geben Sie die Adresse des Absenders ein email.Account.Address = "gromozeka@yandex.ru"; //Geben wir den Server für das Senden von E-Mails ein email.Account.Host = "smtp.yandex.ru"; //Geben wir den Namen des Absenders ein email.Account.Name = "gromozeka"; //Geben Sie den Benutzernamen ein email.Account.UserName = "gromozeka"; //Passwort des Benutzers festlegen email.Account.Password = "******"; //Geben wir den Port des Mailservers ein email.Account.Port = 25; //Aktivieren wir die Verschlüsselung, falls erforderlich email.Account.EnableSSL = true; //Senden wir einen Brief email.SendEmail(report); |
Mechanismus von der Sendung von E-Mails in FR.Net impliziert der Versand einer E-Mail mit dem angehängten Bericht, so wurde standardmäßig Berichtsvorlage beigefügt, wenn Sie ein bestimmtes Format für den Export der angehängten Datei nicht gefragt hatte.
Jetzt sehen wir, was wir in dem Brief bekommen. Aber schauen Sie sich zuerst den ursprünglichen Bericht an:
Es gibt schöne Rahmen, Farbverlaufsüberschriften und Bilder. All dies wird in der Textansicht des Berichts nicht angezeigt.
So sieht der Brief mit dem Bericht in der Nachricht aus:
Der Bericht ist ganz erkennbar. Wenn das Erscheinungsbild des Berichts nicht grundsätzlich ist, sondern müssen Sie nur Informationen vermitteln, ist den Weg vom Senden des Berichts im Körper des Briefes geeignet.