2013-04-24 1 views
3

Я использую «DOWNLOAD» функцию abap для загрузки чего-либо как файла txt. Но функция «СКАЧАТЬ» показывает некоторые диалоговые окна, в которых показано, где загружается файл, и спрашивает, есть ли другой файл с тем же именем, которое я хочу заменить.Можно ли не показывать диалоговые окна в функции загрузки

Существует молчание параметр для этой функции импорта, но это ничего не меняет, когда я задаю «M» или «S» или «х» к этому.

Вот что я делаю;

CALL FUNCTION 'DOWNLOAD' 
    EXPORTING 
    filename = fn 
    filetype = 'ASC' 
    silent = 'M' 
    TABLES 
    data_tab = itab. 

GUI_DOWNLOAD (устаревшее) нормально без диалоговых окон, но я не могу молчать функцию «СКАЧАТЬ». Кто-нибудь знает, как это достичь?

Спасибо.

ответ

4

Вместо упомянутых функциональных модулей вы должны использовать методы класса cl_gui_frontend_services.

Следующий фрагмент показывает вам пример вызова cl_gui_frontend_services=>gui_download.

types: t_line type c length 100. 
data: lt_tab type table of t_line. 
append 'test' to lt_tab. 

call method cl_gui_frontend_services=>gui_download 
    exporting 
    filename = 'C:\temp\file.txt' 
    changing 
    data_tab = lt_tab[]. 

Загружает файл в указанное место без диалога. Для показа диалога выбора файла, если вы выберете, есть cl_gui_frontend_services=>file_open_dialog или cl_gui_frontend_services=>file_save_dialog.

Примечание:

  1. Вы должны проверить коды возврата из вызовов методов. Я просто опустил их здесь для краткости, но отказ от их включения может привести к короткому дампу.