Hola, colega.
He revisado la alternativa que te da Víctor y funciona muy bien.
Te daré una propuesta, pero debes verla sólo de manera didáctica, pues evidentemente la solución de Víctor tiene mayor "validez".
#define _CR chr(13)
ldFecIni = date(2014, 01, 01)
ldFecFin = date()
loDifFec = DifFechas1(m.ldFecIni, m.ldFecFin)
PROCEDURE DifFechas1(M.p1, M.p2)
ldFecIni = M.p2
ldFecFin = M.p1
set century on
local M.OldDate
M.OldDate = set('date')
set date ansi
** Para averiguar cuántos DIAS han transcurrido
M.nDias = (ldFecIni-ldFecFin)
=MessageBox('Desde '+transform(ldFecFin)+' hasta hoy '+transform(ldFecIni)+_CR;
+'han transcurrido '+transform(M.nDias)+' días.',0,'--')
** Para averiguar cuántos AÑOS han transcurrido
M.nAños = (ldFecIni-ldFecFin)/365
=MessageBox('Desde '+transform(ldFecFin)+' hasta hoy '+transform(ldFecIni)+_CR;
+'han transcurrido '+transform(M.nAños)+' años.',0,'--')
** Para averiguar cuántos MESES han transcurrido
M.nMeses= (ldFecIni-ldFecFin)/30
=MessageBox('Desde '+transform(ldFecFin)+' hasta hoy '+transform(ldFecIni)+_CR;
+'han transcurrido '+transform(M.nMeses)+' meses.',0,'--')
set date &OldDate
**
Chao.