Função DIGIT( )

Retorna o dígito superior ou inferior de um byte de tipo de dados Packed (Compactado).

Sintaxe

DIGIT(localização_byte; posição)

Parâmetros

Nome Tipo Descrição
local_do_byte numérico

A posição do byte no registro.

posição numérico

O dígito a ser retornado:

  • especifique 1 para retornar a metade superior do byte
  • especifique 2 para retornar a metade inferior do byte

Saída

Numérico.

Exemplos

Exemplos básicos

Um campo compactado com o valor 123,45 (00 12 34 5C), contendo dois decimais e iniciando na posição 10 de byte, aparece no registro de dados no seguinte formato:

  Byte 10 Byte 11 Byte 12 Byte 13
UPPER(1) 0 1 3 5
LOWER(2) 0 2 4 C

Retorna 3 (encontra o dígito que aparece na 12a posição na metade superior do byte):

DIGIT(12; 1)

Retorna 4 (encontra o dígito que aparece na 12a posição na metade inferior do byte):

DIGIT(12; 2)

Observações

Como funciona?

DIGIT( ) separa metades individuais de um byte e retorna o valor do byte especificado no parâmetro posição como um dígito entre 0 e 15.

Quando usar DIGIT( )

Use DIGIT( ) para acessar metades de bytes individuais. Isso é necessário, se você trabalhar com aplicativos que usam campos compactados alinhados com metades de byte, tais como aplicativos da Unisys.