SAP ABAP - Tipos de dados

Ao programar em ABAP, precisamos usar uma variedade de variáveis ​​para armazenar várias informações. As variáveis ​​nada mais são do que locais de memória reservados para armazenar valores. Isso significa que, ao criar uma variável, você reserva algum espaço na memória. Você pode gostar de armazenar informações de vários tipos de dados, como caractere, inteiro, ponto flutuante, etc. Com base no tipo de dados de uma variável, o sistema operacional aloca memória e decide o que pode ser armazenado na memória reservada.

Tipos de dados elementares

O ABAP oferece ao programador uma rica variedade de tipos de dados de comprimento fixo e variável. A tabela a seguir lista os tipos de dados elementares ABAP -

Tipo Palavra-chave
Campo de byte X
Campo de texto C
Inteiro Eu
Ponto flutuante F
Número embalado P
String de texto CORDA

Alguns dos campos e números podem ser modificados usando um ou mais nomes como a seguir -

  • byte
  • numeric
  • character-like

A tabela a seguir mostra o tipo de dado, quanta memória é necessária para armazenar o valor na memória e os valores mínimo e máximo que podem ser armazenados neste tipo de variáveis.

Tipo Comprimento Típico Alcance Típico
X 1 byte Qualquer valor de byte (00 a FF)
C 1 personagem 1 a 65535
N (preenchido com texto numérico) 1 personagem 1 a 65535
D (data semelhante a um caractere) 8 caracteres 8 caracteres
T (tempo semelhante ao caractere) 6 caracteres 6 caracteres
Eu 4 bytes -2147483648 a 2147483647
F 8 bytes 2.2250738585072014E-308 a 1.7976931348623157E + 308 positivo ou negativo
P 8 bytes [-10 ^ (2len -1) +1] a [+ 10 ^ (2len -1) 1] (onde len = comprimento fixo)
CORDA Variável Quaisquer caracteres alfanuméricos
XSTRING (string de byte) Variável Qualquer valor de byte (00 a FF)

Exemplo

REPORT YR_SEP_12. 
DATA text_line TYPE C LENGTH 40. 
text_line = 'A Chapter on Data Types'. 
Write text_line. 

DATA text_string TYPE STRING. 
text_string = 'A Program in ABAP'. 
Write / text_string. 

DATA d_date TYPE D. 
d_date = SY-DATUM. 
Write / d_date.

Neste exemplo, temos uma sequência de caracteres do tipo C com comprimento predefinido 40. STRING é um tipo de dados que pode ser usado para qualquer sequência de caracteres de comprimento variável (sequências de texto). Objetos de dados do tipo STRING geralmente devem ser usados ​​para conteúdo semelhante a caracteres onde o comprimento fixo não é importante.

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

A Chapter on Data Types 
A Program in ABAP 
12092015

O tipo DATE é usado para o armazenamento de informações de data e pode armazenar oito dígitos, conforme mostrado acima.

Tipos complexos e de referência

Os tipos complexos são classificados em Structure types e Table types. Nos tipos de estrutura, tipos e estruturas elementares (isto é, estrutura embutida em uma estrutura) são agrupados. Você pode considerar apenas o agrupamento de tipos elementares. Mas você deve estar ciente da disponibilidade de aninhamento de estruturas.

Quando os tipos elementares são agrupados, o item de dados pode ser acessado como um item de dados agrupado ou os itens de dados de tipo elementar individuais (campos de estrutura) podem ser acessados. Os tipos de tabela são mais conhecidos como matrizes em outras linguagens de programação.Arrayspodem ser arrays simples ou de estrutura. No ABAP, os arrays são chamados de tabelas internas e podem ser declarados e operados de várias maneiras quando comparados a outras linguagens de programação. A tabela a seguir mostra os parâmetros de acordo com os quais as tabelas internas são caracterizadas.

S.No. Parâmetro e Descrição
1

Line or row type

A linha de uma tabela interna pode ser do tipo elementar, complexo ou de referência.

2

Key

Especifica um campo ou grupo de campos como uma chave de uma tabela interna que identifica as linhas da tabela. Uma chave contém os campos de tipos elementares.

3

Access method

Descreve como os programas ABAP acessam entradas de tabela individuais.

Os tipos de referência são usados ​​para se referir a instâncias de classes, interfaces e itens de dados de tempo de execução. Os serviços de tipo de tempo de execução ABAP OOP (RTTS) permitem a declaração de itens de dados em tempo de execução.