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.
PCKOUT(in_value, length, output)
onde:
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".
Numérico
É o comprimento do valor de saída, de 1 a 16 bytes.
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.
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 |