1. 程式人生 > >郵件相關三:一個發郵件的FM和一個…

郵件相關三:一個發郵件的FM和一個…

FUNCTION ZLM_TEST_MAIL_01.
*"----------------------------------------------------------------------
*"*"Local Interface:
*"  IMPORTING
*"     VALUE(MAIL_TITLE) TYPE  SO_OBJ_DES OPTIONAL
*"     REFERENCE(MAIL_TEXT) TYPE  STRING
*"  EXPORTING
*"     VALUE(ERROR_TEXT) TYPE  STRING
*"  TABLES
*"      SEND_LIST STRUCTURE  SOLISTI1 OPTIONAL

*"----------------------------------------------------------------------

  DATABEGIN OF GT_SEND OCCURS 0.             "E-mail address
          INCLUDE STRUCTURE SOMLRECI1.
  DATAEND OF GT_SEND.

  DATAGS_DATA LIKE SODOCCHGI1,              "E-mail setting
        TAB_LINES  TYPE I,
        DOC_SIZE   TYPE 
I.
  DATAL_TEXT(50).

  DATABEGIN OF GT_ITAB OCCURS 0,            "E-mail text
          TEXT(255),
        END OF GT_ITAB.

  DATAIT_SITAB TYPE TABLE OF STRING.
  SPLIT MAIL_TEXT AT '/n/t' INTO TABLE GT_ITAB.

* Email的接收人員
  LOOP AT SEND_LIST.
    GT_SEND-RECEIVER     SEND_LIST-LINE.
    GT_SEND-
REC_TYPE     =  'U'.
    GT_SEND-EXPRESS      =  'X'.
    APPEND GT_SEND.
  ENDLOOP.

  CLEARGS_DATA.

  GS_DATA-OBJ_NAME     =  'URGENT'.
  GS_DATA-OBJ_DESCR    =  MAIL_TITLE"郵件標題
  GS_DATA-OBJ_LANGU    =  '1'"中文
*GS_DATA-SENSITIVTY   =  'P'.
  GS_DATA-OBJ_PRIO     =  '1'.
  GS_DATA-NO_CHANGE    =  'X'.
  GS_DATA-PRIORITY     =  '1'.
*   Write Packing List (Main)
  DESCRIBE TABLE GT_ITAB LINES TAB_LINES.
  READ     TABLE GT_ITAB INDEX TAB_LINES.
  GS_DATA-DOC_SIZE TAB_LINES 255 STRLENGT_ITAB ).

* SEND THE EMAIL
  CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
    EXPORTING
      DOCUMENT_DATA              GS_DATA
      DOCUMENT_TYPE              'RAW'
      PUT_IN_OUTBOX              'X'
      COMMIT_WORK                'X'
    TABLES