SAP ABAP - Sintaxe Básica

Afirmações

O programa de origem ABAP consiste em comentários e declarações ABAP. Cada instrução em ABAP começa com uma palavra-chave e termina com um ponto, e ABAP 'Não' faz distinção entre maiúsculas e minúsculas.

A primeira linha sem comentários em um programa começa com a palavra RELATÓRIO. O Relatório será sempre a primeira linha de qualquer programa executável criado. A declaração é seguida pelo nome do programa criado anteriormente. A linha é então encerrada com um ponto final.

A sintaxe é -

REPORT [Program_Name]. 
 
[Statements…].

Isso permite que a instrução ocupe quantas linhas forem necessárias no editor. Por exemplo, o RELATÓRIO pode ter a seguinte aparência -

REPORT Z_Test123_01.

As instruções consistem em um comando e quaisquer variáveis ​​e opções, terminando com um ponto. Contanto que o ponto final apareça no final da declaração, nenhum problema surgirá. É esse período que marca onde termina a afirmação.

Vamos escrever o código.

Na linha abaixo da instrução REPORT, basta digitar esta instrução: Escreva 'Tutorial ABAP'.

REPORT Z_Test123_01.

Write 'This is ABAP Tutorial'.

Four things to consider while writing statements -

  • A instrução write grava tudo o que está entre aspas na janela de saída.

  • O editor ABAP converte todo o texto em maiúsculas, exceto sequências de texto, que são colocadas entre aspas simples.

  • Ao contrário de algumas linguagens de programação mais antigas, o ABAP não se importa onde uma instrução começa em uma linha. Você pode tirar vantagem disso e melhorar a legibilidade do seu programa usando indentação para indicar blocos de código.

  • ABAP não tem restrições quanto ao layout das declarações. Ou seja, várias instruções podem ser colocadas em uma única linha, ou uma única instrução pode se estender por várias linhas.

Notação de dois pontos

Declarações consecutivas podem ser encadeadas se o início de cada declaração for idêntico. Isso é feito com o operador de dois pontos (:) e vírgulas, que são usados ​​para encerrar as instruções individuais, da mesma forma que os pontos encerram as instruções normais.

A seguir está um exemplo de um programa que poderia economizar alguns toques de tecla -

WRITE 'Hello'. 
WRITE 'ABAP'. 
WRITE 'World'.

Usando a notação de dois pontos, ele poderia ser reescrito desta forma -

WRITE: 'Hello', 
       'ABAP', 
       'World'.

Como qualquer outra instrução ABAP, o layout não importa. Esta é uma afirmação igualmente correta -

WRITE: 'Hello', 'ABAP', 'World'.

Comentários

Comentários embutidos podem ser declarados em qualquer lugar em um programa por um dos dois métodos -

  • Os comentários de linha inteira são indicados colocando um asterisco (*) na primeira posição da linha, caso em que toda a linha é considerada pelo sistema como um comentário. Os comentários não precisam ser encerrados por um ponto, porque eles não podem se estender por mais de uma linha -

* This is the comment line
  • Os comentários de linha parcial são indicados inserindo-se uma aspa dupla (") após uma declaração. Todo o texto após a aspa dupla é considerado pelo sistema como um comentário. Você não precisa encerrar os comentários de linha parcial por um ponto, porque eles podem não se estender mais de uma linha -

WRITE 'Hello'. "Here is the partial comment

Note - O código comentado não é capitalizado pelo editor ABAP.

Suprimindo espaços em branco

O comando NO-ZERO segue a instrução DATA. Ele suprime todos os zeros à esquerda de um campo de número que contém espaços em branco. A saída geralmente é mais fácil para os usuários lerem.

Exemplo

REPORT Z_Test123_01. 

DATA: W_NUR(10) TYPE N.
      MOVE 50 TO W_NUR.
      WRITE W_NUR NO-ZERO.

O código acima produz a seguinte saída -

50

Note - Sem o comando NO-ZERO, a saída é: 0000000050

Linhas em Branco

O comando SKIP ajuda a inserir linhas em branco na página.

Exemplo

O comando da mensagem é o seguinte -

WRITE 'This is the 1st line'. 
SKIP. 
WRITE 'This is the 2nd line'.

O comando de mensagem acima produz a seguinte saída -

This is the 1st line 
This is the 2nd line

Podemos usar o comando SKIP para inserir várias linhas em branco.

SKIP number_of_lines.

A saída seria várias linhas em branco definidas pelo número de linhas. O comando SKIP também pode posicionar o cursor em uma linha desejada na página.

SKIP TO LINE line_number.

Este comando é usado para mover dinamicamente o cursor para cima e para baixo na página. Normalmente, uma instrução WRITE ocorre após este comando para colocar a saída na linha desejada.

Inserindo Linhas

O comando ULINE insere automaticamente uma linha horizontal na saída. Também é possível controlar a posição e o comprimento da linha. A sintaxe é muito simples -

ULINE.

Exemplo

O comando da mensagem é o seguinte -

WRITE 'This is Underlined'.
ULINE.

O código acima produz a seguinte saída -

This is Underlined (and a horizontal line below this).

Mensagens

O comando MESSAGE exibe mensagens definidas por um ID de mensagem especificado na instrução REPORT no início do programa. O ID da mensagem é um código de 2 caracteres que define qual conjunto de 1.000 mensagens o programa acessará quando o comando MESSAGE for usado.

As mensagens são numeradas de 000 a 999. Associado a cada número está um texto de mensagem com no máximo 80 caracteres. Quando o número da mensagem é chamado, o texto correspondente é exibido.

A seguir estão os caracteres para uso com o comando Message -

mensagem Tipo Consequências
E Erro A mensagem aparece e o aplicativo é interrompido em seu ponto atual. Se o programa estiver sendo executado em segundo plano, o trabalho será cancelado e a mensagem será gravada no registro do trabalho.
W Atenção A mensagem é exibida e o usuário deve pressionar Enter para que o aplicativo continue. No modo de segundo plano, a mensagem é gravada no registro do trabalho.
Eu Em formação Uma janela pop-up é aberta com o texto da mensagem e o usuário deve pressionar Enter para continuar. No modo de segundo plano, a mensagem é gravada no registro do trabalho.
UMA Abend Esta classe de mensagem cancela a transação que o usuário está usando atualmente.
S Sucesso Isso fornece uma mensagem informativa na parte inferior da tela. As informações exibidas são de natureza positiva e servem apenas para feedback do usuário. A mensagem não impede o programa de forma alguma.
X Abortar Esta mensagem aborta o programa e gera um short dump ABAP.

As mensagens de erro são normalmente usadas para impedir os usuários de fazer coisas que não deveriam fazer. As mensagens de advertência geralmente são usadas para lembrar os usuários das consequências de suas ações. As mensagens de informação fornecem aos usuários informações úteis.

Exemplo

Quando criamos uma mensagem para a mensagem ID AB, o comando MESSAGE - MESSAGE E011 dá a seguinte saída -

EAB011 This report does not support sub-number summarization.