Cómo: |
Idiomas disponibles: informes, Maintain
Las funciones DT convierten un número entero, que representa el número de días transcurridos desde 31 de diciembre de 1899, a la fecha correspondiente. Resultan útiles a la hora de efectuar operaciones aritméticas con una fecha convertida al número de días (para más información, consulte Funciones DA: Cómo convertir una fecha legacy en un número entero). Las funciones DT vuelven a convertir el resultado en una fecha.
Existen seis funciones DT; cada una transforma un número en una fecha de distinto formato.
Nota: Cuando USERFNS está establecido en LOCAL, las funciones DT sólo muestran una fecha de seis dígitos.
function(number, output)
donde:
Es uno de los siguientes:
DTDMY convierte un número en una fecha día-mes-año.
DTDYM convierte un número en una fecha día-año-mes.
DTMDY convierte un número en una fecha mes-día-año.
DTMYD convierte un número en una fecha mes-año-día.
DTYDM convierte un número en una fecha año-día-mes.
DTYMD convierte un número en una fecha año-mes-día.
Número entero
Es el número de días desde 31 de diciembre de 1899. El número queda truncado en un número entero.
I8xxx, donde xxx corresponde a la función DTxxx de la lista de arriba.
Es el nombre del campo que contiene el resultado o el formato del valor de salida entre comillas simples. El formato de salida depende de la función que se está utilizando.
DTMDY convierte el campo NEWF (convertido al número de días por DAYMD)a la fecha correspondiente y guarda el resultado en NEW_HIRE_DATE:
-* THIS PROCEDURE CONVERTS HIRE_DATE, WHICH IS IN I6YMD FORMAT,
-* TO A DATE IN I8MDYY FORMAT.
-* FIRST IT USES THE DAYMD FUNCTION TO CONVERT HIRE_DATE
-* TO A NUMBER OF DAYS.
-* THEN IT USES THE DTMDY FUNCTION TO CONVERT THIS NUMBER OF
-* DAYS TO I8MDYY FORMAT
-*
DEFINE FILE EMPLOYEE
NEWF/I8 WITH EMP_ID = DAYMD(HIRE_DATE, NEWF);
NEW_HIRE_DATE/I8MDYY WITH EMP_ID = DTMDY(NEWF, NEW_HIRE_DATE);
END
TABLE FILE EMPLOYEE
PRINT HIRE_DATE NEW_HIRE_DATE
BY FN BY LN
WHERE DEPARTMENT EQ 'MIS'
END
La salida es:
FIRST_NAME LAST_NAME HIRE_DATE NEW_HIRE_DATE ---------- --------- --------- ------------- BARBARA CROSS 81/11/02 11/02/1981 DIANE JONES 82/05/01 05/01/1982 JOHN MCCOY 81/07/01 07/01/1981 MARY GREENSPAN 82/04/01 04/01/1982 SMITH 81/07/01 07/01/1981 ROSEMARIE BLACKWOOD 82/04/01 04/01/1982
WebFOCUS |