SAP/ABAP

ABAP File Upload

그녀는애교쟁이 2014. 6. 16. 15:15
반응형

Abap 텍스트 파일을 업로드 하는 방법은 여러가지가 있다. 아래의 예제는 cl_gui_frontend_services=>gui_upload 를 사용한 예제이다. 이 외에도 Function Gui_upload 를 사용하는 방법이 있다. 둘의 차이는 잘 모르겠으나 거의 동일한 기능을 하는 것으로 생각된다.





REPORT zfileupload MESSAGE-ID zfi.

DATA : itab TYPE STANDARD TABLE OF string.

PARAMETERS: p_file TYPE rlgrap-filename OBLIGATORY.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
  CALL FUNCTION 'F4_FILENAME'
    IMPORTING
      file_name = p_file.

START-OF-SELECTION.
  PERFORM upload_data.

FORM upload_data.

  DATA : l_filename TYPE string,
         l_data TYPE string.

  l_filename = p_file.

  CALL METHOD cl_gui_frontend_services=>gui_upload
    EXPORTING
      filename            = l_filename
      filetype            = 'ASC'
      has_field_separator = ''
    CHANGING
      data_tab            = itab.

  IF sy-subrc NE 0.
    MESSAGE e000 WITH 'File Upload Error'.
  ENDIF.

ENDFORM.                    " UPLOAD


Excel Upload Function 은 ALSM_EXCEL_TO_INTERNAL_TABLE 도 사용 할 수 있다.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
  EXPORTING
    filename                      =
    i_begin_col                   =
    i_begin_row                   =
    i_end_col                     =
    i_end_row                     =
  TABLES
    intern                        =
* EXCEPTIONS
*   INCONSISTENT_PARAMETERS       = 1
*   UPLOAD_OLE                    = 2
*   OTHERS                        = 3
          .
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.