Guida per l'utente di Spotfire® Web Client

Dettagli del linguaggio delle espressioni

Imparando il funzionamento del linguaggio delle espressioni, la creazione di espressioni valide sarà più semplice. In questa sezione cerca di illustrare alcune funzionalità di base del linguaggio.

Se il nome di una colonna contiene caratteri diversi da lettere, cifre o _ (caratteri di sottolineatura), è necessario racchiuderle tra i caratteri "[" e "]" (parentesi quadre). Le parentesi quadre sono necessarie anche quando il nome della colonna corrisponde al nome di una funzione o quando il nome di una colonna inizia con una cifra. Ad esempio:
[Column 1]
[Sum]
Se un'espressione viene inserita fra i simboli <> viene considerata come un'espressione di categoria. Ad esempio:
<[Colonna categoria 1]>
Di norma, più colonne sono separate da virgola. Ad esempio:
[Column1],[Column2]
È possibile utilizzare la parola chiave AS per specificare il nuovo nome di un'espressione e nascondere l'espressione sottostante. Ad esempio:
[Column1]/([Column1]+[Column2])AS Quota

Quando l'espressione dell'asse contiene delle virgole, non è possibile rinominare l'intero asse, ma è possibile definire un nome per ciascuna parte dell'espressione:

[Column1] AS [My first column], [Column2] AS [My second column]
Le costanti possono sempre essere utilizzate come argomento, anche se la descrizione della funzione dice che l'argomento deve essere una colonna.
39+12*3
-(1-2)
Se si lavora con visualizzazioni basate su più tabelle dati, le espressioni faranno riferimento alla tabella dati principale per impostazione predefinita. Per fare riferimento a una colonna in un'altra tabella dati, è necessario utilizzare il nome completo: [Nome tabella dati].[Nome colonna]. Ad esempio:
Sum([Data Table 2].[Column1])

Per le descrizioni complete degli operatori e delle funzioni disponibili, consultare anche Operatori e Funzioni.

Commenti nelle espressioni

Se si creano espressioni più complesse che richiedono una spiegazione, è possibile aggiungere commenti alle espressioni. Utilizzando i simboli '//', tutto il testo riportato dopo di essi verrà considerato un commento.

Ad esempio:

Avg([Sales]) OVER Intersect([Cat], AllPrevious([Year])) //Mostra le vendite medie per categoria per tutti gli anni, fino all'anno in corso.
[Sales]/1000 //La cifra delle vendite è stata divisa per mille per mostrare i valori in kkr invece di SEK

È importante notare che quando si aggiungono commenti a un'espressione su un asse di visualizzazione, è preferibile continuare a utilizzare la finestra di dialogo Espressione personalizzata per tutte le modifiche successive. Questo perché le operazioni di trascinamento delle operazioni influenzano e ridispongono le espressioni in maniera troppo invasiva per riuscire anche a conservare i commenti.

Escape di caratteri speciali

Dato che alcuni caratteri hanno un significato speciale nel linguaggio delle espressioni Spotfire, se si desidera utilizzarli ad altro scopo, ad esempio per includerli in nomi colonna, è necessario eseguire alcune operazioni.

Un carattere di escape è un carattere speciale utilizzato per informare il linguaggio delle espressioni che il carattere successivo in una sequenza deve essere letto come carattere standard e non come elemento speciale.

Se il nome di una colonna contiene parentesi quadre, è necessario aggiungere il carattere di escape. L'escape delle parentesi si ottiene aggiungendo ulteriori parentesi prima e dopo la parentesi: "[" e "]]". Ad esempio, se il nome della colonna è [Name], in un'espressione sarà riscritto come [[Name]]]. Quando si utilizza il pulsante Inserisci colonna nella finestra di dialogo Aggiungi colonna calcolata (solo client installato) per aggiungere colonne, si otterrà automaticamente l'escape corretto del nome della colonna.

Distinzione tra maiuscole e minuscole

  • Variabili, funzioni e parole chiave non fanno distinzione tra maiuscole e minuscole: SUM(C1) = Sum(C1) = sum(C1)
  • I riferimenti ai nomi di colonna fanno distinzione tra maiuscole e minuscole.
  • I nomi delle chiamate ai metodi non fanno distinzione tra maiuscole e minuscole. È possibile utilizzare tutti i metodi definiti nel framework del componente aggiuntivo. Vedere Operatori e Funzioni per informazioni sui diversi metodi supportati.

Risultati dell'espressione

Un'espressione descrive come deve essere calcolata una nuova colonna. La colonna appena creata avrà lo stesso numero di righe delle altre colonne nella tabella dati. In caso di operazioni su valori null, verrà restituito null. Questo significa che se si calcola una nuova colonna come [Colonna A]*2 e su alcune righe della colonna A sono presenti valori vuoti, anche la nuova colonna avrà valori vuoti su quelle righe.

Espressioni di categoria, NEST e CROSS

Nelle espressioni personalizzate, le colonne di categoria e gerarchiche e le espressioni possono essere scritte tra i simboli di minore e maggiore (). Se all'interno dell'espressione sono disponibili più categorie, occorre specificare anche le combinazioni di categorie da mostrare. L'operazione viene eseguita utilizzando le parole chiave NEST (che mostra tutte le combinazioni effettive di valori nei dati) o CROSS (che mostra tutte le combinazioni possibili di valori, incluse le combinazioni che attualmente non contengono dati). Tutte le colonne nell'espressione devono essere separate da "nest" o "cross" invece che da una virgola e le due opzioni di combinazione non possono essere combinate.
<[Colonna categoria 1] nest [Colonna categoria 2]>

Ad esempio, se si dispone di una tabella dati contenente i dati sulle vendite per ogni mese in un periodo di due anni, ma per il 2020 mancano i dati relativi a febbraio, le diverse opzioni forniranno i seguenti risultati:

Nest



In assenza di dati per febbraio 2020, mancherà una barra (e un segnaposto per la barra). Questa visualizzazione viene impostata utilizzando l'opzione Nest sull'asse delle categorie e corrisponde all'espressione personalizzata:
<[Year] NEST [Month]>

Cross



Se viene selezionata l'opzione CROSS, possono essere visualizzate tutte le possibili combinazioni di categorie. Questo significa che ci sarà un segnaposto per la colonna febbraio per il 2020, anche se non sono presenti dati per febbraio. L'espressione personalizzata corrispondente sarebbe:
<CROSS [Year] CROSS [Month]>
(il primo CROSS è facoltativo).
Nota: Anche se viene selezionata l'opzione CROSS, è possibile che le categorie vuote non appaiano nella visualizzazione, a seconda della modalità dell'asse. Nel client installato è possibile fare clic con il pulsante destro del mouse sull'asse e selezionare Categorie per visualizzare o modificare le impostazioni. Se è selezionata l'opzione Mostra valori filtrati, le categorie prive di valori verranno nascoste dalla visualizzazione. È necessario utilizzare Mostra intervallo filtrato o Mostra tutti i valori per visualizzare la categoria vuota in questo esempio.
Suggerimento: Nel client installato, è anche possibile specificare l'impostazione per NEST/CROSS, nonché le impostazioni per la modalità dell'asse e come valutare l'espressione dell'asse, dalla finestra di dialogo Proprietà visualizzazione > Asse delle categorie > Impostazioni avanzate.

Convalida dei valori

I valori vuoti vengono generati ogni volta che manca un valore di una colonna dalla tabella dati, quando un calcolo include un valore non valido o se si scrive esplicitamente null nell'espressione. I risultati corrispondenti a null sono visualizzati come (Vuoto) o lasciati semplicemente vuoti. I valori null possono essere sostituiti utilizzando la funzione SN().

In caso di aggregazione all'interno di una colonna, il valore non valido sarà ignorato, mentre i calcoli a livello di riga tra colonne produrranno valori non validi ogni volta che una delle colonne interessate contiene un valore non valido.