PCKOUT: Como Escrever um Número Compactado de Comprimento Variável

Como:

Linguagens Disponíveis: Reporting, Maintain

A função PCKOUT grava um número decimal compactado de comprimento variável em um arquivo de extração. Quando uma solicitação salva um número compactado em um arquivo de extração, este número é tipicamente gravado como um campo de 8 ou 16 bytes, independentemente da sua especificação de formato. Com PCKOUT, você pode variar o comprimento do campo de 1 a 16 bytes.


Topo da página

x
Sintaxe: Como Escrever um número compactado de comprimento variável
PCKOUT(in_value, length, output)

onde:

in_value

Numérico

É o campo de de entrada que contém os valores. Ele pode ter o formato compacto de número inteiro, ponto flutuante de precisão dupla ou única. Se não estiver no formato de número inteiro, o valor será arredondado para o número inteiro mais próximo".

comprimento

Numérico

É o comprimento do valor de saída, de 1 a 16 bytes.

saída

Alfanumérico

É o nome do campo que contém o resultado ou o formato do valor de saída posto entre aspas simples. A função obtém o campo como alfanumérico, embora contenha dados compactos.



Exemplo: Como Escrever um Número Compactado de Comprimento Variável

PCKOUT converte o campo CURR_SAL em um campo compactado de 5 bytes e armazena o resultado em SHORT_SAL:

DEFINE FILE EMPLOYEE
SHORT_SAL/A5 = PCKOUT(CURR_SAL, 5, SHORT_SAL);
END
TABLE FILE EMPLOYEE
PRINT LAST_NAME SHORT_SAL HIRE_DATE
ON TABLE SAVE
END

O arquivo de extração resultante é:

 NUMBER OF RECORDS IN TABLE=       12 LINES=     12 
 
ALPHANUMERIC  RECORD  NAMED  SAVE 
FIELDNAME                          ALIAS         FORMAT          LENGTH 
LAST_NAME                          LN            A15               15 
SHORT_SAL                                        A5                 5 
HIRE_DATE                          HDT           I6YMD              6 
TOTAL                                                              26

Information Builders