You can create these script files with
a text editor or through Oracle Essbase
Administration Services Release 11. 1. 2.
As with the Oracle Essbase BSO scripts,
the ASO scripts can contain multiple sets of
calculations. However, whereas BSO calculations are executed serially and can reference calculations performed on dimension
members in prior steps, calculations within
an ASO calculation script are executed in
parallel, as long as sufficient resources are
available to Oracle Essbase at execution
time. This has advantages when you’re
running calculations against the large data
sets typical of ASO databases, but you have
to define separate calculation and MaxL
scripts if you want to define multistep ASO
calculations that are executed in a particular
order—something to bear in mind if you are
used to creating BSO calculations.
In our example, we want to use actual and
budget data in the scenario dimension to
calculate the budget variance for two of our
offices. To do this, we develop three parts (or
parameters) of the calculation:
A •;tuple expression that defines how the
budget variance is calculated, based on
actual and budget data
A •;point of view (POV) definition that
restricts the calculation to the New York
and Boston offices
A •;source region definition that describes
to Oracle Essbase the database region in
which to perform the calculation
The tuple expression is contained in a
calculation script. The POV and source region
definitions are contained in a MaxL script
that references the tuple expression.
To create this calculation with Oracle
Essbase Administration Services, perform
the following steps, using the DemoASO
. BasicASO database:
Open the Oracle Essbase Administration
1.
Services console, and log in to the Oracle
Essbase server that holds the sample
database.
Expand the
2.;Essbase Servers node, and
further expand the node for your Oracle
Essbase server.
Expand the
3.;Applications folder, and highlight the DemoASO application.
On the Administration Services menu,
4.
select File -> Editors -> Calculation
Script Editor. Within the Editor dialog
box, type in the following calculation,
which is the tuple expression that will
calculate the budget variance for sales of
stereos in January.
([Bud Var],[Jan],[Sales],[Stereo])
:= ([Actual],[Jan],[Sales],[Stereo])
- ([Budget],[Jan],[Sales],[Stereo]);
Save this file within the directory con-
5.
taining the ASO database (typically,
{ESSBASE_HOME}/app/DemoASO/
BasicASO/), using the filename BudVar
.csc. You have now created the calculation script that will be called by the MaxL
script defined in the next steps.
On the Administration Services menu,
6.
select File -> Editors -> MaxL Script
Editor. When the Editor dialog box is
shown, type the following script into it,
amending the path to the calculation
script as necessary.
Note the POV definition in the script,
which restricts the calculation to the
intersection of January, New York, Boston,
and Bud Var (budget variance), and the
SourceRegion definition that declares
which database cells will be affected by
the calculation.
Click the
7.;Execute Script button in the
Editor dialog box to run the calculation.
When the script runs, it assigns the values
specified in the script to the corresponding
intersections. To view the results of the calculation, right-click the database within Oracle
Essbase Administration Services and select
Preview Data from the menu. The results
should look similar to those in Figure 1.
After the calculation completes, you can
query the database by using any query tool,
such as the Oracle Business Intelligence
Enterprise Edition application. The Oracle
Essbase server presents fully aggregated data
to the query tool.
execute calculation on database
DemoASO.BasicASO with
local script_file "/u01/app/
Middleware/user_projects/epmsystem1/
EssbaseServer/essbaseserver1/app/
DemoASO/BasicASO/BudVar.csc"
POV "Crossjoin({[Jan]},
Crossjoin({[New_York],[Boston]},
Crossjoin({[Stereo]},
Crossjoin({[Sales]},{[Bud Var]}))))"
SourceRegion
"Crossjoin({[Actual],[Budget]},
CrossJoin({[Jan]},
CrossJoin({[Sales]},{[Stereo]})))";
New;AllocAtioN;cApAbilities;for
AggregAte;storAge;optioN
Another new feature in Oracle Essbase
Release 11. 1. 2 is support for allocations in
ASO databases. Allocations can take place
from cells at any level in the database’s
dimension hierarchies but can be used
only to write back changes at the level-0
(leaf) level.
ASO database allocations are not quite
as flexible as BSO allocations. For example,
ASO allocations cannot make relative references to dimension members, nor can ASO
allocations write allocated figures to non-leaf-level member intersections. However,