# Last - funzione per grafici

Last() restituisce il valore di un'espressione valutata con i valori di dimensione di una tabella pivot così come appaiono nell'ultima colonna del segmento di riga attuale della tabella pivot. Questa funzione restituisce NULL in tutti i tipi di grafico, ad eccezione delle tabelle pivot.

Nota informaticaL'ordinamento sui valori y nei grafici o l'ordinamento per colonne di espressione nelle tabelle non è consentito quando si utilizza questa funzione di grafico in una qualsiasi delle espressioni del grafico. Queste alternative di ordinamento verranno perciò disattivate automaticamente. Quando si utilizza questa funzione di grafico in una visualizzazione o in una tabella, l'ordinamento della visualizzazione torna all'ordinamento inserito in questa funzione.

Sintassi:

Last([TOTAL] expr [, offset [, count]])

Argomenti

| Argomento | Descrizione |
| --- | --- |
| expr | L'espressione o il campo contenente i dati da misurare. |
| offset | Se si specifica un offset n, maggiore di 1, la valutazione dell'espressione viene spostata di n colonne a sinistra rispetto all'ultima colonna.<br><br>Se si specifica un offset uguale a 0 verrà valutata l'espressione nell'ultima colonna del segmento della riga attuale.<br><br>Specificando un numero di offset negativo, la funzione Last diventa equivalente alla funzione First con il numero di offset positivo corrispondente. |
| count | Specificando un terzo parametro count maggiore di 1, la funzione restituirà una scala di valori, uno per ciascuna delle colonne della tabella fino al valore di count, contando verso sinistra a partire dalla cella originaria. |
| TOTAL | Se la tabella è unidimensionale o se è utilizzato il qualificatore TOTAL come argomento, il segmento colonna attuale sarà sempre uguale all'intera colonna.<br><br>[Definizione dell'ambito di aggregazione](https://help.qlik.com/it-IT/sense/November2025/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm) |

Se una tabella pivot include più dimensioni orizzontali, il segmento della riga attuale includerà solo le colonne con gli stessi valori della colonna attuale in tutte le righe della dimensione, tranne per la riga che visualizza l'ultima dimensione orizzontale dell'ordinamento tra campi. La sequenza di ordinamento tra campi per le dimensioni orizzontali nelle tabelle pivot è definita semplicemente dall'ordine delle dimensioni dall'alto verso il basso.

Esempio: espressioni del grafico

| Esempio | Risultato |
| --- | --- |
| `Last( Sum(Sales ))` | Restituisce la somma per `Sales` dall'ultima colonna del segmento di riga corrente. |
| `Last( Sum(Sales ), 2)` | Restituisce la somma per `Sales` dalla colonna che si trova due colonne a sinistra dell'ultima colonna nel segmento della riga corrente. |
| `Last( Total Sum( Sales ))` | Restituisce la somma per `Sales` dall'ultima colonna del segmento della riga corrente. |
| `RangeAvg (Last(Sum(x),1,5))` | Restituisce una media dei risultati della funzione `sum(x)` calcolata in base alle cinque colonne più a destra del segmento della riga attuale. |

## Esempio: principi fondamentali della funzione Last

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/last.htm)

#### 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 che viene caricato in una tabella dati chiamata `Example`.

* I seguenti campi nella tabella dati:

  * `Year`

  * `Quarter`

  * `Sales`

Script di caricamento

```
Example:
Load * inline [
Year, Quarter, Sales
2023, Q1, 5000
2023, Q2, 4000
2023, Q3, 6000
2023, Q4, 7000
2024, Q1, 4500
2024, Q2, 3250
2024, Q3, 6500
2024, Q4, 7250
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella pivot e aggiungere questo campo come dimensione di riga:

* `Year`

Aggiungere questo campo come dimensione di colonna:

* `Quarter`

Creare le seguenti misure:

* `=Sum(Sales)`, per calcolare la somma delle vendite.

* `=Last(Sum(Sales))`, per calcolare la somma delle vendite dell'ultima colonna per il segmento della riga corrente.

Tabella dei risultati

| Anno | Q1 | Q2 | Q3 | Q4 |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Sum(Sales) | Last(Sum(Sales)) | Sum(Sales) | Last(Sum(Sales)) | Sum(Sales) | Last(Sum(Sales)) | Sum(Sales) | Last(Sum(Sales)) |  |
| 2023 | 5000 | 7000 | 4000 | 7000 | 6000 | 7000 | 7000 | 7000 |
| 2024 | 4500 | 7250 | 3250 | 7250 | 6500 | 7250 | 7250 | 7250 |

Osservando i risultati, si può notare che la funzione `Last` restituisce la somma del valore delle vendite per l'ultima colonna di ogni segmento di riga per ogni trimestre. Ad esempio, in `Q1` il valore `Sum(Sales)` per quel periodo è `5000`. Il valore di `Last(Sum(Sales)` per `Q1` è `7000`, che è il valore di `Sum(Sales)` in `Q4`, il valore dell'ultima colonna della riga corrente, `2023`.

## Esempio: scenario per la funzione Last

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/last.htm)

#### Espressione del grafico

Panoramica

Un set di dati contiene i dati di vendita per diversi prodotti in un periodo di tre mesi. L'azienda vuole presentare le vendite totali per l'anno in corso e la crescita delle vendite rispetto agli ultimi (o i più recenti) dati di vendita per questo periodo.

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 che viene caricato in una tabella dati chiamata `Example`.

* I seguenti campi nella tabella dati:

  * `Date`

  * `Product`

  * `Sales`

Script di caricamento

```
Example:
Load * inline [
Date, Product, Sales
2024-01-01, Apple, 100
2024-01-01, Banana, 150
2024-01-01, Carrot, 120
2024-02-01, Carrot, 80
2024-02-01, Banana, 200
2024-02-01, Apple, 110
2024-03-01, Carrot, 160
2024-03-01, Banana, 300
2024-03-01, Apple, 150
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella pivot e aggiungere questo campo come dimensione di riga:

* `Product`

Aggiungere questo campo come dimensione di colonna:

* `Date`

Creare le seguenti misure:

* `=Sum(Sales)`, per calcolare le vendite annuali.

* `=(Last(Sum(Sales)) - Sum(Sales)) / Sum(Sales)`, per calcolare la crescita delle vendite dal periodo corrente all'ultimo periodo. Per mostrare questo valore come una percentuale, sotto la voce Formattazione numero, selezionare Numero &gt; Formattazione semplice &gt; 12,34%.

Tabella dei risultati

| Prodotto | 2024-01-01 | 2024-02-01 | 2024-03-01 |  |  |  |
| --- | --- | --- | --- | --- | --- | --- |
| Sum(Sales) | (Last(Sum(Sales)) - Sum(Sales)) / Sum(Sales) | Sum(Sales) | (Last(Sum(Sales)) - Sum(Sales)) / Sum(Sales) | Sum(Sales) | (Last(Sum(Sales)) - Sum(Sales)) / Sum(Sales) |  |
| Apple | 100 | 50.00% | 110 | 36.36% | 150 | 0.00% |
| Banana | 150 | 100.00% | 200 | 50.00% | 300 | 0.00% |
| Carrot | 120 | 33.33% | 80 | 100.00% | 160 | 0.00% |

In questo esempio, è possibile vedere l'andamento delle vendite dall'inizio del periodo di vendita all'ultimo periodo. Ad esempio, nel primo periodo `2024-01-01`, le vendite di `Apple` sono state `100` rispetto agli ultimi dati di vendita di `150` per il periodo `2024-03-01`. Questo indica un aumento del `50%`.

## Esempio: utilizzo della funzione Last per calcolare la varianza del budget

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/last.htm)

#### Espressione del grafico

Panoramica

Un set di dati contiene le cifre del budget per trimestre, per un periodo di due anni. L'azienda vuole presentare l'importo totale del budget per ogni trimestre e la varianza tra l'importo del budget per il periodo corrente rispetto al budget trimestrale medio dell'anno.

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 che viene caricato in una tabella dati chiamata `Example`.

* I seguenti campi nella tabella dati:

  * `Year`

  * `Quarter`

  * `Budget`

Script di caricamento

```
Example:
Load * inline [
Year, Quarter, Budget
2023, Q1, 1200
2023, Q2, 1100
2023, Q3, 1300
2023, Q4, 1400
2024, Q1, 1550
2024, Q2, 1230
2024, Q3, 1400
2024, Q4, 1600
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella pivot e aggiungere questo campo come dimensione di riga:

* `Year`

Aggiungere questo campo come dimensione di colonna:

* `Quarter`

Creare le seguenti misure:

* `=Sum(Budget)`, per calcolare il budget per il trimestre.

* `=Sum(Budget) - RangeAvg(Last(Budget, 1, 4))`, per calcolare la varianza tra l'importo di `Budget` per il periodo corrente rispetto al budget medio trimestrale per l'anno.

Tabella dei risultati

| Anno | Q1 | Q2 | Q3 | Q4 |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Sum(Budget) | Sum(Budget) - RangeAvg(Last(Budget, 1, 4)) | Sum(Budget) | Sum(Budget) - RangeAvg(Last(Budget, 1, 4)) | Sum(Budget) | Sum(Budget) - RangeAvg(Last(Budget, 1, 4)) | Sum(Budget) | Sum(Budget) - RangeAvg(Last(Budget, 1, 4)) |  |
| 2023 | 1200 | -50 | 1100 | -150 | 1300 | 50 | 1400 | 150 |
| 2024 | 1550 | 105 | 1230 | -215 | 1400 | -45 | 1600 | 155 |

Utilizzando la funzione `Last`, è possibile vedere come varia l'importo del budget per trimestre rispetto al budget medio trimestrale. Ad esempio, nel `2023`, il budget totale per l'anno è `5000` (`1200 + 1100 + 1300 + 1400`), quindi il budget medio trimestrale è `1250`. Poiché l'importo del budget per `Q1` è `1200`, ha un valore inferiore di `50` rispetto al budget medio trimestrale di `1250`, mentre la varianza del budget per `Q4` è superiore di `150` rispetto al budget medio trimestrale.