TREATAS

Применяет результат табличного выражения в качестве фильтров к столбцам несвязанной таблицы.

Синтаксис

TREATAS(table_expression, <column>[, <column>[, <column>[,…]]]} )  

Параметры

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

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

Таблица, содержащая все строки в столбцах, которые также находятся в table_expression.

Примечания

  • Указанное число столбцов должно соответствовать числу столбцов в табличном выражении; столбцы должны стоять в том же порядке.

  • Если значение, возвращаемое в табличном выражении, не существует в столбце, оно игнорируется. Например, TREATAS({"Red", "Green", "Yellow"}, DimProduct[Color]) задает фильтр для столбца DimProduct[Color] с тремя значениями: "Red", "Green" и "Yellow". Если "Yellow" не существует в DimProduct[Color], то действующие фильтры будут иметь значения "Red" и "Green".

  • Лучше всего использовать эту функцию, если между таблицами не существует связи. При наличии между таблицами множества связей попробуйте вместо этого использовать USERELATIONSHIP.

  • Эта функция не поддерживается для использования в режиме DirectQuery при использовании в вычисляемых столбцах или правилах безопасности на уровне строк (RLS).

Пример

В следующем примере модель содержит две несвязанные таблицы продуктов. Если пользователь применяет фильтр по "Bikes", "Seats", "Tires" к DimProduct1[ProductCategory], то для DimProduct2[ProductCategory] применяется тот же фильтр: "Bikes", "Seats", "Tires".

CALCULATE(
SUM(Sales[Amount]), 
TREATAS(VALUES(DimProduct1[ProductCategory]), DimProduct2[ProductCategory])
)

См. также:

INTERSECT
FILTER
USERELATIONSHIP