Funciones de fecha y hora date-time

Las funciones de fecha y hora se utilizan para realizar operaciones de fecha y hora en valores dentro de Journey Optimizer.

NOTE
La función now() no está disponible en el editor de personalización. Use getCurrentZonedDateTime() o currentTimeInMillis() en su lugar para los valores de fecha y hora actuales. Más información

Añadir días add-days

La función addDays ajusta una fecha determinada en un número determinado de días, utilizando valores positivos para aumentar y valores negativos para disminuir.

Sintaxis

{%= addDays(date, number) %}
Ejemplo
  • Entrada: {%= addDays(stringToDate("2024-11-01T17:19:51Z"),10) %}
  • Salida: 2024-11-11T17:19:51Z

Agregar horas add-hours

La función addHours ajusta una fecha determinada en un número determinado de horas, utilizando valores positivos para aumentar y valores negativos para disminuir.

Sintaxis

{%= addHours(date, number) %}
Ejemplo
  • Entrada: {%= addHours(stringToDate("2024-11-01T17:19:51Z"),1) %}
  • Salida: 2024-11-01T18:19:51Z

Añadir minutos add-minutes

La función addMinutes ajusta una fecha determinada en un número determinado de minutos, utilizando valores positivos para aumentar y valores negativos para disminuir.

Sintaxis

{%= addMinutes(date, number) %}
Ejemplo
  • Entrada: {%= addMinutes(stringToDate("2024-11-01T17:59:51Z"),10) %}
  • Salida: 2024-11-01T18:09:51Z

Agregar meses add-months

La función addMonths ajusta una fecha determinada en un número determinado de meses, utilizando valores positivos para aumentar y valores negativos para disminuir.

Sintaxis

{%= addMonths(date, number) %}
Ejemplo
  • Entrada: {%= addMonths(stringToDate("2024-11-01T17:19:51Z"),2) %}
  • Salida: 2025-01-01T17:19:51Z

Añadir segundos add-seconds

La función addSeconds ajusta una fecha determinada en un número determinado de segundos, utilizando valores positivos para aumentar y valores negativos para disminuir.

Sintaxis

{%= addSeconds(date, number) %}
Ejemplo
  • Entrada: {%= addSeconds(stringToDate("2024-11-01T17:19:51Z"),10) %}
  • Salida: 2024-11-01T17:20:01Z

Añadir años add-years

La función addYears ajusta una fecha determinada en un número determinado de años, utilizando valores positivos para aumentar y valores negativos para disminuir.

Sintaxis

{%= addYears(date, number) %}
Ejemplo
  • Entrada: {%= addYears(stringToDate("2024-11-01T17:19:51Z"),2) %}
  • Salida: 2026-11-01T17:19:51Z

Edad age

La función age se usa para recuperar la edad de una fecha determinada.

Sintaxis

 {%= age(datetime) %}

Edad En Días age-days

La función ageInDays calcula la antigüedad de una fecha determinada en días, es decir, el número de días transcurridos entre la fecha determinada y la fecha actual, negativos para fechas futuras y positivos para fechas pasadas.

Sintaxis

{%= ageInDays(date) %}
Ejemplo

currentDate = 2025-01-07T12:17:10.720122+05:30 (Asia/Calcuta)

  • Entrada: {%= ageInDays(stringToDate("2025-01-01T17:19:51Z"))%}
  • Salida: 5

Edad En Meses age-months

La función ageInMonths calcula la edad de una fecha determinada en meses, es decir, el número de meses transcurridos entre la fecha determinada y la fecha actual, negativos para fechas futuras y positivos para fechas pasadas.

Sintaxis

{%= ageInMonths(date) %}
Ejemplo

currentDate = 2025-01-07T12:22:46.993748+05:30(Asia/Calcuta)

  • Entrada: {%=ageInMonths(stringToDate("2024-01-01T00:00:00Z"))%}
  • Salida: 12

Comparar fechas compare-dates

La función compareDates compara la fecha de la primera entrada con la otra. Devuelve 0 si fecha1 es igual a fecha2, -1 si fecha1 es anterior a fecha2 y 1 si fecha1 es posterior a fecha2.

Sintaxis

{%= compareDates(date1, date2) %}
Ejemplo
  • Entrada: {%=compareDates(stringToDate("2024-12-02T00:00:00Z"), stringToDate("2024-12-03T00:00:00Z"))%}
  • Salida: -1

Convertir fechaZonaHora convert-zoned-date-time

La función convertZonedDateTime convierte una fecha y hora en una zona horaria determinada.

Sintaxis

{%= convertZonedDateTime(dateTime, timezone) %}
Ejemplo
  • Entrada: {%=convertZonedDateTime(stringToDate("2019-02-19T08:09:00Z"), "Asia/Tehran")%}
  • Salida: 2019-02-19T11:39+03:30[Asia/Tehran]

Hora actual en milisegundos current-time

La función currentTimeInMillis se usa para recuperar el tiempo actual en milisegundos epoch.

Sintaxis

{%= currentTimeInMillis() %}

Diferencia de fechas date-diff

La función dateDiff se usa para recuperar la diferencia entre dos fechas en número de días.

Sintaxis

{%= dateDiff(datetime,datetime) %}

Día del mes day-month

dayOfMonth devuelve el número que representa el día del mes.

Sintaxis

{%= dayOfMonth(datetime) %}
Ejemplo
  • Entrada: {%= dayOfMonth(stringToDate("2024-11-05T17:19:51Z")) %}
  • Salida: 5

Día de la semana day-week

La función dayOfWeek se usa para recuperar el día de la semana.

Sintaxis

{%= dayOfWeek(datetime) %}

Día del año day-year

La función dayOfYear se usa para recuperar el día del año.

Sintaxis

{%= dayOfYear(datetime) %}

Diferencia en segundos diff-seconds

La función diffInSeconds devuelve la diferencia entre dos fechas en términos de segundos.

Sintaxis

{%= diffInSeconds(endDate, startDate) %}
Ejemplo
  • Entrada: {%=diffInSeconds(stringToDate("2024-11-01T17:19:51Z"), stringToDate("2024-11-01T17:19:01Z"))%}
  • Salida: 50

Extraer horas extract-hours

La función extractHours extrae el componente de hora de una marca de tiempo determinada.

Sintaxis

{%= extractHours(date) %}
Ejemplo
  • Entrada: {%= extractHours(stringToDate("2024-11-01T17:19:51Z"))%}
  • Salida: 17

Extraer minutos extract-minutes

La función extractMinutes extrae el componente de minuto de una marca de tiempo determinada.

Sintaxis

{%= extractMinutes(date) %}
Ejemplo
  • Entrada: {%= extractMinutes(stringToDate("2024-11-01T17:19:51Z"))%}
  • Salida: 19

Extraer meses extract-months

La función extractMonth extrae el componente de mes de una marca de tiempo determinada.

Sintaxis

{%= extractMonths(date) %}
Ejemplo
  • Entrada: {%=extractMonth(stringToDate("2024-11-01T17:19:51Z"))%}
  • Salida: 11

Extraer segundos extract-seconds

La función extractSeconds extrae el segundo componente de una marca de tiempo determinada.

Sintaxis

{%= extractSeconds(date) %}
Ejemplo
  • Entrada: {%=extractSeconds(stringToDate("2024-11-01T17:19:51Z"))%}
  • Salida: 51

Formato de fecha format-date

La función formatDate se usa para dar formato a un valor de fecha y hora. El formato debe ser un patrón DateTimeFormat de Java válido.

Sintaxis

{%= formatDate(datetime, format) %}

Donde el primer parámetro es el atributo de fecha y hora y el segundo valor es cómo desea que se convierta y muestre la fecha.

NOTE
La función formatDate requiere un tipo de campo fecha-hora como entrada, no como cadena. Si el campo se almacena como un tipo de cadena en el esquema XDM, primero debe convertirlo a fecha-hora mediante una función de conversión como stringToDate() o toDateTime(). Consulte los ejemplos siguientes.
Si un patrón de fecha no es válido, la fecha volverá a estar en el formato estándar ISO.
Puede utilizar las funciones de formato de fecha de Java como se resume en Documentación de Oracle

Ejemplos

Formato de un campo de fecha y hora

La siguiente operación aplica formato MM/DD/AA a un campo de fecha y hora.

code language-sql
{%= formatDate(profile.timeSeriesEvents._mobile.hotelBookingDetails.bookingDate, "MM/dd/YY") %}
Convertir una cadena a fecha primero

Si el campo se almacena como una cadena, primero debe convertirlo a una fecha-hora con stringToDate() antes de aplicarle formato.

code language-sql
{%= formatDate(stringToDate(profile.person.birthDayAndMonth), "MM/DD/YY") %}
Formato de fecha completo con nombre de día

La siguiente operación devuelve un formato de fecha completo con el nombre del día, el nombre del mes, el día y el año.

code language-sql
{%= formatDate(profile.person.birthDateTime, "EEEE MMMM dd yyyy") %}

Salida: Wednesday January 01 2020

Fecha dinámica basada en la hora del sistema

Puede dar formato a la hora del sistema actual para generar fechas dinámicas. La siguiente operación devuelve la fecha actual en formato MM/dd/AAAA.

code language-sql
{%= formatDate(getCurrentZonedDateTime(), "MM/dd/YYYY") %}

Salida (el 30 de enero de 2026): 01/30/2026

Formato de día de la semana

Puede extraer el día de la semana en forma corta.

code language-sql
{%= formatDate(getCurrentZonedDateTime(), "EEE") %}

Salida: Sun (para domingo), Mon (para lunes), Tue (para martes), etc.

Para salida en minúsculas, combine con la función lowerCase:

code language-sql
{%= lowerCase(formatDate(getCurrentZonedDateTime(), "EEE")) %}

Salida: sun, mon, tue, etc.

Caracteres de patrón pattern-characters

Algunas letras de patrón pueden tener un aspecto similar, pero representan conceptos diferentes.

Patrón
Significado
Ejemplo (para 2023-12-31T10:15:30Z)
y
Año natural (año estándar)
2023
Y
Año basado en la semana (ISO 8601). Puede diferir en los límites anuales.
2024 (desde el 31 de diciembre de 2023 cae en la primera semana de 2024)
M
Mes del año (1-12 o texto como Jan, January)
12 o Dec
m
Minuto de la hora (0-59)
15
d
Día del mes (1-31)
31
D
Día del año (1-366)
365

Formato de fecha con compatibilidad con configuración regional format-date-locale

La función formatDate se puede usar para dar formato a un valor de fecha y hora en su representación correspondiente con distinción de idioma, es decir, en una configuración regional deseada. El formato debe ser un patrón DateTimeFormat de Java válido.

Sintaxis

{%= formatDate(datetime, format, locale) %}

Cuando la primera cadena es el atributo de fecha, el segundo valor es cómo desea que se convierta y muestre la fecha y el tercer valor representa la configuración regional en formato de cadena.

NOTE
Si un patrón de fecha no es válido, la fecha volverá a estar en el formato estándar ISO.
Puede usar funciones de formato de fecha Java como se resume en Documentación de Oracle.
Puede usar formato y configuraciones regionales válidas, tal como se resume en Documentación de Oracle y Configuraciones regionales compatibles.

Ejemplo

La siguiente operación devuelve la fecha con el siguiente formato: dd/MM/AA y configuración regional FRANCIA.

{%= formatDate(profile.timeSeriesEvents._mobile.hotelBookingDetails.bookingDate, "MM/dd/YY", "fr_FR") %}

Obtener CurrentZonedDateTime get-current-zoned-date-time

La función getCurrentZonedDateTime devuelve la fecha y la hora actuales con información de zona horaria.

Sintaxis

{%= getCurrentZonedDateTime() %}
Ejemplo
  • Entrada: {%= getCurrentZonedDateTime() %}
  • Salida: 2024-12-06T17:22:02.281067+05:30[Asia/Kolkata]

Diferencia de horas hours-difference

La función diffInHours devuelve la diferencia entre dos fechas en términos de horas.

Sintaxis

{%= diffInHours(endDate, startDate) %}
Ejemplo
  • Entrada: {%= diffInHours(stringToDate("2024-11-01T17:19:51Z"), stringToDate("2024-11-01T07:19:51Z"))%}
  • Salida: 10

Diferencia de minutos diff-minutes

La función diffInMinutes se usa para devolver la diferencia entre dos fechas en términos de minutos.

Sintaxis

{%= diffInMinutes(endDate, startDate) %}
Ejemplo
  • Entrada: {%= diffInMinutes(stringToDate("2024-11-01T17:19:51Z"), stringToDate("2024-11-01T16:19:51Z"))%}
  • Salida: 60

Diferencia de meses months-difference

La función diffInMonths devuelve la diferencia entre dos fechas en términos de meses.

Sintaxis

{%= diffInMonths(endDate, startDate) %}
Ejemplo
  • Entrada: {%=diffInMonths(stringToDate("2024-11-01T17:19:51Z"), stringToDate("2024-08-01T17:19:51Z"))%}
  • Salida: 3

Establecer días set-days

La función setDays se usa para establecer el día del mes para la fecha y hora determinadas.

Sintaxis

{%= setDays(datetime, day) %}

Establecer horas set-hours

La función setHours se usa para establecer la hora de la fecha y hora.

Sintaxis

{%= setHours(datetime, hour) %}

A Fecha Hora to-date-time

La función ToDateTime convierte la cadena en fecha. Devuelve la fecha epoch como salida para una entrada no válida.

Sintaxis

{%= toDateTime(string, string) %}
Ejemplo
  • Entrada: {%=toDateTime("2024-11-01T17:19:51Z")%}
  • Salida: 2024-11-01T17:19:51Z

A UTC to-utc

La función toUTC se usa para convertir una fecha y hora en UTC.

Sintaxis

{%= toUTC(datetime) %}

Truncar al inicio del día truncate-day

La función truncateToStartOfDay se usa para modificar una fecha y hora determinadas al establecerla en el inicio del día con la hora establecida en 00:00.

Sintaxis

{%= truncateToStartOfDay(date) %}
Ejemplo
  • Entrada: {%= truncateToStartOfDay(stringToDate("2024-11-01T17:19:51Z")) %}
  • Salida: 2024-11-01T00:00Z

truncateToStartOfQuarter truncate-quarter

La función truncateToStartOfQuarter se usa para truncar una fecha y hora al primer día de su trimestre (por ejemplo, 1 de enero, 1 de abril, 1 de julio, 1 de octubre) a las 00:00.

Sintaxis

{%= truncateToStartOfQuarter(dateTime) %}
Ejemplo
  • Entrada: {%=truncateToStartOfQuarter(stringToDate("2024-11-01T17:19:51Z"))%}
  • Salida: 2024-10-01T00:00Z

truncateToStartOfWeek truncate-week

La función truncateToStartOfWeek modifica una fecha y hora determinada al establecerla en el inicio de la semana (lunes a las 00:00).

Sintaxis

{%= truncateToStartOfWeek(dateTime) %}
Ejemplo
  • Entrada: {%= truncateToStartOfWeek(stringToDate("2024-11-19T17:19:51Z"))%} // tuesday
  • Salida: 2024-11-18T00:00Z // monday

truncateToStartOfYear truncate-year

La función truncateToStartOfYear se usa para modificar una fecha y hora determinadas truncándolas al primer día del año (1 de enero) a las 00:00.

Sintaxis

{%= truncateToStartOfYear(dateTime) %}
Ejemplo
  • Entrada: {%=truncateToStartOfYear(stringToDate("2024-11-01T17:19:51Z"))%}
  • Salida: 2024-01-01T00:00Z

Semana del año week-of-year

La función weekOfYear se usa para recuperar la semana del año.

Sintaxis

{%= weekOfYear(datetime) %}

Diferencia de años diff-years

La función diffInYears se usa para devolver la diferencia entre dos fechas en términos de años.

Sintaxis

{%= diffInYears(endDate, startDate) %}: int
Ejemplo
  • Entrada: {%=diffInYears(stringToDate("2024-11-01T17:19:51Z"), stringToDate("2019-10-01T17:19:51Z"))%}
  • Salida: 5
recommendation-more-help
b22c9c5d-9208-48f4-b874-1cefb8df4d76