Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Belirli bir seviye veya mesafedeki bir üyenin soyundan gelenler setini döndürür, isteğe bağlı olarak diğer seviyelerdeki soyundan gelenleri dahil eder veya hariç tutar.
Syntax
Member expression syntax using a level expression
Descendants(Member_Expression [ , Level_Expression [ ,Desc_Flag ] ] )
Member expression syntax using a numeric expression
Descendants(Member_Expression [ , Distance [ ,Desc_Flag ] ] )
Set expression syntax using a level expression
Descendants(Set_Expression [ , Level_Expression [ ,Desc_Flag ] ] )
Member expression syntax using a numeric expression
Descendants(Set_Expression [ , Distance [ ,Desc_Flag ] ] )
Arguments
Member_Expression
Bir üye döndüren geçerli bir Çok Boyutlu İfadeler (MDX) ifadesi.
Set_Expression
Bir küme 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.
Desc_Flag
Olası soy kümelerini ayırt eden bir açıklama bayrağı belirten geçerli bir dizim ifadesi.
Remarks
Bir seviye belirtilmişse, Descendants fonksiyonu belirtilen üyenin veya belirlenen kümenin üyelerinin törenlerini içeren bir küme döndürür; bu küme belirli bir seviyede, Desc_Flag'de belirtilen bir bayrakla isteğe bağlı olarak değiştirilir.
Eğer Distance belirtilmişse, Descendants fonksiyonu belirtilen üyenin veya belirtilen kümenin hiyerarşisinde belirtilen seviye sayısı uzakta olan üyelerini içeren bir küme döndürür; bu küme isteğe bağlı olarak Desc_Flag'de belirtilen bir bayrakla değiştirilir. Genellikle, bu fonksiyonu Mesafe argümanıyla birlikte kullanarak dağınık hiyerarşileri ele alırsınız. Belirtilen mesafe sıfır (0) ise, fonksiyon yalnızca belirtilen üye veya kümeden oluşan bir küme döndürür.
Bir küme ifadesi belirtildiğinde, Descendants fonksiyonu kümenin her üyesi için ayrı ayrı çözülür ve küme tekrar oluşturulur. Başka bir deyişle, Descendants fonksiyonu için kullanılan sözdizimi işlevsel olarak MDX Generate fonksiyonuna eşdeğerdir.
Eğer herhangi bir seviye veya mesafe belirtilmemişse, fonksiyonun kullandığı seviyenin varsayılan değeri, Seviye fonksiyonu (<<Member>>. Seviye) belirtilen üye için (bir üye belirtilmişse) veya belirtilen kümenin her üyesi için Seviye fonksiyonunu çağırarak (bir küme belirtilmişse). Seviye ifadesi, mesafe veya bayrak belirtilmemişse, fonksiyon aşağıdaki sözdizimi kullanılmışmış gibi çalışır:
Descendants
(
Member_Expression ,
Member_Expression.Level ,
SELF_BEFORE_AFTER
)
Bir seviye belirtilmişse ve açıklama bayrağı belirtilmemişse, fonksiyon aşağıdaki sözdizimi kullanılmışmış gibi çalışır.
Descendants
(
Member_Expression ,
Level_Expression,
SELF
)
Açıklama bayrağının değerini değiştirerek, belirtilen seviye veya mesafedeki soy çocukları, belirtilen seviye veya mesafeden önceki veya sonrakı çocukları (yaprak düğümüne kadar) ve yaprak çocuklarını belirtilen seviye veya mesafeye bakılmadan dahil edebilir veya hariç tutabilirsiniz. Aşağıdaki tablo, Desc_Flag argümanında izin verilen bayrakları açıklar.
| Flag | Description |
|---|---|
| SELF | Yalnızca belirlenen seviyeden veya mesafedeki soyundan gelen üyeleri geri getirir. Fonksiyon, belirtilen seviye belirtilen üyenin seviyesi ise belirtilen üyeyi içerir. |
| AFTER | Belirlenen seviyeye veya mesafeye bağlı tüm seviyelerden soyundan gelen üyeleri geri getirir. |
| ÖNCE | Belirtilen üye ile seviye arasında veya belirlenen mesafede tüm seviyelerden soy üyeleri döndürür. Belirtilen üyeyi içerir, ancak belirtilen seviye veya mesafeden üyeleri kapsamaz. |
| BEFORE_AND_AFTER | Tüm seviyelerden belirlenen üyenin seviyesine bağlı soydan gelen üyeleri geri getirir. Belirtilen üyeyi içerir, ancak belirtilen seviyeden veya mesafedeki üyeleri içermez. |
| SELF_AND_AFTER | Belirlenen seviyeden veya mesafeden gelen soy üyeleri ve belirtilen seviyeye bağlı olan tüm seviyeleri veya mesafede döndürür. |
| SELF_AND_BEFORE | Belirlenen seviyeden veya mesafeden ve belirtilen üye ile seviye arasındaki ya da belirli mesafedeki tüm seviyelerden, belirtilen üye dahil olmak üzere soy üyeleri döndürür. |
| SELF_BEFORE_AFTER | Tüm seviyelerden belirlenen üyenin seviyesine bağlı soyundan gelen üyeleri geri getirir ve belirtilen üyeyi içerir. |
| YAPRAKLAR | Yaprak soyundan gelen üyeleri belirtilen üye ile seviye arasında veya belirlenen mesafede döndürür. |
Examples
Aşağıdaki örnek, belirtilen üye (Birleşik Devletler) ve belirtilen üye (Birleşik Devletler) ile belirlenen seviyeden önceki (Şehir) üyeler arasındaki üyeleri geri getirir. Örnek ise belirtilen üyenin kendisini (Birleşik Devletler) ve State-Province seviyesinin üyelerini (Şehir seviyesinden önceki seviye) döndürür. Bu örnek, bu fonksiyon için diğer argümanları kolayca test etmenizi sağlayan yorumlu argümanlar içerir.
SELECT Descendants
([Geography].[Geography].[Country].&[United States]
//, [Geography].[Geography].[Country]
, [Geography].[Geography].[City]
//, [Geography].[Geography].Levels (3)
//, SELF
//, AFTER
, BEFORE
// BEFORE_AND_AFTER
//, SELF_AND_AFTER
//, SELF_AND_BEFORE
//,SELF_BEFORE_AFTER
//,LEAVES
) ON 0
FROM [Adventure Works]
Aşağıdaki örnek, 2003 mali yılında her ayın günlerinde hesaplanan günlük ortalamasını Adventure Works küpünden geri getirmektedirMeasures.[Gross Profit Margin].
Descendants fonksiyonu, hiyerarşinin mevcut üyesinden [Date].[Fiscal] belirlenen bir dizi gün döndürür.
WITH MEMBER Measures.[Avg Gross Profit Margin] AS Avg
(
Descendants( [Date].[Fiscal].CurrentMember,
[Date].[Fiscal].[Date]
),
Measures.[Gross Profit Margin]
)
SELECT
Measures.[Avg Gross Profit Margin] ON COLUMNS,
[Date].[Fiscal].[Month].Members ON ROWS
FROM [Adventure Works]
WHERE ([Date].[Fiscal Year].&[2003])
Aşağıdaki örnek, Avustralya'daki her State-Province için bir seviye ifadesi kullanır ve her eyalet için Avustralya için toplam İnternet Satış Miktarının yüzdesini döndürür. Bu örnek, Atalar fonksiyonu tarafından döndürülen kümeden ilk (ve tek) tuple'ı çıkarmak için Öğe fonksiyonunu kullanır.
WITH MEMBER Measures.x AS
[Measures].[Internet Sales Amount] /
( [Measures].[Internet Sales Amount],
Ancestors
( [Customer].[Customer Geography].CurrentMember,
[Customer].[Customer Geography].[Country]
).Item (0)
), 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]