# now Funzione per script e grafici

In Qlik Cloud, questa funzione restituisce un timestamp in formato UTC. La funzione restituisce i valori nel formato della variabile di sistema TimeStamp. Il valore predefinito di timer\_mode è 1.

Nota di suggerimento

In Qlik Cloud, now() utilizza UTC. Se è necessario restituire i timestamp in altri fusi orari, considerare le seguenti alternative:

* Racchiudere la funzione now() in un'espressione che utilizza la funzione converttolocaltime(). Ad esempio: `converttolocaltime(now(), 'Stockholm')`

* Utilizzare la funzione localtime() come espressione autonoma. Ad esempio: `LocalTime('Stockholm')`

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:<br><br>0 (ora al momento dell'ultimo caricamento di dati completato)<br>1 (ora al momento della chiamata della funzione)<br>2 (ora di apertura dell'applicazione)<br><br>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 è possibile 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.

## Quando usare now

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 valore 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/DD/YYYY. 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 applicazioni e script](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/regional-settings-in-apps.htm).

Le impostazioni regionali predefinite nelle applicazioni 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.

Se si è un creatore di applicazioni, è possibile impostare la regione predefinita per le applicazioni che si creano. Per ulteriori informazioni, vedere [Regolazione delle impostazioni internazionali preferite per la creazione di app e script in Qlik Cloud Analytics](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/UserInterface/Languages.htm#Setting).

## Esempio 1 – Generazione di oggetti tramite script di caricamento

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/now.htm)

#### Script di caricamento e risultati

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:

1. Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.

2. Aggiungere la seguente misura all'oggetto:

   `=vPreviousDataLoad`

3. 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:

1. Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.

2. Aggiungere la seguente misura all'oggetto:

   `=vCurrentDataLoad`

3. 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:

1. Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.

2. Aggiungere la seguente misura all'oggetto:

   `=vApplicationOpened`

3. In Aspetto, selezionare Show titles e aggiungere il titolo 'Inizio sessione utente' all'oggetto.

Variabili dello script di caricamento `now()`

Variabili dello script di caricamento `now()`

Variabili dello script di caricamento `now()`now() ![Schema che mostra l'aspetto di ciascuna delle tre caselle di testo generate, dopo aver utilizzato la funzione now() per caricare le variabili tramite lo script di caricamento.](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-now-example-load-script.png)

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

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/now.htm)

#### Script di caricamento ed espressione del grafico

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:

1. Aprire l'Editor caricamento dati.

2. Senza modificare lo script di caricamento esistente, fare clic su Carica dati.

3. 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:

1. Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.

2. Aggiungere la seguente misura.

   `=now(0)`

3. 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:

1. Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.

2. Aggiungere la misura seguente:

   `=now(1)`

3. 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:

1. Utilizzando l'oggetto grafico Testo e immagine, creare una casella di testo.

2. Aggiungere la misura seguente:

   `=now(2)`

3. In Aspetto, selezionare Mostra titoli e aggiungere il titolo 'Sessione utente iniziata' all'oggetto.

Esempi oggetto grafico `now()`

Esempi oggetto grafico `now()`

Esempi oggetto grafico `now()`now() ![Schema che mostra l'aspetto di ciascuna delle tre caselle di testo generate dopo aver utilizzato la funzione now() per creare solo oggetti grafico, senza che i dati siano stati caricati nell'applicazione.](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-now-example-no-data-loaded.png)

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

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/now.htm)

#### Script di caricamento ed espressione del grafico

Panoramica

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

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.

Script di caricamento

```
SET DateFormat='MM/DD/YYYY';

Inventory:
Load
*
Inline 
[
id,purchase_date,wph
8188,1/7/2022,1123
8189,1/19/2022,1432
8190,2/28/2022,1227
8191,2/5/2022,1322
8192,3/16/2022,1273
8193,4/1/2022,1123
8194,5/7/2022,1342
8195,5/16/2022,2342
8196,6/15/2022,1231
8197,6/26/2022,1231
8198,7/9/2022,1123
8199,7/22/2022,1212
8200,7/23/2022,1223
8201,7/27/2022,1232
8202,8/2/2022,1232
8203,8/8/2022,1211
8204,8/19/2022,1243
8205,9/26/2022,1322
8206,10/14/2022,1133
8207,10/29/2022,1231
];
```

Risultati

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 campo `wph`.

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.

## Ulteriori informazioni

* [localtime Funzione per script e grafici](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/localtime.htm#Bar)

* [converttolocaltime Funzione per script e grafici](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/converttolocaltime.htm#Bar)