Boolean Functions

A Boolean function returns TRUE or FALSE (1 or 0, respectively). Boolean functions are generally used in conjunction with the IF command to provide a conditional test. Because they generate a numeric value, however, Boolean functions can also be used as part of a member formula.

Boolean functions are useful because they can determine which formula to apply based on characteristics of the current member combination. For example, you may want to restrict a calculation to those members in a dimension that contain input data. In this case, you preface the calculation with an IF test that is based on @ISLEV (dimName, 0).

If one of the function parameters is a cross-dimensional member; for example, @@ISMBR (Sales->Budget), all parts of the cross-dimensional member must match all parts of the current cell to return a value of TRUE.

In the following quick-reference table, "the current member" means the member that is currently being calculated by the function. Words in italics, such as member, loosely indicate information you supply to the function. For details, see the individual function topics.

Table 2-5 Boolean Functions

Function Condition Tested
@ISACCTYPE Whether the current member has a particular accounts tag.
@ISANCEST Whether the current member is an ancestor of member.
@ISCHILD Whether the current member is a child of member.
@ISDESC Whether the current member is a descendant of member.
@ISGEN Whether the current member of dimension is in generation.
@ISIANCEST Whether the current member is the same member or an ancestor of member.
@ISICHILD Whether the current member is the same member or a child of member.
@ISIDESC Whether the current member is the same member or a descendant of member.
@ISIPARENT Whether the current member is the same member or the parent of member.
@ISISIBLING Whether the current member is the same member or a sibling of member.
@ISLEV Whether the current member of dimension is in level.
@ISMBR Whether the current member is member, or is found in member list, or is found in a range returned by another function.
@ISMBRUDA Whether the specified user-defined attribute string exists for the specified member.
@ISPARENT Whether the current member is the parent of member.
@ISRANGENONEMPTY Whether data values exist for a specified range.
@ISSAMEGEN Whether the current member is in the same generation as member.
@ISSAMELEV Whether the current member is in the same level as member.
@ISSIBLING Whether the current member is a sibling of member.
@ISUDA Whether the current member of dimension has a particular user-defined attribute string.