Você está na página 1de 22

ABAP para Funcionais

ABAP
Treinamento 2014
O que significa ABAP?

ABAP (Advanced Business Application Programming) é uma linguagem de


programação de alto nível desenvolvida pela empresa de software SAP. É a
principal linguagem utilizada no produto mais conhecido desta empresa, o 
SAP R/3, um software ERP. O ABAP tem uma sintaxe semelhante ao 
COBOL.

Responsável pelo documento: Marcelo Fengler


O que significa ABAP?

SD FI
Sales & Financial
Distribution Accounting
MM CO
Materials
Mgmt. Controlling
PP AM

R/3
Production Fixed Assets
Planning Mgmt.

QM
Quality
Client / Server PS
Project
Manage-
ment PM ABAP/4 WF
System

Plant Main- Workflow


tenance
HR IS
Human Industry
Resources Solutions

Responsável pelo documento: Marcelo Fengler


ASSISTENTE DE PERFORMANCE ( F1 )

F1 é constantemente utilizado no SAP para encontrar definições,


ajuda e informações técnicas.
A informação técnica mostra informações sobre o campo
selecionado como nome do programa, nome técnico do campo,
tabela ou estrutura e etc.

Responsável pelo documento: Marcelo Fengler


TABELA x ESTRUTURA

• Pode armazenar dados fisicamente e a estrutura não.

• Pode ter chave primária e a estrutura não.

Muitas vezes a informação que procurarmos na informação


técnica do campo está em uma estrutura e não em uma tabela,
para que possamos ter acesso aos dados gravados para a
transação em questão devemos encontrar a tabela

Responsável pelo documento: Marcelo Fengler


Trace (ST05)

A transação ST05 – Performance Trace é uma ferramenta de análise de


desempenho de acesso ao banco de dados, pode ser utilizada também
para encontrar tabelas transparentes que foram acessadas pela transação
desejada e exibir os critérios de seleção para a tabela

Responsável pelo documento: Marcelo Fengler


Encontrar a Tabela e o Campo

Como conseguir encontrar a tabela e o campo onde os dados de uma


transação em especifico é armazenada se a informação técnica mostra a
categoria de tabela como Estrutura ?

Responsável pelo documento: Marcelo Fengler


Visualizar Dados da Tabela
Visualizando dados na tabela
Exemplo: Transação MM03 -> Dados Básicos -> Peso bruto

Transação SE16 / SE16N

Responsável pelo documento: Marcelo Fengler


Modificar tabela Standard (marretar)

Através do debugger na transação SE16 é possível editar os campos NÃO


chaves de uma tabela transparente

Responsável pelo documento: Marcelo Fengler


BREAK-POINT

Break-Point define um ponto de parada em um programa, que


será acionado quando o programa for executado e ponto em que
for adicionado for executado, neste momento a execução irá
parar no break point.

Responsável pelo documento: Marcelo Fengler


DEBUGGER

Debbuger / Debugar permite visualizar em tempo de execução


do programa condições e variáveis e até mesmo modificar
valores se tiver esta autorização, é muito comum a utilização do
debbuguer para compreensão dos resultados gerados pelo
programa.

• Para iniciar o debug basta executar o comando “/H”.

• Ter definido um ponto de parada dentro do programa


executado

Responsável pelo documento: Marcelo Fengler


DEBUGGER

Principais Comandos

• Duplo clique: Exibe conteúdo Variável/Tabela Interna

• F5 Navega linha a linha do programa

• F6 Igual ao F5, porém não entra em FORM/FUNÇÂO

• F7 Sai ou executa a rotina que está no momento

• F8 Executa até o fim ou próximo break-point

Responsável pelo documento: Marcelo Fengler


DEBUGGER

Visão geral do novo debugger

Responsável pelo documento: Marcelo Fengler


Operadores Lógicos

Operadores Operador

EQ Igual =
NE Diferente <> ><
GT Maior que >
GE Maior igual a >= =>
LT Menor que <

LE Menor igual a <= =<


BEETWEN Intervalo
IS INITIAL É vazio

Responsável pelo documento: Marcelo Fengler


Variáveis de Sistema

Variáveis de Sistema mais usadas

• SY-SUBRC - Código de retorno de instruções ABAP


• SY-TABIX - Índice de tabelas internas
• SY-DBCNT - Entradas de tabela de banco de dados
processadas
• SY-DATUM - Data atual do servidor de aplicação
• SY-UZEIT - Hora atual do servidor de aplicação
• SY-UNAME - Nome do usuário
• SY-MANDT - Identificação do mandante do usuário atual
• SY-TCODE - Código de transação atual
• SY-LANGU - Código de idioma do ambiente de texto atual

Estrutura SYST na transação SE11

Responsável pelo documento: Marcelo Fengler


Conhecendo um programa ABAP

Retorno da variável SY-SUBRC

• 0 Sucesso na operação
• 4 Insucesso na operação
• 8 Insucesso na operação mas existe outras chaves

Responsável pelo documento: Marcelo Fengler


Programa e condição que disparou a mensagem

Como encontrar o motivo e o programa que disparou aquela


mensagem indesejada ?

Responsável pelo documento: Marcelo Fengler


BADI, BAPI, User Exit / Customer Exit

BADIs ou Business Add- Ins são usados ​para criar opções de


aprimoramento pré-definidos em componentes SAP que são
então adequadamente implementadas pelas soluções do setor
indivíduo , variantes do país , ou até mesmo por parceiros e
clientes

BAPI (Business Application Programming Interface) é uma


interface que permite o acesso a dados e processos dentro de
um sistema SAP.

User Exit É um programa em ABAP que é chamado por


programas standard, dentro de User Exit, é possível ler e
alterar quase todos os dados do programa SAP

Customer Exit tem a mesma finalidade das User Exits


porem são mais restritivas, porque dentro você só pode
acessar e manipular parâmetros específicos.

Responsável pelo documento: Marcelo Fengler


Como encontrar BADIs, BAPI´s e Exit´s

Existem diversas maneiras de encontrar um ponto


de ampliação BADI, BAPI e EXIT´s, algumas delas
serão exibidas agora e estão disponíveis no
documento anexo.

Transações: SMOD, SE84, SE24, SE37 entre


outras

Responsável pelo documento: Marcelo Fengler


Dump, o que devo fazer?

Responsável pelo documento: Marcelo Fengler


Dicas úteis

Dicas

• Ao analizar um programa, sempre utilize o help ( F1 )

• Para encontrar nomes de exit/badi, primeiro verifique o SDN

• O botão lista de utilizações é uma grande ferramenta

• Ao constatar um problema standard, primeiro verifique se tem


alguma nota relacionada

Responsável pelo documento: Marcelo Fengler


Dúvidas?

Responsável pelo documento: Marcelo Fengler

Você também pode gostar