ABAP - Advanced Business Application Programming
Academia ABAP
13/01/2014
Marcos Aurélio Paixão
ABAP - Advanced Business Application Programming
Agenda
• Objetivos do treinamento;
• Cronograma de atividades;
• Sobre a ...
ABAP - Advanced Business Application Programming
Objetivos do treinamento
• Conhecer a linguagem de
programação ABAP;
• Pr...
ABAP - Advanced Business Application Programming
Cronograma de atividades
• Segundas, quartas e sextas-feiras;
• De 19:00 ...
ABAP - Advanced Business Application Programming
Sobre a SAP
• Os primeiros passos foram dados em
1972 por cinco engenheir...
ABAP - Advanced Business Application Programming
Sobre a SAP
• A sigla SAP é uma abreviação, em
língua alemã, para o acrôn...
ABAP - Advanced Business Application Programming
Sobre a SAP
• Em 1995, a SAP AG tinha mais de 6.600
colaboradores ao redo...
ABAP - Advanced Business Application Programming
Sobre a SAP
• Hoje, mais de 183.000 empresas
possuem o produto da SAP
imp...
ABAP - Advanced Business Application Programming
Sobre a SAP
ABAP - Advanced Business Application Programming
ERP (Enterprise Resource Planning)
• ERP é uma abreviação em língua
ingle...
ABAP - Advanced Business Application Programming
Arquitetura do SAP ECC
ABAP - Advanced Business Application Programming
Estrutura do Servidor de Aplicações
ABAP - Advanced Business Application Programming
Módulos SAP
ABAP - Advanced Business Application Programming
Módulos SAP
• Sales & Distribution
– Gerenciamento integrado
de todas tar...
ABAP - Advanced Business Application Programming
Módulos SAP
• Production Planning
–O sistema de PCP
ajustável para todos ...
ABAP - Advanced Business Application Programming
Módulos SAP
• Quality Management
– O sistema para o controle
da qualidade...
ABAP - Advanced Business Application Programming
Módulos SAP
• Human Resources
Management
– Processamento integrado de
adm...
ABAP - Advanced Business Application Programming
Módulos SAP
• Financial Accounting
–Uma ampla visão do
desempenho que inc...
ABAP - Advanced Business Application Programming
Módulos SAP
• Controlling
–Contabilidade de custos,
desde a contabilidade...
ABAP - Advanced Business Application Programming
Módulos SAP
• Asset Management
–O gerenciamento
completo de todos os
ativ...
ABAP - Advanced Business Application Programming
Módulos SAP
• Project Information
System
–A integração de todas as
áreas ...
ABAP - Advanced Business Application Programming
Módulos SAP
• Business Workflow
–Definição de processos
de negócios, com
...
ABAP - Advanced Business Application Programming
Módulos SAP
• Executive Information
System
–Acesso rápido aos dados,
fato...
ABAP - Advanced Business Application Programming
Linguagem de Programação ABAP
ABAP - Advanced Business Application Programming
Estrutura: ABAP Work Process
ABAP - Advanced Business Application Programming
Estrutura das Aplicações
ABAP - Advanced Business Application Programming
Sintaxe ABAP
• O código de um programa ABAP
consiste de comentários e
dec...
ABAP - Advanced Business Application Programming
Sintaxe ABAP
• As declarações podem conter várias
linhas sendo que cada l...
ABAP - Advanced Business Application Programming
Instruções ABAP
• Declarativas;
• Modularização;
• Controle;
• Chamada;
•...
ABAP - Advanced Business Application Programming
Instruções ABAP
• Declarativas:
Essas instruções definem os tipos de
dado...
ABAP - Advanced Business Application Programming
Instruções ABAP
• Modularização:
Definem o processamento de instruções em...
ABAP - Advanced Business Application Programming
Instruções ABAP
• Controle:
Utilizados para o processamento em
bloco de a...
ABAP - Advanced Business Application Programming
Instruções ABAP
• Chamada:
Utilizados para a chamada de blocos ou
funções...
ABAP - Advanced Business Application Programming
Instruções ABAP
• Operacional:
São utilizadas para a manipulação de
dados...
ABAP - Advanced Business Application Programming
Instruções ABAP
• Banco de dados:
Estas instruções usam a interface de
ba...
ABAP - Advanced Business Application Programming
Instruções ABAP
• Open SQL:
Subconjunto da linguagem padrão
SQL92, que co...
ABAP - Advanced Business Application Programming
Instruções ABAP
• Native SQL:
São passadas diretamente da interface
de ba...
ABAP - Advanced Business Application Programming
Tipos de dados
• Os tipos de dados podem ser dividos
em três categorias:
...
ABAP - Advanced Business Application Programming
Tipos Elementares (Tamanho Fixo)
Cód. Descrição
TEXTO
C Caracter
N Caract...
ABAP - Advanced Business Application Programming
Tipos Elementares (Tamanho Variável)
Cód. Descrição
STRING
STRING String ...
ABAP - Advanced Business Application Programming
Hierarquia (Tipos de Objetos)
ABAP - Advanced Business Application Programming
Hierarquia (Tipos de Objetos)
ABAP - Advanced Business Application Programming
Hierarquia (Tipos de Objetos)
ABAP - Advanced Business Application Programming
Tipos Complexos
• Tipos complexos são feitos de outros
tipos. Eles permit...
ABAP - Advanced Business Application Programming
Tipos Complexos: Estruturas
• Uma estrutura é uma seqüência de
quaisquer ...
ABAP - Advanced Business Application Programming
Tipos Complexos: Tabelas Internas
• Tabelas internas consistem em uma
sér...
ABAP - Advanced Business Application Programming
Tipos de Dados Complexos
• Estrutura com séries de tipos de
dados element...
ABAP - Advanced Business Application Programming
Tipos de Dados Complexos
• Uma tabela interna com tipos de
linhas com tip...
ABAP - Advanced Business Application Programming
Tipos de Dados Complexos
• Tabelas internas com as linhas com
estruturas ...
ABAP - Advanced Business Application Programming
Tipos de Dados Complexos
• Estruturas com estruturas como seus
componente...
ABAP - Advanced Business Application Programming
Tipos de Dados Complexos
• Estruturas contendo tabelas internas
como seus...
ABAP - Advanced Business Application Programming
Tipos de Dados Complexos
• Tabelas internas com as linhas
contendo tabela...
ABAP - Advanced Business Application Programming
Tipos por Referência
• Tipos por referência descrevem
objetos de dados qu...
ABAP - Advanced Business Application Programming
Banco de dados lógico
• São programas especiais em ABAP que
são responsáv...
ABAP - Advanced Business Application Programming
Banco de dados lógico
• Estrutura
–A estrutura de um banco de dados
lógic...
ABAP - Advanced Business Application Programming
Banco de dados lógico
• Seleção
–Define os campos de entrada para a
seleç...
ABAP - Advanced Business Application Programming
Banco de dados lógico
• Programa de Banco de Dados
– O programa de banco ...
ABAP - Advanced Business Application Programming
Banco de dados lógico
ABAP - Advanced Business Application Programming
Banco de dados lógico
ABAP - Advanced Business Application Programming
Banco de dados lógico
• A principal utilização de banco de dados lógico é...
ABAP - Advanced Business Application Programming
Acessando o aplicativo SAP
• Na área de trabalho, clicar sobre o
botão SA...
ABAP - Advanced Business Application Programming
Acessando o aplicativo SAP
• Em Conexões, com o botão direito,
clicar em ...
ABAP - Advanced Business Application Programming
Acessando o aplicativo SAP
ABAP - Advanced Business Application Programming
Acessando o aplicativo SAP
ABAP - Advanced Business Application Programming
Editor ABAP
• O editor de programação ABAP/4 do
SAP pode ser encontrado a...
ABAP - Advanced Business Application Programming
Editor ABAP
ABAP - Advanced Business Application Programming
Editor ABAP
ABAP - Advanced Business Application Programming
Nomenclatura para programas SAP
• Existe um padrão de nomenclatura
que de...
ABAP - Advanced Business Application Programming
Convenções usadas
Símbolo Significado
Cautela
Exemplo de código
Nota impo...
ABAP - Advanced Business Application Programming
Editor ABAP
VERIFICAR (CTRL + F2)
Verifica a sintaxe do programa Z_PROGRA...
ABAP - Advanced Business Application Programming
Editor ABAP
ATIVAR (SHIFT + F9)
Ativa o programa Z_PROGRAMA_TESTE1 para q...
ABAP - Advanced Business Application Programming
Editor ABAP
EXECUTAR (F8)
Executa o programa Z_PROGRAMA_TESTE1 com a últi...
ABAP - Advanced Business Application Programming
Editor ABAP
LISTA DE UTILIZAÇÕES (CTRL + SHIFT + F3)
Exibe a utilização d...
ABAP - Advanced Business Application Programming
Editor ABAP
ANÁLISE DO AMBIENTE (SHIFT + F4)
Realiza uma completa varredu...
ABAP - Advanced Business Application Programming
Editor ABAP
AJUDA ONLINE (CTRL + F8)
Termo de pesquisa para a documentaçã...
ABAP - Advanced Business Application Programming
Editor ABAP
ELIMINAR (CTRL + F2)
Apaga o programa Z_PROGRAMA_TESTE1.
ABAP - Advanced Business Application Programming
Editor ABAP
COPIAR (CTRL + F5)
Copia todo o código do programa Z_PROGRAMA...
ABAP - Advanced Business Application Programming
Editor ABAP
RENOMEAR (CTRL + F6)
Modifica o nome do programa Z_PROGRAMA_T...
ABAP - Advanced Business Application Programming
Editor ABAP
DEPURAÇÃO (CTRL + F5)
Executa Z_PROGRAMA_TESTE1 em modo de de...
ABAP - Advanced Business Application Programming
Editor ABAP
EXECUTAR C/ VARIANTE (SHIFT + F6)
Executa Z_PROGRAMA_TESTE1 c...
ABAP - Advanced Business Application Programming
Editor ABAP
VARIANTES (CTRL + F1)
Cria as variantes que ficarão associada...
ABAP - Advanced Business Application Programming
Escrevendo o primeiro programa
• O programa será chamado de
ZREPORT01;
• ...
ABAP - Advanced Business Application Programming
Escrevendo o primeiro programa
ABAP - Advanced Business Application Programming
Escrevendo o primeiro programa
ABAP - Advanced Business Application Programming
Escrevendo o primeiro programa
ABAP - Advanced Business Application Programming
Escrevendo o primeiro programa
ABAP - Advanced Business Application Programming
Entendendo o editor
EXIBIR <-> MODIFICAR ( CTRL + F1 )
Alterna entre exib...
ABAP - Advanced Business Application Programming
Entendendo o editor
ATIVO <-> INATIVO ( CTRL + F8 )
Alterna entre ativar ...
ABAP - Advanced Business Application Programming
Entendendo o editor
OUTRO OBJETO... ( SHIFT + F5 )
Abre outro objeto no e...
ABAP - Advanced Business Application Programming
Entendendo o editor
AMPLIAR ( SHIFT + F4 )
Expande a seleção para o botão...
ABAP - Advanced Business Application Programming
Entendendo o editor
VERIFICAR( CTRL + F2 )
Verifica a sintaxe do programa.
ABAP - Advanced Business Application Programming
Entendendo o editor
ATIVAR ( CTRL + F3 )
Ativa o programa para que o mesm...
ABAP - Advanced Business Application Programming
Dica
• Quando este botão é clicado, aparece
uma janela para a seleção de ...
ABAP - Advanced Business Application Programming
Tela de seleção (ATIVAR programas)
ABAP - Advanced Business Application Programming
Entendendo o editor
DIRETO ( F8 )
Executa a última versão ATIVA do progra...
ABAP - Advanced Business Application Programming
Entendendo o editor
LISTA DE UTILIZAÇÕES ( CTRL + SHIFT + F5 )
Lista das ...
ABAP - Advanced Business Application Programming
Entendendo o editor
EXIBIR LISTA DE OBJETOS ( CTRL + SHIFT + F5 )
Exibe o...
ABAP - Advanced Business Application Programming
Entendendo o editor
EXIBIR JANELA DE NAVEGAÇÃO
( CTRL + SHIFT + F5 )
Exib...
ABAP - Advanced Business Application Programming
Escrevendo o primeiro programa
AJUDA PARA... (CTRL + F8)
Termo de pesquis...
ABAP - Advanced Business Application Programming
Entendendo o editor
DEFINIR/ELIMIAR PONTO DE PARADA SESSÃO
( CTRL + SHIFT...
ABAP - Advanced Business Application Programming
Entendendo o editor
DEFINIR/ELIMIAR PONTO DE PARADA EXTERNO
( CTRL + SHIF...
ABAP - Advanced Business Application Programming
Entendendo o editor
ABAP - Advanced Business Application Programming
Entendendo o editor
DEFINIR/ELIMIAR PONTO DE PARADA EXTERNO
( CTRL + F6 )...
ABAP - Advanced Business Application Programming
Entendendo o editor
ABAP - Advanced Business Application Programming
Entendendo o editor
PRETTY PRINTER
( SHIFT + F1 )
Realiza a formatação pa...
ABAP - Advanced Business Application Programming
Entendendo o editor
• Indicadores de linhas modificadas;
• Bookmarks;
• S...
ABAP - Advanced Business Application Programming
Teclas de Atalho do Editor
• CTRL + Z
– Desfaz a última ação no editor;
•...
ABAP - Advanced Business Application Programming
Teclas de Atalho do Editor
• CTRL + ,
– Comenta as linhas selecionadas;
•...
ABAP - Advanced Business Application Programming
Teclas de Atalho do Editor
• CTRL + SHIFT + T
– Copia a linha, na posição...
ABAP - Advanced Business Application Programming
Teclas de Atalho do Editor
• CTRL + F
– Abre a janela para a pesquisa de ...
ABAP - Advanced Business Application Programming
Teclas de Atalho do Editor
• CTRL + ALT + 8 (NUM)
– Move a linha para cim...
ABAP - Advanced Business Application Programming
Teclas de Atalho do Editor
• CTRL + L
– Converte a seleção para letras mi...
ABAP - Advanced Business Application Programming
Teclas de Atalho do Editor
• CTRL + ALT + [0-9]
–Marca o índice do bookma...
ABAP - Advanced Business Application Programming
Teclas de Atalho do Editor
• CTRL + ALT + M
– Marca uma posição de bookma...
ABAP - Advanced Business Application Programming
Comentários no código
ABAP - Advanced Business Application Programming
Criando o primeiro programa
• Passo a passo para a criação de um
programa...
ABAP - Advanced Business Application Programming
Criando o primeiro programa
ABAP - Advanced Business Application Programming
Escrevendo texto na tela
ABAP - Advanced Business Application Programming
CONCATENATE
ABAP - Advanced Business Application Programming
CONCATENATE
ABAP - Advanced Business Application Programming
Estrutura de Controle: IF, ELSE...
ABAP - Advanced Business Application Programming
Operadores Lógicos de comparação
OPERADOR SIGNFICADO
EQ
IGUAL A
NE
DIFERE...
ABAP - Advanced Business Application Programming
Exercício 1: Comparação de Strings
ABAP - Advanced Business Application Programming
Literais
• Literais são objetos sem referência
no código de um programa. ...
ABAP - Advanced Business Application Programming
Sintaxe
ABAP - Advanced Business Application Programming
Recomendação: Constantes
• Quando tratar-se de literais para
serem utiliz...
ABAP - Advanced Business Application Programming
CONSTANTS
ABAP - Advanced Business Application Programming
CONSTANTS
ABAP - Advanced Business Application Programming
Text Symbols
• Os Símbolos de Texto são um objeto que
são gerados quando ...
ABAP - Advanced Business Application Programming
Text Symbols
• Com o editor ABAP (SE38) aberto:
ABAP - Advanced Business Application Programming
Text Symbols
ABAP - Advanced Business Application Programming
Text Symbols
ABAP - Advanced Business Application Programming
Text Symbols
ABAP - Advanced Business Application Programming
MESSAGE
ABAP - Advanced Business Application Programming
MESSAGE
ABAP - Advanced Business Application Programming
MESSAGE
ABAP - Advanced Business Application Programming
Operações Matemáticas Básicas
OPERADOR SIGNIFICADO
+ Adição
- Subtração
/...
ABAP - Advanced Business Application Programming
Operações Matemáticas Básicas
• Também é possível utilizar as
operações a...
ABAP - Advanced Business Application Programming
ADD
ABAP - Advanced Business Application Programming
ADD
ABAP - Advanced Business Application Programming
ADD
ABAP - Advanced Business Application Programming
ADD
ABAP - Advanced Business Application Programming
Operações Matemáticas Básicas
OPERAÇÃO EXPR. MATEMÁTICA PALAVRAS CHAVES
A...
ABAP - Advanced Business Application Programming
Operações Aritméticas usando Estruturas
ABAP - Advanced Business Application Programming
Operações Aritméticas usando Estruturas
ABAP - Advanced Business Application Programming
MULTIPLY-CORRESPONDING
ABAP - Advanced Business Application Programming
Funções Matemáticas
FUNÇÃO SIGNIFICADO
ABS Valor absoluto de um argumento...
ABAP - Advanced Business Application Programming
Funções Matemáticas
ABAP - Advanced Business Application Programming
Operações com Data
ABAP - Advanced Business Application Programming
TRY ... CATCH ... ENDTRY
ABAP - Advanced Business Application Programming
Tratamento de exceções
ABAP - Advanced Business Application Programming
Exercício: média de notas
• Dadas as quatro notas de um
determinado aluno...
ABAP - Advanced Business Application Programming
Exercício: média de notas
ABAP - Advanced Business Application Programming
Parameters
ABAP - Advanced Business Application Programming
Exercício: Média ponderada
• Faça um algoritmo que leia três notas
de um ...
ABAP - Advanced Business Application Programming
Exercício: Tipo de triângulo
• Escrever um algoritmo que leia três
valore...
ABAP - Advanced Business Application Programming
Exercício: Custo ao Consumidor
• O custo de um carro novo ao consumidor
é...
ABAP - Advanced Business Application Programming
Dicionário ABAP
• O dicionário ABAP descreve e
gerencia todas as definiçõ...
ABAP - Advanced Business Application Programming
Dicionário ABAP
ABAP - Advanced Business Application Programming
Dicionário ABAP
• Os tipos de objetos do dicionário
incluem:
– Tabelas;
–...
ABAP - Advanced Business Application Programming
Dicionário ABAP: Tipos de objetos
ABAP - Advanced Business Application Programming
Tabelas
• As tabelas podem ser definidas
independentes do banco de dados ...
ABAP - Advanced Business Application Programming
Criando uma tabela no Dicionário ABAP
• Acessar a transação SE11;
• No ca...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Descrição breve
– Texto com a principal nece...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Classe de entrega
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• A - Tabela de aplicação (dados mestre e
de m...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• E - Tabela de sistema com conjuntos de
nomes...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Data Browser/atualiz.visão tabs.
–O código d...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Data Browser/atualiz.visão tabs.
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Exibição/atualização não permitidas
– A util...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Clicar sobre o botão Salvar
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Criar como Objeto Local;
Barra de STATUS:
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Definição dos campos da tabela
ZTABELA1:
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• A definição para os campos de tabela no
dici...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
– Tipo do Campo: Ao criar uma tabela no
banco ...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
–Casas decimais: Número das casas
decimais adm...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
• Para cada tabela transparente no
ABAP Dictio...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
• Categoria de dados
–Com o tipo de dados, det...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
• Os tipos de dados mais importantes
(à exceçã...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
• Os Dados mestre são dados com
frequentes ace...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
• Estão à disposição do cliente outros
dois ti...
ABAP - Advanced Business Application Programming
Nota
Considerar que o tipo de dados só
afeta a gravação da tabela para os...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
• Para as tabelas transparentes,
escolher o ti...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
• Categoria de tamanho
– Determinação da neces...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
• Categoria de ampliação:
– A seleção de uma c...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
• Com a tabela aberta, escolher o
menu “Suplem...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
Inserir o nome do Elemento de Dados
e, em segu...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
• Serão exibidas duas caixas de
confirmações, ...
ABAP - Advanced Business Application Programming
Tabelas do Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Serão pedidos os dados de
denominação do cam...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Será necessário ATIVAR a tabela
para que as ...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Será necessário informar os dados
do gerador...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Propor nº(s) para telas de atualização
– Mar...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Aparecerá uma mensagem na barra
de status in...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
• Será exibido o relatório com o
resultado da ...
ABAP - Advanced Business Application Programming
Criação de uma tabela (SE11)
• Nomeação da Tabela;
• Classe de entrega/at...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Definição dos campos da tabela
• Nomeação dos campos;
• Definição dos ele...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Ativação da tabela
• Ativação da definição da tabela no
banco de dados;
•...
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Tabelas no Dicionário ABAP
ABAP - Advanced Business Application Programming
Chaves estrangeiras
ABAP - Advanced Business Application Programming
Exercício: Criação de Tabelas
• Criar uma tabela ZNOTASNN, onde o
termo N...
ABAP - Advanced Business Application Programming
Atualizando os dados de uma tabela
• É necessário que a tabela possua a
c...
ABAP - Advanced Business Application Programming
Transação SM30
ABAP - Advanced Business Application Programming
Transação SM30
• Inserir o nome da Tabela/Visão;
• Escolher um dos botões...
ABAP - Advanced Business Application Programming
Transação SM30
ABAP - Advanced Business Application Programming
Exercício: Inserção de Dados
• Referente à tabela ZNOTASNN,
realizar a in...
ABAP - Advanced Business Application Programming
Comandos de repetição
• Existem quatro estruturas de
repetição na linguag...
ABAP - Advanced Business Application Programming
DO [ <n> TIMES ]
ABAP - Advanced Business Application Programming
SY-INDEX
O campo do sistema SY-INDEX
contém o número da interação
atual d...
ABAP - Advanced Business Application Programming
Uso do SY-INDEX
ABAP - Advanced Business Application Programming
Uso do SY-INDEX
ABAP - Advanced Business Application Programming
Uso do SY-INDEX
ABAP - Advanced Business Application Programming
Uso do SY-INDEX
ABAP - Advanced Business Application Programming
Uso do SY-INDEX
ABAP - Advanced Business Application Programming
WHILE
ABAP - Advanced Business Application Programming
LOOP
ABAP - Advanced Business Application Programming
Work area
ABAP - Advanced Business Application Programming
SY-TABIX
O campo do sistema SY-TABIX
contém o número da linha atual
no lo...
ABAP - Advanced Business Application Programming
LOOP (Eventos)
ABAP - Advanced Business Application Programming
Declaração de Tabelas Internas
ABAP - Advanced Business Application Programming
Preenchendo os dados
ABAP - Advanced Business Application Programming
Open SQL
• Open SQL consiste em um conjunto
de sentenças ABAP que realiza...
ABAP - Advanced Business Application Programming
Open SQL
COMANDO SIGNIFICADO
SELECT Realiza a leitura dos dados de uma
ta...
ABAP - Advanced Business Application Programming
SELECT
ABAP - Advanced Business Application Programming
Exibindo resultados SQL
• Para o exemplo realizado no
exercício de criaçã...
ABAP - Advanced Business Application Programming
SY-TABIX
O campo do sistema SY-SUBRC
contém o indicativo de resultado
da ...
ABAP - Advanced Business Application Programming
SY-SUBRC
ABAP - Advanced Business Application Programming
Exercício: Apresentar resultado SQL
• Selecionar os dados das notas do
al...
ABAP - Advanced Business Application Programming
CASE
ABAP - Advanced Business Application Programming
Funções
ABAP - Advanced Business Application Programming
Funções
• As funções no SAP são definidas
através da transação SE37;
• Um...
ABAP - Advanced Business Application Programming
Funções
ABAP - Advanced Business Application Programming
Funções
ABAP - Advanced Business Application Programming
Funções
ABAP - Advanced Business Application Programming
Funções
• Os tipos serão apresentados
conforme os elementos do SAP;
ABAP - Advanced Business Application Programming
Funções
• Os elementos de dados que estão na
aplicação poderão ser pesqui...
ABAP - Advanced Business Application Programming
Funções
1
2
3
ABAP - Advanced Business Application Programming
Funções
• Valor proposto para parâmetro de
importação:
– É possível preen...
ABAP - Advanced Business Application Programming
Funções
A opção “Opcional” deverá ser
marcada caso o parâmetro não seja
o...
ABAP - Advanced Business Application Programming
Funções
ABAP - Advanced Business Application Programming
Funções
• Chamada com transferência de valor
– A transferência do parâmet...
ABAP - Advanced Business Application Programming
Funções
ABAP - Advanced Business Application Programming
Funções
ABAP - Advanced Business Application Programming
Chamada de uma
função em um relatório
• Utilização do Modelo;
• Inserindo...
ABAP - Advanced Business Application Programming
Funções
ABAP - Advanced Business Application Programming
Exercício: criação de tabela
• Documento : INTEIRO(10);
• Item: INTEIRO(5...
ABAP - Advanced Business Application Programming
• Preencher os dados na tabela
conforme o indicado abaixo:
Exercício: pre...
ABAP - Advanced Business Application Programming
Visões
• Visões são agrupamentos de dados que,
geralmente, são compostas ...
ABAP - Advanced Business Application Programming
Visões
ABAP - Advanced Business Application Programming
Tipos
• Os tipos de dados definidos para os
usuários podem ser armazenado...
ABAP - Advanced Business Application Programming
Dicionário ABAP
ABAP - Advanced Business Application Programming
Domínio
• Um domínio define uma faixa de
valores e deve estar atribuído a...
ABAP - Advanced Business Application Programming
Domínio
ABAP - Advanced Business Application Programming
Domínio
• Os domínios são definidos através da
transação SE37;
ABAP - Advanced Business Application Programming
Domínio
1
2
3
ABAP - Advanced Business Application Programming
Domínio
ABAP - Advanced Business Application Programming
Domínio
ABAP - Advanced Business Application Programming
Domínio
ABAP - Advanced Business Application Programming
Domínio
ABAP - Advanced Business Application Programming
Atualização da tabela – SM30
Próximos SlideShares
Carregando em…5
×

Treinamento SAP ABAP

12.272 visualizações

Publicada em

Treinamento padrão ABAP para iniciantes nesta linguagem de programação. O curso é voltado para desenvolvedores e gerentes de produto os quais gostariam de entender melhor a tecnologia SAP.

Publicada em: Tecnologia
68 comentários
90 gostaram
Estatísticas
Notas
Sem downloads
Visualizações
Visualizações totais
12.272
No SlideShare
0
A partir de incorporações
0
Número de incorporações
87
Ações
Compartilhamentos
0
Downloads
0
Comentários
68
Gostaram
90
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Treinamento SAP ABAP

  1. 1. ABAP - Advanced Business Application Programming Academia ABAP 13/01/2014 Marcos Aurélio Paixão
  2. 2. ABAP - Advanced Business Application Programming Agenda • Objetivos do treinamento; • Cronograma de atividades; • Sobre a SAP; • ERP (Enterprise Resource Planning); • SAP ECC (ERP Central Components); • Módulos SAP; • ABAP (Advanced Business Application Programming).
  3. 3. ABAP - Advanced Business Application Programming Objetivos do treinamento • Conhecer a linguagem de programação ABAP; • Pré-requisitos: –Conhecimentos básicos aplicados em lógica de programação; –Conhecimento em linguagem SQL;
  4. 4. ABAP - Advanced Business Application Programming Cronograma de atividades • Segundas, quartas e sextas-feiras; • De 19:00 às 22:00; • A partir de 13/01/2014 a 10/02/2014.
  5. 5. ABAP - Advanced Business Application Programming Sobre a SAP • Os primeiros passos foram dados em 1972 por cinco engenheiros, ex- funcionários da IBM na cidade de Mannheim, na Alemanha; • Decidiram a empresa de desenvolvimento de sistemas: a SAP- AG; • Tinham a visão de desenvolver um software aplicativo padrão para processos de negócios em tempo real;
  6. 6. ABAP - Advanced Business Application Programming Sobre a SAP • A sigla SAP é uma abreviação, em língua alemã, para o acrônimo Sistemas, Aplicativos e Produtos para Processamento de Dados em português; • AG é a abreviatura utilizada na Alemanha para empresas do tipo S/A.
  7. 7. ABAP - Advanced Business Application Programming Sobre a SAP • Em 1995, a SAP AG tinha mais de 6.600 colaboradores ao redor do mundo; • Nesse mesmo ano, a SAP liderava o mercado de softwares para ambiente cliente/servidor; • Nessa época, ocupava a quinta posição no ranking das empresas de software no mundo;
  8. 8. ABAP - Advanced Business Application Programming Sobre a SAP • Hoje, mais de 183.000 empresas possuem o produto da SAP implementado; • Em 1995, com a chegada ao país, a SAP Brasil tornou-se uma das maiores subsidiárias no mundo.
  9. 9. ABAP - Advanced Business Application Programming Sobre a SAP
  10. 10. ABAP - Advanced Business Application Programming ERP (Enterprise Resource Planning) • ERP é uma abreviação em língua inglesa para o acrônimo Planejamento dos Recursos Empresariais; • Por vezes, é citado como SIGE, ou Sistema de Informações Gerenciais em diversas literaturas em português;
  11. 11. ABAP - Advanced Business Application Programming Arquitetura do SAP ECC
  12. 12. ABAP - Advanced Business Application Programming Estrutura do Servidor de Aplicações
  13. 13. ABAP - Advanced Business Application Programming Módulos SAP
  14. 14. ABAP - Advanced Business Application Programming Módulos SAP • Sales & Distribution – Gerenciamento integrado de todas tarefas para vendas, faturamento e expedição. • Materials Management – O processo completo de compras, com suporte integrado de resultados e planejamento de produção.
  15. 15. ABAP - Advanced Business Application Programming Módulos SAP • Production Planning –O sistema de PCP ajustável para todos os tipos de produção com suporte integrado de resultados e do gerenciamento de compras.
  16. 16. ABAP - Advanced Business Application Programming Módulos SAP • Quality Management – O sistema para o controle da qualidade assegurada em todas as áreas da cadeia logística. • Plant Maintenance – A solução independente de indústria para a administração da manutenção de sistemas produtivos.
  17. 17. ABAP - Advanced Business Application Programming Módulos SAP • Human Resources Management – Processamento integrado de administração RH, gerenciamento de tempo e despesas de viagens e folha de pagamento; – Planejamento organizacional, posicionamento, desenvolvimento educacional e controle do custo de pessoal em um sistema totalmente integrado.
  18. 18. ABAP - Advanced Business Application Programming Módulos SAP • Financial Accounting –Uma ampla visão do desempenho que inclui gerenciamento de caixa, banco eletrônico, controladoria financeira, orçamento de caixa e consolidação.
  19. 19. ABAP - Advanced Business Application Programming Módulos SAP • Controlling –Contabilidade de custos, desde a contabilidade de centros de custos e de elementos de custos até a análise de lucratividade.
  20. 20. ABAP - Advanced Business Application Programming Módulos SAP • Asset Management –O gerenciamento completo de todos os ativos fixos, desde da contabilidade tradicional de ativos e gerenciamento técnico de ativos até a controladoria de investimentos.
  21. 21. ABAP - Advanced Business Application Programming Módulos SAP • Project Information System –A integração de todas as áreas de serviços para o planejamento de projetos, processamento e controle.
  22. 22. ABAP - Advanced Business Application Programming Módulos SAP • Business Workflow –Definição de processos de negócios, com procedimentos de aprovação envolvendo simples liberação de releases até atividades mais complexas utilizadas em processos industriais.
  23. 23. ABAP - Advanced Business Application Programming Módulos SAP • Executive Information System –Acesso rápido aos dados, fatos e representações gráficas para decisões gerenciais.
  24. 24. ABAP - Advanced Business Application Programming Linguagem de Programação ABAP
  25. 25. ABAP - Advanced Business Application Programming Estrutura: ABAP Work Process
  26. 26. ABAP - Advanced Business Application Programming Estrutura das Aplicações
  27. 27. ABAP - Advanced Business Application Programming Sintaxe ABAP • O código de um programa ABAP consiste de comentários e declarações da linguagem; • Declarações ABAP começam sempre com uma palavra-chave da linguagem e são sempre finalizadas com um ponto final “ . “;
  28. 28. ABAP - Advanced Business Application Programming Sintaxe ABAP • As declarações podem conter várias linhas sendo que cada linha pode conter várias declarações;
  29. 29. ABAP - Advanced Business Application Programming Instruções ABAP • Declarativas; • Modularização; • Controle; • Chamada; • Operacionais; • Banco de Dados.
  30. 30. ABAP - Advanced Business Application Programming Instruções ABAP • Declarativas: Essas instruções definem os tipos de dados ou declaram objetos de dados que são usados ​​por outras declarações em um programa ou rotina. –Ex: TYPES, DATA, TABLES.
  31. 31. ABAP - Advanced Business Application Programming Instruções ABAP • Modularização: Definem o processamento de instruções em bloco e são subdividas em: – Eventos: • são utilizados quando da execução de um bloco em eventos definidos. Ex: AT-SELECTION SCREEN, START-OF-SELECTION – Definição de keywords: • São utilizadas na definição de subrotinas ou módulos de funções. Ex: FUNCTION, FORM, MODULE.
  32. 32. ABAP - Advanced Business Application Programming Instruções ABAP • Controle: Utilizados para o processamento em bloco de acordo com certas condições. –Ex: IF, WHILE, DO, CASE.
  33. 33. ABAP - Advanced Business Application Programming Instruções ABAP • Chamada: Utilizados para a chamada de blocos ou funções previamente escritas. –Ex: PERFORM, CALL, SUBMIT, LEAVE TO.
  34. 34. ABAP - Advanced Business Application Programming Instruções ABAP • Operacional: São utilizadas para a manipulação de dados de estruturas declarativas. –Ex: WRITE, MOVE, ADD.
  35. 35. ABAP - Advanced Business Application Programming Instruções ABAP • Banco de dados: Estas instruções usam a interface de banco de dados para acessar as tabelas do banco de dados central. Elas são subdivididas em duas categorias: –Open SQL –Native SQL
  36. 36. ABAP - Advanced Business Application Programming Instruções ABAP • Open SQL: Subconjunto da linguagem padrão SQL92, que contém apenas a linguagem de manipulação de dados (DML). A interface de banco de dados converte a instrução Open SQL para os comandos relevantes do banco mais relevante. –Ex: SELECT, INSERT, DELETE.
  37. 37. ABAP - Advanced Business Application Programming Instruções ABAP • Native SQL: São passadas diretamente da interface de banco de dados para o banco sem conversão. Permite aproveitar benefícios do banco de dados utilizado nas empresas, incluindo a linguagem de definição de dados (DDL). –Ex: CREATE TABLE, CREATE INDEX.
  38. 38. ABAP - Advanced Business Application Programming Tipos de dados • Os tipos de dados podem ser dividos em três categorias: –Elementares • Tamanho fixo; • Tamanho variável. –Referência; –Complexos.
  39. 39. ABAP - Advanced Business Application Programming Tipos Elementares (Tamanho Fixo) Cód. Descrição TEXTO C Caracter N Caracter Numérico D Data T Tempo NUMÉRICO I Inteiro F Ponto flutuante P Número empacotado HEXADECIMAL X Campo “Byte”
  40. 40. ABAP - Advanced Business Application Programming Tipos Elementares (Tamanho Variável) Cód. Descrição STRING STRING String a ser alocada na atribuição XTRINGS Utilizadas para strings no formato byte
  41. 41. ABAP - Advanced Business Application Programming Hierarquia (Tipos de Objetos)
  42. 42. ABAP - Advanced Business Application Programming Hierarquia (Tipos de Objetos)
  43. 43. ABAP - Advanced Business Application Programming Hierarquia (Tipos de Objetos)
  44. 44. ABAP - Advanced Business Application Programming Tipos Complexos • Tipos complexos são feitos de outros tipos. Eles permitem gerenciar e processar dados com um único nome. • Não existem tipos complexos predefinidos em ABAP, os quais devem ser definidos nas aplicações ou no dicionário ABAP. • Os tipos estruturados são divididos entre Estruturas e Tabelas Internas.
  45. 45. ABAP - Advanced Business Application Programming Tipos Complexos: Estruturas • Uma estrutura é uma seqüência de quaisquer tipos elementares, tipos de referência ou tipos de dados complexos. • As estruturas podem ser agrupadas entre duas categorias: –Nested and non-nested structures; –Flat and deep structures.
  46. 46. ABAP - Advanced Business Application Programming Tipos Complexos: Tabelas Internas • Tabelas internas consistem em uma série de linhas com um mesmo tipo de dados. – O tipo de linha, o qual pode ser de quaisquer tipos elementares, tipos de referência ou tipos de dados complexos; – As chaves identificam as linhas da tabela, podendo ser feitas com os campos elementares na linha e podem ser de restrição única ou não única.
  47. 47. ABAP - Advanced Business Application Programming Tipos de Dados Complexos • Estrutura com séries de tipos de dados elementares de tamanho fixo (flat structures).
  48. 48. ABAP - Advanced Business Application Programming Tipos de Dados Complexos • Uma tabela interna com tipos de linhas com tipos elementares (vector);
  49. 49. ABAP - Advanced Business Application Programming Tipos de Dados Complexos • Tabelas internas com as linhas com estruturas não aninhadas ('real' table);
  50. 50. ABAP - Advanced Business Application Programming Tipos de Dados Complexos • Estruturas com estruturas como seus componentes (nested structures, flat or deep);
  51. 51. ABAP - Advanced Business Application Programming Tipos de Dados Complexos • Estruturas contendo tabelas internas como seus componentes (deep structures);
  52. 52. ABAP - Advanced Business Application Programming Tipos de Dados Complexos • Tabelas internas com as linhas contendo tabelas internas;
  53. 53. ABAP - Advanced Business Application Programming Tipos por Referência • Tipos por referência descrevem objetos de dados que contêm ponteiros para outros objetos (ABAP Objects); • Existe uma hierarquia para os tipos por referência que descreve a hierarquia de objetos com as referências possíveis de definição.
  54. 54. ABAP - Advanced Business Application Programming Banco de dados lógico • São programas especiais em ABAP que são responsáveis pela leitura dos dados das tabelas do banco de dados utilizando a linguagem Open SQL. • São divididos em três seções: – Estrutura; – Seleção; – Programa de banco de dados.
  55. 55. ABAP - Advanced Business Application Programming Banco de dados lógico • Estrutura –A estrutura de um banco de dados lógico determina quais as tabelas do banco de dados podem ser acessadas. Ela adota a hierarquia do banco de dados definida por pelo relacionamento de chaves estrangeiras; –Realiza o controle da seqüência em que as tabelas são acessadas.
  56. 56. ABAP - Advanced Business Application Programming Banco de dados lógico • Seleção –Define os campos de entrada para a seleção dos dados; –O ambiente apresenta os campos na tela de seleção quando é executado um programa ligado a um banco de dados lógico; –Os campos correspondentes também ficam disponíveis nos programas ABAP;
  57. 57. ABAP - Advanced Business Application Programming Banco de dados lógico • Programa de Banco de Dados – O programa de banco de dados de um banco de dados lógico é um repositório para sub rotinas especiais, através das quais os dados são lidos a partir das tabelas do banco de dados. – As sub rotinas são chamadas pelo processador de relatórios no ambiente de execução em uma seqüência pré-definida.
  58. 58. ABAP - Advanced Business Application Programming Banco de dados lógico
  59. 59. ABAP - Advanced Business Application Programming Banco de dados lógico
  60. 60. ABAP - Advanced Business Application Programming Banco de dados lógico • A principal utilização de banco de dados lógico é preparar códigos que acessam os dados para serem reutilizados; • São configurados para obterem uma ótima performance através de funções que garantem segurança e proteção aos dados; • É apropriado o uso do banco de dados lógico sempre que as tabelas a serem lidas correspondam ao fluxo: SELEÇÃO > LEITURA > PROCESSAMENTO > EXIBIÇÃO EM TELA DO RESULTADO.
  61. 61. ABAP - Advanced Business Application Programming Acessando o aplicativo SAP • Na área de trabalho, clicar sobre o botão SAP Logon;
  62. 62. ABAP - Advanced Business Application Programming Acessando o aplicativo SAP • Em Conexões, com o botão direito, clicar em Inserir entrada nova
  63. 63. ABAP - Advanced Business Application Programming Acessando o aplicativo SAP
  64. 64. ABAP - Advanced Business Application Programming Acessando o aplicativo SAP
  65. 65. ABAP - Advanced Business Application Programming Editor ABAP • O editor de programação ABAP/4 do SAP pode ser encontrado através do caminho : Menu SAP > Ferramentas > ABAP Workbench > Desenvolvimento > Editor ABAP
  66. 66. ABAP - Advanced Business Application Programming Editor ABAP
  67. 67. ABAP - Advanced Business Application Programming Editor ABAP
  68. 68. ABAP - Advanced Business Application Programming Nomenclatura para programas SAP • Existe um padrão de nomenclatura que deve ser seguido, não só para nome de programas, mas para todos os desenvolvimentos no SAP R/3; • Os nomes dos desenvolvimentos começam sempre com Z ou Y.
  69. 69. ABAP - Advanced Business Application Programming Convenções usadas Símbolo Significado Cautela Exemplo de código Nota importante Recomendação Sintaxe de comando Dica
  70. 70. ABAP - Advanced Business Application Programming Editor ABAP VERIFICAR (CTRL + F2) Verifica a sintaxe do programa Z_PROGRAMA_TESTE1.
  71. 71. ABAP - Advanced Business Application Programming Editor ABAP ATIVAR (SHIFT + F9) Ativa o programa Z_PROGRAMA_TESTE1 para que o mesmo possa ser utilizado.
  72. 72. ABAP - Advanced Business Application Programming Editor ABAP EXECUTAR (F8) Executa o programa Z_PROGRAMA_TESTE1 com a última versão ATIVA.
  73. 73. ABAP - Advanced Business Application Programming Editor ABAP LISTA DE UTILIZAÇÕES (CTRL + SHIFT + F3) Exibe a utilização do programa Z_PROGRAMA_TESTE1 em toda a extensão do SAP.
  74. 74. ABAP - Advanced Business Application Programming Editor ABAP ANÁLISE DO AMBIENTE (SHIFT + F4) Realiza uma completa varredura nas dependências de classes, objetos, dicionários de dados, etc. do programa Z_PROGRAMA_TESTE1 em relação à aplicação SAP.
  75. 75. ABAP - Advanced Business Application Programming Editor ABAP AJUDA ONLINE (CTRL + F8) Termo de pesquisa para a documentação de palavra- chave ABAP. É possível entrar uma ou várias palavras. A pesquisa é independente de maiúsculas e minúsculas. * e + são caracteres de preenchimento para um ou vários caracteres. Poderá ser efetuada um pesquisa de índice ou uma pesquisa de texto integral.
  76. 76. ABAP - Advanced Business Application Programming Editor ABAP ELIMINAR (CTRL + F2) Apaga o programa Z_PROGRAMA_TESTE1.
  77. 77. ABAP - Advanced Business Application Programming Editor ABAP COPIAR (CTRL + F5) Copia todo o código do programa Z_PROGRAMA_TESTE1 para um programa de nome especificado pelo programador.
  78. 78. ABAP - Advanced Business Application Programming Editor ABAP RENOMEAR (CTRL + F6) Modifica o nome do programa Z_PROGRAMA_TESTE1 para um nome definido pelo programador.
  79. 79. ABAP - Advanced Business Application Programming Editor ABAP DEPURAÇÃO (CTRL + F5) Executa Z_PROGRAMA_TESTE1 em modo de debugger, fazendo com que o cursor de execução seja parado na primeira linha declarativa do código.
  80. 80. ABAP - Advanced Business Application Programming Editor ABAP EXECUTAR C/ VARIANTE (SHIFT + F6) Executa Z_PROGRAMA_TESTE1 com a variante especificada pelo programador, desde que a mesma tenha sido gravada anteriormente na aplicação.
  81. 81. ABAP - Advanced Business Application Programming Editor ABAP VARIANTES (CTRL + F1) Cria as variantes que ficarão associadas ao programa Z_PROGRAMA_TESTE1.
  82. 82. ABAP - Advanced Business Application Programming Escrevendo o primeiro programa • O programa será chamado de ZREPORT01; • O programa será do tipo Texto Fonte; • Botões para as ações possíveis: Criar, Modificar e Exibir (somente leitura); • Clicar sobre o botão Criar.
  83. 83. ABAP - Advanced Business Application Programming Escrevendo o primeiro programa
  84. 84. ABAP - Advanced Business Application Programming Escrevendo o primeiro programa
  85. 85. ABAP - Advanced Business Application Programming Escrevendo o primeiro programa
  86. 86. ABAP - Advanced Business Application Programming Escrevendo o primeiro programa
  87. 87. ABAP - Advanced Business Application Programming Entendendo o editor EXIBIR <-> MODIFICAR ( CTRL + F1 ) Alterna entre exibir o código-fone (somente leitura) e o modo de edição do mesmo.
  88. 88. ABAP - Advanced Business Application Programming Entendendo o editor ATIVO <-> INATIVO ( CTRL + F8 ) Alterna entre ativar ou inativar o programa.
  89. 89. ABAP - Advanced Business Application Programming Entendendo o editor OUTRO OBJETO... ( SHIFT + F5 ) Abre outro objeto no editor.
  90. 90. ABAP - Advanced Business Application Programming Entendendo o editor AMPLIAR ( SHIFT + F4 ) Expande a seleção para o botão de ATIVAR <-> DESATIVAR o código fonte.
  91. 91. ABAP - Advanced Business Application Programming Entendendo o editor VERIFICAR( CTRL + F2 ) Verifica a sintaxe do programa.
  92. 92. ABAP - Advanced Business Application Programming Entendendo o editor ATIVAR ( CTRL + F3 ) Ativa o programa para que o mesmo possa ser executado. Observar para o estado do report.
  93. 93. ABAP - Advanced Business Application Programming Dica • Quando este botão é clicado, aparece uma janela para a seleção de todos os programas ainda não ativos para o usuário corrente; • É sugerido o programa atual para a seleção, porém o programador pode escolher em ativar mais de um programa simultaneamente.
  94. 94. ABAP - Advanced Business Application Programming Tela de seleção (ATIVAR programas)
  95. 95. ABAP - Advanced Business Application Programming Entendendo o editor DIRETO ( F8 ) Executa a última versão ATIVA do programa.
  96. 96. ABAP - Advanced Business Application Programming Entendendo o editor LISTA DE UTILIZAÇÕES ( CTRL + SHIFT + F5 ) Lista das utilizações do programa no ambiente SAP.
  97. 97. ABAP - Advanced Business Application Programming Entendendo o editor EXIBIR LISTA DE OBJETOS ( CTRL + SHIFT + F5 ) Exibe os objetos associados a este programa.
  98. 98. ABAP - Advanced Business Application Programming Entendendo o editor EXIBIR JANELA DE NAVEGAÇÃO ( CTRL + SHIFT + F5 ) Exibe o histórico de navegação para os arquivos abertos pelo editor.
  99. 99. ABAP - Advanced Business Application Programming Escrevendo o primeiro programa AJUDA PARA... (CTRL + F8) Termo de pesquisa para a documentação de palavra-chave ABAP. É possível entrar uma ou várias palavras. A pesquisa é independente de maiúsculas e minúsculas. * e + são caracteres de preenchimento para um ou vários caracteres. Poderá ser efetuada um pesquisa de índice ou uma pesquisa de texto integral.
  100. 100. ABAP - Advanced Business Application Programming Entendendo o editor DEFINIR/ELIMIAR PONTO DE PARADA SESSÃO ( CTRL + SHIFT + F12 ) Marca a parada na sessão a ser executada pelo programador, desde que o programa esteja aberto. O programa irá parar a execução esperando uma interação no ponto em que o cursor estiver posicionado no editor.
  101. 101. ABAP - Advanced Business Application Programming Entendendo o editor DEFINIR/ELIMIAR PONTO DE PARADA EXTERNO ( CTRL + SHIFT + F9 ) Marca a parada a ser executada pelo programador por um tempo previamente determinado. O tempo é informado para o programador na barra de estado da aplicação.
  102. 102. ABAP - Advanced Business Application Programming Entendendo o editor
  103. 103. ABAP - Advanced Business Application Programming Entendendo o editor DEFINIR/ELIMIAR PONTO DE PARADA EXTERNO ( CTRL + F6 ) Permite a seleção de modelos de código prontos para serem devidamente adaptados para a utilização. Os códigos serão inseridos na posição atual do cursor no editor.
  104. 104. ABAP - Advanced Business Application Programming Entendendo o editor
  105. 105. ABAP - Advanced Business Application Programming Entendendo o editor PRETTY PRINTER ( SHIFT + F1 ) Realiza a formatação padrão a partir da configuração definida na aplicação.
  106. 106. ABAP - Advanced Business Application Programming Entendendo o editor • Indicadores de linhas modificadas; • Bookmarks; • Separador de janela; • Customização de cores; • Complemento automático de códigos;
  107. 107. ABAP - Advanced Business Application Programming Teclas de Atalho do Editor • CTRL + Z – Desfaz a última ação no editor; • CTRL + Y – Refaz a última ação no editor; • CTRL + A – Seleciona todo o texto no editor; • CTRL + O – Posiciona o cursor da linha ... ;
  108. 108. ABAP - Advanced Business Application Programming Teclas de Atalho do Editor • CTRL + , – Comenta as linhas selecionadas; • CTRL + . – Remove o comentário das linhas selecionadas; • CTRL + – Comenta a linha na posição do cursor; • CTRL + SHIFT + – Remove o comentário da linha na posição do cursor ;
  109. 109. ABAP - Advanced Business Application Programming Teclas de Atalho do Editor • CTRL + SHIFT + T – Copia a linha, na posição do cursor; • CTRL + SHIFT + X – Recorta a linha na posição do cursor; • CTRL + SHIFT + L – Deleta a linha na posição do cursor; • CTRL + D – Duplica a linha na posição do cursor;
  110. 110. ABAP - Advanced Business Application Programming Teclas de Atalho do Editor • CTRL + F – Abre a janela para a pesquisa de texto; • CTRL + G – Após realizada a primeira pesquisa (CTRL+F), repete a pesquisa a partir da posição do cursor; • CTRL + SHIFT + G – Após realizada a primeira pesquisa (CTRL+F), repete a pesquisa a partir da posição anterior ao cursor; • CTRL + H – Abre a janela para a substituição do texto ou expressão digitada no código-fonte;
  111. 111. ABAP - Advanced Business Application Programming Teclas de Atalho do Editor • CTRL + ALT + 8 (NUM) – Move a linha para cima a partir da posição do cursor; • CTRL + ALT + 2 (NUM) – Move a linha para baixo a partir da posição do cursor; • TAB – Aumenta a indentação da seleção; • SHIFT + TAB – Recua a indentação da seleção;
  112. 112. ABAP - Advanced Business Application Programming Teclas de Atalho do Editor • CTRL + L – Converte a seleção para letras minúsculas; • CTRL + U – Converte a seleção para letras maiúsculas; • CTRL + K – Inverte a seleção para Maiúsculas ou Minúsculas;
  113. 113. ABAP - Advanced Business Application Programming Teclas de Atalho do Editor • CTRL + ALT + [0-9] –Marca o índice do bookmark de 0 a 9; • CTRL + [0-9] –Acessa o índice do bookmark de 0 a 9;
  114. 114. ABAP - Advanced Business Application Programming Teclas de Atalho do Editor • CTRL + ALT + M – Marca uma posição de bookmark na linha (para navegação). É possível inserir N marcações no editor • CTRL + M – Navega para o próximo bookmark; • CTRL + SHIFT + M – Navega para o bookmark anterior;
  115. 115. ABAP - Advanced Business Application Programming Comentários no código
  116. 116. ABAP - Advanced Business Application Programming Criando o primeiro programa • Passo a passo para a criação de um programa simples em ABAP; • O programa será chamado de Z_REPORT001; • Escreverá em tela o texto “Hello World”.
  117. 117. ABAP - Advanced Business Application Programming Criando o primeiro programa
  118. 118. ABAP - Advanced Business Application Programming Escrevendo texto na tela
  119. 119. ABAP - Advanced Business Application Programming CONCATENATE
  120. 120. ABAP - Advanced Business Application Programming CONCATENATE
  121. 121. ABAP - Advanced Business Application Programming Estrutura de Controle: IF, ELSE...
  122. 122. ABAP - Advanced Business Application Programming Operadores Lógicos de comparação OPERADOR SIGNFICADO EQ IGUAL A NE DIFERENTE DE<> >< LT MENOR QUE< LE MENOR OU IGUAL A<= GT MAIOR QUE> GE MAIOR OU IGUAL A>=
  123. 123. ABAP - Advanced Business Application Programming Exercício 1: Comparação de Strings
  124. 124. ABAP - Advanced Business Application Programming Literais • Literais são objetos sem referência no código de um programa. Eles são definidos diretamente por seus valores; • Os valores de um literal não podem ser modificados; • Aplicam-se aos tipos: numeric e text.
  125. 125. ABAP - Advanced Business Application Programming Sintaxe
  126. 126. ABAP - Advanced Business Application Programming Recomendação: Constantes • Quando tratar-se de literais para serem utilizados em códigos fontes, sugere-se a utilização de constantes a serem devidamente alocadas em pontos específicos da memória; • Uma vez declarada, o valor da constantes não poderá ser modificado.
  127. 127. ABAP - Advanced Business Application Programming CONSTANTS
  128. 128. ABAP - Advanced Business Application Programming CONSTANTS
  129. 129. ABAP - Advanced Business Application Programming Text Symbols • Os Símbolos de Texto são um objeto que são gerados quando um programa é iniciado no programa a partir de textos presentes em um programa ABAP; • São sempre associados aos tipos de dados caracteres (c); • Os tamanhos são definidos a partir do cadastro dos elementos no programa.
  130. 130. ABAP - Advanced Business Application Programming Text Symbols • Com o editor ABAP (SE38) aberto:
  131. 131. ABAP - Advanced Business Application Programming Text Symbols
  132. 132. ABAP - Advanced Business Application Programming Text Symbols
  133. 133. ABAP - Advanced Business Application Programming Text Symbols
  134. 134. ABAP - Advanced Business Application Programming MESSAGE
  135. 135. ABAP - Advanced Business Application Programming MESSAGE
  136. 136. ABAP - Advanced Business Application Programming MESSAGE
  137. 137. ABAP - Advanced Business Application Programming Operações Matemáticas Básicas OPERADOR SIGNIFICADO + Adição - Subtração / Divisão * Multiplicação DIV Divisão entre inteiros MOD Resto da divisão entre inteiros ** Exponenciação
  138. 138. ABAP - Advanced Business Application Programming Operações Matemáticas Básicas • Também é possível utilizar as operações através das instruções: – ADD (adição); –SUBTRACT (subtração); –MULTIPLY (multiplicação); – DIVIDE (divisão).
  139. 139. ABAP - Advanced Business Application Programming ADD
  140. 140. ABAP - Advanced Business Application Programming ADD
  141. 141. ABAP - Advanced Business Application Programming ADD
  142. 142. ABAP - Advanced Business Application Programming ADD
  143. 143. ABAP - Advanced Business Application Programming Operações Matemáticas Básicas OPERAÇÃO EXPR. MATEMÁTICA PALAVRAS CHAVES ADIÇÃO <p> = <m> + <n> ADD <m> TO <n> SUBTRAÇÃO <p> = <m> - <n> SUBTRACT <m> FROM <n> MUTIPLICAÇÃO <p> = <m> * <n> MUTIPLY <m> BY <n> DIVISÃO <p> = <m> / <n> DIVIDE <m> BY <n>
  144. 144. ABAP - Advanced Business Application Programming Operações Aritméticas usando Estruturas
  145. 145. ABAP - Advanced Business Application Programming Operações Aritméticas usando Estruturas
  146. 146. ABAP - Advanced Business Application Programming MULTIPLY-CORRESPONDING
  147. 147. ABAP - Advanced Business Application Programming Funções Matemáticas FUNÇÃO SIGNIFICADO ABS Valor absoluto de um argumento. CEIL Menor parte inteira de um argumento. FLOOR Maior parte inteira de um argumento. TRUNC Parte inteira de um argumento. FRAC Parte fracionária de um argumento.
  148. 148. ABAP - Advanced Business Application Programming Funções Matemáticas
  149. 149. ABAP - Advanced Business Application Programming Operações com Data
  150. 150. ABAP - Advanced Business Application Programming TRY ... CATCH ... ENDTRY
  151. 151. ABAP - Advanced Business Application Programming Tratamento de exceções
  152. 152. ABAP - Advanced Business Application Programming Exercício: média de notas • Dadas as quatro notas de um determinado aluno, deverá ser calculada a média aritmética das mesmas; • Comparadas à média padrão, o resultado deverá ser exibido em tela: – APROVADO, se maior ou igual à média; – REPROVADO, em caso de menor que a média.
  153. 153. ABAP - Advanced Business Application Programming Exercício: média de notas
  154. 154. ABAP - Advanced Business Application Programming Parameters
  155. 155. ABAP - Advanced Business Application Programming Exercício: Média ponderada • Faça um algoritmo que leia três notas de um aluno, calcule e escreva a média final deste aluno. • Considerar que a média é ponderada e que o peso das notas é 2, 3 e 5. Fórmula para o cálculo da média final é:
  156. 156. ABAP - Advanced Business Application Programming Exercício: Tipo de triângulo • Escrever um algoritmo que leia três valores inteiros e verifique se eles podem ser os lados de um triângulo. • Se forem, informar qual o tipo de triângulo que eles formam: equilátero, isóscele ou escaleno. • Propriedade: o comprimento de cada lado de um triângulo é menor do que a soma dos comprimentos dos outros dois lados.
  157. 157. ABAP - Advanced Business Application Programming Exercício: Custo ao Consumidor • O custo de um carro novo ao consumidor é a soma do custo de fábrica com a porcentagem do distribuidor e dos impostos (aplicados ao custo de fábrica). • Supondo que o percentual do distribuidor seja de 28% e os impostos de 45%, escrever um algoritmo para ler o custo de fábrica de um carro, calcular e escrever o custo final ao consumidor.
  158. 158. ABAP - Advanced Business Application Programming Dicionário ABAP • O dicionário ABAP descreve e gerencia todas as definições de dados utilizadas no sistema; • O dicionário ABAP está completamente integrado ao ambiente de desenvolvimento ABAP;
  159. 159. ABAP - Advanced Business Application Programming Dicionário ABAP
  160. 160. ABAP - Advanced Business Application Programming Dicionário ABAP • Os tipos de objetos do dicionário incluem: – Tabelas; – Visões; – Tipos: • Elementos de dados; • Estruturas; • Tabelas de tipos. – Domínios.
  161. 161. ABAP - Advanced Business Application Programming Dicionário ABAP: Tipos de objetos
  162. 162. ABAP - Advanced Business Application Programming Tabelas • As tabelas podem ser definidas independentes do banco de dados do dicionário ABAP; • Quando uma tabela é ativada, a definição física da tabela é criada no banco de dados para a definição previamente armazenada no dicionário ABAP; • A definição da tabela é traduzida a partir do dicionário ABAP para a definição do banco de dados, de acordo com o ambiente configurado.
  163. 163. ABAP - Advanced Business Application Programming Criando uma tabela no Dicionário ABAP • Acessar a transação SE11; • No campo Tab.banco dados, informar a o nome da tabela com início Z ou Y e sem caracteres especiais; • Clicar sobre o botão Criar;
  164. 164. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  165. 165. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  166. 166. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Descrição breve – Texto com a principal necessidade para a criação da tabela; • Classe de entrega – A classe de entrega controla o transporte de dados da tabela, no caso de instalação, mudança de release, cópia de mandante, e no caso de transporte entre sistemas de cliente.
  167. 167. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Classe de entrega
  168. 168. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • A - Tabela de aplicação (dados mestre e de movimento); • C - Tabela de cliente, os dados são atualizados exclusivamente pelo cliente. • L - Tabela para arquivar dados temporários. • G - Tabela de cliente, a SAP pode inserir registros novos, mas não pode sobregravar ou eliminar aqueles que já existem.
  169. 169. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • E - Tabela de sistema com conjuntos de nomes próprios para entradas de cliente. • S - Tabela de sistema, as modificações de dados têm o status de modificações de programa. • W - Tabela de sistema (por exemplo, tabela do ambiente de desenvolvimento), cujos dados são transportados por objetos de transporte próprios.
  170. 170. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Data Browser/atualiz.visão tabs. –O código determina se a exibição/atualização da tabela ou da visão é possível com a ajuda das ferramentas de atualização Data Browser (transação SE16) e atualização da visão de tabelas (transações SM30 e SM31).
  171. 171. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Data Browser/atualiz.visão tabs.
  172. 172. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Exibição/atualização não permitidas – A utilização de ferramentas standard de atualização de tabelas não é permitida para este objeto Dictionary como, por exemplo, a transação SE16. • Exibição / atualização permitidas de forma restringida – A utilização de ferramentas standard de atualização de tabelas é permitida de forma restringida: a transação SE16 permite a exibição para este objeto Dictionary, mas não permite uma atualização. • Exibição/atualização permitidas – A utilização de ferramentas standard de atualização de tabelas é permitida: a transação SE16 permite a atualização e a exibição para este objeto Dictionary.
  173. 173. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Clicar sobre o botão Salvar
  174. 174. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Criar como Objeto Local; Barra de STATUS:
  175. 175. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Definição dos campos da tabela ZTABELA1:
  176. 176. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • A definição para os campos de tabela no dicionário ABAP abragem: – Nome do Campo: Máximo de 16 posições e podem conter letras, dígitos e underlines. O campo sempre deverá ser iniciado com uma letra; – Campo-chave: É necessário que os campos-chave de uma tabela estejam juntos no início da tabela, ou seja, um campo que não seja campo-chave não pode estar entre dois campos-chave.
  177. 177. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP – Tipo do Campo: Ao criar uma tabela no banco de dados, a categoria de dados de um campo de tabela é compilada em um formato de dados correspondente do sistema de banco de dados utilizado; – Comprimento (nº de caracteres): Número das posições válidas de um campo sem caracteres de edição (por exemplo, vírgulas ou pontos); • As categorias de dados de cadeia (STRING, RAWSTRING) têm um comprimento ilimitado.
  178. 178. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP –Casas decimais: Número das casas decimais admitidas de um valor; –Descrição breve: A descrição breve é utilizada como texto explicativo na criação de listas e de documentação (Ajuda F1).
  179. 179. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  180. 180. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP • Para cada tabela transparente no ABAP Dictionary devia existir uma entrada nas opções técnicas (CTRL + SHIFT + F9); • Esta entrada é utilizada durante a criação da tabela no banco de dados para o cálculo dos espaços de memória físicos.
  181. 181. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP
  182. 182. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP
  183. 183. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP • Categoria de dados –Com o tipo de dados, determinar a nível lógico, em que área física do banco de dados (TABLESPACE) é arquivada a tabela. –Ao selecionar corretamente o tipo de dados, a tabela é automaticamente atribuída à área correta quando da criação no banco de dados.
  184. 184. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP • Os tipos de dados mais importantes (à exceção de dados de sistema) são: –APPL0 (dados mestre); –APPL1 (dados de movimento); –APPL2 (dados organizacionais e de customização).
  185. 185. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP • Os Dados mestre são dados com frequentes acessos de leitura, mas que raramente são atualizados. • Os Dados de movimento são dados que são atualizados com frequência. • Os Dados organizacionais e de customização são dados indicados na configuração do sistema, e que raramente são modificados depois.
  186. 186. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP • Estão à disposição do cliente outros dois tipos de dados USR e USR1. Estes estão previstos para desenvolvimentos do usuário. • As tabelas atribuídas a estes tipos de dados são arquivadas em um tablespace para desenvolvimentos de cliente.
  187. 187. ABAP - Advanced Business Application Programming Nota Considerar que o tipo de dados só afeta a gravação da tabela para os sistemas de banco de dados ORACLE e INFORMIX.
  188. 188. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP • Para as tabelas transparentes, escolher o tipo APPL1;
  189. 189. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP • Categoria de tamanho – Determinação da necessidade de espaço prevista de uma tabela no banco de dados.
  190. 190. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP
  191. 191. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP
  192. 192. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP
  193. 193. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP
  194. 194. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP • Categoria de ampliação: – A seleção de uma categoria de ampliação é necessária, uma vez que nas ampliações de tabelas e de estruturas em programas sem verificação unicode ativa, principalmente nas verificações de tipo e em conjunto com estruturas profundas, podem ocorrer erros de sintaxe e em tempo de execução.
  195. 195. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP • Com a tabela aberta, escolher o menu “Suplementos”;
  196. 196. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP
  197. 197. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP Inserir o nome do Elemento de Dados e, em seguida, executar um duplo clique sobre o mesmo
  198. 198. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP • Serão exibidas duas caixas de confirmações, uma para salvar os dados da tabela corrente e outra para a criação do elemento de dados;
  199. 199. ABAP - Advanced Business Application Programming Tabelas do Dicionário ABAP
  200. 200. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  201. 201. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Serão pedidos os dados de denominação do campo; • Uma vez preenchida a denominação, o comprimento será preenchido automaticamente após o salvamento; • Estes campos irão ser utilizados em várias rotinas do SAP.
  202. 202. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  203. 203. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  204. 204. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Será necessário ATIVAR a tabela para que as alterações sejam refletidas no Banco de Dados;
  205. 205. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  206. 206. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Será necessário informar os dados do gerador de atualização para a tabela; • A definição da tabela deverá estar aberta (SE11) e a mesma deverá estar ATIVA.
  207. 207. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  208. 208. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  209. 209. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  210. 210. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Propor nº(s) para telas de atualização – Marca que o sistema deve propor o nº de tela livre seguinte. Se for pretendido que o nº para a tela nova seja proposto, marcar este campo. • Intervalos livres de números para telas de atualização – Código segundo o qual os intervalos de números para as telas de atualização, devem ser exibidos. Se for pretendido exibir os intervalos de números, marcar este campo. O nº livre seguinte para a tela de atualização pode ser proposto ao usuário a partir de um intervalo selecionado. • Exibir números atribuídos das telas de atualização – Código segundo o qual os números de tela das telas de atualização já atribuídos, devem ser exibidos. Se for pretendido exibir os números de tela já atribuídos, marcar este campo. Esses números já não estão disponíveis para uma nova atribuição.
  211. 211. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  212. 212. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  213. 213. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  214. 214. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Aparecerá uma mensagem na barra de status indicando o progresso da operação;
  215. 215. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP • Será exibido o relatório com o resultado da criação da tabela;
  216. 216. ABAP - Advanced Business Application Programming Criação de uma tabela (SE11) • Nomeação da Tabela; • Classe de entrega/atualização; • Configuração técnica; • Categoria de ampliação. Vídeo
  217. 217. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  218. 218. ABAP - Advanced Business Application Programming Definição dos campos da tabela • Nomeação dos campos; • Definição dos elementos de dados; • Tipos de dados; • Denominação dos campos; • Ativação dos elementos de dados; • Associação entre Campo e Elemento; Vídeo
  219. 219. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  220. 220. ABAP - Advanced Business Application Programming Ativação da tabela • Ativação da definição da tabela no banco de dados; • Definindo a estrutura de atualização da tabela. Vídeo
  221. 221. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  222. 222. ABAP - Advanced Business Application Programming Tabelas no Dicionário ABAP
  223. 223. ABAP - Advanced Business Application Programming Chaves estrangeiras
  224. 224. ABAP - Advanced Business Application Programming Exercício: Criação de Tabelas • Criar uma tabela ZNOTASNN, onde o termo NN indica o número do aluno na Academia ABAP;
  225. 225. ABAP - Advanced Business Application Programming Atualizando os dados de uma tabela • É necessário que a tabela possua a configuração para receber atualização pelas interfaces da aplicação standard do SAP; • Transação SM30.
  226. 226. ABAP - Advanced Business Application Programming Transação SM30
  227. 227. ABAP - Advanced Business Application Programming Transação SM30 • Inserir o nome da Tabela/Visão; • Escolher um dos botões Exibir ou Atualizar; • Caso a tabela seja global, será exibida a mensagem:
  228. 228. ABAP - Advanced Business Application Programming Transação SM30
  229. 229. ABAP - Advanced Business Application Programming Exercício: Inserção de Dados • Referente à tabela ZNOTASNN, realizar a inserção de 10 alunos com notas variadas; • Não deverão serem preenchidos os campos MEDIA e RESULTADO; • Utilizar a transação SM30.
  230. 230. ABAP - Advanced Business Application Programming Comandos de repetição • Existem quatro estruturas de repetição na linguagem ABAP: –DO; –WHILE; –LOOP; –SELECT.
  231. 231. ABAP - Advanced Business Application Programming DO [ <n> TIMES ]
  232. 232. ABAP - Advanced Business Application Programming SY-INDEX O campo do sistema SY-INDEX contém o número da interação atual do loop. Não estando em loop, o campo estará preenchido com 0 (zero).
  233. 233. ABAP - Advanced Business Application Programming Uso do SY-INDEX
  234. 234. ABAP - Advanced Business Application Programming Uso do SY-INDEX
  235. 235. ABAP - Advanced Business Application Programming Uso do SY-INDEX
  236. 236. ABAP - Advanced Business Application Programming Uso do SY-INDEX
  237. 237. ABAP - Advanced Business Application Programming Uso do SY-INDEX
  238. 238. ABAP - Advanced Business Application Programming WHILE
  239. 239. ABAP - Advanced Business Application Programming LOOP
  240. 240. ABAP - Advanced Business Application Programming Work area
  241. 241. ABAP - Advanced Business Application Programming SY-TABIX O campo do sistema SY-TABIX contém o número da linha atual no loop.
  242. 242. ABAP - Advanced Business Application Programming LOOP (Eventos)
  243. 243. ABAP - Advanced Business Application Programming Declaração de Tabelas Internas
  244. 244. ABAP - Advanced Business Application Programming Preenchendo os dados
  245. 245. ABAP - Advanced Business Application Programming Open SQL • Open SQL consiste em um conjunto de sentenças ABAP que realizam operações no banco de dados central do SAP; • Sentenças em Open SQL somente podem trabalhar com tabelas de banco de dados criadas no Dicionário ABAP.
  246. 246. ABAP - Advanced Business Application Programming Open SQL COMANDO SIGNIFICADO SELECT Realiza a leitura dos dados de uma tabela. INSERT Insere dados em uma tabela. UPDATE Atualiza os dados em uma tabela. MODIFY Insere os dados de uma tabela caso não existam ou atualiza os dados caso existam. DELETE Apaga os dados de uma tabela
  247. 247. ABAP - Advanced Business Application Programming SELECT
  248. 248. ABAP - Advanced Business Application Programming Exibindo resultados SQL • Para o exemplo realizado no exercício de criação e atualização de tabelas, um relatório de exemplo seria:
  249. 249. ABAP - Advanced Business Application Programming SY-TABIX O campo do sistema SY-SUBRC contém o indicativo de resultado da consulta aos dados do banco. Na situação em que foram encontrados resultados, o campos é preenchido com 0 (zero);
  250. 250. ABAP - Advanced Business Application Programming SY-SUBRC
  251. 251. ABAP - Advanced Business Application Programming Exercício: Apresentar resultado SQL • Selecionar os dados das notas do aluno a partir da tabela ZNOTASNN; • Deverão ser exibidas as colunas Matrícula, Nome, Notas[1-4], Média e Resultado. • A média o resultado deverão ser calculados e apresentados no relatório.
  252. 252. ABAP - Advanced Business Application Programming CASE
  253. 253. ABAP - Advanced Business Application Programming Funções
  254. 254. ABAP - Advanced Business Application Programming Funções • As funções no SAP são definidas através da transação SE37; • Uma vez definidos os parâmetros, será necessário ATIVAR a função para que a mesma seja utilizada em toda a extensão da aplicação SAP.
  255. 255. ABAP - Advanced Business Application Programming Funções
  256. 256. ABAP - Advanced Business Application Programming Funções
  257. 257. ABAP - Advanced Business Application Programming Funções
  258. 258. ABAP - Advanced Business Application Programming Funções • Os tipos serão apresentados conforme os elementos do SAP;
  259. 259. ABAP - Advanced Business Application Programming Funções • Os elementos de dados que estão na aplicação poderão ser pesquisados em toda a extensão da aplicação SAP; • Para o exemplo de soma entre dois inteiros, selecionar o tipo INTEGER;
  260. 260. ABAP - Advanced Business Application Programming Funções 1 2 3
  261. 261. ABAP - Advanced Business Application Programming Funções • Valor proposto para parâmetro de importação: – É possível preencher parâmetros de importação com valores propostos. Estes podem ser: literais, constantes numéricas, campos de sistema (SY-DATUM, SY-LANGU) ou o campo predefinido SPACE; – Caso seja indicado um valor proposto, ao chamar, não é preciso preencher o parâmetro com um valor atual; – Utilizar aspas como caracteres de delimitação para os literais.
  262. 262. ABAP - Advanced Business Application Programming Funções A opção “Opcional” deverá ser marcada caso o parâmetro não seja obrigatório à função.
  263. 263. ABAP - Advanced Business Application Programming Funções
  264. 264. ABAP - Advanced Business Application Programming Funções • Chamada com transferência de valor – A transferência do parâmetro é efetuada com transferência de valor. – Isto significa que o conteúdo do parâmetro é copiado durante a transferência e adiamento do parâmetro de chamada. – Em estruturas que contêm tabelas, isto pode levar a fortes reduções de performance e, se possível, não deve ser mais utilizado.
  265. 265. ABAP - Advanced Business Application Programming Funções
  266. 266. ABAP - Advanced Business Application Programming Funções
  267. 267. ABAP - Advanced Business Application Programming Chamada de uma função em um relatório • Utilização do Modelo; • Inserindo parâmetros de entrada; • Exibindo o resultado do retorno da função. Vídeo
  268. 268. ABAP - Advanced Business Application Programming Funções
  269. 269. ABAP - Advanced Business Application Programming Exercício: criação de tabela • Documento : INTEIRO(10); • Item: INTEIRO(5); • Material: INTEIRO(4); • Quantidade: INTEIRO(2); • Unitário: NUMERIC(2); • Total: NUMERIC(2); • Observação: Texto(255); Documento e Item são chaves da tabela. Todos os campos são de preenchimento obrigatório. Os desenvolvimentos somente poderão estarem salvos como Objetos Locais.
  270. 270. ABAP - Advanced Business Application Programming • Preencher os dados na tabela conforme o indicado abaixo: Exercício: preenchimento de dados Doc. Item Mat Qtde Unit Total Obs 1000000001 00001 900001 10 10,00 0,00 1000000001 00002 900002 12 12,00 0,00 1000000002 00001 900001 9 100,00 0,00 1000000002 00002 900003 20 25,00 0,00 1000000002 00003 900003 9 50,00 0,00
  271. 271. ABAP - Advanced Business Application Programming Visões • Visões são agrupamentos de dados que, geralmente, são compostas de tabelas diferentes; • Uma vez definida a visão, é possível definir uma aplicação dependente da combinação dos dados da mesma; • Uma visão pode ser utilizada em programas ABAP para a seleção de dados.
  272. 272. ABAP - Advanced Business Application Programming Visões
  273. 273. ABAP - Advanced Business Application Programming Tipos • Os tipos de dados definidos para os usuários podem ser armazenados em todos os programas do Dicionário ABAP.
  274. 274. ABAP - Advanced Business Application Programming Dicionário ABAP
  275. 275. ABAP - Advanced Business Application Programming Domínio • Um domínio define uma faixa de valores e deve estar atribuído a um elemento de dados;
  276. 276. ABAP - Advanced Business Application Programming Domínio
  277. 277. ABAP - Advanced Business Application Programming Domínio • Os domínios são definidos através da transação SE37;
  278. 278. ABAP - Advanced Business Application Programming Domínio 1 2 3
  279. 279. ABAP - Advanced Business Application Programming Domínio
  280. 280. ABAP - Advanced Business Application Programming Domínio
  281. 281. ABAP - Advanced Business Application Programming Domínio
  282. 282. ABAP - Advanced Business Application Programming Domínio
  283. 283. ABAP - Advanced Business Application Programming Atualização da tabela – SM30

×