Funzioni DA: Conversione di una data Legacy in un valore intero

Come:

Lingue disponibili: reporting, Maintain

Le funzioni DA convertono una data legacy al numero di giorni tra la data e una data di base (31 Dicembre 1899). Convertendo una data nel numero di giorni, è possibile aggiungere e sottrarre date e calcolare gli intervalli tra loro, o è possibile aggiungere o sottrarre numeri dalle date per ottenere nuove date.

Ci sono sei funzioni DA, ciascuna accetta una data in un formato diverso.


Inizio pagina

x
Sintassi: Come convertire una data in un valore intero
						function(indate, output)

dove:

funzione

Uno dei seguenti:

DADMY converte una data nel formato giorno-mese-anno.

DADYM converte una data nel formato giorno-anno-mese.

DADMDY converte una data nel formato mese-giorno-anno.

DAMYD converte una data nel formato mese-anno-giorno.

DAYDM converte una data nel formato anno-giorno-mese.

DAYMD converte una data nel formato anno-mese-giorno.

indate

I6xxx o P6xxx, dove xxx corrisponde alla funzione DAxxx in uso.

La data da convertire, o il nome di un campo che contiene la data. La data viene troncata in un valore intero prima della conversione. Se indate è un valore letterale numerico, immettere solo le ultime due cifre dell’anno; la funzione presume la componente secolo. Se la data non è valida, la funzione restituisce uno 0.

emissione

Valore intero

Nome del campo che contiene il risultato o il formato del valore di emissione racchiuso tra virgolette singole. Il formato della data restituita dipende dalla funzione.



Esempio: Conversione di date e calcolo della differenza tra loro

DAYMD converte i campi DAT_INC e HIRE_DATE nel numero di giorni dal 31 dicembre 1899 e il numero più piccolo è quindi sottratto dal numero più grande:

TABLE FILE EMPLOYEE
PRINT DAT_INC AS 'RAISE DATE' AND COMPUTE
DAYS_HIRED/I8 = DAYMD(DAT_INC, 'I8') - DAYMD(HIRE_DATE, 'I8');
BY LAST_NAME BY FIRST_NAME
IF DAYS_HIRED NE 0
WHERE DEPARTMENT EQ 'PRODUCTION';
END

L'emissione è:

LAST_NAME     FIRST_NAME  RAISE DATE  DAYS_HIRED
---------     ----------  ----------  ----------
IRVING        JOAN          82/05/14         130
MCKNIGHT      ROGER         82/05/14         101
SMITH         RICHARD       82/05/14         130
STEVENS       ALFRED        82/01/01         578
                            81/01/01         213

WebFOCUS