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: 

change "WS_FILENAME_GET" to "CL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOG"

raffinkira
Participant
0 Kudos

Hi, in an upgrading project, I need to change obselete function WS_FILENAME_GET

to "CL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOG"

Here's the sample code:

CALL FUNCTION 'WS_FILENAME_GET'

       EXPORTING

          mask             = ',*.xls,*.xlsx.'

          mode             = 'S'

          title            = 'FILE TITLE'

       IMPORTING

          filename         = g_fname

       EXCEPTIONS

          inv_winsys       = 1

          no_batch         = 2

          selection_cancel = 3

          selection_error  = 4

          OTHERS           = 5.

---------------------------------------------------------------------------------------------


DATA: WK_TITLE TYPE STRING VALUE 'FILE TITLE',

             WK_FILTER TYPE STRING VALUE ',*.xls,*.xlsx.',

             WK_FILE TYPE FILETABLE,

             WK_RC TYPE I.

       CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOG

          EXPORTING

             WINDOW_TITLE            = WK_TITLE

            FILE_FILTER             = WK_FILTER

         CHANGING

            FILENAME                = g_fname

            RC                      = WK_RC

         EXCEPTIONS

            FILE_OPEN_DIALOG_FAILED = 1

            CNTL_ERROR              = 2

            ERROR_NO_GUI            = 3

            NOT_SUPPORTED_BY_GUI    = 4

            OTHERS                  = 5.

       IF NOT WK_FILE[] IS INITIAL.

         READ TABLE WK_FILE INTO g_fname INDEX 1.

       ENDIF.

Sytax error shows "FILENAME  = g_fname" is type-imcompatible.

But it is OK when use CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG,

Can anyone give me some advice? Thx.

Moderator message - Failed to search properly. Please read the forum rules of engagement before posting.

Message was edited by: Suhas Saha

2 REPLIES 2

gouravkumar64
Active Contributor
0 Kudos

Hi,

Check the g_fname file type may be different for both case open & save.

double click on g_fname & check type of that.

I am using string for that(known from, file_save_dialog then click on parameters)

check one of my project's code.

  data : v_name                  TYPE string,

CALL METHOD cl_gui_frontend_services=>file_save_dialog

       EXPORTING

         window_title         = 'File Name to Save'

         default_extension    = '*.pdf'

         default_file_name    = v_name

         prompt_on_overwrite  = 'X'

       CHANGING

         filename             = V_NAME

         path                 = V_PATH

         fullpath             = V_FULLPATH

         user_action          = V_UACT.

Use string type & check.

Thanks

Gourav.

arindam_m
Active Contributor
0 Kudos

Hi,

Type incompatibility usually refers to mismatch in type of the parameters on both sides of '=' . This can be resolved by defining same types of the variable.

Cheers,

Arindam