|
*------------------------------------------------------------------------------* *------------------------------------------------------------------------------* ::Te invitamos a conocer nuestras carreras :: Carrera Consultor ABAP - Módulo Programador ABAP AVANZADO

*------------------------------------------------------------------------------* *------------------------------------------------------------------------------*
------------------------------------------------------------------------
1. ESTRUCTURAS DE CONTROL Y OPERADORES.
========================================================
1.1
::> OPERADORES
------------------
EQ -> "=" -> Igual a
NE -> "<>" -> Distinto de
GT -> ">" -> Mayor que
LT -> "<" -> Menor de
GE -> ">=" -> Mayor o igual a
LE -> "<=" -> Menor o igual a
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
1.2
::> IF-ELSE-ENDIF
---------------------
*SI SE CUMPLE CON LA CONDICION
IF "condicion".
MESSAGE e165(f5) WITH p_dest.
ELSEIF.
ELSE.
ENDIF.
*SI NO SE CUMPLE CON LA CONDICION
IF NOT "condicion".
MESSAGE e165(f5) WITH p_dest.
ELSEIF.
ELSE.
ENDIF.
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
1.3
::> CASE
-----------
IF sy-subrc = 0.
CASE w_listado.
WHEN c_l1.
PERFORM fotr_xx_swap_interes_c.
WHEN c_l2.
PERFORM fotr_xx_varios_prod_c.
WHEN c_l3.
PERFORM fotr_xx_fra_c.
ENDCASE.
ENDIF
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
1.4
::> Autoincrementacion de una variable
--------------------------------------------
ADD 1 TO v_index.
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
1.5
::> LOOP AT
---------------
*loopea a la tabla
LOOP AT tabla.
write "Hola mundo".
ENDLOOP.
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
1.5.1
::> LOOP AT INTO
---------------------
* Cada registro de la tabla se mueve a la estructura indicada
LOOP AT TG_OPERACIONES INTO EG_OPERACIONES.
PERFORM fotr_xx_trat_pago USING EG_OPERACIONES.
ENDLOOP.
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
1.6
::> CHECK (Salida condicional de
un loop)
---------------------------------------------
*El loop sigue si se cumple la condicion check
Loop AT xxx.
CHECK condicion.
write 'Hola mundo'.
ENDLOOP.
Ej:
CHECK NOT tg_dias_lab[] IS INITIAL.
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
1.7
::> ASIGNACION (Move)
---------------------------
Asigna el contenido de la variable F a la variable G.
MOVE f TO g.
O también:
g = f.
*------------------------------------------------------------------------------* *------------------------------------------------------------------------------* :: La mejor capacitación en SAP está a tu alcance. :: ESAP Posee el más avanzado y efectivo sistema de Capacitación SAP. Conocelo!

*------------------------------------------------------------------------------* *------------------------------------------------------------------------------*
------------------------------------------------------------------------
2. CONTROL DE RUPTURA
========================================================
2.1
::> CHECK
------------
CHECK condicion.
>DENTRO DE UN LOOP:
Equivale a un IF ..... CONTINUE.
Si se cumple la condicion de procesa la linea de código siguiente.
Si NO se se cumple va al pasa al proximo registro del loop.
Ejemplo:
LOOP AT TABLA.
CHECK tabla-valor = patron.
Si se cumple la condicion sigue acá
ENDLOOP.
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
2.2
::> CONTNUE
---------------
>DENTRO DE UN LOOP:
Hace que se procese el proximo registro, la linea de código que
está a continuacion NO se ejecuta.
Ejemplo:
DO 4 TIMES.
if sy-index = 2.
CONTINUE.
endif.
write sy-index.
ENDDO.
Por pantalla sale:
1 3 4
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
2.3
::> EXIT
-----------
>Sale de un LOOP, DO, WHILE, etc.
NO ejecuta el proximo registro de la tabla
Ejemplo:
DO 4 TIMES.
if sy-index = 2.
EXIT.
endif.
write sy-index.
ENDDO.
Por pantalla sale:
1
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
2.4
::> AT FIRST
--------------
Dentro de un loop.
El código contenido se ejecuta solo una vez y al principio de
un loop.
Ejemplo:
AT FIRST.
Instrucciones.
ENDAT.
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
2.5
::> AT NEW
-------------
Dentro de un loop.
El código contenido, se ejecuta solamente cuando la variable
cambia de valor.
Dentro de un AT NEW los valores de la tabla (salvo la variable de control)
se pierden.
Entonces para controla un corte usar lo siguiente:
Ejemplo:
LOOP AT mi_tabla.
AT NEW nombre.
flag = true.
ENDAT.
if flag.
write: / nombre, apellido, otros_datos.
flag = false.
endif.
endloop.
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
2.6
::> AT LAST
--------------
Dentro de un loop.
El código contenido, se ejecuta solamente una vez y al final
de un loop.
Ejemplo:
AT LAST.
Instrucciones.
ENDAT.
[ Subir]
**--------------------------------------------------------------**
Centro
de capacitacion SAP
2.7
::> CHECK - CONTINUE - EXIT =>
Mejor usar Loop at
--------------------------------------------------------
> Esto es bueno y legible:
LOOP AT ITAB INTO WA WHERE K = 'X'.
" ...
ENDLOOP.
> Esto es poco legible y usa + tiempo
LOOP AT ITAB INTO WA WHERE K = 'X'.
" ...
ENDLOOP.
*------------------------------------------------------------------------------* *------------------------------------------------------------------------------* :: Capacitate en SAP con especialistas en el área :: No dejes tu carrera en manos impovisadas, ESAP es tu mejor elección.

*------------------------------------------------------------------------------* *------------------------------------------------------------------------------*
|