Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Transfer CSV file data to internal table dynamically

Former Member
0 Likes
1,206

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

3 REPLIES 3
Read only

Former Member
0 Likes
641

hi,

check this link

thanks

Read only

sarbajitm
Contributor
0 Likes
641

use FM WS_UPLOAD or GUI_UPLOAD to get things done.

regards

Sarbajit

Edited by: Sarbajit Majumdar on Mar 19, 2009 12:25 PM

Read only

mrahhaoui
Participant
0 Likes
641

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.