merhabalar, vakit bulup da anlatılacaklar listeme bir türlü el atamadım ama şimdilik bir abap danışmanının işini en çok kolaylaştıracak olan sistemde yapılmış örnek programları bilgisayarınıza yükleyebileceğiniz programı aşağıda paylaşıyorum. güle güle kullanın!
*&---------------------------------------------------------------------* *& Report Z_DOWNLOAD_ABAP *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT z_download_abap. TABLES: trdir, tadir. DATA: BEGIN OF lt_replist OCCURS 200, name LIKE trdir-name, END OF lt_replist. DATA: lt_content TYPE TABLE OF string, lv_filename TYPE string, lv_repcnt TYPE i, lv_perc TYPE i. SELECT-OPTIONS : s_name FOR tadir-obj_name, s_devc FOR tadir-devclass DEFAULT 'Z*', s_auth FOR sy-uname DEFAULT sy-uname. PARAMETERS : p_path TYPE string OBLIGATORY. "Kaydedilecek Klasör AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path. CALL METHOD cl_gui_frontend_services=>directory_browse CHANGING selected_folder = p_path EXCEPTIONS cntl_error = 1 error_no_gui = 2 not_supported_by_gui = 3 OTHERS = 4. INITIALIZATION. START-OF-SELECTION. SELECT trdir~name FROM tadir INNER JOIN trdir ON tadir~obj_name = trdir~name INTO TABLE lt_replist WHERE tadir~devclass IN s_devc AND tadir~object EQ 'PROG' AND tadir~obj_name IN s_name AND tadir~author IN s_auth AND trdir~cnam IN s_auth. DESCRIBE TABLE lt_replist LINES lv_repcnt. LOOP AT lt_replist. lv_perc = sy-tabix * 100 / lv_repcnt. CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR' EXPORTING percentage = lv_perc text = lt_replist-name. READ REPORT lt_replist-name INTO lt_content. CONDENSE lt_replist-name NO-GAPS. CONCATENATE p_path '\' lt_replist-name '.txt' INTO lv_filename. CALL METHOD cl_gui_frontend_services=>gui_download EXPORTING filename = lv_filename show_transfer_status = ' ' CHANGING data_tab = lt_content 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 NE 0. FORMAT INTENSIFIED COLOR = 6. WRITE : / lv_filename, 'dosyasını kaydederken hata oluştu'. ENDIF. ENDLOOP. FORMAT INTENSIFIED COLOR = 5. WRITE : 'İşlem tamamlandı'. |