Uso di Funzioni Data Legacy

In questa sezione:

Le funzioni data legacy vengono create per l'uso con date in formati alfanumerici, decimali compressi ed interi.

Per informazioni dettagliate su ciascuna funzione data legacy, consultare:

AYM: Aggiunta o Sottrazione Mesi

AYMD: Aggiunta o Sottrazione Giorni

CHGDAT: Modifica della visualizzazione di una stringa data

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

DMY, MDY, YMD: Calcolo della differenza tra due date

DOWK e DOWKL: Ricerca del giorno della settimana

Funzioni DT: Conversione di un valore intero in una data

GREGDT: Conversione dal formato giuliano a gregoriano

JULDAT: Conversione dal formato gregoriano a giuliano

YM: Calcolo dei mesi trascorsi


Inizio pagina

x
Uso delle versioni precedenti delle funzioni date legacy

Come:

Le funzioni descritte in questa sezione sono funzioni date legacy. Queste funzioni sono state create per uso con date in formato alfanumerico o intero. Non è più consigliabile usare tali funzioni per la manipolazione date. Si preferisce usare le funzioni data-ora e date standard.

Tutte le funzioni date legacy supportano le date dell'anno 2000 e dopo. Le versioni obsolete di queste funzioni potrebbero non funzione correttamente con le date dopo il 31 Dicembre 1999. Tuttavia, in alcuni casi, si potrebbe voler usare la versione obsoleta di una funzione, per esempio, se non si usa le date dell'anno 2000. È possibile "disattivare" la versione corrente con il parametro DATEFNS.



x
Sintassi: Come attivare funzioni data legacy obsolete
SET DATEFNS = {ON|OFF}

dove:

ON

Attiva la funzione che supporta le date dall'anno 2000 e dopo. ON - È il valore predefinito.

OFF

Disattiva una funzione che supporta le date dall'anno 2000 e dopo.


Inizio pagina

x
Uso date con anni a due e quattro cifre

Le funzioni date legavy accettano date con anni a due o quattro cifre. È possibile usare gli anni a quattro cifre che visualizzano il secolo, come 2000 o 1900, se il loro formato viene specificato come I8YYMD, P8YYMD, D8YYMD, F8YYMD, o A8YYMD. Gli anni a due cifre sono in grado di usare i parametri DEFCENT e YRTHRESH per assegnare i valori secolo, se il campo presenta una lunghezza di sei (per esempio, I6YMD). Per informazioni su questi parametri, consultare Personalizzazione del proprio ambiente in Sviluppo applicazioni di reporting.



Esempio: Uso anni a quattro cifre

La funzione EDIT crea date con anni a quattro cifre. Le funzioni JULDAT e GREGDT convertono quindi queste date in formai gregoriano e giuliano.

DEFINE FILE EMPLOYEE
DATE/I8YYMD = EDIT('19'|EDIT(HIRE_DATE));
JDATE/I7 = JULDAT(DATE, 'I7');
GDATE/I8 = GREGDT(JDATE, 'I8');
END
TABLE FILE EMPLOYEE
PRINT DATE JDATE GDATE
END

L'emissione è:

      DATE    JDATE     GDATE
      ----    -----     -----
1980/06/02  1980154  19800602
1981/07/01  1981182  19810701
1982/05/01  1982121  19820501
1982/01/04  1982004  19820104
1982/08/01  1982213  19820801
1982/01/04  1982004  19820104
1982/07/01  1982182  19820701
1981/07/01  1981182  19810701
1982/04/01  1982091  19820401
1982/02/02  1982033  19820202
1982/04/01  1982091  19820401
1981/11/02  1981306  19811102
1982/04/01  1982091  19820401
1982/05/15  1982135  19820515


Esempio: Uso anni a quattro cifre

La funzione AYMD restituisce una data a otto cifre quando l'argomento di immissione presenta un formato data legacy a sei cifre. Poiché DEFCENT è 19 e YRTHRESH è 83, i valori anno da 83 a 99 sono interpretati come 1983 fino a 1999 e i valori anno da 00 a 82 sono interpretati come 2000 fino a 2082.

SET DEFCENT=19, YRTHRESH=83
 
DEFINE FILE EMPLOYEE
NEW_DATE/I8YYMD = AYMD(EFFECT_DATE, 30, 'I8');
END
 
TABLE FILE EMPLOYEE
PRINT EFFECT_DATE NEW_DATE BY EMP_ID
END

L'emissione è:

EMP_ID     EFFECT_DATE    NEW_DATE
------     -----------    --------
071382660
112847612
117593129     82/11/01  2082/12/01
119265415
119329144     83/01/01  1983/01/31
123764317     83/03/01  1983/03/31
126724188
219984371
326179357     82/12/01  2082/12/31
451123478     84/09/01  1984/10/01
543729165
818692173     83/05/01  1983/05/31

WebFOCUS