✒️ABAP Las subrutinas
ABAP Las subrutinas
Audio A-U4L1: Paso por valor.
Como vemos en la imagen anterior, el nombre del parámetro actual V_F1, es decir, el que se especifica a la derecha de la palabra reservada PERFORM es diferente al nombre del parámetro formal PF1, es decir, el que se específica a la derecha de la palabra reservada FORM en la declaración de la subrutina paso_por_valor.
Basta con que ambos parámetros se encuentren en el mismo orden y su tipo sea el mismo para que ABAP los intérprete correctamente.
Para pasar parámetros por valor utilizamos en la declaración de la subrutina la palabra reservada VALUE y encerramos al parámetro entre paréntesis. Cuando se pasan parámetros por valor debemos tener bien claro que las modificaciones que se realicen al parámetro dentro de la subrutina no tendrán efecto alguno fuera de la subrutina, en el programa principal.
Ahora bien, expliquemos porque la salida por pantalla es 'B'. Al momento de declarar en el programa principal la variable V_F1, le asignamos el valor 'B'. Luego ejecutamos la subrutina paso_por_valor, pasando a la variable V_F1 como parámetro por valor. Dentro de la subrutina paso_por_valor, vemos que el nombre del parámetro cambia y que se le asigna al mismo una 'X'. Tal como mencionamos anteriormente, debido al paso por valor a la salida de la subrutina, el parámetro V_F1 vuelve a tener el mismo valor que tenía antes de ingresar a la misma, es decir, 'B'.
Finalmente, la impresión del contenido de la variable en pantalla será 'B'.
Audio B-U4L1: Paso por referencia.
Como vemos en la imagen anterior, los nombres de los parámetros actuales V_G1 y V_G2, es decir, los que especifican a la derecha de la palabra reservada PERFORM son diferentes a los nombres de los parámetros formales P_G1 y P_G2, es decir, los que se especifican a la derecha de la palabra reservada FORM en la declaración de la subrutina paso_por_referencia.
Basta con que los parámetros se encuentren en el mismo orden y su tipo sea el mismo para que ABAP los interprete correctamente.
Cuando se pasan parámetros por referencia debemos tener bien claro, que las modificaciones que se realicen en el parámetro, dentro de la subrutina, sí tendrán efecto fuera de la subrutina, en el programa principal.
Ahora bien, expliquemos porque la salida por pantalla es A B X X. Al momento de declarar en el programa principal las variables V_G1 y V_G2 les asignamos los valores 'A' y 'B'. Luego imprimimos en pantalla las variables por lo que la salida en pantalla es A B. A continuación ejecutamos la subrutina paso_por_referencia pasando ambas variables como parámetros por referencia. Dentro de la subrutina vemos que los nombres de los parámetros cambian por P_G1 y P_G2 y que ambos parámetros se les asigna una 'X'. A la salida de la ejecución de la subrutina, en el programa principal, los parámetros conservan el valor asignado a la subrutina debido al paso por referencia, es decir, 'X'.
Finalmente la impresión del contenido de las variables en pantalla será X X.
Audio C-U4L1: Nomenclatura variables globales y locales.
Dentro de lo que conocemos como estándares de programación vamos a distinguir entre la nomenclatura que utilizamos para declarar tipos de datos globales y tipos de datos locales. Por ejemplo, si nos referimos a la declaración de variables, cuando declaramos una variable global entonces vamos a comenzar con V y guion bajo (V_) o con VG y guion bajo (VG_) seguido del nombre de la variable. Y cuando declaramos una variable local entonces vamos a comenzar con VL y guion bajo (VL_) seguido del nombre de la variable.
 
 
 
Agradecimiento:
Ha agradecido este aporte: Pedro Salazar
#1 / 24 de Agosto de 2022 / Pedro Salazar: |
Sobre el autor
Publicación académica de Juan Alberto Peñalver Alvarez, en su ámbito de estudios para la Carrera Consultor ABAP.
Juan Alberto Peñalver Alvarez
Profesión: Desarrollador Técnico Abap - España - Legajo: XM96G
✒️Autor de: 50 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP Fiori
- Máster ABAP Orientado a Objetos
- Máster ABAP for HANA
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Presentación:
Mi objetivo principal es formarme como parte de la plantilla de atos it iberia, consolidar mis conocimientos y avanzar en mi carrera técnica profesional como desarrollador sap abap hana.
Certificación Académica de Juan Peñalver