Beruflich Dokumente
Kultur Dokumente
O R/3 Data Dictionary (ou DDIC para abreviar) um utilitrio para definir objetos de dados. Para utilizar o DDIC, voc pode criar e armazenar objetos como tabelas, estruturas e visualizaes. Para chamar o Data Dictionary, execute os seguintes passos: Digite na caixa de texto Command, na barra de ferramenta Standard na parte superior da janela do minisap: /NSE11.
O DDIC est dentro do sistema R/3, Voc pode pensar nele como estando acima de um banco de dados como Oracle ou Informix e agindo como um controle remoto, que gera e envia instrues de SQL para ele. Por exemplo, voc pode criar uma definio de tabela no DDIC. Quando voc ativa a definio de tabela, as instrues de SQL so geradas e enviadas para o RDBMS, fazendo com que ele crie a tabela real no banco de dados. Quando quiser modificar a tabela, voc deve modificar a definio de tabela no DDIC. Quando ativar a tabela novamente, mais SQL gerado, fazendo com que o RDBMS modifique a tabela. Utilize o DDIC para criar e modificar todos os objetos de banco de dados. No modifique uma tabela ou qualquer coisa no nvel de RDBMS. A definio Data Dictionary no pode atualizar a si prpria e ela estar fora de sincronia com o banco de dados. Isso pode causar erros de aplicativo e at levar a uma perda de integridade dos dados. No R/3 uma tabela uma coleo de linhas. Cada linha contm campos, tambm chamados de colunas. Normalmente, dentro de uma tabela, cada linha tem o mesmo nmero de colunas, como as outras linhas da tabela. Uma tabela armazena dados persistentes. Em outras palavras, se voc coloca dados em uma tabela, eles permanecem a depois que seu programa finalizar. Eles permanecero at serem alterados ou excludos por seu programa ou outro. O nome de uma tabela nico dentro do sistema R/3 inteiro. Quando voc olha uma tabela no DDIC, est visualizando a descrio de uma tabela no banco de dados subjacente. Voc no est olhando diretamente a prpria tabela de banco de dados.
1/31
H no dicionrio de dados do R/3 trs tipos de tabelas: Transparentes, Pool e Cluster. O primeiro tipo o mais comum e provavelmente sempre ser o tipo a ser utilizado ao se criar uma nova tabela em customizaes do sistema. Pool e cluster so tipos de armazenamentos proprietrios da SAP. Segue abaixo uma comparao entre os trs tipos de tabela: Transparente: Uma tabela transparente no dicionrio tem relacionamento umpara-um com uma tabela no banco de dados. Sua estrutura no dicionrio de dados do R/3 corresponde a uma nica tabela de banco de dados. Para cada definio de tabela transparente no dicionrio, h uma tabela associada no banco de dados. A tabela de banco de dados tem o mesmo nome, o mesmo nmero de campos e os campos tm os mesmos nomes que a definio de tabela do R/3. Quando examinar a definio de uma tabela transparente do R/3, voc pode achar que est olhando para a prpria tabela de banco de dados. Pool: Uma tabela de pool no R/3 tem um relacionamento muitos-para-um com uma tabela no banco de dados. Para uma tabela no banco de dados, h muitas tabelas no dicionrio de dados do R/3. A tabela no banco de dados tem um nome diferente do das tabelas no dicionrio de dados, tem um nmero de campos diferente e os campos tambm tm nomes diferentes. O R/3 utiliza pools de tabela para armazenar um grande nmero (dezenas a milhares) de tabelas muito pequenas (aproximadamente de 10 a 100 linhas cada uma). Os pools de tabela reduzem a quantidade de recursos de banco de dados necessrios quando muitas tabelas pequenas tm de ser abertas ao mesmo tempo. A SAP os utiliza para dados de sistema. Cluster: So utilizadas para armazenar dados de algumas (aproximadamente de 2 a 10) tabelas muito grandes. As tabelas de cluster seriam utilizadas quando essas tabelas tivessem uma parte de suas chaves primrias em comum e se os dados nessas tabelas fossem todos acessados simultaneamente. Os clusters de tabela contm menos tabelas que os pools de tabela e, diferente dos pools de tabela, a chave primria de cada tabela dentro do cluster de tabelas comea com o mesmo campo ou campos. As linhas das tabelas de cluster so combinadas em uma nica linha no cluster de tabelas. As linhas so combinadas com base na parte da chave primria que elas tm em comum. Assim, quando uma linha lida de qualquer uma das tabelas no cluster, todas as linhas relacionadas em todas as tabelas de cluster tambm so recuperadas, mas apenas uma nica operao de I/O necessria. Um cluster vantajoso no caso em que os dados so acessados a partir de mltiplas tabelas simultaneamente e essas tabelas tm pelo menos um de seus campos de chave primria em comum. As tabelas de cluster reduzem o nmero de leituras do banco de dados e assim melhoram o desempenho. As tabelas de pool e de cluster so normalmente utilizadas somente pela SAP e no pelos desenvolvimentos dos clientes, provavelmente por causa do formato proprietrio dessas tabelas dentro do banco de dados e por causa das restries tcnicas colocadas sobre sua utilizao dentro dos programas ABAP/4, como a seguir: No se pode criar ndices secundrios; No se pode utilizar select distinct ou group by; No se pode utilizar SQL nativo; No se pode especificar nomes de campos depois da clusula order by. A nica variao permitida order by primary key. Curso de ABAP Capitulo 3 2/31
No caso especfico das tabelas de cluster, no possvel realizar leitura atravs de joins, nem a criao de views.
3/31
Os nomes de todas as tabelas, domnios e elementos de dados ou demais objetos criados no minisap, devem iniciar com Y ou Z. Voc no pode utilizar qualquer outro caractere no comeo; todos os outros so reservados pela SAP. O sistema R/3 impe essa conveno; voc obter uma mensagem de erro se tentar criar um objeto que tem um nome que no se adapte a essas convenes. Os nomes de campos podem comear cm qualquer caractere. Entretanto, certas palavras so reservadas e no podem ser utilizadas como nomes de campo. A tabela TRESE contm a lista completa das palavras reservadas. Para acess-la, digite a transao SE11.
Top-down
Primeiro voc cria a tabela, depois os elementos de dados e os domnios medida que voc avana.
Depois de criar um objeto Data Dictionary, voc o ativar. Ativar um objeto simples voc simplesmente deve pressionar o boto Active. Isso altera o status do objeto para ativo. Um objeto deve estar ativo antes de poder ser utilizado. Por exemplo, se tentar utilizar um elemento de dados inativo ao criar um campo, voc obter uma mensagem dizendo que o elemento de dados no existe nem est ativo. Sua resposta seria ativar o elemento de dados.
4/31
Se alterar um objeto, deve ativ-lo novamente para as alteraes tornarem-se efetivas. Se voc salvar as alteraes, mas no ativar o objeto, os objetos que se referem a ele no sabero das alteraes.
Criando Domnios
Para exercitarmos a criao de domnios, estaremos usando a tabela de domnios, existentes no apndice A da apostila. Execute a transao SE11; Na tela do Abap Dictionary, selecione a opo Domain, e digite o nome do domnio a ser criado; Clique o boto Create;
5/31
Na tela Dictionary: Maintain Domain, voc especifica o texto curto, o tipo de dado(voc poder digitar o tipo desejado ou pressionar a tecla de funo F4), um comprimento de campo e opcionalmente um comprimento de sada. Estes itens so explicados nas sees seguintes. Aps digitar essa informaes pressione o boto salvar; Aparecer um janela de dilogo solicitando a classe de desenvolvimento, em nosso treinamento estaremos utilizando a classe temporria $TMP, para isso basta clicar no boto, LOCAL OBJECT.
Em seguida clique no boto Activate, na barra de ferramenta Standard, na parte superior da janela, ou pressione CTRL + F3.
6/31
campos do tipo de dados DATS(data) e TIMS(hora) so automaticamente formatados com separadores em uma lista de sada ou quando so exibidos na tela. Na entrada, eles tambm devem estar no formato de data ou hora ou uma mensagem de erro emitida para o usurio. Os tipos de dados mais comumente utilizados so listados na tabela abaixo:
Tipo
CHAR DEC DATS TIMS INT1, INT2, INT4 NUMC
Descrio
Strings de caractere(mximo de 255 caracteres) Valores decimais(comprimento mximo de 31) Campo Date Campo Time Valores inteiros Campo de caractere que pode conter apenas numricos
Uma dica, voc sempre deve pressionar a tecla Enter depois de preencher o campo tipo de dados. Pressionar Enter causa a alterao da tela baseada no tipo de dado que voc especificou. Se o tipo de dado um tipo numrico com sinal, uma caixa de seleo Sign aparecer. Para campos que permitem decimais, um campo Decimal Places aparecer. Para campos de caractere, uma caixa de seleo LowerCase.
Na caixa de dilogo que aparecer em seguida, selecione a opo Data Element, e pressione ENTER.
Na tela do Dictionary: Maintain Data Element, voc especificar um texto curto, nome de domnio para o elemento de dados, rtulos na aba Field Label e um cabealho, que so explicados abaixo. A documentao tambm pode ser criada depois que o elemento de dados foi salvo.
8/31
O campo Short Text descreve um contexto de negcio para um domnio. Por exemplo, um cdigo de bairro um contexto de negcio especfico para um domnio Z01_DO_NUM4, ento ele seria uma descrio apropriada para um elemento de dados. O usurio final ver essa descrio se solicitar ajuda F1 para um campo que foi criado utilizando esse elemento de dados.
Os campos Field Label e Header
A aba Field label contm quatro campos de texto. Os primeiros trs so rtulos de campo. Quando qualquer campo aparece em uma tela(como um campo de entrada em uma tela de entrada), um dos campos curtos, mdios ou longos aparecero esquerda dele como um rtulo de campo. O programador escolhe um desses rtulos de campo quando ele cria uma tela. O contedo do campo Header aparecer como um cabealho de coluna no topo das listas.
A documentao de elemento de dados
Depois que voc salva os elementos de dados, um boto Documentation aparece na barra de ferramentas Application, de modo que voc possa armazenar texto na forma livre. O usurio v esse texto quando solicita ajuda F1. Em outras palavras, quando um campo de tabela que utiliza esse elemento de dados exibido em uma tela, o usurio pode colocar o cursor nesse campo e pressionar F1 para exibir a documentao que voc digitou aqui. Quando voc v a tela de Documentation, a primeira linha conter os caracteres &DEFINITION&. Isso um ttulo; no altere essa linha. Digite sua documentao comeando na linha dois.
Criando Tabelas
Para criar uma tabela transparente, digite a transao SE11; Selecione a opo Tables e digite o nome da tabela, em seguida pressione create(F5).
9/31
Nesta tela especifica o texto curto, a classe de remessa, os nomes dos campo, um nome de elemento de dados para cada campo e seleciona os campos de chave primria.
10/31
O campo short Text utilizado para os mesmos propsitos que os campos Short Text de domnio. O usurio final no ver essa descrio em qualquer lugar, mas o desenvolvedor ver quando trouxer tona uma lista de tabelas.
O campo Delivery Class
O valor no campo Delivery Class identifica o proprietrio dos dados nesta tabela. O proprietrio responsvel pela manuteno do contedo da tabela. Nas tabelas de cliente, voc deve sempre inserir um A aqui, que indica que a tabela contm dados de aplicativo possudos apenas pelo cliente. Outros valores inseridos no campo so teis somente para a SAP e indicam que ele possui os dados.
O Campo Tab. Maint. Allowed
Marcar a caixa de seleo Tab. Maint. Allowed faz com que o caminho de menu Utilities>Create Entries seja ativado. Depois de ativar a tabela e escolher esse caminho de menu, a tela Table Insert exibida, permitindo que voc digite dados em sua tabela. til para teste e entrada manual de quantidades pequenas de dados. Se a caixa de seleo Tab.Maint.Allowed estiver em branco, o caminho de menu Utilities->Create Entries estar acinzentado.
A coluna Field Name
Na metade inferior da tela voc pode inserir nomes de campo na coluna Field Name. Os campos de chave primria devem aparecer primeiro nesta lista e devem ser indicados por uma marca de verificao na coluna Key. Um nome de elemento de dados deve ser inserido direita de cada nome de campo. Ao criar uma tabela, voc dever inserir como primeiro registro o campo MANDT, na coluna Field e MANDT na coluna field Type. Para definir um campo como chave primria, basta marcar o checkbox em frente ao campo desejado, na coluna Key. Se o campo deve ser preenchido , marque o checkbox na coluna Init. Para ativar a tabela criada, clique no boto salvar. Para checar se existem erros na tabela, clique no boto Check. Para ativar a tabela , clique no boto Activate. Aps adicionar os campos de sua tabela, voc dever salvar a tabela, clicando no boto SAVE(CTRL+S) e configurar o TECHNICAL SETTINGS. Clique no boto Tecchnical Settings, na barra de ferramentas na parte superior da tela.
11/31
Aps preencher os campos Data Class e Size category, clique em salvar e pressione a tecla de funo F3, ou clique no boto BACK. Ative a tabela clicando no cone Activate.
Classe de dados
A classe de dados determina o tablespace a que a tabela atribuda.(O termo tablespace se aplica a banco de dados Oracle. Para informix, substitua pelo termo DBS space.) Um tablespace um arquivo fsico no disco que utilizado para armazenar tabelas. Cada tabela atribuda a um tablespace. As tabelas com caractersticas semelhantes normalmente so agrupadas em um tablespace, assim tablespaces so as unidades administrativas utilizadas pelo DBA para gerenciar o banco de dados. Por exemplo, as tabelas que crescem rapidamente estaro agrupadas em um tablespace em um disco com muito espao livre. Cada classe de dados tem um tablespace associado. Quando voc ativa uma tabela, ela criada no tablespace associado a essa classe de dados. Se voc altera a classe de dados quando a tabela est ativa, nada acontece; ela no se move para outro tablespace. As classes de dados importantes so: - APPL0 ou dados mestres. Escolhendo APPL0(dado-mestres), significa que a tabela no atualizada com freqncia e cresce lentamente. Ela ser colocada em um tablespace com tabelas semelhantes. O mestre do fabricante e as tabelas-mestres do cliente so bons exemplos de dados-mestres. - APPL1 ou dados de transao. Escolher APPL1(dados de transao), significa que a tabela se destina a ser atualizada com freqncia e crescer rapidamente. Pedidos feitos a fabricantes e pedidos recebidos de clientes so bons exemplos de dados de transaes. As tabelas que contm essas ordens tero uma classe de dados de APPL1.
12/31
APPL2 ou dado de personalizao. Escolher APPL2(dados de personalizao), significa que os contedos da tabela so determinados antes da implementao e no alteram com freqncia depois disso.
Categoria de tamanho
O campo size Category permite que voc especifique o nmero mximo de registros que espera que essa tabela armazene. Voc ir configurar o tamanho da extenso inicial e das prximas, assim como o nmero mximo de extenses permitidas por essa tabela. Uma extenso a quantidade de espao alocado para uma tabela quando criada. Se uma tabela consome esse espao, outra extenso ser alocada, fazendo com que o espao da tabela seja estendido. As categorias de tamanho so sempre de 0 a 4, mas o nmero de registros esperados em cada categoria de tamanho mudar de acordo com cada tabela baseada no comprimento de uma linha. Escolha uma categoria apropriada baseada no nmero mximo de registros que voc espera que a tabela armazene. Quando escolher uma categoria de tamanho, seja generoso. No R/3 muito melhor superestimar, que subestimar esse parmetro. Se a categoria de tamanho muito pequena e a tabela cresce mais que a alocao inicial, o RDBMS aloca outra extenso. Extenses secundrias reduzem o desempenho e exigem uma reorganizao do tablespace para serem removidas. As reorganizaes podem ser muito difceis de executar em um banco de dados grande, especialmente em um que exija alta disponibilidade. muito mais fcil reduzir uma categoria de tamanho excessivamente generoso do que aumentar uma subestimada. Para exibir o nmero de extenses alocadas para uma tabela utilize a transao DB02. Digite na caixa de comand /nDB02; Pressione o boto Detailed analysis; Digite o nome da tabela desejada; Selecione a opo Extents
Modificando Tabelas.
Depois que voc criou uma tabela, voc pode: Copi-la Exclu-la Adicionar mais campos nela Excluir os campos dela Alterar os campos dentro dela Essa seo descreve como executar estas funes.
Copiando uma tabela
Se uma tabela estiver ativa no DDIC, voc pode copi-la. Voc pode querer fazer isso se a tabela que voc quer criar for muito semelhante a uma que j existe no banco de dados. Ou, voc pode querer experimentar alguma funcionalidade de dicionrio que pouco conhecida para voc, sem querer modificar uma tabela existente.
13/31
Para copiar uma tabela, siga os seguintes passos. V para a tela do Dicionrio de dados (SE11) Selecione o menu Dictionary Objects, comando Copy... ou clique no cone Copy(CTRL+F5), na barra de ferramentas na parte superior da tela. Uma tabela no pode ser renomeada. Para alterar o nome de uma delas, voc deve copila para uma tabela diferente com o nome desejado e ento excluir a tabela original. Se voc precisar fazer isso, certifique-se de copiar tanto a estrutura como os dados da tabela.
Excluindo uma tabela
Voc pode excluir tabelas existentes de DDIC. Voc pode querer fazer isso quando uma tabela existente no for mais necessria ou se voc tiver criado uma tabela para os propsitos de experimentar funcionalidade de dicionrio que pouco conhecida para voc. Para excluir uma tabela, siga os seguintes passos. V para a tela do Dicionrio de dados (SE11) Selecione o menu Dictionary Objects, comando Delete ou clique no cone Delete(Shifit+F12), na barra de ferramentas na parte superior da tela.
Adicionando campos
Inserir um campo permite que voc posicione um campo antes de outro existente. Acrescentar um campo permite que voc adicione novos campos no fim da tabela, depois de todos os campos existentes.
Excluindo campos
Voc pode excluir campos existentes de uma tabela. Voc pode desejar fazer isso se o campo no for mais necessrio na tabela ou ser voc tiver criado um campo para os propsitos de experimentar funcionalidade de dicionrio que pouco conhecido por voc.
14/31
No sistema R/3, h quatro utilitrios gerais de navegao de dados: SE16, SM30 e SM31. Eles so similares sob alguns aspectos e ainda oferecem vrios tipos de funcionalidade
Utilizando o SE16
O SE16 o mais utilizado programa de utilitrio de navegador de dados com propsito geral. Com ele, voc pode pesquisar tabelas para linhas especficas e exibi-las, exclu-las, copi-las, adicionar novas linhas e fazer outras tarefas. Ele pode ser acessado de qualquer uma destas duas maneiras: Da Tela Dictionary: Tables/Structure: Change, escolha o caminho de menu Utilities-> Table Contents ou display or creates entrada(boto). Digite /nSE16 no campo Command. A Se16 possui vrios parmetros de configurao para exibio de campos.
Utilizando SM31 e SM30
SM31 e SM30 tambm podem ser utilizados para exibir e atualizar dados de tabela. SM31 uma verso mais antiga de SM30 que tem menos funcionalidade. O campo de entrada na primeira tela de SM30 suficientemente longo para acomodar qualquer nome de tabela; no SM31 ele tem apenas cinco caracteres de comprimento. Antes que voc possa utilizar qualquer um, um programa especial chamado dilogo de manuteno padro deve ser gerado para a tabela que voc quer exibir. Um dilogo de manuteno padro um programa ABAP/4 que voc gera. Quando voc chama SM31 ou SM30, o navegador de dados automaticamente localiza e carrega esse programa gerado. Ele oferece uma interface mais complexa e mais funcionalidade do que o SE16. Em tpicos posteriores veremos como cri-los. A maneira mais simples de dizer se voc deve utilizar SE16 ou SM31 simplesmente experimentant-los. Se um deles no funcionar, ento o outro provavelmente resolver. Se nenhum funcionar, recorra ao SM30.
15/31
Siga os seguintes passos: Preencha o campo Autorization Groups com &NC&, isso quer dizer que no utilizaremos grupo de autorizao; Preencha o campo Function Group com o nome de funo que voc possa trabalhar, por exemplo ZF01. Em seguida clique no boto FIND SCR. NUMBER(S) na parte superior da tela. Uma caixa de dilogo aparecer. Selecione a opo Propose screen number(s), para que o prprio programa de manuteno em tabelas, lhe sugira os nmero de telas possveis. Para confirmar a seleo, pressione ENTER.
Clique no boto Create na barra de ferramentas na parte superior da tela ou pressione a tecla de funo F6, para iniciar a criao das telas para manuteno na tabela desejada. Depois de concluda a gerao do programa de manuteno , digite a transao SM30 para execuo do mesmo. Curso de ABAP Capitulo 3 16/31
Chaves Estrangeiras
Uma chave estrangeira um campo em uma tabela que chave primria na outra tabela que est relacionado. O propsito do relacionamento de chave estrangeira validar os dados sendo inseridos em uma tabela de verificao contra um conjunto vlido de valores em outra tabela. A tabela que contm a chave estrangeira chamada tabela de chave estrangeira. A tabela que contm o conjunto vlido de valores chamado tabela de verificao. A verificao de chave estrangeira executada pelo usurio da interface do R/3. Quando voc digita um valor em um campo e pressiona a tecla Enter, nos bastidores a interface com o usurio formula uma instruo select para validar o campo de chave estrangeira e envia-la ao banco de dados. Se uma linha coincidente, no foi localizada na tabela de verificao, o usurio v uma mensagem padro indicando que o valor que ele digitou Curso de ABAP Capitulo 3 17/31
invlido. Se uma linha coincidente existe na tabela de verificao os valores inseridos na tela tm permisso para passar para o programa em ABAP/4 subjacente. Assim, as chaves estrangeiras j so verificadas antes de o programa receber os valores. Alm da tecla Enter, as chaves estrangeiras tambm so verificadas quando uma tecla de funo, um boto ou um item de menu selecionado. As chaves estrangeiras so verificadas apenas pela interface com o usurio. Elas no existem no banco de dados e no so verificadas se voc simplesmente emitir uma instruo update de banco de dados. Nenhuma referncia limitao de integridade so mantidas no banco de dados. Portanto, um programa em ABAP/4 incorretamente escrito pode violar a integridade referencial; ele pode inserir valores invlidos nas tabelas de banco de dados. Por essa razo, programas em ABAP/4 que precisam atualizar o banco de dados com dados provenientes de uma outra fonte que no a interface com o usurio normalmente passam esses dados por uma interface com o usurio a fim de valid-los. Para criar uma chave estrangeira: A verificao deve ocorrer em relao a um campo dentro da chave primria da tabela de verificao; Os nomes de domnio do campo de chave estrangeira e o campo de tabela de verificao devem ser os mesmos.
Criando chaves estrangeiras
Comece na Dictionary: Initial Screen (SE11); Digite o nome da tabela no campo Database Name; Escolha o boto Change; Posicione no campo que ser a chave estrangeira na sua tabela; Clique no cone Foreign Key;
18/31
No campo Check Table, digite o nome da tabela que far o relacionamento, ou seja, o nome da tabela quer ser de verificao; Pressione o boto Generate proposal; Em seguida clique no boto Copy. Ative a tabela, clicando no cone Activate ou pressionando as teclas CTRL + F3.
Entendendo a cardinalidade
A cardinalidade do relacionamento de chave estrangeira descreve, para cada valor na tabela de verificao, quantas linhas de dados so permitidas na tabela de chave estrangeira. Ela inserida na tela Create Foreign Key. A cardinalidade descrita como X:Y, onde X se refere tabela de verificao e Y se refere tabela de chave estrangeira. X pode apenas ter os valores 1 ou C e Y pode ser 1, C, N ou CN. Os valores de X significam: 1: Se o programa aplicativo exclui uma linha da tabela de verificao, tambm excluir as linhas correspondentes da tabela de chave estrangeira. Por exemplo, se o programa de aplicao remover o valor 1 da tabela de verificao, ele excluir todas as linhas da tabela de chave estrangeira onde COD_BAIRRO = 1. Em outras palavras, se houver um valor na tabela de chave estrangeira, haver sempre apenas uma linha tendo esse valor na tabela de verificao. C: possvel excluir da tabela de verificao sem excluir as linhas correspondentes na tabela de chave estrangeira. Em outras palavras, pode haver valores na tabela de chave estrangeira sem valores correspondentes na tabela de verificao. Os valores de Y significam: 1: H sempre uma e, somente uma, linha na tabela de chave estrangeira para cada linha na tabela de verificao. C: H, no mximo, uma linha na tabela de chave estrangeira para cada linha na tabela de verificao. N: H sempre pelo menos uma linha na tabela de chave estrangeira para cada linha na tabela de verificao. CN: Pode ou no haver linhas na tabela de chave estrangeira para cada linha na tabela de verificao. A cardinalidade no imposta pelo sistema R/3. Especificar a cardinalidade opcional e o sistema no verificar a cardinalidade para determinar se essa tem permisso para acontecer quando um programa em ABAP/4 atualiza uma tabela. A nica vez que a cardinalidade utilizada quando voc cria um objeto agregado no DDIC. Um objeto agregado um objeto DDIC composto de mais de uma tabela. Um exemplo de um objeto agregado uma VIEW.
Principais Tabelas de CO e FI
19/31
BKPF BSAD BSAK BSAS BSEG BSID BSIK BSIS COBK COEP COSP CSKS CSKT GLT0 GLT1 J_1AT059Z J_1AWITH J_1AWTOFF SKA1 T001S T011 T030A T894 TBSL TBSLT TGSB
Cabealho de Documentos Gerais de FI Itens de Partidas Compensadas de Clientes Itens de Partidas Compensadas de Fornecedores Itens de Partidas Compensadas de Contas do Razo Itens de Documentos Gerais de FI Itens de Partidas em Aberto de Clientes Itens de Partidas em Aberto de Fornecedores Itens de Partidas em Aberto de Contas do Razo Cabealho do Documento N. CO Referente ao Perodo Partidas no CO Referente ao Perodo Valores das Ordens de Investimento e Outras Ordens Mestre de Centro de Custo Texto de Centro de Custo Mestre da Conta do Razo (Movimentao no Perodo) Totais para General Ledger Local Cdigos de IRF (Nova Funcionalidade) Dados de Operaes de IRF Cdigo Oficial de Imposto de Renda na Fonte Mestre das Contas do Razo Encarregado da Contabilidade Estrutura de Balano L/P Operaes (Ex. "WIT" Operaes de IRF) Verses de Ledger Mestre da Chave de Lanamento Denominao das Chaves de Lanamento Divises
20/31
Denominao das Divises rea de Contabilidade de Custos Opes Bsicas Verses de Ordens Perfis de Planejador - Tabela de Entidades rea de Apropriao de Custo para Ordem Texto para rea de Apropriao de Custo para Ordem
Principais Tabelas de MM
EKBE EKKN EKKO EKPO MAKT MARA MARC MARM MBEW MKPF MSEG T134T Histrico de Documento de Compras Classificao Contbil de Documento de Compras Cabealho de Documento de Compras Item de Documento de Compras Textos breves de Materiais Mestre de Materiais Segmento C do Mestre de Materiais Unidades de Medida Avaliao do Material Cabealho de Documento de Materiais (Movimentaes) Item de Documento de Materiais (Movimentaes) Denominao dos Tipos de Material
Principais Tabelas de PP
AFKO AFPO AUFK MAST PLAF Cabealho da Ordem PCP Item da Ordem PCP Mestre de Ordens Ligao entre Materiais (Lista Tcnica) Ordem Planejada
21/31
KONV ( Condio do Item do Pedido) Knumv Kposn Kschl Kbetr : nmero da condio : item do pedido : tipo de condio : montante ou perc. da condio
VBAK ( Header Pedido ) Auart Vbtyp Vbeln : tipo da ordem : tipo documento : nmero da ordem
Vbeln Zukri+7(10)
VBAP ( Item Pedido ) Vbeln : nmero da ordem Posnr : nmero do item Matnr : material Arktx : descrio Pstyv : tipo do item
VBAP-Vbeln = LIPS-Vgbel VBAP-Vposnr = LIPS-Vgpos VBRK-Vbeln = VBRP-Vbeln VBAP-Vbeln = VBRP-Aubel VBAP-Posnr = VBRP-Aupos VBAP-Vbeln = VBRP-Vgbel VBAP-Posnr = VBRP-Vgpos No caso de faturamento antecipado
VBRP ( Item Doc. Faturamento/Billing ) Vbeln Vgbel Vgpos Aubel Aupos Vgtyp Matnr Fkimg : nmero doc.faturamento : nmero da remessa (doc.origem) : nmero do item da remessa : nmero do pedido : nmero do item do pedido : tipo do documento de origem : material : qtd. faturada
VBRP-Vbeln = J_1BNFLIN-Refkey VBRP-Posnr = J_1BNFLIN-Refitm VBRP-Vbeln = M_J1BAB-Refkey
LIPS ( Item Remessa/Delivery/Fornecimento ) Vbeln : nmero da remessa Posnr : nmero do item Vgbel : nmero do documento origem Vgpos : nmero do item origem
J_1BNFLIN ( Item Nota Fiscal ) RefKey Refitm : documento de origem : item do documento de origem Verificar chave do ndice OU PARA MELHOR PERFORMANCE M_J1BAB ( ndice por N referencia ) RefKey : documento de origem
MSEG ( Item do Documento de Material ) Mblnr Mjahr : nmero do doc. material : ano do documento do material
BKPF-Awkey = J_1BNFLIN-RefKey
BKPF ( Documento Contbil ) VBFA ( Relacionamento entre os documentos de venda ) Vbelv Posnv Vbeln Posnn : Documento precedente : Item doc.precedente : Documento Subsequente : Item doc.subsequente Awkey : documento referncia
22/31
Maurcio Mio 01/09/98 VBRK ( Header Doc. Faturamento/Billing ) Vbeln Zukri+7(10) : nmero doc.faturamento : nmero fornecimento
VBRK-Vbeln = VBRP-Vbeln
EKKO ( Header Pedido de Compra ) Ebeln :nmero do pedido de compra Knumv :nmero da condio
VBRP ( Item Doc. Faturamento/Billing ) Vbeln Vgbel Vgpos Aubel Aupos Vgtyp Matnr Fkimg : nmero doc.faturamento : nmero da remessa (doc.origem) : nmero do item da remessa : nmero do pedido : nmero do item do pedido : tipo do documento de origem : material : qtd. faturada
VBRP-Vbeln = J_1BNFLIN-Refkey VBRP-Posnr = J_1BNFLIN-Refitm VBRP-Vbeln = M_J1BAB-Refkey
KONV ( Condio do Item do Pedido) Knumv Kposn Kschl Kbetr : nmero da condio : item do pedido : tipo de condio : montante ou perc. da condio
EKPO ( Item do Pedido de Compra ) Ebeln Ebelp :nmero do pedido de compra :nmero do item do ped.de compra
J_1BNFLIN ( Item Nota Fiscal ) RefKey Refitm : documento de origem : item do documento de origem Verificar chave do ndice OU PARA MELHOR PERFORMANCE M_J1BAB ( ndice por N referencia ) RefKey : documento de origem KONH ( Condio do Programa de Remessa ) Knumh : nmero da condio
KNUMH
KONP ( Condio do Programa de Remessa Item ) Knumh Kschl Kbetr : nmero da condio : tipo de condio : montante ou perc. da condio
BKPF-Awkey = J_1BNFLIN-RefKey
RSEG (Item Doc.reviso fatura logistica) Belnr : nmero documento contabil Buzei : item doc.fatura Menge : quantidade faturada
23/31
24/31
AUSP-Atinn = CABN-Atinn AUSP-Objek = MARA-matnr por exemplo CAWNT-Atinn = CAWN-Atinn CAWNT-Spras = Sy-langu CAWNT-Atzhl = CAWN-Atzhl AUSP-Atinn = CAWN-Atinn AUSP-Atwrt = CAWN-Atwrt
AUSP ( Valores das Caractersticas ) Objek Atinn Atwrt Atflv Klart : objeto ( Ex. Cd. Material ) : cdigo interno caract. : valor da caracterstica : valor interno em pto.flutuante : tipo de classe
CAW NT ( Descrio da Caracterstica ) Atinn Atzhl Spras Atwtb : cdigo interno caracterstica : nmerador da caracterstica : idioma : descrio da caracterstica
KSSK ( Tipos de classe por material ) Objek Klart Clint : Cdigo do material : Tipo de classe : Cdigo interno do tipo de classe
KLAH ( Classes do material ) Clint Class Klart : Cdigo interno do tipo de classe : cdigo da classe : Tipo de classe
KLAH-Clint = KSSK-Clint
TVKBT ( Descrio da Agncia de Vendas ) Vkbur Spras Bzei : cdigo da agncia : idioma : descrio
25/31
M_ORDNA ( Ordem Pai - Filho ) Lead_aufnr Aufnr Maufnr : ordem pai : ordem filho : ordem superior com relao a filho
M_ORDNA-Aufnr = CAUFV-Aufnr
CAUFV ( Ordem de Produao Header ) Aufnr Objnr Plnbez Stlbez : nmero da ordem : objeto da ordem : material da ordem : material da ordem pai
COSP-Objnr = CAUFV-Objnr
COSP ( Custos Externos da Ordem Pr ) Objnr : objeto custo W rttp : categoria do valor ( Plan/Real) Kstar : classe do custo ( GGP/MOD) W og999 : valor em moeda Hrkft : chave custo
COSP-Objnr = AUFK-Objnr
AUFK ( Ordem de Produao Header Dados mestre ) Aufnr Objnr Auart : nmero da ordem : objeto da ordem : tipo da ordem
AUFK-Aufnr = AFPO-Aufnr
COSS ( Custos Internos da Ordem Pr ) Objnr W rttp Kstar W og999 : objeto custo : categoria do valor ( Plan/Real) : classe do custo : valor em moeda
COSP-Objnr = AUFK-Objnr
AFPO ( Ordem de Produao Item ) Aufnr Posnr : nmero da ordem : item da ordem
COKEY-Hrkft = COSP-Hrkft
COKEY ( Header Custos ) Hrkft Matnr Werks : chave custo : cdigo do material : centro
26/31
EINA ( Info Record Compras Dados Gerais ) Infnr Matnr Lifnr : n. registro : material : fornecedor
A017 ( Info record Material Condies ) Lifnr : fornecedor Matnr : material Ekorg : organizao compras W erks : centro Datbi : fim validade Datab : inicio validade Knumh : cdigo da condio
EINA-Infnr = EINE-Infnr
EINE ( Info Record - Dados Organizao Compras ) Infnr : n. registro Ekorg : organizao compras W erks : centro
A017-Lifnr = EINA-Lifnr A017-Matnr = EINA-Matnr A017-Ekorg = EINE-Ekorg A017-Werks = EINE-Werks
KONH-Knumh = A017-Knumh
KONH ( Condies Header ) Knumh : cdigo da condio Datbi : fim validade Datab : inicio validade
KONP-Knumh = KONH-Knumh
KONP ( Condies Item ) Knumh : cdigo da condio Kbetr : valor Kschl : tipo condio
27/31
PLKO ( Planos ou Roteiros Header ) PLNTY PLNNR PLNAL LOEKZ STATU : tipo do plano : nmero do plano : numerador : cdigo de eliminao 'x' - del : status do plano
MAPL ( Roteiros por material ) PLNTY PLNNR PLNAL LOEKZ MATNR W ERKS : tipo do plano : nmero do plano : numerador : cdigo de eliminao 'x' - del : material : centro
PLPO ( Planos ou Roteiros para Material Item ) PLNTY PLNNR PLNAL LOEKZ ZAEHL VPLTY VPLNR VPLAL : tipo do plano : nmero do plano : numerador : cdigo de eliminao 'x' - del : numerador : tipo plano de referencia : nmero do plano referencia : numerador plano referencia
TVKGR-Vkgrp = TVBVK-Vkgrp
TVGRT ( Descrio do Grupo de Vendedores ) Vkgrp Spras Bezei : grupode vendedores : idioma : descrio do grupo de vend.
28/31
VTTK ( Transporte Header ) Tknum Tdlnr Dtmeng Dtmev : transporte : transportadora : unidade peso : unidade volume
VTTK-Tknum = LTAK-Tanum
LTAK ( Ordem de Transferencia Header ) Lgnum Tanum Kquit Refnr Vbeln : depsito : N.ordem transferencia : confirmado : Referncia : Fornecimento
VTTK-Tknum = VTTP-Tknum
LTAK-Vbeln = VTTP-Vbeln
VTTP-Vbeln = LIKP-Vbeln
VBAK ( Header Pedido ) Auart Vbtyp Vbeln : tipo da ordem : tipo documento : nmero da ordem
VBKD-Vbeln = VBAK-Vbeln VBKD-posnr = 00000000
VBAP ( Item Pedido ) Vbeln : nmero da ordem Posnr : nmero do item Matnr : material Arktx : descrio Pstyv : tipo do item
29/31
A004 ( Condies para determinao preos do material ) Matnr : material Vkorg : organizao de vendas Vtweg : canal de distribuio Datbi : fim validade Datab : inicio validade Knumh : cdigo da condio Kschl : tipo de condio
KONH-Knumh = A004-Knumh
KONH ( Condies Header ) Knumh : cdigo da condio Datbi : fim validade Datab : inicio validade
KONP-Knumh = KONH-Knumh
30/31
Resumo
O Data Dictionary uma ferramenta utilizada por programas em ABAP/4 para criar e manter tabelas. H trs tipos de tabelas: transparente, de pool e de cluster. As tabelas transparentes so as mais comuns e so utilizadas para armazenar dados de aplicativo. As tabelas de pool e de cluster so principalmente utilizadas pela SAP para armazenar dados do sistema. Para criar uma tabela, voc primeiro precisa de domnio e de elementos de dados. Os domnios oferecem as caractersticas tcnicas de um campo; os elementos de dados oferecem os rtulos de campo e a ajuda F1. Os dois so reutilizveis. Os objetos de dicionrio devem estar ativos antes de poderem ser utilizados. Se fizer uma alterao para um objeto de dicionrio, voc deve reativar o objeto para que as alteraes tornem-se efetivas. Os navegadores de dados permitem que voc exiba e modifique os dados dentro de tabelas. O SE16 o navegador mais geral de dados. O SM30 e o SM31 so os outros navegadores que oferecem capacidades variadas. Voc pode criar ajuda F1 dentro de um elemento de dados pressionando o boto documentation. Dentro dessa ajuda F1, voc pode criar vnculos de hipertexto para outros documentos de ajuda F1. As chaves estrangeiras asseguram a integridade de dados executando validaes na tela e oferecem ajuda F4 para o usurio com lista de valores permissveis. A tabela de valor oferece uma proposta para a tabela de verificao e oferece ajuda F4. As tabelas de texto oferecem suporte de diversos idiomas para descries no R/3 e especialmente para ajuda F4. Dentro de uma tabela, cada campo monetrio deve ser vinculado com um campo-chave monetrio e cada campo de quantidade deve ser vinculado com um campo que contm as unidades de medida.
31/31