Você está na página 1de 30

UNIDADE 2

INTRODUÇÃO AO
ABAP
SUMÁRIO:
1. Conceitos da Programação ABAP
1.1 Estrutura Geral de um Programa
1.1.1 Declarações Globais
1.1.2 Procedural
1.1.3 Sintaxe ABAP
1.1.4 Regras básicas de sintaxe
1.1.5 Declaração em cadeia
2. Controle de Versão
3. Tipos de Programas (RICEFW)
3.1 Como RICEFW é usado em um projeto SAP?
3.2 Reports (Relatórios)
3.3 Interfaces
3.4 Conversion (Conversões)
3.5 Enhancements
3.6 Forms (formulários)
3.6.1 Sapscript
3.6.2 Smart Forms
3.6.3 Adobe Forms
3.7 Workflow
4. Requests
4.1 Criando sua primeira Request
5. Pacotes (Packages)
5.1 Server Package
5.2 Client Package
5.3 Criando seu primeiro Pacote
6. Criação do Primeiro Programa Local na SE38
7. Debugger

Academia MGS - 2023


8. Exercícios

1. Conceitos da Programação ABAP


Os programas ABAP processam dados do banco de dados ou de uma
fonte externa. Os programas ABAP são executados na camada de aplicativo e
as instruções do programa ABAP podem funcionar apenas com os dados
disponíveis localmente no programa. Dados externos, como entradas do
usuário em telas, dados de um arquivo sequencial ou dados de uma tabela de
banco de dados, devem sempre ser transportados e salvos na memória local
do programa para serem processados com instruções ABAP.
Em outras palavras, antes que qualquer dado possa ser processado com
um programa ABAP, ele deve primeiro ser lido da fonte, armazenado
localmente na memória do programa e, em seguida, acessado por meio de
instruções ABAP; você não pode trabalhar com os dados externos diretamente
usando instruções ABAP. Esses dados temporários que existem em um
programa ABAP enquanto o programa é executado são chamados de dados
temporários e são apagados da memória assim que a execução do programa
termina. Se você deseja acessar esses dados posteriormente, eles devem ser
armazenados de forma persistente no banco de dados; esses dados
armazenados são chamados de dados persistentes.

1.1 Estrutura Geral de um Programa

Qualquer programa ABAP pode ser amplamente dividido em duas


partes:
 Declarações globais - Na área de declaração global, os dados
globais para o programa são definidos; esses dados podem ser
acessados de qualquer lugar no programa.
 Procedural - A parte procedural do programa consiste em vários
blocos de processamento, como módulos de diálogo, blocos de
eventos e procedimentos. As instruções dentro desses blocos de
processamento podem acessar os dados globais definidos nas
declarações globais.

Academia MGS - 2023


1.1.1 Declarações Globais

A parte da declaração global de um programa ABAP usa instruções


declarativas para definir locais de memória, que são chamados de objetos de
dados e que armazenam os dados de trabalho do programa. As instruções
ABAP funcionam apenas com dados disponíveis no programa como conteúdo
para objetos de dados, por isso é imperativo que os dados sejam armazenados
em um objeto de dados antes de serem processados por um programa ABAP.
Os objetos de dados são locais para o programa; eles podem ser
acessados por meio de instruções ABAP no mesmo programa. A área de
declaração global existe na parte superior do programa. Usamos o termo global
em relação ao programa; os objetos de dados definidos nesta área são visíveis
e válidos em todo o programa ABAP e podem ser acessados de qualquer lugar
no código-fonte usando instruções ABAP.
ABAP também usa declarações locais, que podem ser acessadas
apenas dentro de um subconjunto do programa.

1.1.2 Procedural

Depois da área de declaração global está a parte procedural do


programa. Aqui, a lógica de processamento do programa ABAP é definida.
Nesta seção do programa ABAP, você normalmente usa várias instruções
ABAP para importar e processar dados de uma fonte externa.

Academia MGS - 2023


A área de procedimentos é onde a lógica do programa é implementada.
Ele usa vários blocos de processamento que contêm instruções ABAP para
implementar requisitos de negócios. Por exemplo, em um relatório típico, a
área de procedimentos contém um bloco de eventos para processar a tela de
seleção e validar as entradas do usuário na tela de seleção e outro bloco de
eventos para buscar os dados do banco de dados com base na entrada do
usuário e, em seguida, chama um procedimento para exibir a saída para o
usuário.

Academia MGS - 2023


1.1.3 Sintaxe ABAP

O código-fonte de um programa ABAP é simplesmente uma coleção de


várias declarações ABAP, interpretadas pelo ambiente de execução para
realizar tarefas específicas. Você usa instruções declarativas para definir
objetos de dados, instruções de modularização para definir blocos de
processamento e instruções de banco de dados para trabalhar com os dados
no banco de dados. Nesta seção, veremos as regras básicas de sintaxe que
todo programador ABAP deve conhecer. Em seguida, examinaremos o uso de
declarações encadeadas e linhas de comentários.

1.1.4 Regras básicas de sintaxe

Existem certas regras básicas de sintaxe que precisam ser seguidas ao


escrever instruções ABAP:
 Um programa ABAP é uma coleção de instruções ABAP
individuais que existem dentro do programa. Cada declaração
ABAP é concluída com um ponto (".") E a primeira palavra da
declaração é conhecida como palavra-chave.
 Uma instrução ABAP consiste em palavras-chave (Keywords),
operandos (operands) e operadores (operators) ou adições
(Additions) e. A primeira palavra de uma instrução ABAP é uma
palavra-chave ABAP, o restante pode ser operandos, operadores
ou adições. Operandos são objetos de dados, tipos de dados,
procedimentos e assim por diante.
 Vários operadores estão disponíveis, como operadores de
atribuição que associam os campos de origem e destino de uma
atribuição (por exemplo, ‘=’ ou ‘?=’), Operadores aritméticos que
atribuem dois ou mais operandos numéricos com uma expressão
aritmética (por exemplo, +, -, *) , operadores relacionais que
associam dois operandos com uma expressão lógica (como =,
<,>), etc. Cada palavra-chave ABAP terá seu próprio conjunto de
adições.

Academia MGS - 2023


 Cada palavra da declaração deve ser separada por pelo menos
um espaço.
 Uma instrução ABAP termina com um ponto e você pode
escrever uma nova instrução na mesma linha ou em uma nova
linha. Uma única instrução ABAP pode se estender por várias
linhas.
 O código ABAP não faz distinção entre maiúsculas e minúsculas.
Na Figura abaixo, o programa mostrado consiste em três instruções
ABAP escritas em três linhas. A primeira palavra em cada uma dessas
declarações (REPORT, PARAMETERS, e WRITE) é uma palavra-chave. Como
você pode ver, cada declaração começa com uma palavra-chave e termina
com um ponto final. Além disso, cada palavra ABAP é separada por um
espaço.

Você pode escrever várias instruções em uma linha ou uma instrução


pode se estender por várias linhas. Portanto, se desejar, você pode reescrever
o código da Figura, conforme mostrado:

REPORT ZCA_DEMO_PROGRAM. PARAMETERS p_input(10) TYPE c. WRITE p_


input RIGHT-JUSTIFIED.

No entanto, para manter o código legível, recomendamos restringir seu


programa a uma instrução por linha. Em alguns casos, é recomendado quebrar
uma única afirmação em várias linhas, por exemplo:

SELECT * FROM mara INTO TABLE it_mara WHERE matnr EQ p_matnr.

Academia MGS - 2023


A declaração acima pode ser escrita conforme mostrado abaixo para torná-la

mais legível.

SELECT * FROM mara


INTO TABLE it_mara
WHERE matnr EQ p_matnr.

1.1.5 Declaração em cadeia

Se mais de uma instrução começar com a mesma palavra-chave, você


pode usar dois-pontos (:) como um operador de cadeia e separar cada
instrução com uma vírgula. Elas são chamadas de instruções encadeadas e
ajudam a evitar a repetição da mesma palavra-chave em cada linha.
Por exemplo:

DATA v_name(20) TYPE c.


DATA v_age TYPE i.

Pode ser escrito como:

DATA : v_name(20) TYPE c,


v_age TYPE i.

ou:

v_total = v_total + 1.
v_total = v_total + 2.
v_total = v_total + 3.
v_total = v_total + 4.

Pode ser escrito como:

Academia MGS - 2023


v_total = v_total + : 1, 2, 3, 4.

Academia MGS - 2023


2. Controle de Versão
Sempre que trabalhamos em qualquer desenvolvimento ABAP, o
fazemos no sistema de desenvolvimento. Assim que as alterações forem
concluídas, movemos as alterações para os sistemas não produtivos para
testes adicionais e, finalmente, para o sistema de produção. Depois de mover
as alterações para sistemas não produtivos, ele cria a versão no banco de
dados de versão do sistema de desenvolvimento.
No entanto, algumas vezes poderemos ter alguns problemas com o
desenvolvimento, tais como: exclusão acidental de código, necessidade de
reutilização de um código que foi apagado, ou se o desenvolvimento inteiro for
excluído acidentalmente (cenário muito raro). Por conta disso, o SAP
disponibiliza um controle de versão acoplado ao sistema, que pode nos ajudar
muito nesses casos (e também em outros não citados).
Portanto, gerar a versão durante o próprio desenvolvimento é muito
importante para que o backup seja criado para nós em caso de desastre.
Com isso, temos a possibilidade de rastrear todo o ciclo de
desenvolvimento do item, podendo comparar versões, recuperar versões
antigas, etc., o que nos dá uma segurança maior em todos ciclos do projeto.

Academia MGS - 2023


No gerenciamento de Versões, podemos ver as versões já geradas
daquele desenvolvimento (quando o programa é ativado, ele gera uma versão
nova).

Academia MGS - 2023


3. Tipos de Programas (RICEFW)
RICEFW significa - Reports, Interface, Conversion, Enhancements,
Forms, and Workflows. Quando o requisito de negócios não pode ser atendido
por funcionalidades SAP padrão, solicitamos um RICEFW. Todos os objetos
são definidos usando as classificações RICEFW em qualquer projeto de
implementação, implementação, migração ou atualização.
Outro nome para RICEFW é WRICEF. Significa exatamente a mesma
coisa, mas apenas usa uma convenção de nomenclatura diferente.
Normalmente fica a critério das preferências pessoais qual nome usar.
Portanto, alguns projetos SAP usam a sigla RICEFW, enquanto outros usam a
sigla WRICEF.

Academia MGS - 2023


3.1 Como RICEFW é usado em um projeto SAP?

O ciclo de vida de um projeto de implementação SAP possui vários


estágios. Durante a fase de elaboração e análise do projeto, estudamos os
requisitos de negócios e mapeamos esses requisitos no SAP para fornecer
soluções. Os requisitos que não podem ser atendidos pelo aplicativo SAP
padrão são chamados de gaps. Com base na categoria do gap, os objetos são
criados na forma de um item RICEFW. Cada gap terá um objeto RICEFW e o
estoque total de objetos RICEFW é considerado como a lista de tarefas de
entregas a serem desenvolvidas e gerenciadas.
Espera-se que as equipes funcionais do projeto testem totalmente todos
os objetos RICEFW e precisem ser aprovados pelos usuários de negócios.
Esses são os pré-requisitos para a implementação de negócios no SAP. A
qualidade dos objetos RICEFW desempenha um papel fundamental na
determinação do sucesso do projeto.

3.2 Reports (Relatórios)

Um relatório no SAP é uma transação personalizada que é construída


usando um ou vários programas que leem as informações necessárias do
banco de dados e produzem / exibem a saída após a execução do relatório
com base nos critérios de entrada inseridos na tela de seleção da transação,
por um usuário final. É como uma exibição de informações no formato
necessário com base em uma determinada seleção.
Estas são as seguintes categorias de relatórios:
 Relatórios standard disponíveis no SAP - fornecidos apenas pelo SAP
padrão.
 Relatórios desenvolvidos/customizados - desenvolvidos pela equipe do
projeto tendo como referência os relatórios standards do SAP.
 Queries - gera nosso próprio relatório usando tabelas SAP standards.
Caso os relatórios standards não tenham os recursos necessários para
satisfazer os requisitos do cliente, a equipe do projeto desenvolve relatórios
personalizados. Para isso, é necessário entender o requisito completo e, em
seguida, finalizar a tela de seleção, os campos-chave e o formato de saída que
deve ser gerado quando o relatório for executado.

Academia MGS - 2023


Este é então considerado um objeto RICEFW

3.3 Interfaces

Na maioria das empresas, existem vários processos em departamentos


como Planejamento, Expedição, Gerenciamento de Estoque, QA, etc., que são
gerenciados em sistemas de terceiros externos que são sistemas não SAP. Por
exemplo: durante o transporte, eles usam sistemas de logística de terceiros
para coletar / embalar e despachar a entrega. Para isso, as informações de
entrega SAP são enviadas para o sistema externo não SAP, e as informações
de Picking, Pack e Remessa são recebidas no sistema SAP por meio de um
middleware. Essas comunicações EDI são feitas por meio de interfaces e IDocs
são usados para essa transferência de dados.
SAP tem suas estruturas EDI padrão com segmentos e campos
definidos. Mesmo assim, precisamos construir segmentos e campos
personalizados, pois todos os segmentos necessários não estão disponíveis no
padrão. Para isso, o consultor funcional precisa fornecer os detalhes de quais
dados precisam ser transferidos, recebidos e os segmentos, campos, etc., para
a equipe ABAP. Isso é então considerado como outro objeto RICEFW.

Academia MGS - 2023


3.4 Conversion (Conversões)

Quando o SAP for implementado ou atualizado, a organização irá


encerrar seus sistemas legados. Portanto, seus dados ativos de negócios
precisam ser carregados no SAP. Para carregar os dados no sistema SAP,
como Mestre de Materiais, Parceiro de Negócios, Mestre de Lotes, Estoque,
Lista de Materiais, Pedidos de Compra em Aberto, etc., os dados precisam ser
convertidos de um formulário para outro de acordo com a necessidade do
sistema. Isso é chamado de conversão.
Aqui, a equipe de negócios extrai os dados de seus sistemas legados. A
equipe do projeto, então, deseja carregar esses dados no sistema SAP,
fazendo uso das ferramentas de migração de dados SAP, como BDC, LSMW,
LTMC, etc. Aqui, o consultor funcional trabalha com a equipe do cliente e a
equipe técnica para escrever alguns programas que irá ler os dados desses
arquivos e carregá-los no aplicativo SAP. Estes serão os novos objetos na lista
RICEFW.

3.5 Enhancements

Se o requisito de negócios não puder ser satisfeito pelos recursos SAP


padrão, a equipe do projeto adicionará algumas funcionalidades
personalizadas, modificando o padrão SAP. Esses são chamados de
enhancements. Os enhancements são desenvolvidos por consultores técnicos
de ABAP que usam BADIs, frameworks de enhancements ou user exits. Esses
serão os novos objetos RICEFW nos quais a equipe funcional do projeto
trabalha com a equipe de negócios para reunir os requisitos e, em seguida,
trabalhar com a equipe técnica para modificar ou aproveitar o padrão SAP e

Academia MGS - 2023


criar uma nova solução personalizada de acordo com os requisitos de
negócios.

3.6 Forms (formulários)

Os formulários são arquivos de impressão gerados a partir do aplicativo


SAP após salvar os dados transacionais. Alguns exemplos são impressão de
pedido de compra, impressão de documento de material, protocolo de entrega,
bilhete de retirada, folha de contagem de inventário físico, impressão de
etiquetas, etc. SAP padrão tem um formato e modelo predefinidos para todos
esses formulários, mas esses formulários predefinidos podem não atender aos
requisitos de negócios, pois podem adicionar o logotipo de uma empresa ou
imprimir texto jurídico nos formulários. Isso requer que a equipe funcional
trabalhe com ABAP e desenvolva formulários personalizados de acordo com os
requisitos de negócios.
Os formulários podem ser feitos nas seguintes ferramentas:

3.6.1 Sapscript

É a tecnologia de forma mais antiga da SAP. Foi introduzido em 1995


com o Release 30B. A edição de formulários não é tão moderna quanto outras
tecnologias Smart Forms e Adobe Forms. Na comparação direta, entretanto, é
a maneira mais fácil de obter uma aparência uniforme para os formulários.
Além disso, o desempenho da saída de formulário nesta tecnologia é melhor do
que com as outras técnicas. Assim, mesmo depois de mais de 25 anos, ainda
tem sua razão de ser.
Mudar de formulários SAPScript para outra tecnologia sem um requisito
especial não é recomendado devido ao grande esforço. Atualmente, nenhuma
ferramenta está realizando no mercado uma boa conversão automática.

3.6.2 Smart Forms

A tecnologia Smart Forms está no mercado desde SAP ERP Release


4.6C, abril de 2001. Originalmente, essa tecnologia era destinada a substituir o
SAPScript. Mas isso nunca aconteceu. O framework desta tecnologia possui
uma melhor separação e uma interface única entre o programa framework para
aquisição de dados e o layout. A edição de formulários com a transação Smart

Academia MGS - 2023


Forms é mais moderna. Em comparação com o SAPScript, existem inúmeras
melhorias, como no transporte, na integração de módulos de texto e na
integração de gráficos.
Originalmente alardeado como um sucessor do SAPScript, no entanto,
uma coexistência das duas tecnologias foi desenvolvida. Isso certamente se
deve, entre outras coisas, à pouca clareza dessa tecnologia para o
desenvolvedor.

3.6.3 Adobe Forms

A colaboração entre SAP e Adobe levou ao lançamento do Adobe Forms


em 2005. Esta foi a terceira tecnologia de formulário para formulários SAP. É
também a ferramenta mais moderna em geral. A separação de aquisição de
dados e saída de dados é resolvida de forma ainda mais rigorosa aqui.
Vantagens claras dessa tecnologia podem ser encontradas especialmente no
campo de saída de documentos PDF. No entanto, essa tecnologia se tornou
ainda mais complexa do que as outras duas. Existem deficiências significativas,
especialmente na área de análise de erros. Os erros são difíceis de entender,
especialmente técnicas de script, como javascript.
A parceria entre a SAP e a Adobe teve rachaduras significativas ao
longo dos anos, então podemos ver as próprias tecnologias da SAP na área de
formulários novamente em um futuro próximo.

3.7 Workflow

Workflow é o fluxo de dados transacionais de um nível para outro em


uma sequência de acordo com a hierarquia da organização. Em cada nível,
uma ou mais ações são necessárias. Depois de executado, o workflow avança
para o próximo nível. Por exemplo: quando o pedido de compra é criado para
um valor superior a 1000 USD, ele vai para o Gerente para aprovação, uma
vez aprovado irá para o VP para uma aprovação de segundo nível, e assim por
diante. Caso o workflow, de acordo com a necessidade do negócio não esteja
disponível em um aplicativo SAP padrão, é necessário fazer um customizado,
resultando em um novo objeto RICEFW. Aqui, o consultor funcional coordena
com a equipe técnica e desenvolve a lógica de fluxo do objeto de aprovação
personalizado contendo os detalhes dos dados a serem enviados, sob as
condições em que esse fluxo de trabalho deve ser acionado, etc.
Academia MGS - 2023
4. Requests
Transport Requests (TR’s) – são uma espécie de 'Contêiner / Coleção'
de mudanças que são feitas no sistema de desenvolvimento. Também registra
as informações sobre o tipo de mudança, a finalidade do transporte, a categoria
da solicitação e o sistema de destino.
Cada TR contém um ou mais trabalhos de mudança, também
conhecidos como Tarefas de mudança (unidade mínima de mudança
transportável). As tarefas são armazenadas dentro de um TR, assim como
vários arquivos são armazenados em alguma pasta. O TR pode ser liberado
apenas quando todas as tarefas dentro de um TR forem concluídas, liberadas
ou excluídas.
Change Task é na verdade uma lista de objetos que são modificados por
um determinado usuário. Cada tarefa pode ser atribuída a (e liberada por)
apenas um usuário. No entanto, vários usuários podem ser atribuídos a cada
Solicitação de Transporte (pois pode conter várias tarefas). As tarefas não são
transportáveis por si mesmas, mas apenas como parte do TR.
As solicitações de mudança são nomeadas em um formato padrão
como: <SID> K <Number> [Não modificável pelos administradores do sistema

 SID - ID do sistema
 K - é palavra-chave / alfabeto fixo
 Número - pode ser qualquer coisa em um intervalo começando com
900001

O gerente de projeto ou líder designado é responsável por criar um TR e


atribuir os membros do projeto ao TR criando tarefa(s) (tasks) para cada
membro do projeto. As tasks funcionam como “pastas” dentro de uma request,
armazenando as alterações/criações por usuário dentro de uma request. Uma
request pode ter inúmeras tasks. Caso um usuário (user 1) libere sua task e
necessite realizar outra inclusão de dados na request, o SAP automaticamente
cria uma task nova pra ele.

Academia MGS - 2023


A request só pode ser liberada para transporte caso todas as tasks
dentro dela estejam liberadas para transporte também. Caso a request esteja
liberada, não poderá mais ser criada nenhuma task dentro dela.

Como dito anteriormente, as requests são divididas em 2 tipos:


 Request Workbench : contém objetos de repositório e também objetos de
personalização de ‘cross client’. Essas solicitações são responsáveis por
fazer alterações nos objetos do workbench ABAP.
 Request Customizing : contém objetos que pertencem ao customizing
‘client specific'. De acordo com as configurações do cliente, essas
solicitações são registradas automaticamente quando os usuários realizam
as configurações de personalização e um sistema de destino é atribuído
automaticamente de acordo com a camada de transporte (se definida).
Existe também o Transporte de Cópias (ToC) – Ele é feito para
transportes entre os ambientes de DEV e/ou QAS em que não se podem liberar
as request/tasks. É bastante utilizado na fase de testes. Não possui tasks e
não pode ser transportado para PRD.
O fluxo de funcionamento de uma request basicamente é o seguinte:

Academia MGS - 2023


Uma vez que a Request é liberada, ela pode ser transportada para
outros ambientes. Isso pode ocorrer automaticamente ou manualmente,
através de serviços de importação/ transporte de requests.
 Metodo automático: O administrador do sistema configura as rotas de
transporte e configura um job que faz uma varredura no sistema com um
intervalo pré-determinado (5, 10, 30 minutos), onde caso seja encontrada
uma request ou transporte de cópias liberados, ele faz o transporte
automaticamente.
 Metodo manual: Através da transação STMS, o usuário pode fazer o
transporte manual de sua request ou transporte de cópias para o ambiente
que ele desejar (menos PRD).
Atualmente também é usada uma ferramenta da SAP chamada
SOLMAN (Solution Manager), em que também é possível realizar o transporte
de requests por ela, manual ou automaticamente.

Academia MGS - 2023


As transações para gerenciamento de requests são SE09 e SE10.

Academia MGS - 2023


4.1 Criando sua primeira Request

Acesse a transação SE09 > Clique em Criar Ordem:

Escolha Request de Workbench:

Coloque uma descrição > Escolha um Projeto:

Academia MGS - 2023


Clique em Salvar

5. Pacotes (Packages)
Pacote é um objeto de desenvolvimento contido na transação SE21 (ou
SAPCKAGE) que armazena os objetos como menus, telas, módulos funcionais,
transações etc. O construtor de pacotes é usado para desenvolver e manter
classes de desenvolvimento, classes e objetos de transferência para outros

pacotes.

Tarefas do Package Builder: - As tarefas importantes realizadas pelas


ferramentas do Package Builder são as seguintes -
 Definir interface de pacotes para usuários e restringir o uso de
interface para usuários selecionados.
 Definir o acesso do usuário para uso do serviço de outro pacote.
 Criação de pacotes e subpacotes.

Academia MGS - 2023


 Defina a hierarquia do pacote
 Definindo interface para o pacote do usuário.

5.1 Server Package

Ele fornece ferramentas de desenvolvimento como BAPIs, classes,


programas, módulos funcionais, tipos etc. As tarefas executadas pelo Server
Package são as seguintes:
 Criação de pacote e definição de hierarquia.
 Isso ajuda a acessar o conteúdo de um pacote de outro pacote
por meio da interface do pacote.

5.2 Client Package

No cliente package, você define o acesso do usuário para o serviço


visível de outros pacotes. Semelhante ao pacote do servidor, o pacote do
cliente fornece uma estrutura para o pacote.

Academia MGS - 2023


5.3 Criando seu primeiro Pacote

Acesse a Transação SE21 > coloque o nome ZPRIMEIROPACOTE >


Criar:

Adicione a Descrição, e crie seu pacote:

Salve na Request que você criou.

Academia MGS - 2023


6. Criação do Primeiro Programa Local na SE38
Vamos criar nosso primeiro programa, criando um relatório e escrevendo
“Hello World” na tela.
1. Fazer Login no SAP

2. Na caixa de diálogo, escrever SE38 e apertar ENTER

Academia MGS - 2023


3. Em Programa, escrever ZPRIMEIROPROGRAMA e depois clicar
no botão CRIAR

4. No Título, escrever “Meu Primeiro Programa”, em TIPO, escolher


“Programa executável” e depois clicar em Gravar.

Academia MGS - 2023


5. Clicar em “Objeto Local”

6. Escrever WRITE 'Hello World!' e clicar no botão Ativar.

Apertar F8.

7. Debugger
Um depurador (debugger) é uma ferramenta inestimável para qualquer
ambiente de programação. Enquanto o verificador de sintaxe ajuda a identificar
qualquer sintaxe ou erros estáticos, o depurador ajuda a identificar quaisquer
erros lógicos. Às vezes, é impossível detectar erros lógicos sem depuração.
Ter boas habilidades de depuração ajuda a solucionar muitos problemas com
programas de aplicativos.

Academia MGS - 2023


A depuração ajuda a analisar o fluxo do programa para um cenário
específico e a analisar a execução do programa. Usando um depurador, você
pode parar em um ponto específico na execução do programa e analisar o
status do sistema, o conteúdo dos objetos de dados e assim por diante. O
depurador é uma ferramenta de programa que permite executar um programa
sistematicamente e analisar o status do sistema em cada etapa para solucionar
problemas com o programa.
Se você é um iniciante em ABAP, um depurador pode ser seu melhor
amigo quando se trata de entender a programação ABAP; ele permite que você
examine seus programas passo a passo, o que, por sua vez, pode ajudá-lo a
entender como cada instrução se comporta e a funcionalidade que ela oferece.
Quanto mais confortável você estiver com o ABAP, melhor se tornará em
programas de depuração para solucionar problemas. Se você for um usuário
ABAP intermediário a avançado, o depurador ainda é uma ferramenta
extremamente útil para garantir um código sem erros.
A SAP oferece duas versões de ferramenta de depuração: o antigo
depurador, chamado Classic Debugger, que estava disponível para versões
anteriores ao SAP NetWeaver AS ABAP 6.40, e o New Debugger, lançado com
SAP NetWeaver AS ABAP 6.40. O novo depurador oferece muito mais
recursos do que o depurador clássico.

Academia MGS - 2023


Existem quatro maneiras de executar o código no modo de depuração:

 Etapa Única (Single Step - Pressione F5) – Isso executará o código linha
por linha. Use-o se quiser executar cada instrução, uma por uma.
 Executar (Execute - pressione F6) - Isso executará o bloco de
processamento completo e passará para a próxima instrução após o local
da chamada, se usado no local da chamada do bloco de processamento.
Por exemplo, se você pressionar (F6) na instrução PERFORM ou na
instrução CALL FUNCTION, o depurador executará a sub-rotina ou módulo

Academia MGS - 2023


de função completamente sem entrar no bloco. Isso é útil se você não
quiser verificar a execução de um bloco de processamento e pular para a
próxima instrução após o local da chamada. Se (F6) for usado em qualquer
local, exceto em uma chamada de bloco de processamento, ele se
comportará de maneira semelhante ao Single Step e executará cada linha,
uma a uma.
 Retornar (Return - Pressione F7) – Esta opção sairá do bloco de
processamento se usada dentro de um bloco de processamento. Por
exemplo, se você inseriu um bloco de processamento pressionando (F5) e
depois de executar algumas linhas, você percebe que deseja sair do bloco
de processamento porque não deseja analisar mais código, pode pressionar
(F7) para deixe o bloco de processamento e volte para a instrução
imediatamente após o local da chamada.
 Executar Tudo (Run - pressione F8) - Isso irá para o próximo ponto de
interrupção ou completará a execução do programa se nenhum ponto de
interrupção adicional for definido.

8. Exercícios
1. Explique com suas palavras para que serve o controle de versões.
2. Explique com suas palavras o que é RICEFW e resuma o que faz cada tipo de objeto contido
dentro dele.
3. Explique com suas palavras o que é uma Request e como ela é usada.
4. Crie um Programa que escreva seu nome e salve na request e pacote que você criou.
5. Faça o debug do programa e execute ele passo a passo (F5).

Academia MGS - 2023

Você também pode gostar