NumDescendant

現在のディメンション・メンバーまたは指定したメンバーの子孫の数を取得します。この関数は、次のタイプのルールで使用できます:

  • 計算

  • 換算

  • 連結

  • 配賦

    注:

    メンバーがツリー階層で親の下位レベルにある場合、そのメンバーは子孫です。子孫は、ツリーの同じ分岐内にあります。

たとえば、次の階層では、FosterCityとSunnyvaleはCaliforniaおよびUnitedStatesの子孫です。


階層の子孫

構文

HS.<Object>.NumDescendant("Element")
HS.Node.NumDescendant("S#Scenario.Y#Year.P#Period.E#Entity")
HS.<Object>.NumDescendant("")
HS.Custom(Dimension).NumDescendant(Member)

注:

関数を現在のメンバーに適用するには、空白の文字列""を使用します。

表11-39 NumDescendant関数の構文

パラメータ 説明

<Object>

次のオブジェクトのキーワードのいずれか:

  • Account

  • Custom1...4

  • Custom (カスタム・ディメンション・ラベル)

  • Entity

  • Node

  • Parent

Element

次のいずれかのディメンションの有効なメンバーの名前。選択したオブジェクトによって異なります。

  • Account

  • Custom1...4

  • カスタム

  • Entity

  • Node

  • Parent

AccountオブジェクトとCustomオブジェクトを使用する場合は、メンバーを指定する必要があります。空白の文字列は使用できません。

ディメンション全体の子孫の数を取得するには、次の例のように、ALLを引用符で囲って指定します。

iAcctBase = HS.Account.NumDescendant("ALL")

Scenario

シナリオ・ディメンションの有効なメンバーの名前。

Year

有効な年。

Period

有効な期間。

Entity

エンティティ・ディメンションの有効なメンバーの名前。

戻り値

指定したメンバーの子孫の数。NODEの場合は、指定したメンバーの下のアクティブな子孫の数を取得します。

注:

1つの分岐に子孫エンティティが2回表示される場合は、2個あるとみなされます。

この例では、エンティティFranceに子孫がないと、If...Then文とEnd If文間にあるすべての文が実行されます。

If HS.Entity.NumDescendant("France") = 0 Then
  ...
End If
If HS.Custom("Product").NumDescendant("P3000-Phones") = 0 Then
...
End If