✒️ABAP / El control del flujo de datos Por Manel Gangolells Isanta

Selector Alummnos / Empresas

ABAP El control del flujo de datos

ABAP El control del flujo de datos

El control de flujo de datos

1. Las condiciones

Una condición consiste en la ejecución de una sentencia o grupo de sentencias que se ejecutarán en base a si se cumple o no una determinada expresión lógica. Las expresiones lógicas son todas aquellas expresiones que obtienen como resultado verdadero o falso.

Si se cumple una expresión lógica, entonces se ejecutará una determinada sentencia o grupo de sentencias y si no se cumple, entonces se ejecutará otra sentencia o grupos de sentencia.

Existen dos formas de representar condiciones en ABAP, una de ellas es utilizando la sentencia IF-ENDIF. Ejemplo IF:


DATA: v_calificacion(1) TYPE c VALUE '8'.

START-OF-SELECTION.

IF v_calificacion >= '8'.

WRITE:/ 'Aprobado'.

ELSE.

WRITE:/ 'Reprobado'.

ENDIF.


Podemos anidar o agregar más condiciones dentro del IF-ENDIF utilizando la sentencia ELSEIF. Por ejemplo IF con ELSIF:


IF v_calificacion >= '9'.

WRITE:/ 'Aprobado con méritos'.

ELSEIF v_calificacion BETWEEN '6' AND '8'.

WRITE:/ 'Aprobado'.

ELSEIF v_calificacion BETWEEN '4' AND '6'.

WRITE:/ 'Aprobado raspado'.

ELSE.

WRITE:/ 'Reprobado'.

ENDIF.


Si ninguna de las condiciones es válida, el sistema ejecutará las declaraciones que est debajo del ELSE.

La otra forma de representar condiciones ABAP es mediante la sentencia CASE-ENDCASE. Ejemplo CASE:


CASE v_calificacion.

WHEN '10' OR '9' OR '8'.

WRITE:/ 'Aprobado con méritos'.

WHEN '7' OR '6'.

WRITE:/ 'Aprobado'.

WHEN '5' OR '4'.

WRITE:/ 'Aprobado raspado'.

WHEN OTHERS.

WRITE:/ 'Reprobado'.

ENDCASE.


Si ninguna de las condiciones es válida, entonces el sistema ejecutará las declaraciones que están debajo del WHEN OTHERS.

Tanto si se usa la sentencia IF-ENDIF o CASE-ENDCASE es necesario el uso de operadores lógicos, que son operadores que nos permiten agrupar expresiones lógicas. Los operadores lógicos que tenemos disponibles en ABAP son:

  • Y → AND
  • O → OR
  • Igual → = o EQ
  • Distinto → <> o NE
  • Mayor → > o GT
  • Menor → < o LT
  • Mayor o igual → >= o GE
  • Menor o igual → <= o LE

2. Los bucles

Un bucle o ciclo, en programación, es una secuencia de instrucciones de código que se ejecuta repetidas veces, hasta que la condición asignada a dicho bucle deja de cumplirse.

Existen distintos bucles en ABAP, una de ellas es LOOP-ENDLOOP, esta sentencia se utiliza exclusivamente cuando trabajemos con tablas internas.

LOOP-ENDLOOP: Con esta sentencia se puede recorrer el contenido de una tabla interna, registro por registro y en cada registro vamos a realizar algún tipo de procesamiento. Con el agregado de la cláusula WHERE en la sentencia LOOP-ENDLOOP, se puede restringir el número de líneas a leer, ya que se producirá la iteración siempre y cuando se cumpla la condición. Ejemplo LOOP-ENDLOOP:


LOOP AT ti_salida INTO wa_salida WHERE nettobtr > 0.

WRITE:/ wa_salida-vertrag,

wa_salida-vkont,

wa_salida-belnr,

wa_salida-nettobtr.

ENDLOOP.


Otra sentencia para representar un bucle en ABAP es DO-ENDDO. Vamos a utilizar la sentencia DO-ENDDO para trabajar con variables y no con tablas internas, tal como sucede con LOOP-ENDLOOP. La iteración se ejecutará solo si la condición es verdadera.

Existe otra forma de realizar bucles en ABAP y es mediante la sentencia WHILE-ENDWHILE, pero prácticamente nunca se usa, ya que para tablas internas siempre es LOOP-ENDLOOP y para atributos es DO-ENDDO.

3. Las sentencias de control

Se utilizan para terminar el procesamiento de un bucle, de subrutina o de todo un programa. En ABAP hay las siguientes sentencias de control:

  • CHECK: Verifica si la condición es verdadera. Si la condición es falsa y la sentencia está dentro de un bucle, se saltearán todas las sentencias siguientes que estén dentro del bucle y se continuará con la siguiente iteración. Fuera de un bucle, se saltearán todas las sentencias hasta el final del evento o del programa en proceso.
  • EXIT: Si ejecutamos esta sentencia dentro de un bucle entonces saldremos del bucle, dentro de una subrutina entonces saldremos de la misma y fuera de un bucle y fuera de una subrutina salimos del programa.
  • CONTINUE: Se utiliza solo dentro de un bucle. Luego de la ejecución de la sentencia, el sistema continúa con la siguiente iteración del bucle.
  • STOP: Finaliza el programa en ejecución, pero antes ejecuta el evento END-OF-SELECTION en caso de que este evento este escrito en el programa.
  • LEAVE: Finaliza el programa en ejecución y no se ejecuta el evento END-OF-SELECTION.

Debemos tener sumo cuidado en la utilización de las sentencias de control CHECK, EXIT, CONTINUE, LEAVE y STOP debido a que estas alteran en forma directa el flujo de control de un programa ABAP.


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Manel Gangolells Isanta, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.

SAP SemiSenior

Manel Gangolells Isanta

Profesión: Técnico de Sistemas Informáticos - España - Legajo: MN13W

✒️Autor de: 33 Publicaciones Académicas

🎓Cursando Actualmente: Carrera Consultor ABAP Nivel Inicial

Certificación Académica de Manel Gangolells

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "El control del flujo de datos" de la mano de nuestros alumnos.

SAP Expert


1. Condiciones Permiten ejecutar un grupo de sentencias basándose en si una expresión lógica se cumple (es verdadera) o no. IF-ENDIF: Es la estructura básica. Permite anidar condiciones utilizando ELSEIF para evaluaciones alternativas y ELSE para el caso en que ninguna de las anteriores se cumpla,. CASE-ENDCASE: Es una alternativa al IF cuando se evalúa el contenido de una misma variable contra diferentes valores. Se utiliza WHEN para cada valor y WHEN OTHERS si no se cumple ninguna de las anteriores,. Operadores Lógicos: Se utilizan para construir las expresiones lógicas. Y / O: AND, OR. Comparaciones: EQ o = (Igual), NE o <> (Distinto), GT o > (Mayor),...

Acceder a esta publicación

Creado y Compartido por: Gabriel José Luces González

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

SAP Senior

El control del flujo de datos 1| Las condiciones Tal como sucede en todos los lenguajes de programación, en ABAP contamos con sentencias para trabajar con condiciones. Condición Consiste en la ejecución de una sentencia o grupo de sentencias que se ejecutarán en base a si se cumple o no una determinada expresión lógica La expresiones lógicas son todas aquellas expresiones que obtienen como resultado verdadero o falso. Un ejemplo de una expresión lógica es 1 más 1 = 2. Si la expresión lógica se cumple entonces se ejecutará determinada sentencia o grupo de sentencias y si la expresión lógica no se cumple entonces se ejecutará otra sentencia...

Acceder a esta publicación

Creado y Compartido por: Felipe De Jesus Arrona Rodriguez

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

SAP Master


El Control del Flujo de Datos 1.-Condiciones y bucles en ABAP La sintaxis de algunos operadores admite dos formas, por ejemplo, equal o el signo igual. 2.-Bucles en ABAP Existen diferentes formas de implementar bucles: loop...end loop y do...end do. loop...end loop es recomendado para tablas internas y permite procesar registros uno a uno, opción "where" permite filtrar las líneas procesadas. do...end do se usa para trabajar con variables, la iteración ocurre sólo si la condición es verdadera. Se menciona la sentencia while...end while pero se desaconseja su uso frente a las otras alternativas. Utilizar do o loop según el contexto de variables o tablas internas....

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

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

SAP Senior

El control de datos Las condiciones Tal como sucede en todos los lenguajes de programación, en ABAP contamos con sentencias para trabajar con condiciones. Condición Consiste en la ejecución de una sentencia o grupo de sentencias que se ejecutarán en base a si se cumple o no una determinada expresión lógica. Las expresiones lógicas son todas aquellas expresiones que obtienen como resultado verdadero o falso. Un ejemplo de una expresión lógica es: 1 más 1 = 2. Si la expresión lógica se cumple entonces se ejecutará determinada sentencia o grupo de sentencias y si la expresión lógica no se cumple entonces se ejecutará otra...

Acceder a esta publicación

Creado y Compartido por: Mara Fadua Romero Hernandez

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

SAP Junior

El control de los flujos de datos 1 | Las condiciones Tal como sucede en todos los lenguajes de programación, en ABAP contamos con sentencias para trabajar con condiciones. Condición Consiste en la ejecución de una sentencia o grupo de sentencias que se ejecutarán en base a si se cumple o no una determinada expresión lógica. Las expresiones lógicas son todas aquellas expresiones que obtienen como resultado verdadero o falso. Un ejemplo de una expresión lógica es: 1 más 1 = 2. Si la expresión lógica se cumple entonces se ejecutará determinada sentencia o grupo de sentencias y si la expresión lógica no se cumple entonces se ejecutará...

Acceder a esta publicación

Creado y Compartido por: Gustavo Jose Rondon Hernandez / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert



El control del flujo de datos en SAP es un aspecto esencial para asegurar la integridad, consistencia y eficiencia del procesamiento de información dentro del sistema. Este flujo abarca desde la entrada de datos en los sistemas front-end, pasando por las transformaciones internas, hasta su salida o uso final en procesos empresariales, reportes o sistemas externos. Comprender cómo se administra este flujo en SAP implica explorar componentes como módulos funcionales, estructuras de datos, interfaces, middleware, herramientas de monitoreo y mecanismos de validación. SAP opera sobre una arquitectura modular, y cada módulo —como SAP FI (Finanzas), SAP SD (Ventas y Distribución), SAP MM (Gestión...

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Master

1. Condiciones en ABAP Estructuras básicas IF-ENDIF: CASE-ENDCASE: Ideal para múltiples valores fijos. Operadores Lógicos Operador Significado Ejemplo EQ o = Igual a IF v_num EQ 10. NE o <> No igual a IF v_texto NE 'OK'. GT o > Mayor que IF v_total GT 100. LT o < Menor que IF v_edad LT 18. AND/OR Y/O lógico IF v_a > 0 AND v_b < 5. ...

Acceder a esta publicación

Creado y Compartido por: Oscar Aravena Muller / Disponibilidad Laboral: FullTime

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

SAP Expert


El control del flujo de datos 1 Las condiciones En ABAP, una condición es una expresión lógica que se evalúa como verdadera o falsa y determina qué sentencias se ejecutan en el programa. Se utilizan principalmente dos estructuras para manejar condiciones: Sentencia IF ... ENDIF: Permite evaluar condiciones simples y anidar otras usando ELSEIF y ELSE. Sentencia CASE ... ENDCASE: Se utiliza cuando se desea evaluar una variable frente a múltiples valores posibles mediante WHEN. Si ninguna condición se cumple, se ejecuta el bloque WHEN OTHERS. Ambas estructuras permiten un control claro del flujo lógico del programa. Además, se emplean operadores lógicos...

Acceder a esta publicación

Creado y Compartido por: Geovanny Martínez Campoverde

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

SAP Senior

El control del flujo de datos 1. Las condiciones Condición: Consiste en la ejecución de una sentencia o grupo de sentencias que se ejecutarán en base a si ese cumple o no una determinada expresión lógica. Las expresiones lógicas es: 1 más 1 = 2. Si la expresión lógica se cumple entonces se ejecutará determinada sentencia o grupo de sentencias y si la expresión lógica no se cumple entonces se ejeuctará otra sentencia o grupo de sentencias. Existen dos formas de representar condiciones en ABAP, una de ellas es utilizando la sentencia IF-ENDIF DATA: v_calificación(1) TYPE c VALUE '8'. START-OF-SELECTION IF v_calificacion >= '8'. WRITE: /'Aprobado'....

Acceder a esta publicación

Creado y Compartido por: Yeny Gisela Yanes Bautista

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

SAP Junior

Control de flujo de datos Existen 2 formas de representar condiciones en ABAP. IF-ENDIF./ ELSEIF: Condicionales simples o anidados. La utilización de ELSEIF con mas de 3 o 4 niveles NO es considerado buena practica de programación. Porque es muy difícil encontrar a simple vista el ENDIF que CORRESPONDE A CADA IF. EN ESTE CASO SE RECOMIENDA USAR EL CASE IN CASE Y MODULARIZAR EL CODIGO ABAP. LOOP-ENDLOOP exclusivamente con uso de TABLAS INTERNAS. Sirve para recorrer registro por registro y realizar algún tipo de procesamiento. Si agregamos WHERE en la sentencia loop-endloop. Se puede restringir líneas de lectura. El cual es de buena practica realizarlo. SE RESTRINGE EL ACCESO SECUENCIAL DE TODO LOS REGISTRO...

Acceder a esta publicación

Creado y Compartido por: Gaston Asplanatti / Disponibilidad Laboral: FullTime + Carta Presentación

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.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!