✒️ABAP Las subrutinas
ABAP Las subrutinas
Lección 1: Subrutinas
Subrutinas: son secciones de código que pueden ser utilizadas más de una vez. Hace mas fácil la lectura y mantenimiento.
Modularizar: pasar el código de un programa a subrutinas, para mejorar la lectura y mantenimiento del mismo. Es mejor que no tenga mas de 50 líneas de código.
PERFORM: palabra reservada para declarar una subrutina. Las opciones para crear una subrutina son un nuevo include de datos o crearlas en el mismo programa de control.
Es importante que el nombre no exceda los 30 caracteres y sea lo más representativo del resultado que produce.
Tipos de subrutinas
- Internas: cuando la subrutina está dentro del mismo programa que la llama
- Externas: cuando la subrutina está en un programa distinto al que las llama (include de subrutinas u otro programa).
Subrutinas internas: crea un bloque FORM-ENDFORM dentro del cual va el código. Se pueden pasar datos entre el programa principal y la subrutina. Si el parámetro esta en el programa principal a la derecha del PERFORM se les llama parámetros actuales y si esta en la subrutina a la derecha del FORM se les llama parámetros formales.
Tipos de parámetros:
- De entrada: cuando se utilizan para pasar datos del programa principal a la subrutina.
- De salida: cuando se utilizan para pasar datos de la subrutina al programa principal
- De entrada y salida: cuando se utilizan para pasar datos de la subrutina al programa principal y viceversa.
Para pasar los parámetros utilizaremos las opciones TABLES, USING y CHANGING en este orden. En el bloque FORM-ENDFORM debemos especificar el tipo de parámetros formales. Los parámetros deben ser pasados en el mismo orden que fueron declarados, se debe respetar la misma secuencia en el bloque FORM-ENDFORM.
Formas de pasar parámetros:
- Paso por valor: cuando se llama 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 parámetros actuales. No hace falta que la variables tengan el mismo nombre, con que estén en el mismo orden y sean del mismo tipo ABAP ya sabe cuales son. Mediante la cláusula VALUE le cambiamos el valor.
- Paso por referencia: cuando se llama a la subrutina sólo la dirección de los parámetros actuales se transfieren a los parámetros formales. Si los parámetros formales afectan a los parámetros actuales.
- Paso por valor y resultado: cuando se llama a la subrutina los parámetros formales son creados como copias de los parámetros actuales. Los cambios de los parámetros formales son copiados a los parámetros actuales al final de la subrutina.
Subrutinas externas: son subrutinas que están en un programa distinto al que estamos utilizando. Se pueden llamar de las siguientes formas:
- PERFOMR <sub>(<programa>) USING ...
- INCLUDE <report>
 
 
 
Sobre el autor
Publicación académica de Felipe Roca Molina, en su ámbito de estudios para la Carrera Consultor ABAP.
Felipe Roca Molina
Profesión: Informático - España - Legajo: LD31G
✒️Autor de: 120 Publicaciones Académicas
🎓Egresado de los módulos: