PROMO JULIO en CVOSOFT United States Of America: 💎Calidad, 🔥Bonificaciones, 🥶Precios Congelados y MÁS!

 X 

✒️ABAP Las subrutinas

ABAP Las subrutinas

ABAP Las subrutinas
Las subrutinas.

Son secciones de código que pueden ser utilizadas más de una vez dentro de un mismo programa y que también pueden ser utilizadas por otros programas que las referencien. Haciendo los códigos más fáciles de leer y de mantener. Idealmente las subrutinas no debe tener más de 50 líneas de código. Modularizar: es pasar el código de un programa a subrutinas.
Las subrutinas se declaran con la palabra reservada PERFORM, seguida del nombre de la subrutina, así:
PERFORM seleccionar_datos.
Al dar doble clic sobre el nombre de la subrutina el sistema nos propondrá crear la subrutina como objeto. Nos ofrecerá crearla como un nuevo include o crearla en el mismo programa de control. Posteriormente el sistema generará un bloque de código comentario para que dejemos documentado en el mismo código qué hace la subrutina, los parámetros de entrada y los de salida.
Notas: El nombre de una subrutina debe ser lo más representativo posible y no puede exceder los 30 caracteres.

Tipos de Subrutinas.
Existen los siguientes 2 tipos de subrutinas:

*Internas: Cuando la subrutina se encuentra dentro del mismo programa o en un include de subrutinas, el cual esta declarado en el mismo programa.
PERFORM seleccionar_datos.
FORM seleccionar_datos.
ENDFORM seleccionar_datos.

*Externas: Cuando la subrutina se encuentra en un programa distinta al que la llama.
PERFORM seleccionar_datos IN PROGRAM ztest_subrutinas.

Paso de parámetros a subrutinas.
Podemos pasar datos entre el programa principal y una subrutina a través de parámetros. Los parámetros de una subrutina pueden ser de los siguientes 3 tipos:
*De entrada: Se utilizan para pasar datos del programa principal a la subrutina.
*De salida: Pasan datos de la subrutina al programa principal.
*De entrada y salida: Pasa datos de la subrutina al programa principal y viceversa.

Para pasar los parámetros en las subrutinas vamos a utilizar las siguientes 3 palabras reservadas:
*USING: Declara parámetros de entrada que serán utilizados en la subrutina.
*CHANGING: Declara parámetros de entrada/salida que serán utilizados en la subrutina.
*TABLES: Declara parámetros de entrada/salida que son tablas, las cuales serán utilizadas en la subrutina.
El orden de las clausulas debe ser el siguiente:
PERFORM <nombre_subrutina> TABLES <tabla_interna>
USING <parámetro_de_entrada>
CHANGING <parámetro_de_entrada_y_salida>.

A los parámetros definidos dentro den programa principal en la declaración de la subrutina a la derecha de la palabra PERFORM se les llama parámetros actuales, a los que se encuentran a la derecha de la palabra FORM se les llama parámetros formales.
PERFORM seleccionar_datos TABLES ti_usuarios.
USING wa_usuarios.
CHANGING v_flag.
Estos serían los parámetros actuales.

FORM procesar_datos TABLES p_ti_usuarios STRUCTURE ztabla_usuarios.
USING p_wa_usuarios STRUCTURE ztabla_usuarios.
CHANGING p_flag TYPE sy-subrc.
Estos serían los parámetros formales.

ENDFORM.

NOTA: Se deben mantener el orden de los parámetros declarados y procesados.

Existen 3 formas de pasar parámetros:
*Paso por valor: Durante la llamada a la subrutina, los parámetros formales son creados como copias de los parámetros actuales. Los parámetros formales no afectan a los actuales. Modificaciones que se realizan dentro de la subrutina, una vez que salimos de la subrutina NO se ven reflejados.
DATA: v_f1(1) TYPE c VALUE 'B'.
PERFORM paso_por_valor USING v_f1.
WRITE v_f1
FORM paso_por_valor USING value (p_f1).
p_f1 = 'X'.
ENDFORM

*Paso por referencia: Durante la llamada a la subrutina, solo la dirección de los parámetros actuales se transfieren a los parámetros formales. Dentro de la subrutina se trabaja con el campo del programa que hace la llamada. Si cambiamos los parámetros formales, el contenido del campo del programa que hace la llamada también cambia. Modificaciones que se realiza dentro de la subrutina, una vez salimos de ella SI se ven reflejados.
DATA: v_g1(1) TYPE c VALUE 'A'.
v_g2(1) TYPE c VALUE 'B'.
WRITE:/ v_g1, v_g2.
PERFORM
paso_por_valor USING v_g1.
CHANGING v_g2.
WRITE:/ v_g1, v_g2.
FORM paso_por_valor USING p_g1.
CHANGING p_g2.
v_g1 = v_g2 = 'X'.
ENDFORM

*Paso por valor y resultado: Durante la llamada a la subrutina, 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.
DATA: v_h1(1) TYPE c VALUE 'A'.
v_h2(1) TYPE c VALUE 'B'.
WRITE:/ 'H1 es:', v_h1.
FORM paso_por_valor USING value (p_f2).
CHANGING value (p_f1).
p_f1 = p_f2.
ENDFORM

Declaraciones de datos globales y locales.
Cuando declaramos datos en ABAP, es decir: variables, estructuras, tablas internas u otro tipo de datos, podemos hacerlo de las siguientes 2 formas:

*Globalmente: Declarándolas luego de la sentencia REPORT y antes del evento STAR-OF-SELECTION. Permitiéndoles ser utilizadas en cualquier parte del programa, tanto en el programa principal o en cualquier subrutina que el programa contenga. Estos nos ofrece una ventaja y una desventaja:
°Ventaja: Facilita el armado del programa, ya que no tenemos que pensar en dónde particularmente va a ser utilizada la declaración del dato.
°Desventaja: No se estaría generando un código tan eficiente en cuando a la modularización. Lo que complica el mantenimiento futuro del programa.

*Localmente: Declarándolas dentro de una subrutina, haciendo más eficiente el uso de la memoria de un programa. Esto nos permitirá usar la variable solo dentro de la subrutina.


 

 

 


Sobre el autor

Publicación académica de Linda Carolina Zambrano León, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Senior

Linda Carolina Zambrano León

Profesión: Agente - Peru - Legajo: XR55P

✒️Autor de: 63 Publicaciones Académicas

🎓Egresado del módulo:

Certificación Académica de Linda Zambrano

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las subrutinas" de la mano de nuestros alumnos.

SAP Master

las Subrutinas ayudan a que los programas sean mas faciles de leer y mantener. lo ideal es que las subrutinas no tengan mas de 50 lineas de codigo. se declaran con la palabra reservada PERFORM seguida del nombre de la subrutina.

Acceder a esta publicación

Creado y Compartido por: Mauro Fanego / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

la idea de usar subrutinas es usar el codigo mas de una vez. modularizar es una practica de programacion que facilita el mantenimiento, con las subrutinas nos permite hacer esto de manera eficiente. las subrutinas no deben tener mas de 50 lineas de codigo, se declara con PERFORM NOMBRE_SUBRUTINA. no es claro cuando por sintaxis ver cuando la referencia es por valor, por referencia y por valor y resultado.

Acceder a esta publicación

Creado y Compartido por: Edgar Arturo Moreno Tello

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Al utilizar subrutinas en nuestro código mejoramos la lectura y mantenimiento de los programas, ya que las subrutinas son bloques de código que se pueden utilizar muchas veces. Se recomienda que las subrutinas tengan como máximo 50 líneas de código. Declarar una subrutina: PERFORM nombre_subrutina. El nombre de la subrutina no debe tener más de 30 caracteres. Tipos de subrutinas: internas (está dentro del programa que la llama) y externas (está en un programa distinto al que la llama). Para pasar datos entre los programas principales y subrutinas utilizaremos parámetros, que pueden ser: de entrada (se pasan datos del programa principal a la subrutina), de salida (se pasan datos...

Acceder a esta publicación

Creado y Compartido por: Mónica Robles

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

que son las subrutinas las subrutinas son secciones de codigo que pueden ser utilizadas mas de una vez modularizar se llama asi a la acccion de pasar el codigo de un programa a subrituinas para mejorar la lectura y mantenimiento del mismo. se utiliza la palabra reservada perform para declarar una subrutina seguida del nombre de la subrutina. tipos de subrutinas internas cuando la subrutina esta dentro del mismo programa que la llama. externa cuando la subrutina esta en un programa distinto al que las llama como puede ser el caso de un include en subrutinas o otro programa subrutinas internas esta se crea en un bloque FORM.ENDFORM donde colocamos nuestro codigo. los parametros peuden ser tres tipos de entrada cuando se utilizan para pasar datos...

Acceder a esta publicación

Creado y Compartido por: Oscar Sebastian Caicedo Carlier / Disponibilidad Laboral: PartTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Junior

Subrutinas: Son secciones específicas y completas de un código que podemos ejecutar de forma independiente y cuyo resultado se utiliza para ejecutar el programa principal. Esto se hace para tener un programa mas entendible y de fácil mantenimiento. Existen dos tipos de subrutinas las cuales pueden ser: Subrutinas Internas: cuando de ejecutan dentro del mismo programa, o Subrutinas externas: cuando se ejecutan en otro programa o en secciones include. Modularizar un programa es convertir parte de el programa en subrutinas, debiendo tener la precaución de no ocupar mas de 30 líneas de código en cada subrutina. Se genera una subrutina interna con la siguiente palabra reservada: PERFORM Con el siguiente...

Acceder a esta publicación

Creado y Compartido por: Jose Tomas Gonzalez Saez / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

Subrutinas: Las Sub-rutinas son secciones de código que pueden ser utilizadas más de una vez, se utiliza para tener programas de fácil lectura y mantenimiento por parte del programador. Moduladizar: Es la acción de pasar código de un programa a subrutinas, para lograr mejorar la lectura, el ideal es no sobrepasar las 50 lineas de códigos. La subrutina se declara con la palabra reservada PERFORM según el nombre de de la subrutina ejemplo: PERFORM selecciono_datos. El ideal es lograr un nombre representativo a lo que realiza la subrutina y que no sobrepase los 30 caracteres. Tipos de subrutinas Existen dos tipos: Internas: cuando se encuentra dentro del mismo programa que la llama. Externas: Cuando...

Acceder a esta publicación

Creado y Compartido por: Enrique Javier Machuca Silva / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master


Subrutinas. Son secciones de código que pueden ser reutilizados en distintas partes del del código. Una subrutina no debería tener más de 50 líneas de codigo. Las subrutinas se declaran así: PERFORM nombre_subrutina. Se recomienda que el nombre de la función sea lo más claro y resumido posible y que indique su finalidad. No pueden tener nombres más de 30 caracteres. Hay dos tipos de subrutinas o funciones: Internas y Externas. Cuando hablamos de modularizar, hablamos de dividir el código en funciones o subrutinas más pequeñas. Eso permitirá encontrar los errores más rápido y seremos más organizados. ...

Acceder a esta publicación

Creado y Compartido por: Wellington Pierre / Disponibilidad Laboral: PartTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Junior

Subrutinas: secciones de código que pueden ser usardos mas de una vez Modulos: es pasar el código de un programa a subrutinas, para mejorar la lectura y el mantenimiento del mismo. máximo 50 líneas. subrutina se declara con la palabra PERFORM seguida del nombre Tipos de Subrutinas Internas: Cuando esta dentro del programa Externas: Cuando la subrutina esta en un programa distinto al que las llama. Se pasan datos entre los programas principales y subrutinas a través de parámetros Parámetros de entrada: Se utiliza para pasar datos del programa principal a la subrutina. Parámetros de salida: Se utilizan para pasar datos de la subrutina al programa principal Entrada y Salida: Pasan datos...

Acceder a esta publicación

Creado y Compartido por: Leonardo Isaac Gutierrez Morales / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Subrutinas: secciones de código que puede ser utilizadas más de una vez, lo ideal es que cada subrutina no tenga más de 50 líneas de código. Modularizar: pasar el código de un programa a subrutinas para mejorar la lectura y mantenimiento del mismo. PERFORM: para llamar a una subrutina. Consideraciones de las subrutinas. Utilizar nombres representativos. El nombre no puede exceder los 30 caracteres. Tipos de subrutinas: Internas: cuando la subrutina está dentro del mismo programa que la llama. Externas: cuando la subrutina está en un programa distinto, puede ser un include de subrutinas. Actuales: son los que se colocan a la derecha de la palabra PERFORM. Formales:...

Acceder a esta publicación

Creado y Compartido por: Wanderson Esaú López Peraza

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

UNIDAD 4: SUBRUTINAS FUNCIONES Y BATCH LECCION: SUBRUTINAS: - Son secciones de código que pueden ser utilizados mas de una vez. MODULARIZAR: - Es la acción de pasar porciones de código de un programa a subrutinas, para su mejor lectura y mantenimiento. Creación de subrutinas puede ser en un INCLUDE de datos o el programa control. Nombrarlo de acuerdo a lo que hará y este no debe tener longitud mas de 30 posiciones. TIPOS: Internas.- Dentro del programa Externas.- En un programa distinto del que se llama en un INCLUDE de subrutinas o en otro programa Existen 3 tipos de parámetros: De entrada De salida De entrada y salida Las opciones: Tables - Using - Changing. Cuando se hace una llamada...

Acceder a esta publicación

Creado y Compartido por: Hernan Cabezas

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!