Sunteți pe pagina 1din 2

fdsfsafhhkjhkfhfhsfsdfsafhfhsfsREPORT zparse.

CONSTANTS : lc_len TYPE i VALUE 100.


DATA : BEGIN OF ls_ftext,
line(lc_len),
END OF ls_ftext,
lv_fname TYPE string,
lv_rem TYPE i,
lv_fdpos TYPE i,
lt_ftext LIKE TABLE OF ls_ftext.
DATA : BEGIN OF ls_data,
ext_id(50),
ret_id(50),
END OF ls_data,
lt_data LIKE TABLE OF ls_data.
PARAMETERS : p_fname TYPE localfile.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
static
= 'X'
CHANGING
file_name = p_fname.
START-OF-SELECTION.
IF p_fname IS NOT INITIAL.
lv_fname = p_fname.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = lv_fname
filetype = 'ASC'
TABLES
data_tab = lt_ftext.
LOOP AT lt_ftext INTO ls_ftext.
SEARCH ls_ftext FOR '"id": "'.
IF sy-subrc = 0.
CLEAR : ls_data, lv_fdpos, lv_rem.
lv_fdpos = sy-fdpos + 7.
lv_rem = lc_len - lv_fdpos.
ls_data-ret_id = ls_ftext+lv_fdpos(lv_rem).
REPLACE ALL OCCURRENCES OF : '"' IN ls_data-ret_id WITH space,
',' IN ls_data-ret_id WITH space.
CONDENSE ls_data-ret_id.
ENDIF.
SEARCH ls_ftext FOR '"externalId": "'.
IF sy-subrc = 0.
CLEAR : lv_fdpos, lv_rem.
lv_fdpos = sy-fdpos + 15.
lv_rem = lc_len - lv_fdpos.
ls_data-ext_id = ls_ftext+lv_fdpos(lv_rem).
REPLACE ALL OCCURRENCES OF : '"' IN ls_data-ext_id WITH space,
',' IN ls_data-ext_id WITH space.

CONDENSE ls_data-ext_id.
APPEND ls_data TO lt_data.
ENDIF.
ENDLOOP.
ELSE.
MESSAGE 'Please select the file' TYPE 'E'.
ENDIF.
WRITE : 'EXTERNAL ID' COLOR 5, '
IEVE ID' COLOR 5.
LOOP AT lt_data INTO ls_data.
NEW-LINE.
WRITE : ls_data-ext_id UNDER 'EXTERNAL_ID',
ls_data-ret_id UNDER 'RETRIEVE_ID'.
ENDLOOP.

', 'RETR

S-ar putea să vă placă și