Saturday, March 15, 2014
CL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOG  method opens popup to select file path.



REPORT ztest_download.
"&-------------------------------------------------------------*
"& Declarations
"&-------------------------------------------------------------*
TYPES: BEGIN OF ty_pa0001,
        pernr TYPE pa0001-pernr,
        bukrs TYPE pa0001-bukrs,
        werks TYPE pa0001-werks,
        persg TYPE pa0001-persg,
        ename TYPE pa0001-ename,
      END OF ty_pa0001.
DATA:it_pa0001 TYPE STANDARD TABLE OF ty_pa0001.
DATA:wa_pa0001 TYPE ty_pa0001.

"&-------------------------------------------------------------*
"& Start Of selection
"&-------------------------------------------------------------*

START-OF-SELECTION.

  SELECT pernr
         bukrs
         werks
         persg
         ename
    FROM pa0001
    INTO TABLE it_pa0001
   UP TO 100 ROWS.
  DATA:
        gv_filename TYPE string,
        gv_path     TYPE string,
        gv_fullpath TYPE string.

  CALL METHOD cl_gui_frontend_services=>file_save_dialog
    EXPORTING
      window_title         = 'File Save Dialog'
      default_extension    = 'C:\'
*    default_file_name    =
*    with_encoding        =
*    file_filter          =
*    initial_directory    =
*    prompt_on_overwrite  = 'X'
    CHANGING
      filename             = gv_filename
      path                 = gv_path
      fullpath             = gv_fullpath
*    user_action          =
*    file_encoding        =
*  EXCEPTIONS
*    cntl_error           = 1
*    error_no_gui         = 2
*    not_supported_by_gui = 3
*    others               = 4
          .
  IF sy-subrc <> 0.
* Implement suitable error handling here
  ENDIF.

  CALL METHOD cl_gui_frontend_services=>gui_download
    EXPORTING
*    BIN_FILESIZE              =
      filename                  = gv_fullpath
      filetype                  = 'ASC'
*    APPEND                    = SPACE
      write_field_separator     = 'X'
*    HEADER                    = '00'
*    TRUNC_TRAILING_BLANKS     = SPACE
*    WRITE_LF                  = 'X'
*    COL_SELECT                = SPACE
*    COL_SELECT_MASK           = SPACE
*    DAT_MODE                  = SPACE
*    CONFIRM_OVERWRITE         = SPACE
*    NO_AUTH_CHECK             = SPACE
*    CODEPAGE                  = SPACE
*    IGNORE_CERR               = ABAP_TRUE
*    REPLACEMENT               = '#'
*    WRITE_BOM                 = SPACE
*    TRUNC_TRAILING_BLANKS_EOL = 'X'
*    WK1_N_FORMAT              = SPACE
*    WK1_N_SIZE                = SPACE
*    WK1_T_FORMAT              = SPACE
*    WK1_T_SIZE                = SPACE
*    SHOW_TRANSFER_STATUS      = 'X'
*    FIELDNAMES                =
*    WRITE_LF_AFTER_LAST_LINE  = 'X'
*    VIRUS_SCAN_PROFILE        = '/SCET/GUI_DOWNLOAD'
*  IMPORTING
*    FILELENGTH                =
    CHANGING
      data_tab                  = it_pa0001
*  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
*    NOT_SUPPORTED_BY_GUI      = 22
*    ERROR_NO_GUI              = 23
*    others                    = 24
          .
  IF sy-subrc <> 0.
* Implement suitable error handling here
  ELSE.
    WRITE :/ 'Successfully downloaded'.
  ENDIF.

0 comments:

Post a Comment

Your useful comments, suggestions are appreciated.Your comments are moderated.

Followers

Contact Form

Name

Email *

Message *

Web Dynpro ABAP Book

An SAP Consultant

Follow US


Want to Contribute ?

If you are interested in writing about the new stuff you learn everyday while working, please write to the.sap.consultants@gmail.com.

Click on Contribution for more details.