Escolar Documentos
Profissional Documentos
Cultura Documentos
ABAP
SAP R/3
MÓDULO ABAP
MODULE POOL
TREINAMENTOO
- Para a programação de Diálogos, você pode usar o Screen Painter e o Menu Painter, ou
simplesmente usar a transação ( SE80 ), onde você encontrará o Object Browser.
Screen Painter
- Subrotinas ( Se necessário )
- Existe uma área de trabalho nas telas onde por exemplo, após o processamento de todos os
módulos PBO, o conteúdo das variáveis são copiados para esta outra área de trabalho com os
nomes idênticos. Isto ocorre também antes dos módulos PAI serem processados.
Layout da Tela
- Para a criação e desenvolvimento da tela, pode-se usar tanto o editor mas simples como o
editor gráfico, cujo contém várias funções bem mais fáceis de se trabalhar.
- Para a eliminação dos elementos das telas, basta clicar duas vezes com o mouse e escolher
DELETE.
- Para mover os elementos da tela, use o cursor para indicar o novo controle.
Características de Campos
- Como pode-se ver nas figuras, existem seis diferentes visões para se editar características de
um campo.
- NO caso dos campos de tela, você deve usar os códigos externos de um dicionário para defini-
los como CHAR, NUMC, INT4 e não type C, type P ou type N. Porém no caso de o campo
indicado na tela estar criado no Dicionário ABAP/4, as características são automaticamente
assumidas, caso contrário deve ser posto manualmente..
- Ao utilizar na lógica das tela dentro do módulos as variáveis, estas devem estar com
exatamente os mesmo nome para que haja a comunicação entre os processamentos do
Diálogo e do ABAP/4.
Definindo Transações
- As transações podem ser criadas de várias formas, neste caso como transação de Diálogos,
onde será especificado o nome da transação.
- Quando um usuário estiver utilizando uma tela, mesmo sendo transparente para ele, o
sistema estará realizando um grande quantidade de checagens automáticas.
- Neste caso temos três tipos de checagens automáticas como por exemplo:
- No caso de Campo Obrigatório, este será acionado apenas se o programador tiver estipulado
tal característica ao campo e no caso de Chave estrangeira, isto ocorrerá apenas quando o
campo tiver sido criado como tal no Dicionário de Dados
- Se você quiser checar os dados inseridos pelo usuário e realizar algumas consistências, você
deve usar o comando FIELD primeiramente para usar o comando MODULE, pois somente
assim você estará habilitando o campo novamente para inserção de dados no caso de erro.
- Após feito isso, deve-se bolar a lógica e usar-se dos tipos de mensagens existentes como (E) de
erro, (W) de aviso e (A) de abortagem.
- O Menu Painter permite a você definir as funções que serão usadas na sua tela, além do
status e assim designa-las à uma Barra de Menus, Barra de Botões Standard e Barra de
Botões customizadas.
- Em geral você define uma Barra de Menu para cada aplicativo e o designa a Ter um Status.
Em cada Status você consegue definir quais funções serão ativadas ou desativadas.
- As barras de Menu podem Ter até oito menus incluindo os dois menus que são do sistema,
sendo assim você pode definir até seis menus.
- Um menu pode Ter até 15 entradas, que seriam as funções e suas respectivas descrições, além
dos sub-menus e linhas de separação.
- Você deve especificar quais funções que estão ativas nos na barra de menu.
- Na barra de Botões Standard, você apenas deve colocar uma função para ativá-los.
- Na barra de botões customizados, você deve primeiramente criar os botões e então colocá-los
na barra.
10
Data : 05/10/07 CURSO DE ABAP/4 Página 10 de 25
TREINAMENTOO
- O código da função pressionada estará preenchido no campo que você definirá como formato
OK e este deve ser do tipo CHAR de tamanho 4. Este campo é conhecido como o Campo de
OKCODE, usado no Batch Input.
- É recomendado usar um Backup para este campo, para evitar que este receba algum valor ao
mudar de telas.
- Além deste campo, pode se ler o valor da função pressionada através do campo SY-UCOMM
que pertence a tabela do sistema chamada SYST.
11
Data : 05/10/07 CURSO DE ABAP/4 Página 11 de 25
TREINAMENTOO
- Para Campos de Checkbox e Radiobuttons você deve definir uma campo de um byte de
tamanho do tipo input/output e um campo de texto.
- No caso de se querer uma caixa de diálogo, você deve especificar um Título para a caixa
primeiramente. Então posicionar o cursor sobre o título e clicar em Elemento Gráfico para
mudar para o modo de seleção de características gráficas.
- No caso de subtelas, selecione uma posição na tela que será o canto superior esquerdo e
pressione o botão de Subtela. O modo de seleção mudará para que você possa o tamanho da
sua subtela. Porém antes você deverá especificar o nome desta subtela.
12
Data : 05/10/07 CURSO DE ABAP/4 Página 12 de 25
TREINAMENTOO
- No caso de Subtelas, você define também através deste botão de elemento gráfico o fim da
área da subtela.
13
Data : 05/10/07 CURSO DE ABAP/4 Página 13 de 25
TREINAMENTOO
Definindo Ícones
- No momento em que você está criando o campo, você tem a opção de associar ao elemento
gráfico um ícone que o SAP tenha.
- O tamanho deste campo para receber um ícone deve Ter no mínimo 6 bytes de tamanho que
seria no caso sem textos de ícone, ou maior para que receba os textos.
- Se quiser Ter certeza que o ícone vai ocupar o mínimo espaço possível na sua tela, deve-se
criar um campo também com um mínimo de 6 bytes de comprimento, porém com apenas 2
bytes de comprimento visível.
14
Data : 05/10/07 CURSO DE ABAP/4 Página 14 de 25
TREINAMENTOO
- Se você definir um campo na tela, o qual esteja criado no dicionário de dados e este possua
um domínio com valores fixo
15
Data : 05/10/07 CURSO DE ABAP/4 Página 15 de 25
TREINAMENTOO
- No caso das mensagens de erro (E) e warning (W), a tela é refeita sem passar pelos modulos
do PBO, os textos são mostrados e apenas os campos referenciados são aptos para entrada de
dados novamente.
- Note que sem o uso do comando FIELD, no caso da mensagem de erro se executada, o campo
que contém o dado com problema não será reabilitado e apenas será mostrado a mensagem
de erro.
16
Data : 05/10/07 CURSO DE ABAP/4 Página 16 de 25
TREINAMENTOO
- Determinar todos os nomes de campos com o comando FIELD para o comando CHAIN
- Se o usuário passa por cima de uma mensagem de Aviso, não mudando o valor dos campos, o
processamento continua a partir do módulo após o comando de mensagem de aviso.
17
Data : 05/10/07 CURSO DE ABAP/4 Página 17 de 25
TREINAMENTOO
- Na memória do SAP, você pode guardar valores sob um Parameter iD. Estes valores são
guardados para cada sessão de usuário e levados através das sessões.
- Você pode definir estes comandos nos atributos do campo em questão, ou no caso do campo
já Ter isso como referência no Dicionário de Dados.
18
Data : 05/10/07 CURSO DE ABAP/4 Página 18 de 25
TREINAMENTOO
- No caso de usar SET SCREEN, você deverá usar o comando LEAVE SCREEN que
assumirá o valor da próxima tela que estiver na memória.
- Pode se usar também o comando LEAVE TO SCREEN ##, que irá direto para a tela
designada pelo comando, independentemente do que estiver na memória.
- Usando CALL SCREEN para inserir um processamento de uma ou mais telas antes da
que seria a próxima tela. O processamento continua normalmente após a saída desta tela.
19
Data : 05/10/07 CURSO DE ABAP/4 Página 19 de 25
TREINAMENTOO
- STARTING AT e ENDING AT, pois assim você especifica em que lugar da tela
começara e terminara a exibição de sua tela
20
Data : 05/10/07 CURSO DE ABAP/4 Página 20 de 25
TREINAMENTOO
- Se na Interface GUI, o campo tiver sido definido como função do tipo ‘E’, o modulo com a
adição AT EXIT COMMAND será executado antes das checagens automáticas dos campos.
21
Data : 05/10/07 CURSO DE ABAP/4 Página 21 de 25
TREINAMENTOO
Tipos de Funções
- Os tipos de funções informam ao processador das telas como interpretar o código de função
estipulado.
- Por exemplo, no caso do tipo ‘E’, irá executar o modulo AT EXIT COMMAND, porém
no caso do tipo ‘T’, este irá tentar executar o código de função como se fosse uma
transação no SAP.
22
Data : 05/10/07 CURSO DE ABAP/4 Página 22 de 25
TREINAMENTOO
- Ao definir um Texto para uma função você pode escolher entre este texto ser estático ou
dinâmico.
- No caso do texto estático, nunca poderá ser mudado durante a execução do programa,
porém no caso do dinâmico, este texto será determinado pelo próprio programa durante a
execução.
- Você pode usar a opção CHANGE TEXT TYPE para converter o tipo de texto.
- Além destes dois tipos de texto, como vimos anteriormente em relação aos comandos, você
pode definir um Ícone para o texto.
- Estes ícones estão em uma lista de ícones que pode ser acessada pelo botão Propose Icons.
- Você pode definir uma Área de Menu através da transação SE93, que criará apenas uma
interface GUI, sem lógica de processo ou amarração a telas, apenas o menu.
- Esta transação não tem nenhum código em especial, apenas funciona com o comando CALL
TRANSACTION.
- Estas Áreas de Menu podem ser adicionadas a determinados usuários para passarem a ser o
seu MENU PRINCIPAL, colocando este código de transação no PROFILE do usuário.
24
Data : 05/10/07 CURSO DE ABAP/4 Página 24 de 25