Você está na página 1de 9

Para Criar um programa ABAP execute a transação SE38

Insira o nome do programa e clique em Criar:

Preencha os campos conforme acima e clique em Gravar.


Na próxima tela clique em Objeto local:

Insira o seguinte código Fonte:

Clique em Salvar. Depois em Ativar. Clique em Ir para  Elementos de Texto Simbolos de Texto:
Clique em Salvar e depois em Ativar.

Volte ao código do programa (F3).

Clique em Ir para  Tradução:

Clique em Salvar para salvar a tradução dos textos.


Para testar a funcionalidade do Multi-Idioma, faça o Login em inglês (EN).

Em Português:

Em Inglês:

Fim do Primeiro Programa.


Segundo Programa ABAP – Calculadora.

Execute a transação SE38:

Clique em Criar.

Clique em gravar e na próxima tela selecione Objeto local:


Código fonte está abaixo:
*&---------------------------------------------------------------------*
*& Report   ZAFNA02
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZAFNA02.

*** Criar variaveis
DATA: v_result TYPE p DECIMALS 2.                           "0.00
"Tipos  de variáveis/Dados:
* i =  inteiro, valor inicial = 0
* p =  Ponto flutuante, valor inicial = 0.00000 (depende do  numero de  casas)
* C =  caractere. Ex.: v_char(10) type c. Valor inicial = '             '. (10  esp)
*** Criar tela de seleção
PARAMETERS: p_valor1 TYPE p DECIMALS 2,
            p_opera  TYPE c OBLIGATORY,
            p_valor2 TYPE p DECIMALS 2.

PARAMETERS: p_soma RADIOBUTTON GROUP rad1,
            p_subt RADIOBUTTON GROUP rad1,
            p_mult RADIOBUTTON GROUP rad1,
            p_divi RADIOBUTTON GROUP rad1.

PARAMETERS: p_chk as CHECKBOX.

*** Evento - Verificar tela de seleção
AT SELECTION-SCREEN.
*** Para comparações podem ser usados os seguintes simbolos
* EQ ~  =  (Equal)
* NE ~  <> (Not Equal)
* LE ~  <= (less or equal)
* LT ~  <  (Less than)
* GE ~  >= (greater  or equal)
* GT ~  >  (greater than)
* BT <var1>  AND <var2>  (between variavel1 e  variavel2)

  IF p_opera NE '-' AND
     p_opera NE '+' AND
     p_opera NE '/' AND
     p_opera NE '*'.

    MESSAGE e000(zt3msg00).
*    MESSAGE E000.
*    MESSAGE ID 'ZT3MSG00' TYPE 'E' NUMBER '000'.
*    MESSAGE 'Mensagem de ERRO' TYPE 'E'.
  ENDIF.

  IF p_opera EQ '/' AND p_valor2 IS INITIAL. "IS  INITIAL neste  caso compara


    MESSAGE e001. "Divisão por zero.            "o valor  inicial da  variável
    "que é ZERO (0.00)
  ENDIF.
* Tipos de  mensagens:
* E =>  Erro. O processo não é executado enquanto erro  persistir
* I =>  Informação. Uma tela com o botão Ok é  exibido
* W =>  Warning. O rodapé exibe a mensagem em Amarelo.  Tecla ENTER Continua.
* S =>  Sucesso. O rodapé exibe a mensagem em Verde. Continua automaticamente.

*** A chamada do Evento  START-OF-SELECTION finaliza o evento anterior
START-OF-SELECTION.

  CASE p_opera.
    WHEN '+'.
      v_result = p_valor1 + p_valor2.
    WHEN '-'.
      v_result = p_valor1 - p_valor2.
    WHEN '/'.
      v_result = p_valor1 / p_valor2.
    WHEN '*'.
      v_result = p_valor1 * p_valor2..
  ENDCASE.

  WRITE: / 'Valor 1:', p_valor1,
         / 'Operador', p_opera,
         / 'Valor 2:', p_valor2,
         / '___________________',
         / 'Resultado', v_result.

  MESSAGE I003 WITH p_valor1 p_opera p_valor2 v_result.

Para inserir os Labels da tela de seleção, clique em Ir para  Elementos de texto  Textos de Seleção:

Salve e ative.
Criar uma classe de mensagens:

ZTXMSGNA, onde TX é a turma, e NA é o aluno.

Clique em Criar:

Clique em Salvar e depois em Objeto Local:


Clique na Guia Mensagens e insira conforme a seguir:

Clique em Salvar.

Você também pode gostar