SAP ABAP Programming, Functional and Basis Components Books


SAP Send mail via ABAP functions SO_NEW_DOCUMENT_SEND_API1

This abap mail sending program demonstrate how you can send a mail to the user SAP Office mailbox.

REPORT ZSEND .

TABLES: KNA1.

* data for send function
DATA DOC_DATA  LIKE SODOCCHGI1.
DATA OBJECT_ID LIKE SOODK.
DATA OBJCONT   LIKE SOLI OCCURS 10 WITH HEADER LINE.
DATA RECEIVER  LIKE SOMLRECI1 OCCURS 1 WITH HEADER LINE.

SELECT * FROM KNA1 WHERE ANRED LIKE 'C%'.
  WRITE:/ KNA1-KUNNR, KNA1-ANRED.

* send data internal table
  CONCATENATE KNA1-KUNNR KNA1-ANRED
                         INTO OBJCONT-LINE SEPARATED BY SPACE.

  APPEND OBJCONT.
ENDSELECT.

* insert receiver (sap name)
  REFRESH RECEIVER.
  CLEAR RECEIVER.
  MOVE: SY-UNAME TO RECEIVER-RECEIVER,
        'X'      TO RECEIVER-EXPRESS,
        'B'      TO RECEIVER-REC_TYPE.
  APPEND RECEIVER.

* insert mail description
  WRITE 'Sending a mail through abap'
                 TO DOC_DATA-OBJ_DESCR.

CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
     EXPORTING
          DOCUMENT_DATA              = DOC_DATA
     IMPORTING
          NEW_OBJECT_ID              = OBJECT_ID
     TABLES
          OBJECT_CONTENT             = OBJCONT
          RECEIVERS                  = RECEIVER
     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.

Return to SAP Hints and Tips on Configuration and ABAP/4 Programming