✒️ABAP Las subrutinas
ABAP Las subrutinas
SUBRUTINAS:
Son secciones de código que pueden ser utilizadas más de una vez. Es código ha sido modularizado en una rutina para hacer más legible el código de un programa y hacer que el mantenimiento del mismo sea más simple.
Modularizar: es pasar código de no más de 50 líneas a una subrutina para mejorar la lectura y el mantenimiento.
TIPOS DE SUBRUTINAS
1- Interna: Cuando está dentro del programa que la llama.
2- Externa: Cuando está en otro programa o en un include de sibrutinas.
SUBRUTINAS INTERNAS
Para crear una subrutina interna se usa la palabra PERFORM nom_subrutina, esto crea un bloque FORM-END FORM donde se coloca el código.
A los parámetros definidos en el programa principal de llaman parametros actuales y a los que se definen en la subrutina se llaman parámetros formales.
Para pasar parámetros se utiliza:
USING:parámetro de entrada de cualquier tipo de dato.
CHANGING: parámetros de salida de cualquier tipo.
TABLES: pasa como parámetro tablas internas.
TIPOS DE PARAMETROS
1- Entrada: Se envían datos a la subrutina.
2- Salida: Se pasan datos de la subrutina al programa.
3- De entrada y salida: Se utilizan para enviar y recibir datos.
Para pasar datos a las subrutinas existen tres opciones:
Paso por valor:
Los parámetros formales son creados como copia de los parámetros actuales. Los cambios en los parámetros formales no afectan a los parámetros actuales.
FORM nombre_subrutina USING VALUE variable_por valor.
Paso por referencia:
Se pasa sólo la dirección de los parámetros actuales a los parámetros formales, si los parámetros formales cambian el contenido también lo hace el campo del programa que hace la llamada.
FORM paso_por_referencia USING v_1.
CHANGING v_2.
Paso por valor y referencia:
Los parámetros formales son creados como copias de los parámetros actuales. Los cambios en los parámetros formales son copiados a los parámetros actuales al final de la subrutina.
PERFORM paso_por_valor_y_resultado USING (p1).
CHANGING (P2).
FORM paso_por_valor_y_resultado USING value (p1).
CHANGING value (P2).
FORM
...
END FORM.
SUBRUTINAS EXTERNAS
Está en un programa distinto al que se está procesando.
PERFORM subrutina(programa) USING..
También se pueden agregar include de subrutinas .
INCLUDE reporte.
 
 
 
Sobre el autor
Publicación académica de Cecilia Andrea Rigo, en su ámbito de estudios para la Carrera Consultor ABAP.
Cecilia Andrea Rigo
Profesión: Analista de Sistemas - Argentina - Legajo: LL68J
✒️Autor de: 33 Publicaciones Académicas
🎓Cursando Actualmente: Consultor Funcional Módulo FI Nivel Inicial
🎓Egresado de los módulos:
Certificación Académica de Cecilia Rigo