-   
- ***************************************************** 
- * Programa : Z_ATG_DUMMY                            * 
- * Consultor ABAP : Alvaro Tejada Galindo            * 
- * Descripción: Programa de Ejemplo de ABAP          * 
- ***************************************************** 
-   
- REPORT Z_ATG_DUMMY. 
-   
- *======================================================================= 
- * CLASES 
- *======================================================================= 
- *Definición del Método 
- CLASS C_MATH DEFINITION. 
- *Parte Pública 
-   PUBLIC SECTION. 
- *Métodos 
-     METHODS: 
- *---> Este método recoge el parámetro de entrada             
-             FACTORIAL IMPORTING N TYPE I, 
- *---> Este método retorna el valor del factorial             
-             GET_RESULT RETURNING VALUE(FACT) TYPE I. 
- *Parte Privada 
-   PRIVATE SECTION. 
- *---> Variable de tipo entero   
-       DATA FACT TYPE I. 
- ENDCLASS. 
-   
- *Implementación del Método 
- CLASS C_MATH IMPLEMENTATION. 
-   METHOD FACTORIAL. 
- *---> Cálculamos el factorial 
-     FACT = 1. 
-     IF N NE 0. 
-      DO N TIMES. 
-        FACT = FACT * SY-INDEX. 
-      ENDDO. 
-     ENDIF. 
-   ENDMETHOD. 
-   
-   METHOD GET_RESULT. 
- *---> Asignamos el resultado del método a nuestra variable 
-   FACT = ME->FACT. 
- * --> Imprimimos el resultado   
-   WRITE: 'El Factorial es: ', FACT. 
-   ENDMETHOD. 
- ENDCLASS. 
-   
- *======================================================================= 
- * Selection screen 
- *======================================================================= 
- SELECTION-SCREEN BEGIN OF BLOCK DATA_INFO WITH FRAME TITLE TEXT-T03. 
- *Parámetro de entrada 
- PARAMETERS: 
-            NUMBER TYPE I. 
- SELECTION-SCREEN END OF BLOCK DATA_INFO. 
-   
- *======================================================================= 
- * START-OF-SELECTION 
- *======================================================================= 
- START-OF-SELECTION. 
-   
- *======================================================================= 
- * OBJETOS 
- *======================================================================= 
- *--> Definimos un objeto con referencia a nuestra clase 
- DATA MY_OBJ TYPE REF TO C_MATH. 
- DATA RESULT TYPE I. 
-   
- *--> Creamos el objeto 
- CREATE OBJECT MY_OBJ. 
- *--> Llamamos al método que obtiene el valor del parámetro de entrada 
- CALL METHOD MY_OBJ->FACTORIAL( EXPORTING N = NUMBER ). 
- *---> Llamamos al método que imprime el resultado en pantalla 
- CALL METHOD MY_OBJ->GET_RESULT. 
-   
-