Executando verificação de segurança...
3

[SAP] Entendendo os princípios básicos do ABAP

O que é ABAP?

ABAP é uma linguagem de programação desenvolvida pela SAP para o desenvolvimento de aplicações de negócios no ambiente SAP.

Trata-se de uma linguagem de programação que foi criada pela SAP nos anos 80 para facilitar o desenvolvimento de relatórios que pudessem complementar a gama de funcionalidades oferecidas pelo SAP/R2 - a solução integrada que a SAP oferecia a seus clientes na época.

Após isso, o SAP/R2 evoluiu para o SAP/R3 e, desde então, todos os módulos SAP são baseados em ABAP - tornando-se a principal linguagem de programação por trás do software.

Por isso, podemos entender o SAP ABAP como uma linguagem de alto nível destinada ao desenvolvimento de aplicativos comerciais.

O que podemos criar com ABAP?

Inicialmente, o SAP ABAP é usado pelos programadores da SAP SE para desenvolver novas aplicações, módulos de função e atualizações para partes do programa já existentes, referindo-se ao chamado padrão SAP (Standard).

No entanto, apesar da ampla variedade de soluções industriais, a linguagem deste padrão geralmente não é suficiente para atender completamente às exigências individuais das empresas. É neste ponto que os programadores SAP internos ou externos entram em ação, utilizando o SAP ABAP para desenvolver soluções que preencham essa lacuna.

  • Desenvolvimento de tabelas de banco de dados próprias
  • Programação de interfaces de usuário individuais
  • Criação de transações próprias
  • Elaboração de relatórios
  • Produção de listas específicas
  • Construção de novos processos e instruções

Quais recursos técnicos do ABAP?

A sintaxe do SAP ABAP é similar à linguagem de programação COBOL, desenvolvida na década de 1950 e ainda em uso. O COBOL (Common Business Oriented Language) tem uma base claramente na linguagem natural e é utilizado para aplicações comerciais.

Diferente das linguagens básicas que armazenam suas funções em bibliotecas, o SAP ABAP adota uma abordagem distinta, caracterizada da seguinte maneira:

  • Os acessos ao banco de dados são integrados ao código-fonte por meio de instruções Open SQL.
  • O buffering do SAP oferece desempenho otimizado para acesso ao banco de dados.
  • Os dados em massa na memória de trabalho são armazenados de forma dinâmica em tabelas internas.
  • O OLTP (Online Transaction Processing) possibilita que vários usuários acessem a tabela do banco de dados simultaneamente.

Características básicas da linguagem ABAP

Algumas características da linguagem ABAP são:

  • ABAP consiste em declarações e expressões

    • Declarações ABAP começam com uma palavra-chave e terminam com um ponto final
    • Declarações ABAP possuem adições e posições de operandos
    • As posições dos operandos são ocupadas por objetos de dados e outras expressões
  • ABAP não é case-sensitive (não trata caracteres maiúsculos e minúsculos de modo diferente)

    • Você pode escrever palavras-chave e identificadores em maiúscula, minúscula ou ambos
    • Recomendação: Palavras-chave em maiúsculas, identificadores em minúsculas ou camel case
    • Você pode realizar a conversão de maiúsculas/minúsculas usando o Formatter ABAP
  • ABAP é uma linguagem tipada

    • Todos os objetos de dados (variáveis) são declarados com um tipo estático
    • Um tipo estático não muda durante o tempo de execução
  • ABAP tem acesso integrado ao Banco de Dados

    • ABAP vem com sublinguagens para acesso ao banco de dados:
      • ABAP Structured Query Language (SQL) para consultas
      • ABAP Entity Manipulation Language (EML) para modificações

Examples for ABAP Syntax

Estes exemplos de código ilustram alguns dos recursos básicos da linguagem de programação ABAP.

Exemplo de declarações ABAP

DATA nome  TYPE c LENGTH 10.
DATA texto TYPE string.

CONCATENATE `Olá`
             nome
        INTO texto.

O código superior consiste em três instruções, cada uma delas termina com um ponto final (.) .

A instrução DATA é uma instrução declarativa para definir variáveis. A instrução CONCATENATE é uma instrução de processamento de dados para combinar dados semelhantes a caracteres.

Exemplos de expressões

O código inferior consiste em quatro atribuições de valores. O nome da variável de destino (texto) é seguido pelo sinal de igual (=) que serve como operador de atribuição. A posição do operando no lado direito é ocupada por expressões de diferentes complexidades: um literal, uma variável, uma função de processamento de string (substituir) e uma expressão para uma atribuição condicional (COND).

texto = `Olá`.

texto = nome.

texto = replace( val = `Olá Mundo`
                sub = `Mundo`
                with = nome ).
               
texto = COND #( WHEN texto = `` THEN `Olá` && nome
                ELSE texto ).

Comentários em ABAP

Um comentário em linguagem de programação é um trecho de código-fonte que é ignorado pelo compilador ou intérprete.
No ABAP, existem duas maneiras de definir um pedaço de código-fonte como comentário:

Um (*) na primeira coluna identifica toda a linha como um comentário.
* Comentários ...
* Comentários ...
* Comentários ...

Um sinal (") identifica o restante da linha, ou seja, o código à direita, como comentário. 
DATA nome TYPE c LENGTH 10. " Comentários ...

Observe que você pode colocar o (") em qualquer coluna. O sinal (*) só funciona se
colocado na primeira coluna. Em outras posições, causa um erro de sintaxe.

3

Muito bom ver conteúdo desta linguagem. Estou há mais de 2 anos trabalhando com SAP/ABAP e suas dependências, e até hoje me surpreendo com a linguagem e suas aplicações. Parabéns pelo post. Acrescento que sua publicação contribui significativamente para a disseminação de conhecimento na área, que ainda hoje continua bem fechada.

2

Senti falta de explicação um pouco mais abrangente da linguagem em si, apesar do artigo ficar um pouco maior.

De qualquer forma, o artigo é muito interessante, só conhecia ABAP de nome, de ouvir falar.