Escolar Documentos
Profissional Documentos
Cultura Documentos
No sistema R/3 muitas tabelas encontram-se ligadas por dependncias de chaves estrangeiras. Estas dependncias permitem definir estruturas hierrquicas do tipo rvore.
Dados gerais
Dados de bancos
Dados de empresa
Dados fiscais
Acum. perodos
Dados reclamao
...
Uma base de dados lgica composta por um programa ABAP especial que combina o contedo de certas tabelas da base de dados numa estrutura hierrquica. Qualquer programa associado base de dados lgica ter ento acesso s linhas das tabelas por uma sequncia definida por esta estrutura hierrquica. LFA1 LIFNR = 4710 Dados gerais
...
LFA1
Programa de leitura
REPORT SAPDBKDF... FORM PUT_LFA1 . SELECT * FROM LFA1... PUT LFA1 . ENDSELECT . ENDFORM . FORM PUT_LFBK . SELECT * FROM LFBK... PUT LFBK. ENDSELECT. ENDFORM. FORM PUT_LFB1. SELECT * FROM LFB1... PUT LFB1. ENDSELECT. ENDFORM. FORM PUT_LFB5. SELECT * FROM LFB5... PUT LFB5. ENDSELECT. ENDFORM.
KDF
REPORT ZBDLOG03. . TABLES: LFA1, LFBK, LFB5 . GET LFA1. . GET LFBK.
LFBK
LFB1
LFB5
LFC1
LFC3
BSIK
.
GET LFB5.
REPORT ZBDLOG06. TABLES: LFA1, LFB1. PARAMETERS LAND1 LIKE LFA1-LAND1. DATA COUNTER TYPE I. GET LFA1. CHECK LFA1-LAND1 EQ LAND1. WRITE:/ LFA1-LIFNR, LFA1-NAME1. COUNTER = COUNTER + 1. GET LFB1. WRITE:/3 LFB1-BUKRS, LFB1-AKONT. END-OF-SELECTION. WRITE:/ Total fornecedores do pas, LAND1, =, COUNTER.
EXIT.
Termina o evento atual e consequentemente os eventos GET de tabelas subordinadas. Visualiza a lista, se existir, antes de terminar o processamento.
REPORT ZBDLOG07. TABLES: LFA1, LFB1. PARAMETERS LAND1 LIKE LFA1-LAND1. DATA: COUNTER TYPE I. GET LFA1. IF LFA1-LAND1 NE LAND1. EXIT. ENDIF. WRITE:/ LFA1-LIFNR, LFA1-NAME1, 60 LFA1-LAND1. COUNTER = COUNTER + 1. GET LFB1. WRITE:/3 LFB1-BUKRS, LFB1-AKONT. END-OF-SELECTION. WRITE:/ 'Total de fornecedores do pas', LAND1, '=', COUNTER.
O evento END-OF-SELECTION no chega a ocorrer
Resultado:
20001 ALBERTO SOARES PT 20002 R.I.T.E. DENTE LDA PT 20002 FERDINANDO & CIA PT .
. .
REJECT <tabela>.
Interrompe o processamento do evento atual e recomea com a linha seguinte da tabela <tabela>. Se declarada, <tabela> deve ter um nvel hierrquico no inferior ao do evento em que ocorre. Se no declarada, descarta o registro lido da tabela do evento GET e aguarda pelo prximo registro.
REPORT ZTESTE1 . TABLES: SPFLI, SBOOK, SFLIGHT. DATA: SEAT_BOOKED TYPE I, SEAT_AVAIL TYPE I. GET SPFLI. SEAT_BOOKED = 0. GET SBOOK. IF SBOOK-SMOKER = X. REJECT SPFLI. ENDIF. SEAT_BOOKED = SEAT_BOOKED + 1. GET SFLIGHT LATE. IF SEAT_BOOKED GE SFLIGHT-SEATSMAX. REJECT . ENDIF. SEAT_AVAIL = SFLIGHT-SEATSMAX SEAT_BOOKED. WRITE:/ SFLIGHT-CARRID, SFLIGHT-FLDATE, SEAT_AVAIL.
SPFLI
SPFLI
SFLIGHT
SFLIGHT
...
SBOOK
...
...