✒️ABAP El control del flujo de datos
ABAP El control del flujo de datos
Condiciones:
Las condiciones de abap se pueden representar de dos formas utilizando la clave IF_ENDIF
IF <CONDICION>.
declaraciónes.
ELSEIF <CONDICION>
declaraciónes.
ELSE.
declaraciónes.
ENDIF.
De otra forma es mediante CASE-ENDCASE
CASE CAMPO.
WHEN VALOR1.
DECLARACIONES.
WHEN VALOR2.
DECLARACIONES.
WHEN OTHERS.
DECLARACIONES.
ENDCASE.
Operadores lógicos
Y AND
O OR
Igual = , EQ
Dstinto <> ,NE
Mayor >, GT
Menor <,LT
Mayor o igual >=, GE
Menor o igual <=, LE
Si se cheque una variable sea igual a determinado valor y la cantidad de condiciónes es alta, es aconsejable utilizar CASE-ENDCASE.
BUCLES
Se pueden representar de varias formas mediante LOOP_ENDLOOP
LOOP AT TABLA.
DECLARACIONES
ENDLOOP.
Con el agregado de la cláusula WHERE se puede restringir el número de líneas a leer producirá la interacción siempre y cuando cumpla con la condición.
*loopeamos la tabla iterna TI_USUARIOS mientras el estado civil del usuario soltero.
LOOP AT TI_USUARIOS WHERE ESTADO_CIVIL = 'S'.
ENDLOOP.
Otra forma es mediante DO-ENDDO
DO n TIMES.
DECLARACIONES.
ENDDO.
Solo se ejecuta si la interacción es verdadera ej:
DO 5 TIMES.
ENDDO.
Sentencias de Control.
Se utilizan para terminar el procesamiento de un bucle o un proceso de programa.
CHECK: verifica la condición es verdadera, si es falsa y la sentencia esta dentro del bucle se saltea todas la siguientes y continúa con la siguiente interacción. Fuera del bucle, se saltarán todas las sentencias hasta el final del evento.
CHECK sy-subrc EQ 0.
EXIT: dentro de un bucle saldrá del bucle, dentro de una subrutina saldrá de la misma y fuera de un bucle saldrá del programa.
IF v_clase EQ 'CA'.
EXIT
ENDIF.
CONTINUE: se utiliza dentro de bucle, luego de la ejecución de la sentencia el sistema continua con las siguientes interación.
DO 4 TIMES.
IF sy-subrc EQ 4.
CONTINUE.
ENDIF.
STOP: se finaliza el programa en ejecución pero antes se ejecuta el evento END-OF-SELECCION.
DO 4 TIMES.
IF sy-subrc NE 0.
STOP.
ENDIF.
LEAVE: se finaliza el programa en ejecución pero no se ejecutará en el eveto END-OF-SELECTION.
IF v_clase EQ 'DT'.
LEAVE
ENDIF.
Se debe tener mucho cuidado con la utilización de la sentencias de control CHECK, EXIT, CONTINUE, LEAVE y STOP debidoa estas alteran en forma directa el flujo de control de un programa.
 
 
 
Sobre el autor
Publicación académica de Juan Carlos Pavicich, en su ámbito de estudios para la Carrera Consultor ABAP.
Juan Carlos Pavicich
Profesión: Técnico Informático - Argentina - Legajo: VR91L
✒️Autor de: 116 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Tengo el agrado de dirigirme a ud/s con el objeto de mencionar mi experiencia y conocimientos técnicos necesarios para desarrollar actividades en el rubro de su empresa.
Certificación Académica de Juan Pavicich