Application Development 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: 

FIle path in Screen Programming

Former Member
0 Kudos

Hi I am new to screen programming.

My program would pick a file from desktop and process it.

I am a bit confused how would I give the file path. Should it be a input/output field??

I want something like,

PARAMETERS: filename TYPE text255 OBLIGATORY.

ANy suggestions.

Ster.

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi,

Check below code will be useful.

PARAMETERS : p_flnm LIKE rlgrap-filename.


AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FLNM.

perform F4_HELP.

FORM F4_HELP.

  IF SY-UCOMM <> 'onli'.
    CALL FUNCTION 'WS_FILENAME_GET'
         EXPORTING
              DEF_FILENAME     = P_FLNM
              DEF_PATH         = 'c:\my documents'
              MASK             = ',*.*,*.*.'
              MODE             = 'O'
              TITLE            = 'Open PC File for Upload'
         IMPORTING
              FILENAME         = P_FLNM
         EXCEPTIONS
              INV_WINSYS       = 01
              NO_BATCH         = 02
              SELECTION_CANCEL = 03
              SELECTION_ERROR  = 04.
    IF SY-SUBRC <> 0.
      MESSAGE E000(0) WITH 'error locating upload file on PC' P_FLNM.
    ENDIF.
  ENDIF.

ENDFORM.             "F4_HELP

Regards

3 REPLIES 3

saranwin
Contributor
0 Kudos

Hi,

Try this code ..

SELECTION-SCREEN: BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

PARAMETERS: P_FILE LIKE RLGRAP-FILENAME.

SELECTION-SCREEN: END OF BLOCK B1.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.

CALL FUNCTION 'KD_GET_FILENAME_ON_F4'

EXPORTING

field_name = p_file

CHANGING

file_name = p_file.

DATA : lv_file TYPE string.

IF P_FILE IS NOT INITIAL.

lv_file = p_file.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = lv_file

FILETYPE = 'ASC'

HAS_FIELD_SEPARATOR = 'X'

DAT_MODE = ' '

tables

data_tab = LT_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.

ENDIF.

Regards,

Saran

Former Member
0 Kudos

Hi,

Check below code will be useful.

PARAMETERS : p_flnm LIKE rlgrap-filename.


AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FLNM.

perform F4_HELP.

FORM F4_HELP.

  IF SY-UCOMM <> 'onli'.
    CALL FUNCTION 'WS_FILENAME_GET'
         EXPORTING
              DEF_FILENAME     = P_FLNM
              DEF_PATH         = 'c:\my documents'
              MASK             = ',*.*,*.*.'
              MODE             = 'O'
              TITLE            = 'Open PC File for Upload'
         IMPORTING
              FILENAME         = P_FLNM
         EXCEPTIONS
              INV_WINSYS       = 01
              NO_BATCH         = 02
              SELECTION_CANCEL = 03
              SELECTION_ERROR  = 04.
    IF SY-SUBRC <> 0.
      MESSAGE E000(0) WITH 'error locating upload file on PC' P_FLNM.
    ENDIF.
  ENDIF.

ENDFORM.             "F4_HELP

Regards

0 Kudos

THanks Both the reply.

My concern is I am doing this in Se51.

I would I design this in the layout with the F4 Help..

Thanks,

Ster.