@IDESCENDANTS

The @IDESCENDANTS calculation function for Essbase returns a member and its descendants, optionally down to a certain generation or level.

This function returns the specified member and either all descendants of the member or all descendants down to the specified generation or level.

Essbase sorts the generated list of members—starting with the specified member, followed by 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 @IDESCENDANTS(100), Essbase returns 100, 100-10, 100-20, 100-30 (in that order). When using this function with certain forecasting and statistical functions, you must consider order.

You can use this function as a parameter of another function, where the function requires a list of members.

Syntax

@IDESCENDANTS (mbrName[, genLevNum | genLevName])

Parameters

mbrName

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

genLevNum

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

genLevName

Optional. The level or generation name up to which to select members.

Example

All examples are from the Sample.Basic database.

@IDESCENDANTS(East)

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

@IDESCENDANTS(Profit)

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

@IDESCENDANTS(Market,2)

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

@IDESCENDANTS(South,-1)

Returns South.