YM: Calcolo dei mesi trascorsi

Come:

Lingue disponibili: reporting, Maintain

La funzione YM calcola il numero dei mesi trascorsi tra due date. Le date devono essere nel formato anno-mese. È possibile convertire una data in questo formato utilizzando la funzione CHGDAT o EDIT.


Inizio pagina

x
Sintassi: Come calcolare i mesi trascorsi
YM(fromdate, todate, output)

dove:

fromdate

I4YM o I6YYM

La data iniziale nel formato anno-mese (per esempio, I4YM). Se la data non è valida, la funzione restituisce uno 0 (zero).

todate

I4YM o I6YYM

La data finale nel formato anno-mese. Se la data non è valida, la funzione restituisce uno 0 (zero).

emissione

Valore intero

Nome del campo che contiene il risultato o formato del valore di emissione racchiuso tra virgolette singole”.

Suggerimento: Se fromdate o todate è formato anno-mese-giorno intero (I6YMD o I8YYMD), dividere la data per 100 per eseguire la conversione nel formato anno-mese e per impostare il risultato ad un valore intero. Questa azione elimina la porzione del giorno della data, che ora si trova dopo il punto decimale.



Esempio: Calcolo dei mesi trascorsi

I comandi COMPUTE convertono le date dal formato anno-mese-giorno al formato anno-mese; quindi YM calcola la differenza tra i valori nei campi HIRE_DATE/100 e DAT_INC/100:

TABLE FILE EMPLOYEE
PRINT DAT_INC AS 'RAISE DATE' AND COMPUTE
HIRE_MONTH/I4YM = HIRE_DATE/100; NOPRINT AND COMPUTE
MONTH_INC/I4YM = DAT_INC/100; NOPRINT AND COMPUTE
MONTHS_HIRED/I3 = YM(HIRE_MONTH, MONTH_INC, 'I3');
BY LAST_NAME BY FIRST_NAME BY HIRE_DATE
IF MONTHS_HIRED NE 0
WHERE DEPARTMENT EQ 'MIS';
END

L'emissione è:

LAST_NAME     FIRST_NAME  HIRE_DATE  RAISE DATE  MONTHS_HIRED
---------     ----------  ---------  ----------  ------------
CROSS         BARBARA      81/11/02    82/04/09             5
GREENSPAN     MARY         82/04/01    82/06/11             2
JONES         DIANE        82/05/01    82/06/01             1
MCCOY         JOHN         81/07/01    82/01/01             6
SMITH         MARY         81/07/01    82/01/01             6

WebFOCUS