Oracle® OLAP DML Reference 10g Release 1 (10.1) Part Number B10339-02 |
|
|
View PDF |
The MODERROR option determines the action that Oracle OLAP takes when a block of simultaneous equations in a model cannot be solved within a specified number of iterations.
See: Table 17-1, "Model Options" for descriptions of all of the options that control the solution of simultaneous blocks. |
Data type
ID
Syntax
MODERROR = {'STOP'|'CONTINUE'}
Arguments
Oracle OLAP sends an error message to the current outfile and stops executing the model. (Default)
Oracle OLAP sends a warning message to the current outfile, stops executing the current block, and resumes execution at the next block in the model.
Notes
When every equation in a simultaneous block passes a convergence test, the block is considered solved. When any equation diverges or fails to converge within a specified number of iterations, the solution of the block fails and an error occurs. MODERROR controls the action that Oracle OLAP takes when an error occurs.
When an error occurs, you might be able to attain convergence for the block by changing the value of one or more options that control the solution of simultaneous blocks. For example, you can increase the number of iterations that will be attempted or you can change the criteria used in testing for convergence and divergence.
When MODERROR is set to STOP
and execution of the model halts because of an error, you can run the MODEL.XEQRPT program to produce a report about the execution of the model. The report specifies the block where the solution failed and shows the values of the model options that were used in solving simultaneous blocks.
When MODERROR is set to CONTINUE
and one of the blocks in the model is a simultaneous block that either diverges or fails to converge, Oracle OLAP executes any remaining blocks in the model.
Moreover, Oracle OLAP executes the model for the remaining values in the status of any additional dimensions of the solution variable that are not dimensions of the model. In this case, when you run the MODEL.XEQRPT program when Oracle OLAP finishes executing the model, you will see a report on the solution for the final values of the additional dimensions.
When the simultaneous blocks in the model converged when the model was executed for the final values of the additional dimensions, then MODEL.XEQRPT
will report that the blocks were solved, even though an earlier execution of the model for another dimension value might have failed. When you wish to see the MODEL.XEQRPT
for the dimension values where the failure occurred, you can set MODERROR to STOP
and rerun the model.
You can also use the MODTRACE option to help diagnose a problem in a simultaneous block. When you set MODTRACE to YES
, Oracle OLAP records each equation in the current outfile before executing it and then records the results of the calculation in the current outfile. By examining the trace, you can observe progress and problems as they develop during the solution process.
Examples
Example 17-20 Debugging a Model
This example assumes that you are connected through OLAP Worksheet and enter the following statements in the Command Input window. The statements set MODERROR to DEBUG
so that you will be able to debug the myModel
model (which contains a block of simultaneous equations) when the simultaneous block fails to converge.
MODERROR = 'DEBUG' myModel actual
When the simultaneous block fails to converge, you can type an Oracle OLAP or debugger command in the Command Input window in OLAP Worksheet. Since the solution variable, actual
, is dimensioned by division
, you might want to display the current value of division
.
SHOW division Camping