RELATED
aplica-se a:coluna calculadatabela calculadaMeasurecálculo visual
Retorna um relatedvalue de outra tabela.
Sintaxe
RELATED(<column>)
Parâmetros
Termo | Definição |
---|---|
column |
A coluna que contains o values que você deseja recuperar. |
Retornar value
Um único value que é related à linha atual.
Comentários
A função RELATED requer que exista uma relação entre a tabela atual and tabela com informações de related. Especifique a coluna que contains os dados desejados, and a função segue uma relação muitos para um existente para buscar o value da coluna especificada na tabela related. If uma relação not existe, você deve criar uma relação.
Quando a função RELATED executa uma pesquisa, ela examina allvalues na tabela especificada, independentemente de qualquer filters que possa ter sido aplicada.
A função RELATED precisa de um contexto de linha; portanto, ele só pode ser usado na expressão de coluna calculada, em que o contexto de linha atual é inequívoco, or como uma função aninhada em uma expressão que usa uma função de verificação de tabela. Uma função de verificação de tabela, como SUMX, obtém o value da linha atual valueand verifica outra tabela em busca de instâncias desse value.
A função RELATED não pode ser usada para buscar uma coluna em uma relação limitada.
Exemplo
No exemplo a seguir, o measure Vendas pela Internet não usa é criado para produzir um relatório de vendas que exclui as vendas nos Estados Unidos. Para criar o measure, a tabela InternetSales_USD deve ser filtrada para excluir all vendas que pertencem aos Estados Unidos na tabela SalesTerritory. Os Estados Unidos, como país, aparecem cinco vezes na tabela SalesTerritory; uma vez para cada uma das seguintes regiões: Noroeste, Nordeste, Central, Sudoeste and Sudeste.
A abordagem first para filter vendas pela Internet, a fim de criar o measure, pode ser adicionar uma expressão filter como a seguinte:
FILTER('InternetSales_USD'
, 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTerritoryKey]<>2 && 'InternetSales_USD'[SalesTerritoryKey]<>3 && 'InternetSales_USD'[SalesTerritoryKey]<>4 && 'InternetSales_USD'[SalesTerritoryKey]<>5)
No entanto, essa abordagem é contraintuitiva, propensa a erros de digitação, and pode not trabalho if qualquer uma das regiões existentes seja dividida no futuro.
Uma abordagem melhor seria usar a relação existente entre InternetSales_USD and SalesTerritory and explicitamente afirmar que o país deve ser diferente dos Estados Unidos. Para fazer isso, crie uma expressão filter como a seguinte:
FILTER( 'InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
Essa expressão usa a função RELATED para pesquisar o país value na tabela SalesTerritory, começando com o value da coluna chave, SalesTerritoryKey, na tabela InternetSales_USD. O resultado da pesquisa é usado pela função filter para determinar if a linha InternetSales_USD é filtrada ornot.
Observação
If o exemplo not funcionar, talvez seja necessário criar uma relação entre as tabelas.
= SUMX(FILTER( 'InternetSales_USD'
, RELATED('SalesTerritory'[SalesTerritoryCountry])
<>"United States"
)
,'InternetSales_USD'[SalesAmount_USD])
A tabela a seguir mostra apenas os totais de cada região, para provar que a expressão filter no measure, Vendas na Internet que não são dos EUA, funciona conforme o esperado.
Row Labels | Internet Sales | Non USA Internet Sales |
---|---|---|
Austrália | US$ 4.999.021,84 | US$ 4.999.021,84 |
Canadá | US$ 1.343.109,10 | US$ 1.343.109,10 |
França | US$ 2.490.944,57 | US$ 2.490.944,57 |
Alemanha | US$ 2.775.195,60 | US$ 2.775.195,60 |
Reino Unido | US$ 5.057.076,55 | US$ 5.057.076,55 |
Estados Unidos | US$ 9.389.479,79 | |
Grande Total | US$ 26.054.827,45 | US$ 16.665.347,67 |
O seguinte mostra o que você pode obter if usou esse measure em um visual de tabela de relatório:
Row Labels | Accessories | Bikes | Clothing | Grand Total |
---|---|---|---|---|
2005 | US$ 1.526.481,95 | US$ 1.526.481,95 | ||
2006 | US$ 3.554.744,04 | US$ 3.554.744,04 | ||
2007 | US$ 156.480,18 | US$ 5.640.106,05 | US$ 70.142,77 | US$ 5.866.729,00 |
2008 | US$ 228.159,45 | US$ 5.386.558,19 | US$ 102.675,04 | US$ 5.717.392,68 |
Grande Total | US$ 384.639,63 | US$ 16.107.890,23 | US$ 172.817,81 | US$ 16.665.347,67 |