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

Former Member
0 Likes
568

Hi gurus,

I have to upload a file from presentation server.For this i have declared a parameter in selection screen and gave F4 help using FM f4_filename.But that is not giving the F4 help to browse a file which is in the presentation server.

After giving the filename how 2 pass the file values into an internal table.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
544

Hi,

Use the following method.

CALL METHOD cl_gui_frontend_services=>FILE_OPEN_DIALOG

Reward if useful.

5 REPLIES 5
Read only

Former Member
0 Likes
545

Hi,

Use the following method.

CALL METHOD cl_gui_frontend_services=>FILE_OPEN_DIALOG

Reward if useful.

Read only

Former Member
0 Likes
544

Hi,

Using F4_FILENAME function module we can port data into flatfile. This is material related details.

Try the below code.

&----


*& Report ZFILENAME_TEST

*&

&----


*&

*&

&----


REPORT ZFILENAME_TEST.

TABLES : MARA.

************************INTERNAL TABLE DECLARATION****************

TYPES : BEGIN OF ITAB,

MATNR TYPE MARA-MATNR,

MEINS TYPE MARA-MEINS,

ERNAM LIKE MARA-ERNAM,

AENAM LIKE MARA-AENAM,

MTART LIKE MARA-MTART,

END OF ITAB.

DATA : IG_ITAB type ITAB OCCURS 0.

DATA : V_FILE TYPE STRING.

DATA : T_FILE TYPE RLGRAP-FILENAME.

**********************RETRIVE DATA FROM DATABASE******************

break sgopal.

SELECT

MATNR

MEINS ERNAM AENAM MTART FROM MARA

INTO CORRESPONDING FIELDS OF TABLE

IG_ITAB

up to 10 rows.

****************CALLING FUNCTION MODULES*************************

CALL FUNCTION 'F4_FILENAME' "PASS THE FILE NAME AS U NEED.

EXPORTING

  • PROGRAM_NAME = SYST-CPROG

  • DYNPRO_NUMBER = SYST-DYNNR

FIELD_NAME = 'T_FILE'

IMPORTING

FILE_NAME = T_FILE.

V_FILE = T_FILE. "STRING CONVERSION

**************CALLING GUI DOWNLOAD TO EXTRACT********************

CALL FUNCTION 'GUI_DOWNLOAD'

EXPORTING

  • BIN_FILESIZE =

filename = V_FILE

FILETYPE = 'ASC'

  • APPEND = ' '

WRITE_FIELD_SEPARATOR = 'X'

  • HEADER = '00'

  • TRUNC_TRAILING_BLANKS = ' '

WRITE_LF = 'X'

  • COL_SELECT = ' '

  • COL_SELECT_MASK = ' '

  • DAT_MODE = ' '

  • CONFIRM_OVERWRITE = ' '

  • NO_AUTH_CHECK = ' '

  • CODEPAGE = ' '

  • IGNORE_CERR = ABAP_TRUE

  • REPLACEMENT = '#'

  • WRITE_BOM = ' '

  • TRUNC_TRAILING_BLANKS_EOL = 'X'

  • WK1_N_FORMAT = ' '

  • WK1_N_SIZE = ' '

  • WK1_T_FORMAT = ' '

  • WK1_T_SIZE = ' '

  • IMPORTING

  • FILELENGTH =

tables

data_tab = IG_ITAB

  • FIELDNAMES =

EXCEPTIONS

FILE_WRITE_ERROR = 1

NO_BATCH = 2

GUI_REFUSE_FILETRANSFER = 3

INVALID_TYPE = 4

NO_AUTHORITY = 5

UNKNOWN_ERROR = 6

HEADER_NOT_ALLOWED = 7

SEPARATOR_NOT_ALLOWED = 8

FILESIZE_NOT_ALLOWED = 9

HEADER_TOO_LONG = 10

DP_ERROR_CREATE = 11

DP_ERROR_SEND = 12

DP_ERROR_WRITE = 13

UNKNOWN_DP_ERROR = 14

ACCESS_DENIED = 15

DP_OUT_OF_MEMORY = 16

DISK_FULL = 17

DP_TIMEOUT = 18

FILE_NOT_FOUND = 19

DATAPROVIDER_EXCEPTION = 20

CONTROL_FLUSH_ERROR = 21

OTHERS = 22

.

IF sy-subrc <> 0.

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

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

ENDIF.

Regards,

Jagadish

Read only

Former Member
0 Likes
544

Hi ,

See below example code , it may help u get the F4 help to get file from Presentation server.

types : begin of typ_itab,

lifnr type lifnr,

ekorg type ekorg,

ktokk type ktokk,

name1 type name1,

sortl type sortl,

land1 type land1,

waers type lfm1-waers,

end of typ_itab.

data : it_itab type standard table of typ_itab initial size 0,

wa_itab type typ_itab,

v_file like rlgrap-filename,

u_file type string,

parameters : p_file like rlgrap-filename.

at selection-screen on value-request for p_file.

CALL FUNCTION 'F4_FILENAME'

EXPORTING

PROGRAM_NAME = SYST-CPROG

DYNPRO_NUMBER = SYST-DYNNR

  • FIELD_NAME = ' '

IMPORTING

FILE_NAME = v_file.

if v_file is not initial.

p_file = v_file.

endif.

start-of-selection.

u_file = p_file.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

FILENAME = u_file

FILETYPE = 'ASC'

TABLES

DATA_TAB = it_itab.

loop at it_itab INTO wa_itab.

Write:/ wa_itab-lifnr, wa_itab-ekorg, wa_itab-ktokk, wa_itab-name1,

wa_itab-sortl, wa_itab-land1, wa_itab-waers.

endloop.

or else use

CG3Y = Download

CG3Z = Upload

Regards,

Vishvesh

if helpful, rewards it.

Read only

Former Member
0 Likes
544

hi,

1) check ur selection-screen on value-requset for ur-filenme.

check wether its rite, then

2) pass ur file name in FM f4_filename.

3) now use gui_upload to get the file into ur prog./report.

note: file should be of type string. change the file type from rlgrap to string. to do that simply declare a variable of type string and str_file = ur_file. now, pass str_file to gui_upload.

4) pass ur internal table in the tables parameter to get the values of file into ur itab in FM gui_upload.

5) try this it wil work. feel free to ask doubts..

reward if helpful

regards

mano

Read only

Former Member
0 Likes
544

hi,

use this ccode

at selection-screen on value-request for file_in.

CALL FUNCTION 'F4_FILENAME'

EXPORTING

PROGRAM_NAME = SYST-CPROG

DYNPRO_NUMBER = SYST-DYNNR

FIELD_NAME = ' '

IMPORTING

FILE_NAME = file_in

to get file value in itab use this..

file_l = file_in.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = file_l

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

  • NO_AUTH_CHECK = ' '

  • IMPORTING

  • FILELENGTH = FILELENGTH

  • HEADER = HEADER

TABLES

data_tab = itab_mm ((pass ur itab here))

reward if helpful

regards

mano