✒️ABAP Las subrutinas
ABAP Las subrutinas
SUBRUTINAS
Son secciones de código que pueden ser utilizadas más de una vez.
La idea de pasar el código de los programas a subrutinas, es para que los programas sean más faciles, de leer y de mantener.
MODULARIZAR
Es la acción de pasar el código de un programa a subrutinas, para mejorar la lectura y el mantenimiento del mismo .
Lo ideal es que la subrutina no tenga más de 50 líneas de código.
La modularización, ayuda a encontrar más facilmente los errores en los programas. Esto debido a que al debuggear un programa, solo me preocupo que el resultado de una subrutina sea el esperado, sin entrar en detalle en cómo se llega al resultado.
Una subrutina se declara con la palabra reservada PERFORM, seguida del nombre de la subrutina.
*seleccionar datos de tabla usuarios
PERFORM selecciono_datos.
Aqui creamos una subrutina para modularizar la selección de los datos. Si hacemos doble clic en el nombre de la subrutina, el sistema nos propondrá crear la subrutina en una ventana de diálogo.
Al aceptar crear la subrutina, preguntará donde guardar la subrutina:
-Crear un nuevo INCLUDE de datos
-Crearlas en el mismo programa de control
Luego el sistema generará el bloque de código en el programa para que completemos con el código que corresponda.
**Es importante que el nombre que se le asigne a la subrutina, sea lo más representativo posible del resultado que produce la subrutina.
No puede exceder los 30 caracteres de longitud.
(INCLUDE DE DATOS: Es un objeto ABAP que se crea para agrupar en el todas las declaraciones de datos que se utilizan en un programa o grupo de programas.
Para crear un INCLUDE DE DATOS accedemos a la SE38 Editor ABAP y seleccionamos dentro de los atributos del programa la opción "Programa de Include"
Es considerada una muy buena práctica de programación.
Algunas de las ventajas que presenta la utilización de INCLUDE DE DATOS SON:
-Códigos de los programas más reducidos y sencillos de seguir.
-Facilitan el mantenimiento posterior de los programas.
-Al poder utilizarse un mismo include en más de un programa favorece la reutilización del código.
TIPOS DE SUBRUTINAS
-INTERNAS: Cuando existe dentro del mismo programa que la llama.
EXTERNAS: Cuando la subrutina está en un programa distinto al que la llama, como en el caso de Include de subrutinas, u otro programa.
(INCLUDE DE SUBRUTINAS: Objeto ABAP creado para agrupar en el todas las declaraciones de subrutinas que se usan en un programa o grupo de programas.
Para crear un INCLUDE DE DATOS accedemos a la SE38 Editor ABAP y seleccionamos dentro de los atributos del programa la opción "Programa de Include"
Es considerada una muy buena práctica de programación.
Algunas de las ventajas que presenta la utilización de INCLUDE DE DATOS SON:
-Códigos de los programas más reducidos y sencillos de seguir.
-Facilitan el mantenimiento posterior de los programas.
-Al poder utilizarse un mismo include en más de un programa favorece la reutilización del código. )
SUBRUTINAS EXTERNAS
Al usar la palabra PERFORM para crear la subrutina, se genera un bloque FROM-ENDFORM donde colocamos el código.
Se puedeen pasar datos, entre los programas principales y una subrutina a través de parámetros.
A los parámetros definidos en el programa principal, a la derecha de PERFORM se llaman parámetros actuales.
A los parámetros definidos en la subrutina, a la derecha de la palabra FORM se les llama parámetros formales.
Los parámetros pueden ser de 3 tipos:
-Entrada: Para pasar datos del programa principal a la subrutina.
-Salida: Cuando se usan para pasar datos de la subrutina al programa principal.
-De entrada y salida: Cuando se utilizan para pasar datos de la subrutina al principal y viceversa.
SUBRUTINA EXTERNAS
PERFORM <subrutina>(<Programa>) USING....
 
 
 
Sobre el autor
Publicación académica de Jair Sneider Reyes Zabala, en su ámbito de estudios para la Carrera Consultor ABAP.
Jair Sneider Reyes Zabala
Profesión: Tecnólogo en Análisis y Desarrollo de Sistemas de Información. - Colombia - Legajo: HS34M
✒️Autor de: 54 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Presentación:
Tecnólogo bilingue en análisis y desarrollo de sistemas, actualmente analista de mesa de ayuda semisenior, conocimiento básico de sap basis; actuamente en formación como programador sap abap.
Certificación Académica de Jair Reyes