# today - funzione dello script e del grafico

Questa funzione restituisce la data attuale. La funzione restituisce i valori nel formato della variabile di sistema `DateFormat`.

Sintassi:

today([ timer\_mode])

Tipo di dati restituiti: duale

La funzione `today()` può essere utilizzata sia nello script di caricamento che negli oggetti del grafico.

Il valore predefinito `timer_mode` è 1.

Argomenti

| Argomento | Descrizione |
| --- | --- |
| timer\_mode | Può presentare i valori seguenti:<br><br>0 (giorno dell'ultimo caricamento di dati completato)<br>1 (giorno della chiamata della funzione)<br>2 (giorno di apertura dell'app)<br><br>Nota informaticaSe si utilizza la funzione in uno script di caricamento, timer\_mode=0 restituirà il giorno di completamento dell'ultimo caricamento dei dati, mentre timer\_mode=1 restituirà il giorno del caricamento dei dati attuale. |

Esempi di funzioni

| valore timer\_mode | Risultato se utilizzato nello script di caricamento | Risultato se utilizzato nell'oggetto grafico |
| --- | --- | --- |
| 0 | Restituisce una data, nel formato della variabile di sistema `DateFormat`, dell'ultimo ricaricamento dei dati riuscito prima dell'ultimo ricaricamento dei dati. | Restituisce una data, nel formato della variabile di sistema `DateFormat`, per l'ultimo ricaricamento dei dati. |
| 1 | Restituisce una data, nel formato della variabile di sistema `DateFormat`, per l'ultimo ricaricamento dei dati. | Restituisce una data, nel formato della variabile di sistema `DateFormat`, della chiamata alla funzione. |
| 2 | Restituisce una data, nel formato della variabile di sistema `DateFormat`, per l'inizio della sessione dell'utente nell'applicazione. Non verrà aggiornato a meno che l'utente non ricarichi lo script. | Restituisce la data, nel formato della variabile di sistema `DateFormat`, 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. |

## Casi di utilizzo

La funzione `today()` viene comunemente utilizzata come componente di un'espressione. Ad esempio, può essere utilizzata per calcolare gli interessi accumulati in un mese fino alla data corrente.

La tabella seguente fornisce una spiegazione del risultato restituito dalla funzione `today()`, in presenza di diversi valori dell'argomento `timer_mode`:

## 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.

Le impostazioni regionali predefinite delle app si basano sulle impostazioni regionali del sistema del computer o del server in cui risulta installato Qlik Sense. Se il server Qlik Sense a cui si accede è impostato in Svezia, l'editor caricamento dati utilizzerà le impostazioni regionali svedesi per date, ora e valuta. Queste impostazioni di formato regionale non riguardano la lingua visualizzata nell'interfaccia utente Qlik Sense. Qlik Sense verrà visualizzato nella stessa lingua del browser utilizzato.

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

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

#### Script di caricamento e risultati

Panoramica

L'esempio seguente crea tre variabili utilizzando la funzione `today()`. Ogni variabile utilizza una delle opzioni `timer_mode` per dimostrarne l'effetto.

Affinché le variabili dimostrino il loro scopo, ricaricare lo script e poi, dopo 24 ore, ricaricare lo script una seconda volta. In questo modo le variabili `today(0)` e `today(1)` mostreranno valori diversi, dimostrando così correttamente il loro scopo.

Script di caricamento

```
LET vPreviousDataLoad = today(0);
LET vCurrentDataLoad = today(1);
LET vApplicationOpened = today(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.

Schema delle variabili create con la funzione `today()` nello script di caricamento

Schema delle variabili create con la funzione `today()` nello script di caricamento

Schema delle variabili create con la funzione `today()`today() nello script di caricamento![Schema che mostra l'aspetto di ciascuna delle tre caselle di testo generate, dopo aver utilizzato la funzione today() per caricare le variabili tramite lo script di caricamento.](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-today-example-variables-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

* Ora di ricaricamento attuale: 23/06/2022

* Inizio della sessione utente: 23/06/2022

## Esempio 2 – Generazione di oggetti senza script di caricamento

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

#### Script di caricamento ed espressione del grafico

Panoramica

L'esempio seguente crea tre oggetti grafico utilizzando la funzione `today()`. Ogni oggetto del grafico utilizza una delle opzioni `timer_mode` per dimostrarne l'effetto.

Per questo esempio non esiste uno script di caricamento.

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.

   `=today(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:

   `=today(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:

   `=today(2)`

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

Schema degli oggetti creato usando la funzione `today()` senza script di caricamento

Schema degli oggetti creato usando la funzione `today()` senza script di caricamento

Schema degli oggetti creato usando la funzione `today()`today() senza script di caricamento![Schema che mostra l'aspetto di ciascuna delle tre caselle di testo generate dopo aver utilizzato la funzione today() per creare solo oggetti grafico, senza che i dati siano stati caricati nell'applicazione.](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-today-example-variables-chart.png)

L'immagine qui sopra mostra dei valori di esempio per ciascuno degli oggetti creati. Ad esempio, i valori potrebbero essere i seguenti:

* Data ultimo ricaricamento: 23/06/2022

* Orario corrente: 23/06/2022

* Inizio della sessione utente: 23/06/2022

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/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/today.htm)

#### Script di caricamento ed espressione del grafico

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 contenente un insieme di saldi di prestiti, caricato in una tabella denominata `Loans`.

* Dati della tabella con campi per ID prestito, saldo all'inizio del mese e tasso di interesse semplice annuo applicato a ciascun prestito.

L'utente finale desidera un oggetto grafico che mostri, in base all'ID del prestito, gli interessi correnti che sono stati maturati per ciascun prestito nel mese in corso. Anche se l'applicazione viene ricaricata solo una volta alla settimana, l'utente vorrebbe che i risultati venissero aggiornati ogni volta che l'oggetto o l'applicazione vengono aggiornati.

Script di caricamento

```
Loans:
Load
*
Inline 
[
loan_id,start_balance,rate
8188,$10000.00,0.024
8189,$15000.00,0.057
8190,$17500.00,0.024
8191,$21000.00,0.034
8192,$90000.00,0.084
];
```

Risultati

Procedere come indicato di seguito:

1. Caricare i dati e aprire un foglio. Creare una nuova tabella.

2. Aggiungere i seguenti campi come dimensioni:

   * `loan_id`

   * `start_balance`

3. Quindi, creare una misura per calcolare gli interessi accumulati:

   `=start_balance*(rate*(today(1)-monthstart(today(1)))/365)`

4. Impostare la Formattazione numero della misura su Denaro.

Tabella dei risultati

| loan\_id | start\_balance | =start\_balance\*(rate\*(today(1)-monthstart(today(1)))/365) |
| --- | --- | --- |
| 8188 | $10000.00 | $16.44 |
| 8189 | $15000.00 | $58.56 |
| 8190 | $17500.00 | $28.77 |
| 8191 | $21000.00 | $48.90 |
| 8192 | $90000.00 | $517.81 |

Utilizzando la funzione `today()` per restituire la data odierna come unico argomento, la funzione `monthstart()` restituisce la data di inizio del mese corrente. Sottraendo tale risultato dalla data corrente, di nuovo usando la funzione `today()`, l'espressione restituisce il numero di giorni trascorsi fino a ora questo mese.

Questo valore viene quindi moltiplicato per il tasso di interesse e diviso per 365, per restituire il tasso di interesse effettivo incorso per questo periodo. Il risultato viene poi moltiplicato per il saldo iniziale del prestito per ottenere gli interessi maturati fino a ora in questo mese.

Poiché il valore 1 è usato come argomento `timer_mode` nelle funzioni `today()` all'interno dell'espressione, ogni volta che l'oggetto grafico viene aggiornato (aprendo l'applicazione, aggiornando la pagina, passando da un foglio all'altro, ecc.), la data restituita sarà quella corrente e i risultati saranno aggiornati di conseguenza.