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

upload files

Former Member
0 Likes
738

Hi,Dear All:

I am asking for help here.

a local txt file,contain data which are refer to the data of table SPFLI.I want to call FM GUI_LOAD,So,first I must to build a internal table,and then transfer the data to it.but I am not clear with the structrue of this internal table.and after upload the file,i want to process each fields of the internal table separately(eg.to get each fields's value and then assign to a variant)

Pls give me a demo of upload files.

4 REPLIES 4
Read only

dani_mn
Active Contributor
0 Likes
626

HI,

check this program for uploading.

report ZTEST2.

data: file_path type string.

data: file_tab type filetable.
data: wa_tab like line of file_tab.
data: rc type i.

data: itab type standard table of cskt.
data: wa like line of itab.

start-of-selection.

  CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
    EXPORTING
      FILE_FILTER             = '.XLS'

    CHANGING
      FILE_TABLE              = file_tab
      RC                      = rc
          .

  READ TABLE file_tab into wa_tab index 1.
  file_path = wa_tab-filename.


  call method cl_gui_frontend_services=>gui_upload
    exporting
        filename                = file_Path
        HAS_FIELD_SEPARATOR     = 'X'

     changing
         data_tab                = itab.


  loop at itab into wa.

    write:/ wa-kostl.

  endloop.

Regards,

Read only

Former Member
0 Likes
626

Hi,

1. Declare internal table :

It will contain one field of max size of your record

in a single row.

DATA : BEGIN OF i_mat OCCURS 0,

line(1000),

END OF i_mat.

2.

start-of-selection.

CALL FUNCTION 'UPLOAD'

EXPORTING

FILETYPE = 'dat'

TABLES

data_tab = i_mat.

IF sy-subrc <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

3. This will contain records row by row in your file.

Then split each row based on delimiter (eg. by , or |

or space etc.) and store each field in a single row

in you actual internal table.

This way you will get all field records into one internal table.

REWARD if this helps.

Message was edited by: Palak Limbachiya

Read only

Former Member
0 Likes
626

Thanks,Palak Limbachiya

As your advice,I upload the file successfully.

and now,the data are stored in in_tab then,I want to do some processes.Can i process in_tab directly,or transfer them to a new internal table with the same structure.

the data in in_tab are row by row, i want to assign them to string variant separately.How can i do it,and can i use array in ABAP,

Read only

Former Member
0 Likes
626

’AA 0064 US SAN FRANCISCO JFK US NEW YORK SFO 321 10:00:00 18:21:00 "2.572,0000" MI 0‘

this is one row out put of the uploaded file,I want to divid the fileds into different string variants.

I use the SPLIT statement,but I do not know the separator.

SPLIT in_tab-line at <del> into f1 f2....fn.

what is the <del>.

Message was edited by: lei xiang