✒️ABAP El control del flujo de datos
ABAP 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 se cumple o no una determinada expresión lógica.
Las expresión lógicas son todas aquellas expresiones que obtienen como resultado verdadero o falso.
Si la expresión lógica se cumple entonces se ejecutará determinada sentencia o grupo de sentencias, en caso contrario, se ejecutará otra sentencia o grupo de sentencias.
Existen dos formas de representar condiciones en ABAP, una de ellas es utilizando la sentencia IF-ENDIF.
Podemos anidar o agregar más condiciones dentro del IF-ENDIF, utilizando la sentencia ELSEIF.
Si ninguna de las condiciones es válida, el sistema ejecutará las declaraciones que estén debajo del ELSE.
La otra forma de representar condiciones en ABAP es mediante la sentencia CASE-ENDCASE.
Si ninguna de las condiciones es válida entonces el sistema ejecutará las declaraciones que estén debajo del WHEN OTHERS.
Independientemente si utilizamos la sentencia IF-ENDIF o la sentencia CASE-ENDCASE, debemos emplear los operadores lógicos, estos nos permiten agrupar expresiones lógicas.
Los operadores lógicos que tenemos disponibles en ABAP son: AND, OR, = o EQ, <> o NE, > o GT, < o LT, >= o GE y < o LE.
2. Los bucles
Bucle
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.
Los bucles en ABAP se pueden representar de varias maneras.
La primera de ellas es mediante la sentencia LOOP-ENDLOOP. Se utiliza exclusivamente cuando se trabaja con tablas internas.
Mediante esta sentencia vamos a 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.
La utilización de la cláusula WHERE siempre y cuando sea posible, es considerada una buena práctica de programación ya que limita o restringe el acceso secuencial de todos los registros de la tabla interna.
Otra forma de representar un bucle en ABAP es mediante la sentencia DO - ENDDO.
Vamos a utilizar la sentencia DO-ENDDO para trabajar con variables y no con tabla internas, tal como sucede con LOOP- ENDLOOP.
La iteración se ejecutará solo si la condición es verdadera
3. Las sentencias de control
Se utilizan para terminar el procesamiento de un bucle de una subrutina o de todo un programa.
En ABAP contamos con las siguientes sentencias de control:
CHECK: esta sentencia verifica si la condición es verdadera. Si la condición es falsa y la sentencia estará dentro de un bucle, se saltará todas las sentencias siguientes que estén dentro del bucle y se continuará con la siguiente iteración. Fuera de un bucle, se saltarán todas las sentencias hasta el final del evento o del programa en proceso. Si la condición es verdadera entonces se continúa con el procesamiento.
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: Esta sentencia 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: esta sentencia finaliza el programa en ejecución pero antes se ejecuta el evento END-OF-SELECTION si es que este evento está escrito en el programa.
LEAVE: esta sentencia finaliza el programa en ejecución y no se ejecuta el evento END-OF-SELECTION.
 
 
 
Sobre el autor
Publicación académica de Alexis Jesus Perez Ramirez, en su ámbito de estudios para la Carrera Consultor ABAP.
Alexis Jesus Perez Ramirez
Profesión: Licenciado en Computación - Venezuela - Legajo: LK96B
✒️Autor de: 69 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Presentación:
Licenciado en computación egresado de la ucv, con amplia experiencia en base de datos, análisis de sistemas y programación; tanto en ambiente web, cliente/servidor como en computación central.
Certificación Académica de Alexis Perez