Escolar Documentos
Profissional Documentos
Cultura Documentos
EQ = NE <> >< GT > GE >= => LT < LE <= =< DATA: START TYPE D, BETWEEN f1 AND f2 SUM1 TYPE F, SUM2 TYPE P. IS INITIAL . . . IF START IS INITIAL ... IF SUM1 GT SUM2 ... IF SUM1 BETWEEN 0 AND 100 ...
<f1>
CO
<f2>
contm apenas: f1 contm apenas caracteres de f2 ACCOUNT CO '0123456789' contm pelo menos um de: f1 contm pelo menos um caracter de f2 contm a string: f1 contm a string f2 ABCDE CS DE contm o padro: f1 corresponde ao modelo f2 Modelo: * qualquer string + qualquer caracter # smbolo escape 'ABXDE' CP '*B+D*'
<f1>
CA
<f2>
<f1>
CS
<f2>
<f1>
CP
<f2>
Expresses lgicas
COUNTER GE 0
Instruo IF
ELSE.
instrues
ELSE.
instrues
ENDIF
CASE <campo>.
WHEN <valor 1>.
instrues
WHEN OTHERS.
instrues
ENDCASE.
CASE COUNTRY. WHEN 'D'. WRITE:/ Alemanha. ... WHEN 'USA'. WRITE:/ Estados Unidos. ... WHEN 'GB'. WRITE:/ Gr-Bretanha. ... ENDCASE.
Todas destinam-se a trabalhar em instrues do tipo LOOP AT <tabela_interna> e no se podem ser utilizadas dentro de instrues SELECT <tabela_DDIC>.
AT FIRST. Ocorre na primeira execuo do ciclo loop. AT LAST. Ocorre na execuo do ltimo ciclo do loop. AT NEW <campo1>. Ocorre cada vez que o valor do campo <campo1> sofrer alterao ou se os campos esquerda de <campo1> tambm sofrerem. AT END OF <campo1>. Ocorre quando o campo <campo1> for alterado aps AT NEW <campo1>, se qualquer campo antes de <campo1> for alterado ou se for a ltima linha da tabela.
Instruo ON CHANGE OF
Tabela TABNA
COUNTRY
NAME1
A
A D
Demel
Zander Albers
PROGRAM ZTST17##. TABLES: TABNA. SELECT * FROM TABNA. ON CHANGE OF TABNA-COUNTRY. NEW-PAGE. ENDON. WRITE: / TABNA-COUNTRY, TABNA-NAME1, ... . ENDSELECT.
SORT <TABELA> BY <campo1> <campo2> <campo3>. LOOP AT <tabela>. ON CHANGE OF <campo3>. <comandos para campo3> ENDON. ON CHANGE OF <campo2>. <comandos para campo2> ENDON. ON CHANGE OF <campo1>. <comandos para campo1> ENDON. ENDLOOP
A ordem de execuo das quebras em tabelas internas ou tabelas transparentes dada pela ordem do indice das mesmas, e no pela sequencia em que ON CHANGE OF <campo> declarada no cdigo ABAP. Isto significa que em nosso exemplo a ordem de execuo seria ON CHANGE OF <campo1> depois ON CHANGE OF <campo2> e finalmente ON CHANGE OF <campo3>, porque a tabela interna <tabela> foi ordenada por <campo1> + <campo2> + <campo3>.
Ciclo DO
SY-INDEX
ndice do Loop
Ciclo WHILE
SY-INDEX
ndice do Loop
Ciclo LOOP
Instruo CHECK
Instruo EXIT
EXIT.
DO.
instrues
IF COUNTER GE 100. EXIT. ENDIF.
instrues
ENDDO.
REPORT ZCTRL00. PARAMETERS COUNTER TYPE I DEFAULT '3'. DO. WRITE:/ SY-INDEX, ' passagem'. IF SY-INDEX GE COUNTER. EXIT. ENDIF. ENDDO. SKIP 2. WRITE:/ 'Sada do DO ... ENDDO'.
LOOP AT <tabela> CHECK <condicao> * a partir deste ponto <condicao> est garantida. IF NOT <condicao> CONTINUE " novo loop em <tabela> ENDIF IF NOT <condicao> EXIT " termina o loop em <tabela> ENDIF ENDLOOP
Em CHECK <condicao> pode-se entender que o codigo abaixo da instruo somente ser executado caso <condicao> seja verdadeira. No caso de <condicao> ser falso, CHECK fora um novo loop na tabela <tabela>, comportando-se exatamente como a instruo CONTINUE.