Technical data

Chapter 10 Creating Rules, Formulas, and User Functions
In this example, none of the data cubes refer directly to themselves. However, each data cube refers indirectly
to itself by means of the other data cubes:
BONUS refers t
o NET_INCOME.
NET_INCOME ref
ers to EXPENSE.
EXPENSE refers
to BONUS.
Understanding Circular Systems and Recursive Systems
When the analy
tic calculation engine determines—on the data cube level—that a circular formula exists, it
analyzes the c
alculation conditions of the cells within the circular formula to determine whether the cells
are dependent
on those same cells for their values. If so, these cells either create a recursive system or a
circular sys
tem.
In a recursive system, the values of the cells are not dependent on the values of those same cells.
In a circular system, the values of the cells are dependent the values of those same cells.
Understanding Recursive System Resolution
The analytic calculation engine resolves recursive systems immediately without using the process of iteration.
To understan
d the process of h ow the analytic calculation engine determines and resolves re cursive systems,
consider the
following formula for the SALES data cube:
PREVSELF(MONTHS) + SALES_GROWTH
The analytic calculation engine determines that this is a recursive system by performing the following:
1. The analytic
calculation engine determines that this is a circular formula because the PREVSELF
built-in fun
ction which refers to the SALES data cube exists within the formula.
2. The analytic
calculation engine analyzes the calculation conditions of the cells within this formula
and determin
es that these cells create a recursive system, because the cells within this formula are not
dependent o
n the values of those same cells.
The analytic engine then resolves this recursive system immediately without iteration.
Understand
ing C ircular System Resolution
The analytic calculation engine uses the process of iteration to attempt to resolve all of an analytic model’s
circular systems. You set the iteration parameters by using the General tab of the an alytic model’s properties.
If the cells converge on a solution within the iteration parameters, the circular system is resolved. If the cells
do not converge on a s olution within the iteration parameters, the analytic calculation engine returns an error.
All cells within the circular system remain unresolved.
Note. Because you enable or disable iteration for all circular systems, you cannot enable or disable iteration
for a particular circular system.
When you ena
ble the resolution of circular systems through iteration, you must select one of the following
iteration
options:
Maximum number of iterations: When the values of the cells have not changed more than the specified
maximum amount, the circular system is c onsidered to be resolved.
Copyright © 1988-2007, Oracl e. All rights reserved. 135