
Condiciones
Se representan de dos formas en ABAP.
-Utilizando la palabra clave IF-ENDIF(palabra clave utilizada para representar una condicion)
IF <CONDICION>.
DECLARACIONES.
ELSEIF <CONDICION>.
DECLARACIONES.
ELSE.
DECLARACIONES.
ENDIF.
Si ninguna de las condiciones es valida, el sistema ejecutara las declaraciones que esten debajo del ELSE(palabra reservada ABAP que se utiliza en las construcciones de condiciones IF-ENDIF y que se ejecutara en caso de que no se cumplan ninguna de las experiencias logicas propuestas.)
-La otra forma es mediante CASE-ENDCASE
CASE CAMPO.
WHEN VALOR 1.
DECLARACIONES.
WHEN VALOR2.
DECLARACIONES.
WHEN OTHERS.
DECLARACIONES.
ENDCASE.
Si ninguna de las condiciones es valida , el sistema ejecutara las declaraciones que esten debajo del WHEN OTHERS(palabra reservada Abap que se utiliza en la construccion de condiciones CASE-ENDCASE y que se ejecutara en caso de que no se cumplan ninguna de las expresiones logicas prouestas)
En ambas formas se utilizan los siguientes operadores logicos.
Y AND
O OR
Igual = EQ
Distinto <> NE
Mayor > GT
Menor < LT
Mayor o Igual >= GE
Menor o Igual <= LE
Si en cada condicion se revisa que la variable sea igual a determinado valor y la cantidad de condiciones es alta,seria aconsejable utilizar CASE-ENDCASE
Bucles
Se representan mediante la palabra clave LOOP-ENDLOOP(palabra reservada para la utilizacion de bucles)
LOOP AT TABLA.
DECLARACIONES.
ENDLOOP.
Usando la clausula WHERE se puede restringir el numero de lineas a leer, ya que producira la iteracion siempre y cuando se cumpla la condicion.
Otra forma es mediante la palabra clave DO-ENDDO(palabra reservada del sistema que se utiliza para la representacion de bucles incondicionales o controlados mediante indices.)
DO n TIMES.
DECLARACIONES.
ENDDO.
La iteracion se ejecutara solo si la condicion es verdadera.
Sentencias de Control
Las sentencias de control se utilizan para terminar el procesamiento de un bucle, de un proceso o de un programa. las cuales son:
CHECK. verifica si la condicion es verdadera. Si la condicion es falsa, y la sentencia esta dentro de un bucle, se saltearan todas las sentencia siguientes que esten dentro del bucle y se continuara con la siguiente iteracion.Fuera de un bucle , se saltearan todas las sentencias hasta el final del evento o del programa en proceso.
EXIT. dentro de un bucle sale del bucle, dentro de una subrutina sale de la misma y fuera de un bucle sale del programa.
CONTINUE: se utiliza solo dentro de bucle. Luego de la ejecucion de la sentencia el sistema continua con la siguiente iteracion.
STOP: se finaliza el programa en ejecucion pero antes se ejecuta el evento END-OF-SELECTION.
LEAVE: se finaliza el programa en ejecucion pero no se ejecutara el evento. END-OF-SELECTION.
Estas sentencias alteran de forma directa el flujo de control de un programa ABAP.