a classe* 'CL_GUI_FRONTEND_SERVICES' que sera a classe que vamos estudar hoje.* Tentarei mostrar alguns Metodos interessantes dessa classe que trabalham* com arquivos e pastas.* A ideia desse programa sera bem simples, ele te possibilita criar uma* pasta e incluir nela copias dos arquivos de uma outra pasta, e no final* , como tudo isso e so para teste, existe a possibilidade de deletar todos* os arquivos copiados juntamente com a pasta caso deseje. Esse programa* nao fara nenhuma alteracao de algum arquivo que voce ja tenha no Desktop,* ira trabalhar somente com os criados pelo proprio programa.* Recomendo criar uma pasta qualquer, incluir um arquivo qualquer tambem* e comecar a brincadeira.* Como sempre faco, existem algums Breaks no codigo para forca-los a* entender o que cada metodo faz. Abaixo a lista dos metodos usados dessa* Classe.* cl_gui_frontend_services=>directory_browse* cl_gui_frontend_services=>directory_create* cl_gui_frontend_services=>directory_exist* cl_gui_frontend_services=>directory_delete* cl_gui_frontend_services=>directory_list_files* cl_gui_frontend_services=>file_copy* cl_gui_frontend_services=>file_exist* cl_gui_frontend_services=>file_get_attributes* cl_gui_frontend_services=>file_delete* Lembando que o codigo esta simples, mais para estudos mesmo, sugestoes,* critina ou qualquer tipo de opniao estamos disponivel no final do post,* a nomenclatura dos metodos estao bem intuitivas para nao precisar comentar* muito, mas qualquer duvida estamos ai tambem.* Bons estudos aeeee.REPORT z_cl_gui_frontend_services.TABLES : sscrfields.CLASS zcl_main DEFINITION DEFERRED.DATA : o_main TYPE REF TO zcl_main.DATA : subrc TYPE sy-subrc, result TYPE abap_bool, gt_file_table TYPE rstt_t_files.* T01 - Pastas* C01 - Processar* T02 - Arquivos* T03 - Deletar arquivos e pastas novas apos o processo ?SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-t01.PARAMETERS : folder TYPE string, n_folder TYPE string DEFAULT 'teste'.SELECTION-SCREEN END OF BLOCK b1.SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-t02.PARAMETERS : folder2 TYPE string.SELECTION-SCREEN END OF BLOCK b2.SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-t03.PARAMETERS : del_fold AS CHECKBOX DEFAULT abap_true, del_file AS CHECKBOX DEFAULT abap_true.SELECTION-SCREEN END OF BLOCK b3.CLASS zcl_main DEFINITION. PUBLIC SECTION. METHODS:*--------------------------------------------------------------------* directory,*--------------------------------------------------------------------* directory_browse IMPORTING iv_title TYPE string CHANGING cv_folder TYPE string,*--------------------------------------------------------------------* directory_create IMPORTING iv_directory TYPE string CHANGING cv_rc TYPE sy-subrc,*--------------------------------------------------------------------* directory_exist IMPORTING iv_directory TYPE string CHANGING cv_result TYPE abap_bool,*--------------------------------------------------------------------* directory_delete IMPORTING iv_directory TYPE string CHANGING cv_rc TYPE sy-subrc,*--------------------------------------------------------------------* directory_list_files IMPORTING iv_directory TYPE string EXPORTING ev_count TYPE i CHANGING ct_file_table TYPE rstt_t_files,*--------------------------------------------------------------------* file CHANGING ct_file_table TYPE rstt_t_files,*--------------------------------------------------------------------* file_copy IMPORTING iv_source TYPE string iv_destination TYPE string iv_overwrite TYPE abap_bool OPTIONAL EXPORTING ev_rc TYPE sy-subrc,*--------------------------------------------------------------------* file_exist IMPORTING iv_file TYPE string EXPORTING ev_result TYPE abap_bool,*--------------------------------------------------------------------* file_get_attributes IMPORTING iv_file TYPE string EXPORTING ev_attributes TYPE char10,*--------------------------------------------------------------------* popup_to_confirm_files CHANGING ct_file_table TYPE rstt_t_files,*--------------------------------------------------------------------* popup_to_confirm IMPORTING iv_title TYPE string iv_question TYPE string EXPORTING ev_answer TYPE char1,*--------------------------------------------------------------------* delete_folder,*--------------------------------------------------------------------* delete_file CHANGING ct_file_table TYPE rstt_t_files,*--------------------------------------------------------------------* file_delete IMPORTING iv_file TYPE string EXPORTING ev_rc TYPE sy-subrc .ENDCLASS.CLASS zcl_main IMPLEMENTATION. METHOD directory. BREAK-POINT. IF folder IS NOT INITIAL AND n_folder IS NOT INITIAL. me->directory_exist( EXPORTING iv_directory = folder && '\' && n_folder CHANGING cv_result = result ). IF result IS INITIAL. me->directory_create( EXPORTING iv_directory = folder && '\' && n_folder CHANGING cv_rc = subrc ). IF subrc IS INITIAL. WRITE : / `Pasta : ` && folder && '\' && n_folder && ` criada`. ELSE. WRITE : / `Pasta : ` && folder && '\' && n_folder && ` - Problema na criacao.`. ENDIF. ELSE. WRITE : / `Pasta : ` &&