Informazioni sul contesto di riga

Completato

Ora che sono state create le colonne calcolate, è possibile apprendere come vengono valutate le formule.

La formula per una colonna calcolata viene valutata per ogni riga della tabella. Inoltre, viene valutata all'interno del contesto di riga, ovvero della riga corrente. Considerare la definizione della colonna calcolata Due Fiscal Year (Anno fiscale di scadenza):

Due Fiscal Year =
"FY"
    & YEAR('Due Date'[Due Date])
        + IF(
            MONTH('Due Date'[Due Date]) <= 6,
            1
        )

Quando la formula viene valutata per ogni riga, il 'Due Date'[Due Date] riferimento alla colonna restituisce il valore della colonna per quella riga. Si noterà che Microsoft Excel usa lo stesso concetto per l'uso di formule nelle tabelle di Excel.

Tuttavia, il contesto di riga non si estende oltre la tabella. Se la formula deve fare riferimento a colonne in altre tabelle, sono disponibili due opzioni:

  • Se le tabelle sono correlate, direttamente o indirettamente, è possibile usare la funzione DAX RELATED o RELATEDTABLE. La funzione RELATED recupera il valore su un lato della relazione, mentre la funzione RELATEDTABLE recupera i valori su molti lati. La funzione RELATEDTABLE restituisce un oggetto tabella.
  • Quando le tabelle non sono correlate, è possibile usare la funzione DAX LOOKUPVALUE.

In linea generale, provare a usare la funzione RELATED ogni volta che è possibile. Di solito è più efficace della funzione LOOKUPVALUE a causa delle modalità di archiviazione e di indicizzazione dei dati della relazione e della colonna.

A questo punto, aggiungere alla tabella Sales la definizione di colonna calcolata seguente:

Discount Amount =
(
    Sales[Order Quantity]
        * RELATED('Product'[List Price])
) - Sales[Sales Amount]

La definizione di colonna calcolata aggiunge la colonna Discount Amount alla tabella Sales. Power BI valuta la formula della colonna calcolata per ogni riga della tabella Sales. I valori per le colonne Quantità ordine e Importo vendite vengono recuperati all'interno del contesto di riga. Tuttavia, poiché la colonna List Price appartiene alla tabella Product, è necessario usare la funzione RELATED per recuperare il valore del prezzo di listino per il prodotto in vendita.

Il contesto di riga viene usato quando vengono valutate le formule delle colonne calcolate. Viene impiegato anche quando viene usata una classe di funzioni, note come funzioni dell'iteratore. Le funzioni dell'iteratore offrono la flessibilità necessaria per creare riepiloghi sofisticati. Le funzioni iteratore sono descritte in un modulo successivo.