Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Функция, возвращающая предок заданного элемента на заданном уровне или заданном расстоянии от элемента.
Синтаксис
Level syntax
Ancestor(Member_Expression, Level_Expression)
Numeric syntax
Ancestor(Member_Expression, Distance)
Аргументы
Member_Expression
Допустимое многомерное выражение, возвращающее элемент.
Level_Expression
Допустимое многомерное выражение, возвращающее уровень.
Расстояние
Допустимое числовое выражение, указывающее расстояние от заданного элемента.
Замечания
При использовании функции Предка вы предоставляете функцию с выражением члена многомерных выражений, а затем предоставляет выражение многомерных выражений уровня, являющегося предком члена или числовым выражением, которое представляет число уровней выше этого элемента. С этой информацией функция "Предки" возвращает элемент предка на этом уровне.
Заметка
Чтобы вернуть набор, содержащий член-предка, вместо просто члена-предка, используйте функцию "Предки" (многомерные выражения).
Если задано выражение уровня, функция Предка возвращает предка указанного элемента на указанном уровне. Если заданный элемент не входит в ту же иерархию, что и заданный уровень, функция вернет ошибку.
Если задано расстояние, функция Предка возвращает предка указанного элемента, которое является числом шагов, указанных в иерархии, указанной выражением члена. Элемент может быть определен как элемент иерархии атрибута, пользовательской иерархии или при некоторых обстоятельствах иерархии типа «родители-потомки». Число 1 возвращает родительский объект элемента, а число 2 возвращает прародительский объект элемента (если такой существует). Число 0 вернет сам элемент.
Заметка
Используйте эту форму функции Предка для случаев, когда уровень родительского объекта неизвестен или не может быть назван.
Примеры
В следующем примере используется выражение уровня и возвращается Internet Sales Amount для каждой административно-территориальной единицы (State-Province) Австралии (Australia), возвращается также процентное соотношение относительно общего значения Internet Sales Amount в Австралии (Australia).
WITH MEMBER Measures.x AS [Measures].[Internet Sales Amount] /
(
[Measures].[Internet Sales Amount],
Ancestor
(
[Customer].[Customer Geography].CurrentMember,
[Customer].[Customer Geography].[Country]
)
), FORMAT_STRING = '0%'
SELECT {[Measures].[Internet Sales Amount], Measures.x} ON 0,
{
Descendants
(
[Customer].[Customer Geography].[Country].&[Australia],
[Customer].[Customer Geography].[State-Province], SELF
)
} ON 1
FROM [Adventure Works]
В следующем примере используется числовое выражение и возвращается сумма продаж в Интернете для каждой провинции штата в Австралии и ее процент от общего объема продаж в Интернете для всех стран или регионов.
WITH MEMBER Measures.x AS [Measures].[Internet Sales Amount] /
(
[Measures].[Internet Sales Amount],
Ancestor
([Customer].[Customer Geography].CurrentMember, 2)
), FORMAT_STRING = '0%'
SELECT {[Measures].[Internet Sales Amount], Measures.x} ON 0,
{
Descendants
(
[Customer].[Customer Geography].[Country].&[Australia],
[Customer].[Customer Geography].[State-Province], SELF
)
} ON 1
FROM [Adventure Works]
См. также
Справочник по функции многомерных выражений (многомерные выражения)