Escolar Documentos
Profissional Documentos
Cultura Documentos
Funcionais e Basis
• Introdução
• mySAP ERP
• Dicionário de Dados
• Mensagens
• Tipos de Objetos (Programas)
• Entrada de dados no mySAP ERP
• Enhancements (Pontos de Alteração nos programas Standards)
• Workflow
• Dicas
• Como preencher Especificação
• Atenção com a Metodologia de Desenvolvimento
• Diversos
• Transações Úteis
• Principais tabelas do mySAP ERP por módulo
2
Introdução
3
Treinamento ABAP - Funcionais e Basis
Introdução
4
mySAP ERP
5
Treinamento ABAP - Funcionais e Basis
Agenda
• Instâncias
• Client ou Mandante
• Change-Request
• Liberar e Transportar Request
• Resumo Geral
6
Treinamento ABAP - Funcionais e Basis
mySAP ERP
• Instâncias
– Entende-se por instância uma instalação de um sistema mySAP ERP
• Desenvolvimento
• Qualidade
• Produção
• Client ou Mandante
– Cada instância subdivide-se em mandantes (o mesmo que client). Um
exemplo prático da utilização de mandantes acontece no ambiente de
desenvolvimento. Trabalha-se sempre com pelo menos dois mandantes. No
primeiro são feitas as configurações, mas não temos dados pertinentes ao
negócio. A isto chamamos “client aberto”. No segundo temos os dados, mas
não temos abertura para fazer alterações. A isto chamamos “client fechado”.
• Change-Request
• Liberar e Transportar Request
– SE09 - Ordem de Workbench (ABAP)
– SE10 - Ordem de Customizing (Funcional)
7
Treinamento ABAP - Funcionais e Basis
mySAP ERP
• Resumo
– O sistema mySAP ERP trabalha com múltiplas instâncias e
mandantes.
– Para se efetuar uma customização no sistema mySAP ERP, os
passos são os seguintes:
• cria-se uma change-request no ambiente (instância) de
desenvolvimento;
• desenvolvedores efetuam alterações e atribuem à request;
• após a liberação de todas as tarefas libera-se a request para
transporte;
• o responsável pede ao profissional de basis que transporte a
request para o ambiente de qualidade;
• Valida-se a alteração contra os dados consistentes do ambiente de
QA;
• Caso não se consiga atingir os objetivos, volta-se ao passo 1, e
ficamos com duas requests referentes à
alteração/desenvolvimento.
• atingindo o objetivo esperado, solicita-se ao profissional de basis
novo transporte, desta vez para o ambiente de produção. 8
Dicionário de Dados
9
Treinamento ABAP - Funcionais e Basis
Dicionário de Dados
10
Treinamento ABAP - Funcionais e Basis
Dicionário de Dados
– Visão
Duas ou mais tabelas transparentes podem ser unidas compondo uma
visão. Visões integram as tabelas e permitem um melhor acesso aos
seus conteúdos. Externamente, uma visão tem o mesmo comportamento
de uma tabela transparente. Podendo ser visualizada nas transações
SE11 e SE16.
11
Treinamento ABAP - Funcionais e Basis
Dicionário de Dados
– Estrutura
Muitas vezes confundidas com tabelas transparentes, as estruturas são
utilizadas como base para outros objetos que contenham dados, mas a
estrutura em si não contém dados. Uma estrutura se assemelha muito a
uma tabela transparente por ter o mesmo formato (uma série ordenada
de campos), mas a diferença é que as tabelas contêm dados, enquanto a
estrutura não.
Uma estrutura pode ser criada para servir como formato para campos
estruturados em tabelas, parâmetros, outras estruturas, tabelas internas
ou variáveis em programas ABAP, etc.
– Campos Chave
Compreendem-se por campos chave aqueles que identificam um registro na
tabela, ou seja, são eles que garantem a unicidade dos dados.
Ex.: Para acessar um registro de cliente (tabela transparente KNA1) é
necessário fornecer sua chave que é o código do cliente (campo
KUNNR).
Uma característica importante é que tecnicamente você pode ter dois
clientes com o mesmo nome (que não é chave), mas não pode ter dois
clientes com o mesmo código (que é chave).
12
Treinamento ABAP - Funcionais e Basis
Dicionário de Dados
– Índices
• São “ponteiros” criados para agilizar o acesso aos dados das tabelas sem a
utilização dos campos chaves.
– Tipos de dados
13
Mensagens
14
Treinamento ABAP - Funcionais e Basis
Mensagens
– Classe de Mensagem
• Uma classe de mensagem é um “pacote” que contem diversas
mensagens, geralmente do mesmo processo ou modulo.
– Tipos de Mensagens
15
Tipos de Objetos
(Programas)
16
Treinamento ABAP - Funcionais e Basis
Tipos de Objetos (Programas)
– Report
Transação: SE38 ou SE80
• Parameter
• Select-Options
17
Treinamento ABAP - Funcionais e Basis
Tipos de Objetos (Programas)
– Report
Transação: SE38 ou SE80
• Parameter
18
Treinamento ABAP - Funcionais e Basis
Tipos de Objetos (Programas)
• Select-Options
19
Treinamento ABAP - Funcionais e Basis
Tipos de Objetos (Programas)
• Relatório ALV
E um tipo de relatório, mas gráfico que o report convencional e possui
diversas funcionalidades para interação dos usuários como, Ordenar
colunas, realizar totais e subtotais, incluir e excluir campos visíveis,
exportar para planilha excel, entre outras.
20
Treinamento ABAP - Funcionais e Basis
Tipos de Objetos (Programas)
• Includes
São programa não executáveis que contem rotinas ABAP que podem ser
utilizadas por outros programas.
21
Treinamento ABAP - Funcionais e Basis
Tipos de Objetos (Programas)
• Sapscript
Transação SE71
O Sapscript pode ser visto como uma evolução do report. Conta com uma
interface mais requintada, elementos gráficos, vários fontes, etc. Tem
como base um programa do tipo report, que o provê com as informações
a serem apresentadas, o SapScript só trabalha com parte visual do
relatório.
• SmartForms
Transação Formulário: smartforms / Tabulações: smartstyles
O SmartForms pode ser visto como uma evolução do Sapscript. Conta com
uma interface técnica e com facilitadores para o desenvolvedor, podendo
também fazer impressão colorida de letras, linhas e fundos.
22
Treinamento ABAP - Funcionais e Basis
Tipos de Objetos (Programas)
• Módulo de Função
Transação SE37
É um Módulo de programa parametrizável e reutilizável. Muito útil para
rotinas que podem ser usadas em vários pontos do sistema.
• Query
São relatórios que o próprio usuário pode montar através das transações
SQ.., fazendo uso de visões, banco de dados lógico, tabelas
transparentes ou programas ABAP como fonte de dados. Existe um
controle de acesso por grupo de usuários. É necessário cuidado com as
queries, pois se elaboradas sem o devido cuidado podem acabar se
tornando processamentos muito pesados gerando quedas de
performance no servidor.
23
Entrada de Dados
mySAP ERP
24
Treinamento ABAP - Funcionais e Basis
Entrada de dados no mySAP ERP
• Call Transaction
É um mecanismo que permite a entrada automática de dados nas telas do
mySAP ERP. Desta forma garante-se a integridade das informações, pois
elas passam pelas mesmas validações que seriam feitas se um usuário
as estivesse digitando. Uma utilização muito comum é fazer com que o
processamento de uma transação dispare um processamento automático
em outra transação. O segundo processamento fica automatizado, e será
executado de forma transparente ao usuário. É como se ele mesmo
tivesse digitado as informações.
• Batch Input
Segue o mesmo princípio do call transaction, porém é feito em batch.
Geralmente é utilizado para carga de dados e utilizado em ambiente &
implantação. Funciona da seguinte maneira: um programa (geralmente
tipo report) gera várias entradas de call transaction que ficam
armazenadas em uma pasta de batch-input. Essa pasta pode ser
processada posteriormente no momento oportuno na transação SM35.
Esse processamento conta com vários mecanismos para tornar a carga
mais consistente.
25
Treinamento ABAP - Funcionais e Basis
Entrada de dados no mySAP ERP
• Idoc
É uma forma de comunicação entre sistemas baseada na arquitetura ALE.
Consiste na troca de documentos eletrônicos baseados em layout pré-
definidos. Geralmente utilizado para integrarem diferentes instancias de
MYSAP ERP. Ex.: A instancia A emite um pedido de compra para a
instância B. Um IDOC é enviado da instancia A para a instancia B. Ao
receber o IDOC a instancia B gera automaticamente um documento de
vendas para a instancia A. Essa comunicação pode ser feita também com
sistemas não mySAP ERP.
26
Treinamento ABAP - Funcionais e Basis
Entrada de dados no mySAP ERP
27
Enhancements
28
Treinamento ABAP - Funcionais e Basis
Enhancements
• User-Exit
Transações:
CMOD – Projetos
SMOD – Ampliações
As vezes é necessário alterar em nível de programa alguma funcionalidade
de uma transação standard. Não é possível alterar diretamente o
programa standard. Para resolver este problema a SAP deixou algumas
“funções” no programa standard, em pontos estratégicos, de modo que o
desenvolvedor consegue colocar código ABAP Z trabalhando junto com o
código standard. Essas “funções” são as user-exits.
29
Treinamento ABAP - Funcionais e Basis
Enhancements
• Field-Exit
Já para as field-exits não existe esse tipo de restrição. Temos field-exits para
qualquer campo que apareça na tela. O funcionamento é muito
semelhante. A diferença é que o código anexado à field-exit tem efeito
apenas no contexto do próprio campo e programa relacionado. É
normalmente utilizado para validações, gerando mensagens de erro de
acordo com o valor digitado.
CMOD
30
Treinamento ABAP - Funcionais e Basis
Enhancements
31
WorkFlow
32
Treinamento ABAP - Funcionais e Basis
WorkFlow
Principais Transações:
SWO1 - Business Object Builder
PFTC - Atualização de tarefas geral
33
Dicas
34
Treinamento ABAP - Funcionais e Basis
Dicas – Como Debugar
35
Treinamento ABAP - Funcionais e Basis
Dicas – Como Debugar
• Campos
• Tabelas
• Pontos de Paradas
• Watchpoints
• Chamadas
• Áreas do sistema
36
Treinamento ABAP - Funcionais e Basis
Dicas – Lista de Utilizações
37
Treinamento ABAP - Funcionais e Basis
Dicas – Ver nome e tipo de campo
38
Treinamento ABAP - Funcionais e Basis
Dicas – Como obter o nome do programa de uma transação
39
Treinamento ABAP - Funcionais e Basis
Dicas – Mapear transações - SHDB
40
Treinamento ABAP - Funcionais e Basis
Dicas – Cria Variantes de Tela
41
Como preencher
especificação
42
Treinamento ABAP - Funcionais e Basis
Dicas – Como preencher especificação
43
Treinamento ABAP - Funcionais e Basis
Dicas – Como preencher especificação
• Funcional
A especificação funcional deve descrever do ponto de vista funcional a
alteração a ser feita no sistema. Servirá de base para a criação da
especificação técnica.
- Explica quais os processos envolvidos e como eles se inter-relacionam.
- Identifica qual a origem e qual o destino dos dados no processamento.
É importante que se esclareça ao máximo o processo no nível funcional,
mas no é necessário no nível técnico.
44
Treinamento ABAP - Funcionais e Basis
Dicas – Como preencher especificação
• Técnica
Com base na especificação funcional, o consultor ABAP descreve na
especificação Técnica como a alteração será implementada no nível
técnico(programa).
Exemplo:
- A especificação funcional pede um relatório das ordens de venda.
- A especificação técnica descreve a solução técnica elaborada para atender
a solicitação: com base nas tabelas VBAK e VBAP, com interface tipo
ALV, etc.
45
Treinamento ABAP - Funcionais e Basis
Dicas – Atenção com a Metodologia de Desenvolvimento
46
Treinamento ABAP - Funcionais e Basis
Dicas – Diversos
• Classe de Desenvolvimento
• Grupo de Autorização
• Autorithy Check
• Ativação de Objeto
• Atenção com a senha ao executar o Login
• Transações úteis
– SE03 – Ferramentas de Transport Organizer
– SE30 – Análise tempo execução objetos ABAP
– SE80 – Object Navigator
– SE84 – Object Navigator
– ST04 – Peformance Analysis
– ST22 – ABAP análise dump
– SU21 – Atualizar objetos de autorização
– SU53 – Avaliação da verificação autorização
• Principais tabelas do mySAP ERP por módulo
47
CO/FI
BKPF COSP
BSAD CSKS
BSAK CSKT
BSAS GLT0
BSID GLT1
BSIK SKA1
BSEG
BSIS
COBK
COEP
SD
J1_BBRANCH VTTK VBKA
LIPS KOMV
VBAK KONH
VBAP VBPA
VBFA VBBE
VBRK VBBS
VBRP VBEP
MM
MARA MVKE EKET