20260410

Botão - Planilha Modelo


* Tables
TABLESsscrfields.

* Initialization
INITIALIZATION.
  perform f_cria_botao.

* Manipualação do Botão
*----------------------
AT SELECTION-SCREEN.
 IF sy-ucomm 'FC01'.
   perform f_gera_planilha.
 ENDIF.


*&---------------------------------------------------------------------*
*&      Form  F_GERA_PLANILHA
*----------------------------------------------------------------------*
FORM F_GERA_PLANILHA .

  FIELD-SYMBOLS<fs_tab>   type ANY TABLE,
                 <wa_tab>   type any.
  datalv_file      type string.

  datalo_obj    TYPE REF TO zcl_util.
  CREATE OBJECT lo_obj.

* XXXXXX --> Nome da estrutura com os campos (coluna)
  DATAw_dref TYPE REF TO data.
  CREATE DATA w_dref TYPE TABLE OF ('XXXXXX').
  ASSIGN w_dref->TO <fs_tab>.

  CALL METHOD LO_OBJ->MATCHCODE_FOLDER_LOCAL
    RECEIVING
      R_FOLDER lv_file .

* YYYYYY --> Nome do arquivo da planilha
  if lv_file is not initial.
    concatenate lv_file '\' 'YYYYYY.xlsx' into lv_file.
  endif.

  CALL METHOD LO_OBJ->SAVE_FILE_EXCEL
    EXPORTING
      I_PATH   lv_file
      I_LOCAL  'X'
      I_STRUC  'XXXXXX'
      DATA_TAB <fs_tab>  .

  MESSAGE s398(00with 'Planilha gerada com sucesso'.

ENDFORM.