Esempi dell’utilizzo di una variabile in un'espressione
In Qlik Sense, una variabile è un'entità denominata contenente un valore dati. Quando viene utilizzata in un'espressione, la variabile viene sostituita dal suo valore o dalla sua definizione.
Esempio:
La variabile x contiene la stringa di testo Sum(Sales).
In un grafico si definisce l'espressione $(x)/12. L’effetto è esattamente lo stesso dell'espressione grafica Sum(Sales)/12.
Comunque se, ad esempio, il valore della variabile x cambia in Sum(Budget), i dati del grafico vengono immediatamente ricalcolati con l'espressione interpretata come Sum(Budget)/12.
Come vengono interpretati i nomi
Si sconsiglia di denominare una variabile con lo stesso nome utilizzato per un campo o una funzione in Qlik Sense. Tuttavia, in caso affermativo, è necessario sapere come utilizzarli in un'espressione.
Esempio:
La stringa XXX rappresenta un campo, una variabile, una funzione o una misura. XXX verrà interpretato come uno di essi a seconda di come l'espressione viene creata.
Espressione | XXX viene interpretato come |
---|---|
XXX | misura, variabile o campo |
$(XXX) | variabile |
Count(XXX) | campo o variabile |
XXX() | function |
Quando si denomina un'entità, evitare di assegnare lo stesso nome a più campi, variabili o misure. Esiste un rigoroso ordine di precedenza per risolvere i conflitti tra entità con nomi identici. Questo ordine si riflette in qualsiasi oggetto o contesto in cui queste entità vengono utilizzate. L'ordine di precedenza è il seguente:
-
All'interno di un'aggregazione, un campo ha la precedenza su una variabile. Le etichette delle misure non sono rilevanti nelle aggregazioni e non hanno priorità.
-
Al di fuori di un'aggregazione, un'etichetta di misura ha la precedenza su una variabile, che a sua volta ha la precedenza su un nome di campo.
-
Inoltre, al di fuori di un'aggregazione, una misura può essere riutilizzata facendo riferimento alla sua etichetta, a meno che non si tratti di un'etichetta calcolata. In tale situazione, la misura diminuisce di significato per ridurre il rischio di autoreferenzialità e in questo caso il nome sarà sempre interpretato prima come etichetta di misura, poi come nome di campo e infine come nome di variabile.
Calcolo della variabile
Esistono diversi modi per utilizzare le variabili con i valori calcolati in Qlik Sense e il risultato dipende dal metodo di definizione e dal metodo di richiamo in un'espressione.
Questo esempio richiede che vengano caricati i seguenti dati nell’editor caricamento dati:
Si definiscono due variabili dalla relativa finestra di dialogo:
- Nome vSales Definizione'Sum(Sales)'
- Nome vSales2 Definizione'=Sum(Sales)'
Nella seconda variabile un segno di uguale verrà aggiunto prima dell'espressione. Ciò attiverà il calcolo della variabile prima che ne venga eseguita l'espansione e prima che l'espressione venga valutata.
Se si utilizza la variabile vSales senza modifiche, ad esempio in una misura, il risultato sarà la stringa Sum(Sales), vale a dire non verrà eseguito alcun calcolo.
Se si aggiunge un'espansione con simbolo del dollaro e si richiama $(vSales) nell'espressione, la variabile viene estesa e viene visualizzata la somma di Sales.
Infine, se si richiama $(vSales2), la variabile verrà calcolata prima di essere espansa. Ciò significa che il risultato visualizzato è la somma totale di Sales. In questo grafico, la differenza tra l'uso di =$(vSales) e =$(vSales2) come espressioni di misura restituisce i risultati:
Dim | $(vSales) | $(vSales2) |
---|---|---|
A | 350 | 1560 |
B | 470 | 1560 |
C | 740 | 1560 |
Come si può vedere, $(vSales) risulta nella somma parziale di un valore di dimensione, mentre $(vSales2) risulta nella somma totale.