✒️ABAP / Las subrutinas Por Elisa Munoz Robles
ABAP Las subrutinas

Lección 4.1
SUBRUTINAS
1. Subrutinas
Secciones de código que pueden ser utilizadas más de una vez. Ayudan a que los programas sean más fáciles de leer y de mantener. (Modularizar) No más de 50 líneas.
La modularización ayuda a encontrar los errores más fácilmente.
Al debuguear un programa (con subrutinas) la preocupación sólo sería en que el resultado sea el esperado, sin importar el detalle de cómo se llega.
Declaración: PERFORM <nombre_de_la_subrutina>. (No más de 30 caracteres)
Doble clic en <nombre_de_la_subrutina> y ABAP nos preguntará si creamos el objeto y donde lo generará, en un Include de datos o en el mismo programa (Prog. control).
2. Tipos de Subrutinas
INTERNAS à cuando está dentro del mismo programa que la llama.
EXTERNAS à cuando está en otro programa distinto al que la llama. (Include de subrutinas u otro programa).
3. Subrutinas Internas
Dentro del boque FORM-ENDFORM se coloca el código de la subrutina.
3 tipos de parámetros:
De Entrada à para pasar datos a la subrutina.
De Salida àpara pasar datos al programa que la llamó.
De Entrada y Salida àpara pasar datos a la subrutina y viceversa.
Paso de Parámetros a las subrutinas:
3 opciones: USING, CHANGING y TABLES.
PERFORM <subrutina> TABLES <tabla_de_salida> (Parámetros Actuales)
USING <parámetro_de_entrada> (Parámetros Actuales)
CHANGING <parámetro_de_salida>. (Parámetros Actuales)
En el bloque FORM-ENDFORM se debe especificar el tipo de los parámetros formales (los que están a la derecha de la palabra FORM). Estos deben ser pasados en el mismo órden que fueron declarados y del mismo tipo en la sentencia PERFORM.
Formas de pasar parámetros:
· Por valor: los parámetros formales (FORM) son creados como copias de los parámetros actuales (PERFORM). La subrutina no afecta a los parámetros formales.
PERFORM <paso_x_valor> USING <variable1>.
FORM <paso_x_valor> USING value (var2). => (<Var2> no modifica a <variable1>)
Al salir de la subrutina, <variable1> no modifica su valor.
· Paso Por Referencia: Los parámetros actuales (PERFORM) se transfieren a los parámetros formales (FORM). Si sus valores cambian en la subrutina, cambian a la salida de ésta.
PERFORM <paso_x_referencia> USING <var1>.
FORM <paso_x_referencia> USING <p_var1>. (<p_var1> si modifica a <var1>)
· Paso Por Valor y Resultado: Los parámetros formales son creados como copias de los formales. Los cambios en éstos (dentro de la subrutina) son copiados a los actuales al final de la subrutina.
PERFORM <paso_x_valor_y_resultado> USING <var1>.
FORM <paso_x_valor_y_resultado> USING value (var2).
4. Subrutinas Externas
PERFORM <subrutina>(<programa>) USING...
También se pueden agregar Includes...:
INCLUDE <report>.
 
 
 
Agradecimiento:
Ha agradecido este aporte: Patricia Lopez Cuevas
Sobre el autor
Publicación académica de Elisa Munoz Robles, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.
Elisa Munoz Robles
Profesión: Analista Orgánico - España - Legajo: CM72B
✒️Autor de: 68 Publicaciones Académicas
🎓Egresado del módulo:
Presentación:
Perfil: analista orgánico
Certificación Académica de Elisa Munoz






Disponibilidad Laboral: FullTime


















