quarta-feira, 11 de setembro de 2013

Tabelas Internas / ITAB's e Estruturas Profundas

Olá,

Hoje, mais um tópico sobre o tema ABAP Dictionary, mostrarei alguns exemplos com a utilização de dois outros pontos que também compreende este assunto. Trata-se das Tabelas Internas / ITAB's e Estruturas Profundas.

Quando inserimos uma tabela interna como um componente de estrutura, essa se torna uma estrutura profunda. Podemos definir tabelas internas ou ITABs usando uma estrutura de linhas existentes.

E uma estrutura profunda é composta, pelo menos, por uma tabela. O componente dessa tabela tem um nome próprio com o qual ele pode ser abordado como uma tabela interna normal. Por sua vez, uma tabela interna pode ter uma estrutura profunda como categoria de linha. 

Abaixo, apresento os print's dos exemplos desenvolvidos em meu ambiente.

Programa com o uso de ITAB's / Tabelas Internas.







Programa com o uso de Estruturas Profundas.






Como pode notar, no primeiro exemplo fiz duas listagens simples. A primeira listagem com os dados contidos na tabela do banco de dados e a segunda da tabela interna / ITAB. A tabela de banco de dados está compreendida numa ordem (ID Aero e voo) enquanto que a da tabela interna está em outra (por data).

No segundo exemplo, fiz uso de um programa simples com entrada de dados e ao fazer a listagem, apresentar tais dados que estão atrelados as informações que foram digitadas pelo usuário (no caso, os 3 tipos de telefones para contato) e listá-los também.

Bom, é isso aí.
Abraço e até o próximo post!

segunda-feira, 9 de setembro de 2013

Estruturas Simples e Aninhadas

Olá,

Continuando com o tema ABAP Dictionary, hoje abordarei dois pontos que também competem a este assunto Trata-se das Estruturas Simples e Aninhadas. Em seguida, mostrarei uns print's de uma solução que desenvolvi no meu ambiente.

Falando sobre o uso de estrutura simples em ABAP, a forma de estrutura mais simples é o sequenciamento de campos por meio do uso de elementos de dados. Isso cria sempre uma estrutura plana. Um objeto de dados baseado nesse tipo de estrutura é sempre unidimensional. Para abordar os elementos individuais (componentes) da estrutura utiliza-se o nome da estrutura, um hífen e o nome dos componentes.

Já no que diz respeito à estrutura aninhada, podemos incluir outro objeto estruturado na estrutura e atribuí-la a um componente. Esse componente se refere ao objeto estruturado e o novo objeto de dados é agora descrito como uma estrutura aninhada. Estruturas como essas podem ser aninhadas uma nas outras de qualquer modo.

Bom, vamos aos print's...

Programa com o uso de Estrutura Simples e Aninhada.







Como pode ver, foi utilizado ambas as estruturas para possibilitar a execução do programa ABAP.

Bom, basicamente é isso aí.
Um abraço e ótima semana para todos nós!

sábado, 7 de setembro de 2013

ABAP Dictionary

Olá,

Encerrando uma pequena série e começando uma nova, trago para o blog um tema do qual percorrerei nos futuros post's. Trata-se do ABAP Dictionary. Nas próximas publicações você poderá notar maiores funcionalidades que há na utilização deste importante recurso dentro do ambiente de desenvolvimento.

Sobre o ABAP Dictionary, ele possuí 3 categorias de tipo diferentes. A saber:
  • Elementos de Dados: Descrevem um tipo elementar, mediante a definição da categoria de dados, do comprimento e, possivelmente, das casas decimais.
  • Estruturas: Compostas por componentes que podem ter qualquer tipo.
  • Tipos de Tabelas: Descrevem a estrutura de uma tabela interna.

Para este primeiro exemplo, fiz uso da categoria de dados básicas, TEXT Elements, Domínios e Data Elements.

Qualquer tipo complexo definido pelo usuário pode ser criado com base nesses tipos básicos. Os tipos são, por exemplo, utilizados em programas ABAP para definir os tipos de parâmetros de interface dos módulos de função. Já com relação a ligação ao ambiente de desenvolvimento e tempo de execução, ele é ativamente integrado. Cada modificação tem efeito imediato nos programas de telas ABAP relevantes.

Bom, vamos aos print's deste pequeno exemplo...












Como comentei no início, fiz uso da categoria de dados básicas, Domínios, Data Elements e TEXT Elements. Sendo que no TEXT Elements, eu aproveitei o recurso para capturar o texto para os parameters da aplicação por referência do dictionary (vide imagem 06). 

Bom, basicamente é isso aí.
Abraço e bom final de semana!