COLLAPSE
применяется:вычисляемый столбец
вычисляемой таблицы
измерение
визуального вычисления
Извлекает контекст на более высоком уровне по сравнению с текущим контекстом. Если выражение предоставлено, возвращает его значение в новом контексте, позволяя навигации в иерархиях и вычислениях на более высоком уровне.
Синтаксис
Синтаксисы, которые выполняют навигацию и вычисление.
COLLAPSE ( <expression>, <axis>[, N] )
COLLAPSE ( <expression>, <column>[, <column>] ... )
Синтаксисы, которые выполняют только навигацию.
COLLAPSE ( <axis>[, N] )
COLLAPSE ( <column>[, <column>] ... )
Параметры
Срок | Определение |
---|---|
expression |
Выражение, вычисляемого в новом контексте. |
axis |
Ссылка на оси. |
column |
Столбец в сетке данных. |
N |
(Необязательно) Количество уровней, которые нужно свернуть. Если опущено, значение по умолчанию равно 1. |
Возвращаемое значение
Для версий, выполняющих навигацию и вычисление, функция возвращает значение выражения в новом контексте после перехода на новый уровень. Только для версий, выполняющих навигацию, функция изменяет контекст оценки, перейдя на новый уровень.
Замечания
- Эту функцию можно использовать только в визуальных вычислениях.
- Версии функции, доступные только для навигации, можно использовать внутри функции CALCULATE.
- Уровни иерархии определяются всеми столбцами в каждой оси, на которую ссылается ссылка на оси.
- При указании столбцов оси определяются путем включения оси каждого столбца при первом обнаружении.
- При указании N функция перемещается вверх по иерархии N уровней с текущего или самого верхнего уровня.
- Если задано несколько столбцов, функция перемещается вверх по иерархии, пока она не достигнет первого уровня, на котором отсутствует ни один из указанных столбцов.
- Навигация начинается с текущей ячейки в матрице данных, возрастая по иерархии. Если указанный столбец находится на уровне ниже текущей ячейки, он будет игнорироваться.
Пример
Учитывая таблицу, которая суммирует общий объем продаж иерархии с уровнями общего объема, года, квартала и месяца, следующие DAX вычисления получают значение [SalesAmount] на родительском уровне, уровне бабушки и дедушки и года или самостоятельного уровня соответственно.
ParentValue = COLLAPSE([SalesAmount], ROWS)
GrandParentValue = COLLAPSE([SalesAmount], ROWS, 2)
QuarterOrSelfValue = COLLAPSE([SalesAmount], [Month])
На снимка экрана ниже показана матрица с тремя визуальными вычислениями.