Configurare gli indicatori orari

In Oracle Analytics, gli amministratori impostano il fuso orario predefinito utilizzato per i calcoli di data e ora in Impostazioni di sistema. Questa impostazione globale si applica a tutti i calcoli. In questo argomento viene descritto come utilizzare la funzione TIMESTAMPADD per specificare un altro fuso orario nel caso si desideri usare un fuso orario diverso in un determinato calcolo.

Impostare il fuso orario predefinito per i calcoli in Impostazioni di sistema

Per impostazione predefinita, l'ora di sistema per Oracle Analytics Cloud si basa sull'ora UTC. Le funzioni seguenti restituiscono valori utilizzando l'ora o la data UTC:
  • CURRENT_DATE
  • CURRENT_TIME()
  • CURRENT_TIMESTAMP()
  • NOW()

L'amministratore può modificare l'indicatore orario utilizzato nei calcoli mediante l'opzione Fuso orario predefinito per i calcoli della data nella console in Impostazioni di sistema avanzate. Selezionare il fuso orario desiderato dall'elenco a discesa e applicare le modifiche per rendere effettivo il nuovo valore.

Segue la descrizione di GUID-8DB3356D-CD0C-471F-ACA2-9151598FAB51-default.png
.png

Per ulteriori informazioni sulle impostazioni del fuso orario globale, vedere Impostazioni di sistema - Opzioni di formato.

Usare un fuso orario specifico per gli indicatori orario nei calcoli

Per generare un indicatore orario diverso dall'impostazione di sistema nei calcoli, usare la funzione TIMESTAMPADD insieme a CURRENT_TIMESTAMP() o NOW(). Il calcolo TIMESTAMPADD di base è il seguente:

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

Per i calcoli dell'indicatore orario, HOUR è l'intervallo, mentre l'offset temporale è la differenza in ore tra l'ora UTC e il fuso orario di riferimento. Ad esempio:

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

Questo calcolo restituisce l'indicatore orario corrente nell'ora degli stati montuosi degli Stati Uniti. È possibile creare la nuova colonna dell'indicatore orario come colonna derivata nell'origine della tabella logica o mapparla direttamente al database. La differenza è data dalla posizione in cui deve essere eseguito il calcolo, ovvero Oracle Analytics o il database. Nella figura riportata di seguito viene mostrato un calcolo mappato direttamente al database nella finestra di dialogo Costruzione guidata dell'espressione - Espressione.

Segue la descrizione di GUID-27A25D1D-56A1-4C02-9FC2-106F9BAFBE71-default.jpg
.jpg

Quando il fuso orario predefinito è impostato su UTC, la funzione CURRENT_DATE non restituisce la data corretta per determinate ore del giorno rispetto al fuso orario di un utente. Ad esempio, quando è mezzanotte nel fuso orario UTC, la data locale non corrisponde alla data UTC per la durata dell'offset temporale.

La conversione del calcolo dell'indicatore orario in data risolve questo problema. Ad esempio:

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

Nella figura riportata di seguito viene mostrato un calcolo creato come colonna derivata nella finestra di dialogo Costruzione guidata dell'espressione - Colonna logica derivata.

Segue la descrizione di GUID-49CFA011-ED91-477F-AE42-7CEE3D090E34-default.jpg
.jpg

Per i report unici o singoli, è possibile creare i calcoli dell'indicatore orario a livello di report in una visualizzazione dati o in un'analisi classica. Se si prevede di riutilizzare i calcoli, spesso è più semplice definirli come colonne nel modello semantico (o file RPD).

Per ulteriori informazioni sulle funzioni menzionate in questo argomento, vedere Funzioni di data e ora e Funzioni di serie temporali.