Do.

HTML 본문 메일 전송 본문

SAP/ABAP

HTML 본문 메일 전송

성공보다는 가치를.. 2022. 7. 28. 16:06
728x90

HTML을 본문으로 하는 메일 전송 

*"----------------------------------------------------------------------
*"*"Local Interface:
*"  IMPORTING
*"     VALUE(IV_SUBJECT) TYPE  SO_OBJ_DES
*"     VALUE(IV_IMPORTANCE) TYPE  BCS_DOCIMP DEFAULT 2
*"     VALUE(IV_CONTENT) TYPE  STRING
*"     REFERENCE(IV_ADDRESS) TYPE  AD_SMTPADR
*"  EXPORTING
*"     REFERENCE(EV_MESSAGE) TYPE  CHAR50
*"     REFERENCE(EV_STATUS) TYPE  C
*"----------------------------------------------------------------------
*--- Content 샘플
* DATA(iv_content) = '<!DOCTYPE html PUBLIC “-//IETF//DTD HTML 5.0//EN">'
*                   && '<HTML><BODY>Hi Dear,<P>Content Section!</P></BODY></HTML>'.

  DATA:
    lo_mime_helper TYPE REF TO cl_gbt_multirelated_service,
    lo_bcs         TYPE REF TO cl_bcs,
    lo_doc_bcs     TYPE REF TO cl_document_bcs,
    lo_recipient   TYPE REF TO if_recipient_bcs,
    lt_soli        TYPE TABLE OF soli,
    ls_soli        TYPE soli,
    lv_status      TYPE bcs_rqst.

*&---------------------------------------------------------------------*
*& Creation of the mail
*&---------------------------------------------------------------------*
  CREATE OBJECT lo_mime_helper.

  lt_soli = cl_document_bcs=>string_to_soli( iv_content ).

  "-- Set the HTML body of the mail
  CALL METHOD lo_mime_helper->set_main_html
    EXPORTING
      content     = lt_soli
      description = 'Content BODY'.

  "-- Set the subject of the mail.
  lo_doc_bcs = cl_document_bcs=>create_from_multirelated(
                  i_subject          = iv_subject
                  i_importance       = iv_importance
                  i_multirel_service = lo_mime_helper ).

  lo_bcs = cl_bcs=>create_persistent( ).

  lo_bcs->set_document( i_document = lo_doc_bcs ).

  "-- Set the email address
  lo_recipient = cl_cam_address_bcs=>create_internet_address( i_address_string =  iv_address ).

  lo_bcs->add_recipient( i_recipient = lo_recipient ).

  "-- Change the status.
  lv_status = 'N'.
  CALL METHOD lo_bcs->set_status_attributes
    EXPORTING
      i_requested_status = lv_status.

*&---------------------------------------------------------------------*
*& Send the email
*&---------------------------------------------------------------------*
  TRY.
      lo_bcs->send( ).
      COMMIT WORK.
      ev_message = 'Success'.
      ev_status  = 'S'.
    CATCH cx_bcs INTO DATA(lx_bcs).
      ev_message = lx_bcs->get_text( ).
      ev_status  = 'E'.
      ROLLBACK WORK.
  ENDTRY.
728x90

'SAP > ABAP' 카테고리의 다른 글

HANA에서 Smartform 사용 하는 법  (0) 2022.10.14
ABAP CTE( Common Table Expressions)  (0) 2022.09.14
ABAP 동적 구조생성  (0) 2022.07.26
ABAP Debugging에 대한 설명  (0) 2022.07.22
SUBMIT Standard 프로그램 수정 안하고 호출  (0) 2022.07.20