Professional Documents
Culture Documents
1
Calculate Databases
y
m
Activity Guide
e
d
a
D53220GC10
Edition 1.0
January 2008
D53891
a
r
O
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
Author
Lisa Alexander
Disclaimer
Technical Contributors
and Reviewers
Lucia Cooper
Paul Hoch
Brian ODonnell
Stanley Ziolkowski
Steven Cranford
Editor
Jessie Wood
Graphic Designer
Publisher
Judy Gaitan
Trademark Notice
Carisa Cannan
e
d
a
y
m
a
r
O
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
Table of Contents
Exercises
Lesson 3:
Exercise 3.1
Exercise 3.2
Exercise 3.3
Lesson 4:
Exercise 4.1
Exercise 4.2
Exercise 4.3
Exercise 4.4
Exercise 4.5
Lesson 5:
Calculating Dynamically
y
m
e
d
a
c
A
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
Lesson 6:
Normalizing Data
Exercise 6.1
Exercise 6.2
Exercise 6.3
Exercise 6.4
Exercise 6.5
Exercise 6.6
a
r
O
e
l
c
Table of Contents
Exercise Solutions
Lesson 3:
Lesson 4:
y
m
e
d
a
Lesson 5:
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
Calculating Dynamically
e
l
c
a
r
O
iv
Table of Contents
Lesson 6:
Normalizing Data
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
Table of Contents
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
vi
Exercises
Overview
This section contains hands-on exercises that you will work on throughout
this course. Exercises are grouped by lesson.
Your instructor may choose to perform some exercises with you in
demonstration format. Therefore, you may not be required to complete all
exercises. It is, however, important that you complete all exercises as
requested by the instructor, as many exercises build upon other exercises.
There are no exercises for the following lessons:
y
m
Essbase Overview
e
d
a
Calculation Overview
Lesson 1
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
Lesson 2
a
r
O
e
l
c
c
A
Lesson 3
Exercise 3.1
y
m
e
d
a
Mark calculated data blocks clean at the end of the calculation process.
10. Save IntCalc.csc.
11. Repeat steps 3 through 7 to test your calculation results.
Exercise 3.2
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
Bigcorp forecast analysts want to assign list prices to products in each product line. In
this exercise, you compare the calculation performance of two calculation scripts: one
that assigns values using FIX statements and another that assigns values using IF
statements.
1. Run ResetData.bat to clear and reload data.
e
l
c
3. Click
(refresh).
4. Execute PriceFIX.csc.
a
r
O
Exercise 3.3
y
m
e
d
a
(refresh).
7. Notice the calculation results from using Units as the anchor member for the
calculation member block.
c
A
8. In CalcMem.csc, make List Price the anchor member for the calculation member
block.
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
9. Save CalcMem.csc.
e
l
c
a
r
O
Lesson 4
Exercise 4.1
OEM customers: 6%
Retail customers: 4.5%
Distributor customers: 5.5%
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
4. Execute DiscFcst.csc.
c
A
e
l
c
a
r
O
4
y
m
e
d
a
Exercise 4.2
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
Bigcorp forecast analysts have already created forecasts for May through August. They
want to create a baseline forecast for the remaining months of the year from existing
actual data.
1. Create a script that accomplishes the following tasks:
a. Copies Sep through Dec prior year actual data to the Forecast scenario
b. Increases Sep through Dec forecast prices by 10%
e
l
c
a
r
O
y
m
e
d
a
Exercise 4.3
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
Each month Bigcorp forecast analysts require a working scenario that displays actual
data from January through the prior month and forecast data from the current month
through December.
e
l
c
a
r
O
6
Months
Current Year
Forecast
y
m
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
l
c
e
d
a
c
A
a
r
O
Exercise 4.4
Bigcorp budget analysts want to create a budget for all product-customer combinations
for which there was actual data in the prior year. To facilitate the budgeting process, you
must first create the appropriate target blocks, and then clear them of data without
removing them from the database.
1. Run ResetData.bat to clear and reload input data.
2. In Administration Services Console, for BigCalc Sales, open the Database Properties
dialog box.
3. Select the Statistics tab.
4. Record the number of existing data blocks.
5. Create a calculation script that accomplishes the following tasks:
Copies data from the Prior Year scenario to the Budget scenario
Clears data from Budget blocks without removing them from the database
6. Save the script as EmptyBud.csc.
y
m
7. Execute EmptyBud.csc.
e
d
a
8. Return to the Database Properties dialog box and refresh the database statistics.
9. Record the number of existing data blocks after calculating EmptyBud.csc.
There are more data blocks after the calculation.
Exercise 4.5
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
For unit sales, Bigcorp finance analysts require a six-month rolling average calculation
that spans the Prior Year and Current Year scenarios.
1. Create a calculation script that calculates the account Rolling 6 Avg Units as the
average of units for the current month and the prior five months.
TIP
If you decide to use the @XRANGE function, you must make sure that your
outline members are in chronological order.
e
l
c
a
r
O
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
8. Copy the formula for Rolling 6 Avg Units from the calculation script into the outline
formula editor for Rolling 6 Avg Units.
9. Save the Sales outline. If prompted, discard all data.
e
l
c
a
r
O
Lesson 5
Calculating Dynamically
Exercise 5.1
You want to improve calculation performance in the BigCalc Sales database. Because
back calculation can more than double the time required to run a calculation script,
eliminating back calculation can significantly improve your calculation performance.
1. Review the CalcAll calculation script:
/* Housekeeping */
SET UPDATECALC OFF;
SET AGGMISSG ON;
SET MSG SUMMARY;
/* Main Rollup */
CALC DIM (Accounts, "Year Tot", Customer, Product);
y
m
/* Back Calculation */
(
"List Price" = "Gross Sales" / Units;
"Discount %" = Discounts / "Gross Sales";
"Labor/Unit" = "Direct Labor" / Units;
"Matl/Unit" = Material / Units;
"Overhead Rate" =Overhead / "Direct Labor";
"Gross Margin %";
)
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
d
a
c
A
4. Revise the Sales outline in such a way that the back-calculation section of the CalcAll
script is no longer necessary.
NOTE
e
l
c
a
r
O
10
y
m
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
d
a
c
A
a
r
O
11
y
m
e
d
a
Exercise 5.2
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
You want to optimize your data block size by dynamically calculating dense calculations.
In this exercise, you apply dynamic calculations wherever appropriate to members of
dense dimensions and test your calculation results. There are many possible solutions
for this exercise.
1. Modify the DynSales outline by using Dynamic Calc storage wherever possible in
dense dimensions.
TIP
e
l
c
a
r
O
12
Lesson 6
Normalizing Data
Exercise 6.1
The Bigcorp management team wants to load current year Other CGS measures to the
total of all products and all customers, rather than deriving and loading level 0 data. In
this exercise, you use the Bigcalc Sales database to test the loading of upper-level data
and modify CalcAll.csc, as necessary, to return correct calculation results at all levels.
As a reminder, the calculation test procedure contains the following steps:
1. Clear all data from the database.
2. Load test data.
3. Calculate the database.
4. Audit calculation results.
Create a calculation script that clears all data in the database.
y
m
The Multilevel Input and Level 0 Input worksheets in AdvancedCalcs.xls represent two
approaches to loading Other CGS. Follow the calculation test procedure to accomplish
the following tasks:
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
13
y
m
Load and calculate the data presented on the Level 0 Input and Level 0 AuditSheet
worksheets in UpperLevel.xls. Use CalcAll.csc as a starting point, and save the
modified script as CYLev0.csc. Your results for Family Total->Channel Total should
match the following figure:
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
14
Exercise 6.2
Bigcorp budget analysts want to load budget data to upper-level members. You must
create a complex script for budget data. Before creating your script, you plan the
normalization process based on sample input data.
1. Open Budget.xls.
2. Select the Normalization worksheet.
3. Based on the input sheets in Budget.xls, complete the normalization table.
Exercise 6.3
Based on the input data in Budget.xls and the normalization table you developed in the
preceding exercise, you create a script to normalize rates and drivers.
1. Modify CalcDyn.csc to accomplish the following tasks:
Calculate only Budget data.
Copy level 0 units from the Current Year scenario.
Copy rates and drivers loaded to upper levels down to level 0 blocks.
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
y
m
c
A
6. Calculate Budget.csc.
e
l
c
a
r
O
15
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
16
Exercise 6.4
In this exercise, you complete the budget calculation by adding a section to allocate
other costs.
1. Open Budget.csc.
2. Add a section to the normalization process that allocates other costs based on the
following criteria:
Accounts
Allocation Basis
Material Variances
% of Units
Labor Variances
% of Units
Overhead Variances
% of Units
Obsolete Charges
% of Sales
Inventory Adjustments
% of Sales
y
m
The allocation base must be aggregated before the ratios are calculated.
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
d
a
c
A
e
l
c
a
r
O
17
y
m
e
d
a
Exercise 6.5
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
Bigcorp budget analysts changed the business logic for the allocation of Labor
Variances. In this exercise, you create a multilevel allocation for Labor Variances.
1. Save Budget.csc as BudgetB.csc.
e
l
c
2. Modify the allocation for Labor Variances to complete the following calculation steps:
a. Allocate data to the children of Family Total based on an even split between the
children that have data.
a
r
O
18
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
19
Exercise 6.6
Bigcorp tax analysts maintain a separate database, BigTax Taxes, to store tax rates and
other tax-related information. Bigcorp forecast analysts want to calculate projected tax
based on the gross margin stored in DynSales and the U.S. tax rate stored in BigTax
Taxes.
1. In the DynCalc DynSales database, create a location alias for BigTax Taxes.
2. Name the location alias Taxes.
3. Create a calculation script for the Projected Taxes account that accomplishes the
following tasks:
Turns intelligent calculation off
Calculates Projected Tax for all scenarios as gross margin times the current US
tax rate stored in the TR0003 account in BigTax Taxes
4. Save the script as Taxes.csc.
5. Run ResetDynamic.bat to clear, reload, and calculate input data.
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
20
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
21
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
22
Exercise Solutions
Overview
This section contains step-by-step solutions to successfully complete all
exercises. Solutions are grouped by lesson.
There are no solutions for the following lessons:
Essbase Overview
Calculation Overview.
Lesson 1
y
m
e
d
a
Lesson 2
a
r
O
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
Lesson 3
Solution 3.1
e
d
a
y
m
(execute script).
(refresh).
c
A
12. Notice the incorrect results in Qtr 1 for the accounts highlighted in blue.
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
/* Back Calculation */
(
"List Price" = "Gross Sales" / Units;
"Discount %" = "Discounts" / "Gross Sales";
"Labor/Unit" = "Direct Labor" / Units;
"Matl/Unit" = Material / Units;
"Overhead Rate" = Overhead / "Direct Labor";
"Gross Margin %";
e
l
c
a
r
O
24
Solution 3.2
In this exercise, you compare the calculation performance of two calculation scripts: one
that assigns values using FIX statements and another that assigns values using IF
statements.
y
m
e
d
a
(refresh).
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
e
l
c
10. Click
a
r
O
25
Solution 3.3
In this exercise, you test different anchor members for the calculation member block.
y
m
e
d
a
2. Review the calculation script. Notice that Units is the anchor member for the
calculation member block.
3. Run ResetData.bat to clear and reload data.
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
4. Execute CalcMem.csc.
c
A
e
l
c
a
r
O
26
(refresh).
y
m
2. Save CalcMem.csc.
e
d
a
(refresh).
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
e
l
c
a
r
O
27
(refresh).
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
e
l
c
a
r
O
28
(refresh).
y
m
2. Save CalcMem.csc.
3. Run ResetData.bat to clear and reload data.
e
d
a
4. Execute CalcMem.csc.
c
A
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
a
r
O
29
Lesson 4
Solution 4.1
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
y
m
e
d
a
c
A
a
r
O
30
y
m
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
d
a
c
A
a
r
O
31
y
m
e
d
a
Solution 4.2
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
In this exercise, you create a baseline forecast from existing actual data.
1. Create the following calculation script:
/* Housekeeping */
SET UPDATECALC OFF;
/* Baseline Fix */
FIX (Sep:Dec)
e
l
c
a
r
O
32
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
33
Solution 4.3
In this exercise, you create a working scenario from existing actual and forecast data.
Creating Substitution Variables
1. In Administration Services Console, in the Enterprise View navigation panel, rightclick the localhost Essbase Server node.
2. Select Edit > Variables.
The Substitution Variables dialog box is displayed.
3. In the first row, complete the following tasks, as shown in the following figure:
From the Application drop-down list, select BigCalc.
From the Database drop-down list, select Sales.
In the Variable text box, type CurrentMonth.
In the Value text box, type May.
4. Click Set.
5. Repeat steps 3 and 4 to create the variable PriorMonth with a value of Apr.
e
d
a
6. Click Close.
Copying Data into the Working Scenario
1. Create the following calculation script:
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
y
m
c
A
/* Information
e
l
c
a
r
O
34
y
m
e
d
a
Solution 4.4
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
In this exercise, you create data blocks and then clear them of data without removing
them from the database.
1. Run ResetData.bat to clear and reload input data.
e
l
c
a
r
O
35
y
m
8. Execute EmptyBud.csc.
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
11. Record the number of existing data blocks after calculating EmptyBud.csc.
There are more data blocks after the calculation.
Solution 4.5
In this exercise, you create a six-month rolling average for unit sales. What follows is one
of many possible solutions for this exercise.
e
l
c
a
r
O
36
y
m
e
d
a
c
A
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
l
c
a
r
O
37
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
1. In RollAvg.csc, select the formula for Rolling 6 Avg Units (select only the script to the
right of the equal sign).
2. Right-click the selected text.
3. Select Copy.
e
l
c
a
r
O
38
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
39
Lesson 5
Calculating Dynamically
Solution 5.1
In this exercise, you modify the Sales outline to eliminate the back-calculation section of
the CalcAll calculation script.
Creating a Test Application
1. In Administration Services Console, right-click the BigCalc application node.
2. Select Copy.
The Copy Application dialog box is displayed.
3. In the Application Name text box, type DynCalc.
4. Click OK.
The DynCalc application node is added to the navigation panel.
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
2. In the Accounts dimension, move the following members into the Input branch:
List Price
e
l
c
Discount %
a
r
O
Labor/Unit
Matl/Unit
Overhead Rate
40
5 Calculating Dynamically
Solutions
3. Change the consolidation property for the members moved in step 2 to ^ (never
consolidate).
4. Add the following shadow rates to the outline:
Member
Parent
Properties
Member Formula
Gross Sales
Avg Disc %
Discounts
Expense Reporting
Avg Labor/Unit
Direct Labor
Expense Reporting
Avg Matl/Unit
Material
Material / Units;
Expense Reporting
Avg OH Rate
Overhead
Expense Reporting
Parent
Property
Member Formula
Gross Sales
Net Sales
Units
Gross Sales
Discounts
Net Sales
Discounts
Direct Labor
Cost of Sales
Units (shared)
Direct Labor
Material
Cost of Sales
Units (shared)
Material
Overhead
Cost of Sales
Overhead
e
d
a
c
A
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
y
m
Labor/Unit * Units;
Matl/Unit * Units;
e
l
c
Avg Disc %
a
r
O
Avg Labor/Unit
Avg Matl/Unit
41
y
m
e
d
a
Input accounts
8. Click Save.
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
e
l
c
1. Open CalcAll.csc.
a
r
O
42
5 Calculating Dynamically
Solutions
4. Verify CalcDyn.csc.
5. Save CalcDyn.csc.
Resetting the Database
1. In Windows Explorer, browse to c:\CF\EssCalcs\Scripts.
2. Double-click ResetDynamic.bat.
A script clears, reloads, and calculates the BigCalc Sales and DynCalc
DynSales databases.
Adding a Connection in Smar t View
1. Open Dynamic.xls.
2. Select the ShadowRates worksheet.
3. Click
(connection manager).
y
m
4. Click Add.
5. Select URL Provider.
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
e
l
c
a
r
O
The available applications are displayed under the localhost server node.
43
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
e
l
c
a
r
O
44
5 Calculating Dynamically
Solutions
4. Compare your calculation results to the following figure:
y
m
Solution 5.2
c
A
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
d
a
1. In the DynSales outline, make the following members of the Year Tot dimension
Dynamic Calc:
Year Tot
Qtr 1
e
l
c
Qtr 2
a
r
O
Qtr 3
Qtr 4
45
y
m
Unit Mix
e
d
a
Sales $ Mix
Rolling 6 Avg Units
c
A
4. Make the following scenarios Dynamic Calc and flagged for two-pass calculation:
Act Vs Bud
Act Vs Fcst
Bud Vs Fcst
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
l
c
a
r
O
46
5 Calculating Dynamically
Solutions
13. In the Comparison section of the worksheet, verify your calculation results.
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
47
Lesson 6
Normalizing Data
Solution 6.1
In this exercise, you test the process of loading data to upper-level members and the
effect of upper-level data loading on calculations.
Creating the ClearAll Calculation Script
1. In Administration Services Console, select File > Editors > Calculation Script Editor.
2. Create the following script:
CLEARBLOCK ALL;
3. Click
(validate).
y
m
e
d
a
c
A
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
3. Connect to DynSales.
9. Scroll down to the orange Channel Total section, and verify upper-level loads.
e
l
c
a
r
O
48
6 Normalizing Data
Solutions
11. Refresh the worksheet.
The message "Calculation Errors" is displayed.
12. Examine the Comparison formulas section, and determine where calculated data is
incorrect.
Gross Margin for the intersection of Channel Total and Family Total is incorrect.
Qtr 1 is also incorrect.
Modifying the Calculation Script
1. In Administration Services Console, expand the DynSales database node.
2. Expand the Calculation Scripts node.
3. Double-click CalcDyn.
The Calculation Script Editor window is displayed.
4. Select File > Save as.
5. Save the script as CYMulti.csc.
y
m
e
d
a
c
A
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
l
c
/* Baseline Fix */
FIX ("Current Year")
a
r
O
/* Main Rollup */
49
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
e
l
c
a
r
O
50
6 Normalizing Data
Solutions
5. Compare your results to the following script:
/* Information
Created by: YourName
Created On: 9/22/2005
Purpose:
This script consolidates the Bigcorp Sales database in
Current Year and then recalculates Gross Margin to offset
upper-level data loads.
*/
/* Housekeeping */
SET UPDATECALC OFF;
SET AGGMISSG ON;
SET MSG SUMMARY;
/* Baseline Fix */
FIX ("Current Year")
/* Main Rollup */
CALC DIM (Accounts, "Year Tot", Customer, Product);
y
m
e
d
a
6. Repeat the steps in Loading and Calculating Level 0 Inputs on page 3-50 to test
your calculation script.
Solution 6.2
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
Developing a Normalization Table
c
A
e
l
c
a
r
O
51
Solution 6.3
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
/* Information
e
l
c
a
r
O
52
6 Normalizing Data
Solutions
/* Baseline Fix */
FIX ("Budget")
/* Normalization */
/* Normalize rates loaded to upper levels */
"List Price" = @PARENTVAL("Customer", "List Price");
"Discount %" = "Discount %"->"Family Total";
"Labor/Unit" = "Labor/Unit"->"Channel Total";
"Matl/Unit" = "Matl/Unit"->"Channel Total";
"Overhead Rate" = @MDANCESTVAL(2, "Product", 3, "Customer", 2);
/* Main Rollup */
CALC DIM (Accounts, "Year Tot", Customer, Product);
/* Close out the Baseline Fix */
ENDFIX
4. Save Budget.csc.
5. Run LoadBudget.bat to clear and reload input data.
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
53
y
m
e
d
a
Solution 6.4
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
In this exercise, you complete the budget calculation by adding a section to allocate
other costs.
1. Open Budget.csc.
e
l
c
a
r
O
54
6 Normalizing Data
Solutions
Created On:9/22/2005
Purpose: This script calculates the DynCalc DynSales database.
/*
/* Housekeeping */
SET UPDATECALC OFF;
SET AGGMISSG ON;
SET MSG SUMMARY;
/* Copy Current Year units to Budget */
FIX(@GENMBRS(Product, 5), @LEVMBRS(Customer, 0), Units)
DATACOPY "Current Year" TO "Budget";
ENDFIX
/* Normalization */
/* Normalize rates loaded to upper levels */
"List Price" = @PARENTVAL("Customer", "List Price");
"Discount %" = "Discount %"->"Family Total";
"Labor/Unit" = "Labor/Unit"->"Channel Total";
"Matl/Unit" = "Matl/Unit"->"Channel Total";
"Overhead Rate" = @MDANCESTVAL(2, "Product", 3, "Customer", 2);
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
"Material Variances" =
"Material Variances"->"Family Total"->"Channel Total"
* "Units" / "Units"->"Family Total"->"Channel Total";
"Labor Variances" =
"Labor Variances"->"Family Total"->"Channel Total"
* "Units" / "Units"->"Family Total"->"Channel Total";
"Overhead Variances" =
"Overhead Variances"->"Family Total"->"Channel Total"
* "Units" / "Units"->"Family Total"->"Channel Total";
e
l
c
a
r
O
55
y
m
e
d
a
5. Click Save.
c
A
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
l
c
a
r
O
56
6 Normalizing Data
Solutions
5. Refresh the worksheet. Compare your results to the following figure:
y
m
e
d
a
Solution 6.5
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
2. Modify the allocation for Labor Variances to look like the following script:
e
l
c
/* Information
a
r
O
57
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
"Material Variances" =
"Material Variances"->"Family Total"->"Channel Total"
* "Units" / "Units"->"Family Total"->"Channel Total";
"Overhead Variances" =
"Overhead Variances"->"Family Total"->"Channel Total"
* "Units" / "Units"->"Family Total"->"Channel Total";
e
l
c
a
r
O
58
6 Normalizing Data
Solutions
FIX( @CHILDREN( "Family Total"))
"Labor Variances" =
"Labor Variances"->"Family Total"->"Channel Total" /
@COUNT(
SKIPMISSING,
@RANGE(
Units,
@ISIBLINGS(
@CURRMBR(Product)
)
)
);
ENDFIX
/* Step 2: Allocate Labor Variances to Gen5 (level 0) products based
on percent of product family units */
FIX( @GENMBRS( "Product", 5))
"Labor Variances" =
@MDANCESTVAL( 2, "Product", 3, "Customer", 2, "Labor Variances")
* ("Units" /
@MDANCESTVAL( 2, "Product", 3, "Customer", 2, "Units"));
ENDFIX
y
m
e
d
a
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
/* Main Rollup */
e
l
c
a
r
O
7. Calculate Budget.csc.
59
y
m
e
d
a
Solution 6.6
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
In this exercise, you create a location alias to leverage data stored in another database.
Creating a Location Alias
e
l
c
a
r
O
60
6 Normalizing Data
Solutions
3. In the first row of the table, create a location alias based on the following table:
Parameter
Value
Alias
Taxes
Essbase Server
localhost
Application
BigTax
Database
Taxer
User Name
trnadmin
Password
hyperion
4. Click Test.
A check mark is displayed in the Verified column.
5. Click Set.
6. Click Close.
y
m
e
d
a
c
A
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
e
l
c
a
r
O
61
y
m
e
d
a
e
l
c
e
l
c
a
r
O ly
& On
l
a e
n
r
s
e
t
U
n
I
c
A
a
r
O
62