CALCLIMITFORMULARECURSION

When set to true, prevents the server from going beyond 31 formula execution levels.

Syntax

CALCLIMITFORMULARECURSION TRUE | FALSE

Description

CALCLIMITFORMULARECURSION limits the number of execution levels of Essbase formulas. If a calculation involves formulas referencing one or more members from sparse dimensions and there are formulas along dense dimension members, the formula execution may be recursive (have multiple execution levels). By default, Essbase does not limit the number of formula execution levels. However, formulas with excessive execution levels may crash the server. Setting CALCLIMITFORMULARECURSION to TRUE prevents excessive execution levels from crashing the Essbase Server.

If a formula reaches 31 execution levels and CALCLIMITFORMULARECURSION is set to TRUE, Essbase stops processing that formula and writes error messages in the application log. If a formula reaches 31 execution levels and CALCLIMITFORMULARECURSION is set to FALSE, Essbase continues processing that formula and writes an information message in the application log.

Note

Example

If you added a member named "Payroll Share In Similar Markets" to Sample Basic and used the following formula to calculate it, you would get a recursion error.

IF (@ISUDA(Market, "Major Market"))
   Payroll / @SUMRANGE(Payroll, @UDA(Market, "Major Market"));
ELSEIF (@ISUDA(Market, "Small Market"))
   Payroll / @SUMRANGE(Payroll, @UDA(Market, "Small Market"));
ENDIF;