Registros de hora

En Oracle Analytics, los administradores definen la zona horaria por defecto que se utiliza para los cálculos de fecha y hora en la configuración del sistema, y este valor global se aplica a todos los cálculos. Si desea utilizar un registro de hora diferente en un cálculo en particular, puede utilizar la función TIMESTAMPADD para especificar la zona horaria deseada.

Definición de la zona horaria por defecto para los cálculos en la configuración del sistema

Por defecto, la hora del sistema para Oracle Analytics Cloud está basada en la hora UTC. Las siguientes funciones devuelven valores que utilizan la hora o la fecha UTC:
  • CURRENT_DATE
  • CURRENT_TIME()
  • CURRENT_TIMESTAMP()
  • NOW()

Los administradores pueden cambiar el registro de hora que se utiliza en los cálculos mediante la opción Zona horaria por defecto para cálculos de fecha en la consola, en Configuración del sistema. Seleccione la zona horaria deseada en la lista desplegable y aplique los cambios para que el nuevo valor surta efecto.

A continuación se muestra la descripción de GUID-8DB3356D-CD0C-471F-ACA2-9151598FAB51-default.jpg
.jpg

Para obtener más información sobre la zona horaria global, consulte Configuración del sistema - Opciones de formato.

Uso de una zona horaria específica para los registros de hora en los cálculos

Para generar un registro de hora diferente de la configuración del sistema en los cálculos, utilice la función TIMESTAMPADD junto con CURRENT_TIMESTAMP() o NOW(). El cálculo de TIMESTAMPADD básico es:

TIMESTAMPADD(SQL_TSI_<<interval>>, <<integer expression>>, <<timestamp expression>>)

Para los cálculos de registro de hora, HOUR será el intervalo, y el desplazamiento de tiempo será la diferencia en horas entre UTC y la zona horaria en la que se va a generar el informe. Por ejemplo:

TIMESTAMPADD(SQL_TSI_HOUR, -6,CURRENT_TIMESTAMP(5))

Este cálculo devuelve el registro de hora actual en el horario de las Montañas Rocosas, EE.UU. La nueva columna de registro de hora se puede crear como una columna derivada en el origen de tabla lógica o se puede asignar directamente a la base de datos, siendo la diferencia el lugar donde se realizará el cálculo, es decir, en Oracle Analytics o en la base de datos. En este caso, el cálculo se asigna directamente a la base de datos:

A continuación se muestra la descripción de GUID-27A25D1D-56A1-4C02-9FC2-106F9BAFBE71-default.jpg
.jpg

En otro caso, si la zona horaria por defecto está definida en UTC, la función CURRENT_DATE no devuelve la fecha correcta para determinadas horas del día con respecto a la zona horaria de un usuario. Por ejemplo, cuando es medianoche UTC, la fecha local no coincide con la fecha UTC durante el desplazamiento de tiempo.

La conversión del cálculo de registro de hora como una fecha resuelve esta incidencia. Por ejemplo:

cast(TIMESTAMPADD(SQL_TSI_HOUR, -6,CURRENT_TIMESTAMP) as date)

En este caso, el cálculo se crea como una columna derivada:

A continuación se muestra la descripción de GUID-49CFA011-ED91-477F-AE42-7CEE3D090E34-default.jpg
.jpg

Para informes puntuales, puede crear cálculos de registro de hora en el nivel de informe, ya sea en una visualización de datos o en un análisis clásico. Si desea reutilizar los cálculos, suele ser más sencillo definirlos como columnas en el modelo semántico (o un archivo RPD).

Para obtener más información sobre las funciones que se mencionan en este tema, consulte Funciones de fecha y hora y Funciones de serie temporal.