✒️ABAP Las subrutinas
ABAP Las subrutinas
Lección 1: Subrutinas
1. ¿Qué son las Subrutinas?
Secciones de código que pueden ser utilizadas mas un de vez , esto con el fin de que los programas sean mas fáciles de leer y entender.
Modularizar:
Hace referencia a pasar el codigo de un programa a subrutinas. Lo ideal es que una subrutina no tenga mas de 50 líneas de código.
Nota: La subrutina se declara con PERFORM seguida del nombre de la subrutina. Es importante que el nombre de la subrutina sea lo mas representativo del resultado que produce. No debe exceder los 30 caracteres. Cuando se crea la subrutina se nos pregunta donde queremos generar la subrutina, las opciones son: crearlas en un nuevo include de datos( agrupan todas las declaraciones de datos que se ocupan en el programa) o crearlas en el mismo programa.
2. Tipos de Subrutinas. Existen 2 tipos de subrutina:
Internas: La subrutina esta dentro del mismo programa que la llama.
Externas: La subrutina esta en un programa distinto al que la llama (include de subrutina u otro programa).
3. Subrutina Interna:
Al crear una subrutina se crea un bloque FORM-ENDFORM, el paso de parámetros entre rutinas es posible declarando parametros actuales(perform) o formales(form)
Tipos de Parámetros:
Entrada: cuando se pasan del programa principal a la subrutina
Salida: cuando se pasan de la subrutina al programa principal.
Entrada-Salida: cuando se pasan datos a la subrutina al progama principal y viceversa.
4. Paso de parámetros a la subrutinas.
El paso de parámetros se hace por medio de tres sentencias: USING, CHANGING, TABLES.
Ejemplo:
PERFORM subrutina TABLES <tabla de salida>
USING <parametro de entrada>
CHANGING <parametro de salida>.
Nota: Cuando una subrutina es llamada , los parámetros deben ser pasados en el mismo orden en el que fueron declarados, por lo tanto, se debe respetar esta misma secuencia en el bloque FORM-ENDFORM.
Formas de Pasar Parámetros:
Paso por valor: durante la llamada a subrutina, los parámetros formales son creados como copias de los parametros actuales, por tanto los cambios no afectan a los parámetros actuales. Este tipo de parámetros se escriben a la derecha de la palabra Form con la sentencia USING VALUE par decirle que es por valor.
Paso por referencia: durante la llamada a la subrutina, solo la direccion de los parametros actuales se transfieren a los parametros formales. Dentro de la subrutina, se trabaja con el campo del programa que hace la llamada. Si cambiamos los parametros formales, el contenido del campo del programa que hace la llamada también cambia. Para ello los parámetros que se pasan en la subrutina no lleva la palabra VALUE solo la sentencia USIGN o CHANGING.
Paso por valor y resultado: durante la llamada a la subrutina, los parametros formales son creados como copias de los parametros actuales. Los cambios en los parametros formales son copiados a los parametros actuales al final de la subrutina.
5 . Subrutinas externas:
Si quisiéramos llamar a una subrutina que está en un programa distinto al que estamos procesando, debemos utilizar la siguiente sintaxis:
* PERFORM <sub>(<programa>)USING....
Tambien podemos agregar includes de subrutinas a nuestro programa de la siguiente manera.
INCLUDE<report>.
 
 
 
Sobre el autor
Publicación académica de Eric David Rivas Rivas, en su ámbito de estudios para la Carrera Consultor ABAP.
Eric David Rivas Rivas
Profesión: Ing. en Ciencias de la Computación - El Salvador - Legajo: GO81U
✒️Autor de: 29 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP FI Nivel Avanzado
- Carrera Consultor en SAP FI Nivel Inicial
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Certificación Académica de Eric Rivas