HNAME: Como Obter um Componente Data-Hora em Formato Alfanumérico

Como:

Linguagens Disponíveis: Reporting, Maintain

A função HNAME extrai um componente especificado de um valor de data e hora e o retorna em formato alfanumérico.


Topo da página

x
Sintaxe: Como Obter um Componente Data-Hora em Formato Alfanumérico
HNAME(datetime, 'component', output)

onde:

datetime

Data-hora

É o valor data-hora do qual um componente deve ser extraído, o nome de um campo data-hora que contém o valor ou uma expressão que resulta no valor.

componente

Alfanumérico

É o nome do componente a ser obtido entre aspas simples.

saída

Alfanumérico, pelo menos A2

É o campo que contém o resultado ou o formato do valor de saída posto entre aspas simples. O formato deve ser alfanumérico.

A função converte todos os outros componentes em strings de apenas dígitos. O ano tem sempre quatro dígitos e a hora assume o sistema de 24 horas".



Exemplo: Como Obter o Componente da Semana em Formato Alfanumérico (Reporting)

HNAME obtém a semana em formato alfanumérico a partir do campo TRANSDATE. Alterar a definição do parâmetro WEEKFIRST altera o valor do componente.

SET WEEKFIRST = 7
TABLE FILE VIDEOTR2
PRINT CUSTID TRANSDATE AS 'DATE-TIME' AND COMPUTE
WEEK_COMPONENT/A10 = HNAME(TRANSDATE, 'WEEK', 'A10');
WHERE DATE EQ 2000;
END

Quando WEEKFIRST for definido como sete, a saída é:

CUSTID  DATE-TIME         WEEK_COMPONENT
------  ---------         --------------
1237    2000/02/05 03:30  06
1118    2000/06/26 05:45  26

Quando WEEKFIRST for definido como três, a saída é:

CUSTID  DATE-TIME         WEEK_COMPONENT
------  ---------         --------------
1237    2000/02/05 03:30  05
1118    2000/06/26 05:45  25

Para obter detalhes sobre WEEKFIRST, consulte o manual Como Desenvolver Aplicativos de Relatório .



Exemplo: Como Obter o Componente do Dia em Formato Alfanumérico (Reporting)

HNAME obtém o dia em formato alfanumérico a partir do campo TRANSDATE:

TABLE FILE VIDEOTR2
PRINT CUSTID TRANSDATE AS 'DATE-TIME' AND COMPUTE
DAY_COMPONENT/A2 = HNAME(TRANSDATE, 'DAY', 'A2');
WHERE DATE EQ 2000;
END

A saída é:

CUSTID  DATE-TIME         DAY_COMPONENT
------  ---------         -------------
1237    2000/02/05 03:30  05
1118    2000/06/26 05:45  26


Exemplo: Como Obter o Componente do Dia em Formato Alfanumérico (Maintain)

HNAME extrai o dia no formato alfanumérico de DT1:

MAINTAIN FILE DATETIME
FOR 1 NEXT ID INTO STK;
COMPUTE
DAY_COMPONENT/A2=HNAME(STK.DT1,'DAY',DAY_COMPONENT);
TYPE "STK(1).DT1 = "STK(1).DT1;
TYPE "DAY_COMPONENT = <DAY_COMPONENT"
END

Information Builders