<?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: Mail Sending from a method in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/mail-sending-from-a-method/m-p/3592762#M865082</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;I am using below code without using SCOT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
  EXPORTING
  DOCUMENT_DATA = LA_DOC
  PUT_IN_OUTBOX = 'X'
* SENDER_ADDRESS = SY-UNAME
* SENDER_ADDRESS_TYPE = 'B'
  COMMIT_WORK = 'X'
 IMPORTING
* SENT_TO_ALL =
 NEW_OBJECT_ID = OBJID
* SENDER_ID =
  TABLES
  PACKING_LIST = IT_PACKING_LIST
  OBJECT_HEADER = HEADLIST
  CONTENTS_BIN = IT_ATTACHMENT
  CONTENTS_TXT = IT_MAILBODY[]
* CONTENTS_HEX =
* OBJECT_PARA =
* OBJECT_PARB =
  RECEIVERS = IT_RECEIVERS[]
  EXCEPTIONS
  TOO_MANY_RECEIVERS = 1
  DOCUMENT_NOT_SENT = 2
  DOCUMENT_TYPE_NOT_EXIST = 3
  OPERATION_NO_AUTHORIZATION = 4
  PARAMETER_ERROR = 5
  X_ERROR = 6
  ENQUEUE_ERROR = 7
  OTHERS = 8
  .
  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.
  ELSE.
  ENDIF.


  SELECT  * FROM SOSC WHERE OBJTP = OBJID+0(3) AND
                                  OBJYR = OBJID+3(2)  AND
                                  OBJNO = OBJID+5(12).
    MOVE-CORRESPONDING SOSC TO SOSC_WA.
    APPEND SOSC_WA TO SOSC_TAB.
  ENDSELECT.

  CALL FUNCTION 'SX_SEND_DISPATCHER'
    EXPORTING
      SOSC_TAB          = SOSC_TAB
      OUTPUT            = 'X'
    IMPORTING
      NR_SO_OBJECTS     = NR_SO_OBJECTS
    TABLES
      OBJ_CAT           = OBJ_CAT
    EXCEPTIONS
      INTERNAL_ERROR    = 1
      DIRECTSEND_FAILED = 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.

  REFRESH SOSC_TAB.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rgds&lt;/P&gt;&lt;P&gt;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 26 Mar 2008 16:11:54 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-03-26T16:11:54Z</dc:date>
    <item>
      <title>Mail Sending from a method</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/mail-sending-from-a-method/m-p/3592761#M865081</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I kept  mail sending functionality in a bady.&lt;/P&gt;&lt;P&gt;I kept the code in a method and i am using the Function module "SO_NEW_DOCUMENT_SEND_API1" to send the Email.But Suprig this function module returnd SY_SUBRC = 0 but when i checked in the SCOT its not showing the LOG and the mail is not going.I copied the  same code and i kept in a Report and tried but here  the Mail is sending.&lt;/P&gt;&lt;P&gt;Please help how to resolve this .&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Krishna&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 10:25:18 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/mail-sending-from-a-method/m-p/3592761#M865081</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-26T10:25:18Z</dc:date>
    </item>
    <item>
      <title>Re: Mail Sending from a method</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/mail-sending-from-a-method/m-p/3592762#M865082</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;I am using below code without using SCOT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
  EXPORTING
  DOCUMENT_DATA = LA_DOC
  PUT_IN_OUTBOX = 'X'
* SENDER_ADDRESS = SY-UNAME
* SENDER_ADDRESS_TYPE = 'B'
  COMMIT_WORK = 'X'
 IMPORTING
* SENT_TO_ALL =
 NEW_OBJECT_ID = OBJID
* SENDER_ID =
  TABLES
  PACKING_LIST = IT_PACKING_LIST
  OBJECT_HEADER = HEADLIST
  CONTENTS_BIN = IT_ATTACHMENT
  CONTENTS_TXT = IT_MAILBODY[]
* CONTENTS_HEX =
* OBJECT_PARA =
* OBJECT_PARB =
  RECEIVERS = IT_RECEIVERS[]
  EXCEPTIONS
  TOO_MANY_RECEIVERS = 1
  DOCUMENT_NOT_SENT = 2
  DOCUMENT_TYPE_NOT_EXIST = 3
  OPERATION_NO_AUTHORIZATION = 4
  PARAMETER_ERROR = 5
  X_ERROR = 6
  ENQUEUE_ERROR = 7
  OTHERS = 8
  .
  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.
  ELSE.
  ENDIF.


  SELECT  * FROM SOSC WHERE OBJTP = OBJID+0(3) AND
                                  OBJYR = OBJID+3(2)  AND
                                  OBJNO = OBJID+5(12).
    MOVE-CORRESPONDING SOSC TO SOSC_WA.
    APPEND SOSC_WA TO SOSC_TAB.
  ENDSELECT.

  CALL FUNCTION 'SX_SEND_DISPATCHER'
    EXPORTING
      SOSC_TAB          = SOSC_TAB
      OUTPUT            = 'X'
    IMPORTING
      NR_SO_OBJECTS     = NR_SO_OBJECTS
    TABLES
      OBJ_CAT           = OBJ_CAT
    EXCEPTIONS
      INTERNAL_ERROR    = 1
      DIRECTSEND_FAILED = 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.

  REFRESH SOSC_TAB.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rgds&lt;/P&gt;&lt;P&gt;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 16:11:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/mail-sending-from-a-method/m-p/3592762#M865082</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-26T16:11:54Z</dc:date>
    </item>
    <item>
      <title>Re: Mail Sending from a method</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/mail-sending-from-a-method/m-p/3592763#M865083</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 using &lt;STRONG&gt;COMMIT WORK&lt;/STRONG&gt; statement after the call to the FM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also Check the below code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;

PARAMETERS: p_mail TYPE ad_smtpadr OBLIGATORY.
 
DATA: i_mara TYPE STANDARD TABLE OF mara,  " MARA Entries
      i_marc TYPE STANDARD TABLE OF marc.  " MARC Entries
DATA: l_text TYPE char255.  " Text
DATA: l_lines TYPE i,
      l_size            TYPE           sood-objlen.
" Size of Attachment
 
 
* Mail related
DATA: i_content         TYPE   soli_tab, " Mail content
      i_attach          TYPE   soli_tab, " Attachment
      i_attach1         TYPE   soli_tab. " Attachment
 
DATA: l_send_request    TYPE REF TO    cl_bcs,
                                            " E-Mail Send Request
      l_document        TYPE REF TO    cl_document_bcs,
                                            " E-Mail Attachment
      l_recipient       TYPE REF TO    if_recipient_bcs,
                                            " Distribution List
      l_sender          TYPE REF TO    if_sender_bcs,
                                            " Address of Sender
      l_uname           TYPE           salrtdrcpt,
                                            " Sender Name(SY-UNAME)
      l_bcs_exception   TYPE REF TO    cx_document_bcs,
                                            " BCS Exception
      l_addr_exception  TYPE REF TO    cx_address_bcs,
                                            " Address Exception
      l_send_exception  TYPE REF TO    cx_send_req_bcs.
" E-Mail sending Exception
 
*Constants------------------------------------------------------------*
CONSTANTS: c_tab(1) TYPE c VALUE
               cl_abap_char_utilities=&amp;gt;horizontal_tab,
                                     " Tab Character
 
           c_cr(1)  TYPE c VALUE cl_abap_char_utilities=&amp;gt;cr_lf,
                                     " Line Feed for End-Of_line
 
           c_ext    TYPE soodk-objtp VALUE 'XLS'. " XLS Extension
 
START-OF-SELECTION.
 
  SELECT * FROM mara INTO TABLE i_mara UP TO 20 ROWS.
 
  SELECT * FROM marc INTO TABLE i_marc UP TO 20 ROWS.
 
* Preparing body of the Mail
  MOVE 'Mail Body' TO l_text.
  APPEND l_text TO i_content.
 
* 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 = 'Material Details' ).
 
* Preparing contents of attachment with Change Log
  PERFORM prepare_attachment.
 
  DESCRIBE TABLE i_mara LINES l_lines.
* Size to multiplied by 2 for UNICODE enabled systems
      l_size = l_lines * 2 * 255.
 
* Adding Attachment
      CALL METHOD l_document-&amp;gt;add_attachment
        EXPORTING
          i_attachment_type    = c_ext
          i_attachment_size    = l_size
          i_attachment_subject = 'Material Details'
          i_att_content_text   = i_attach[].
 
  DESCRIBE TABLE i_marc LINES l_lines.
* Size to multiplied by 2 for UNICODE enabled systems
      l_size = l_lines * 2 * 255.
 
* Adding Attachment
      CALL METHOD l_document-&amp;gt;add_attachment
        EXPORTING
          i_attachment_type    = c_ext
          i_attachment_size    = l_size
          i_attachment_subject = 'Material Plant Details'
          i_att_content_text   = i_attach1[].
 
 
* 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 p_mail TO LOWER CASE.
 
    l_recipient = cl_cam_address_bcs=&amp;gt;create_internet_address( p_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.
 
 *&amp;amp;---------------------------------------------------------------------
*&amp;amp;      Form  PREPARE_ATTACHMENT
*&amp;amp;---------------------------------------------------------------------
*
FORM prepare_attachment.
 
  FIELD-SYMBOLS: &amp;lt;lfs_table&amp;gt;,    " Internal table structure
                 &amp;lt;lfs_con&amp;gt;.      " Field Content
  DATA: l_text TYPE char1024.     " Text content for mail attachment
  DATA: l_con(50) TYPE c.        " Field Content in character format
 
* Columns to be tab delimeted
  LOOP AT i_mara ASSIGNING &amp;lt;lfs_table&amp;gt;.
    DO.
      ASSIGN COMPONENT sy-index OF STRUCTURE &amp;lt;lfs_table&amp;gt;
             TO &amp;lt;lfs_con&amp;gt;.
      IF sy-subrc NE 0.
        CONCATENATE c_cr l_text INTO l_text.
        APPEND l_text TO i_attach.
        EXIT.
      ELSE.
        CLEAR: l_con.
        MOVE &amp;lt;lfs_con&amp;gt; TO l_con.
        CONDENSE l_con.
        IF sy-index = 1.
          CLEAR: l_text.
          MOVE l_con TO l_text.
        ELSE.
          CONCATENATE l_text l_con INTO l_text
             SEPARATED BY c_tab.
        ENDIF.
      ENDIF.
    ENDDO.
  ENDLOOP.
 
  LOOP AT i_marc ASSIGNING &amp;lt;lfs_table&amp;gt;.
    DO.
      ASSIGN COMPONENT sy-index OF STRUCTURE &amp;lt;lfs_table&amp;gt;
             TO &amp;lt;lfs_con&amp;gt;.
      IF sy-subrc NE 0.
        CONCATENATE c_cr l_text INTO l_text.
        APPEND l_text TO i_attach1.
        EXIT.
      ELSE.
        CLEAR: l_con.
        MOVE &amp;lt;lfs_con&amp;gt; TO l_con.
        CONDENSE l_con.
        IF sy-index = 1.
          CLEAR: l_text.
          MOVE l_con TO l_text.
        ELSE.
          CONCATENATE l_text l_con INTO l_text
             SEPARATED BY c_tab.
        ENDIF.
      ENDIF.
    ENDDO.
  ENDLOOP.
 
ENDFORM.                    " PREPARE_ATTACHMENT
 
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please treat above code just as reference...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Balaji&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Mar 2008 18:37:27 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/mail-sending-from-a-method/m-p/3592763#M865083</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-26T18:37:27Z</dc:date>
    </item>
  </channel>
</rss>

