![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP El control del flujo de datos
ABAP El control del flujo de datos
![ABAP El control del flujo de datos ABAP El control del flujo de datos](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/420.jpg)
Las Condiciones. Consiste en la ejecucion de una sentencia o grupo de sentencias que se ejecutaran en base a si se cumple o no una determinada expresion logica.
La Palabra clave IF-ENDIF de ABAP es utilizada para representar una condición.
La estructura de la sentencia es la siguiente:
IF expresion_logica_1.
[bloque_de_sentencias_1]
[ELSEIF expresion_logica_2.
[bloque_de_sentencias_2]]
...
[ELSE.
[bloque_de_sentencias_n]]
ENDIF.
Esta sentencia define una estructura de control, la cual puede contener múltiples bloques de sentencia, de las cuales una de ellas será ejecutada.
Las expresiones lógicas, comenzando con la instrucción IF, se comprueban de arriba a abajo y el bloque de instrucciones después de la primera se ejecuta durante la expresión lógica.
Si ninguna de las expresiones lógicas son verdaderas, se ejecuta el bloque de instrucciones después de la instrucción ELSE.
La utilizacion de IF Anidados con mas de tres o cuatro condiciones no es considerado una buena practica de programacion y esto se debe a que programas de ABAP complejos con muchas lineas de codigo utilizar muchos IF anidados hace que sea muy dificil identificar a simple vista cual es el ENDIF que corresponde a cada IF, en estos casos se recomienda a utilizar la sentencia CASE
La palabra clave de ABAP CASE-ENDCASE es utilizada para representar una condición.
La sintaxis de la sentencia CASE es la siguiente:
CASE operando.
[WHEN operando1 [OR operando2 [OR operando3 [...]]].
[bloque_sentencias_1]]
...
[WHEN OTHERS.
[bloque_sentencias_n]]
ENDCASE.
Solo se podrá ejecutar un bloque de sentencia dependiendo del valor almacenado en operando.
Comenzando desde la primera sentencia WHEN, se compara el contenido del operando con el contenido de operando1, operando2, etc...desde arriba hacia abajo.
El bloque de sentencia se ejecutará cuando se encuentre la primero coincidencia.
Los Bucles. Es una secuencia de instrucciones de codigo que se ejecuta repetidas veces hasta que la condicion asignada a dicho bucle deja de cumplirse.
La palabra reservada del lenguaje ABAP LOOP-ENDLOOP se utiliza para la representación de bucles.
Mediante la sentencia LOOP podremos recorrer registro a registro, el contenido de una tabla interna.
La sintaxis de la sentencia LOOP-ENDLOOP es la siguiente:
LOOP AT <tabla_interna>
...
ENDLOOP.
Existen muchas variantes de la sentencia LOOP-ENDLOOP dependiendo principalmente si existe una cabecera de la tabla interna o no.
Veamos un ejemplo de su utilización:
LOOP AT ti_log WHERE soc = ti_oper_alv-soc
AND oper = ti_oper_alv-oper.
DELETE ti_oper_alv.
ENDLOOP.
Existe una tercera forma de realizar un bucle que es While EndWhile pero casi no se utiliza.
 
 
 
Sobre el autor
Publicación académica de Jose Medina, en su ámbito de estudios para la Carrera Consultor ABAP.
Jose Medina
Profesión: Ing. en Informatica - Venezuela - Legajo: LX87H
✒️Autor de: 71 Publicaciones Académicas
🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado
🎓Egresado del módulo:
Disponibilidad Laboral: PartTime
Presentación:
Profesional con experiencia en el ámbito del desarrollo de software, con conocimientos sólidos en diversos lenguajes de programación (para la creación de apps desktop / web / android / ios).
Certificación Académica de Jose Medina