Você está na página 1de 19

Debug sem Mistérios

Treinamento básico de Debug para


analistas funcionais
Conteúdo do treinamento

 O que é um programa ABAP ?


Como acionar o Debug ?
Quais são os comandos do Debug ?
Debugando...
Estrutura de um Programa
ABAP
Início
Definição de tabelas
Definição das variáveis
Meio
Lógica do programa
Sub-rotinas (performe calcula_ir)
Fim
Imprime relatório
---------------------------------------------------
form calcula_ir.
......
Endform.
Outros tipos de programas
 Field Exit
Código de programa associado a um campo de
tela para fazer validação Ex. CGC
* Não é possível debugar.

 User exit
São pontos pré-determinados em um programa
STANDARD, que chamam sub-rotinas inicialmente
em branco, onde pode ser inserido códigos
customizados.
Outros tipos de programas
 Funções
Recebem parâmetros na entrada e executam
alguns processos com os mesmos, podem ou não
retornar dados.
Conceitos Básicos ABAP
Declarações
Tabelas
TABLES: MARA, MARC.
Tabelas internas
DATA: BEGIN OF t_ekpo OCCURS 0.
ebeln TYPE ekpo-ebenl,
ebelp TYPE ekpo-ebelp,
DATA: END OF t_ekpo.
Variáveis
DATA: v_tipo(2) TYPE c.
Contantes
CONSTANTS: c_vivo(4) TYPE c VALUE ‘VIVO’
Comandos Básicos
Comandos de verificação
IF – Só executa o processamento se a condição testada for válida
Ex. IF vbak-auart EQ ‘ZLVC’.
ELSE – Executa o processamento se a verificação ‘IF’ não for verdadeira
ENDIF.

CHECK – Se a verificação não for verdadeira abandona o processamento


Ex. CHECK vbak-auart EQ ‘ZLVC’.

CASE vbak-auart.
WHEN ‘ZLVC’.

WHEN ‘ZLDO’.

WHEN OTHERS.
ENDCASE.
Comandos Básicos
Comandos de leitura de registros
LOOP AT t_vbak.

ENDLOOP.

LOOP AT t_vbak WHERE auart EQ ‘ZLVC’.

ENDLOOP.

READ TABLE t_vbap WITH KEY auart EQ t_vbak-auart.


READ TABLE t_vbap INDEX 1.
Comandos Básicos
Comandos de modificação de dados
INSERT – Insere registros em tabelas transparentes
Ex. INSERT zcaixa_movimip
DELETE – Elimina dados de tabelas transparentes e tabelas internas
Ex. DELETE FROM zcaixa_movimip WHERE vkorg EQ v_empresa
DELETE ADJACENT DUPLICATES FROM t_vbak COMPARING vbeln
DELETE zcaixa_movimip FROM TABLE t_caixa
MODIFY – Modifica registros de tabelas transparentes e tabelas internas
Ex. MODIFY t_caixa INDEX sy-tabix
UPDATE – Atualiza ou insere registros em tabelas transparentes
Ex. UPDATE zcaixa_term SET status EQ ‘Aberto’
WHERE vkbur EQ v_loja
APPEND – Insere registros em tabelas internas
Ex. APPEND wa_caixa TO t_caixa
APPEND t_caixa
Debug sem Mistérios
Comandos de seleção de dados

SELECT vbeln vbelp auart (campos)


FROM vbak (tabela)
INTO TABLE t_vbak (tabela interna que vai receber os dados)
WHERE vbeln EQ v_ordem (critério de seleção)

FOR ALL ENTRIES – busca dados a partir de uma tabela interna


ENDSELECT – funciona como se fosse um loop
SELECT SINGLE – trás apenas o primeiro registro que encontrar
SELECT UP TO 1 ROWNS – igual ao anterior
INNER JOIN – seleciona campos em mais de uma tabela
SELECT * - busca todos os campos da tabela
Debug sem Mistérios
Outros comandos

MOVE – Mover dados para variáveis ou campos


Ex. MOVE v_ordem TO t_vbak-vbeln
WRITE – Serve para escrever dados e informações a serem mostradas
em relatórios de saída. Serve também para conversão de variáveis,
mas a sua maior utilização é para saída de relatórios.
SY-SUBRC – Retorno da execução de processos, quando retorna zero
é sinal que o comando anterior foi executado com sucesso.
Debug sem Mistérios

O que é um programa ABAP ?


Como acionar o Debug ?
Quais são os comandos do Debug ?
Debugando...
Como acionar o Debug???
/H  Acionamento Direto

 Acionamento por
o Brake points

 Acionamento por
Brakes lógicos
Comandos do Debug
 F5 - Debuga passo á
passo o programa

 F6 - Debuga passo á
passo sem explorar
funções e sub-rotinas

 F7 - Volta para sub-rotina


atual

 F8 - Executa direto.
Debugando...

•Entender a lógica do desenvolvimento


•Prever erros
•Simular/Forçar situações
•Alterar valores
Consulta de dados
 Leitura de dados em tabela interna
 Verificação de número de registros de
uma tabela interna
Leitura de dados de uma tabela
transparente
Leitura de dados em uma estrutura
(work area)
Verificação de retornos de acesso a
banco de dados
Manipulação de dados
Alteração do modo de execução de
Batch Input
Alteração de valores em variáveis
Deleção e inserção de registros em
tabelas internas e estruturas
Alteração de parâmetros de seleção
Exibição de todos dados de uma tabela interna
 OBRIGADO E BONS ‘DEBUGS’

Você também pode gostar