XTPACK: Como Gravar um Número Compactado com até 31 Dígitos Significativos em um Arquivo de Saída

Como:

A função XTPACK armazena números compactados com até 31 dígitos significativos em um campo alfanumérico, retendo os dados decimais. Isto permite q gravação de um campo compactado curto ou longo de qualquer comprimento, de 1 a 16 bytes, em um arquivo de saída.


Topo da página

x
Sintaxe: Como Armazenar valores compactados em um campo alfanumérico
XTPACK(in_value, outlength, outdec, output)

onde:

infield

Numérico

É o valor de entrada.

outlength

Numérico

É o comprimento do campo alfanumérico que irá conter o campo compactado convertido. Pode ser de 1 a 16.

outdec

Numérico

É o número de casas decimais para output.

saída

Alfanumérico

É o nome do campo que contém o resultado ou o formato do campo entre aspas simples.



Exemplo: Como Gravar um Número Compactado Longo em um Arquivo de Saída

A solicitação a seguir cria um campo decimal compactado longo chamado LONGPCK. ALPHAPCK (formato A13) é o resultado da aplicação XTPACK ao campo compactado longo. PCT_INC, LONGPCK e ALPHAPCK são então gravados em um arquivo SAVE de nome XTOUT.

DEFINE FILE EMPLOYEE
LONGPCK/P25.2 = PCT_INC + 11111111111111111111;
ALPHAPCK/A13 = XTPACK(LONGPCK,13,2,'A13');
END
TABLE FILE EMPLOYEE
PRINT PCT_INC LONGPCK ALPHAPCK
WHERE PCT_INC GT 0
  ON TABLE SAVE AS XTOUT
END

O arquivo SAVE possui os seguintes campos e formatos:

ALPHANUMERIC RECORD NAMED  XTOUT
FIELDNAME                         ALIAS         FORMAT        LENGTH
PCT_INC                           PI            F6.2            6
LONGPCK                                         P25.2          25
ALPHAPCK                                        A13            13
TOTAL                                                          44
SAVED...

Information Builders