Import z MS Excel
Poniższy skrypt przedstawia odczyt danych z pliku Excel do Tabeli wewnętrznej.
*&---------------------------------------------------------------------*
*& Report ZIMPORT_EXCEL
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zimport_excel.
TYPE-POOLS: abap.
DATA: filename TYPE rlgrap-filename,
itab TYPE TABLE OF alsmex_tabline WITH HEADER LINE,
iline TYPE i,
im_fname TYPE string,
exists TYPE abap_bool.
* wa TYPE alsmex_tabline.
PARAMETER: p_fname TYPE ibipparms-path.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.
CALL FUNCTION 'F4_FILENAME'
IMPORTING
file_name = p_fname.
AT SELECTION-SCREEN.
im_fname = p_fname.
CALL METHOD cl_gui_frontend_services=>file_exist
EXPORTING
file = im_fname
RECEIVING
result = exists.
IF exists = abap_false.
MESSAGE 'Podany plik nie istnieje...' TYPE 'W'.
ELSE.
filename = p_fname.
ENDIF.
START-OF-SELECTION.
*filename = 'D:\example.xls'.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
filename = filename
i_begin_col = 1
i_begin_row = 1
i_end_col = 4
i_end_row = 3
TABLES
intern = itab.
LOOP AT itab.
iline = itab-col MOD 4.
WRITE itab-value(12).
IF iline = 0.
NEW-LINE.
ENDIF.
ENDLOOP.
*LOOP AT itab INTO wa.
* WRITE wa-value(10).
*ENDLOOP.