La función Date.IsInPreviousNDays comprueba si un valor temporal hace referencia a un instante de tiempo englobado en los N días anteriores al indicado por el reloj del sistema, devolviendo el valor lógico True en caso positivo.
Date.IsInPreviousNDays(
dateTime as any,
days as number
) as nullable logical
- dateTime: valor temporal de tipo date, datetime o datetimezone a evaluar
- days: número de días del período a considerar
La fecha y hora con la que comparar el argumento dateTime es la proporcionada por el reloj del equipo local.
El argumento days puede tomar el valor 0 o un valor negativo, pero la función siempre devolverá el valor lógico False en estos casos.
Los N días anteriores no incluyen el día actual. Esto supone que si el argumento dateTime pasado a la función hace referencia al día actual, la función devolverá el valor lógico False.
Si estamos a día 17 de julio de 2020, podemos confirmar si el día 15 pertenece al período de 7 días anteriores con la siguiente expresión:
Date.IsInPreviousNDays(
#date(2020,7,15),
7
)
TRUE
Cualquier valor temporal englobado en el día actual devolverá el valor lógico False:
Date.IsInPreviousNDays(
DateTime.LocalNow(),
7
)
FALSE
Y, siguiendo con el mismo ejemplo, si el argumento days toma el valor -1 (lo que podría interpretarse como "mañana") y pasamos a la función la fecha de mañana, el resultado es False pues, como se ha comentado, éste es el resultado que se obtiene para cualquier valor de days menor o igual a cero:
Date.IsInPreviousNDays(
#date(2020,7,18),
-1
)
FALSE