SAP Example of sending external email via SAPCONNECT using

Example of sending external email via SAPCONNECT using


 *& Example of sending external email via SAPCONNECT using
 *& ABAP class interface CL_BCS
 REPORT zsendemail.
 *Data Declaration
 DATA: it_contents   TYPE STANDARD TABLE OF soli,
       wa_contents  	TYPE soli,
       it_attachment TYPE solix_tab,
       wa_receivers  TYPE uiys_iusr,
       ld_subject    TYPE so_obj_des,
       ld_att_size   TYPE so_obj_len,
       ld_att_text   TYPE xstring,
       ld_att_type   TYPE so_obj_tp VALUE 'XLS',
       ld_att_sub    TYPE so_obj_des VALUE 'Attachment'. "Attachment name
 DATA: send_email   TYPE REF TO cl_bcs,
       send_request TYPE REF TO cl_send_request_bcs,
       document     TYPE REF TO cl_document_bcs,
       recipient    TYPE REF TO if_recipient_bcs.
 PARAMETERS:	p_subjct TYPE string DEFAULT 'Subject',
             p_bodtxt TYPE string DEFAULT 'Main email body text',
             p_atttxt TYPE string DEFAULT 'Attachment text body',

p_recip TYPE string DEFAULT ''. CONSTANTS: gc_tab TYPE c VALUE cl_bcs_convert=>gc_tab, gc_crlf TYPE c VALUE cl_abap_char_utilities=>cr_lf. ************************************************************************ *START-OF-SELECTION START-OF-SELECTION. ld_subject = p_subjct. CONCATENATE '

' p_bodtxt '

' INTO wa_contents-line. APPEND wa_contents TO it_contents. * Create instance of the email class send_email = cl_bcs=>create_persistent( ). * Create email document inc type, subject and boby text document = cl_document_bcs=>create_document( i_type = 'HTM' i_subject = ld_subject i_text = it_contents ). CONCATENATE p_atttxt gc_crlf p_atttxt INTO p_atttxt. * Convert attachment text to xstring CALL FUNCTION 'SCMS_STRING_TO_XSTRING' EXPORTING text = p_atttxt * MIMETYPE = ' ' * ENCODING = IMPORTING buffer = ld_att_text EXCEPTIONS failed = 1 OTHERS = 2. * Add converted attachment text to the email attachment table it_attachment = cl_document_bcs=>xstring_to_solix( ld_att_text ). * Calculate size of attachment ld_att_size = xstrlen( ld_att_text ). * Add the attachment table to the document CALL METHOD document->add_attachment( i_attachment_type = ld_att_type i_attachment_subject = ld_att_sub i_attachment_size = ld_att_size i_att_content_hex = it_attachment ). * Assign document and all its details to the email CALL METHOD send_email->set_document( document ). * Setup email recipient wa_receivers-email = p_recip. recipient = cl_cam_address_bcs=>create_internet_address( wa_receivers-email ). *Assign recipient to email CALL METHOD send_email->add_recipient EXPORTING i_recipient = recipient i_express = 'X'. *Send email CALL METHOD send_email->send( i_with_error_screen = 'X' ). * Commit work!!! This is important email will not get sent or appear in SOST without this COMMIT WORK.

Comments on this SAP object

What made you want to lookup this SAP object? Please tell us what you were looking for and anything you would like to be included on this page!