본문 바로가기
ERP-SAP/ABAP

<ABAP> SMW0 사용 방법 & READ DOMAIN TEXT.

by 행복한워니의 기록 2012. 8. 1.
728x90
반응형

대부분 EXCEL 이나 HTML 을 만든 후에 이곳에 업로드 해서 그대로 불러와서 쓴다고들 한다.

뭐.. EXCEL 필드들이야 동적으로 생성해도 되지만..

내가 한건 HTML을 전송한다나 뭐라나.. 해서 썼는데..

우선 SMW0에 HTML 템플릿을 올리고. (난 윗쪽 선택했다;;)

아이콘중에 흰색 용지 선택해서 올리면 된다.

 

 

흰색 용지 누르면 아래와 같은 팝업이 뜨는데..

OBJ.NAME 에는 니가 나중에 부를수 있는 ID 같은걸 만들어 주는거다..

대부분 사람들이 프로그램명을 아이디로 사용하더라...

설명이야 대충 써주면..

업로드 화면 나와서 업로드 하면 된다. 그럼 끝..

문제는 부르는거다...

*&---------------------------------------------------------------------*
*&      Form  TRANSFER_DATA
*&---------------------------------------------------------------------*
FORM transfer_data .
  DATA lv_subrc    TYPE sy-subrc,
         lv_content  TYPE string,            " HTML String
         lv_apprno   type zeapprno,
         lv_type     TYPE bapi_mtype,
         lv_message  TYPE bapi_msg.

  DATA ls_header   LIKE zcmcs012,
         lt_content  LIKE TABLE OF zcmcs016" HTML Internal Table
         lt_return   LIKE bapiret2 OCCURS WITH HEADER LINE.

  CALL FUNCTION 'Z_CMC_GET_HTML'   "이걸로 가져온거긴 한데..  아래 붙여넣어주마.
    EXPORTING
      i_obj_name sy-repid
    IMPORTING
      o_content  lv_content
    TABLES
      t_content  lt_content.

 

 


  IF lv_content IS INITIAL.
*        gv_res = c_error.
    MESSAGE s000(swwwWITH sy-repid DISPLAY LIKE 'I'.
    EXIT.
  ENDIF.

* HTML에 데이터 바인딩
  PERFORM set_approval_html TABLES lt_content   <-- 더보기에 붙여넣어줌.
                          CHANGING lv_content.  <-- 그냥 웹폼에 있던 글자를 대체시켜줌.

 

 


  ls_header-modid      'CO'.     " 모듈명
  ls_header-progid     sy-cprog" 프로그램 ID
  ls_header-title      sy-title" 프로그램명
  ls_header-formid    'REQ_C003_01'" 임시 FORM ID
*  ls_header-aft_progid = 'ZFIQR019'.
*  ls_header-drafter   = GS_EXPDAT-Z_PRS_S.  "SAP 사용자 id

  CALL FUNCTION 'Z_CMC_APPR_SEND'
    EXPORTING
      i_header   ls_header
      i_contents lv_content   <-- 결국 여기에서 보내는 거임..
    IMPORTING
      e_apprno   lv_apprno
      e_type     lv_type
      e_message  lv_message
    TABLES
      t_contents lt_content.

 


  IF lv_apprno space.
*    gv_res = c_error.
    IF lv_message IS INITIAL.
      MESSAGE i001 WITH text-m18.
    ELSE.
      MESSAGE i001 WITH lv_message.
    ENDIF.
    EXIT.
  ENDIF.
   clear gs_expdat-z_text.

ENDFORM.                    " TRANSFER_DATA

 

 

 

 

PERFORM GET_DEF_LINES .이거 붙여줌

 

 

READ DOMAIN TEXT. 붙여줌

 

 

 

 

728x90
반응형