‎2009 Mar 19 6:27 AM
Hi all,
I want to transfer the contents of CSV file into internal table dynamically and access the fields of this internal table for comparison with other internal table fields.
Is it possible??
Amol
‎2009 Mar 19 6:30 AM
‎2009 Mar 19 6:55 AM
use FM WS_UPLOAD or GUI_UPLOAD to get things done.
regards
Sarbajit
Edited by: Sarbajit Majumdar on Mar 19, 2009 12:25 PM
‎2009 May 06 1:28 PM
Hi,
Try the code below in adapting for you:
Regards,
Moh.
DATA:
wa_cepc_segm TYPE zst_cepc_segm.
DATA: BEGIN OF i_cepc OCCURS 0,
kokrs TYPE kokrs,
prctr TYPE prctr,
datbi TYPE date,
datab TYPE date,
segment TYPE fb_segment,
END OF i_cepc.
TYPES: BEGIN OF t_datatab,
col1(4) TYPE c,
col2(10) TYPE c,
col3(10) TYPE c,
col4(10) TYPE c,
col5(10) TYPE c,
END OF t_datatab.
DATA: it_datatab TYPE STANDARD TABLE OF string,
wa_datatab TYPE string.
DATA: l_file type string.
PARAMETERS: p_file TYPE rlgrap-filename DEFAULT 'XXX.csv'.
PARAMETERS: c_area TYPE kokrs.
PARAMETERS: update RADIOBUTTON GROUP rad1,
delete RADIOBUTTON GROUP rad1.
At selection screen
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
field_name = 'P_FILE'
IMPORTING
file_name = p_file.
START-OF-SELECTION.
l_file = p_file.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = l_file
FILETYPE = 'CSV'
HAS_FIELD_SEPARATOR = ' '
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
DAT_MODE = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
CHECK_BOM = ' '
VIRUS_SCAN_PROFILE =
NO_AUTH_CHECK = ' '
IMPORTING
FILELENGTH =
HEADER =
tables
data_tab = it_datatab
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_READ_ERROR = 2
NO_BATCH = 3
GUI_REFUSE_FILETRANSFER = 4
INVALID_TYPE = 5
NO_AUTHORITY = 6
UNKNOWN_ERROR = 7
BAD_DATA_FORMAT = 8
HEADER_NOT_ALLOWED = 9
SEPARATOR_NOT_ALLOWED = 10
HEADER_TOO_LONG = 11
UNKNOWN_DP_ERROR = 12
ACCESS_DENIED = 13
DP_OUT_OF_MEMORY = 14
DISK_FULL = 15
DP_TIMEOUT = 16
OTHERS = 17
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
LOOP AT it_datatab INTO wa_datatab.
split wa_datatab at ';' into
wa_cepc_segm-KOKRS
wa_cepc_segm-PRCTR
wa_cepc_segm-DATBI
wa_cepc_segm-DATAB
wa_cepc_segm-SEGMENT.
APPEND i_cepc.
CLEAR i_cepc.
ENDLOOP.
END-OF-SELECTION.