✒️ABAP Las subrutinas
ABAP Las subrutinas
SUBRUTINAS
Secciones de código que pueden ser utilizadas mas de una vez. Facilitan la lectura y mantenimiento del código. Pasar el código de un programa a subrutinas se llama MODULARIZAR. Esto ayuda a encontrar mas fácilmente los errores de los programas.
Se declaran utilizando la palabra PERFORM nombre_subrutina:
- Crear un nuevo include de datos
- Crear en el programa de control.
Nombre asignado representativo de max. 30 caracteres.
SUBRUTINAS INTERNAS, cuando esta dentro del programa que la llama: Se crea un bloque FORM-código subrutina-ENDFORM. Para pasar datos en tre programa y subrutina, utilizamos parámetros, "actuales" si están a la derecha de PERFORM o "formales", a la derecha de FORM.
Tipos de parámetros: De entrada: programa > subrutina.
De salida: subrutina > programa.
De entrada y salida: subrutina > programa y programa > subrutina.
-Paso de parametors
PERFORM subrutina TABLES tabla de salida USING parámetro de entrada CHANGING parámetro de salida
En el bloque FORM-ENDFORM especificar parametros formales.
Los parámetros pasados a una subrutina estarán en el mismo orden en que se declararon.
Formas de pasar los parametros:
-Paso por valor: durante la llamada a la subrutina, los parámetros formales son copia de os actuales. Los cambios de los formales no afectan a los actuales.
-Paso por referencia: durante la llamada a la subrutina, se transfiere solo la dirección de los actuales a los formales. Los cambios de los formales, cambian el contenido del campo del programa llamante.
-Paso por valor y resultado: durante la llamada a la subrutina, los formales son copia de los actuales. Los cambios de los formales son copiados a los actuales.
SUBRUTINAS EXTERNAS, cuando esta en un programa distinto al que la llama.
PERFORM subrutina (programa) USING...
Se puede agregar includes de subrutinas al programa: INCLUDE report
------------------------------------------------------------------------------------------------------
RESUMEN para el ejemplo
Tomando como partida el programa indicado, sustituimos la parte correspondiente a la declaración de datos y pantalla de selección, por una INCLUDE a ZABAP_USUARIOS_ABM_NW89P_TOP que generaremos directamente haciendo doble click sobre el nombre de la misma, y una vez generado el miembro copiamos el contenido que teníamos en el programa, grabaremos y activaremos.
De la misma manera procedemos para la creación de otra subrutina, ZABAP_USUARIOS_ABM_NW89P_SUB, contenedora de los procesos, de alta, baja y modificación de los usuarios en este caso. Generamos haciendo doble click y posteriormente, debemos introducir los PERFORM de cada proceso, para haciendo doble click sobre el nombre de cada uno, generar cada parte de la subrutina, copiando la parte del código que hace referencia a cada proceso que se puede efectuar dentro de la parte correspondiente en cada intervalo FORM-ENDFORM. Grabaremos y activaremos.
 
 
 
Sobre el autor
Publicación académica de Juan Ignacio De Tejada Santiago, en su ámbito de estudios para la Carrera Consultor ABAP.
Juan Ignacio De Tejada Santiago
Profesión: Informatico - España - Legajo: NW89P
✒️Autor de: 219 Publicaciones Académicas
🎓Egresado de los módulos:
- Máster ABAP for HANA
- Máster Funcional ABAP
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Certificación Académica de Juan De