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