Many Essbase functions identify a member in the
database by its position in the database outline. The outline structure represents
a hierarchical tree; every dimension represents a subsection of the database
tree. Generations and levels provide position references for all database
members within the tree. Position references are required because many applications
must be able to determine the location of members within the database structure.
The terms “generation” and “level” denote the distance from either the
“root” or the “leaves” of the dimension. Thus, you can determine the location
of any member within a database tree. You can also specify relationships between
groups of related members.
Generations specify the distance of members from the root of their dimension.
All members in a database that are the same number of branches from their
root have the same generation number. The dimension is generation 1, its children
are generation 2, and so on.
Levels measure the number of branches between a member and the lowest
member below it, that is, the number of branches between a member and the
“leaf” of its hierarchy within the database structure. Level 0 specifies the
bottom-most members of a dimension and thus provides ready access to the raw
data stored in a database. Leaf members are level 0, then their parents are
level 1, and so on up the hierarchy.
You might note that when all sibling members have the same generation
number but not necessarily the same level number.
For example, the members in this hierarchy:
Dim1 m11 m111 m112 m12 m121 m122 m13
have the following generation and level numbers:
Dim1 Gen 1, Level 2 m11 Gen 2, Level 1 m111 Gen 3, Level 0 m112 Gen 3, Level 0 m12 Gen 2, Level 1 m121 Gen 3, Level 0 m122 Gen 3, Level 0 m13 Gen 2, Level 0