RELATED
Si applica a:colonna calcolatatabella calcolataMeasurecalcolo visivo
Restituisce un relatedvalue da un'altra tabella.
Sintassi
RELATED(<column>)
Parametri
Termine | Definizione |
---|---|
column |
Colonna che contains il values da recuperare. |
Restituisce value
Singola valuerelated alla riga corrente.
Osservazioni:
La funzione RELATED richiede che esista una relazione tra la tabella corrente and la tabella con informazioni related. Specificare la colonna che contains i dati desiderati, and la funzione segue una relazione molti-a-uno esistente per recuperare il value dalla colonna specificata nella tabella related. If esiste una relazione not, è necessario creare una relazione.
Quando la funzione RELATED esegue una ricerca, esamina allvalues nella tabella specificata indipendentemente dalle filters che potrebbero essere state applicate.
La funzione RELATED richiede un contesto di riga; pertanto, può essere usato solo nell'espressione di colonna calcolata, in cui il contesto di riga corrente non è ambiguo, or come funzione nidificata in un'espressione che usa una funzione di analisi della tabella. Una funzione di analisi delle tabelle, ad esempio SUMX, ottiene il value della riga corrente valueand quindi analizza un'altra tabella per le istanze di tale value.
Impossibile utilizzare la funzione RELATED per recuperare una colonna in una relazione limitata .
Esempio
Nell'esempio seguente viene creato il measure Non USA Internet Sales per produrre un report di vendita che esclude le vendite negli Stati Uniti. Per creare il measure, è necessario filtrare la tabella InternetSales_USD per escludere all vendite appartenenti agli Stati Uniti nella tabella SalesTerritory. Gli Stati Uniti, come paese, appaiono 5 volte nella tabella SalesTerritory; una volta per ognuna delle aree seguenti: Nord-Ovest, Nord-Est, Centrale, Sud-Ovest, and Sud-est.
L'approccio first per filter Internet Sales, per creare l'measure, potrebbe essere aggiungere un'espressione filter simile alla seguente:
FILTER('InternetSales_USD'
, 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTerritoryKey]<>2 && 'InternetSales_USD'[SalesTerritoryKey]<>3 && 'InternetSales_USD'[SalesTerritoryKey]<>4 && 'InternetSales_USD'[SalesTerritoryKey]<>5)
Tuttavia, questo approccio è controintuitivo, soggetto a errori di digitazione, and potrebbe not lavoro if una delle aree esistenti è suddivisa in futuro.
Un approccio migliore consiste nell'usare la relazione esistente tra InternetSales_USD and SalesTerritory and dichiarare in modo esplicito che il paese deve essere diverso dagli Stati Uniti. A tale scopo, creare un'espressione filter simile alla seguente:
FILTER( 'InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
Questa espressione usa la funzione RELATED per cercare il paese value nella tabella SalesTerritory, a partire dalla value della colonna chiave SalesTerritoryKey nella tabella InternetSales_USD. Il risultato della ricerca viene utilizzato dalla funzione filter per determinare if la riga di InternetSales_USD viene filtrata ornot.
Nota
If l'esempio not funziona, potrebbe essere necessario creare una relazione tra le tabelle.
= SUMX(FILTER( 'InternetSales_USD'
, RELATED('SalesTerritory'[SalesTerritoryCountry])
<>"United States"
)
,'InternetSales_USD'[SalesAmount_USD])
La tabella seguente mostra solo i totali per ogni area, per dimostrare che l'espressione filter nella measure, Non USA Internet Sales, funziona come previsto.
Row Labels | Internet Sales | Non USA Internet Sales |
---|---|---|
Australia | $4,999,021.84 | $4,999,021.84 |
Canada | $1,343,109.10 | $1,343,109.10 |
Francia | $2,490,944.57 | $2,490,944.57 |
Germania | $2,775,195.60 | $2,775,195.60 |
Regno Unito | $5,057,076.55 | $5,057,076.55 |
Stati Uniti | $9,389,479.79 | |
Grand Total | $26,054,827.45 | $16,665,347.67 |
Di seguito viene illustrato ciò che è possibile ottenere if è stato usato questo measure in un oggetto visivo tabella del report:
Row Labels | Accessories | Bikes | Clothing | Grand Total |
---|---|---|---|---|
2005 | $1,526,481.95 | $1,526,481.95 | ||
2006 | $3,554,744.04 | $3,554,744.04 | ||
2007 | $156,480.18 | $5,640,106.05 | $70,142.77 | $5,866,729.00 |
2008 | $228,159.45 | $5,386,558.19 | $102,675.04 | $5,717,392.68 |
Grand Total | $384,639.63 | $16,107,890.23 | $172,817.81 | $16,665,347.67 |