ABAP for dummies

ABAP for dummies é para profissionais que estão iniciando a carreira de analista funcional ou começando a trabalhar como key users em áreas funcionais de empresas que usam SAP, muitas vezes se sentem “perdidos” com a infinidade de terminologias e processos que envolvem as customizações realizadas no código ABAP.

É comum quando se fala no desenvolvimento de customizações com programadores e pessoas mais experientes, os assuntos acabarem ficando muito técnicos, dificultando assim a compreensão dos iniciantes na área.

O que é? O que é?

Neste artigo, abordaremos os principais pontos utilizados no ABAP, com uma visão mais básica para profissionais iniciantes, para que assim possam compreender melhor os termos utilizados e permitir que possam especificar melhor suas demandas.

1.         Programa

Um programa é um conjunto de instruções de uma determinada linguagem que executa uma lógica para atender uma funcionalidade específica. No SAP existem diferentes tipos de programa, mas dentre os mais conhecidos podemos citar os Report e os Módule Pool. Para criar estes tipos de programa devem ser utilizadas as transações SE38 ou SE80.

Um Report é um programa simples de fácil desenvolvimento que possibilita a criação rápida de uma tela de entrada e saída de dados, sem a necessidade de utilizar códigos complexos para criar e fazer controles de telas.

Um Module Pool é um programa que executa uma ou mais telas. Nesse caso, ele proporciona maior flexibilidade para criação de uma funcionalidade mais complexa que tenha a necessidade de efetuar mais ações de tela, assim como navegar entre inúmeras telas. Para utilizar esse tipo de programa é necessário que se faça um controle das ações, navegação e manipulação de variáveis.

2.         Função ou Módulo de função

Uma função ou módulo de função é um conjunto de instruções ou lógicas que tem o objetivo de executar uma funcionalidade específica. Uma função é utilizada para organizar as ações de um programa e que poderão ser reutilizadas em outros programas. Para criar esse tipo de função deve-se utilizar a transação SE37.

Dentre alguns exemplos que mostram a razão de que vale a pena escolher esse tipo de recurso, são as funções para envio de e-mail, impressão de etiquetas, impressão de arquivos, carga de planilhas, etc. Estas são funções muito úteis e frequentemente utilizadas no ABAP.

3.         Include

Um include é um arquivo ABAP utilizado para organizar as informações dentro de um programa ou função. Quando se trabalha com telas ou módule pool, os arquivos são separados em includes de declaração de variáveis globais (Include TOP), quando executa a ações de tela (include PAI) e para mostrar a tela de saída (include PBO), além da possibilidade de criar includes para execução das regras de negócio que geralmente são inseridos dentro de includes F01, F02 e etc.

Quando se executa um programa ou uma função são geradas as chamadas de performs que interligam o código principal (programa ou função) com os includes criados para a execução das regras de negócio e controles de tela.

4.         Form e Perform

Form e Perform são recursos semelhantes, mas com finalidades diferentes. Um perform é um pedaço de código ABAP que tem o objetivo de executar uma determinada função. Dentro de um programa esses perform’s podem ser reaproveitados, evitando a duplicação de código fonte.

Imagine que dentro de um programa seja necessário selecionar informações de ordens de venda. Neste caso, é possível criar um perform dentro do próprio programa para selecionar os dados necessários, como por exemplo, o número da ordem de venda. Para o perform será passado como parâmetro a OV, que irá retornar a informação encontrada. É aconselhável que sempre um perform passe parâmetros, ele execute a ação necessária e devolva o resultado claro, sem a utilização de variáveis globais.

Nesse contexto durante a execução do código ABAP, deve-se fazer uma chamada PERFORM, selecionar_ov USING num_ob CHANGING vbak, executando assim a lógica desejada. Quando o runtime chegar nesta etapa irá procurar a instrução FORM selecionar_ov … ENDFORM. Para o compilador do ABAP indica que ele deve buscar um FORM onde terá a lógica que ele precisará executar.

Dentro do FORM, o ABAP fará a codificação necessária para executar a funcionalidade desejada, que no nosso exemplo foi a seleção das informações de uma ordem de venda.

5.         Classe

Uma classe tem um conceito semelhante às funções. Uma classe é um objeto do ABAP utilizado para criar funcionalidades que poderão ser utilizadas em mais de um programa, função ou até mesmo outras classes. Utiliza-se o conceito orientado a objeto para organizar os desenvolvimentos e as classes são parte fundamental deste recurso.

Nesse caso, imagine que em seu desenvolvimento você precise buscar clientes, fornecedores, representantes e itens de uma ordem de vendas. Você pode criar uma classe para buscar informações da ordem vendas. Com essa classe, você receberá uma ordem de vendas e dentro dela terá as instruções necessárias para buscar todas as informações e entregará elas prontas para o seu programa.

No programa você pode criar uma chamada para essa classe e indicar a ordem que você deseja, e posteriormente não precisa tomar mais nenhuma ação, pois você já terá todas as informações desejadas. E essa mesma lógica poderá ser utilizada em todos os demais programas que desejar.

6.         Método

Um método é uma ação utilizada dentro de uma classe para executar alguma funcionalidade. Uma classe possui sempre um conjunto de métodos, e cada método deve ter sempre uma funcionalidade específica e objetiva.

No exemplo anterior quando falamos sobre classe, imagine que você agora pode também criar um método para buscar clientes, outro para buscar fornecedores, e assim por diante. Sua classe passa a ser da seguinte forma:

Classe: ZBUSCAR_INFO_OB

Metodos: BUSCAR_CLIENTE

BUSCAR_FORNECEDORES

BUSCAR_REPRESENTANTES

BUSCAR_ITENS_OV

7.         Rotina

Uma rotina é a execução de uma lógica para atender uma funcionalidade específica. Você pode criar uma rotina para criar clientes, fornecedores, ordens de produção, rotinas para relatórios e assim por diante. Entende-se então que uma rotina é uma ação sistemática que tem um início, meio e fim.

Podemos entender que programas, funções e classes são todos considerados rotinas, pois cada um desses recursos executa uma funcionalidade desejada e possui um início, meio e fim.

8.         Subrotina

Subrotinas possuem características semelhantes as rotinas. Então, podemos afirmar que uma rotina é composta por um conjunto de subrotinas. Nesse caso, são lógicas codificadas de maneira mais simples para compor uma rotina e atender uma determinada funcionalidade.

As subrotinas são os métodos, forms e performes, modules, etc. Em muitos casos, podemos considerar funções e classes também como subrotinas, dependendo do contexto.

9.         Objetos

Podemos considerar objetos qualquer coisa existente dentro do ABAP. Como por exemplo um programa, uma tabela, uma view, uma classe, uma função, uma BAPI, ou seja, são todos objetos da linguagem ABAP. No contexto de desenvolvimento é muito comum chamar esses recursos de objetos.

Além deles, temos os objetos relacionados às classes. Isto é chamado de orientação a objetos.

Neste contexto, é possível criar um objeto (como uma variável) dentro do programa que execute a sua classe e seus métodos. Ao invés de executar uma classe, você executará o objeto criado e indicará os métodos que desejar.

Existem diversos outros pontos do universo SAP que também são chamados de objetos, então é sempre importante identificar o contexto da conversa para que você tenha clara consciência de qual o tipo de objeto está sendo abordado. Isso o auxiliará a compreender a necessidade do momento.

Quer saber mais sobre o universo SAP? Conheça nosso dicionário de tecnologias e fique por dentro.

Chamada dicionario SAP

Agenda especialista


Voltar