Использование кортежных выражений
Кортеж включает по одному элементу из каждого измерения, содержащегося в кубе. Поэтому любой кортеж однозначно определяет одну единственную ячейку в пределах этого куба.
![]() |
---|
Любой кортеж, который делает ссылку на один или более недопустимых элементов, считается пустым кортежем. |
Полное выражение идентификатора кортежа состоит из одного или более явно заданных элементов, заключенных в скобки:
(Member_expression [ ,Member_expression ... ] )
Кортеж может иметь полную спецификацию, содержать неявные элементы или единственный элемент.
Кортежи и неявные элементы
Кортеж, явным образом указывающий по одному элементу из каждого измерения, содержащегося в кубе, называется кортежем с полной спецификацией. Однако кортеж не обязательно должен быть полностью специфицированным.
Любое измерение без явной ссылки на него в пределах одного кортежа считается неявной ссылкой. Элемент измерения с неявной ссылкой зависит от структуры этого измерения и связей атрибутов, определенных внутри него. Если есть явная ссылка на иерархию в том же измерении, в котором находится иерархия с неявной ссылкой, и определена прямая или косвенная связь между иерархиями с явной и неявной ссылками, кортеж ведет себя так, как если бы он содержал элемент иерархии с неявной ссылкой, существующий вместе с элементом иерархии с явной ссылкой. Например, если куб содержит измерение «Заказчик» с атрибутами «Город» и «Страна» и между этими двумя атрибутами определена такая связь, что для «Города» существует одна «Страна», а «Страна» может содержать много «Городов», явное включение города «Лондон» в кортеж создает неявную ссылку на страну «Великобритания». Но если связи атрибутов не определены, если связь существует в обратном направлении (например, «Город» имеет связь со «Страной», но невозможно определить город, в котором проживает человек, зная лишь страну проживания) или если не определены прямые связи между двумя атрибутами (определена связь между «Заказчиком» и «Городом» и «Заказчиком» и «Страной», но нет связи между «Городом» и «Страной»), действуют следующие правила.
Если у иерархии с неявной ссылкой есть элемент по умолчанию, этот элемент добавляется к кортежу.
Если у иерархии с неявной ссылкой нет элемента по умолчанию, используется элемент (All) иерархии по умолчанию.
Если у иерархии с неявной ссылкой нет элемента по умолчанию, используется первый элемент самого верхнего уровня иерархии.
Кортежи с одним элементом
Если кортежное выражение имеет один-единственный элемент, то многомерное выражение преобразует этот элемент в кортеж из одного элемента для вычисления этого выражения. Другими словами, применение выражения элемента [Measures].[TestMeasure] вместо кортежного выражения функционально эквивалентно кортежному выражению ( [Measures].[TestMeasure] ).
См. также
Справочник
Справочник по функциям многомерных выражений (многомерные выражения)