RELATED

Возвращает связанное значение из другой таблицы.

Синтаксис

RELATED(<column>)  

Параметры

Термин Определение
столбец Столбец, содержащий значения, которые требуется извлечь.

Возвращаемое значение

Одно значение, связанное с текущей строкой.

Замечания

  • Функция RELATED требует, чтобы связь существовала между текущей таблицей и таблицей со связанными сведениями. Укажите столбец, содержащий нужные данные, и функция следует существующей связи "многие ко одному", чтобы получить значение из указанного столбца в связанной таблице. Если связь не существует, необходимо создать связь.

  • При выполнении подстановки функция RELATED проверяет все значения в указанной таблице независимо от примененных фильтров.

  • Для функции RELATED требуется контекст строки; поэтому его можно использовать только в вычисляемом выражении столбца, где текущий контекст строки является однозначной или вложенной функцией в выражении, использующим функцию сканирования таблиц. Функция сканирования таблиц, например SUMX, получает значение текущего значения строки, а затем сканирует другую таблицу для экземпляров этого значения.

  • Функцию RELATED нельзя использовать для получения столбца в ограниченной связи.

Пример

В следующем примере создается мера , не США интернет-продажи, чтобы создать отчет о продажах, который исключает продажи в США. Чтобы создать меру, необходимо отфильтровать таблицу InternetSales_USD, чтобы исключить все продажи, принадлежащие США в таблице SalesTerritory. США, как страна, отображается 5 раз в таблице SalesTerritory; один раз для каждого из следующих регионов: северо-запад, северо-восток, центральная, юго-западная и юго-восточная часть.

Первый подход к фильтрации интернет-продаж, чтобы создать меру, может быть добавлено выражение фильтра, как показано ниже:

FILTER('InternetSales_USD'
, 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTerritoryKey]<>2 && 'InternetSales_USD'[SalesTerritoryKey]<>3 && 'InternetSales_USD'[SalesTerritoryKey]<>4 && 'InternetSales_USD'[SalesTerritoryKey]<>5)

Однако этот подход является контринтуитивным, склонным к вводу ошибок, и может не работать, если какой-либо из существующих регионов разделен в будущем.

Лучше всего использовать существующие отношения между InternetSales_USD и SalesTerritory и явно утверждать, что страна должна отличаться от США. Для этого создайте выражение фильтра, как показано ниже:

FILTER( 'InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")

Это выражение использует функцию RELATED для поиска значения страны в таблице SalesTerritory, начиная со значения ключевого столбца SalesTerritoryKey в таблице InternetSales_USD. Результат подстановки используется функцией фильтра, чтобы определить, фильтруется ли строка InternetSales_USD.

Примечание.

Если пример не работает, может потребоваться создать связь между таблицами.

= SUMX(FILTER( 'InternetSales_USD'  
            ,  RELATED('SalesTerritory'[SalesTerritoryCountry])  
               <>"United States"  
             )  
     ,'InternetSales_USD'[SalesAmount_USD])  

В следующей таблице показаны только итоги для каждого региона, чтобы доказать, что выражение фильтра в измерении, отличном от США интернет-продаж, работает должным образом.

Row Labels Internet Sales Non USA Internet Sales
Австралия $499,021,84 $499,021,84
Канада $1,343,109.10 $1,343,109.10
Франция $2,490,944,57 $2,490,944,57
Германия $2775,195,60 $2775,195,60
Соединенное Королевство $5,057,076,55 $5,057,076,55
Соединенные Штаты $9,389,479,79
Общий итог $26,054,827,45 $16,665,347,67

Ниже показано, что можно получить, если вы использовали эту меру в визуальном элементе таблицы отчетов:

Row Labels Accessories Bikes Clothing Grand Total
2005 $1,526,481,95 $1,526,481,95
2006 $354,744.04 $354,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
Общий итог $384,639,633 $16,107,890,23 $ 172,817.81 $16,665,347,67

RELATEDTABLE
Функции фильтрации