<?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: E-mail functionality using so_new_document_att_send_api1 in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569185#M1078181</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi try this code&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZTEST_2                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZTEST_2                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  ztest_2                                 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF t_email_update_iw32,&lt;/P&gt;&lt;P&gt;         aufnr LIKE viaufks-aufnr,&lt;/P&gt;&lt;P&gt;         vornr LIKE afvc-vornr,&lt;/P&gt;&lt;P&gt;         text(220),&lt;/P&gt;&lt;P&gt;        END OF t_email_update_iw32.&lt;/P&gt;&lt;P&gt;DATA : gt_email_update_iw32 TYPE STANDARD TABLE OF t_email_update_iw32,&lt;/P&gt;&lt;P&gt;       gw_email_update_iw32 TYPE t_email_update_iw32.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF t_email_date_error,&lt;/P&gt;&lt;P&gt;         aufnr LIKE viaufks-aufnr,&lt;/P&gt;&lt;P&gt;         prueflos LIKE qamr-prueflos,&lt;/P&gt;&lt;P&gt;         merknr  LIKE qamr-merknr,&lt;/P&gt;&lt;P&gt;         text(220),&lt;/P&gt;&lt;P&gt;        END OF t_email_date_error.&lt;/P&gt;&lt;P&gt;DATA : gt_email_date_error TYPE STANDARD TABLE OF t_email_date_error,&lt;/P&gt;&lt;P&gt;       gw_email_date_error TYPE t_email_date_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF t_email_conf_doc_error,&lt;/P&gt;&lt;P&gt;         aufnr LIKE viaufks-aufnr,&lt;/P&gt;&lt;P&gt;         vornr LIKE afvc-vornr,&lt;/P&gt;&lt;P&gt;         text(220),&lt;/P&gt;&lt;P&gt;        END OF t_email_conf_doc_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : gt_email_conf_doc_error TYPE STANDARD TABLE OF&lt;/P&gt;&lt;P&gt;t_email_conf_doc_error,&lt;/P&gt;&lt;P&gt;       gw_email_conf_doc_error TYPE t_email_conf_doc_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK b4 WITH FRAME TITLE text-004.&lt;/P&gt;&lt;P&gt;PARAMETERS : cb_email AS CHECKBOX DEFAULT 'X'.&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN COMMENT (16) text-007 FOR FIELD p_email1.&lt;/P&gt;&lt;P&gt;PARAMETERS : p_email LIKE somlreci1-receiver,&lt;/P&gt;&lt;P&gt;             p_email1 LIKE adr6-smtp_addr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS : p_table1 AS CHECKBOX,&lt;/P&gt;&lt;P&gt;             p_table2 AS CHECKBOX,&lt;/P&gt;&lt;P&gt;             p_table3 AS CHECKBOX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK b4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR gw_email_update_iw32.&lt;/P&gt;&lt;P&gt;REFRESH gt_email_update_iw32.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-aufnr = '1234567'.&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-vornr = '0010'.&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-text = 'This is table1'.&lt;/P&gt;&lt;P&gt;APPEND  gw_email_update_iw32 TO gt_email_update_iw32.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR gw_email_update_iw32.&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-aufnr = '4564578'.&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-vornr = '0020'.&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-text = 'This is table1'.&lt;/P&gt;&lt;P&gt;APPEND  gw_email_update_iw32 TO gt_email_update_iw32.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gw_email_date_error-aufnr = '222615'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-prueflos = '1111'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-merknr = '2222'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-text = 'This is table2'.&lt;/P&gt;&lt;P&gt;APPEND gw_email_date_error TO gt_email_date_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gw_email_date_error-aufnr = '222615'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-prueflos = '3333'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-merknr = '4444'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-text = 'This is table2'.&lt;/P&gt;&lt;P&gt;APPEND gw_email_date_error TO gt_email_date_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-aufnr = '9900107987'.&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-vornr = '999999'.&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-text  = 'This is table3'.&lt;/P&gt;&lt;P&gt;APPEND gw_email_conf_doc_error TO gt_email_conf_doc_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-aufnr = '9900107987'.&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-vornr = '999999'.&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-text  = 'This is table3'.&lt;/P&gt;&lt;P&gt;APPEND gw_email_conf_doc_error TO gt_email_conf_doc_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : lw_space VALUE ''.&lt;/P&gt;&lt;P&gt;SET PARAMETER ID 'ZPDF' FIELD lw_space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : pripar LIKE pri_params.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GET_PRINT_PARAMETERS'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    in_parameters          = pripar&lt;/P&gt;&lt;P&gt;    line_size              = 255&lt;/P&gt;&lt;P&gt;    layout                 = 'X_65_132'&lt;/P&gt;&lt;P&gt;    no_dialog              = 'X'&lt;/P&gt;&lt;P&gt;  IMPORTING&lt;/P&gt;&lt;P&gt;    out_parameters         = pripar&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    archive_info_not_found = 1&lt;/P&gt;&lt;P&gt;    invalid_print_params   = 2&lt;/P&gt;&lt;P&gt;    invalid_archive_params = 3&lt;/P&gt;&lt;P&gt;    OTHERS                 = 4.&lt;/P&gt;&lt;P&gt;NEW-PAGE PRINT ON PARAMETERS pripar NO DIALOG .&lt;/P&gt;&lt;P&gt;RESERVE 5 LINES.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : text1(10) TYPE c  VALUE 'AUFNR',&lt;/P&gt;&lt;P&gt;       text2(10) TYPE c VALUE 'VORNR',&lt;/P&gt;&lt;P&gt;       text3(50) TYPE c VALUE 'TEXT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF p_table1 = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE  AT 10   text1. WRITE AT 30  text2 . WRITE AT 30 text3.&lt;/P&gt;&lt;P&gt;  LOOP AT  gt_email_update_iw32 INTO  gw_email_update_iw32.&lt;/P&gt;&lt;P&gt;    WRITE : /  gw_email_update_iw32-aufnr , gw_email_update_iw32-vornr ,&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-text.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE : / sy-uline .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF p_table2 = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE : / 'AUFNR' , 'PRUEFLOS' ,  'MERKNR', 'TEXT' .&lt;/P&gt;&lt;P&gt;  LOOP AT gt_email_date_error INTO gw_email_date_error.&lt;/P&gt;&lt;P&gt;    WRITE : / gw_email_date_error-aufnr, gw_email_date_error-prueflos,&lt;/P&gt;&lt;P&gt;gw_email_date_error-merknr,gw_email_date_error-text.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE : / sy-uline .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF p_table3 = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE : / 'AUFNR' , 'VORNR' , 'TEXT' .&lt;/P&gt;&lt;P&gt;  LOOP AT gt_email_conf_doc_error INTO gw_email_conf_doc_error.&lt;/P&gt;&lt;P&gt;    WRITE : / gw_email_conf_doc_error-aufnr,&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-vornr, gw_email_conf_doc_error-text.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NEW-PAGE PRINT OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : mtab_pdf LIKE tline OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : rqident LIKE tsp01-rqident ,&lt;/P&gt;&lt;P&gt;       rqcretime LIKE tsp01-rqcretime .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT  rqident  rqcretime FROM tsp01&lt;/P&gt;&lt;P&gt;       INTO (rqident,rqcretime)&lt;/P&gt;&lt;P&gt;       WHERE rqowner = sy-uname&lt;/P&gt;&lt;P&gt;       ORDER BY rqcretime DESCENDING.&lt;/P&gt;&lt;P&gt;  EXIT.&lt;/P&gt;&lt;P&gt;ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: spool_id LIKE tsp01-rqident.&lt;/P&gt;&lt;P&gt;MOVE  rqident TO spool_id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : p_file LIKE rlgrap-filename VALUE 'C:\file.pdf' ,&lt;/P&gt;&lt;P&gt;       numbytes TYPE i,&lt;/P&gt;&lt;P&gt;       cancel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    src_spoolid = spool_id&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      NO_DIALOG =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      DST_DEVICE =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PDF_DESTINATION =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;P&gt;    pdf_bytecount = numbytes&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PDF_SPOOLID =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      LIST_PAGECOUNT =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      BTC_JOBNAME =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      BTC_JOBCOUNT =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    pdf = mtab_pdf&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   err_no_abap_spooljob = 1&lt;/P&gt;&lt;P&gt;   err_no_spooljob = 2&lt;/P&gt;&lt;P&gt;   err_no_permission = 3&lt;/P&gt;&lt;P&gt;   err_conv_not_possible = 4&lt;/P&gt;&lt;P&gt;   err_bad_destdevice = 5&lt;/P&gt;&lt;P&gt;   user_cancelled = 6&lt;/P&gt;&lt;P&gt;   err_spoolerror = 7&lt;/P&gt;&lt;P&gt;   err_temseerror = 8&lt;/P&gt;&lt;P&gt;   err_btcjob_open_failed = 9&lt;/P&gt;&lt;P&gt;   err_btcjob_submit_failed = 10&lt;/P&gt;&lt;P&gt;   err_btcjob_close_failed = 11&lt;/P&gt;&lt;P&gt;   OTHERS = 12&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;  MESSAGE ID sy-msgid TYPE 'I' NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;  WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;end&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :  w_buffer TYPE string. "To convert from 132 to 255&lt;/P&gt;&lt;P&gt;DATA : i_record LIKE solisti1 OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT mtab_pdf.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Replacing space by ~&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TRANSLATE mtab_pdf USING ' ~'.&lt;/P&gt;&lt;P&gt;  CONCATENATE w_buffer mtab_pdf INTO w_buffer.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Replacing ~ by space&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TRANSLATE w_buffer USING '~ ' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DO.&lt;/P&gt;&lt;P&gt;  i_record = w_buffer.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Appending 255 characters as a record&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND i_record.&lt;/P&gt;&lt;P&gt;  SHIFT w_buffer LEFT BY 255 PLACES.&lt;/P&gt;&lt;P&gt;  IF w_buffer IS INITIAL.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*start try&lt;/P&gt;&lt;P&gt;DATA: objpack LIKE sopcklsti1 OCCURS 2 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: objhead LIKE solisti1 OCCURS 1 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: objbin LIKE solisti1 OCCURS 10 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: reclist LIKE somlreci1 OCCURS 5 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: doc_chng LIKE sodocchgi1.&lt;/P&gt;&lt;P&gt;DATA : tab_lines TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;doc_chng-obj_name = 'TEST'.&lt;/P&gt;&lt;P&gt;doc_chng-obj_descr = 'Mail came successfully'.&lt;/P&gt;&lt;P&gt;objtxt = 'Regards'.&lt;/P&gt;&lt;P&gt;APPEND objtxt.&lt;/P&gt;&lt;P&gt;objtxt = 'Nitin'.&lt;/P&gt;&lt;P&gt;APPEND objtxt.&lt;/P&gt;&lt;P&gt;objtxt = 'hahaha'.&lt;/P&gt;&lt;P&gt;APPEND objtxt.&lt;/P&gt;&lt;P&gt;DESCRIBE TABLE objtxt LINES tab_lines.&lt;/P&gt;&lt;P&gt;READ TABLE objtxt INDEX tab_lines.&lt;/P&gt;&lt;P&gt;doc_chng-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objtxt ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;* ERSTELLEN DES EINTRAGS ZUM KOMPRIMIERTEN DOKUMENT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;CLEAR objpack-transf_bin.&lt;/P&gt;&lt;P&gt;objpack-head_start = 1.&lt;/P&gt;&lt;P&gt;objpack-head_num = 0.&lt;/P&gt;&lt;P&gt;objpack-body_start = 1.&lt;/P&gt;&lt;P&gt;objpack-body_num = tab_lines.&lt;/P&gt;&lt;P&gt;objpack-doc_type = 'RAW'.&lt;/P&gt;&lt;P&gt;APPEND objpack.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;* ERSTELLEN DER ANLAGE FUR DAS DOKUMENT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**OBJBIN = '\O/ '. APPEND OBJBIN.&lt;/P&gt;&lt;P&gt;**OBJBIN = ' '. APPEND OBJBIN.&lt;/P&gt;&lt;P&gt;**OBJBIN = ' / \ '. APPEND OBJBIN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT i_record.&lt;/P&gt;&lt;P&gt;  objbin[] =  i_record[].&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DESCRIBE TABLE objbin LINES tab_lines.&lt;/P&gt;&lt;P&gt;*objhead = 'picasso.txt'. APPEND objhead.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;* Erstellen des Eintrags zur komprimierten Anlage&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;objpack-transf_bin = 'X'.&lt;/P&gt;&lt;P&gt;objpack-head_start = 1.&lt;/P&gt;&lt;P&gt;objpack-head_num = 1.&lt;/P&gt;&lt;P&gt;objpack-body_start = 1.&lt;/P&gt;&lt;P&gt;objpack-body_num = tab_lines.&lt;/P&gt;&lt;P&gt;objpack-doc_type = 'PDF'.&lt;/P&gt;&lt;P&gt;objpack-obj_name = 'PDF File received '.&lt;/P&gt;&lt;P&gt;objpack-obj_descr = 'PDF File received '.&lt;/P&gt;&lt;P&gt;*objpack-doc_size = ( tab_lines ) * 255 .&lt;/P&gt;&lt;P&gt;APPEND objpack.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;* Fullen der Empfangerliste&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;refresh reclist.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reclist-rec_type = 'U'.&lt;/P&gt;&lt;P&gt;reclist-receiver = p_email1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND reclist.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reclist-rec_type = 'B'.&lt;/P&gt;&lt;P&gt;reclist-receiver = sy-uname.&lt;/P&gt;&lt;P&gt;APPEND reclist.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reclist-rec_type = 'U'.&lt;/P&gt;&lt;P&gt;reclist-receiver = p_email.&lt;/P&gt;&lt;P&gt;APPEND reclist.&lt;/P&gt;&lt;P&gt;&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              = doc_chng&lt;/P&gt;&lt;P&gt;    put_in_outbox              = 'X'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    packing_list               = objpack&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   object_header              = objhead&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    contents_bin               = objbin&lt;/P&gt;&lt;P&gt;    contents_txt               = objtxt&lt;/P&gt;&lt;P&gt;    receivers                  = 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;    operation_no_authorization = 4&lt;/P&gt;&lt;P&gt;    OTHERS                     = 99.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 07 Oct 2008 06:48:24 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-10-07T06:48:24Z</dc:date>
    <item>
      <title>E-mail functionality using so_new_document_att_send_api1</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569184#M1078180</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;/P&gt;&lt;P&gt;We Implemented E-mail functionality in our tool useing "so_new_document_att_send_api1" standard FM but here im unable to attach excel document .How to attach a excel document in this standard FM plz help.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Asif&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Oct 2008 06:37:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569184#M1078180</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-07T06:37:21Z</dc:date>
    </item>
    <item>
      <title>Re: E-mail functionality using so_new_document_att_send_api1</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569185#M1078181</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi try this code&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZTEST_2                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZTEST_2                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  ztest_2                                 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF t_email_update_iw32,&lt;/P&gt;&lt;P&gt;         aufnr LIKE viaufks-aufnr,&lt;/P&gt;&lt;P&gt;         vornr LIKE afvc-vornr,&lt;/P&gt;&lt;P&gt;         text(220),&lt;/P&gt;&lt;P&gt;        END OF t_email_update_iw32.&lt;/P&gt;&lt;P&gt;DATA : gt_email_update_iw32 TYPE STANDARD TABLE OF t_email_update_iw32,&lt;/P&gt;&lt;P&gt;       gw_email_update_iw32 TYPE t_email_update_iw32.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF t_email_date_error,&lt;/P&gt;&lt;P&gt;         aufnr LIKE viaufks-aufnr,&lt;/P&gt;&lt;P&gt;         prueflos LIKE qamr-prueflos,&lt;/P&gt;&lt;P&gt;         merknr  LIKE qamr-merknr,&lt;/P&gt;&lt;P&gt;         text(220),&lt;/P&gt;&lt;P&gt;        END OF t_email_date_error.&lt;/P&gt;&lt;P&gt;DATA : gt_email_date_error TYPE STANDARD TABLE OF t_email_date_error,&lt;/P&gt;&lt;P&gt;       gw_email_date_error TYPE t_email_date_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF t_email_conf_doc_error,&lt;/P&gt;&lt;P&gt;         aufnr LIKE viaufks-aufnr,&lt;/P&gt;&lt;P&gt;         vornr LIKE afvc-vornr,&lt;/P&gt;&lt;P&gt;         text(220),&lt;/P&gt;&lt;P&gt;        END OF t_email_conf_doc_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : gt_email_conf_doc_error TYPE STANDARD TABLE OF&lt;/P&gt;&lt;P&gt;t_email_conf_doc_error,&lt;/P&gt;&lt;P&gt;       gw_email_conf_doc_error TYPE t_email_conf_doc_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK b4 WITH FRAME TITLE text-004.&lt;/P&gt;&lt;P&gt;PARAMETERS : cb_email AS CHECKBOX DEFAULT 'X'.&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN COMMENT (16) text-007 FOR FIELD p_email1.&lt;/P&gt;&lt;P&gt;PARAMETERS : p_email LIKE somlreci1-receiver,&lt;/P&gt;&lt;P&gt;             p_email1 LIKE adr6-smtp_addr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS : p_table1 AS CHECKBOX,&lt;/P&gt;&lt;P&gt;             p_table2 AS CHECKBOX,&lt;/P&gt;&lt;P&gt;             p_table3 AS CHECKBOX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK b4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR gw_email_update_iw32.&lt;/P&gt;&lt;P&gt;REFRESH gt_email_update_iw32.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-aufnr = '1234567'.&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-vornr = '0010'.&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-text = 'This is table1'.&lt;/P&gt;&lt;P&gt;APPEND  gw_email_update_iw32 TO gt_email_update_iw32.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR gw_email_update_iw32.&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-aufnr = '4564578'.&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-vornr = '0020'.&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-text = 'This is table1'.&lt;/P&gt;&lt;P&gt;APPEND  gw_email_update_iw32 TO gt_email_update_iw32.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gw_email_date_error-aufnr = '222615'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-prueflos = '1111'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-merknr = '2222'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-text = 'This is table2'.&lt;/P&gt;&lt;P&gt;APPEND gw_email_date_error TO gt_email_date_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gw_email_date_error-aufnr = '222615'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-prueflos = '3333'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-merknr = '4444'.&lt;/P&gt;&lt;P&gt;gw_email_date_error-text = 'This is table2'.&lt;/P&gt;&lt;P&gt;APPEND gw_email_date_error TO gt_email_date_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-aufnr = '9900107987'.&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-vornr = '999999'.&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-text  = 'This is table3'.&lt;/P&gt;&lt;P&gt;APPEND gw_email_conf_doc_error TO gt_email_conf_doc_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-aufnr = '9900107987'.&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-vornr = '999999'.&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-text  = 'This is table3'.&lt;/P&gt;&lt;P&gt;APPEND gw_email_conf_doc_error TO gt_email_conf_doc_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : lw_space VALUE ''.&lt;/P&gt;&lt;P&gt;SET PARAMETER ID 'ZPDF' FIELD lw_space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : pripar LIKE pri_params.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'GET_PRINT_PARAMETERS'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    in_parameters          = pripar&lt;/P&gt;&lt;P&gt;    line_size              = 255&lt;/P&gt;&lt;P&gt;    layout                 = 'X_65_132'&lt;/P&gt;&lt;P&gt;    no_dialog              = 'X'&lt;/P&gt;&lt;P&gt;  IMPORTING&lt;/P&gt;&lt;P&gt;    out_parameters         = pripar&lt;/P&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;    archive_info_not_found = 1&lt;/P&gt;&lt;P&gt;    invalid_print_params   = 2&lt;/P&gt;&lt;P&gt;    invalid_archive_params = 3&lt;/P&gt;&lt;P&gt;    OTHERS                 = 4.&lt;/P&gt;&lt;P&gt;NEW-PAGE PRINT ON PARAMETERS pripar NO DIALOG .&lt;/P&gt;&lt;P&gt;RESERVE 5 LINES.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : text1(10) TYPE c  VALUE 'AUFNR',&lt;/P&gt;&lt;P&gt;       text2(10) TYPE c VALUE 'VORNR',&lt;/P&gt;&lt;P&gt;       text3(50) TYPE c VALUE 'TEXT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF p_table1 = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE  AT 10   text1. WRITE AT 30  text2 . WRITE AT 30 text3.&lt;/P&gt;&lt;P&gt;  LOOP AT  gt_email_update_iw32 INTO  gw_email_update_iw32.&lt;/P&gt;&lt;P&gt;    WRITE : /  gw_email_update_iw32-aufnr , gw_email_update_iw32-vornr ,&lt;/P&gt;&lt;P&gt;gw_email_update_iw32-text.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE : / sy-uline .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF p_table2 = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE : / 'AUFNR' , 'PRUEFLOS' ,  'MERKNR', 'TEXT' .&lt;/P&gt;&lt;P&gt;  LOOP AT gt_email_date_error INTO gw_email_date_error.&lt;/P&gt;&lt;P&gt;    WRITE : / gw_email_date_error-aufnr, gw_email_date_error-prueflos,&lt;/P&gt;&lt;P&gt;gw_email_date_error-merknr,gw_email_date_error-text.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE : / sy-uline .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF p_table3 = 'X'.&lt;/P&gt;&lt;P&gt;  WRITE : / 'AUFNR' , 'VORNR' , 'TEXT' .&lt;/P&gt;&lt;P&gt;  LOOP AT gt_email_conf_doc_error INTO gw_email_conf_doc_error.&lt;/P&gt;&lt;P&gt;    WRITE : / gw_email_conf_doc_error-aufnr,&lt;/P&gt;&lt;P&gt;gw_email_conf_doc_error-vornr, gw_email_conf_doc_error-text.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NEW-PAGE PRINT OFF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : mtab_pdf LIKE tline OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : rqident LIKE tsp01-rqident ,&lt;/P&gt;&lt;P&gt;       rqcretime LIKE tsp01-rqcretime .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT  rqident  rqcretime FROM tsp01&lt;/P&gt;&lt;P&gt;       INTO (rqident,rqcretime)&lt;/P&gt;&lt;P&gt;       WHERE rqowner = sy-uname&lt;/P&gt;&lt;P&gt;       ORDER BY rqcretime DESCENDING.&lt;/P&gt;&lt;P&gt;  EXIT.&lt;/P&gt;&lt;P&gt;ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: spool_id LIKE tsp01-rqident.&lt;/P&gt;&lt;P&gt;MOVE  rqident TO spool_id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : p_file LIKE rlgrap-filename VALUE 'C:\file.pdf' ,&lt;/P&gt;&lt;P&gt;       numbytes TYPE i,&lt;/P&gt;&lt;P&gt;       cancel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    src_spoolid = spool_id&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      NO_DIALOG =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      DST_DEVICE =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PDF_DESTINATION =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; IMPORTING&lt;/P&gt;&lt;P&gt;    pdf_bytecount = numbytes&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PDF_SPOOLID =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      LIST_PAGECOUNT =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      BTC_JOBNAME =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      BTC_JOBCOUNT =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    pdf = mtab_pdf&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   err_no_abap_spooljob = 1&lt;/P&gt;&lt;P&gt;   err_no_spooljob = 2&lt;/P&gt;&lt;P&gt;   err_no_permission = 3&lt;/P&gt;&lt;P&gt;   err_conv_not_possible = 4&lt;/P&gt;&lt;P&gt;   err_bad_destdevice = 5&lt;/P&gt;&lt;P&gt;   user_cancelled = 6&lt;/P&gt;&lt;P&gt;   err_spoolerror = 7&lt;/P&gt;&lt;P&gt;   err_temseerror = 8&lt;/P&gt;&lt;P&gt;   err_btcjob_open_failed = 9&lt;/P&gt;&lt;P&gt;   err_btcjob_submit_failed = 10&lt;/P&gt;&lt;P&gt;   err_btcjob_close_failed = 11&lt;/P&gt;&lt;P&gt;   OTHERS = 12&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;  MESSAGE ID sy-msgid TYPE 'I' NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;  WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;end&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :  w_buffer TYPE string. "To convert from 132 to 255&lt;/P&gt;&lt;P&gt;DATA : i_record LIKE solisti1 OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT mtab_pdf.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Replacing space by ~&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TRANSLATE mtab_pdf USING ' ~'.&lt;/P&gt;&lt;P&gt;  CONCATENATE w_buffer mtab_pdf INTO w_buffer.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Replacing ~ by space&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TRANSLATE w_buffer USING '~ ' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DO.&lt;/P&gt;&lt;P&gt;  i_record = w_buffer.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Appending 255 characters as a record&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  APPEND i_record.&lt;/P&gt;&lt;P&gt;  SHIFT w_buffer LEFT BY 255 PLACES.&lt;/P&gt;&lt;P&gt;  IF w_buffer IS INITIAL.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*start try&lt;/P&gt;&lt;P&gt;DATA: objpack LIKE sopcklsti1 OCCURS 2 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: objhead LIKE solisti1 OCCURS 1 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: objbin LIKE solisti1 OCCURS 10 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: reclist LIKE somlreci1 OCCURS 5 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;DATA: doc_chng LIKE sodocchgi1.&lt;/P&gt;&lt;P&gt;DATA : tab_lines TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;doc_chng-obj_name = 'TEST'.&lt;/P&gt;&lt;P&gt;doc_chng-obj_descr = 'Mail came successfully'.&lt;/P&gt;&lt;P&gt;objtxt = 'Regards'.&lt;/P&gt;&lt;P&gt;APPEND objtxt.&lt;/P&gt;&lt;P&gt;objtxt = 'Nitin'.&lt;/P&gt;&lt;P&gt;APPEND objtxt.&lt;/P&gt;&lt;P&gt;objtxt = 'hahaha'.&lt;/P&gt;&lt;P&gt;APPEND objtxt.&lt;/P&gt;&lt;P&gt;DESCRIBE TABLE objtxt LINES tab_lines.&lt;/P&gt;&lt;P&gt;READ TABLE objtxt INDEX tab_lines.&lt;/P&gt;&lt;P&gt;doc_chng-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objtxt ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;* ERSTELLEN DES EINTRAGS ZUM KOMPRIMIERTEN DOKUMENT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;CLEAR objpack-transf_bin.&lt;/P&gt;&lt;P&gt;objpack-head_start = 1.&lt;/P&gt;&lt;P&gt;objpack-head_num = 0.&lt;/P&gt;&lt;P&gt;objpack-body_start = 1.&lt;/P&gt;&lt;P&gt;objpack-body_num = tab_lines.&lt;/P&gt;&lt;P&gt;objpack-doc_type = 'RAW'.&lt;/P&gt;&lt;P&gt;APPEND objpack.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;* ERSTELLEN DER ANLAGE FUR DAS DOKUMENT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**OBJBIN = '\O/ '. APPEND OBJBIN.&lt;/P&gt;&lt;P&gt;**OBJBIN = ' '. APPEND OBJBIN.&lt;/P&gt;&lt;P&gt;**OBJBIN = ' / \ '. APPEND OBJBIN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT i_record.&lt;/P&gt;&lt;P&gt;  objbin[] =  i_record[].&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DESCRIBE TABLE objbin LINES tab_lines.&lt;/P&gt;&lt;P&gt;*objhead = 'picasso.txt'. APPEND objhead.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;* Erstellen des Eintrags zur komprimierten Anlage&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;objpack-transf_bin = 'X'.&lt;/P&gt;&lt;P&gt;objpack-head_start = 1.&lt;/P&gt;&lt;P&gt;objpack-head_num = 1.&lt;/P&gt;&lt;P&gt;objpack-body_start = 1.&lt;/P&gt;&lt;P&gt;objpack-body_num = tab_lines.&lt;/P&gt;&lt;P&gt;objpack-doc_type = 'PDF'.&lt;/P&gt;&lt;P&gt;objpack-obj_name = 'PDF File received '.&lt;/P&gt;&lt;P&gt;objpack-obj_descr = 'PDF File received '.&lt;/P&gt;&lt;P&gt;*objpack-doc_size = ( tab_lines ) * 255 .&lt;/P&gt;&lt;P&gt;APPEND objpack.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;* Fullen der Empfangerliste&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;refresh reclist.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reclist-rec_type = 'U'.&lt;/P&gt;&lt;P&gt;reclist-receiver = p_email1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND reclist.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reclist-rec_type = 'B'.&lt;/P&gt;&lt;P&gt;reclist-receiver = sy-uname.&lt;/P&gt;&lt;P&gt;APPEND reclist.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reclist-rec_type = 'U'.&lt;/P&gt;&lt;P&gt;reclist-receiver = p_email.&lt;/P&gt;&lt;P&gt;APPEND reclist.&lt;/P&gt;&lt;P&gt;&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              = doc_chng&lt;/P&gt;&lt;P&gt;    put_in_outbox              = 'X'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    packing_list               = objpack&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   object_header              = objhead&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    contents_bin               = objbin&lt;/P&gt;&lt;P&gt;    contents_txt               = objtxt&lt;/P&gt;&lt;P&gt;    receivers                  = 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;    operation_no_authorization = 4&lt;/P&gt;&lt;P&gt;    OTHERS                     = 99.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Oct 2008 06:48:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569185#M1078181</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-07T06:48:24Z</dc:date>
    </item>
    <item>
      <title>Re: E-mail functionality using so_new_document_att_send_api1</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569186#M1078182</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;copy paste the below given code.it works perfect..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local TYPES declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TYPES : BEGIN OF ty_s_smtpadd,&lt;/P&gt;&lt;P&gt;              smtp_addr TYPE zglt_distr_list-smtp_addr,&lt;/P&gt;&lt;P&gt;            END OF ty_s_smtpadd,&lt;/P&gt;&lt;P&gt;            ty_t_smtpadd TYPE STANDARD TABLE OF ty_s_smtpadd.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local Data Declarations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    lv_tab_lines    TYPE sy-tabix,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    lt_objpack      TYPE STANDARD TABLE OF sopcklsti1, "Number of text lines&lt;/P&gt;&lt;P&gt;    lt_reclist      TYPE STANDARD TABLE OF somlreci1,  "Reciver's details&lt;/P&gt;&lt;P&gt;    lt_objhead      TYPE STANDARD TABLE OF solisti1,   " Column Length&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Workareas&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_objpack      TYPE sopcklsti1,                   "Number of text lines&lt;/P&gt;&lt;P&gt;  ls_reclist      TYPE somlreci1,                    "Reciver's details&lt;/P&gt;&lt;P&gt;  ls_doc_chng     TYPE sodocchgi1,                   "Mail Subject details&lt;/P&gt;&lt;P&gt;  ls_objhead      TYPE solisti1,&lt;/P&gt;&lt;P&gt;  lt_contents     TYPE STANDARD TABLE OF solisti1,&lt;/P&gt;&lt;P&gt;  ls_contents     TYPE solisti1,&lt;/P&gt;&lt;P&gt;  ls_err_rec      TYPE ty_output,&lt;/P&gt;&lt;P&gt;  lc_x(1)         TYPE c VALUE gc_x,&lt;/P&gt;&lt;P&gt;  lv_lines        TYPE i,&lt;/P&gt;&lt;P&gt;  lv_hex1(1)      TYPE c.                             "Carriage return&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  lv_hex1 = cl_abap_char_utilities=&amp;gt;cr_lf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Local Constant Declarations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CONSTANTS:&lt;/P&gt;&lt;P&gt;   lc_rec_typ(1)    TYPE c           VALUE 'U',&lt;/P&gt;&lt;P&gt;   lc_doc_typ_raw   TYPE so_obj_tp   VALUE 'RAW',&lt;/P&gt;&lt;P&gt;   lc_doc_typ_xls   TYPE so_obj_tp   VALUE 'XLS',&lt;/P&gt;&lt;P&gt;   lc_tab(1)       TYPE c           VALUE cl_abap_char_utilities=&amp;gt;horizontal_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Creating the document to be sent&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_doc_chng-obj_name = sy-repid.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Prepare the Mail Subject&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_doc_chng-obj_descr = 'Unpaid AP Invoices log.xls'(h05).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Object Description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_objhead = ls_doc_chng-obj_descr.&lt;/P&gt;&lt;P&gt;  APPEND ls_objhead TO lt_objhead.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Populate body of the email&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM populate_email_body.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE gt_objtxt LINES lv_tab_lines.&lt;/P&gt;&lt;P&gt;  READ TABLE gt_objtxt INTO gs_objtxt INDEX lv_tab_lines.&lt;/P&gt;&lt;P&gt;  ls_doc_chng-doc_size = ( lv_tab_lines - 1 ) * 255 +&lt;/P&gt;&lt;P&gt;                          STRLEN( gs_objtxt ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Creating the entry for the compressed document&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR ls_objpack-transf_bin.&lt;/P&gt;&lt;P&gt;  ls_objpack-head_start = 1.&lt;/P&gt;&lt;P&gt;  ls_objpack-head_num   = 0.&lt;/P&gt;&lt;P&gt;  ls_objpack-body_start = 1.&lt;/P&gt;&lt;P&gt;  ls_objpack-body_num   = lv_tab_lines.&lt;/P&gt;&lt;P&gt;  ls_objpack-doc_type   = lc_doc_typ_raw.    "RAW&lt;/P&gt;&lt;P&gt;  APPEND ls_objpack TO lt_objpack.&lt;/P&gt;&lt;P&gt;  CLEAR ls_objpack.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Email details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_reclist-receiver = p_mail.&lt;/P&gt;&lt;P&gt;  ls_reclist-rec_type = lc_rec_typ.&lt;/P&gt;&lt;P&gt;  ls_reclist-com_type = 'INT'.&lt;/P&gt;&lt;P&gt;  APPEND ls_reclist TO lt_reclist.&lt;/P&gt;&lt;P&gt;  CLEAR : ls_reclist.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE gt_error LINES lv_lines.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Send attachment only it the error file is not empty&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF gt_error[] IS NOT INITIAL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Prepare the Error log attachment&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Header details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CONCATENATE 'GL Account'(h38)&lt;/P&gt;&lt;P&gt;    'Journal Batch'(h09)&lt;/P&gt;&lt;P&gt;    'Store'(h10)&lt;/P&gt;&lt;P&gt;    'Division'(h11)&lt;/P&gt;&lt;P&gt;    'Control no'(h12)&lt;/P&gt;&lt;P&gt;    'Currency'(h13)&lt;/P&gt;&lt;P&gt;    'Crc'(h14)&lt;/P&gt;&lt;P&gt;    'Discount amount'(h15)&lt;/P&gt;&lt;P&gt;    'Discount percent'(h16)&lt;/P&gt;&lt;P&gt;    'Due date'(h17)&lt;/P&gt;&lt;P&gt;    'Invoince cost'(h18)&lt;/P&gt;&lt;P&gt;    'Invoice date'(h19)&lt;/P&gt;&lt;P&gt;    'Invoice no'(h20)&lt;/P&gt;&lt;P&gt;    'New record'(h21)&lt;/P&gt;&lt;P&gt;    'Orginal contorl no'(h22)&lt;/P&gt;&lt;P&gt;    'Match/Unmatch'(h23)&lt;/P&gt;&lt;P&gt;    'OSI Trans Id'(h24)&lt;/P&gt;&lt;P&gt;    'PO Number'(h25)&lt;/P&gt;&lt;P&gt;    'Post date'(h26)&lt;/P&gt;&lt;P&gt;    'Processed Flag'(h27)&lt;/P&gt;&lt;P&gt;    'Retail AMount'(h28)&lt;/P&gt;&lt;P&gt;    'Source Code'(h29)&lt;/P&gt;&lt;P&gt;    'Time Stamp'(h30)&lt;/P&gt;&lt;P&gt;    'Vendor No'(h31)&lt;/P&gt;&lt;P&gt;    'Alpha Flag'(h32)&lt;/P&gt;&lt;P&gt;    'Object Key'(h33)&lt;/P&gt;&lt;P&gt;    'GL ind'(h34)&lt;/P&gt;&lt;P&gt;    'Payment Block'(h35)&lt;/P&gt;&lt;P&gt;    'Payable ID'(h36)&lt;/P&gt;&lt;P&gt;    'Change/Create'(h37)&lt;/P&gt;&lt;P&gt;    INTO ls_contents-line&lt;/P&gt;&lt;P&gt;    SEPARATED BY lc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CONCATENATE ls_contents lv_hex1 INTO ls_contents.&lt;/P&gt;&lt;P&gt;    APPEND ls_contents TO lt_contents.&lt;/P&gt;&lt;P&gt;    CLEAR ls_contents.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT gt_error INTO ls_err_rec.&lt;/P&gt;&lt;P&gt;      CONCATENATE&lt;/P&gt;&lt;P&gt;               ls_err_rec-glaccnt&lt;/P&gt;&lt;P&gt;               ls_err_rec-batchno&lt;/P&gt;&lt;P&gt;               ls_err_rec-store&lt;/P&gt;&lt;P&gt;               ls_err_rec-division&lt;/P&gt;&lt;P&gt;               ls_err_rec-cntrlno&lt;/P&gt;&lt;P&gt;               ls_err_rec-country&lt;/P&gt;&lt;P&gt;               ls_err_rec-currency&lt;/P&gt;&lt;P&gt;               ls_err_rec-disamnt&lt;/P&gt;&lt;P&gt;               ls_err_rec-disper&lt;/P&gt;&lt;P&gt;               ls_err_rec-duedate&lt;/P&gt;&lt;P&gt;               ls_err_rec-invcst&lt;/P&gt;&lt;P&gt;               ls_err_rec-invdate&lt;/P&gt;&lt;P&gt;               ls_err_rec-invoiceno&lt;/P&gt;&lt;P&gt;               ls_err_rec-nerecflg&lt;/P&gt;&lt;P&gt;               ls_err_rec-orgcntrlno&lt;/P&gt;&lt;P&gt;               ls_err_rec-matunmflg&lt;/P&gt;&lt;P&gt;               ls_err_rec-transid&lt;/P&gt;&lt;P&gt;               ls_err_rec-ponumb&lt;/P&gt;&lt;P&gt;               ls_err_rec-postdate&lt;/P&gt;&lt;P&gt;               ls_err_rec-procflag&lt;/P&gt;&lt;P&gt;               ls_err_rec-retailamnt&lt;/P&gt;&lt;P&gt;               ls_err_rec-sourccode&lt;/P&gt;&lt;P&gt;               ls_err_rec-timestmp&lt;/P&gt;&lt;P&gt;               ls_err_rec-vendor&lt;/P&gt;&lt;P&gt;               ls_err_rec-alphaflg&lt;/P&gt;&lt;P&gt;               ls_err_rec-objectkey&lt;/P&gt;&lt;P&gt;               ls_err_rec-glind&lt;/P&gt;&lt;P&gt;               ls_err_rec-paymntblk&lt;/P&gt;&lt;P&gt;               ls_err_rec-payabid&lt;/P&gt;&lt;P&gt;               ls_err_rec-chcrind&lt;/P&gt;&lt;P&gt;               'Legacy Country Key Does Not Exists'(m12)&lt;/P&gt;&lt;P&gt;             INTO ls_contents-line SEPARATED BY lc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF lv_lines NE sy-tabix.&lt;/P&gt;&lt;P&gt;        CONCATENATE ls_contents lv_hex1 INTO ls_contents.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND ls_contents TO lt_contents.&lt;/P&gt;&lt;P&gt;      CLEAR ls_contents.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DESCRIBE TABLE lt_contents LINES lv_tab_lines.&lt;/P&gt;&lt;P&gt;    READ TABLE lt_contents INTO ls_contents INDEX lv_tab_lines.&lt;/P&gt;&lt;P&gt;    ls_objpack-transf_bin = lc_x.&lt;/P&gt;&lt;P&gt;    ls_objpack-head_start = 1.&lt;/P&gt;&lt;P&gt;    ls_objpack-head_num   = 1.&lt;/P&gt;&lt;P&gt;    ls_objpack-body_start = 1.&lt;/P&gt;&lt;P&gt;    ls_objpack-body_num   = lv_tab_lines.&lt;/P&gt;&lt;P&gt;    ls_objpack-doc_type   = lc_doc_typ_xls.&lt;/P&gt;&lt;P&gt;    ls_objpack-obj_name   = 'ATTACHMENT'(h07).&lt;/P&gt;&lt;P&gt;    ls_objpack-doc_size   = lv_tab_lines * 255.&lt;/P&gt;&lt;P&gt;    APPEND ls_objpack TO lt_objpack.&lt;/P&gt;&lt;P&gt;    CLEAR ls_objpack.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Send Email with attachment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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              = ls_doc_chng&lt;/P&gt;&lt;P&gt;        put_in_outbox              = lc_x&lt;/P&gt;&lt;P&gt;        commit_work                = lc_x&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        packing_list               = lt_objpack&lt;/P&gt;&lt;P&gt;        object_header              = lt_objhead&lt;/P&gt;&lt;P&gt;        contents_bin               = lt_contents&lt;/P&gt;&lt;P&gt;        contents_txt               = gt_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;    CASE sy-subrc .&lt;/P&gt;&lt;P&gt;      WHEN 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Mail successfully delivered&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        CONCATENATE 'Error file send to '(m13) p_mail INTO gs_err-line.&lt;/P&gt;&lt;P&gt;        APPEND gs_err TO gt_err.&lt;/P&gt;&lt;P&gt;        CLEAR gs_err.&lt;/P&gt;&lt;P&gt;      WHEN OTHERS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Do nothing&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Oct 2008 06:49:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569186#M1078182</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-07T06:49:08Z</dc:date>
    </item>
    <item>
      <title>Re: E-mail functionality using so_new_document_att_send_api1</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569187#M1078183</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;Good&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hi I guess you may not be able to get ur excel attach in a proper format. This could be because of the delimeters you are using between the fields. Try the following to fill the objbin table. &lt;/P&gt;&lt;P&gt;let me know the problem clearly if you are not done with this. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'SAP_CONVERT_TO_TXT_FORMAT' &lt;/P&gt;&lt;P&gt;exporting &lt;/P&gt;&lt;P&gt;i_line_header = 'X' &lt;/P&gt;&lt;P&gt;tables &lt;/P&gt;&lt;P&gt;i_tab_sap_data = gt_outtab6 &lt;/P&gt;&lt;P&gt;changing &lt;/P&gt;&lt;P&gt;i_tab_converted_data = wa_data &lt;/P&gt;&lt;P&gt;exceptions &lt;/P&gt;&lt;P&gt;conversion_failed = 1 &lt;/P&gt;&lt;P&gt;others = 2. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at wa_data into wa_format_data. &lt;/P&gt;&lt;P&gt;move wa_format_data+0(255) to gt_objbin. &lt;/P&gt;&lt;P&gt;append gt_objbin. &lt;/P&gt;&lt;P&gt;clear gt_objbin. &lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="9" type="ul"&gt;&lt;P&gt;use the following 4 lines only if your internal table fields total length more than 255 chars ******************** &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;concatenate wa_format_data+255 gs_end_of_line &lt;/P&gt;&lt;P&gt;into gt_objbin-line. &lt;/P&gt;&lt;P&gt;append gt_objbin. &lt;/P&gt;&lt;P&gt;clear gt_objbin. &lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;mrutyun^&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Oct 2008 07:04:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569187#M1078183</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-07T07:04:15Z</dc:date>
    </item>
    <item>
      <title>Re: E-mail functionality using so_new_document_att_send_api1</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569188#M1078184</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Roshan,&lt;/P&gt;&lt;P&gt;Check out the below link. This might helpful for you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
  move 'Please find Component Tracker Report' to g_text.
  append g_text to i_content.

* Preparing contents of attachment with Change Log
  perform prepare_attachment.

* Creates persistent send request
  try.
      l_send_request = cl_bcs=&amp;gt;create_persistent( ).

* Creating Document
      l_document = cl_document_bcs=&amp;gt;create_document(
                                    i_type  = 'RAW'
                                    i_text  = i_content[]
                                    i_subject = 'Component Tracker Report' ).

      describe table i_attach lines g_lines.
* Size to multiplied by 2 for UNICODE enabled systems
      g_size = g_lines * 2 * 255.

* Adding Attachment
      call method l_document-&amp;gt;add_attachment
        exporting
          i_attachment_type    = c_ext
          i_attachment_size    = g_size
          i_attachment_subject = 'Component Tracker'
          i_att_content_text   = i_attach[].

* Add document to send request
      call method l_send_request-&amp;gt;set_document( l_document ).

* Get Sender Object
      l_uname = sy-uname.

      l_sender = cl_sapuser_bcs=&amp;gt;create( l_uname ).

      call method l_send_request-&amp;gt;set_sender
        exporting
          i_sender = l_sender.

* E-Mail
      translate s_mail to lower case.

      l_recipient = cl_cam_address_bcs=&amp;gt;create_internet_address( s_mail )
  .

      call method l_send_request-&amp;gt;add_recipient
        exporting
          i_recipient  = l_recipient
          i_express    = 'U'
          i_copy       = ' '
          i_blind_copy = ' '
          i_no_forward = ' '.


*Trigger E-Mail immediately
      l_send_request-&amp;gt;set_send_immediately( 'X' ).

      call method l_send_request-&amp;gt;send( ).

      commit work.

    catch cx_document_bcs into l_bcs_exception.

    catch cx_send_req_bcs into l_send_exception.

    catch cx_address_bcs  into l_addr_exception.

  endtry.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Oct 2008 07:13:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/e-mail-functionality-using-so-new-document-att-send-api1/m-p/4569188#M1078184</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-10-07T07:13:46Z</dc:date>
    </item>
  </channel>
</rss>

