@DESCENDANTS

The @DESCENDANTS calculation function for Essbase returns a member's descendants.

This function returns all descendants of the specified member, or those down to the specified generation or level. This function excludes the specified member.

Syntax

@DESCENDANTS (mbrName [, genLevNum| genLevName])

Parameters

mbrName

Any valid single member name, or a function that returns a single member.

genLevNum

Optional. An integer value that defines the absolute generation or level number down to which to select the members. A positive integer defines a generation number. A value of 0 or a negative integer defines a level number.

genLevName

Optional. Level name or generation name down to which to select the members.

Notes

  • You can use this function as a parameter of another function, where that parameter is a list of members.

  • Essbase sorts the generated list of members starting with the nearest descendant of the member, followed by the next nearest descendant of the member, and so on. In the Sample.Basic database, if you specify @DESCENDANTS(100), Essbase returns 100-10, 100-20, 100-30 (in that order). This order is important to consider when you use this function with certain forecasting and statistical functions.

  • To include the specified member, use @IDESCENDANTS.

  • To include descendants of shared members, use @RDESCENDANTS and @IRDESCENDANTS.

Example

In the Sample Basic database:

@DESCENDANTS(East)

returns New York, Massachusetts, Florida, Connecticut, and New Hampshire (in that order).

@DESCENDANTS(Profit)

returns Margin, Sales, COGS, Total Expenses, Marketing, Payroll, and Misc (in that order).

@DESCENDANTS(Market,2)

returns East, West, South, and Central (in that order).

@DESCENDANTS(Diet,0)

returns 100-20, 200-20, and 300-30 (in that order).