Você está na página 1de 116

SAP AG 1999

BC430 - ABAP Dictionary


SSAP AG
BC430
ABAP Dictionary
SAP AG 1999
Copyright 2000 SAP AG. Todos os direitos reservados.
proibida a cpia ou reproduo deste manual de treinamento
ou de qualquer parte dele, por qualquer forma ou meio, bem
como sua traduo para qualquer outro idioma, sem o
consentimento expresso da SAP AG. As informaes contidas
neste documento esto sujeitas a alteraes e
complementaes sem prvio aviso.

Todos os direitos so reservados.
Copyright
SAP AG 1999
Captulo 5 Dependncias de
objetos do ABAP
Dictionary
Captulo 6 Modificaes de
tabelas
Captulo 7 Vises
Captulo 8: Ajudas para pesquisa
Captulo 1 Introduo
Captulo 2: Tabelas no ABAP
Dictionary
Captulo 3: Desempenho durante
acesso a tabelas
Captulo 4: Consistncia por
verificao de
entradas
Prefcio
Exerccios
Solues
Anexos
Contedo do curso
SAP AG 1999
Funo do ABAP Dictionary no sistema R/3
Definio de objetos de banco de dados
Tipos definidos pelo usurio
Servios no ABAP Dictionary
Ligao com os ambientes de desenvolvimento e
tempo de execuo
Introduo
SAP AG 1999
Objetivos do curso
No final deste captulo, o aluno estar apto a:
Conhecer a funo do ABAP Dictionary no sistema
R/3.
Saber como definir objetos e tipos de dados.
Conhecer os servios fornecidos pelo ABAP
Dictionary.
Saber como o ABAP Dictionary est ligado aos
ambientes de desenvolvimento e de tempo de
execuo.
SAP AG 1999
Funo do ABAP Dictionary
Tabela BD
Servios
Tela
Valores possveis
Definies de tipos
Estrutura
Tipo de tabela Elementos de dados
F4
Objetos BD
Tabela
SAP AG 1999
Banco de dados
Objetos de banco de dados no ABAP Dictionary
Tabela 1
ABAP Dictionary
Tabela 2
Viso
Objetos so criados
automaticamente no BD e
ajustados s modificaes
SAP AG 1999
Definio de tipos no ABAP Dictionary
CEP
Cidade Rua N
o
casa
Nmeros
Empregado
Nome Endereo Telefone
Nome Sobrenome
Cidade
Endereo
SAP AG 1999
Servios do ABAP Dictionary
Companhia area
Nmero do vo
. . .
Atualizao de vos
LH LLH
N
o
Cidade
part.
Cidade
chegada
Companhia area
0400
Frankfurt Nova Iorque
0402 Frankfurt Nova Iorque
LH
LH
LH
LH
LH
2402 Frankfurt Berlim
... ... ...
Cdigo da conexo de vo
Cdigo que define a conexo de
vo entre duas cidades, por
exemplo, 0400 Frankfurt - Nova
Iorque.
F1
F4
SAP AG 1999
Ligao do ABAP Development Workbench e do
ambiente para o tempo de execuo.
ABAP
Dictionary Ler definies
de tipos
L a estrutura dos
objetos de banco
de dados
Ambiente de tempo de execuo
Ambiente de
desenvolvimento
Interpretador
ABAP
Interpretador
de tela
Ferramentas
ABAP
Screen
Painter
Interface de
banco de dados
SAP AG 1999
Sumrio do captulo
O ABAP Dictionary gerencia as definies de dados.
No ABAP Dictionary podem ser criados tipos definidos pelo
usurio. Eles podem ser usados, por exemplo, em programas
ABAP.
Tabelas e vises de bancos de dados so definidas no ABAP
Dictionary e automaticamente criadas com essa definio no
banco de dados subjacente.
O ABAP Dictionary oferece vrios servios que aceitam o
desenvolvimento de programas.
O ABAP Dictionary est ativamente integrado nos ambientes
de desenvolvimento e no tempo de execuo.
SAP AG 1999
Conceito de domnio de dois nveis
Mapeamento no SABD relacional
Estruturas de tabela
Opes tcnicas
Tipo de dados
Categoria tamanho
Armazenamento em buffer
Log
Tabelas no ABAP Dictionary
SAP AG 1999
Ao final deste captulo, o aluno estar apto a:

Criar tabelas.
Usar o conceito de domnio em dois nveis.
Definir as opes tcnicas de uma tabela.
Criar e usar estruturas include.

Objetivos do curso
SAP AG 1999
Tabelas e campos
Chave Campos de funo
Linha
Tabela
Chave 1









.
.
.
Chave2









.
.
.
Chave n









.
.
.
F 1









.
.
.
F 2









.
.
.
F n









.
.
.
SAP AG 1999
Basic Objects of the ABAP Dictionary
uses
uses
Table
Table
field
Data element
Domain
SAP AG 1999
Conceito de domnio de dois nveis: Exemplo
Tabela SPFLI
MANDT
Elemento de dados
S_FROMAIRP
Elemento de dados S_TOAIRP
Domnio S_AIRPID
CARRID
...
AIRPFROM CONNID
...
AIRPTO
SAP AG 1999
Estruturas e tabelas transparentes
Tabela
Camp.1
Camp.2
Camp.
3
Camp.4
Estrutura
Camp.1
Camp.2
Camp.3
Camp.4
ABAP Dictionary
Definio fsica da tabela
Tabela
Camp.1 Camp.2 Camp.3 Camp.4
Banco de dados
SAP AG 1999
Estruturas include
Tabela 2 Tabela 1
Campo 1 Campo 2 Campo A Campo B Campo 4 Campo 3 Campo A Campo B
Campo A Campo B
Banco de dados
Campo 1 Campo 2 Campo A Campo B Campo A Campo B Campo 3 Campo 4
Estrutura include
SAP AG 1999
Opes tcnicas
Armazenamento em buffer
Buffer de tabela
R/3
Em que rea fsica
do banco de dados
esta tabela deve ser
gravada?
Registro em log
Os registros da
tabela devem ser
armazenados em
buffer?
Realizar o log das
modificaes dos
registros de dados?
Quantos registros
a tabela
provavelmente
ter?
Categoria tamanho
Tipo de dados
SAP AG 1999
Tipo de dados
Tabelas no ABAP Dictionary
Tablespace
Dados
organiz.
Tablespace
Dados-mestre
Tablespace
Dados de
movimento
Tablespace
Dados de
sistema
Banco de dados
Dados
organizacionais
Dados
de movimento
Dados
de sistema
Dados-
mestre
Tabela 1
Tabela 3
Tabela 4
Tabela 2
Tabela 6
Tabela 5
Tabela 9
Tabela 7
Tabela 8
Tabela 1
Tabela 3
Tabela 4
Tabela 2
Tabela 6
Tabela 5
Tabela 9
Tabela 7
Tabela 8
SAP AG 1999
Categoria de tamanho
Extenso
inicial
Primeira
Extenso
Segunda
Extenso
Opes tcnicas
Categoria tamanho
TABA
TABB
TABC
1
3
4
TABA
TABB
TABC
Banco de dados
SAP AG 1999
Registro em log
Aplicao
transao
Modificar
um registro
Perfis do
sistema
rec/mandante =
TODOS
...
...
TAB
Camp.2 Camp.3 Camp.5
TAB Tabela de log
Camp.1 Camp.2 Camp.3
Banco de dados
ABAP Dictionary
TAB de log
SAP AG 1999
Sumrio do captulo
Todos os dados orientados empresa so administrados
sob a forma de tabelas, cuja definio gravada no ABAP
Dictionary.
Para definir as tabelas, utiliza-se o conceito de domnio
de dois nveis. A definio semntica implementada
com elementos de dados, e a definio tcnica
implementada com domnios.
Os campos de estruturas include podem ser includos em
tabelas.
As opes tcnicas de uma tabela definem como a tabela
deve ser gravada no banco de dados (tablespace,
tamanho de extenso), e se as modificaes dos registros
de dados devem ser registradas em log.

SAP AG 1999
ndices
ndice primrio e ndice secundrio.
Estrutura de um ndice.
Acesso a dados por meio de ndice.
Armazenamento de tabelas em buffer
Vantagens do armazenamento em buffer.
Buffers de tabelas locais.
Tipos de armazenamento em buffer.
Sincronizao de buffers.
Que tabelas devem ser armazenadas em buffer?
Desempenho durante o acesso a tabelas
SAP AG 1999
Course Objectives
At the end of this unit, you will be able to:
Judge when table accesses can be speeded up
by using indexes
Create indexes in the ABAP Dictionary
Explain the different buffering types
Judge when it makes sense to buffer a table and
which buffering type you should choose
Buffer a table using the technical settings
SAP AG 1999
Tabela SCOUNTER
ndice em
AIRPORT
MANDT CARRID COUNTNUM AIRPORT
001
001
001
001
001
001
001
001
001
001
001
001
001
001
LH
BA
UA
LH
BA
LH
AA
LH
BA
LH
LH
BA
LH
LH
00000005
00000004
00000001
00000002
00000003
00000007
00000001
00000003
00000001
00000001
00000004
00000002
00000006
00000008
ACA
ACE
BER
LCY
LHR
BER
DEN
FRA
LCY
LGW
LHR
MUC
RTM
HAM
AIRPORT P
ACA
ACE
BER
BER
DEN
FRA
HAM
LCY
LCY
LGW
LHR
LHR
MUC
RTM
1
2
3
6
7
8
14
4
9
10
5
11
12
13
Pesqui
sa
binria
Estrutura de um ndice
SELECT * FROM
SCOUNTER WHERE
AIRPORT = 'LHR'.
SAP AG 1999
TAB
ndice A
F2 Z
F1 F2 F3
10
A3 10 Text.
Acesso com ndices
ndice 0
F1 Z
Otimizador
SELECT * FROM TAB
WHERE F2 = `9.
Programa
SAP AG 1999
Sistema comunicao
Banco de
dados
Acesso a dados usando o buffer
Interface de banco
de dados
SELECT * FROM SBOOK
WHERE...
Programa ABAP
Buffer tabela R/3
Processos
do banco
de dados
Buffer do
banco de
dados
SAP AG 1999
Table Buffering
Application server 2 Application server 1
Table buffer
Table buffer
Program Program
Program reads data from a
buffered table
Records are loaded
into the buffer
Database
TAB
SAP AG 1999
Servidor de aplicao
SELECT * FROM SCOUNTER WHERE
MANDT = '001' AND CARRID = 'LH'
AND COUNTNUM = '00000004'.
Contedo do buffer
00000001
00000001
00000002
00000003
00000004
00000001
00000002
00000003
00000004
00000005
00000006
00000007
00000008
00000001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
ACA
ACE
BER
LCY
LHR
BER
DEN
FRA
LCY
LGW
LHR
MUC
RTM
HAM
Tabela bco.dados SCOUNTER
AIRPORT MANDT CARRID COUNTNUM
00000001
00000001
00000002
00000003
00000004
00000001
00000002
00000003
00000004
00000005
00000006
00000007
00000008
00000001
AA
BA
BA
BA
BA
LH
LH
LH
UA
001
001
001
001
001
001
001
001
001
001
001
001
001
001
ACA
ACE
BER
LCY
LHR
BER
DEN
FRA
LCY
LGW
LHR
MUC
RTM
HAM
Armazenamento completo em buffer
AA
BA
BA
BA
BA
LH
LH
LH
UA
SAP AG 1999
Servidor de aplicao
Contedo do buffer

00000001
00000002
00000003
00000004
00000005
00000006
00000007
00000008


LH LH LH
LH
LH LH
LH
LH LH


001
001
001
001
001
001
001
001


BER
DEN
FRA
LCY
LGW
LHR
MUC
RTM

Tabela banco dados SCOUNTER
MANDT CARRID COUNTNUM
00000001
00000001
00000002
00000003
00000004
00000001
00000002
00000003
00000004
00000005
00000006
00000007
00000008
00000001
AA
BA
BA
BA
BA
LH
LH
LH
LH
LH
LH
LH
LH
UA
001
001
001
001
001
001
001
001
001
001
001
001
001
001
ACA
ACE
BER
LCY
LHR
BER
DEN
FRA
LCY
LGW
LHR
MUC
RTM
HAM
AIRPORT
SELECT * FROM SCOUNTER WHERE
MANDT = '001' AND CARRID = 'LH'
AND COUNTNUM = '00000004'.
Armazenamento genrico em buffer
Chave genrica
SAP AG 1999
Contedo do buffer
00000004

LH LH LH
001


LCY

Tabela banco dados SCOUNTER
MANDT CARRID COUNTNUM
00000001
00000001
00000002
00000003
00000004
00000001
00000002
00000003
00000004
00000005
00000006
00000007
00000008
00000001
AA
BA
BA
BA
BA
LH LH LH
LH
LH LH
LH
LH LH
UA
001
001
001
001
001
001
001
001
001
001
001
001
001
001
ACA
ACE
BER
LCY
LHR
BER
DEN
FRA
LCY
LGW
LHR
MUC
RTM
HAM
AIRPORT
Servidor de aplicao
SELECT SINGLE * FROM SCOUNTER WHERE
MANDT = '001' AND CARRID = 'LH' AND
COUNTNUM = '00000004'.
Registro individual
SAP AG 1999
Serv. 2
Buffer
TAB
SELECT * FROM TAB
WHERE FIELD = 'X'.
Serv. 1
Buffer
Tabela de sincronizao
1
2
TAB
Sincronizao de buffers 1
SAP AG 1999
SELECT * FROM TAB
WHERE FIELD = 'Y'.
Serv. 2
Buffer
TAB
Serv. 1
Buffer
Tabela de sincronizao
3
4
TAB
TAB
Sincronizao de buffers 2
SAP AG 1999
Serv. 2
Buffer
TAB
DELETE * FROM TAB
WHERE FIELD = 'X'.
Serv. 1
Buffer
Tabela de sincronizao
TAB TAB
TAB modificada
pelo Servidor 1
5
6
7
Sincronizao de buffers 3
SAP AG 1999
TAB
Tabela de sincronizao
TAB modificada
pelo Servidor 1
SELECT * FROM TAB
WHERE FIELD = 'X'.
Servidor 2
Buffer
Servidor 1
Buffer
TAB TAB
8
Sincronizao de buffers 4
SAP AG 1999
Serv. 2
Buffer
TAB
Serv. 1
Buffer
Tabela de sincronizao
TAB TAB
TAB modificada
pelo Servidor 1
9 9
10
Sincronizao
Sincronizao de buffers 5
SAP AG 1999
TAB
Tabela de sincronizao
SELECT * FROM TAB
WHERE FIELD = 'Y'.
Serv. 2
Buffer
Serv. 1
Buffer
TAB TAB
11
12
Sincronizao de buffers 6
SAP AG 1999
Resumo do captulo
Os ndices ajudam a agilizar o acesso de leitura de uma
tabela. Um ndice pode ser considerado uma cpia
ordenada da tabela, reduzida aos campos de ndice.
Os buffers de tabelas residem localmente nos
servidores de aplicao.
O armazenamento em buffer pode melhorar
significativamente o desempenho durante o acesso aos
registros da tabela. importante selecionar o tipo de
armazenamento correto.
Os buffers de tabelas so ajustados s modificaes
das entradas da tabela em intervalos de tempo fixos.
Quanto mais a tabela for lida e quanto menos o seu
contedo for modificado, mais vantajoso ser armazen-
la em buffer.
SAP AG 1999
Valores fixos
Tabela de valores
O que uma chave externa?
Atribuio de campos usando o campo de
verificao
Tabela de chave externa/tabela de verificao
Atributos semnticos da chave externa
Tabelas de textos
Coerncia nas verificaes de entrada
SAP AG 1999
Objetivos do curso
Ao final deste captulo, o aluno estar apto a:
Criar e usar valores fixos.
Definir o que uma chave externa.
Aplicar as condies para a atribuio do campo da
chave externa.
Saber a diferena entre uma tabela de valor e uma tabela
de verificao.
Criar uma chave externa.
SAP AG 1999
Domain
Short description
S_CLASS
Flight class
Dictionary: Display domain S_CLASS: Fixed values
Fixed value Short description
C
Y
F
Business Class
Economy Class
First Class
Lower limit Upper limit Short description
Fixed Values
SAP AG 1999
Value Table
Dictionary: Display domain S_CARR_ID
Domain
Short description
S_CARR_ID
Short description of the carrier
Format
Valid values
Value table SCARR
Data type
No. of places
CHAR
3
Character strings
MANDT CARRID CARRNAME CURRCODE
401 AA American Airlines USD
401 BA British Airways GBP
401 LH Lufthansa DEM
410 UA United Airlines USD
Table SCARR
SAP AG 1999
Tabela banco dados SCOUNTER
(balco de vendas)
CARRID (companhia area)
CONNID (conexo)
FLDATE (data do vo)
COUNTER (balco)
CUSTOMID (cliente)
Este vo pode
aceitar reservas no
balco de vendas nmero 8?
Entradas de campos da tabela
SBOOK (reservas de vo):
MANDT CARRID COUNTNUM
00000001
00000001
00000002
00000003
00000004
00000001
00000002
00000003
00000004
00000005
00000006
00000007
00000008
00000001
AA
BA
BA
BA
BA
LH
LH
LH
LH
LH
UA
001
001
001
001
001
001
001
001
001
001
001
001
001
001
ACA
ACE
BER
LCY
LHR
BER
DEN
FRA
LCY
LG
W
LHR
MUC
RTM
HAM
AIRPORT
Insero de um registro de dados
AA
0017
00000008
00000148
25.07.2000
SAP AG 1999
Tabela banco dados SCOUNTER
MANDT CARRID COUNTNUM
00000001
00000001
00000002
00000003
00000004
00000001
00000002
00000003
00000004
00000005
00000006
00000007
00000008
00000001
AA
BA
BA
BA
BA
LH
LH
LH
UA
001
001
001
001
001
001
001
001
001
001
001
001
001
001
ACA
ACE
BER
LCY
LHR
BER
DEN
FRA
LCY
LG
W
LHR
MUC
RTM
HAM
AIRPORT
CARRID (companhia area)
CONNID (conexo)
FLDATE (data do vo)
COUNTER (balco)
CUSTOMID (cliente)
Entradas em campos da tabela
SBOOK:
Insero no permitida!
Violao da verificao de chave externa
Efeito da definio de chave externa:
No existe um registro de dados com o
contedo: MANDT = '001', CARRID =
'AA', COUNTNUM = '000000009' no
existe na tabela SCOUNTER.
AA
0017
00000148
25.07.2000
000000008
SAP AG 1999
Campos de chave externa / campos de verificao
Campos-chave
MANDT CARRID COUNTNUM AIRPORT
Tabela de chave externa SBOOK
MANDT CARRID CONNID FLDATE CUSTOMID CANCELED
Campos de chave externa
Campo de
verificao
COUNTER ...
Tabela de verificao SCOUNTER
SAP AG 1999
Coerncia de dados por meio de chaves externas
MANDT CARRID CONNID
...
800
800
800
800
AA
AA
Roma
Roma
0017
0064
0555
0788
MANDT CARRID
...
800
800
800
800
AA
AC
AF
Roma
SCARR: Tabela de verificao = obj.ref. SPFLI: Tabela de chave externa = obj.dep.
SPFLI-CARRID SPFLI-MANDT
Companhia area
Nmero do vo
Atualiz.detalhada
AB
0020
Campo
de verificao
Campos de chave externa
STOP
SAP AG 1999
Definies de chave externa no campo de
verificao
Campos-chave
Tabela SPFLI
MANDT ... ... Aeroporto
de partida
com a tabela de verificao:
SAIRPORT
Tabela SAIRPORT
MANDT
...... Aeroporto
Domnio S_AIRPID
Tabela de valor SAIRPORT
Elemento de dados
S_AIRPORT
Elemento de dados
S_FROMAIRP
Relao entre a chave externa e o campo de verificao Aeroporto de partida
SAP AG 1999
Tabela de verificao que no se iguala tabela de
valor
Tabela SBUSPART
MANDT BUSPARTNUM ...
Domnio S_BUSPARTNUM
Tabela de valor SBUSPART
MANDT AGENCYNUM ...
Tabela STRAVELAG
Tabela de chave externa SBOOK
MANDT CARRID CANCELED ... AGENCYNUM ...
SAP AG 1999
Atributos semnticos
1:C
1:N 1:1
1:CN
Cardinalidade
C
C
C
C
F
F
F
F
SAP AG 1999
Text Table
Text table SMEALT
MEAL-
NUMBER
MANDT CARRID
LANGUAGE TEXT
Table SMEAL
MANDT CARRID
MEAL-
TYPE
MEAL-
NUMBER
Key fields Key fields
Foreign Key Relationship with Check Table SMEAL
Type of foreign key fields: key fields of a text table
SAP AG 1999
Sumrio
Neste captulo, foram apresentadas duas maneiras de
verificar a coerncia de dados:
Valores fixos (estticos)
Chaves externas (dinmico)
Os valores fixos so armazenados no domnio.
A chave externa permite verificar os valores de entrada
em relao aos dados existentes.
A relao da chave externa atualizada para o campo
de verificao (campo da tabela de chave externa).
O campo de verificao deve ser atribudo a um
campo-chave da tabela de verificao com o mesmo
domnio.
SAP AG 1999
Ativao de objetos do ABAP Dictionary
Processamento de objetos dependentes
Lista de utilizaes e Sistema de informao do R/3
Repository do ponto de vista do ABAP Dictionary

Dependncias de objetos do ABAP Dictionary
SAP AG 1999
Course Objectives
At the end of this unit, you will be able to:
Differentiate between the active and inactive version of an
ABAP Dictionary object.
Describe the mechanism for handling dependent objects
in the ABAP Dictionary
Explain how the Repository Information System and the
Where-used list for ABAP Dictionary objects function
SAP AG 1999
Verses ativa e inativa
Verso ativa Verso inativa
Verso ativa
Verso ativa
Camp.1 Camp.2 Camp.3 Camp.1 Camp.2 Camp.3 Camp.4
Camp.1 Camp.2 Camp.3 Camp.4
Ativar
Adicionar campo 4 no ABAP Dictionary
Camp.2 Camp.3 Camp.1
SAP AG 1999
Objetos de tempo de execuo
Estrutura
Informaes sobre
a estrutura
Informaes do campo
Objeto de tempo
de execuo
da estrutura
Elementos de dados
Campo 2 Campo 3 Campo 1
Interpretador
ABAP
Elemento
de dados 1
Elemento
de dados 2
Elemento
de dados 3
Domnio 1 Domnio 2 Domnio 3
SAP AG 1999
Processamento de objetos dependentes
Estrutura 3 Tabela 1 Estrutura 2 Estrutura 1
Tabela 2
inclui
Domnio
Elemento de dados 1 Elemento de dados 2 Elemento de dados 3
SAP AG 1999
Listas de utilizaes
Uso
Listas de utilizaes
Programa 1 Programa 2
Estrutura 3 Tabela 1 Estrutura 2 Estrutura 1
Domnio
Tabela 2
Elemento de dados 1 Elemento de dados 2 Elemento de dados 3
SAP AG 1999
Mostrar todos os objetos
da categoria X com atributo Y
Mostrar todos os objetos da
categoria X que usam objeto Y
Informaes sobre
relaes
entre tabelas
Comprovao de
modificao
Pesquisar por atributo

ABAP
Dictionary
? ?
? ?
O ABAP Dictionary do Sistema de informao R/3
Repository
Listas de utilizaes
Mostrar todos os campos de tabela
com tabela de verificao X
Mostrar todos os objetos
do tipo X modificados pelo usurio
no horrio DDMMAAAA
SAP AG 1999
No ABAP Dictionary, h uma verso ativa e inativa de
um objeto. O sistema de tempo de execuo usa a
verso ativa e o processo de desenvolvimento edita a
verso inativa.
Na ativao de um objeto, a verso inativa se torna a
verso ativa (depois de verificada). A verso ativa
antiga sobregravada.
Quando um objeto efetivamente ativo for ativado, todos
os demais objetos ativos dependentes tambm sero
ativadas. Os objetos de tempo de execuo e de banco
de dados, destes objetos dependentes, tambm so
atualizados.
A lista de utilizaes pode ser usada para encontrar
todos os objetos do Repository que usam um objeto do
ABAP Dictionary.
possvel encontrar objetos do ABAP Dictionary por
meio dos atributos no Sistema de informao R/3
Repository.
Sumrio do captulo
SAP AG 1999
Modificaes em tabelas de banco de dados
Efeito de modificaes na estrutura de tabela
Converso de tabela
Problemas possveis durante converses
Estruturas Append
Modificaes em tabelas de banco de dados
SAP AG 1999
Ao final deste captulo, o aluno estar apto a:

Fazer modificaes em tabelas.
Avaliar o efeitos das modificaes no banco de
dados.
Converter tabelas.
Retomar converses canceladas.
Adicionar campos de cliente s tabelas SAP
standard usando as
estruturas Append sem modificaes.
Objetivos do curso
SAP AG 1999
ABAP Dictionary
Modificaes de tabelas
Verso ativa
Verso inativa
Cmp.1 Cmp.2 Cmp.3
Cmp.2 Cmp.3 Cmp.1 Cmp.4
Cmp.2 Cmp.3 Cmp.1
Banco de dados
SAP AG 1999
Como a estrutura ajustada?
Cmp. 1 Cmp. 2 Cmp. 3
Verso ativa
Verso inativa
Eliminar, criar novamente
ou
Modificar catlogo para
o BD (ALTER TABLE)
ou
Converter a tabela
Cmp. 2 Cmp. 3 Cmp. 1
Cmp. 2 Cmp. 3 Cmp. 1 Cmp. 4
A tabela contm dados?
Qual o sistema de banco
de dados usado?
Que modificao foi feita?
SAP AG 1999
Processo de converso 1
TAB ~ 0
TAB ~ A11
Cmp. 1
NUMC, 6
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 60
000100
001200
003000
1111A00
0222B10
0030B20
Texto1...
Texto2 ...
Texto3 ...
TAB
Verso ativa de TAB
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 60
Cmp. 1
NUMC,6
Verso inativa de TAB
Cmp. 2
CHAR, 8
Cmp. 1
NUMC,6
Cmp. 3
CHAR, 30
SAP AG 1999
Processo de converso 2
QCMTAB
Renomear TAB
para QCMTAB
Eliminar
ndices
Cmp. 1
NUMC, 6
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 60
1111A00
0222B10
0030B20
Texto1...
Texto2 ...
Texto3 ...
TAB est bloqueada
TAB ~ A11
TAB ~ 0
Cmp. 1
NUMC, 6
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 60
000100
001200
003000
1111A00
0222B10
0030B20
Texto1...
Texto2 ...
Texto3 ...
2
Verso ativa de TAB
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 60
Cmp. 1
NUMC,6
Verso inativa de TAB
Cmp. 2
CHAR, 8
Cmp. 1
NUMC,6
TAB bloqueada
1
TAB
Cmp. 3
CHAR, 30
000100
001200
003000
SAP AG 1999
Processo de converso 3
Ativar
no ABAP Dictionary
Cmp. 2
CHAR, 8
Cmp. 1
NUMC, 6
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 60
000100
001200
003000
1111A00
0222B10
0030B20
Texto1...
Texto2 ...
Texto3 ...
QCMTAB
TAB
Cmp. 1
NUMC, 6
Cmp. 3
CHAR, 30
3
Verso ativa de TAB
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 60
Cmp. 1
NUMC,6
Verso inativa de TAB
3
TAB acabou de ser criada no BD
Cmp. 2
CHAR, 8
Cmp. 1
NUMC,6
Cmp. 3
CHAR, 30
TAB bloqueada
TAB ~ 0
SAP AG 1999
Processo de converso 4
Os dados so carregados de volta em TAB
4
QCMTAB
Cmp. 1
NUMC, 6
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 60
000100
001200
003000
1111A00
0222B10
0030B20
Texto1...
Texto2 ...
Texto3 ...
Cmp. 1
NUMC, 6
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 30
000100
001200
003000
1111A00
0222B10
0030B20
Texto1...
Texto2 ...
Texto3 ...
TAB
Verso ativa de TAB
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 30
Cmp. 1
NUMC,6
TAB bloqueada
TAB ~ 0
SAP AG 1999
Processo de converso 5
Remover bloqueio
7
Eliminar tabela temporria
Cmp. 1
NUMC, 6
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 60
000100
001200
003000
1111A00
0222B10
0030B20
Texto1...
Texto2 ...
Texto3 ...
QCMTAB
6
Cmp. 1
NUMC, 6
Cmp. 2
CHAR, 8
Cmp. 3
CHAR, 30
000100
001200
003000
1111A00
0222B10
0030B20
Texto1...
Texto2 ...
Texto3 ...
TAB ~ 0
TAB ~ A11
TAB
Criar ndices
5
Verso ativa de TAB
Cmp. 2
CHAR, 8
Cmp. 1
NUMC,6
Cmp. 3
CHAR, 30
TAB bloqueada
SAP AG 1999
Problemas possveis durante converses
Estouro de tablespace
Perda de dados se reduzir o
tamanho da chave
Modificao de tipo invlida
SAP AG 1999
Continuar converses concludas
Faa isso!
Syslog
Log de objeto
Dumps
No faa isso!
SAP AG 1999
Estruturas Append 1
Cmp. 1 Cmp. 2 Cmp. 3 Cmp.A Cmp.B
Tabela
Cmp. 2 Cmp. 3 Cmp. 1
Estrutura Append
Cmp.A Cmp.B
SAP AG 1999
Estruturas Append 2
Nova verso do
sistema da SAP
importada
Cmp. 1 Cmp. 2 Cmp. 3 Cmp.A Cmp.B
Estrutura Append
Cmp.A Cmp.B
Tabela
Cmp. 2 Cmp. 3 Cmp. 1
Cmp. 2 Cmp. 3 Cmp. 1 Cmp. 4
SAP AG 1999
Estruturas Append 3
Anexar o campo
no banco de dados
Tabela
Ativar
Cmp. 1 Cmp. 2 Cmp. 3 Cmp.A Cmp.B
Cmp4
Estrutura Append
Cmp. 1 Cmp.B
Cmp. 2 Cmp. 3 Cmp. 1 Cmp. 4
SAP AG 1999
Resumo
O objeto de tempo de execuo e a definio de banco de
dados de uma tabela devem estar sempre consistentes. Por
esta razo, a tabela de BD correspondente deve ser
ajustada quando for modificada no ABAP Dictionary.
O sistema sempre tenta fazer modificaes na estrutura
das tabelas alterando o catlogo de banco de dados
(ALTER TABLE). Se isso for impossvel, ocorrer uma
converso.
Em uma converso, os dados so armazenados
temporariamente em uma tabela e ento copiados de volta
tabela com sua nova estrutura.
Os campos do cliente devem ser sempre adicionados s
tabelas SAP standard usando as estruturas Append.
SAP AG 1999
Por que as vises so necessrias?
Criao de uma viso mediante juno, projeo e
seleo
Condies de juno e chaves externas
Seleo de dados com vises
Vises de banco de dados
Vises de atualizao
Junes interiores e exteriores

Vises
SAP AG 1999
Objetivos do curso
Ao final deste captulo, o aluno estar apto a:
Avaliar como uma viso criada em tabelas, mediante
juno, projeo e seleo.
Criar vises de banco de dados.
Preparar uma ligao entre chaves externas e
condies de juno.
Usar vises em programas de seleo de dados.
Avaliar quando usar vises de atualizao.
Reconhecer as diferenas entre uma juno interior e
uma juno exterior.
SAP AG 1999
F3 F2 F1
F4 F5
F6 F7 F8
Tabela 3
Tabela 2
Tabela 1
Viso de tabelas
Viso de dados
distribudos em
mais de uma
tabela.
Por que as vises so necessrias?
F1 F2 F3 F5 F8
SAP AG 1999
Tabela
TABA
Tabela
TABB
1 1
1 2
2
2
Texto 1 Texto 3
Texto 4
Texto 5
Texto 2
Texto 6
A
A
B
B
Camp.1 Camp.2 Camp.3 Camp.4 Camp.5
Camp.1 Camp.2 Camp.3 Camp.4 Camp.5
1 Texto 1
1 Texto 1
1 Texto 1
1 Texto 1
2 Texto 2
2 Texto 2
2 Texto 2
2 Texto 2
1
1
2
2
Texto 3
Texto 4
Texto 5
Texto 6
A
A
B
B
1
1
2
2
Texto 3
Texto 4
Texto 5
Texto 6
A
A
B
B
Produto cruzado
das tabelas TABA
e TABB
Estrutura de uma viso - situao inicial
SAP AG 1999
Condio de juno: TABA - Campo 1 = TABB - Campo 3
Camp.1 Camp.2 Camp.3 Camp.4 Camp.5
1 Texto 1
1 Texto 1
1 Texto 1
1 Texto 1
2 Texto 2
2 Texto 2
2 Texto 2
2 Texto 2
1
1
2
2
Texto 3
Texto 4
Texto 5
Texto 6
A
A
B
B
1
1
2
2
Texto 3
Texto 4
Texto 5
Texto 6
A
A
B
B
Reduo do
produto
cruzado
Estrutura de uma viso - condio de juno
SAP AG 1999
Camp.1 Camp.2 Camp.4 Camp.5
1 Texto 1
1 Texto 1
2 Texto 2
2 Texto 2
Texto 3
Texto 4
A
B
Texto 5
Texto 6
A
B
Camp.1 Camp.2 Camp.5
1 Texto 1
1 Texto 1
2 Texto 2
2 Texto 2
Texto 3
Texto 4
Texto 5
Texto 6
Projeo
Estrutura de uma viso - seleo de campo (projeo)
SAP AG 1999
Condio de seleo: TABB - Campo 4 = 'A'.
Camp.1 Camp.2 Camp.5
1 Texto 1
1 Texto 1
2 Texto 2
2 Texto 2
Texto 3
Texto 4
Texto 5
Texto 6
Camp.1 Camp.2 Camp.5
1 Texto 1
1 Texto 1
2 Texto 2
2 Texto 2
Texto 3
Texto 4
Texto 5
Texto 6
Estrutura de uma viso - Condio de seleo
Camp.4
A
B
A
B
SAP AG 1999
MANDT CARRID CONNID FLDATE BOOKID CUSTOMID
...
SBOOK
MANDT CARRID CONNID CITYFROM CITYTO
SPFLI
... ... ...
001
001
SCUSTOM MANDT ID CIDADE NOME
...
122356 Smith Nova Iorque 001
...
122356
122356
...
...
001
001
Nova York
Tquio Berlim
Berlim AA
AA
LH LH
LH LLH
48
324
324
48
...
...
...
...
3689
3690
...
...
...
...
Como as tabelas so ligadas s vises?
SAP AG 1999
MANDT ID NOME CIDADE CARRID CONNID FLDATE BOOKID CITYFROM CITYTO
001
001
122356 Smith Nova Iorque AA 48 3689 Nova Iorque Berlim
122356 Smith Nova Iorque
LH LLH
324 3690 Berlim Tquio
Viso de SCUS_BOOK para reservas de clientes
Estrutura da viso
4.9.1999
9.9.1999
SAP AG 1999
REPORT CUSBOOK1.

PARAMETERS: CUSTOMID LIKE SBOOK-CUSTOMID.
DATA: BOOKINGS TYPE SCUS_BOOK.

WRITE: / Reservas existentes para o cliente, CUSTOMID, :.

SELECT * FROM SCUS_BOOK INTO BOOKINGS
WHERE CUSTOMID = CUSTOMWHERE CUSTOMID = CUSTOMID.
BOOWRITE: / CUSTOMER, BOOKINGS-NAME, reservado para,
BOOKINGS-CARRID,BOOKINGS-CONNID, Wfrom,BOOKINGS-CITYFROM,
Ito,BOOKINGS-CITYTO, on,BOOKINGS-FLDATE.SENDSELECT. SIF
SY-SUBRC <> 0.RITWRITE: / 'Nenhuma reserva existente'.IENDIF.
Seleo de dados com vises
SAP AG 1999
O que exibido com a viso?
Juno interior Juno exterior
Tabela TABA Tabela TABB
Condio de juno
Camp.1 Camp.2 Camp.4
A Texto 1
B Texto 2
Texto 3
Texto 4
Camp.1 Camp.2 Camp.4
A Texto 1
B Texto 2
Texto 3
Texto 4
C Texto 5
A
B
Texto 1
Texto 2
Camp.1 Camp.2
C Texto 5
A
B
Texto 3
Texto 4
Camp.3 Camp.4
Junes interiores e exteriores
SAP AG 1999
F6 F7 F8
Tabela 3
F4 F5
Tabela 2
F3 F2 F1
Tabela 1
Definio de vises no ABAP Dictionary
Definio de
vises no banco
de dados.
Criada no BD
durante a ativao.
Programa ABAP
F1 F2 F3 F5 F8
F1 F2 F3 F5 F8
Vises de banco de dados
Interface de banco dados
SAP AG 1999
Includes em vises de banco de dados
F 8 F 7
TABB
includa na
viso
Viso de banco de dados em TABA, TABB e TABC
TABB TABA TABC
F 1 F 3 F 1 F4 F 5 F 6 F F 83 F 1
F 2 F 3 F 1 F 5 F 6 F 4
SAP AG 1999
F6 F7 F8
Tabela 3
F3 F2 F1
Tabela 1
Tabela 2
F4 F5
Viso de
atualizao nas
tabelas.
Intercmbio de dados
com a viso de
atualizao.
Chave externa Chave externa
F1 F2 F3 F5 F8
Vises de atualizao
Objeto de aplicao
SAP AG 1999
Unit Summary
Data records that are distributed on different tables can be
combined using a view.
A view is derived from the tables involved using the
relational operators join, projection, and selection.
ABAP programs can select data using a view. Selection
with a database view is usually faster than direct table
selection with a nested SELECT statement.
You can maintain data records from several tables
together using a maintenance view.
SAP AG 1999
Entradas possveis no sistema R/3
Ajuda para pesquisa de objeto no ABAP Dictionary
Mtodo de seleo de ajuda para pesquisa
Comportamento do dilogo de ajuda para pesquisa.
Interface de ajuda para pesquisa
Anexar ajudas para pesquisa aos campos
Ajudas para pesquisa composta e ajudas para
pesquisa elementar
Ajudas para pesquisa append
Ajudas para pesquisa
SAP AG 1999
Course Objectives
At the end of this unit, you will be able to:
Define an input help process with a search help
Define a search help with several alternative search
paths
Use the different mechanisms for the search help
attachment to assign a search help to a screen field
Determine whether a screen field has an input help and
determine its form
Enhance a collective search help using an append search
help without modifications
SAP AG 1999
Funo standard do sistema R/3: Entradas
possveis
Companhia erea
Nmero do vo
. . .
Atualizao de vos
LH
N
o
Cidade part. Cidade chegada
Companhia erea
0400 Frankfurt Nova Iorque
0402 Frankfurt Nova Iorque
LH
2402 Frankfurt Berlim
... ... ...
F4
SAP AG 1999
Performance das entradas possveis
Determinar
os valores
Dilogo com
o usurio
Levar o contexto em considerao
Retornar valores
SAP AG 1999
ABAP Dictionary Object Search Help
Search help
Selection
method
Dialog behavior
Interface
SAP AG 1999
SPFLI
SELECT * FROM SPFLI
WHERE CARRID = 'LH'.
Mtodo de seleo de uma ajuda para pesquisa
Companhia erea
Nmero do vo
. . .
Atualizao de vos
LH
F4
SAP AG 1999
Companhia erea
Nmero da conexo
Cidade partida
Cidade chegada
Limitar exibio para 500
0*
LH
N
o
limite
Descrio de comportamento do dilogo
N
o
Cidade part. Cidade chegada
Companhia erea
0400 Frankfurt Nova Iorque
0402 Frankfurt Nova Iorque
LH
2402 Frankfurt Berlim
... ... ...
F4
=
[*]
SAP AG 1999
Interface de ajuda para pesquisa
N
o
Cidade part. Cidade chegada
Companhia erea
0400 Frankfurt Nova Iorque
0402 Frankfurt Nova Iorque
LH
Companhia erea
Nmero do vo
. . .
0*
LH
Importar
e exportar
Exportar
F4
F4
SAP AG 1999
Como usar ajudas para pesquisa?

Campo
de pesquisa
Campo 1
Mscara de entrada
Campo 3
Tabela/estrutura
Campo 1 Campo 3
Campo de
pesquisa ...
Definies no
Screen Painter
Ligao
em DDIC
Comportamento interno
Interface
F4
Ajuda para pesquisa
SAP AG 1999
Conexo de ajuda para pesquisa no ABAP Dictionary
Tabela/estrutura
MANDT Campo 1 Campo 3
Campo de
pesquisa
...
Ajuda para pesquisa
Tabela de verificao
MANDT Chave 1 Chave 2
Diviso de
dados
Comportamento interno
Interface
Elemento de
dados
SAP AG 1999
Sntese: Mecanismos de entradas possveis
no existe
existem
PROCESS ON
VALUE-REQUEST
Entradas possveis na tela
Verificao da
lgica de
processamento
FIELD SELECT
FIELD VALUES
Ajuda para
pesquisa de
rea de tela
Ajuda para
pesquisa de campo
Ajuda para
pesquisa de
elemento dados
Ajuda para pesq.
De tabela de
verificao
Valores fixos
Horrio ou
ajuda para
calendrio
Tabela de verificao
com tabelas de texto
Valores chave
da tabela de
verificao
Ajuda para tabela
de verificao
redirecionada
SAP AG 1999
Performance das entradas possveis
Companhia erea
Nmero do vo
. . .
Atualizao de vos
LH
F4
SAP AG 1999
Caminhos de pesquisa alternativos
Qual era o
nmero da reserva
do meu vo
para Nova Iorque?
Quais foram as reservas
feitas pela nossa
agncia de viagem?

SAP AG 1999
Ajuda para pesquisa composta e ajuda para
pesquisa elementar
Ajuda para pesquisa includa
Ajuda para pesquisa composta
Comportamento interno
Interface
Interface Interface
Comportamento interno
SAP AG 1999
Ajudas para pesquisa append
Ajuda para pesquisa includa
. . .
anexo (cliente)
ajuda para pesquisa
Ajuda para pesquisa includa
. . .
Ajuda para pesquisa composta (SAP)
anexos
SAP AG 1999
Entradas possveis (ajuda F4) representam uma funo
standard do sistema R/3.
As ajudas para pesquisa permitem uma descrio fcil e
flexvel das entradas possveis.
As tabelas e vises podem ser usadas como o mtodo
de seleo da ajuda para pesquisa.
A aparncia das entradas possveis controlada pelos
parmetros da ajuda para pesquisa.
As ajudas para pesquisa podem ser anexadas a campos,
tabelas e elementos de dados.
Entradas possveis com caminhos de pesquisa
alternativos so implementadas com ajudas para
pesquisa compostas.
Com a ajuda para pesquisa append, a ajuda para
pesquisa composta standard pode ser adicionada ou
ocultada sem modificaes.
Resumo do captulo
SAP AG 1999
Anexo
Modelo do vo
rvore de deciso para armazenamento em buffer
Outras informaes sobre ajudas para pesquisa
Caminhos de menu importantes
ndice
SAP AG 1999
Modelo de dados de vo para cursos de formao
ABAP
Ponto de partida
Aeroporto partida
Aeroporto de
chegada
Destino
Tarefas da agncia de viagens:
Aeroportos possveis
Possveis companhias areas no horrio solicitado
Possveis vos no horrio solicitado
Outras informaes sobre vos:
preo, reservas, ...
SAP AG 1999
Modelo de dados
Aeroporto
BC_AIRPORT T
Cliente do vo
BC_CUSTOM T
Companhia
area
BC_CARRIER T
Vo
BC_SFLIGHT T
Cidade-
aeroporto
atribuio
BC_CITAIRP T
CIDADE
BC_GEOCITY T
Programao
do vo
BC_PLANFLI T
Agncia
BC_TRAVLAG T
Reservas
BC_BOOKING T
Vendas
balco
BC_COUNTER T
Horrio
H
A
A
CR
CR
H
R
R
H
H
SAP AG 1999
Implementao no ABAP Dictionary
SPFLI
Programao vo
.....
SBOOK
Reserva vo
.....
MANDT
CARRID
CONNID
FLDATE
BOOKID
CUSTOMID
COUNTER
AGENCYNUM
SFLIGHT
Vo
.....
MANDT
CARRID
CONNID
FLDATE
SEATSMAX
SEATSOCC
SCARR
Companhia area
MANDT
CARRID
CARRNAME
.....
Companhia
area
11001
Vo
11001
Programao
vo
11001
Reservas
11001
Horrio
H H H
H
MANDT
CARRID
CONNID
AIRPFROM
AIRPTO
DEPTIME
SAP AG 1999
No
Sim
Sim
Sim
Sim
No
Sim
No
No
No
rvore de deciso para armazenamento em buffer
Tabela no deve ser armazenada em buffer.
Incio
Armazenamento completo em buffer
Registro individual em buffer

Armazenamento em buffer dependente instalao
requer mais consideraes:
Armazenamento em buffer total ou genrico?ndices
secundrios ou armazenamento em buffer?
Armazenamento em buffer tabela
possvel.
Armazenamento genrico em buffer com
nmero apropriado de campos-chave genricos
Inconsistncias temp. so aceitveis
nos dados de leitura? A maioria dos
acessos somente leitura?
O tamanho esperado da tabela
menor do que 8KB?
Em geral a tabela tem mais acesso
c/ SELECIONAR SIMPLES?
O tamanho esperado tabela
maior que 1MB (>> 1000
registros)?
Parte alinhada esquerda da
chave normal/ especificada
ao acessar a tabela?
Armazenamento completo em buffer
SAP AG 1999
Tabela base 1 Tabela base 2
Viso de BD
Tabela secundria
Viso de ajuda
Tabela primria
Viso como mtodo de seleo de uma ajuda para
pesquisa
SAP AG 1999
Ajuda para pesquisa
Outras opes de ajudas para pesquisa


Valores propostos
Teclas de atalho
Ocultar includas
ajudas para pesquisa
Exibir campos na exibio
caixa p/ restringir valores
SAP AG 1999
Data do vo
F4
Comp. area
. . .
Atualizao de reservas
Nmero vo
Cidade part.
Cidade cheg.
. . .
SELECT * FROM
SFLIGHT...
Exit de ajuda para pesquisa
SAPBC_GLOBAL_F4_SFLIGHT
N
o
Cidade part. Livre
Companhia area


0555 Roma

147
0555 Roma 198
Alitalia
. . .
Roma
AZ
. . .
. . .
. . . . . . . . . . . .
No-standard: Exit de ajuda para pesquisa
SAP AG 1999
Migrao de ajudas para entradas existentes
Aj. pesq. elem.
H_NAME
Seleo
mtodo
Tabela
T
Ajuda pesq.
anexo
Viso ajuda
H_NAME
Tabela prim. T
Tabela sec. 1
...
ou
Viso ajuda
H_NAME
Tabela prim. T
Tabela sec. 1
...
Aj. pesq. col.
ABCD
Ajuda pesq.
incluses
Aj. pesq. elem.
ABCDA
Seleo
mtodo
Viso BD
M_ABCDA
Aj. pesq. elem.
ZABCD1
Seleo
mtodo
Viso BD
M_ABCD1
Viso BD
M_ABCDA
Objeto MC
ABCD
MC ID
A
gera
Viso BD
M_ABCD1
MC-Id
1
gera
Release 3.x
Release 4.x
pertence a
pertence a
SAP AG 1999
Aternativa de exibies das entradas possveis
Controle de entradas possveis
Caixa de listagem

Você também pode gostar