메뉴 건너뛰기

SAP 한국 커뮤니티

>안녕하세여~ 더운데 다들 수고가 많으십니다.



>제가 이번에 프로그램을 짜다가 T-CODE SMW0을 처음 접하게 되었는데


>머 대략 SMW0에 문서를 저장하거나 등록하는 방법은 알겠는데


>정확하게 제가 원하는대 사용하는 방법을 몰라서 질문드립니다.



>실행시켰을때 EXCEL DOWN이라는 버튼을 추가해서 버튼을 눌렀을때 EXCEL파일을 불러오게 하려는건데



>  >

>USER_COMMAND 에서


>WHEN 'EDOWN'



>머 이런식으로 시작하면 될 꺼 같은데 아직 초보라 어떻게 해야할 지 감을 못잡고 있습니다.ㅠㅜ


 


 


==========================================================================================================


 


기존 제가 개발했던 소스를 아래 적으니, 참고하세요. ^^


 


    WHEN 'FC01'.                                     <====WHEN 'EDOWN' 로 대체하시면 될 듯 하구요.
      PERFORM SAP_OI_LOAD_MIME_DATA.


 


 


*----------------------------------------------------------------------*
* SMW0 ROUTING 생성/변경 양식
*----------------------------------------------------------------------*
INCLUDE: OFFICEINTEGRATIONINCLUDE.


DATA: FUNCTXT        TYPE SMP_DYNTXT,
      DOC_TABLE      LIKE W3MIME OCCURS 0,
      DOC_SIZE       TYPE I,
      DOC_TYPE(80)   VALUE SOI_DOCTYPE_EXCEL97_SHEET, "엑셀
      DOC_FORMAT(80) TYPE C,
      LINK_SERVER    TYPE REF TO I_OI_LINK_SERVER,
      FACTORY        TYPE REF TO I_OI_DOCUMENT_FACTORY,
      DOCUMENT       TYPE REF TO I_OI_DOCUMENT_PROXY,
      RETCODE        TYPE T_OI_RET_STRING.


*&---------------------------------------------------------------------*


 



*&      Form  SAP_OI_LOAD_MIME_DATA
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM SAP_OI_LOAD_MIME_DATA .
  IF FACTORY IS INITIAL.
*
    CALL METHOD C_OI_FACTORY_CREATOR=>GET_DOCUMENT_FACTORY
      IMPORTING
        FACTORY = FACTORY
        RETCODE = RETCODE.
    IF RETCODE NE C_OI_ERRORS=>RET_OK.
      EXIT.
    ENDIF.
*
    CALL METHOD FACTORY->START_FACTORY
      EXPORTING
        R3_APPLICATION_NAME = 'document_name'
      IMPORTING
        RETCODE             = RETCODE.
    PERFORM SHOW_MESSAGE.
*
    CALL METHOD FACTORY->GET_LINK_SERVER
      IMPORTING
        LINK_SERVER = LINK_SERVER
        RETCODE     = RETCODE.
    PERFORM SHOW_MESSAGE.
*
    CALL METHOD LINK_SERVER->START_LINK_SERVER
                      EXPORTING LINK_SERVER_MODE = 3
*   DEFAULT 1(STANDARD NAME), 0 (INACTIVE), 2(CUSTOMER NAME),
*   3(UNIQUE NAME) -> 0, 2(동일사용자 X), 3 일때 다중실행 ##
*                        SERVER_NAME_SUFFIX = 'HR'
                      IMPORTING RETCODE = RETCODE.
    PERFORM SHOW_MESSAGE.
  ENDIF.                               "factory IS INITIAL..
*
  CLEAR: DOC_TABLE[].
  CALL FUNCTION 'SAP_OI_LOAD_MIME_DATA'
    EXPORTING
      OBJECT_ID        = 'ZFI_DOC_9010'         " SMW0 정의된 문서
    IMPORTING
      DATA_SIZE        = DOC_SIZE
      DOCUMENT_FORMAT  = DOC_FORMAT
      DOCUMENT_TYPE    = DOC_TYPE
    TABLES
      DATA_TABLE       = DOC_TABLE
    EXCEPTIONS
      OBJECT_NOT_FOUND = 1
      INTERNAL_ERROR   = 2
      OTHERS           = 3.


  IF SY-SUBRC NE 0.
    RAISE FAIL_DOCUMENT_LOAD.
    MESSAGE ID SY-MSGID TYPE 'E' NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.


  IF DOC_SIZE NE 0.
*   FACTORY 와 DOCUMENT 연결
    CALL METHOD FACTORY->GET_DOCUMENT_PROXY
      EXPORTING
        DOCUMENT_TYPE  = DOC_TYPE
      IMPORTING
        DOCUMENT_PROXY = DOCUMENT
        RETCODE        = RETCODE.
    PERFORM SHOW_MESSAGE.


*   Document를 Protected Mode로 Open하고 매크로를 실행함.
    CALL METHOD DOCUMENT->OPEN_DOCUMENT_FROM_TABLE
      EXPORTING
        DOCUMENT_TABLE = DOC_TABLE[]
        DOCUMENT_SIZE  = DOC_SIZE
      IMPORTING
        RETCODE        = RETCODE.
    PERFORM SHOW_MESSAGE.
  ELSE.
*    MESSAGE E005 RAISING FAIL_DOCUMENT_OPEN.
*    RAISE FAIL_DOCUMENT_OPEN.
*    MESSAGE S000 WITH '선택한 문서가 없습니다'.
  ENDIF.


ENDFORM.                    " SAP_OI_LOAD_MIME_DATA
*&---------------------------------------------------------------------*
*&      Form  SHOW_MESSAGE
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM SHOW_MESSAGE .


  CALL METHOD C_OI_ERRORS=>SHOW_MESSAGE
    EXPORTING
      TYPE = 'E'.



ENDFORM.                    " SHOW_MESSAGE

번호 제목 글쓴이 날짜 조회 수
387 [요청]T-Code : dbco 에 대한질문(Unix-Oracle -> NT:MSSQL) 접속가능여부 DBnoid 2008.04.02 3499
386 [요청]using 과 changing 을 알고싶어서요~ [4] 아밥걸 2008.07.15 3501
385 <img src=3.gif border=0>BAPI를 돌리면서 꼭 WAIT UP 기다려줘야 하나요? [6] Bizzard.Chul 2009.08.28 3505
384 <b>[완료]</b>팝업함수 사용을 위해 itab선언중 에러가 납니다.. [3] soriel 2008.07.28 3506
» [re] <img src=1.gif>T-CODE SMW0 이용하여 파일 불러오는 방법에대해서 질문드립니다. [4] 맨날초보 2010.08.12 3509
382 [요청][ALV] ALV에서 한개의 필드에 한 row만 활성화 하고 싶습니다. [3] Wowking 2008.01.08 3510
381 <b>[완료]</b>로컬로 만든 프로그램에 include를 붙이려하니까 에러가 나네요.왜일까요? [3] Happy~ 2009.01.06 3510
380 CONSTANTS 질문입니다. [3] bd 2007.05.11 3514
379 <img src=2.gif>IW32 BDC 관련 고속문서 갱신이 하면서.... [3] 돌맹이 2011.03.22 3516
378 <img src=2.gif>ALV 실행후 기본 EXCEL 다운로드 기능에 문의드립니다. [7] file 초보bsp/abap 2010.01.27 3520
377 <img src=3.gif>ALV 더블클릭해도 아무일이 일어나지 않습니다. [14] 모포 2010.05.27 3524
376 [요청]펑션을 삭제시 생기는 오류에 관하여 문의드립니다. [2] 풍뎅이 2008.01.28 3525
375 [요청]ALV 필드 사이즈 조정에 관한 질문입니다. [4] file SAP아가씨 2008.06.30 3526
374 [요청]ALV에서 툴바메소드로 버튼만들고 HANDLE_USER_COMMAND... [5] CoolGuy 2008.08.18 3530
373 <img src=1.gif>call function 'GUI_DOWNLOAD' 사용 질문입니다. [1] 아밥고지를 찾아서 2010.01.13 3545
372 <img src=3.gif>internal table 에서 특정 문자 포함하지 않는 데이터 삭제하는 방법 [4] 모포 2010.07.22 3546
371 <img src=2.gif>대소문자 구분 저장하는 방법 아시나요? [4] file 아밥콩` 2010.08.20 3547
370 <b>[완료]</b>abap 메모리와 시스템 변수 sy-calld 에 대한 질문입니다 [2] 아밥어렵네요 2008.10.06 3550
369 <img src=2.gif>cost center group 의 계층구조 관리하는 테이블 [2] CO초보 2011.03.21 3550
368 <img src=2.gif>숫자필드에서 소수점 아래 ##.000을 표시하지 않는 방법 좀 알려주세요 [2] 아밥줘 2010.10.13 3560