<?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: sending mail from program in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202883#M1004511</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;/P&gt;&lt;P&gt;Please check it..Use the FM SO_DOCUMENT_SEND_API1.&lt;/P&gt;&lt;P&gt;Give the sender address in c_sender.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'SO_DOCUMENT_SEND_API1'&lt;/P&gt;&lt;P&gt;  exporting&lt;/P&gt;&lt;P&gt;     document_data                    = l_doc_chng&lt;/P&gt;&lt;P&gt;     put_in_outbox                       = c_check&lt;/P&gt;&lt;P&gt;     sender_address                    = c_sender&lt;/P&gt;&lt;P&gt;     sender_address_type            = 'INT'&lt;/P&gt;&lt;P&gt;     commit_work                         = space&lt;/P&gt;&lt;P&gt;  tables&lt;/P&gt;&lt;P&gt;    packing_list                            = i_packlist&lt;/P&gt;&lt;P&gt;    contents_txt                            = i_content&lt;/P&gt;&lt;P&gt;    receivers                                 = i_receivers&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;Edited by: Subhankar Garani on Jul 17, 2008 2:38 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 17 Jul 2008 12:37:28 GMT</pubDate>
    <dc:creator>Subhankar</dc:creator>
    <dc:date>2008-07-17T12:37:28Z</dc:date>
    <item>
      <title>sending mail from program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202879#M1004507</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everybody....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a program which sends mail to the user if the program succesfully completed. The output result goes to user as email.&lt;/P&gt;&lt;P&gt;This program will be executed by many person. In my program I am passing the receivers email id. whoever will execute that program the mail will go from his or her id. Now I need to change the sender's id. for any user the sender id will be same. Is it possible to change the sender's id?? please help me.... If there is any function module to send mail by changing the sender's user id.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Jul 2008 12:26:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202879#M1004507</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-07-17T12:26:43Z</dc:date>
    </item>
    <item>
      <title>Re: sending mail from program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202880#M1004508</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I think by default you would have given receiver's email id. Instead you can give sender's mail id either by hard coding or from a table of email addresses. Or if you could give your code, I can help you.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Jul 2008 12:30:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202880#M1004508</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-07-17T12:30:33Z</dc:date>
    </item>
    <item>
      <title>Re: sending mail from program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202881#M1004509</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;SG,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;PARAMETERS:p_addr type AD_SMTPADR.
INITIALIZATION.
CALL FUNCTION 'FTR_CORR_CHECK_EMAIL_SAP_USER'
 EXPORTING
   I_USER                    = SY-UNAME
 IMPORTING
   E_EMAIL_ADDRESS           = p_addr
 EXCEPTIONS
   MAIL_ADDRESS              = 1
   DETERMINATION_ERROR       = 2
   OTHERS                    = 3
          .
IF sy-subrc &amp;lt;&amp;gt; 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Amit.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Jul 2008 12:31:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202881#M1004509</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-07-17T12:31:55Z</dc:date>
    </item>
    <item>
      <title>Re: sending mail from program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202882#M1004510</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Amit I think the function module u have given returns the id of the given sy-uname. But my problem is different. I need to give the same id for different users. for example.... if the sy-uname is A or B or C then for all those users sender's id will be XYZ. Now tell me is it possible???? Plz reply....&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Jul 2008 12:36:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202882#M1004510</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-07-17T12:36:09Z</dc:date>
    </item>
    <item>
      <title>Re: sending mail from program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202883#M1004511</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;/P&gt;&lt;P&gt;Please check it..Use the FM SO_DOCUMENT_SEND_API1.&lt;/P&gt;&lt;P&gt;Give the sender address in c_sender.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'SO_DOCUMENT_SEND_API1'&lt;/P&gt;&lt;P&gt;  exporting&lt;/P&gt;&lt;P&gt;     document_data                    = l_doc_chng&lt;/P&gt;&lt;P&gt;     put_in_outbox                       = c_check&lt;/P&gt;&lt;P&gt;     sender_address                    = c_sender&lt;/P&gt;&lt;P&gt;     sender_address_type            = 'INT'&lt;/P&gt;&lt;P&gt;     commit_work                         = space&lt;/P&gt;&lt;P&gt;  tables&lt;/P&gt;&lt;P&gt;    packing_list                            = i_packlist&lt;/P&gt;&lt;P&gt;    contents_txt                            = i_content&lt;/P&gt;&lt;P&gt;    receivers                                 = i_receivers&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;Edited by: Subhankar Garani on Jul 17, 2008 2:38 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Jul 2008 12:37:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202883#M1004511</guid>
      <dc:creator>Subhankar</dc:creator>
      <dc:date>2008-07-17T12:37:28Z</dc:date>
    </item>
    <item>
      <title>Re: sending mail from program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202884#M1004512</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;This program is used to send mail's to the email id's we give in the selection screen. Please gothrough the code. The requirement may differ. But use the same logic for the email's to be sent.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ztest.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;declaration of Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TABLES: adr6, epsf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;type declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;TYPES: BEGIN OF ty_sdbah,&lt;/P&gt;&lt;P&gt;       beg    TYPE sdba_begin,&lt;/P&gt;&lt;P&gt;       funct  TYPE sdba_funct,&lt;/P&gt;&lt;P&gt;       sysid  TYPE sdba_sysid,&lt;/P&gt;&lt;P&gt;       ende   TYPE sdba_end,&lt;/P&gt;&lt;P&gt;       END OF ty_sdbah.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;declaration of internal tables &amp;amp; workareas&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: it_sdbah   TYPE TABLE OF ty_sdbah,&lt;/P&gt;&lt;P&gt;      wa_sdbah   TYPE          ty_sdbah,&lt;/P&gt;&lt;P&gt;      lt_dir_list TYPE TABLE OF epsfili,&lt;/P&gt;&lt;P&gt;      wa_dir_list TYPE          epsfili,&lt;/P&gt;&lt;P&gt;      lt_solitab TYPE soli_tab,&lt;/P&gt;&lt;P&gt;      wa_solitab LIKE LINE OF lt_solitab,&lt;/P&gt;&lt;P&gt;      wa_atttachment TYPE solix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;declaration of global variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: gv_file     LIKE rlgrap-filename,&lt;/P&gt;&lt;P&gt;      gv_line     TYPE string,&lt;/P&gt;&lt;P&gt;      gv_line_temp TYPE string,&lt;/P&gt;&lt;P&gt;      gv_lst      TYPE string,&lt;/P&gt;&lt;P&gt;      gv_dirname  TYPE epsf-epsdirnam,&lt;/P&gt;&lt;P&gt;      gv_name(40) TYPE c,&lt;/P&gt;&lt;P&gt;      gv_doctype  TYPE so_obj_tp,&lt;/P&gt;&lt;P&gt;      attachment TYPE solix_tab,&lt;/P&gt;&lt;P&gt;      state      TYPE string VALUE 'State:',&lt;/P&gt;&lt;P&gt;      gv_state   TYPE string,&lt;/P&gt;&lt;P&gt;      gv_state1  TYPE string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;declaration of global constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;CONSTANTS: gc_aliass  TYPE dirname VALUE 'DIR_DBAHISTORY',&lt;/P&gt;&lt;P&gt;           gc_beg TYPE char03 VALUE 'dba'.&lt;/P&gt;&lt;P&gt;DATA : bcs_exception TYPE REF TO cx_bcs,&lt;/P&gt;&lt;P&gt;       send_request TYPE REF TO cl_bcs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: l_subject TYPE so_obj_des,&lt;/P&gt;&lt;P&gt;      l_mail_text TYPE bcsy_text,&lt;/P&gt;&lt;P&gt;      l_mail_text_row TYPE soli.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Declaring local variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: lv_flag TYPE char01,&lt;/P&gt;&lt;P&gt;      lv_err_msg TYPE char20,&lt;/P&gt;&lt;P&gt;      lv_s_msg TYPE char25.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;defining selection screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS   : s_email  FOR adr6-smtp_addr  NO INTERVALS OBLIGATORY.&lt;/P&gt;&lt;P&gt;PARAMETERS       : p_email  TYPE adr6-smtp_addr NO-DISPLAY.&lt;/P&gt;&lt;P&gt;PARAMETERS       : p_sub    TYPE  string.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;start of selection event&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Using this subroutine to get the dirname and DBA Logs&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM get_data.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;using this subroutine to get the latest backup details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM process_data.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Using this subroutine to read the date from application server&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM read_application_data.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Using this subroutine to send email to given email id's from select-options&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM send_mail.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  IF lv_flag = 'X'.&lt;/P&gt;&lt;P&gt;    FORMAT COLOR = 6.&lt;/P&gt;&lt;P&gt;    WRITE: lv_err_msg .&lt;/P&gt;&lt;P&gt;    FORMAT COLOR OFF.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    FORMAT COLOR = 5.&lt;/P&gt;&lt;P&gt;    LOOP AT lt_dir_list INTO wa_dir_list WHERE name = gv_name.&lt;/P&gt;&lt;P&gt;      WRITE : wa_dir_list-name,&lt;/P&gt;&lt;P&gt;              wa_dir_list-size.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    WRITE: lv_s_msg .&lt;/P&gt;&lt;P&gt;    FORMAT COLOR OFF.&lt;/P&gt;&lt;P&gt;    LOOP AT l_mail_text INTO l_mail_text_row.&lt;/P&gt;&lt;P&gt;      WRITE:/ l_mail_text_row.&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;&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;      Form  get_data&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_data .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get dirname from user_dir table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR: gv_dirname.&lt;/P&gt;&lt;P&gt;  SELECT SINGLE dirname INTO gv_dirname&lt;/P&gt;&lt;P&gt;    FROM user_dir&lt;/P&gt;&lt;P&gt;    WHERE aliass EQ gc_aliass.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If records not found, then raise error message&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE text-002 TYPE 'I'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  REFRESH: it_sdbah.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get data from SDBAH table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT beg funct sysid ende&lt;/P&gt;&lt;P&gt;    INTO  TABLE it_sdbah&lt;/P&gt;&lt;P&gt;    FROM sdbah&lt;/P&gt;&lt;P&gt;    WHERE funct = 'sda' AND obj = 'DATA'&lt;/P&gt;&lt;P&gt;    ORDER BY beg DESCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If records not found, then raise error message&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE text-003 TYPE 'I'.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get the latest backup details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    READ TABLE it_sdbah INTO wa_sdbah INDEX 1.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;concatenate to gv_name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CONCATENATE gc_beg wa_sdbah-beg '.' wa_sdbah-funct INTO gv_name.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_data&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;      Form  process_data&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM process_data .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;call function, to get list of backups&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'EPS_GET_DIRECTORY_LISTING'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      dir_name = gv_dirname&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      dir_list = lt_dir_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if records not found, then raise error messsage&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE text-004 TYPE 'I'.&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;sort the list in descending order&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SORT lt_dir_list BY name DESCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display the latest backup details&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT lt_dir_list INTO wa_dir_list WHERE name = gv_name.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   WRITE : wa_dir_list-name,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           wa_dir_list-size.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;translate directory name to upper case&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; TRANSLATE gv_dirname TO UPPER CASE.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION '/SAPDII/SPP05_CONVERT_UPPERCAS'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      if_input  = gv_dirname&lt;/P&gt;&lt;P&gt;      if_langu  = sy-langu&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      ef_output = gv_dirname.&lt;/P&gt;&lt;P&gt;  .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;concatenate to get the file path&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CONCATENATE gv_dirname '\' wa_dir_list-name INTO gv_file.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " process_data&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;      Form  read_application_data&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM read_application_data .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read the contents of the file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR: lv_flag.&lt;/P&gt;&lt;P&gt;  OPEN DATASET gv_file FOR INPUT IN TEXT MODE ENCODING DEFAULT.&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    DO.&lt;/P&gt;&lt;P&gt;      READ DATASET gv_file INTO gv_line.&lt;/P&gt;&lt;P&gt;      IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      wa_solitab-line = gv_line.&lt;/P&gt;&lt;P&gt;      APPEND wa_solitab TO lt_solitab.&lt;/P&gt;&lt;P&gt;      IF gv_line IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;        gv_lst = gv_line.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR: gv_line.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      gv_line_temp = gv_line.&lt;/P&gt;&lt;P&gt;      SPLIT gv_line_temp AT state INTO gv_state gv_state1.&lt;/P&gt;&lt;P&gt;      CONDENSE gv_state1.&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    lv_flag = 'X'.&lt;/P&gt;&lt;P&gt;    lv_err_msg = text-005.&lt;/P&gt;&lt;P&gt;    STOP.&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;close the file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLOSE DATASET gv_file.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " read_application_data&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;      Form  send_mail&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM send_mail .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;convert internal table contents to solix tab format&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'SO_SOLITAB_TO_SOLIXTAB'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      ip_solitab  = lt_solitab&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      ep_solixtab = attachment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;send email to the recipients&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TRY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assigning values to local variable&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CONCATENATE p_sub '-' wa_sdbah-beg '-' gv_state1 INTO l_subject.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;add the contents from internal table lt_solitab to l_mail_text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      LOOP AT lt_solitab INTO wa_solitab.&lt;/P&gt;&lt;P&gt;        l_mail_text_row = wa_solitab-line.&lt;/P&gt;&lt;P&gt;        APPEND l_mail_text_row TO l_mail_text.&lt;/P&gt;&lt;P&gt;        CLEAR: l_mail_text_row,&lt;/P&gt;&lt;P&gt;               wa_solitab.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DATA: document TYPE REF TO cl_document_bcs,&lt;/P&gt;&lt;P&gt;            num_rows TYPE i,&lt;/P&gt;&lt;P&gt;            text_length TYPE so_obj_len.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE l_mail_text LINES num_rows.&lt;/P&gt;&lt;P&gt;      num_rows = num_rows * 255.&lt;/P&gt;&lt;P&gt;      MOVE num_rows TO text_length.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;call method, to create document&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      TRY.&lt;/P&gt;&lt;P&gt;          CALL METHOD cl_document_bcs=&amp;gt;create_document&lt;/P&gt;&lt;P&gt;            EXPORTING&lt;/P&gt;&lt;P&gt;              i_type    = 'RAW'&lt;/P&gt;&lt;P&gt;              i_subject = l_subject&lt;/P&gt;&lt;P&gt;              i_length  = text_length&lt;/P&gt;&lt;P&gt;              i_text    = l_mail_text&lt;/P&gt;&lt;P&gt;            RECEIVING&lt;/P&gt;&lt;P&gt;              result    = document.&lt;/P&gt;&lt;P&gt;        CATCH cx_document_bcs .&lt;/P&gt;&lt;P&gt;      ENDTRY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT s_email.&lt;/P&gt;&lt;P&gt;        send_request = cl_bcs=&amp;gt;create_persistent( ).&lt;/P&gt;&lt;P&gt;        send_request-&amp;gt;set_document( document ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        DATA: sender TYPE REF TO cl_sapuser_bcs.&lt;/P&gt;&lt;P&gt;        sender = cl_sapuser_bcs=&amp;gt;create( 'SAPUSER' ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        TRY.&lt;/P&gt;&lt;P&gt;            CALL METHOD send_request-&amp;gt;set_sender&lt;/P&gt;&lt;P&gt;              EXPORTING&lt;/P&gt;&lt;P&gt;                i_sender = sender.&lt;/P&gt;&lt;P&gt;          CATCH cx_send_req_bcs .&lt;/P&gt;&lt;P&gt;        ENDTRY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        DATA: recipient TYPE REF TO if_recipient_bcs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get email ids from selection screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        p_email = s_email-low.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        recipient = cl_cam_address_bcs=&amp;gt;create_internet_address( p_email ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        send_request-&amp;gt;add_recipient( EXPORTING i_recipient = recipient ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        send_request-&amp;gt;set_send_immediately( 'X' ).&lt;/P&gt;&lt;P&gt;        send_request-&amp;gt;send( ).&lt;/P&gt;&lt;P&gt;        COMMIT WORK.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;      lv_s_msg = text-006.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     WRITE : 'Sent Successfully'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CATCH cx_bcs INTO bcs_exception.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDTRY.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " send_mail&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Jul 2008 12:43:13 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/sending-mail-from-program/m-p/4202884#M1004512</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-07-17T12:43:13Z</dc:date>
    </item>
  </channel>
</rss>

