<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Send a mail via ABAP program in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416324#M1049176</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this code will definately help you just go through it:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;firstly  exported the data to memory using the FM LIST_FROM_MEMORY. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'LIST_FROM_MEMORY'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;listobject = t_listobject&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;not_found = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&lt;/P&gt;&lt;P&gt;IF sy-subrc 0.&lt;/P&gt;&lt;P&gt;MESSAGE e000(su) WITH text-001.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then i converted it into ASCII using LIST_TO_ASCI,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'LIST_TO_ASCI'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;listasci = t_xlstab&lt;/P&gt;&lt;P&gt;listobject = t_listobject&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;empty_list = 1&lt;/P&gt;&lt;P&gt;list_index_invalid = 2&lt;/P&gt;&lt;P&gt;OTHERS = 3.&lt;/P&gt;&lt;P&gt;IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;MESSAGE e003(yuksdbfzs).&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This gives the data in ASCII format separated by '|' and the header has '-', dashes. If you use this internal table directly without any proccesing in SO_NEW_DOCUMENT_ATT_SEND_API1, then you will not get a good excel sheet attachment. To overcome this limitation, i used cl_abap_char_utilities=&amp;gt;newline and cl_abap_char_utilities=&amp;gt;horizontal_tab to add horizontal and vertical tabs to the internal table, replacing all occurences of '|' with &lt;/P&gt;&lt;P&gt;cl_abap_char_utilities=&amp;gt;horizontal_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Set the doc_type as 'XLS', create the body and header using the packing_list and pass the data to be downloaded to SO_NEW_DOCUMENT_ATT_SEND_API1 as contents_bin.&lt;/P&gt;&lt;P&gt;This will create an excel attachment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sample code for formatting the data for the attachment in excel format.&lt;/P&gt;&lt;P&gt;u2022	Format the data for excel file download &lt;/P&gt;&lt;P&gt;LOOP AT t_xlstab INTO wa_xlstab .&lt;/P&gt;&lt;P&gt;DESCRIBE TABLE t_xlstab LINES lw_cnt.&lt;/P&gt;&lt;P&gt;CLEAR lw_sytabix.&lt;/P&gt;&lt;P&gt;lw_sytabix = sy-tabix.&lt;/P&gt;&lt;P&gt;u2022	If not new line then replace '|' by tabs &lt;/P&gt;&lt;P&gt;IF NOT wa_xlstab EQ cl_abap_char_utilities=&amp;gt;newline.&lt;/P&gt;&lt;P&gt;REPLACE ALL OCCURRENCES OF '|' IN wa_xlstab&lt;/P&gt;&lt;P&gt;WITH cl_abap_char_utilities=&amp;gt;horizontal_tab.&lt;/P&gt;&lt;P&gt;MODIFY t_xlstab FROM wa_xlstab .&lt;/P&gt;&lt;P&gt;CLEAR wa_xlstab.&lt;/P&gt;&lt;P&gt;wa_xlstab = cl_abap_char_utilities=&amp;gt;newline.&lt;/P&gt;&lt;P&gt;IF lw_cnt NE 0 .&lt;/P&gt;&lt;P&gt;lw_sytabix = lw_sytabix + 1.&lt;/P&gt;&lt;P&gt;u2022	Insert new line for the excel data &lt;/P&gt;&lt;P&gt;INSERT wa_xlstab INTO t_xlstab INDEX lw_sytabix.&lt;/P&gt;&lt;P&gt;lw_cnt = lw_cnt - 1.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CLEAR wa_xlstab.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;Sample code for creating attachment and sending mail:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM send_mail .&lt;/P&gt;&lt;P&gt;u2022	Define the attachment format &lt;/P&gt;&lt;P&gt;lw_doc_type = 'XLS'.&lt;/P&gt;&lt;P&gt;u2022	Create the document which is to be sent &lt;/P&gt;&lt;P&gt;lwa_doc_chng-obj_name = 'List'.&lt;/P&gt;&lt;P&gt;lwa_doc_chng-obj_descr = w_subject. "Subject&lt;/P&gt;&lt;P&gt;lwa_doc_chng-obj_langu = sy-langu.&lt;/P&gt;&lt;P&gt;u2022	Fill the document data and get size of message &lt;/P&gt;&lt;P&gt;LOOP AT t_message.&lt;/P&gt;&lt;P&gt;lt_objtxt = t_message-line.&lt;/P&gt;&lt;P&gt;APPEND lt_objtxt.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DESCRIBE TABLE lt_objtxt LINES lw_tab_lines.&lt;/P&gt;&lt;P&gt;IF lw_tab_lines GT 0.&lt;/P&gt;&lt;P&gt;READ TABLE lt_objtxt INDEX lw_tab_lines.&lt;/P&gt;&lt;P&gt;lwa_doc_chng-doc_size = ( lw_tab_lines - 1 ) * 255 + STRLEN( lt_objtxt ).&lt;/P&gt;&lt;P&gt;lwa_doc_chng-obj_langu = sy-langu.&lt;/P&gt;&lt;P&gt;lwa_doc_chng-sensitivty = 'F'.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;lwa_doc_chng-doc_size = 0.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;u2022	Fill Packing List For the body of e-mail &lt;/P&gt;&lt;P&gt;lt_packing_list-head_start = 1.&lt;/P&gt;&lt;P&gt;lt_packing_list-head_num = 0.&lt;/P&gt;&lt;P&gt;lt_packing_list-body_start = 1.&lt;/P&gt;&lt;P&gt;lt_packing_list-body_num = lw_tab_lines.&lt;/P&gt;&lt;P&gt;lt_packing_list-doc_type = 'RAW'.&lt;/P&gt;&lt;P&gt;APPEND lt_packing_list.&lt;/P&gt;&lt;P&gt;u2022	Create the attachment (the list itself) &lt;/P&gt;&lt;P&gt;DESCRIBE TABLE t_xlstab LINES lw_tab_lines.&lt;/P&gt;&lt;P&gt;u2022	Fill the fields of the packing_list for creating the attachment: &lt;/P&gt;&lt;P&gt;lt_packing_list-transf_bin = 'X'.&lt;/P&gt;&lt;P&gt;lt_packing_list-head_start = 1.&lt;/P&gt;&lt;P&gt;lt_packing_list-head_num = 0.&lt;/P&gt;&lt;P&gt;lt_packing_list-body_start = 1.&lt;/P&gt;&lt;P&gt;lt_packing_list-body_num = lw_tab_lines.&lt;/P&gt;&lt;P&gt;lt_packing_list-doc_type = lw_doc_type.&lt;/P&gt;&lt;P&gt;lt_packing_list-obj_name = 'Attach'.&lt;/P&gt;&lt;P&gt;lt_packing_list-obj_descr = w_docdesc.&lt;/P&gt;&lt;P&gt;lt_packing_list-doc_size = lw_tab_lines * 255.&lt;/P&gt;&lt;P&gt;APPEND lt_packing_list.&lt;/P&gt;&lt;P&gt;u2022	Fill the mail recipient list &lt;/P&gt;&lt;P&gt;lt_reclist-rec_type = 'U'.&lt;/P&gt;&lt;P&gt;LOOP AT t_recipient_list.&lt;/P&gt;&lt;P&gt;lt_reclist-receiver = t_recipient_list-address.&lt;/P&gt;&lt;P&gt;APPEND lt_reclist.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;u2022	Finally send E-Mail &lt;/P&gt;&lt;P&gt;CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;document_data = lwa_doc_chng&lt;/P&gt;&lt;P&gt;put_in_outbox = 'X'&lt;/P&gt;&lt;P&gt;commit_work = 'X'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;sent_to_all = lw_sent_to_all&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;packing_list = lt_packing_list&lt;/P&gt;&lt;P&gt;object_header = lt_objhead&lt;/P&gt;&lt;P&gt;contents_bin = t_xlstab&lt;/P&gt;&lt;P&gt;contents_txt = lt_objtxt&lt;/P&gt;&lt;P&gt;receivers = lt_reclist&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;too_many_receivers = 1&lt;/P&gt;&lt;P&gt;document_not_sent = 2&lt;/P&gt;&lt;P&gt;document_type_not_exist = 3&lt;/P&gt;&lt;P&gt;operation_no_authorization = 4&lt;/P&gt;&lt;P&gt;parameter_error = 5&lt;/P&gt;&lt;P&gt;x_error = 6&lt;/P&gt;&lt;P&gt;enqueue_error = 7&lt;/P&gt;&lt;P&gt;OTHERS = 8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it will help you&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rahul sharma&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 16 Sep 2008 04:36:41 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-09-16T04:36:41Z</dc:date>
    <item>
      <title>Send a mail via ABAP program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416319#M1049171</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Experts,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to send mail via ABAP program with the following requirements :&lt;/P&gt;&lt;P&gt;1. Recipient is OUTLOOK email -id&lt;/P&gt;&lt;P&gt;2. Sender address has to be an external email-id&lt;/P&gt;&lt;P&gt;3. Send mail as CC and BCC also to other email-id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there any function module which can satisfy all the above requirements.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Mansi.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Sep 2008 04:30:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416319#M1049171</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-09-16T04:30:25Z</dc:date>
    </item>
    <item>
      <title>Re: Send a mail via ABAP program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416320#M1049172</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try this FM 'SO_DOCUMENT_SEND_API1'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks,&lt;/P&gt;&lt;P&gt;Deepti A&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Sep 2008 04:33:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416320#M1049172</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-09-16T04:33:55Z</dc:date>
    </item>
    <item>
      <title>Re: Send a mail via ABAP program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416321#M1049173</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;These are the FM for sending external email :- &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SO_DOCUMENT_SEND_API1  &lt;/P&gt;&lt;P&gt;SAPoffice: Send new document with attachments via RFC  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SO_NEW_DOCUMENT_ATT_SEND_API1 &lt;/P&gt;&lt;P&gt;(In 4.6C only, You can go to SE37 and click the documentation on how to use it. A sample program is provided there.) &lt;/P&gt;&lt;P&gt;SAPoffice: Send new document with attachments via RFC  &lt;/P&gt;&lt;P&gt;Note : If you are using FM SO_NEW_DOCUMENT_ATT_SEND_API1 then Export Parameter DOCUMENT_DATA-OBJ_DESCR contains the Subject.  &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SO_NEW_DOCUMENT_SEND_API1  &lt;/P&gt;&lt;P&gt;SAPoffice: Send new document&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Sep 2008 04:34:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416321#M1049173</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-09-16T04:34:38Z</dc:date>
    </item>
    <item>
      <title>Re: Send a mail via ABAP program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416322#M1049174</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;check this function&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SO_DOCUMENT_SEND_API1, read documentation.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Sep 2008 04:36:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416322#M1049174</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-09-16T04:36:08Z</dc:date>
    </item>
    <item>
      <title>Re: Send a mail via ABAP program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416323#M1049175</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sample&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT ZREPORT_TO_EMAIL NO STANDARD PAGE HEADING LINE-SIZE 200. 

DATA : BEGIN OF ITAB OCCURS 0, 
PERNR LIKE PA0001-PERNR, 
ENAME LIKE PA0001-ENAME, 
END OF ITAB. 

DATA: message_content LIKE soli OCCURS 10 WITH HEADER LINE, 
receiver_list LIKE soos1 OCCURS 5 WITH HEADER LINE, 
packing_list LIKE soxpl OCCURS 2 WITH HEADER LINE, 
listobject LIKE abaplist OCCURS 10, 
compressed_attachment LIKE soli OCCURS 100 WITH HEADER LINE, 
w_object_hd_change LIKE sood1, 
compressed_size LIKE sy-index. 

START-OF-SELECTION. 

SELECT PERNR ENAME 
INTO CORRESPONDING FIELDS OF TABLE ITAB 
FROM PA0001 
WHERE PERNR &amp;lt; 50. 

LOOP AT ITAB. 
WRITE :/02 SY-VLINE , ITAB-PERNR, 15 SY-VLINE , ITAB-ENAME, 50 
SY-VLINE. 
ENDLOOP. 
  

* Receivers 
receiver_list-recextnam = 'EXTERNAL-MAIL-ID'. "--&amp;gt; 
* EMAIL ADDRESS 
RECEIVER_list-RECESC = 'E'. "&amp;lt;- 
RECEIVER_list-SNDART = 'INT'."&amp;lt;- 
RECEIVER_list-SNDPRI = '1'."&amp;lt;- 

APPEND receiver_list. 

* General data 
w_object_hd_change-objla = sy-langu. 
w_object_hd_change-objnam = 'Object name'. 
w_object_hd_change-objsns = 'P'. 
* Mail subject 
w_object_hd_change-objdes = 'Message subject'. 

* Mail body 
APPEND 'Message content' TO message_content. 

* Attachment 
CALL FUNCTION 'SAVE_LIST' 
EXPORTING 
list_index = '0' 
TABLES 
listobject = listobject. 
CALL FUNCTION 'TABLE_COMPRESS' 
IMPORTING 
compressed_size = compressed_size 
TABLES 
in = listobject 
out = compressed_attachment. 
DESCRIBE TABLE compressed_attachment. 
CLEAR packing_list. 
packing_list-transf_bin = 'X'. 
packing_list-head_start = 0. 
packing_list-head_num = 0. 
packing_list-body_start = 1. 
packing_list-body_num = sy-tfill. 
packing_list-objtp = 'ALI'. 
packing_list-objnam = 'Object name'. 
packing_list-objdes = 'Attachment description'. 
packing_list-objlen = compressed_size. 
APPEND packing_list. 

CALL FUNCTION 'SO_OBJECT_SEND' 
EXPORTING 
object_hd_change = w_object_hd_change 
object_type = 'RAW' 
owner = sy-uname 
TABLES 
objcont = message_content 
receivers = receiver_list 
packing_list = packing_list 
att_cont = compressed_attachment.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Sep 2008 04:36:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416323#M1049175</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-09-16T04:36:40Z</dc:date>
    </item>
    <item>
      <title>Re: Send a mail via ABAP program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416324#M1049176</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this code will definately help you just go through it:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;firstly  exported the data to memory using the FM LIST_FROM_MEMORY. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'LIST_FROM_MEMORY'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;listobject = t_listobject&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;not_found = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&lt;/P&gt;&lt;P&gt;IF sy-subrc 0.&lt;/P&gt;&lt;P&gt;MESSAGE e000(su) WITH text-001.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then i converted it into ASCII using LIST_TO_ASCI,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'LIST_TO_ASCI'&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;listasci = t_xlstab&lt;/P&gt;&lt;P&gt;listobject = t_listobject&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;empty_list = 1&lt;/P&gt;&lt;P&gt;list_index_invalid = 2&lt;/P&gt;&lt;P&gt;OTHERS = 3.&lt;/P&gt;&lt;P&gt;IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;MESSAGE e003(yuksdbfzs).&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This gives the data in ASCII format separated by '|' and the header has '-', dashes. If you use this internal table directly without any proccesing in SO_NEW_DOCUMENT_ATT_SEND_API1, then you will not get a good excel sheet attachment. To overcome this limitation, i used cl_abap_char_utilities=&amp;gt;newline and cl_abap_char_utilities=&amp;gt;horizontal_tab to add horizontal and vertical tabs to the internal table, replacing all occurences of '|' with &lt;/P&gt;&lt;P&gt;cl_abap_char_utilities=&amp;gt;horizontal_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Set the doc_type as 'XLS', create the body and header using the packing_list and pass the data to be downloaded to SO_NEW_DOCUMENT_ATT_SEND_API1 as contents_bin.&lt;/P&gt;&lt;P&gt;This will create an excel attachment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sample code for formatting the data for the attachment in excel format.&lt;/P&gt;&lt;P&gt;u2022	Format the data for excel file download &lt;/P&gt;&lt;P&gt;LOOP AT t_xlstab INTO wa_xlstab .&lt;/P&gt;&lt;P&gt;DESCRIBE TABLE t_xlstab LINES lw_cnt.&lt;/P&gt;&lt;P&gt;CLEAR lw_sytabix.&lt;/P&gt;&lt;P&gt;lw_sytabix = sy-tabix.&lt;/P&gt;&lt;P&gt;u2022	If not new line then replace '|' by tabs &lt;/P&gt;&lt;P&gt;IF NOT wa_xlstab EQ cl_abap_char_utilities=&amp;gt;newline.&lt;/P&gt;&lt;P&gt;REPLACE ALL OCCURRENCES OF '|' IN wa_xlstab&lt;/P&gt;&lt;P&gt;WITH cl_abap_char_utilities=&amp;gt;horizontal_tab.&lt;/P&gt;&lt;P&gt;MODIFY t_xlstab FROM wa_xlstab .&lt;/P&gt;&lt;P&gt;CLEAR wa_xlstab.&lt;/P&gt;&lt;P&gt;wa_xlstab = cl_abap_char_utilities=&amp;gt;newline.&lt;/P&gt;&lt;P&gt;IF lw_cnt NE 0 .&lt;/P&gt;&lt;P&gt;lw_sytabix = lw_sytabix + 1.&lt;/P&gt;&lt;P&gt;u2022	Insert new line for the excel data &lt;/P&gt;&lt;P&gt;INSERT wa_xlstab INTO t_xlstab INDEX lw_sytabix.&lt;/P&gt;&lt;P&gt;lw_cnt = lw_cnt - 1.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;CLEAR wa_xlstab.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;Sample code for creating attachment and sending mail:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM send_mail .&lt;/P&gt;&lt;P&gt;u2022	Define the attachment format &lt;/P&gt;&lt;P&gt;lw_doc_type = 'XLS'.&lt;/P&gt;&lt;P&gt;u2022	Create the document which is to be sent &lt;/P&gt;&lt;P&gt;lwa_doc_chng-obj_name = 'List'.&lt;/P&gt;&lt;P&gt;lwa_doc_chng-obj_descr = w_subject. "Subject&lt;/P&gt;&lt;P&gt;lwa_doc_chng-obj_langu = sy-langu.&lt;/P&gt;&lt;P&gt;u2022	Fill the document data and get size of message &lt;/P&gt;&lt;P&gt;LOOP AT t_message.&lt;/P&gt;&lt;P&gt;lt_objtxt = t_message-line.&lt;/P&gt;&lt;P&gt;APPEND lt_objtxt.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DESCRIBE TABLE lt_objtxt LINES lw_tab_lines.&lt;/P&gt;&lt;P&gt;IF lw_tab_lines GT 0.&lt;/P&gt;&lt;P&gt;READ TABLE lt_objtxt INDEX lw_tab_lines.&lt;/P&gt;&lt;P&gt;lwa_doc_chng-doc_size = ( lw_tab_lines - 1 ) * 255 + STRLEN( lt_objtxt ).&lt;/P&gt;&lt;P&gt;lwa_doc_chng-obj_langu = sy-langu.&lt;/P&gt;&lt;P&gt;lwa_doc_chng-sensitivty = 'F'.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;lwa_doc_chng-doc_size = 0.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;u2022	Fill Packing List For the body of e-mail &lt;/P&gt;&lt;P&gt;lt_packing_list-head_start = 1.&lt;/P&gt;&lt;P&gt;lt_packing_list-head_num = 0.&lt;/P&gt;&lt;P&gt;lt_packing_list-body_start = 1.&lt;/P&gt;&lt;P&gt;lt_packing_list-body_num = lw_tab_lines.&lt;/P&gt;&lt;P&gt;lt_packing_list-doc_type = 'RAW'.&lt;/P&gt;&lt;P&gt;APPEND lt_packing_list.&lt;/P&gt;&lt;P&gt;u2022	Create the attachment (the list itself) &lt;/P&gt;&lt;P&gt;DESCRIBE TABLE t_xlstab LINES lw_tab_lines.&lt;/P&gt;&lt;P&gt;u2022	Fill the fields of the packing_list for creating the attachment: &lt;/P&gt;&lt;P&gt;lt_packing_list-transf_bin = 'X'.&lt;/P&gt;&lt;P&gt;lt_packing_list-head_start = 1.&lt;/P&gt;&lt;P&gt;lt_packing_list-head_num = 0.&lt;/P&gt;&lt;P&gt;lt_packing_list-body_start = 1.&lt;/P&gt;&lt;P&gt;lt_packing_list-body_num = lw_tab_lines.&lt;/P&gt;&lt;P&gt;lt_packing_list-doc_type = lw_doc_type.&lt;/P&gt;&lt;P&gt;lt_packing_list-obj_name = 'Attach'.&lt;/P&gt;&lt;P&gt;lt_packing_list-obj_descr = w_docdesc.&lt;/P&gt;&lt;P&gt;lt_packing_list-doc_size = lw_tab_lines * 255.&lt;/P&gt;&lt;P&gt;APPEND lt_packing_list.&lt;/P&gt;&lt;P&gt;u2022	Fill the mail recipient list &lt;/P&gt;&lt;P&gt;lt_reclist-rec_type = 'U'.&lt;/P&gt;&lt;P&gt;LOOP AT t_recipient_list.&lt;/P&gt;&lt;P&gt;lt_reclist-receiver = t_recipient_list-address.&lt;/P&gt;&lt;P&gt;APPEND lt_reclist.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;u2022	Finally send E-Mail &lt;/P&gt;&lt;P&gt;CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;document_data = lwa_doc_chng&lt;/P&gt;&lt;P&gt;put_in_outbox = 'X'&lt;/P&gt;&lt;P&gt;commit_work = 'X'&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;sent_to_all = lw_sent_to_all&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;packing_list = lt_packing_list&lt;/P&gt;&lt;P&gt;object_header = lt_objhead&lt;/P&gt;&lt;P&gt;contents_bin = t_xlstab&lt;/P&gt;&lt;P&gt;contents_txt = lt_objtxt&lt;/P&gt;&lt;P&gt;receivers = lt_reclist&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;too_many_receivers = 1&lt;/P&gt;&lt;P&gt;document_not_sent = 2&lt;/P&gt;&lt;P&gt;document_type_not_exist = 3&lt;/P&gt;&lt;P&gt;operation_no_authorization = 4&lt;/P&gt;&lt;P&gt;parameter_error = 5&lt;/P&gt;&lt;P&gt;x_error = 6&lt;/P&gt;&lt;P&gt;enqueue_error = 7&lt;/P&gt;&lt;P&gt;OTHERS = 8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it will help you&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rahul sharma&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Sep 2008 04:36:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416324#M1049176</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-09-16T04:36:41Z</dc:date>
    </item>
    <item>
      <title>Re: Send a mail via ABAP program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416325#M1049177</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi sapuser,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please refer to the following blog to configure the email setup.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_blogpost" href="https://community.sap.com/" __jive_macro_name="blogpost" modifiedtitle="true" __default_attr="39684"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Try the below code to send mail.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="5824139"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Indu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Sep 2008 05:06:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/send-a-mail-via-abap-program/m-p/4416325#M1049177</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-09-16T05:06:35Z</dc:date>
    </item>
  </channel>
</rss>

