Fecha de la última modificación: 09 May 2023
Entorno
- Tableau Cloud
- Tableau Server
Solución
Para ajustar la zona horaria de los campos de fecha y fecha y hora que se muestran en la vista:
- Abra el libro de trabajo en Tableau Desktop.
- Seleccione Análisis > Crear campo calculado.
- Para un campo de fecha y hora, cree un cálculo parecido al siguiente:
DATEADD('hour',<number of hours>,[<datetime field>])
- Para un campo de solo fecha, cree un cálculo parecido al siguiente:
IF DATEPART('hour', NOW()) > <PST time of midnight> then DATEADD('day', 1, <datetime field>) else <datetime field> end
- Por ejemplo: IF DATEPART('hour', NOW()) > 6 THEN DATEADD('day', 1, [Fecha]) else [Fecha] END. Esta expresión añade un día más en el campo de fecha llamado "Fecha" si la hora supera la medianoche en 6 horas; de lo contrario, la fecha sigue siendo la misma.
- Para obtener más información acerca de las funciones de fecha DATEPART o DATEADD, consulte Funciones de fecha en la ayuda de Tableau.
- Para un campo de fecha y hora, cree un cálculo parecido al siguiente:
- Sustituya el campo de fecha y hora utilizado en la vista por el campo calculado nuevo.
- Vuelva a publicar el libro de trabajo o la fuente de datos.
Para sustituir un filtro de fecha relativa por un cálculo que filtre a la hora más reciente en el conjunto de datos:
- Cree un cálculo como el siguiente:
[DateTimeField] >= {FIXED: MAX(DATETRUNC('hour',[DateTimeField]))}
- Coloque el cálculo en el estante Filtro y seleccione la opción para que se muestre "True".
Para sustituir un filtro de fecha relativa por un cálculo que filtre a "esta hora" en la zona horaria deseada:
- Cree un cálculo como el siguiente. Tenga en cuenta que el siguiente cálculo convierte la hora del Pacífico (Tableau Cloud 10) a la hora del este de Norteamérica (usuario hipotético):
[DateTimeField] >= DATEADD('hour', 3, NOW())
- Coloque el cálculo en el estante Filtro y seleccione la opción para que se muestre "True".
Causa
Después de publicar una fuente de datos o un libro de trabajo, NOW(), TODAY(), los filtros de fechas relativas y las marcas de tiempo se localizan a la zona horaria de Tableau Server o Tableau Cloud.Información adicional
El número de horas para el cambio de hora puede variar si su zona horaria aplica cambios estacionales. El siguiente cálculo convierte el formato UTC a la hora del Pacífico, teniendo en cuenta que los cambios estacionales de la hora se producen el segundo domingo de marzo y el primer domingo de noviembre:DATEADD('hour',
IF [<datetime field>] <= IFNULL(
{ FIXED DATETRUNC('year', [<datetime field>]) : MIN(
IF DATEPART('month', [<datetime field>]) = 3
THEN
DATEADD('minute', 119, DATEADD('day', IF DATEPART('weekday', DATETRUNC('month', [<datetime field>])) >1
THEN 7 - (DATEPART('weekday', DATETRUNC('month', [<datetime field>])) - 1)
ELSE 0
END
+ 7, DATETRUNC('month', [<datetime field>])
))
END
)}
, TODAY()+1)
OR [<datetime field>] >=
{ FIXED DATETRUNC('year', [<datetime field>]) : MIN(IF DATEPART('month', [<datetime field>]) = 11
THEN
DATEADD('minute', 119, DATEADD('day', IF DATEPART('weekday', DATETRUNC('month', [<datetime field>])) >1
THEN 7 - (DATEPART('weekday', DATETRUNC('month', [<datetime field>])) - 1)
ELSE 0
END, DATETRUNC('month', [<datetime field>])
))
END
)}
THEN -8
ELSE -7
END,
[<datetime field>])
Funciones de fecha
La función NOW() devuelve la hora en formato UTC
IF [<datetime field>] <= IFNULL(
{ FIXED DATETRUNC('year', [<datetime field>]) : MIN(
IF DATEPART('month', [<datetime field>]) = 3
THEN
DATEADD('minute', 119, DATEADD('day', IF DATEPART('weekday', DATETRUNC('month', [<datetime field>])) >1
THEN 7 - (DATEPART('weekday', DATETRUNC('month', [<datetime field>])) - 1)
ELSE 0
END
+ 7, DATETRUNC('month', [<datetime field>])
))
END
)}
, TODAY()+1)
OR [<datetime field>] >=
{ FIXED DATETRUNC('year', [<datetime field>]) : MIN(IF DATEPART('month', [<datetime field>]) = 11
THEN
DATEADD('minute', 119, DATEADD('day', IF DATEPART('weekday', DATETRUNC('month', [<datetime field>])) >1
THEN 7 - (DATEPART('weekday', DATETRUNC('month', [<datetime field>])) - 1)
ELSE 0
END, DATETRUNC('month', [<datetime field>])
))
END
)}
THEN -8
ELSE -7
END,
[<datetime field>])
Funciones de fecha
La función NOW() devuelve la hora en formato UTC
Gracias por brindarnos sus comentarios sobre la eficacia de este artículo.
Abrir nuevo Caso
Continuar buscando
Base de conocimiento
Comunidad
Ayuda sobre los productos
Capacitación y tutoriales