Segue um modelo de implementação de uma classe local dentro um report onde teremos basicamente dois métodos:
A estrutura de implementação deste exemplo consiste em basicamente 3 passos:
1 - Definição ou Declaração da classe
2 - Implementação dos métodos da classe
3 - Chamada dos métodos no report
- print_value (Irá imprimir um dado valor)
- change_value (Irá alterar um dado valor)
A estrutura de implementação deste exemplo consiste em basicamente 3 passos:
1 - Definição ou Declaração da classe
*----------------------------------------------------------------------*
* Definição/Declaração da classe local
*----------------------------------------------------------------------*
CLASS local_class DEFINITION.
PUBLIC SECTION.
METHODS:
print_value IMPORTING var TYPE string, "Método para imprimir valor
change_value CHANGING var2 TYPE string. "Método para alterar um valor
ENDCLASS.
2 - Implementação dos métodos da classe
*----------------------------------------------------------------------*
* Implementação do métodos da classe local
*----------------------------------------------------------------------*
CLASS local_class IMPLEMENTATION.
METHOD print_value.
cl_demo_output=>display( var ).
ENDMETHOD.
METHOD change_value.
var2 = 'Texto alterado'.
cl_demo_output=>display( var2 ).
ENDMETHOD.
ENDCLASS.
3 - Chamada dos métodos no report
*----------------------------------------------------------------------*
* Execução do report
*----------------------------------------------------------------------*
START-OF-SELECTION.
DATA: local_class_obj TYPE REF TO local_class, "Cria o objeto tipo da classe
var_print TYPE string,
var_change TYPE string.
var_print = 'Teste de impressão'.
var_change = 'Texto inicial'.
CREATE OBJECT local_class_obj. "Instancia o objeto tipo da classe
"Chama método de impressão passando o valor de 'var_print'
CALL METHOD local_class_obj->print_value
EXPORTING var = var_print.
"Chama método para alterar o valor de 'var_change'
CALL METHOD local_class_obj->change_value
CHANGING var2 = var_change.
Tags
Dicas abap