Atalar (MDX)

Belirli bir üyenin atasını belirli bir seviyede veya üyeden belirli bir mesafede döndüren bir fonksiyon.

Syntax

  
Level syntax  
Ancestor(Member_Expression, Level_Expression)  
  
Numeric syntax  
Ancestor(Member_Expression, Distance)  

Arguments

Member_Expression
Bir üye döndüren geçerli bir Çok Boyutlu İfadeler (MDX) ifadesi.

Level_Expression
Geçerli bir Çok Boyutlu İfadeler (MDX) ifadesi, bir seviye döndürür.

Uzaklık
Belirtilen üyeden uzaklığı belirten geçerli bir sayısal ifade.

Remarks

Atalar fonksiyonu ile, fonksiyona bir MDX üye ifadesi ile verilir ve ardından ya üyenin atası olan bir seviyenin MDX ifadesini ya da o üyenin üzerindeki seviyeleri temsil eden sayısal bir ifadeyi sağlarsınız. Bu bilgiyle, Atalar fonksiyonu o seviyedeki ata üyesini geri getirir.

Note

Sadece ata üyesi yerine ata üyesini içeren bir küme döndürmek için Atalar (MDX) fonksiyonunu kullanın.

Bir seviye ifadesi belirtilmişse, Atalar fonksiyonu belirtilen seviyedeki atasını döndürür. Belirtilen üye belirtilen seviyeyle aynı hiyerarşi içinde değilse, fonksiyon hata döndürür.

Bir mesafe belirtilmişse, Atalar fonksiyonu belirtilen üyenin atasını döndürür; bu da üye ifadesi tarafından belirtilen hiyerarşide belirtilen adım sayısıdır. Bir üye, bir öznitelik hiyerarşisinin, kullanıcı tanımlı hiyerarşisinin veya bazı durumlarda ebeveyn-çocuk hiyerarşisinin bir üyesi olarak belirtilebilir. 1 sayısı bir üyenin ebeveynini, 2 sayısı ise bir üyenin büyükbabasını (varsa) döndürür. 0 sayısı ise üyenin kendisini döndürür.

Note

Ebeveynin seviyesinin bilinmediği veya adlandırılamadığı durumlarda bu Atalar fonksiyonu formunu kullanın.

Examples

Aşağıdaki örnek, seviye ifadesi kullanır ve Avustralya'daki her State-Province için İnternet Satış Miktarını ve Avustralya'daki toplam İnternet Satış Miktarının yüzde yüzdesini döndürür.

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]  

Aşağıdaki örnek, sayısal bir ifade kullanır ve Avustralya'daki her State-Province için İnternet Satış Miktarını ve tüm ülkeler/bölgeler için toplam İnternet Satış Miktarının yüzdesini döndürür.

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]