|
#1
|
|||
|
|||
Creando un pool de rutinas
Por hacerlo de forma complicada:
REPORT suma. DATA: operador_1(10) VALUE '10', simbolo_1(10) VALUE '+', operador_2(10) VALUE '5', simbolo_2(10) VALUE '-', operador_3(10) VALUE '2'. DATA: t_source_tab TYPE TABLE OF char72, g_program_name TYPE sy-repid, g_syntax_message TYPE string, g_line_no TYPE i , linea(100), operacion(100), resultado TYPE i. CONCATENATE operador_1 simbolo_1 operador_2 simbolo_2 operador_3 INTO operacion SEPARATED BY space. REFRESH t_source_tab. APPEND 'REPORT' TO t_source_tab. APPEND sy-repid TO t_source_tab. APPEND '.' TO t_source_tab. APPEND 'FORM MATH CHANGING RESULTADO.' TO t_source_tab. CONCATENATE 'RESULTADO = ' operacion '.' INTO linea SEPARATED BY space. APPEND linea TO t_source_tab. APPEND 'ENDFORM.' TO t_source_tab. GENERATE SUBROUTINE POOL t_source_tab NAME g_program_name MESSAGE g_syntax_message LINE g_line_no. IF sy-subrc <> 0. MESSAGE g_syntax_message TYPE 'E'. ENDIF. START-OF-SELECTION. PERFORM math IN PROGRAM (g_program_name) CHANGING resultado. WRITE :/ resultado. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|