Como: |
Linguagens Disponíveis: Reporting, Maintain
A função HADD incrementa um valor de DATE-TIME a partir de um número dado
HADD(datetime, 'component', increment, length, output)
onde:
Data-hora
É o valor data-hora a ser aumentado, o nome de um campo data-hora que contém o valor ou uma expressão que resulta no valor.
Alfanumérico
É o nome do componente a ser aumentado entre aspas simples.
Observação: WEEKDAY não é um componente válido para HADD.
Inteiro
É o número de unidades (positivo ou negativo) pelo qual se aumenta o componente, o nome de um campo numérico que contém o valor ou uma expressão que resulta no valor.
Inteiro
É o número de caracteres obtidos. Os valores válidos são:
Data-hora
É o campo que contém o resultado ou o formato do valor de saída posto entre aspas simples). Este campo deve ter o formato data-hora (tipo de dados H).
HADD adiciona dois meses em cada valor em TRANSDATE e armazena o resultado em ADD_MONTH. Caso necessário, o dia é ajustado para que seja válido para o mês resultante.
TABLE FILE VIDEOTR2
PRINT CUSTID TRANSDATE AS 'DATE-TIME' AND COMPUTE
ADD_MONTH/HYYMDS = HADD(TRANSDATE, 'MONTH', 2, 8, 'HYYMDS');
WHERE DATE EQ 2000;
END
A saída é:
CUSTID DATE-TIME ADD_MONTH ------ --------- --------- 1237 2000/02/05 03:30 2000/04/05 03:30:00 1118 2000/06/26 05:45 2000/08/26 05:45:00
HADD adiciona dois meses ao campo DT1:
MAINTAIN FILE DATETIME
FOR 1 NEXT ID DT1 INTO DTSTK
COMPUTE
NEW_DATE/HYYMDS = HADD(DTSTK.DT1, 'MONTH', 2,10, NEW_DATE);
TYPE "DT1 IS: <DTSTK(1).DT1 "
TYPE "NEW_DATE IS: <NEW_DATE "
O resultado é:
DT1 IS: 2000/1/1 02:57:25 NEW_DATE IS: 2000/3/1 02:57:25 TRANSACTIONS: COMMITS = 1 ROLLBACKS = 0 SEGMENTS : INCLUDED = 0 UPDATED = 0 DELETED = 0
Information Builders |