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

File Upload

Former Member
0 Likes
679

I Created a .txt file in my C drive containg data " Hello " string type.I want 2 trasfer that data " Hello " into internal table.For that i called a method "GUI_UPLOAD".Am getting problem at declaring the internal table.help me...! By below code am not getting error,but data not inserted 2 internal table...!

REPORT ZFILE1.

data:FNAME1 TYPE STRING.

*data:FNAME1 TYPE .

DATA: BEGIN OF ITAB OCCURS 0,

  • FNAME type FNAME1,

FNAME1 type FNAME1,

END OF ITAB.

*DATA: ITAB OCCURS 0 WITH HEADER LINE.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

FILENAME = 'C:\ARV.TXT'

FILETYPE = 'ASC'

HAS_FIELD_SEPARATOR = 'X'

  • 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 = ITAB

  • 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.

WRITE:/ ITAB.

6 REPLIES 6
Read only

Former Member
0 Likes
661

Hi,

Please check if you need the parameter :

HAS_FIELD_SEPARATOR = 'X'

or not since it is just one word that can be a problem

Regards,

Himanshu

Read only

0 Likes
661

Common Data to both

DATA:

wk_rec(5000) TYPE c,

t_mesg LIKE t100-text.

DATA:

BEGIN OF in_rec,

leadid TYPE zleadid,

branch_to TYPE werks_d,

END OF in_rec,

it_conv LIKE STANDARD TABLE OF in_rec.

File on your PC (Presentation Server). This will handle tab delimited files.

CALL FUNCTION 'WS_UPLOAD'

EXPORTING

filename = zfile

filetype = 'DAT'

TABLES

data_tab = it_conv

EXCEPTIONS

file_open_error = 2

file_read_error = 3.

This will handle from Application Server, tab delmited

CONSTANTS:

c_tab TYPE x VALUE '09'.

OPEN DATASET zfile FOR INPUT IN TEXT MODE MESSAGE t_mesg.

IF sy-subrc NE 0.

scr_err = 'X'.

MESSAGE e100(z0) WITH 'Error opening input file:' t_mesg.

ENDIF.

CHECK scr_err IS INITIAL.

DO.

READ DATASET zfile INTO wk_rec.

IF sy-subrc <> 0.

EXIT.

ENDIF.

SPLIT wk_rec AT c_tab INTO in_rec-leadid in_rec-branch_to.

APPEND in_rec TO it_conv.

ENDDO.

CLOSE DATASET zfile.

Read only

Former Member
0 Likes
661

Hai,

See this code.

REPORT ZFILE1.

data:FNAME1 TYPE STRING.

DATA: BEGIN OF ITAB OCCURS 0,

FNAME like FNAME1,

END OF ITAB.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

FILENAME = 'C:\ARV.TXT'

FILETYPE = 'ASC'

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 = ITAB

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 itab.

WRITE:/ ITAB.

endloop.

Regards,

Kamala.

Read only

JozsefSzikszai
Active Contributor
0 Likes
661

hi Arvind,

WRITE:/ ITAB.

this means you write the header line of the internal table, you have to change like:

LOOP AT itab.

WRITE:/ ITAB.

ENDLOOP.

hope this helps

ec

Read only

Former Member
0 Likes
661

try this

REPORT ZFILE1.

DATA:FNAME1 TYPE STRING.

DATA: BEGIN OF ITAB OCCURS 0,

FNAME like FNAME1,

FNAME1 like FNAME1,

END OF ITAB.

*DATA: ITAB OCCURS 0 WITH HEADER LINE.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

FILENAME = 'C:\ARV.TXT'

FILETYPE = 'ASC'

HAS_FIELD_SEPARATOR = 'X'

  • 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 = itab

  • 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.

Read only

Former Member
0 Likes
661

Hi,

Try using code below:


data : begin of itab1 occurs 0,
        values(1000) type c,
       end of itab1.

PARAMETERS : p_file LIKE rlgrap-filename OBLIGATORY.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
  CLEAR p_file.

  CALL FUNCTION 'F4_FILENAME'
    IMPORTING
      file_name = p_file.

  filename = p_file.

  CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
     FILENAME                      = filename
     FILETYPE                      = 'ASC'
     HAS_FIELD_SEPARATOR           = 'X'
    TABLES
      DATA_TAB                      = itab1
  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
            .

Thanks,

Sriram Ponna.