Você está na página 1de 250

Academia SAP ABAP

Gplux Treinamento SAP

EC430 – Dicionário de Dados

GPLUX TREINAMENTO SAP


Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Objetivos do Curso
Este curso tem por objetivos dar uma visão geral do Dicionário de Dados.

Serão Abordados aspectos técnicos do que venha a ser o Dicionário de


Dados, para que serve e o que ele oferece.

Dentro desta matéria então, abordaremos Tabelas do tipo Transparente,


Estruturas, Data Elements, Domínios, Views e Search Helps.

Falaremos também sobre as dependências entre os diversos objetos,


aspectos voltados a performance e também como o banco de dados
reage quando promovemos alguma alteração a nível de Tabela.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Índice
• Visão Geral do Dicionário de Dados................................................................................................................ Pag. 004

• Transação SE11 – Dicionário de Dados e seus Data Objects ..................................................................... Pag. 008

• Tabelas e suas Especificações Técnicas ...................................................................................................... Pag. 045

• Observações técnicas a serem feitas quando se acessa uma tabela......................................................... Pag. 106

• Definir Consistências Validações no Dicionário de Dados ........................................................................ Pag. 123

• Objetos e suas Dependências ....................................................................................................................... Pag. 149

• O que acontece quando alteramos uma Tabela do Banco de Dados ......................................................... Pag. 163

• Views ................................................................................................................................................................ Pag. 176

• Search Help ..................................................................................................................................................... Pag. 204

• Search Help Coletivo ...................................................................................................................................... Pag. 232


Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Visão Geral
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Visão Geral
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Visão Geral
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Visão Geral
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Dicionário de Dados – SE11

Ir para a transação SE11


Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Dicionário de Dados – SE11

Para Criarmos Tabelas

Para Criarmos Views

Para Criarmos Estruturas,


Data Elements ou
Tipos Tabela

Para Criarmos
Domínios
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Dicionário de Dados – SE11
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Dicionário de Dados – SE11

Qdo criamos uma


Estrutura, devemos
dar uma descrição.

Nesta coluna
entramos com nomes
de campos.

Nesta coluna
entramos com os
respectivos Data
Element.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Dicionário de Dados

Não importa se você


define uma estrutura ou
uma tabela, mas todo o
campo, obrigatoriamente
terá que ter uma Data
Element
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Dicionário de Dados

O Domínio não é mais


obrigatório, pois a partir
do rel. 4.6 poderemos
definir o tipo de campo e
tamanho no Data
Element.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Dicionário de Dados

O Domínio só se torna obrigatório quando desejamos definir Valores possíveis


para um campo, do contrário ele é opcional desde que não se tenha definido os
atributos técnicos já no Data Element.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Dicionário de Dados

No Data Element, definimos principalmente as


diversas descrições para um campo e
opcionalmente os atributos técnicos, podemos
também definir o Parameter ID – SET/GET. Um
Search Help poderá também estar associado .
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Dicionário de Dados

Muito bem, depois de definirmos tudo no dicionário de dados, poderemos


então compartilhar estas definições em programas, tabelas, estruturas,
campos, etc ...
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Dicionário de Dados

Portanto Definições de
Estruturas, assim como de
Tabelas poderão ser
utilizados em programas
para definirmos campos,
áreas de trabalho para
manipulação de dados.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura

Sub-estruturas, ou
seja, uma estrutura
onde uma campo é
outra estrutura.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura

Assim como os demais objetos , poderemos


também definir tipos tabelas de uma forma
centralizada e padronizada no Dic. De dados e não
esquecer que tudo poderá ser compartilhado.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura

Em uma Definição mais


complexa, um campo de
uma Estrutura poderá ser
uma Tabela, ou seja, ter
várias ocorrências.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento

Na SE11, poderemos
também definir um Pool de
Tipos, Atributos Técnicos.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura

Pool de Tipos ou Pool de Atributos, também


podem ser definidos no Dicionário de Dados,
para serem compartilhados por programas.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura

Uma Tabela
definida no
Dicionário de
Dados, possui
campos chave
primária que
identificam uma
informação e é o
principal acesso
para os demais
campos que serão
secundários.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura
Todo Data
Element
Toda tabela opcionalmente
possui poderá ter um
campos e o domínio onde
definimos seu
conjunto
atributo, ele se
de campos torna
determina obrigatório se
seu layout desejarmos
definir valores
Todo campo, possíveis para
obrigatoriamente possui um um campo.
Data Element, através do
qual definimos a sua
descrição e seus atributos
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura

Layout

Todo campo
possui um
Data Element,
obrigatoriamente,
que é um objeto
independente e
que pode ser
compartilhado
por outros
campos de outras
tabelas.
O Domínio é um objeto independente , onde definimos os atributos de uma campo e suas
possíveis entradas, este objeto poderá ser compartilhado por outros Data Elements.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura

Diferença entre Tabela e Estrutura definidos no Dic. de Dados, ao ativarmos uma definição,
quando se tratar de uma tabela o R3 vai no Banco de Dados e cria fisicamente um arquivo para
acomodar os registros enquanto que uma estrutura é apenas uma sequência de campos ,Layout.
Ambas as definições poderão ser usadas em um programa ABAP como sequencia de campos.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura

Data Element
Como podemos observar, tanto uma Tabela quanto uma Estrutura são uma sequencia
de campos, Layout, onde casa campo tem seu Data Element obrigatoriamente, mas a
diferença gritante é que quando se trata de uma tabela, temos que definir ao menos
um campo como sendo chave primária e uma outra observação que podemos fazer é
que toda tabela que tem como primeiro campo um MANDT, esta tabela é dependente
de Client e se não possuir este campo , a tabela é independente de Client .
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura

Uma Estrutura poderá fazer parte do


layout de uma ou mais Tabelas.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de
Tabela e Estrutura - Exemplos
Desenvolvimento

Vamos pegar uma exemplo, KNA1


– Cadastro de Clientes SAP

Como não podemos alterar objetos


da SAP, nada impede de podermos
consultar
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Trata-se de uma Tabela do


tipo Transparente e está
ATIVA

Dois campos chave


primária, MANDT e
KUNNR, portanto é uma
tabela dependente de
client.

Na composição do
layout, temos um include
de uma estrutura.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Double Click sobre o nome do Data Element, o


sistema nos leva até a sua definição.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Tela do Data Element, Clicado na tela anterior,


onde podemos observar que o objeto
encontra-se ATIVO.

Nesta pasta, DATA TYPE,


poderemos informar o DOMÍNIO
para definir os atributos do
campo

Ou optar por Tipo Pré-definido


para quando desejar definir o
atributo do campo aqui no Data
Element e não no Domínio.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Na pasta Field Label é onde


definimos as Descrições para o
campo nos seus diversos tamanhos

Descrições, pequena,
média, grande ou do
tamanho que necessitar
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Na pasta Data Type, clicando sobre o nome do


Domínio, iremos para a sua definição.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Na Tela do Domínio podemos observar


que o objeto encontra-se ATIVO

Na pasta Definition, poderemos definir


o atributo do campo, tipo e tamanho.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Retornar
tela
anterior

Ainda na tela do Domínio, na pasta Value


Range, poderemos definir os valores possíveis
para o campo

Podemos definir Valores e suas respectivas


Descrições

Assim como podemos definir intervalos e


suas respectivas Descrições.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

No Layout do Cad. De
Clientes, podemos
observar também que na
sua composição temos
um include, que se
clicarmos sobre ele,
veremos a sua definição.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Clicando no Include na tela anterior, o


sistema nos leva até a sua definição onde
podemos observar seu layout e seu status de
ATIVO

Portanto, todos
estes campos fazem
parte do layout do
cadastro de Clinetes
KNA1
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Vamos agora
analisar o Domínio
do campo EXABL,
para isso teremos
que dar um double
click sobre seu Data
Element
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Na tela do Data Element, na pasta


Data Type, clicamos sobre o seu
Domínio.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

Já na tela do Domíno, vemos que se trata de


um campo do tipo caracter de 1 Byte e
clicamos na pasta Value Range.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela e Estrutura - Exemplo

E na sua Definição podemos observar


que se neste campo existir um X
significa Yes/Sim e se tiver um branco
significa No/Não por definição, entre
outras palavras este campo só pode
ter como conteúdo um X ou um
Branco.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exercício 2 – Analise a Tabela EKKO –
Pedidos de Compras SAP, anote quais os
campos chave primária desta tabela, veja se
é uma tabela dependente de client ou não,
veja também se a tabela possui includes e
qual o nome deles. Veja quais descrições o
campo BSART utiliza e seu domínio. Veja
também, quais as possíveis entradas para o
campo LOEKZ. Anote todos os resultados e
como chegou até eles.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Especificações Técnicas
Academia SAP ABAP
Gplux Treinamento SAP

Noções Básicas do ABAP


Ambiente de Desenvolvimento
Tabela – Especificações Técnicas

Sobre a
Bufferização de
Tabelas,
falaremos mais
adiante
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Especificações Técnicas

TableSpaces, são
as área que
temos em disco
onde
pretendemos,
acomodar
determinados
tipos de arquivos,
esta divisão pode
ser feita por
exemplo por
drives mais
lentos/rápidos ,
maior/menor
capacidade de
armazenamento
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Especificações Técnicas

Dentro das
tableSpaces
temos o Data
Class, que são
as áreas onde
temos
acomodados as
nossas tabelas e
aqui temos que
tomar alguns
cuidados.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Especificações Técnicas

Dados Dados Transacionai, é


Master Data, Organizacionais, é uma área em disco
cadastros Mestres, uma área onde a SAP cujas tabelas eu Dados do sistema R3,
Tem por característica armazena as tabelas chamo de sanfonas, tem muito I/O e não
crescer até um com as respectivas ou seja, crescem desejamos concorrer
determinado tamanho transações, ou seja, enormemente até com o sistema
e estabiliza, ex. Cad. uma área que é muito uma tamanho depois operacional para
De Clientes consultada, tem muita fazemos uma limpeza, acessar as nossas
leitura. ex. apontamento de tabelas de aplicativo.
horas, lançamentos.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Especificações Técnicas

Size category
é uma campo
através do
qual
definiremos o Uma Tabela
tamanho da mal
tabela, isto dimencionada
significa que poderá
devemos fazer acarretar em
uma boa perda de
estimativa da performance
qtde de ou até
registros que desperdício de
irá comportar. espaço.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Especificações Técnicas

Temos também
um campo onde
poderemos
definir LOG, isto
significa que se
qualquer campo
sofrer
alterações,
haverá um log
com data,
usuário,
conteúdo
anterior e atual.

Devemos ter cuidado com isso, pois poderá ser um gargalo e teremos
problemas de performance também, o sistema gravará tudo numa tab.
Chamada CDHDR e CDPOS.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Especificações Técnicas

Ao consutar uma tabela, poderemos


ver seus aspectos técnicos, clicando
em Technical Settings.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Especificações Técnicas

Data Class, ao clicarmos em F4, aparece a relação das áreas


definidas onde poderemos criar nossas tabelas.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Especificações Técnicas

Size Category, ao clicarmos em F4, aparece a relação das da


quantidade de registros sugeridos pelo sistema e
selecionamos o mais apropriado para a nossa estimativa.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Especificações Técnicas

Aqui definimos se desejamos ou não


Bufferizar uma tabela e seu tipo.

Aqui definimos se desejamos ou não o


Log da tabela.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Visão Geral
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exercício 3 – Analise as Technical Selltings
das Tabelas KNA1 - Cadastro de Clientes
SAP e EKPO - Itens de um Pedido de
Compras SAP.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Outros Tipos de Tabelas

No SAP hoje
só podemos
Mas existem
desenvolver
ainda hoje
tabelas do
Tab. Do tipo
tipo
Clustes e Poll
Transparente
de Releases
antigos.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Outros Tipos de Tabelas

Cluster é
uma tabela
com layout
variável
para
diversas
tabelas.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Outros Tipos de Tabelas

Pooled
Table é uma
Tabela que
incorpora
outras
tabelas,
onde o
nome da
tabela faz
parte do
campo
chave.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Tabela – Outros Tipos de Tabelas

Ambos os tipos de tabelas foram abandonados pela série de deficiência que oferecem comparados
a uma Tansparent Table, como não permitir índices secundários, acessos por Join, agrupados,
ordenados e também não permitirem APPENDS de novos campos por parte do cliente.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Na SE11 entre com um


nome p/a tabela que
começa com Z/Y e depois
clicar em Criar.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Optando-se por responder


este campo com Disp./Maint.
Allowed, estamos
permitindo que tenhamos
acesso a esta tabela por um
utilitário, SE16,
Pelo menos em tempo de
desenvol. Poderemos dar
manutenção nesta tabela,
Criação, Manut. e Exclusão
de Registros.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Na sequência clicamos
na pasta FIELDS e
começamos a def. o
layout.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Como estes campos não estão


preenchidos, falta definir os
Data Elements e Domínios

Preencher as duas colunas com os nomes de campos e respectivos Data Element e


dar um ENTER e ver o que já se encontra definido.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Double Click sobre o Data


Element que deseja Definir
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Na sequência o sistema
pergunta se deseja salvar o
que foi feito até então e eu
confirmo com YES, na
sequência vem o Pacote e a
Request para transporte.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Após a confirmação do transporte, vem


a pergunta se deseja realmente criar o
Data Element e eu clico em YES.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Podemos def. os atributos do


campo no Data Element, sem
a necessidade de criar um
Domínio.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Após a def.inidos os
Atributos, clicamos em
Filed Label onde
faremos a Descrição
para o campo.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Em Field Label portanto,


definimos a Descrição do
campo e ao concluir clicar
em SAVE.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Após salvar, associar a um


pacote e uma request, não se
esqueça de ATIVAR e retornar
para a tela anterior para
continuar com os demais
desenvolvimentos.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Toda vez que retornar para a primeira tela e os


campos Data Type, Lenght e Descrição estiverem
preenchidos, você fez tudo certo na criação do
Data Element e Domínio.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Nova sequência de de
desenvolvimentos, double
click sobre o Data Element.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Após a definição das


descrições do Data
Element, clicar em
Data Type para
definirmos o Atributo.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Após Salvar,
determinar pacote e
request, vamos
agora criar os
atributos através do
Dominio, double
Click.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Posteriormente
vem a famosa
pergunta, se Após definir a
deseja criar o descrição do objeto
objeto e eu Domínio, vamos na
respondo com sequência definir seu
YES. atributo.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Com F4 no campo Data Type, você


seleciona o tipo de dado
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Depois de definirmos
também o tamanho e
quantidade de decimais,
vamos então salvar e
ativar, determinando o
pacote e a request.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Depois de constatar que o


objeto está ATIVO, retorne
para a tela do Data Element
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Ao retornar para a
tela do Data
Element, ativar o
objeto e Retorne
mais uma vez.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

E é assim que vamos desenvolvendo campo


a campo do layout de uma tabela, até o seu
término.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Vamos pegar mais um exemplo para determinar


os valores possíveis para o campo, double click
sobre o Data Element.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Depois de definir
todas as
descrições, Salvar,
determinar o
pacote e a
Request, vamos
dar double click
sobre o Domínio e
definí-lo.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Bem, depois de determinar o tipo de


campo e tamanho, clique em Value
Range, para determinarmos quais os
valores possíveis para este campo.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Depois de entrarmos com os códigos


e com as respectivas descrições,
devemos SALVAR, entrar com o
pacote, request e no final ATIVAR e
retornar.

Podemos também optar por definir


intervalos, Menos valor e Maior valor e uma
descrição.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Depois de tudo definido,


vamos agora ir para as
Technical Settings
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Vamos Definir o Data Class e


o Size Category, Buffer e Log
veremos mais para frente.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Uma vez que definimos onde


desejamos colocar o arquivo
e com que tamanho e sem
Buffer, vamos salvar e
retornar para a tela anterior.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela
OPA, VERMELHO,
Erro Grave, vamos
ver do que se
trata, tudo
amarelo, então
Agora QUASE tudo está OK.
pronto, vamos
ATIVAR e ver no
que vai dar.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

No Layout da nossa tabela, temos dois campos que o sistema está criticando, um
campo Valor e um campo Quantitativo , clique em Currency/Quantity Fields.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Estão vendo estes campos


vazios, aqui temos que
definir algo, vamos ver na
sequência do que se trata.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

O sistemas quer saber, como se trata de O sistemas quer saber, como se trata de um
um campo valor monetário, dimdim, o campo QUANTIDADE, o valor dentro deste
valor dentro deste campo é referente a campo é referente a qual Unidade de Medida,
qual moeda, portanto ele deseja um portanto ele deseja um campo com o código
campo código de moeda, que poderá estar da unidade de medida, que poderá estar na
na mesma tabela ou eu uma outra tabela mesma tabela ou eu uma outra tabela do
do sistema . Como o SAP trabalha com sistema . Como o SAP trabalha com várias
várias moedas, não poderíamos somar por unidades de medida, não poderíamos somar
ex. REAL com DOLAR com EURO, etc... por ex. PEÇA com KILO com BARRA, etc...
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Depois de indicarmos quem são os


campos e onde eles se encontram, agora
sim posso ATIVAR a minha tabela.

Onde se encontra, Nome do campo onde o sistema


nome da tabela. encontrará o código
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Agora sim,
tudo amarelo,
tudo BELEZA,
nossa tabela
foi ativada.

Agora que a tabela está


ativa, poderemos sair da
SE11 e vamos testar o
comportamento dela
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Bem, como definimos no início da


definição da tabela, TABLE
MAINTENANCE ALLOWED, isto
significa então que através do
utilitário SE16, poderemos então
dar manutenção nesta tabela,
vamos então até este utilitário.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Entramos com o nome


da tabela na qual
desejamos no caso criar
registros e clicamos no
ícone CREATE.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela
Vamos preenchendo
todos os campos e
clicamos em SAVE, e
assim vamos criando
registros em nossa
tabela e vemos o
comportamento das
nossas definições
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Nesta tela agora, clicamos


neste icone onde veremos
Quando terminar
todos os registros
de criar todos os cadastrados na tabela.
registros
desejados, para
visualizar estes
registros, vamos
retornar para a
tela anterior.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exemplo para criação de Tabela

Na sequência,
aparece o
relatório com os
registros
Tela de filtro para desejados.
restringir o
processamento se
for necessário e
clique em EXECUTE.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exercício 4 – Criar uma Tabela chamada ZFOR_## - Cad. De Fornecedores
No Seus Technical Settings teremos o Data Space APPL0, Size Category 0, Sem Buffer e sem LOG.
Campos Data Element Domínio Valores Possíveis

Key MANDT MANDT


Key CodFor LIFNR
TotPedAno ZtotpedA## ZotpedA## CURR 13, 2 decimais
CodMoe ZcodMoe## WAERS
StatusFor ZstatusF## ZstatusF## NumC 1. 0-For. Ativo
1-For. é Cliente
2-For. Em Concordata
8-For. Bloqueado
9-For. Cancelado
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exercício 5 – Criar uma Tabela chamada ZPED_## - Cad. De Pedidos de Compras
No Seus Technical Settings teremos o Data Space APPL0, Size Category 0, Sem Buffer e sem LOG.
Campos Data Element Domínio Valores Possíveis
Key MANDT MANDT
Key NumPed ZnumPed## ZnumPed## NumC. 6 111000 – 111999
CodFor LIFNR
qtdeItens ZqtdeIt## ZqtdeIt## NumC 2 01 – 10
TotPed Ztotped## Ztotped## CURR 13, 2 decimais
StatusPed ZstatusP## ZstatusP## NumC 1. 0-Ped. Pendente
1-Ped. Parc.Entregue
2-Ped. Tot. Entregue
8-Ped. Bloqueado
9-Ped. Cancelado
codcomp zcompr## zcompr## char 1 A-Mario
B-Silvana
C-José
D-Silvino
E-Raquel
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Ambiente de Desenvolvimento
Exercício 6 – Criar uma Tabela chamada ZIT_## - Cad. Itens de Pedidos de Compras
No Seus Technical Settings teremos o Data Space APPL0, Size Category 0, Sem Buffer e sem LOG.
Campos Data Element Domínio Valores Possíveis
Key MANDT MANDT
Key NumPed ZnumPed## ZnumPed## NumC. 6 111000 – 111999
Key ItemPed ZItem## ZItem## NumC. 2 01 - 10
qtdeMat ZqtdeMat## ZqtdeMat## QUAN, 6, 2 decimais
UnidMed BSTME
Preco Zpreco## Zpreco## CURR 13, 2 decimais
CodMat MATNR
langu SPRAS
StatusItem ZstatItem## ZstatItem## Char 1. A-Item. Pendente
B-Item. Parc.Entregue
C-Item. Tot. Entregue
Y-Item. Bloqueado
Z-Item. Cancelado
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Quando se
acessa uma
tabela do banco
de Dados,
normalmente
fazemos este
acesso pelo que
definimos como
chave principal,
ou seja, chave
primária.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access
Porem hoje em dia, com a modernidade
que o banco de danos nos oferece,
poderemos acessar a nossa base por
qualquer campo secundário, ou seja, campo
não declarado como chave primária, para
não termos problemas de performance,
precisamos observar algumas situações,
como;
Qual tamanho da tabela, ela possuirá mais
de 1000 registro ?
Se sim, temos um índice secundário que dê
suporte ao Banco de Dados ?
Com que frequência este programa será
executado no seu dia a dia ?
Teremos que ter respostas para todas estas
perguntas, pois índice secundário ocupa
espaço em disco e quem procura pelo
melhor acesso é o Optimizer do Banco de
Dados, se não dermos suporte, ele fará um
Full Scan, ou seja, lê a base toda.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Como podemos ver, ter


registros a partir do Buffer,
temos ganho de performance,
mas devemos ser criteriosos
para Bufferizar uma tabela, 1
normalmente bufferizamos
tabelas pequenas que sofrem
muitas leituras e que sofrem
2 a 6 ms
poucas alterações, como por ex.
tabela com parametros.

6 a 800 ms
2

3
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access
Quando optamos em
Technical Settings por
Full Buffering, significa
que todos os registros
da tabela será
Bufferizadas e quando
isso acontece. A
Bufferização se dá no
momento que o
sistema entra no ar e as
pessoas começam a usar
os programas, no
momento que acontecer
o primeiro acesso o
sistema checa os
parâmetros da tabela e
começa a fazer a
bufferização. Pelo que
vimos, o que poderemos
então Bufferizar ?
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Para fazer uma


Bufferização do
tipo Generic, é
adotado o
mesmo critério
mencionado
anteriormente e
Generc significa
que apenas um
conjunto de
registros serão
Bufferizados.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Vamos pegar esta


tabela BSEG como
exemplo para
entender como se
dá uma
Bufferização do
tipo GENERIC,
esta tabela possui
uma série de
campos chave
primária, 5
campos ao todo.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Se eu optar por Bufferização


Genérica, terei que informar com
relação a quantos campos chave,
neste nosso exemplo se eu colocar 2,
significa que se tratam dos campos
MANDT e BUKRS, ou seja, serão
bufferizados todos os registros que
tiverem o mesmo conteúdo nos
campos mandante e Código da
Companhia.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Para fazer uma


Bufferização do tipo
Single Record, é
adotado o mesmo
critério mencionado
anteriormente e
Single Record
significa que apenas
UM registros será
Bufferizado,
justamente aquele
que está sendo lido,
em todos os casos
precisamos tomar
muito cuidado com
isso, pois pode até
comprometer a
performance do
sistema.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Todo servidor de
aplicação, onde
roda o R3,
podemos ter
mais de um em
nossa
configuração,
tem seu próprio
Buffer.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Se tivermos mais de um servidor de aplicação, teremos então uma


tabela de sincronismo para controlar e manter os Buffers dos diversos
servidores sincronizados, ou seja, atualizados.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Os Buffers então
são carregados
conforme os
usuários forem
utilizando os
aplicativos /
programas.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Este Buffer
então ficará
desatualizado,
pois no outro
servidor houve
uma deleção.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Neste exemplo
agora, alguém
deseja ler este
registro que no
outro servidor,
através de
programa havia
sido excluído, o
que o sistema
fará, pois o
Buffer esta
desatualizado.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

O sistema
nora então
através da
Tabela de
Sincronismo
que houve
uma
alteração de
imagem
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Portanto o sistema
então terá que
atualizar o Buffer
deste servidor para
que todos os Buffers
estejam com a mesma
informação . Então
como vimos,
Bufferizar tabelas não
é uma coisa assim tão
simples, deve ser bem
criterioso, pois ao
invés de melhorarmos
a performance,
poderemos
comprometer ainda
mais os tempos de
resposta.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access

Dicas para
seguirmos um
roteiro se
devemos ou
não bufferizar
uma tabela. Em
resumo tabelas
pequenas com
poucos
registros, com
muita leitura e
pouca
alteração.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Performance During Table Access
Exercício 7 – Verificar os Technical Settings das tabelas EKKO, T001 e T100.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks

Como já visto
anteriormente,
podemos definir
consistências no
domínio de um
campo, através de
Valores Fixos,
Intervalos ou contra
uma tabela.

Intervalos
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks

Caso queiramos fazer


uma consistência
contra uma tabela,
devemos então
preencher este campo
Value Table, que se
encontra no domínio
do campo, com o
nome da tabela
contra qual
desejamos efetivar a
consistência.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks

Vamos ao
exemplo, aqui
temos uma tela
onde o usuário
digitou estas
informações,
pergunta, será que
o sistema aceitará
estes dados, uma
vez que haverá
uma consistência
contra a tabela
SCOUNTER ?
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks

Esta informação
não será aceita,
por ser
inconsistente,
AA + 00000008
não consta na
Tabela SCOUNTER
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks

Como definir
então uma
consistência
assim ?
Bem, alem de
definirmos a
Value Table no
domínio do
campo COUNTER,
precisamos ainda
definir a chave
estrangeira para
este campo,
assim efetivamos
esta consistência.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks

Portanto é assim
que definimos
uma consistência
contra uma
tabela, alem de
preencher o
campo Value
Table no
respectivo
domínio do
campo, temos
ainda que definir
a chave
estrangeira.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks

Por default, a chave


estrangeira contra qual
desejamos efetivar uma
consistência é a tabela
que consta no campo
Value Table. Mas
atenção, o pré-requisito
para que isto funcione,
ambos os campos
devem ter o mesmo
domínio,
o data element pode até
ser outro, mas em
comum devem ter o
mesmo domínio.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks

Pergunta, mas se em
comum devem ter o mesmo
domínio, então só posso
consistir contra a tabela que
constar no campo
Value Table ?
Resposta, NÃO, como
neste exemplo, quando for
gerar a chave estrangeira,
posso não aceitar o Default,
posso direcionar a
consistência contra uma
outra tabela, como neste
exemplo contra a tabela
STRAVELAG, mas o pré-
requisito continua o
mesmo, ou seja,
MESMO DOMÍNIO.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema

Posteriormente clicamos em
Foreign Keys, para efetivarmos
a consistência.

Primeiro posicionar curso


sobre o campo
Data Element.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema

Clico em YES
para aceitar a
consistência
contra a
tabela LFA1

Na sequência, caímos nesta tela onde


poderemos o relacionamento dos campos
chave das tabelas e onde iremos concluir a
definição da consistência.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema

Um dos campos
que temos que
definir é a
CARDINALIDADE,
que é
representada pelo
m:n
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema

m
1 Significa o que for ser digitado no campo
LFA1 ZTAB_EXEMPLO FORNECEDOR, obrigatoriamente deverá
existir na Tabela LFA1.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema

m
C Significa o que for ser digitado no campo
LFA1 ZTAB_EXEMPLO FORNECEDOR, tanto faz como fez se existir
ou não na Tabela LFA1.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema

CN Significa o que for ser digitado no campo


FORNECEDOR, poderá não existir na Tabela
ZTAB_EXEMPLO ou poderá ocorre
N vezes, ou seja, Min. 0 .... Max. N.

n
LFA1 ZTAB_EXEMPLO
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema

C Significa o que for ser digitado no campo


FORNECEDOR, poderá não existir na Tabela
ZTAB_EXEMPLO ou poderá ocorrer
no máximo 1 vez, ou seja, Min. 0 .... Max. 1.

n
LFA1 ZTAB_EXEMPLO
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema

N Significa o que for ser digitado no campo


FORNECEDOR, poderá existir no mínimo 1
vez e no máximo N vezes na Tabela
ZTAB_EXEMPLO, ou seja, Min. 1 .... Max. N.

n
LFA1 ZTAB_EXEMPLO
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema

1 Significa o que for ser digitado no campo


FORNECEDOR, poderá existir no máximo e
no mínimo 1 vez na Tabela ZTAB_EXEMPLO,
ou seja, Min. 1 .... Max. 1.

n
LFA1 ZTAB_EXEMPLO
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema

O sistema ainda deseja saber,


para este campo que estamos
definindo uma chave
estrangeira, este campo é ou
não um campo chave primária
em nossa tabela ?
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema outra situação

Vamos a um outro exemplo onde eu não


desejo estabelecer uma consistência sobre a
proposta do sistema.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema outra situação

Vou lá, posiciono o cursor


sobre o campo para o qual
desejo fazer uma consistência
e clico no ícone Chave
Estrangeira. O sistema quer
saber, deseja fazer a
consistência na
Tabela TCURC, e eu
respondo com No.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema outra situação

Recebo então esta tela vazia e preencho o


campo Check Table manualmente com o
nome da tabela contra qual desejo então Depois de definir contra qual
definir uma consistência. tabela desejo então fazer a
consistência, clico em COPY.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema outra situação

Após o COPY, vem a


pergunta novamente
sobre gerar a chave
estrangeira sobre a tabela
que havia definido, clico
em YES.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exemplo no Sistema outra situação
Pode acontecer que ao gerar uma chave estrangeira a
minha tabela não ter todos os campos correspondente
para fazer o acesso de verificação, daí o campo viria
em BRANCO, o que posso fazer ?

Eu tenho duas opções se este for o caso, a


primeira opção eu poderia optar em clicar
em GENERIC, onde eu não me imposto
com o conteúdo do campo, basta o
registro existir. A minha segunda opção,
seria eu será definir uma CONSTANTE
entre apliques/aspas simples.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Outra Situação de Consistência

Quando temos
campos com textos
em nossas tabelas,
devemos cadastras
os textos conforme
linguagem, pois o
SAP tem a
linguagem LOGON
e os textos deverão
ser apresentados
de acordo com esta
linguagem.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exercício 8 – Definir as chaves estrangeiras para as nossas tabelas, onde
efetivaremos uma consistência sobras as tabelas da SAP.

LFA1 ZFOR_##
CODFOR
CODMOE

TCURC
ZPED_##
NUMPED
CODFOR

ZIT_##
T006 NUMPED
MARA UNIDMED
CODMAT
LANGU
T002
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Input Checks
Exercício 9 – Após a conclusão da definição das chaves estrangeiras, vá para o
nosso utilitário SE16, elimine os registro lá existente e cadastre novos registros para
as respectivas tabelas, 5 Fornecedores, 5 Pedidos e uma média de 3 itens por
pedido. Pode cadastras 1 item para um pedido, 5 ou mais itens para outro pedido e
conforme definição, máximo de 10 itens para um pedido.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies

Bem, toda
alteração que
promovermos
a nível de
dicionário de
dado, só passa
a ser válido
quando
ativamos o
objeto.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies

QUANDO
ativamos
então, como o
ABAP por
exemplo é uma
linguagem
interpretada
ele passa a
trabalhar com
a última versão
ativa de um
objeto definido
no
Dic. de Dados.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies

Não podemos
então esquecer,
que um programa
pode se referenciar
a uma Tabela, uma
Estrutura ou campo
de uma Tabela,
campo de uma
Estrutura ou a um
Data Element.
Assim como um
Data Element pode
utilizar um
Domínio ou uma
campo de Tabela
ou de Estrutura
utilizar um Data
Elemet
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies

Porque
precisamos
saber e conhecer
estas
dependência ?
Porque temos
um utilitário
chamado SE84
através do qual
poderemos
promover
pesquisas no
sistema, afinal
não conhecemos
nada a respeito
do SAP.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies

A SE84 permite com


que eu encontre
respostas para as
minhas perguntas e
dúvidas, do tipo, tenho
algum domínio com os
atributos que
necessito, tenho
alguma Data Element
que atenda a minha
necessidade ...
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies
Exemplos

Vamos então
conhecer a
SE84

Selecionaremos o
ABAP Dictionary
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies
Exemplos

Aqui poderemos fazer pesquisas


em Objetos do Dic. de Dados,
como Tabelas, Estruturas,
Data Elements, Domínios, etc...

Aqui poderemos fazer pesquisas


de campos em Objetos do
Dic. de Dados, como campos em
Tabelas, campos em Estruturas,
etc...
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies
Exemplos Aqui neste exemplo, estou pesquisando se
tenho no sistema alguma tabela definida
com as iniciais ZTAB*
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies
Exemplos

Selecionando um objeto,
posso querer saber maiores
detalhes, basta clicar em
Display.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies
Exemplos

Neste exemplo
vou pesquisar
todos os
data elements
que começam co
Z* e
desenvolvidos
pelo usuário
Uma observação biskampe, depois
muito IMPOSTANTE,
de preenchidos
clicando neste
ICONE, nós os campos, clico
expandimos a tela de em EXECUTE.
filtro para outros
argumentos de
pesquisa.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies
Exemplos

Da lista que me foi apresentada,


posso ir mais adiante na minha
pesquisa, seleciono o data element
desejado e clico em display.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies
Exemplos

Desta minha lista por


exemplo, posso clicar em
Where-Used List, para saber
quem utiliza este Data
Element, e assim podemos
ir aprofundando as nossas
pesquisas.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies
Exemplos

Ao clicar em
Where-used List,
aparece esta janela
onde o sistema
pergunta , onde
deseja fazer estas
pesquisas, neste meu
exemplo, selecionei
Tabela, mas poderia
ter selecionado
também programas
ou estruturas, etc...
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Object Dependencies
Exercício 10 – Responda as perguntas abaixo, não se esqueça de anotar como
chegou ao resultado.

 – Quais Data Elements criados na data de hoje que começam c/a letra Z* ?

 – Quais Domínios criados pelo seu colega que começam c/a letra Z* ?

 – Quais Tabelas existentes no sistema que começam com a letra Z* ?

 – Quais Domínio que começam com letra Z* que possuem Fixed Values ?

 – Quais Campos em Tabelas Z* que possuem a MARA como Check Table ?


Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables
Changing Tables

Vamos ver agora o que


vai acontecer quando
alteramos uma tabela do
Banco de dados, neste
exemplo estamos
acrescentando um novo
campo
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables
Changing Tables
Oh grande
dúvida e
agora ???
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables
Changing Tables
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables

Ou o que será que vai


acontecer se
diminuirmos uma
campo de 60 bytes
para 30 ???
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables

Ao ATIVAMOS a
alteração, o sistema faz
o bloqueio da tabela, ou
seja, ninguém usa,
muda o nome da Tabela,
como se fosse fazer um
back-up e deleta todos
os seus índices, tanto o
primário quantos os
secundários.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables

Recria a
Tabela com o
novo layout.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables

Restaura a
tabela original,
baseado no
back-up,
restaurando
também seu
índice primário
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables

Depois que o
restou estiver
completo, o
sistema deleta
o back-up e
libera a tabela
para ser
utilizada.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables

O que poderia acontecer durante este


processo, falta de espaço em disco, perda de
dados, alteração inválida de campos ???
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables

Para tudo há uma solução,


não precisa destruir o
computador, tudo pode
ser ajustado através da
transação SE14.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables

Assim como nós


podemos colocar
campos novos em
Tabelas Z/Y, através
do APPEND
poderemos
acrescentar novos
campos a qualquer
tabela da SAP desde
que seja uma tabela
do tipo Transparente
, basta ATIVAR e
pronto, cada registro
será então
acrescentados destes
novos campos.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables

Isto significa que caso


venhamos a implantar
um novo release do SAP
e neste novo release a
SAP colocou um novo
campo, justamente
naquela tabela que
havia Apendado meus
campos, não haverá
problema algum, o
sistema simplesmente
colocará este novo
campo da SAP ao final
de cada registro.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Changes to Tables

Novo campo SAP.


Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views

View é uma composição


diferenciada da nossa base
principal, ou seja, é uma
composição de campos,
baseado em diferentes
tabelas. Quando criamos uma
View no Dic. De Dados,
estamos na verdade criando
um programa em comandos
nativos do DB, sem duplicação
de dados, cujo acesso de dá
através do Open SQL e é
totalmente transparente se
acessamos a base por Tabelas
ou View´s, só um detalhe,
acesso por View é 90% mais
rápido do que por tabela.
Academia SAP ABAP
Gplux Treinamento SAP

Noções Básicas do ABAP


Views

Em matéria
de
performance,
é 90% mais
rápido. SELECT *
VIEW ...
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views

Através de uma
View,
poderemos
acessar uma ou
mais tabelas.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views

No Dic. de Dados
o sistema se
utiliza do recurso
de Inner Join, ou
seja, só
disponibiliza
registros cujos
campos chave
existam em
ambas as tabelas
envolvidas.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views

Podemos criar
Projection
views para
acessar uma
única tabela.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views

Ao definir uma
View, poderemos
definir uma
condição de
seleção, ou seja,
disponibilizar
registros com uma
determinada
característica,
como neste
exemplo, só
disponibiliza
registros cujo
campo CURRENCY
da tabela SFLIGHT
tenha como
conteúdo USD.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views

Para poder criar uma


View, teremos que ter
um link entre as
diversas tabelas
envolvidas, podemos
até envolver outras
tabelas na nossa
composição para
chegar ao que
necessito, por exemplo,
não existe uma
conexão direta entre as
tabelas SPFLI e
SCUSTOM e foi
utilizada a Tabela
BOOK como ponte para
chegar ao que
necessito.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Posso utilizar
todos os View
recursos de
ABAP para
acessar a base
pela view, como
selecionar
registros a partir
da tela de filtro,
ler apenas
colunas que
interessam ao
programa.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Por comandos ABAP,
também poderemos
definir Joins, dois tipos
de Join, Left Outer Join
e Inner Join.

?
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
INNER JOIN
Clientes Duplicatas

Disponibiliza
Somente Clientes
que possuam
Duplicatas

LEFT OUTER JOIN


Clientes Duplicatas

Disponibiliza todos
os Clientes, mesmo
que não tenha
duplicatas
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Na SE11, optar por View e


entrar com o nome da view
que deve começar com Z/Y,
posteriormente CREATE.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Optar por Data


Base View
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Nesta tela entrar com


uma descrição para a
view e o nome da
tabela BASE

Com um double click


selecionamos a tabela
com a qual desejamos
Posteriormente fazer o
clicamos em relcionamento.
RELATIONSHIPS
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Após a definição da
condição de JOIN, agora
tenho que definir o layout
da minha View, clicando em
VIEW FIELDS.

O Sistema nos monta o Join, pergunta,


posso montar o join manualmente
com tabelas com as quais eu não
tenho relacionamento ?
Sim pode, desde que exista uma
campo que possa interligar as tabelas.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Nesta tela agora


vamos definir o Na sequência com
layou da nossa Double Click,
View, clicando em selecionamos a tabela
Table Fields da qual queremos
selecionar campos
para a nossa view.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo
Após o COPY dos
campos de um das
tabelas, clicamos
novamente em Table
Fields para selecionar
os campos da outra
tabela envolvida.

Selecionamos os
campos e na
sequencia, COPY.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Selecionamos
agora a outra
tabela do Join.

Selecionamos os
campos desejados e
novamente COPY.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Uma Vez que


selecionamos todos os
campos de todas as
tabelas envolvidas para
definir o layout da View,
vamos agora ATIVAR.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Não tendo
nada em
VERMELHO,
está tudo OK,
Retornar.

Após definirmos o pacote,


a request para transporte
vem a pergunta se deseja
ver o LOG da ativação,
clico em YES
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Clicando neste ICONE,


posso testar a minha
View para ver se está de
acordo com o planejado.

Retornando, vejo que


está ATIVO, portanto a
partir de agora posso
utilizar esta VIEW.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Tela de filtro, clico


em EXECUTE para
ver o Relatório.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo
Retornando para a Definição da View, vamos ver
como se faz a seleção de registros, clicando na
pasta Selection Conditions

E posteriormente clicamos em
Table Fields, onde vamos selecionar
os campos que farão parte da nossa
condição de seleção.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Com Double
Click,
selecionamos
a Tabela.

Selecionamos o
campo.

E COPY
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Aqui definimos a condição de seleção, neste


exemplo a view só deve apresentar registros, cujo
Cód. Do Comprador seja igual a 7 ou 9.

Obs. Quando os campos se repetem, Aqui temos as opções de


como neste exemplo, devemos utilizar o AND ou OR
Copy / Past , para o preenchimento
da segunda ou demais linhas, caso eu
queira repetir o campo
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exemplo

Após
ATIVAR,
Testar.

Tela de filtro,
EXECUTAR
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exercício 11 – Desenvolver uma View com o nome de ZVIEW1_##, Cadastro de
Clientes.

ZVIEW1_##
- CodFor - LAND1
- TotPedAno ZFOR-## LFA1
MANDT MADT - NAME1
- CodMoe CODFOR LIFNR
- ORT01
- StatusFor - PSTLZ
- REGIO
Cadastro de Clientes - STRAS
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exercício 12 – Desenvolver uma View com o nome de ZVIEW2_##, Pedidos
Pendentes.

ZVIEW2_##
- Mandt - ItemPed
- Numped ZPED-## ZIT_##
MANDT MANDT - QtdeMat
- CodFor NUMPED NUMPED
- UnidMed
- CodComp - CodMat
- StatusFor - Langu
Pedidos Pendentes

Obs. Somente disponibilizar Registros cujo Status do


Item seja igual a A, B ou Y.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Views
Exercício 13 – Desenvolver uma View com o nome de ZVIEW3_##, Itens do Pedido.

ZVIEW3_##
- Mandt - MAKTX
- Numped ZIT-## MAKT
MANDT MANDT
- ItemPed CodMat MATNR
Langu SPRAS
- QtdeMat
- UnidMed
- CodMat Itens do Pedido
- StatusItem

Obs. Este JOIN deverá ser montado manualmente uma


vez que esta nossa tabela ZIT não tem relacionamento
com a tabela MAKT.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help

O Search Help tem por princípio auxiliar


o usuário do programa a encontrar um
campo chave para alguma informação.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help Portanto será o search
help que vai me auxiliar.

Ai estou eu me
deparando com
os aplicativos da
SAP, sem saber os
códigos que
foram utilizados
para os diversos
objetos.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo
Digito como argumento de
pesquisa no campo descrição,
*parafuso*

Então eu chamo o Search


Help através da tecla F4 ou
clico no icone ao lado do
campo.
Estou eu aqui na
transação MM03 Clico em ENTRE na
da SAP querendo minha tela de filtro e me
consultar um vem a lista de parafusos.
parafuso e não sei
o código dele.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Com o double click sobre a informação


encontrada na lista, o sistema me trás o
respectivo código para o campo Material e
desta forma posso então dar
prosseguimento na minha transação .
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help

O Search Help Acesso a Base


consiste do 3
seguinte;

1 4
Parâmetros a serem Parâmetros a
importados serem exportados

2 Tela de Filtro
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help

Nome da Tabela ou
Data Base View

Selection Method é um
campo que temos no Search
Help, onde devemos colocar
o nome da TABELA ou Data
Base VIEW que deverá ser
acessada para obtenção das
informações que
procuramos.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help

Quando definimos um Search Help,


definimos o layout da tela de filtro,
assim como o layout do relatório, mas
os campos de ambos são os mesmos.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help

Um Search Help pode


ter N campos como
interface, tanto para
entrada ( IMPORT )
como de
saída ( EXPORT ) .
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help

Depois que um
Search Help,
denominado de
Elementário estiver
pronto e testado,
devemos anexar o
mesmo a um campo
de uma Estrutura ou
Tabela, na sequência
veremos um exemplo
na prática.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help

Concluindo
então, o search
help do tipo
ELEMENTÁRIO,
poderá ser
anexado a um
campo de uma
Tabela, campo
de uma
estrutura ou
ainda a um
Data Element.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help

Esta é a Hierarquia dos


recursos que temos para
auxiliar um usuário a
encontrar o conteúdo de um
campo num programa.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help

Aqui também devemos observar


todos os aspectos de
performance já vistos, afinal o
Search Help também é um
programas e os argumentos de
pesquisa para acessar a base de
dados, são campos normalmente
secundários, precisamos ver se
daremos suporte ao DB através
de índices secundários.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Na Transação SE11,
optamos por Search Help e
digitamos o nome que
deve começar com Z/Y,
posteriormente clicar em
Create.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Digitamos uma descrição


apropriada para o principal
argumento de pesquisa.

Na sequência o sistema deseja


saber qual tipo de search Help
desejamos criar e optaremos por
Elementário e clicamos em ENTER.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Aqui temos o campo


Selection Method, que
deverá ter como
conteúdo o nome de
uma Tabela ou View.

Para este campo temos


3 opções de escolha, eu
recomendo que sempre deverá
primeiramente antes da lista
uma tela de filtro para que o
usuário possa ter uma opção de
escolha na procura de uma
informação.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

O layout
agora, será
baseado
nos
campos da
Clicando em F4, vamos nossa
agora definir o layout Tabela ou
do nosso search help.
View.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

No final devemos então ATIVAR o nosso


Search help, informando antes o pacote
e a request para transporte.

Obs. IMPORTANTE, o nosso


Relação de campos principal argumento de pesquisa,
do nosso Search sempre deverá estar presente
Help. em nosso
search help,
afinal é justamente este campo
que o usuário está procurando
saber , qual é o Cod. Do
Fornecedor e para isso
Quais parâmetros Quais parâmetros disponibilizamos a Razão Social e
poderão ser poderão ser Comprador como argumento de
importados. exportados. pesquisa secundária para que ele
ache esta informação.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Depois que o
nosso
Search Help
estiver ATIVO.

Vamos para a nossa Tabela ou Estrutura


fazer a amarração deste recurso.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Primeiro colocamos o cursor sobre o


campo para o qual desejamos
amarrar o Search Help e
posteriormente clicamos no botão
Srch Help

Ao clicarmos então no botão


Srch Help, abre-se esta Janela onde
iremos então informar o nosso
Search Help e clicamos em ENTER
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

ATIVAR e Testar

Após clicarmos em ENTER na janela


anterior, aparece agora esta Janela e se
nesta janela estes campos estiverem
preenchidos está tudo OK, clicar em COPY
agora.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo
Vamos Fazer o teste na SE16, clicando F4 no
campo correspondente no qual amarramos o
Search Help.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Aqui está o Nosso Search


Help.

Aqui está a nossa Lista.


Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Este é o campo
que definimos
como Import
Parameter.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo
Nesta Tela de filtro, fazemos então a restrição de
processamento, onde desejo saber, todos os
registros que tem CAR no meio da descrição e
cujo código do fornecedor comece com 1.

Clicando em ENTRE,
temos então a lista.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Este é o Export
Parameter.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Lpos = List Position Spos = Screen Position


Sequência dos campos Sequência dos campos
na Lista. na Tela.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help Elementário
Exercício 14 – Desenvolver um Search Help Elementário com o nome ZSHLP1_##,
Pedidos por Comprador.

- Crie o Search Help com os campos Numped, CodComp e o principal


argumento que é o CodComp, o Selection Method deverá ser a View
ZVIEW2_##. Depois de ativo, amarrar o Search Help ao campo NUMPED
da Tabela ZPED_##. Testar o Search Help na transação SE16 para ver se
funciona corretamente.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help Elementário
Exercício 15 – Desenvolver um Search Help Elementário com o nome ZSHLP2_##,
Pedidos por Material.

- Crie o Search Help com os campos Numped, CodMat e o principal


argumento que é o MAKTX, o Selection Method deverá ser a View
ZVIEW3_##. Depois de ativo, amarrar o Search Help ao campo NUMPED
da Tabela ZPED_##. Testar o Search Help na transação SE16 para ver se
funciona corretamente.

- Obs. Para amarrar o novo Search Help ao campo Numped, deverá


antes excluir o Search Help anterior, para isso siga os passos como se
fosse amarrar o novo, a tela do Search Help já virá preenchida, clique
na LIXEIRA para excluir este Search Help e repita o passo novamente
para amarrar o novo.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help Coletivo

Search Help
Coletivo é o Search Helps
interface do Elementários
interface, ou
seja, é uma
programa
também que
reúne search
Helps do tipo
Elementário.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help

No SAP Standard,
temos uma série de
Search Helps
Coletivos, mas nada
impede que em
função da nossa
cultura na empresa,
tenhamos que criar
uma nova maneira
de pesquisar
códigos no sistema
SAP, portanto
poderemos criar
novos Search Helps
Elementários e
através do APPEND
acrescentar estes,
ao Search Help
Coletivo da SAP.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Transação Standard
SAP, consulta Clientes,
FD03, Clicar F1 sobre o
campo.

Aparece o Help do Double Click sobre


Campo, clicamos o campo e vamos
então no Icone então para o Dic.
Technical Settings De Dados
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

E aqui você saberá que


o SAP Standard utiliza o
DEBI como
Search Help Coletivo.

No Dic. De Dados,
clique nesta aba,
Currency/Quantity
Fields

Clique em
Search Help
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Incluir novo Search Help


do tipo elementário.
Seach Help Coletivo da
SAP, Display.

2
1

4 Clica-se em Pelo MENU, GOTO,


Create poderemos então
3 anexar um Search Help
Elementário nosso, ao
5 coletivo do SAP.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Na SE11, opção Search Optar por Search


Help, entramos com um Help Coletivo.
nome que começa com
Z/Y e clicamos em CREATE.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Entre com uma Descrição


apropriedo para Search
Help Poletivo.

Feito isso, clicamos


em
Include Search Helps

Agora prestando atenção, verifique entre os


search hepls elementários, qual campo
comum entre eles e os respectivos Data
Elements, anote ou cole seus nomes e os
coloque aqui manualmente.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Nesta Tela Agora, colocamos


os nosso search helps
elementários e damos uma
ENTER, se aparecerem as
respectivas descrições está
tudo certo agora.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Colocamos então o cursor


sobre o primeiro Search
Help e clicamos no botão
Param Assignment.

Se estes campos
estiverem
Na sequência vem a preenchidos
pergunta se desejo
aceitar a proposta do
está tudo OK e
sistema e eu respondo clico em Copy
com YES.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Repito esta mesma


ação para o segundo
Search Help

Se estes campos
estiverem
Na sequência vem a preenchidos
pergunta se desejo
aceitar a proposta do
está tudo OK e
sistema e eu respondo clico em Copy
com YES.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Agora que está tudo pronto, viu e ATIVO, determino


o pacote e a request para transporte e estou pronto
para utilizar o Search help Coletivo, vou para a
minha Estrutura ou Tabela e faço a amarração.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Coloco o curso sobre o campo


Entro como nome da que desejo anexar meu search
Help Coletivo e clico
minha Tabela ou estrutura
Srch Help
e clico em Change.

Vejo que já tem um


Seach Help, clico na
lixeira para eliminar.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Coloco o curso sobre o campo


Entro como nome da que desejo anexar meu search
Help Coletivo e clico
minha Tabela ou estrutura
Srch Help
e clico em Change.

Vejo que os campos estão


preenchidos, clico em COPY e
ativo a Tabela ou Estrutura.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

A minha Tabela estando ATIVA,


vou para o utilitário SE16 para
testar.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Clique em F4

E aqui agora vejo


meu search Help
coletivo
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Meu Search Meu Search


Help 1 com Help 2 com
seus campos seus campos
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help
Exemplo

Preenchendo a
tela de filtro,
clico em
ENTER e
recebo a lista

Na minha Lista se
constar a informação
que eu procuro, double
click sobre o registro e
o sistema transfere o
conteúdo do campo.
Academia SAP ABAP
Gplux Treinamento SAP

Dicionário de Dados
Search Help Elementário Coletivo
Exercício 16 – Desenvolver um Search Help Coletivo com o nome de
ZSHLP_COL_##, anexando os dois Search Helps Elementários que fizemos
anteriormente ZSHLP1_## e ZSHLP2_##.

Depois de pronto, ATIVAR e testar o Search Help Coletivo na transação SE16


para ver se funciona corretamente.
Academia SAP ABAP
Gplux Treinamento SAP

Noções Básicas do ABAP


Ambiente de Desenvolvimento
Relação de Cursos Avançados
EC400 - Overview ABAP Workbench - 5 Dias

EC410 - Programação de Reports - 3 Dias

EC420 - Programação de Transações, Module Pool - 5 Dias

EC440 - Programação Orientação a Objetos - 5 Dias

EC450 - Web Dynpro - 5 Dias

Você também pode gostar