Sie wollen eine Email aus einem Report heraus verschicken? Kein Problem, mit nur ganz wenigen Zeilen Code läßt sich das realisieren.
REPORT zpxxxx_send_html_mail.
DATA: gr_send_request TYPE REF TO cl_bcs.
DATA: gr_document TYPE REF TO cl_document_bcs.
DATA: gr_sender TYPE REF TO cl_sapuser_bcs.
DATA: gr_receiver TYPE REF TO if_recipient_bcs.
DATA: gt_body TYPE soli_tab.
DATA: g_subject TYPE so_obj_des.
DATA: l_recipient(241) TYPE c VALUE ‚bittner@hr-manager.de‘.
DATA: l_line TYPE string.
START-OF-SELECTION.
* Sendeauftrag anlegen
gr_send_request = cl_bcs=>create_persistent( ).
* Betreff
g_subject = ‚Test – Emailversand‘.
* Text für den Mailbody
l_line = ‚<p><b>This is a test</b></p>‘.
* Mailbody zeilenweise aufbauen
APPEND l_line TO gt_body.
* HTML-Mail anlegen
gr_document = cl_document_bcs=>create_document( i_type = ‚HTM‘
i_text = gt_body
i_subject = g_subject ).
* Dokument übergeben
gr_send_request->set_document( gr_document ).
* Absender
gr_sender = cl_sapuser_bcs=>create( sy–uname ).
gr_send_request->set_sender( gr_sender ).
* Empfänger
gr_receiver = cl_cam_address_bcs=>create_internet_address( l_recipient ).
gr_send_request->add_recipient( gr_receiver ).
* Sofort senden – nicht in SCOT Queue
gr_send_request->set_send_immediately( abap_true ).
* Senden
gr_send_request->send( ).
COMMIT WORK.
WRITE:/ ‚Dokument verschickt‘.
Das war es dann auch schon. Hier wird der Business Communication Service – Klasse CL_BCS – verwendet.
Hinweis: Wenn Sie den zur Verfügung gestellten Code verwenden so geschieht das auf eigene Gefahr.