Questa funzione restituisce un indicatore temporale dell'ora attuale. La funzione restituisce i valori nel formato della variabile di sistema TimeStamp. Il valore predefinito timer_mode è 1.
Sintassi:
now([
timer_mode])
Tipo di dati restituiti: duale
La funzione now() può essere utilizzata sia nello script di caricamento che negli oggetti del grafico.
Argomenti
Argomento
Descrizione
timer_mode
Può presentare i valori seguenti:
0 (ora al momento dell'ultimo caricamento di dati completato) 1 (ora al momento della chiamata della funzione) 2 (ora di apertura dell'app)
Nota informaticaSe si utilizza la funzione in uno script di caricamento dei dati, timer_mode=0 restituirà l'ora del completamento dell'ultimo caricamento dei dati, mentre timer_mode=1 restituirà l'ora della chiamata di funzione nel caricamento dei dati attuale.
Nota di suggerimentoLa funzione now() ha un impatto a prestazioni elevate, che può causare problemi di scorrimento se è utilizzata nelle espressioni delle tabelle. Quando il suo utilizzo non è strettamente necessario, si consiglia di preferire la funzione today(). Se l'utilizzo di now() è richiesto in un layout, si consiglia di utilizzare le impostazioni now(0) o now(2) non predefinite quando possibile, poiché non richiedono calcoli costanti.
Casi di utilizzo
La funzione now() viene comunemente utilizzata come componente di un'espressione. Ad esempio, può essere utilizzato per calcolare il tempo rimanente nel ciclo di vita di un prodotto. La funzione now() verrebbe utilizzata al posto della funzione today() quando l'espressione richiede l'uso di una frazione di giorno.
La tabella seguente fornisce una spiegazione del risultato restituito dalla funzione now(), in presenza di diversi valori dell'argomento timer_mode:
Esempi di funzioni
valore timer_mode
Risultato se utilizzato nello script di caricamento
Risultato se utilizzato nell'oggetto grafico
0
Restituisce un timestamp, nel formato della variabile di sistema TimeStamp, dell'ultimo ricaricamento dei dati riuscito prima dell'ultimo ricaricamento dei dati.
Restituisce un timestamp, nel formato della variabile di sistema TimeStamp, per l'ultimo ricaricamento dei dati.
1
Restituisce un timestamp, nel formato della variabile di sistema TimeStamp, per l'ultimo ricaricamento dei dati.
Restituisce un timestamp, nel formato della variabile di sistema TimeStamp, della chiamata alla funzione.
2
Restituisce un timestamp, nel formato della variabile di sistema TimeStamp, per l'inizio della sessione dell'utente nell'applicazione. Non verrà aggiornato a meno che l'utente non ricarichi lo script.
Restituisce il timestamp, nel formato della variabile di sistema TimeStamp, per l'inizio della sessione dell'utente nell'applicazione. Questo verrà aggiornato all'inizio di una nuova sessione o quando i dati dell'applicazione verranno ricaricati.
Impostazioni locali
Se non diversamente specificato, gli esempi di questo argomento utilizzano il seguente formato di data: MM/GG/AAAA. Il formato della data viene specificato nell'istruzione SET DateFormat nello script di caricamento dei dati. La formattazione predefinita della data potrebbe essere diversa nel proprio sistema, a causa delle impostazioni regionali e di altri fattori. È possibile modificare i formati degli esempi seguenti in base alle proprie esigenze. In alternativa, è possibile modificare i formati nel proprio script di caricamento per adattarli a questi esempi. Per ulteriori informazioni, vedere Modifica delle impostazioni internazionali per la creazione di app e script.
Le impostazioni regionali predefinite nelle app si basano sul profilo utente. Queste impostazioni di formato regionale non riguardano la lingua visualizzata nell'interfaccia utente Qlik Cloud. Qlik Cloud verrà visualizzato nella stessa lingua del browser utilizzato.
Esempio 1 – Generazione di oggetti tramite script di caricamento
Panoramica
Aprire l'Editor di caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Questo esempio crea tre variabili utilizzando la funzione now(). Ogni variabile utilizza una delle opzioni timer_mode per dimostrarne l'effetto.
Affinché le variabili dimostrino il loro scopo, e lo script e poi, dopo un breve periodo di tempo, ricaricare lo script una seconda volta. In questo modo le variabili now(0) e now(1) mostreranno valori diversi, dimostrando così correttamente il loro scopo.
Script di caricamento
LET vPreviousDataLoad = now(0);
LET vCurrentDataLoad = now(1);
LET vApplicationOpened = now(2);
Risultati
Una volta che i dati vengono caricati una seconda volta, creare tre caselle di testo seguendo le indicazioni riportate di seguito.
Per prima cosa, creare una casella di testo per i dati che sono stati caricati precedentemente.
Procedere come indicato di seguito:
Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.
Aggiungere la seguente misura all'oggetto:
=vPreviousDataLoad
In Aspetto, selezionare Show titles e aggiungere il titolo 'Ora di caricamento precedente' all'oggetto.
Quindi, creare una casella di testo per i dati che si stanno caricando.
Procedere come indicato di seguito:
Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.
Aggiungere la seguente misura all'oggetto:
=vCurrentDataLoad
In Aspetto, selezionare Show titles e aggiungere il titolo 'Ora di caricamento attuale' all'oggetto.
Creare una casella di testo finale da mostrare quando è stata avviata la sessione dell'utente nell'applicazione.
Procedere come indicato di seguito:
Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.
Aggiungere la seguente misura all'oggetto:
=vApplicationOpened
In Aspetto, selezionare Show titles e aggiungere il titolo 'Inizio sessione utente' all'oggetto.
L'immagine qui sopra mostra dei valori di esempio per ciascuna delle variabili create. Ad esempio, i valori potrebbero essere i seguenti:
Ora di ricaricamento precedente: 22/06/2022 8:54:03 AM
Ora di ricaricamento corrente: 22/06/2022 9:02:08 AM
Inizio della sessione utente: 22/06/2022 8:40:40 AM
Esempio 2 – Generazione di oggetti senza script di caricamento
Panoramica
In questo esempio, si creeranno tre oggetti grafico utilizzando la funzione now(), senza caricare alcuna variabile o dato nell'applicazione. Ogni oggetto del grafico utilizza una delle opzioni timer_mode per dimostrarne l'effetto.
Per questo esempio non esiste uno script di caricamento.
Procedere come indicato di seguito:
Aprire l'editor di caricamento dati.
Senza modificare lo script di caricamento esistente, fare clic su Carica dati.
Dopo un breve periodo di tempo, caricare lo script una seconda volta.
Risultati
Una volta che i dati vengono caricati una seconda volta, creare tre caselle di testo.
Per prima cosa, creare una casella di testo per l'ultimo ricaricamento di dati.
Procedere come indicato di seguito:
Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.
Aggiungere la seguente misura.
=now(0)
Nella sezione Aspetto, selezionare Mostra titoli e aggiungere il titolo 'Ricaricamento ultimi dati' all'oggetto.
Quindi, creare una casella di testo per mostrare l'ora corrente.
Procedere come indicato di seguito:
Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.
Aggiungere la misura seguente:
=now(1)
In Aspetto, selezionare Mostra titoli e aggiungere il titolo 'Ora attuale' all'oggetto.
Creare una casella di testo finale da mostrare quando è stata avviata la sessione dell'utente nell'applicazione.
Procedere come indicato di seguito:
Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.
Aggiungere la misura seguente:
=now(2)
In Aspetto, selezionare Mostra titoli e aggiungere il titolo 'Sessione utente iniziata' all'oggetto.
L'immagine qui sopra mostra dei valori di esempio per ciascuno degli oggetti creati. Ad esempio, i valori potrebbero essere i seguenti:
Dati ultimo ricaricamento: 22/6/2022 9:02:08 AM
Ora corrente: 22/6/2022 9:25:16 AM
Inizio della sessione utente: 22/06/2022 8:40:40 AM
L'oggetto grafico 'Ultimo caricamento dati' utilizza un valore timer_mode pari a 0. Restituisce il timestamp dell'ultima volta in cui i dati sono stati ricaricati correttamente.
L'oggetto grafico 'Ora corrente' utilizza un valore timer_mode di 1. Questo restituisce l'ora corrente secondo l'orologio di sistema. Se il foglio o l'oggetto viene ricaricato, questo valore verrà aggiornato.
L'oggetto grafico 'Sessione utente iniziata' utilizza un valore timer_mode di 2. Restituisce il timestamp di quando l'applicazione è stata aperta e la sessione dell'utente è iniziata.
Esempio 3 – Scenario
Panoramica
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
Un set di dati costituito dall'inventario di un'operazione di estrazione di criptovalute, che viene caricato in una tabella denominata Inventory.
Dati con i seguenti campi: id, purchase_date e wph (watt all'ora).
L'utente vorrebbe una tabella che visualizzi, per id, il costo totale che ogni impianto di mining ha sostenuto nel mese fino a quel momento, in termini di consumo energetico.
Questo valore deve essere aggiornato ogni volta che l'oggetto grafico viene aggiornato. Il costo attuale dell'elettricità è di 0,0678 dollari per kWH.
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione: id.
Creare la seguente misura:
=(now(1)-monthstart(now(1)))*24*wph/1000*0.0678
Se l'oggetto grafico viene aggiornato il 22/06/2022 alle 10:39:05, i risultati sono i seguenti:
Tabella dei risultati
id
=(now(1)-monthstart(now(1)))*24*wph/1000*0.0678
8188
$39.18
8189
$49.97
8190
$42.81
8191
$46.13
8192
$44.42
8193
$39.18
8194
$46.83
8195
$81.72
8196
$42.95
8197
$42.95
8198
$39.18
8199
$42.29
8200
$42.67
8201
$42.99
8202
$42.99
8203
$42.25
8204
$43.37
8205
$46.13
8206
$39.53
L'utente desidera che i risultati dell'oggetto vengano aggiornati ogni volta che si aggiorna l'oggetto. Pertanto, l'argomento timer_mode viene fornito per le istanze della funzione now()nell'espressione. Il timestamp dell'inizio del mese, identificato dalla funzione now() come argomento timestamp nella funzione monthstart(), viene sottratto dall'ora corrente identificata dalla funzione now(). Fornisce il tempo totale trascorso finora nel mese, in giorni.
Questo valore viene moltiplicato per 24 (il numero di ore in un giorno) e quindi per il valore del campowph.
Per convertire i watt all'ora in kilowatt all'ora, il risultato viene diviso per 1000 prima di essere moltiplicato per la tariffa kWH fornita.
Hai trovato utile questa pagina?
Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – facci sapere come possiamo migliorare!