-
프로그램 소스 직접 수행SAP/ABAP 2013. 3. 11. 15:37
*&---------------------------------------------------------------------*
*& Report Z_EXCUTE_SOURCE *
*& *
*&---------------------------------------------------------------------*
*& 소스 텍스트파일을 읽어 직접 수행한다. *
*& *
*&---------------------------------------------------------------------*
REPORT Z_EXCUTE_SOURCE .
DATA: PGNAME(08) VALUE 'Z_EXCUTE_SOURCE'.
DATA: BEGIN OF ITAB_SOURCE OCCURS 100,
TEXT(90),
END OF ITAB_SOURCE.
DATA: F(240), G TYPE I, H(72).
DATA : FNAME2 TYPE STRING.
DATA : FILE_TABLE TYPE FILETABLE,
FILE_ENCODING TYPE ABAP_ENCOD,
RC TYPE I.
START-OF-SELECTION.
CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
EXPORTING
WINDOW_TITLE = '파일 읽기 선택'
DEFAULT_FILENAME = ' '
WITH_ENCODING = 'X'
CHANGING
FILE_TABLE = FILE_TABLE
RC = RC
FILE_ENCODING = FILE_ENCODING
EXCEPTIONS
FILE_OPEN_DIALOG_FAILED = 1
CNTL_ERROR = 2
ERROR_NO_GUI = 3
NOT_SUPPORTED_BY_GUI = 4
OTHERS = 5.
IF SY-SUBRC <> 0 OR RC <= 0.
STOP.
ELSE.
READ TABLE FILE_TABLE INTO FNAME2 INDEX 1.
ENDIF.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = FNAME2
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
DAT_MODE = 'X'
TABLES
DATA_TAB = ITAB_SOURCE.
SYNTAX-CHECK FOR ITAB_SOURCE MESSAGE F LINE G WORD H.
IF SY-SUBRC <> 0.
READ TABLE ITAB_SOURCE INDEX G.
WRITE: F,G,H. WRITE:/1 G,'line : ', ITAB_SOURCE.
STOP.
ENDIF.
INSERT REPORT PGNAME FROM ITAB_SOURCE.
SUBMIT (PGNAME) AND RETURN VIA SELECTION-SCREEN.
DELETE REPORT PGNAME.수행하면 위와 같이 파일 선택 창이 나오며 abap소스코드가 저장된 텍스트 문서를 선택하면 선택한 소스코드가 수행된다.
'SAP > ABAP' 카테고리의 다른 글
심플한 필드카달로그 - 매크로버전 (1) 2013.03.21 서치헬프 강제생성(헤더 변경 포함) (0) 2013.03.20 셀렉션 스크린에 버튼달기 (0) 2013.03.19 프로그레스바 진행률 표시 (1) 2013.03.19 SAP Query 수정 후 반영 (0) 2011.12.07