✒️ABAP Las subrutinas
ABAP Las subrutinas
Subrutinas:
Secciones de código que pueden ser utilizadas más de una vez.
--------------------------------------------------------------------------------------------
Estructura:
PERFORM <subrutina>.
Nota: El nombre no puede superar los 30 caracteres.
--------------------------------------------------------------------------------------------
Pasos para crear una subrutina:
Al hacer doble click al nombre de la subrutina, una ventana de dialogo nos propondrá crearla.
Contestamos si y nos preguntará donde queremos generarla.
Tenemos dos opciones:
Crear un nuevo include de datos.
En el mismo programa de control.
En este caso elegiremos la segunda opción.
Hecho esto, podremos escribir el código de la subrutina.
------------------------------------------------------------------------------------
Estructura:
FORM <subrutina>.
…
ENDFORM.
--------------------------------------------------------------------------------------------
Tipos de subrutinas:
Internas:
Están dentro del mismo programa que las llama.
Se las crea mediante la palabra clave PERFORM.
Externas:
Están en un programa distinto al que las llama.
Estructura:
PERFORM <subrutina>(<programa>).
--------------------------------------------------------------------------------------------
Parámetros:
Usamos para pasar datos entre los programas principales y una subrutina.
------------------------------------------------------------------------------------
Parámetros actuales:
Definidos en el programa principal.
Parámetros formales:
Definidos en la subrutina.
------------------------------------------------------------------------------------
Tipos:
De entrada:
Se utilizan para pasar datos del programa principal a la subrutina.
De salida:
Se utilizan para pasar datos de la subrutina al programa principal.
De entrada y salida:
Se utilizan para pasar datos de la subrutina al programa principal y viceversa.
--------------------------------------------------------------------------------------------
Paso de parámetros:
------------------------------------------------------------------------------------
Estructura:
PERFORM <subrutina> TABLES <tabla>
USING <parámetro de entrada>
CHANGING <parámetro de salida>.
En la subrutina, además de especificar el nombre de los parámetros, se debe indicar el tipo de los parámetros formales.
Además, cuando una subrutina es llamada, los parámetros deben ser pasados en el mismo orden en el que fueron declarados.
------------------------------------------------------------------------------------
Existen tres formas de pasar parámetros:
Paso por valor:
Durante la llamada a la subrutina, los parámetros formales son creados como copias de los parámetros actuales.
Los cambios en los parámetros formales no afectan a los actuales.
Estructura:
USING value(<parámetro>).
Paso por referencia:
Solo la dirección de los parámetros actuales se transfiere a los formales.
Por tal razón, los cambio realizados en los parámetros formales se ven reflejados en los actuales.
Estructura:
USING <parámetro>.
Paso por valor y resultado:
Durante la llamada, los parámetros formales son creados como copias de los parámetros actuales.
Los cambios son copiados a los parámetros actuales al final de la subrutina.
Estructura:
CHANGING value(<parámetro>).
----------------------------------------------------------------------------------------------------
También se pueden agregar includes de subrutinas a nuestro programa.
Estructura:
INCLUDE <report>.
----------------------------------------------------------------------------------------------------
Modularizar:
Acción de pasar el código de un programa a subrutinas, de modo de mejorar la lectura y el mantenimiento del mismo.
----------------------------------------------------------------------------------------------------
 
 
 
Sobre el autor
Publicación académica de Martin Alejandro Goya, en su ámbito de estudios para la Carrera Consultor ABAP.
Martin Alejandro Goya
Profesión: Ingeniero en Computacion - Argentina - Legajo: CJ13E
✒️Autor de: 49 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Martin Goya