SAP ABAP - Formatando Dados

ABAP oferece vários tipos de opções de formatação para formatar a saída de programas. Por exemplo, você pode criar uma lista que inclui vários itens em diferentes cores ou estilos de formatação.

A instrução WRITE é uma instrução de formatação usada para exibir dados em uma tela. Existem diferentes opções de formatação para a instrução WRITE. A sintaxe da instrução WRITE é -

WRITE <format> <f> <options>.

Nesta sintaxe, <formato> representa a especificação do formato de saída, que pode ser uma barra (/) que indica a exibição da saída a partir de uma nova linha. Além da barra, a especificação do formato inclui um número e comprimento de coluna. Por exemplo, a instrução WRITE / 04 (6) mostra que uma nova linha começa com a coluna 4 e o comprimento da coluna é 6, enquanto a instrução WRITE 20 mostra a linha atual com a coluna 20. O parâmetro <f> representa uma variável de dados ou texto numerado.

A tabela a seguir descreve várias cláusulas usadas para formatação -

S.No. Cláusula e descrição
1

LEFT-JUSTIFIED

Especifica que a saída é justificada à esquerda.

2

CENTERED

Indica que a saída está centralizada.

3

RIGHT-JUSTIFIED

Especifica que a saída é justificada à direita.

4

UNDER <g>

A saída começa diretamente no campo <g>.

5

NO-GAP

Especifica que o espaço em branco após o campo <f> é rejeitado.

6

USING EDIT MASK <m>

Denota a especificação do modelo de formato <m>. Usando No EDIT Mask: especifica que o modelo de formato especificado no dicionário ABAP está desativado.

7

NO-ZERO

Se um campo contém apenas zeros, eles são substituídos por espaços em branco.

A seguir estão as opções de formatação para os campos de Tipo Numérico -

S.No. Cláusula e descrição
1

NO-SIGN

Especifica que nenhum sinal à esquerda é exibido na tela.

2

EXPONENT <e>

Especifica que no tipo F (os campos de ponto flutuante), o expoente é definido em <e>.

3

ROUND <r>

Os campos do tipo P (tipos de dados numéricos compactados) são primeiro multiplicados por 10 ** (- r) e, em seguida, arredondados para um valor inteiro.

4

CURRENCY <c>

Indica que a formatação é feita de acordo com o valor da moeda <c> que está armazenado na tabela do banco de dados TCURX.

5

UNIT <u>

Especifica que o número de casas decimais é fixo de acordo com a unidade <u>, conforme especificado na tabela de banco de dados T006 para o tipo P.

6

DECIMALS <d>

Especifica que o número de dígitos <d> deve ser exibido após o ponto decimal.

Por exemplo, a tabela a seguir mostra diferentes opções de formatação para os campos de data -

Opção de Formatação Exemplo
DD / MM / AA 13/01/15
MM / DD / AA 13/01/15
DD / MM / AAAA 13/01/2015
MM / DD / AAAA 13/01/2015
DDMMAA 130115
MMDDAA 011315
AAMMDD 150113

Aqui, DD significa a data em dois dígitos, MM significa o mês em dois dígitos, YY significa o ano em dois dígitos e AAAA significa o ano em quatro dígitos.

Vamos dar uma olhada em um exemplo de código ABAP que implementa algumas das opções de formatação acima -

REPORT ZTest123_01.
 
DATA: n(9) TYPE C VALUE 'Tutorials', 
m(5) TYPE C VALUE 'Point'. 

WRITE: n, m. 
WRITE: / n, 
/ m UNDER n. 

WRITE: / n NO-GAP, m. 
DATA time TYPE T VALUE '112538'. 

WRITE: / time, 
/(8) time Using EDIT MASK '__:__:__'.

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

Tutorials Point 
Tutorials  
Point 
TutorialsPoint 
112538 
11:25:38