Essbase Student Lab 1 PDF
Essbase Student Lab 1 PDF
Essbase Student Lab 1 PDF
For
<< Customer Name >>
Prepared By
Sushuma P
15th September 2008
25936855.doc
Confidential
Adaequare, Inc
Page 1 of 132
Version
0.1
Change reference
Initial draft for review/discussion
Date
15th Sep 2008
Comments
Date
Reviewers
Name
Neeraj Soni
25936855.doc
Version
approved
0.1
Confidential
Adaequare, Inc
Page 2 of 132
TABLE OF CONTENTS
..............................................................................................................5
..............................................................................................................5
MODULE 1...................................................................................................................................6
DESIGININGOUTLINES........................................................................6
EXERCISE - CREATING A DATABASE...................................................................................................................6
EXERCISE - BUILDING A TIME DIMENSION...........................................................................................................8
EXERCISE - BUILDING A SCENARIO DIMENSION..................................................................................................11
EXERCISE - CREATING THE ACCOUNTS DIMENSION.............................................................................................12
EXERCISE - ADDING TO THE ACCOUNTS DIMENSION...........................................................................................13
MODULE 2 ..............................................................................16
BUILDING LOAD RULES.........................................................................16
EXERCISE - LOADING THE FAMILY TOTAL HIERARCHY........................................................................................16
EXERCISE - (OPTIONAL) USING THE LEVEL BUILD METHOD................................................................................16
EXERCISE - CREATING A PARENT-CHILD LOAD RULE.........................................................................................17
EXERCISE - LOADING DIMENSIONS USING A PARENT-CHILD RULE.......................................................................17
EXERCISE - (OPTIONAL) CLOROX MINTY..........................................................................................................17
EXERCISE - LOADING A CHANNELS HIERARCHY TO CUSTOMER............................................................................18
EXERCISE - CREATING A REGION TOTAL ATTRIBUTE DIMENSION.........................................................................19
EXERCISE - (OPTIONAL) BUILDING THE CAPACITY TOTAL ATTRIBUTE...................................................................19
MODULE 3.......................................................................................20
SPREADSHEET REPORTING......................................................20
EXERCISE - INSTALLING THE ADD-IN AND TOOLBAR...........................................................................................20
EXERCISE - MANAGING CONNECTIONS..............................................................................................................23
EXERCISE - ANALYZING DATA.........................................................................................................................24
EXERCISE - CHALLENGE 1...............................................................................................................................26
EXERCISE - CONTROLLING EXPANSION..............................................................................................................26
EXERCISE - TROUBLESHOOTING REPORTS..........................................................................................................28
EXERCISE - MANAGING DISPLAY OPTIONS........................................................................................................28
EXERCISE - SELECTING MEMBERS FROM THE OUTLINE........................................................................................30
EXERCISE - DESIGNING QUERIES......................................................................................................................30
EXERCISE - (OPTIONAL) REPLICATING REPORTS WITH CASCADE...........................................................................32
EXERCISE - SPREADSHEET FORMULAS...............................................................................................................36
..........................................................................................................................38
25936855.doc
Confidential
Adaequare, Inc
Page 3 of 132
MODULE 4
.................................................................39
MODULE 5.......................................................................................47
DESIGNING AND OPTIMIZING THE ADVANCED CALCULATION SCRIPTS 47
Exercise - Manipulating Data with Calculation Scripts..........................................................................48
Exercise - Clearing Data..........................................................................................................................48
Exercise - Counting Customers................................................................................................................48
Exercise - Allocating Data.......................................................................................................................49
Exercise - (Optional) Advanced Allocations............................................................................................50
EXERCISE SOLUTION.......................................................................51
MODULE 1...................................................................................................51
EXERCISE - BUILDING A SCENARIO DIMENSION..................................................................................................51
EXERCISE - CREATING THE ACCOUNTS DIMENSION.............................................................................................54
EXERCISE - LOADING THE FAMILY TOTAL HIERARCHY........................................................................................58
EXERCISE - (OPTIONAL) USING THE LEVEL BUILD METHOD................................................................................64
EXERCISE - CREATING A PARENT-CHILD LOAD RULE.........................................................................................67
EXERCISE - LOADING DIMENSIONS USING A PARENT-CHILD RULE.......................................................................69
EXERCISE - (OPTIONAL) CLOROX MINTY..........................................................................................................70
EXERCISE - LOADING A CHANNELS HIERARCHY TO CUSTOMER............................................................................75
EXERCISE - CREATING A REGION TOTAL ATTRIBUTE DIMENSION.........................................................................80
EXERCISE - (OPTIONAL) BUILDING THE CAPACITY TOTAL ATTRIBUTE...................................................................86
EXERCISE - CHANGING TRANSPARENT PARTITION VALUES AND STRUCTURE...........................................................88
EXERCISE - LOADING DATA............................................................................................................................92
...................................................................................................................102
MODULE 3.........................................................................................................103
EXERCISE - SPREADSHEET REPORTING CHALLENGE 1: FORMATS.........................................................................103
EXERCISE - TROUBLESHOOTING REPORTS........................................................................................................104
EXERCISE - SELECTING MEMBERS FROM THE OUTLINE......................................................................................105
EXERCISE - DESIGNING QUERIES....................................................................................................................111
MODULE 4 .....................................................................................................117
EXERCISE - ADDING A BACK CALCULATION..................................................................................................117
EXERCISE - FOCUSING WITH FIX...................................................................................................................118
EXERCISE - FOCUSING WITH IF......................................................................................................................119
25936855.doc
Confidential
Adaequare, Inc
Page 4 of 132
SOLUTIONS.............................................................................................................................124
SOLUTION #1 - SETTING TWO-PASS CALCULATIONS.........................................................................................124
SOLUTION #2 - MAKING SCENARIO A DENSE DIMENSION..................................................................................125
MODULE 5.............................................................................................................126
EXERCISE - MANIPULATING DATA WITH CALCULATION SCRIPTS.........................................................................126
EXERCISE - CLEARING DATA.........................................................................................................................129
EXERCISE - COUNTING CUSTOMERS................................................................................................................129
EXERCISE - ALLOCATING DATA.....................................................................................................................130
EXERCISE - (OPTIONAL) ADVANCED ALLOCATIONS..........................................................................................132
25936855.doc
Confidential
Adaequare, Inc
Page 5 of 132
MODULE 1
DESIGININGOUTLINES
Exercise - Creating a Database
You have decided to analyze your sales data in Essbase, and the first step is to build an
application and database shell. In this exercise, you create the Bigcorp application and Sales
database.
1) On the Administration Console, select File > New > Block Storage Application.
2) Click OK.
The Create Application dialog box opens.
3) Verify that localhost is selected in the Analytic Server drop-down list box.
4) In the Application name text box, type
Bigcorp.
5) Click OK.
The Bigcorp application is displayed under the Applications node on the Enterprise View
tab.
6) On the Administration Console, select
25936855.doc
Confidential
Adaequare, Inc
Page 6 of 132
7) Click OK.
8) Verify that localhost is selected in the Analytic Server drop-down list box.
9) In the Application drop-down list box, select
10) In the Database name text box, type
Sales.
Normal.
Bigcorp.
25936855.doc
Confidential
Adaequare, Inc
Page 7 of 132
Outline: Sales.
11) Create child members, Jan through Dec, to populate the months in each quarter.
25936855.doc
Confidential
Adaequare, Inc
Page 8 of 132
25936855.doc
Confidential
Adaequare, Inc
Page 9 of 132
Year Tot .
25936855.doc
Confidential
Adaequare, Inc
Page 10 of 132
10
8) Repeat this procedure for Q-T-D, selecting 2 for the generation and creating an alias of
QTD .
9) Click OK .
Member Children
Act Vs Bud
Current Year
Budget
Act Vs Fcst
Bud Vs Fcst
None
None
Notes
Set children as shared members.
Change the consolidation
operator of Current Year to Addition (+)
and Budget to Subtraction (-).
Add the following member
formula:
Current Year - Forecast;
Add the following member
formula:
Budget - Forecast;
25936855.doc
Confidential
Adaequare, Inc
Page 11 of 132
11
Use this worksheet as a guide for member formulas and consolidation operators.
25936855.doc
Confidential
Adaequare, Inc
Page 12 of 132
12
Unary Operator
Inventory
Accounts Receivable
Member Properties
~
~
Confidential
Adaequare, Inc
Page 13 of 132
13
Confidential
Adaequare, Inc
true.
Page 14 of 132
14
16) Identify and set Expense reporting for all other members in the Accounts dimension
where this flag is required, according to the following model:
17) Select File > Save to verify and save the Sales outline.
25936855.doc
Confidential
Adaequare, Inc
Page 15 of 132
15
MODULE 2
BUILDING LOAD RULES
Exercise - Loading the Family Total Hierarchy
In this exercise, you create a load rule to build the Family Total hierarchy. To complete this
exercise:
Create a new load rule.
Associate the load rule with the Sales outline.
Read the FamGen.xls data file (located in the \BCI\LoadRule directory) into
the blank load rule.
Set the load rule to Dimension build fields view mode.
Specify the data file delimiter type.
Ignore any header records.
Set the correct dimension build method.
Associate field headers with dimension and generation references.
Verify and save the rule.
Update the outline using the rule.
Confidential
Adaequare, Inc
Page 16 of 132
16
Use the Configpc.xls data file (located in the BCI \LoadRule directory).
Associate the columns with field properties.
Ignore any header records.
Save the load rule as Par_C h.
When the data is loaded, the dimension should look similar to the following sample
25936855.doc
Confidential
Adaequare, Inc
Page 17 of 132
17
25936855.doc
Confidential
Adaequare, Inc
Page 18 of 132
18
Confidential
Adaequare, Inc
Page 19 of 132
19
MODULE 3
Spreadsheet reporting
Confidential
Adaequare, Inc
Page 20 of 132
20
x:\RS\BCI directory.
2) Double-click the ssheet.bat file. The automatic reset script runs and outputs
messages in a command window. Wait until its completion.
Testing Default Behavior
When you install Essbase, let your users know the default behavior, as the add-in
circumvents some normal Excel functionality.
Open the SSReports.xls file and go through the following steps on the Sandbox
worksheet. Ask yourself the following questions: What happened? How is this different
from Excel without the add-in? How would your users react if this were a worksheet of
non-Essbase data?
1) Double-click anywhere on the blank
2) Establish a connection to the
Sandbox worksheet.
Bigcorp:Sales database.
As you can probably tell from those tests, the mouse buttons behave differently when
the add-in is installed. Since most users do not need Essbase functionality all of the
time, you can give them different options for enabling it.
Configuring for Infrequent Essbase Users
Infrequent Essbase users may not want to load the add-in every time they open Excel.
Showing these users how to enable and disable the add-in themselves is often a good
option:
1) In Excel, select Tools > Add-Ins .
2) Clear the check mark next to
25936855.doc
Page 21 of 132
21
3) Click OK .
4) Clear the Sandbox worksheet and repeat some of the previous default behavior
tests. How are the results different?
The Essbase menu is no longer displayed on the Excel menu bar. Now Excel behaves
as usual, but users have no ability to connect to Essbase until they reverse the preceding
steps.
Configuring for Semiregular Essbase Users (or for Beginners)
Users who need Essbase semiregularly may not want to continuously enable and
disable the add-in, and yet still want familiar Excel mouse behavior. Beginners to the
add-in often find it painful to lose access to Excel shortcuts. For these users, it is often
a good solution to disable the Essbase mouse functionality while leaving the add-in
loaded:
1) If necessary, select Tools > Add-Ins menu and enable the add-in in Excel.
2) Select Essbase > Options .
3) Select the Global tab.
4) Clear the check boxes for the
Enable Secondary Button and Enable DoubleClicking options and then click OK .
5) Clear the Sandbox worksheet and repeat some of the default behavior tests from
above. How are the results different?
The mouse now retains normal Excel behavior. Moreover, since the Essbase
Spreadsheet Add-in is still enabled, these users retain the ability to explore and analyze
their data through Essbase menu commands or by using the Essbase toolbar.
Configuring for Regular Essbase Users (or for Advanced Users)
Users who use Excel primarily for connecting to Essbase generally find the default
settings work the best, as the Essbase mouse
shortcuts give greater speed and flexibility to their analytic tools. But even these users
sometimes view spreadsheets that do not contain Essbase data and want regular Excel
functionality. In Essbase version 7.1.2, there is a new option to suit these users:
1) Select Essbase > Options .
2) Select the Global tab.
3) Select the Enable Secondary Button and Enable Double-Clicking options.
4) Select the Limit to Connected Sheets option and then click OK .
25936855.doc
Confidential
Adaequare, Inc
Page 22 of 132
22
5) In a new Excel workbook, test the mouse button behavior for double-clicking and
right-clicking.
6) Select Essbase > Connect , enter your login information, and then click OK .
7) Now that the worksheet is connected to Essbase, test the mouse button behavior
again.
8) Select Sheet2 in the workbook and test the mouse button behavior.
With this option selected, you should see Essbase mouse functionality on worksheets
that you have explicitly connected to Essbase, and Excel mouse functionality on
nonconnected worksheets.
Disabling and Enabling the Essbase Toolbar
The Essbase toolbar gives users another method for accomplishing tasks on the Essbase
menu, but it can be disabled:
1) In Excel, select View > Toolbars .
2) Clear the check mark next to Hyperion Essbase.
The Essbase toolbar is not installed automatically; macros install it when you open the
Esstoolb.xls file (located in Essbase\Client\Sample).
3) Repeat step 1 and then check Hyperion Essbase to display the toolbar again
2) Select or type the correct server name, enter your username and password, and click
Update.
3) In the Application/Database list, select
Confidential
Adaequare, Inc
Page 23 of 132
23
6) Select Sheet3, select Essbase > Connect, and then connect to Sample: Basic.
The current database connection is not displayed on the Excel worksheet.
7) Select Essbase > Disconnect.
You can now see that Sheet1 and Sheet2 are connected to
Bigcorp:Sales, whereas Sheet3 is connected to Sample:Basic
8) Click Close.
Changing and Closing Connections
1) Rename Sheet2 NewSheet and then select Essbase > Retrieve.
You receive the following error message: The resultant report cannot be retrieved. Your
report heading cannot be interpreted.
2) Select Essbase > Disconnect to view your connections.
Newsheet is now connected to Sample: Basic, not Bigcorp: Sales, resulting in the error.
3) Click Close.
4) Close the Excel workbook (do not save the changes) and open a new one.
5) Select Essbase > Disconnect to view your connections.
All the connections are still open, even though the workbook was closed.
6) Click Disconnect to close the selected connection, and then repeat until all connections
are closed.
7) Click Close.
After an Essbase connection is established, retrievals on additional worksheets automatically
connect to the last database used. When you rename a worksheet, Essbase requires a new
connection. Since Sample: Basic is the last database that you connected to, the system used
that connection for the new worksheet name, even though it was connected to Bigcorp:
Sales originally.
8) Close the Excel workbook (do not save the changes).
Confidential
Adaequare, Inc
Page 24 of 132
24
begin, establish a connection to Bigcorp:Sales on the Sandbox worksheet, and ensure that
your options are set so that Essbase mouse actions are enabled.
Basic Zooming
There are many ways to control zoom behavior in the Essbase Spreadsheet Add-in:
Action
Zoom in
Zoom out
Options
Essbase > Zoom In
Double-click member name
Zoom In toolbar button
Essbase > Zoom Out
Double right-click member name
Zoom Out toolbar button
Header dimension
zoomreposition
on rows
Header dimension
zoomreposition
on columns
Starting with a basic, top-level retrieval, try the following steps and note what happens:
1) Zoom in on Year Tot .
2) Zoom in on Qtr 1 several times.
3) Zoom out on Qtr 1 .
4) Zoom in and reposition
Other basic Retrieve Operations: In addition to Zoom , there are four basic operations
that can help analysis:
Action
Options
Keep Only
Essbase> Keeponly
Keep only toolbar button.
Remove Only
25936855.doc
Page 25 of 132
25
Essbase>Pivot
Right click and drag.
Flashback
Essbase>flashblack
Flashblack toolbar button.
If necessary, clear the spreadsheet to start again with a basic, top-level retrieval. Try the
following steps and note what happens:
Zoom in on year Tot.
Keep only, Qtr1, Qtr2 and Qtr 3.
Zoom in and reposition accounts on rows.
Remove only QTR3.
Zoom in and reposition Scenario on rows.
Pivot the scenarios to columns
Perform a in axis pivot to place the time periods as the outer row
dimension.
Select Flashback to undo the previous operations.
Exercise - Challenge 1
Starting from a basic top-level retrieve, use the skills you have learned up to this point
to duplicate this report. Use SSReports.xls worksheet Challenge1.
25936855.doc
Confidential
Adaequare, Inc
Page 26 of 132
26
4) Zoom in on Family Total for IBM again. How is this different from your results
for step 1?
5) Continue to zoom in to find the detail of the individual LIGHTBOLT products
purchased by IBM.
Even though you are interested only in LIGHTBOLT data, this option still leaves other
branches of the Product dimension in the report and taking up space.
6) Zoom out on PERFORMANCE to return the report to its original state.
7) On the Zoom tab, select Remove Unselected Groups .
8) Zoom in on Family Total for IBM, and continue to zoom in to find the
25936855.doc
Confidential
Adaequare, Inc
Page 27 of 132
27
LIGHTBOLT products again. How does this option differ from the previous one?
Diagnosis
Resolution
Labels 1
Labels 2
Labels 3
Labels 4
Labels 5
Labels 6
Labels 7
Labels 8
Confidential
Adaequare, Inc
Page 28 of 132
28
Display aliases.
Display member names and aliases for rows.
Display styles.
Suppress #Missing rows.
Display no indentation.
Select Apr for the latest time period in Dynamic Time Series.
25936855.doc
Confidential
Adaequare, Inc
Page 29 of 132
29
Dimension Members
Current Year, IBM, Units
Jan through Apr, Y-T-D(Apr)
Config A LIGHTBOLT and MAVRIDER products (level
0 only)
The
finished
report
should
look as
follows:
Confidential
Adaequare, Inc
Page 30 of 132
30
based on the YTD totals, and they want to filter out rows with no YTD totals.
Because this report requires nested dimensions in the rows and server-based sorting,
Essbase Query Designer is the best tool for the job.
On the Member Selection tab in the SSReports.xls file, build the report to the following
specifications:
Query Section
Header
Dimensions
Dimension Members
Current Year, Units.
Column
Dimensions
Row Dimensions
shared members).
Data Filtering
Data Sorting
.
The finished report should look as follows:
25936855.doc
Confidential
Adaequare, Inc
Page 31 of 132
31
25936855.doc
Confidential
Adaequare, Inc
Page 32 of 132
32
Confidential
Adaequare, Inc
Page 33 of 132
33
Confidential
Adaequare, Inc
Page 34 of 132
34
This dialog box is displayed every time you retrieve or zoom in on this report to inform
you that a given piece of metadata is not in the database. For the purposes of this
course, always click No to skip additional messages and continue.
3) Click No
25936855.doc
Confidential
Adaequare, Inc
Page 35 of 132
35
D7 .
To Retain on Zooms
1) Zoom in on PERFORMANCE .
The formula is not preserved.
2) Select Essbase > Flashback .
3) Select Essbase > Options > Mode.
4) Under Formula Preservation, select
Confidential
Adaequare, Inc
Page 36 of 132
36
25936855.doc
Confidential
Adaequare, Inc
Page 37 of 132
37
MODULE 4
CREATING BASIC CALCULATIONS
Exercise - Examining the Anatomy of a Rollup
In this exercise, you create a new calculation script that calculates each dimension in
the Sales database one by one. This exercise assumes that the database was cleared of
all data and that Actual.txt and Forecast.txt were loaded with Loadcorp.rul.
1) In the Enterprise View, select the
Bigcorp:Sales database.
2) Select File > New > Scripts > Calculation script and click OK .
25936855.doc
Confidential
Adaequare, Inc
Page 38 of 132
38
3) In the Dimensions list, right-click Accounts and select Insert member name .
dimlist is
replaced by the
Accounts
member
25936855.doc
Confidential
Adaequare, Inc
Page 39 of 132
39
CalcCorp .
6) Click OK .
7) Open Anatomy.xls (located in the BCI\CalcIt\Anatomy directory).
8) Connect to Bigcorp:Sales on the This Is A Block worksheet and retrieve.
You should see only input data at this point.
9) Select Essbase > Calculation .
The Essbase Calculation dialog box is displayed.
10) Select CalcCorp and click Calculate .
11) Select Essbase > Retrieve and analyze the result. The upper-level Accounts
dimension members now contain data.
Calculating the Year Tot Dimension
1) Open the CalcCorp calculation script.
2) In the CALC DIM statement, insert Year Tot after Accounts.
Make sure to separate Account and Year Tot with a comma.
3) Save the calculation script.
4) Open Anatomy.xls .
5) Select Essbase > Calculation .
25936855.doc
Confidential
Adaequare, Inc
Page 40 of 132
40
OEM .
25936855.doc
Confidential
Adaequare, Inc
Page 41 of 132
41
calculation script.
4) Open Anatomy.xls .
5) Select Essbase > Calculation .
6) Select CalcCorp and click Calculate .
7) Change the page header label from
25936855.doc
Confidential
Adaequare, Inc
Page 42 of 132
42
Exercise Focusing
with FIX
Modify the following calculation script to fix on:
Current Year
January, February, and March
/* Housekeeping */
SET UPDATECALC OFF;
/* The Baseline Fix */
/* The Main Rollup */
CALC DIM (Accounts, Customer, Product);
Save the script as FixIt and calculate. Check your results on the FixIt
tab of the Anatomy.xls file.
25936855.doc
Confidential
Adaequare, Inc
Page 43 of 132
43
Confidential
Adaequare, Inc
Page 44 of 132
44
Write a calculation for the Moving Average account that takes a three-month moving
average (the current month plus the previous two months) of unit sales. The calculation
should span Prio r Year and Current Year .
For the first two months in Prior Year, use the units sold for Moving Average.
Extra Credit
Write your calculation script so that #Missing data is not counted.
Exercise - Managing Calculation Script Maintenance
Many calculation scripts contain values or member names that are variable and must
therefore be updated regularly. To make maintenance easier, create server-based
substitution variables. This gives you one place to update multiple calculation scripts.
Creating Substitution Variables
1) In the EAS Enterprise View, double-click the Variables
name.
Confidential
Adaequare, Inc
Page 45 of 132
45
In this exercise, you create a new application and database named Dynamic and use
the information in the Aggressive.xls workbook such that a back calculation is not
necessary to produce correct values.
1) Open Agressive.xls (located in BCI\CalcIt\Dynamic).
The values in the No Dynamic spreadsheet represent a retrieve from the Bigcorp
database with no dynamic calculations. These values are correct.
2) Create a new application called Dynamic with a new database called Dynamic .
3) Open the dynamic.otl file from the BCI\CalcIt\Dynamic directory and save it to the
Dynamic database (overwrite the existing outline file).
4) Load Actual.txt and Forecast.txt using Loadcorp.rul (those files are also in the
BCI\CalcIt\Dynamic directory).
5) Calculate the Dynamic database.
6) Open Aggressive.xls , and retrieve it into the dynamic spreadsheet.
7) In the comparison spreadsheet, create a formula that subtracts the two spreadsheets
and copy it to all data cells. Investigate all nonzero values.
8) Return to the Dynamic database and make any changes required to correct the
calculation until the Comparison worksheet in the Agressive.xls workbook indicates
that the No Dynamic and Dynamic spreadsheets are in sync.
9) When you are satisfied that the spreadsheets are in sync, return to the database and
make a note of the current block statistics.
10) In the dynamic outline, experiment with dynamic calculations and two-pass
calculations by setting everything possible to dynamic in a way that still keeps the No
Dynamic and Dynamic spreadsheets in sync.
MODULE 5
Designing and optimizing the advanced calculation scripts
25936855.doc
Confidential
Adaequare, Inc
Page 46 of 132
46
Confidential
Adaequare, Inc
Page 47 of 132
47
disbursement of products across the customer base. In this exercise, you write a
calculation for Customer Count to count the number of customers that bought each
product.
Extra Credit
Modify this script so that the Customer Count stores a 1 for every occurrence of a
product sale. To see all customers for a given product, you must look at the Customer
level.
ClearAll
The
calculation script should accomplish the following:
1) Turn intelligent calculation off because of multiple passes on blocks.
2) To enhance performance, add a command to make the calculator aggregate missing
values, as there are no upper-level inputs to protect.
3) Declare allocation variables.
4) Focus on the Bud get scenario.
25936855.doc
Confidential
Adaequare, Inc
Page 48 of 132
48
25936855.doc
Confidential
Adaequare, Inc
Page 49 of 132
49
Exercise solution
Module 1
Exercise - Building a Scenario Dimension
In this exercise, you build a Scenario dimension and set up a
variance calculation for the Sales database. This exercise assumes
that you have the Sales outline open.
Building a Scenario Dimension
1) Select Year Tot .
2) Click Add Sibling .
3) Type Scenario in the text box.
4) Press Enter twice.
5) Select Scenario .
6) Click Add Child .
7) Add these children to Scenario:
Current Year , Prior Year , Forecast , Budget , and Scenario Variances
8) Select Scenario Variances .
9) Click Add Child .
10) Add these children to Scenario Variances:
Act Vs Bud , Act Vs Fcst , and Bud Vs Fcst .
11) Select Act Vs Bud .
12) Click Add Child .
13) Add these children to Act Vs Bud: Current Year and Budget .
14) For both children of Act Vs Bud, open the Member Properties dialog box and set
the storage type to Shared Member .
15) Select the Budget shared member.
25936855.doc
Confidential
Adaequare, Inc
Page 50 of 132
50
Confidential
Adaequare, Inc
Page 51 of 132
51
OK .
OK .
Bud Vs
25936855.doc
Confidential
Adaequare, Inc
Page 52 of 132
52
Accounts .
25936855.doc
Confidential
Adaequare, Inc
Page 53 of 132
53
10) Compare the formulas and entries for computing Gross Sales in Excel to the
Accounts model.
Create Members Through Net Sales Using Unary Operators
1) Create Discounts as a sibling of Gross Sales.
2) Add children to Discounts named
Confidential
Adaequare, Inc
Page 54 of 132
54
11) Change the Consolidation property of the Discounts member to (-) Subtraction .
Analysis worksheet
2) Create siblings of Net Sales : Direct Labor, Material, Overhead, Cost Of Sales,
Material Variances, Labor Variances, Overhead Variances, Obsolete Charges,
Inventory Adjustments, Other CGS, Gross Margin, Gross Margin % .
3) Move Direct Labor , Material , and Overhead to children of Cost Of Sales .
4) Move Material Variances, Labor Variances, Overhead Variances, Obsolete
Charg es and Inventory Adjustments to children of Other CGS .
5) Move Net Sales, Cost of Sales and Other CGS to children of Gross Margin .
6) Add children to Direct Labor named
7) Add children to Material named
Matl/Unit .
and
25936855.doc
Confidential
Adaequare, Inc
Page 55 of 132
55
Member
Gross Margin
Gross Margin
%
Property Settings
Set the Data Storage property to
Label Only.
Set the Consolidation property to
ignore (~).
Set the Consolidation property to
ignore (~).
Gross
Margin
Cost Of Sales
Other CGS
Direct
Labor
Units
Labor/Unit
Material
Units
Matl/Unit
Overhead
Direct Labor
Overhead
Rate
Confidential
Adaequare, Inc
Page 56 of 132
56
25936855.doc
Confidential
Adaequare, Inc
Page 57 of 132
57
LoadRule/FamGen.xls file.
25936855.doc
Confidential
Adaequare, Inc
Page 58 of 132
58
Dimension
25936855.doc
Confidential
Adaequare, Inc
Page 59 of 132
59
5) Click OK .
You return to the Data Prep Editor.
Associating Field Headers with Dimensions and Generations
1) Select any member or the column header for Field 1, and then select Field >
Properties .
Field Number: 1 is displayed above the Field Definition area.
2) Select the Dimension Build Proper ties tab.
3) In the Dimension list, double-click Product .
Product is displayed in the Dimension area.
25936855.doc
Confidential
Adaequare, Inc
Page 60 of 132
60
4) In the Field type section, double-click Generation , for the generation Number,
enter 2 .
5) Click Next .
Field Number: 2 is displayed above the Field Definition area.
6) For Field 2, select Product for the Dimension, Property for the Field Type, and
2 for the Number. The property for the preceding generation 2 member is set.
7) Click Next .
Field 3 is displayed.
8) Continue the process for the subsequent fields using the information in the following
table:
Field #
3
4
5
6
Field Type
Generation
Generation
Generation
Alias
Generation
3
4
5
5
Dimension
Product
Product
Product
Product
9) Click OK .
You return to the Data Prep Editor.
Ignoring the First Header Row
1) Select Options > Data source properties .
The Data Source Properties dialog box is displayed.
2) Select the Header tab.
3) In the Header Lines group, enter
4) Click OK .
You return to the Data Prep Editor.
Saving the Load Rule
1) Select Options > Validate to validate the load rule.
2) Correct any errors noted.
3) When you receive the message, The rules file is correct for
dimension building, click OK .
4) Select File > Save .
5) Save the file as Fam_Gen on the Essbase Server to the Sales
25936855.doc
Confidential
Adaequare, Inc
Page 61 of 132
61
database.
The file type RUL is automatically set up by Essbase.
Confidential
Adaequare, Inc
Page 62 of 132
62
4) On the Analytic Server tab, select the Fam_Gen.rul file from the list.
5) Note the location of the dimbuild.err file directory. Review this file if errors occur
during the loading process.
6) Click OK .
If the load fails, open the error file and make corrections, and then try again
7) Expand the Product dimension to view the loaded changes.
The outline should appear similar to the following sample:
If the load did not process correctly, you may close the outline without saving changes.
Module 2
Exercise (Optional)
Using the
Level Build
Method
In
this
exercise, you
review
the
level
rule
structure and
redo the Family Total Rollup using the level load rule. This exercise assumes that you
have the Essbase Administration Services Console open and the Bigcorp application
and Sales database selected.
Reviewing the Level Load Rule Structure
1) Select File > Open .
25936855.doc
Confidential
Adaequare, Inc
Page 63 of 132
63
2) Click
System .
File
3)
Select
Fam_Lev.rul (in
the BCI\LoadRule
directory)
and
click OK .
4) If prompted,
select
English
(Latin1) for File
Encoding.
The Data Prep
Editor
is
displayed.
5) Select File >
Open data file .
The Open dialog box is displayed.
6) On the File System tab, select Excel sheets (*.xls) in the Files of type list.
7) Locate and select the FamLev.xls file in the BCI\LoadRule directory.
8) Click OK to open the FamLev.xls file
9) Review the load rule structure and contrast to the Fam_Gen
load rule.
Columns are organized bottom-up, left to right.
10) Select File \ Close .
The Data Prep Editor closes
25936855.doc
Confidential
Adaequare, Inc
Page 64 of 132
64
2) Click Find Data File and select the FamLev.xls file located in the
BCI\LoadRule directory.
3) Click Find Rules File .
The Open dialog box is displayed.
4) On the File System
BCI\LoadRule directory.
Fam_Lev.rul
5) Note the location of the dimbuild.err file directory. Review this file if errors
occur during the loading process.
6) Click OK.
If the load fails, open the error file, make corrections, and then try again.
7) Expand the Product dimension.
25936855.doc
Confidential
Adaequare, Inc
Page 65 of 132
65
If no errors occurred, the Family Total member and all its children are added back
into the Sales outline.
Confidential
Adaequare, Inc
Page 66 of 132
66
25936855.doc
Confidential
Adaequare, Inc
Page 67 of 132
67
ConfigPC.xls
Updating
Outline
the
Confidential
Adaequare, Inc
Page 68 of 132
68
2) Click Find Data File and select the LinePC.xls file located in the BCI\LoadRule
directory.
3) Click Find Rules File .
The Open dialog box is displayed.
4) On the Analytic Server tab, select the Par_Ch.rul file from the list.
5) Note the location of the dimbuild.err file directory. Review this file if errors occur
during the loading process.
6) Click OK .
If the load fails, open the error file, make corrections, and then try again.
7) Expand the Product dimension
Shared Members are automatically created.
8) Save the Sales outline.
Confidential
Adaequare, Inc
Page 69 of 132
69
2) Select Options > Associate outline and associate the rule with the
Sales database.
3) Select File > Open data file and double-click Minty.txt (located on
the File System tab in the LoadRule directory).
4) Select View > Dimension build fields .
Replicating Fields Needed to Create Unique Members
1) Select Field 1 and then select Field > Create using join .
2) Click OK .
Field 1 is duplicated.
3) Repeat steps 1 and 2.
You now have three fields containing the first record,
Clorox.
4) Select Field 4 and then select Field > Create using join .
5) Click OK .
Two copies of this field now exist.
Moving Members
1) Select Field 4 and then select Field > Move .
2) Click Up to move the field between
Field 2 and Field 3.
3) Click OK .
Confidential
Adaequare, Inc
Page 70 of 132
70
3) Repeat steps
1
and
2,
inserting
a
blank
space
between
the
current Field 5
and
Field 6
and
between
Field 6
and
Field 7 .
25936855.doc
Confidential
Adaequare, Inc
Page 71 of 132
71
25936855.doc
Confidential
Adaequare, Inc
Page 72 of 132
72
8) Click OK .
9) Select Options >
Validate .
10) Correct any errors
listed.
Loading the Clorox
Minty Hierarchy to
the Mint Dimension
1) Save the load rule as Loadmint to the Essbase Server under the Sales database.
2) Select File > Close .
3) In the Sales outline, select Outline > Update Outline .
4) Click Find Data File and select the Minty.txt file located in the
BCI\LoadRule directory.
5) Click Find Rules File .
The Open dialog box is displayed.
6) On the Analytic Server tab, select the loadmint.rul file from the list.
7) Note the location of the dimbuild.err file directory. Review this file if errors occur
during the loading process.
8) Click OK .
If the load fails, open the error file, make corrections, and then try again.
9) Expand Mint and compare your results with the following outline.
25936855.doc
Confidential
Adaequare, Inc
Page 73 of 132
73
25936855.doc
Confidential
Adaequare, Inc
Page 74 of 132
74
7) Right-click Customer and select Edit properties to set the properties for the
Customer dimension. The Dimension Properties dialog box is displayed.
8) Select the Dimension Properties tab.
9) In the Data Storage area, select Label Only .
10) In the Configuration area, select Sparse .
11) Click OK .
The Dimension Properties dialog box closes.
12) Click OK
The Dimension Build Settings dialog box closes and you return to the Data Prep Editor.
13) Select Options > Dimension build settings and then select the
Dimension Build Settings tab.
14) In the Dimension list, double-click Customer and confirm that the Build Method
is set to Use Generation References .
15) Click OK .
You return to the Data Prep Editor
Confidential
Adaequare, Inc
Page 75 of 132
75
11) Select the new Field 3 and then select Field > Create Using Text .
12) In the Text in field text box, type ~ (tilde).
13) Click OK .
A new Field 3 is inserted.
14) Select Field 2
Properties .
Field >
Confidential
Adaequare, Inc
Page 76 of 132
76
For
Confidential
Adaequare, Inc
Page 77 of 132
77
25) Click OK .
You return to the Data Prep Editor.
26) Select Options > Dimension build settings .
27) Select the Dimension Build Settings tab.
28) In the Dimension list, double-click Customer .
29) Select Allow Property Changes .
30) Click OK .
Saving
and
Loading
the
Customer
Dimension
1)
Select
Options >
Validate .
2) Correct
any errors
that appear
in
the
validation
dialog.
3)
When
you receive
the
message,
The rules file is correct for dimension building, click OK .
4) Save the load rule to the Essbase Server as Channel .
5) Select File > Close .
The Data Prep Editor closes.
6) In the Sales outline, select
25936855.doc
Confidential
Adaequare, Inc
CusChan.xls
Page 78 of 132
78
Confidential
Adaequare, Inc
Page 79 of 132
79
2) Add the following children to Region Total: Mid West , South , East , and West
3) Select Region Total .
4) Right-click and select Edit member properties .
5) Set the Dimension type to
6) Click OK .
If you receive a warning message, click Yes.
7) Select Customer .
8) Right-click and select Edit member properties .
9) Select the Attributes tab and assign Region Total to the Customer dimension.
25936855.doc
Confidential
Adaequare, Inc
Page 80 of 132
80
4) Select
View >
Dimension build fields to set the mode for loading members to the outline.
Assigning the Build Method
1) Select Options > Dimension Build Settings , and then select the Dimension
Build Settings tab.
2) Double-click Customer .
3) In the Build method section, select Use level references .
4) In the Attribute members section, select Allow association changes and Do not
create members .
25936855.doc
Confidential
Adaequare, Inc
Page 81 of 132
81
5) Click OK .
You return to the Data Prep Editor.
Performing Field Edits
1) Select Field 2 and select Record > Reject .
2) Set the Type to String .
3) In the String/Number
Region Total .
5) Click OK .
You return to the Data Prep Editor.
Defining the Field Column Properties
You want to assign the Region Total attributes to the Level 0 customers.
1) Highlight any item in field 1.
2) Select Field > Properties
3) Select the Dimension Build Proper ties tab.Information for Field Number 1 is
displayed.
4) In the Dimension section, double-click Customer to select.
5) In the Field Type section, double-click Level .
6) In the Number text box, type 0 .
7) Click Next .
8) In the Dimension section, double-click Customer .
9) In the Field Type
dimensions).
section, select
Region Total
Confidential
Adaequare, Inc
Page 82 of 132
82
11) Click OK
2) Click Find Data File and select the CusReg.xls file located in the BCI\LoadRule
directory.
3) Click Find Rules File .
The Open dialog box is displayed.
4) On the Analytic Server tab, select AttReg.rul from the file list.
5) Note the location of the dimbuild.err file directory. Review this file if errors occur
during the loading process.
6) Click OK .If the load fails, open the error file, make corrections, and then try again.
7) To verify that region attributes were added for customers, expand the Customer
dimension
25936855.doc
Confidential
Adaequare, Inc
Page 83 of 132
83
Confidential
Adaequare, Inc
Page 84 of 132
84
5) Set the mode for loading members to the outline ( View > Dimension build fields ).
6) Skip the first header row in the data source (
Confidential
Adaequare, Inc
Page 85 of 132
85
5) Under Name, click Click here to add and type Capacity Total .
6) In the Type drop-down list, select
Numeric .
7) Click OK .
You return to the Dimension Build Settings dialog box.
8) Click OK .
You return to the Data Prep Editor.
25936855.doc
Confidential
Adaequare, Inc
Page 86 of 132
86
Product .
Confidential
Adaequare, Inc
Page 87 of 132
87
4) Click Down to move Field 3 into the bottom position, and then
click OK .
25936855.doc
Confidential
Adaequare, Inc
Page 88 of 132
88
2) On the Dimension Build Properties tab, complete the field properties as indicated in
this table:
Field # Dimension Field Type Number
Field 1 Capacity Total Parent 0
Field 2 Capacity Total Child 0
Field 3 Product Level 0
Field 4 Product Capacity Total 0
You may need to expand the Attribute dimensions list for Field 4 to find and doubleclick Capacity Total.
3) When all field properties are assigned, click OK .
Confidential
Adaequare, Inc
Page 89 of 132
89
2) Click Find Data File and select the attcap.xls file located in the BCI\LoadRule
directory.
3) Click Find Rules File .
The Open dialog box is displayed.
4) On the Analytic Server tab, select AttCap.rul from the file list.
5) Note the location of the dimbuild.err file directory. Review this file if errors occur
during the loading process.
6) Click OK .
If the load fails, open the error file, make corrections, and then try again.
7) To verify that the dimension build was successful, expand the Product dimension.
25936855.doc
Confidential
Adaequare, Inc
Page 90 of 132
90
Data files can come from a variety of sources and may have very different structures
and challenges. In this exercise, you create data load rules for three files with different
structures. Some of the challenges you may encounter are:
Incorrect format of some data fields The need to ignore some fields and rows in the file
Missing dimension information needed for a successful load
Try to identify as many specific challenges as possible before beginning the exercise.
This exercise assumes that you have the Administration Console open and the Bigcorp
application and Sales database selected.
Creating a New Load Rule for Budget Data
1) Select File > New > Scripts > Rules file .
The Data Prep Editor is displayed.
2) Select Options > Associate outline and associate the rule with the
Sales database.
3) Select File > Open data file .
4) Open Budget.txt (located in the BCI\LoadRule directory).
25936855.doc
Confidential
Adaequare, Inc
Page 91 of 132
91
5) On the View menu, verify that there is a check mark next to Data load fields .
This is the correct mode setting for creating a load rule that loads data.
Ignoring the Extra Header Row
1) Select Options > Data source properties .
2) Select the Header tab.
3) For Number of lines to skip , type 1 .
4) Click OK .
You return to the Data Prep Editor.
Assigning Field Properties
5) Select Field 1 and then select Field > Properties .
6) Select the Data Load Properties tab.
7) Double-click the Customer dimension.
Customer is copied into the Field name text box.
8) Click Next .
9) Repeat steps 7 and 8 to set Field 2, Field 3, and Field 4 to Product , Yea r Tot ,
and Accounts , respectively.
10) Click Next until Field 5 is the selected field.
25936855.doc
Confidential
Adaequare, Inc
Page 92 of 132
92
25936855.doc
Confidential
Adaequare, Inc
Page 93 of 132
93
5) Click OK .
You return to the Data Prep Editor.
Save the Load Rule
1) Select Options > Validate .
2) Correct any errors listed.
3) Save the rule as Budget on the Essbase Server under the Sales database.
25936855.doc
Confidential
Adaequare, Inc
Page 94 of 132
94
Sales database.
25936855.doc
Confidential
Adaequare, Inc
Page 95 of 132
95
Setting Up a
Dynamic
Header
and
Fixing Member
Names
If the header record in the data source matches the member names in your Essbase
database, you can direct the load rule to read the information in the source file rather
than manually creating field names. This method cuts down on maintenance and allows
you to store fewer load rules.
1) Select Options > Data source properties , and then select the Header tab.
2) Set Record containing data load field names to 1.
3) Click OK .
Confidential
Adaequare, Inc
Page 96 of 132
96
5) On the Global Properties tab, set up a rule to replace CustID- with nothing. You do
not need to select the Case Sensitive, Match Whole Word, or Replace All Occurrences
options.
6) Click OK .
The customer names appear scrubbed of their prefix and ready to load into the
database.
7) Validate your
load rule and correct any errors listed.
8) Save the rule as PriorYr on the Essbase Server under the Sales database.
9) Select File > Close .
Loading the Data
1) Right-click the Sales database and select Load data .
2) Click Find Data File and then select PriorYr.txt from the File System tab
(located in the BCI\LoadRule directory).
3) Select Use Rules .
4) Click Find Rules File , select the Analytic Server tab, and then select the
PriorYr.rul load rule.
5) Click OK .
The load rule is executed. A message informs you that the files loaded with no errors
and provides the location of the data file.
6) Click Close.
25936855.doc
Confidential
Adaequare, Inc
Page 97 of 132
97
Sales database.
4) Click OK .
5) On the View menu, clear the Ignored Fields check box.
The ignored fields are removed from the Data Prep Editor.
6) Set the data load properties of the remaining fields as follows:
Confidential
Adaequare, Inc
Page 98 of 132
98
Field1 Scenario
Field2 Product
Field3 Customer
Field4 Year Tot
Field5 Units
Field6 List Price
Field8 Discount %
Field11 Labor/Unit
Field13 Matl/Unit
Field15 Overhead Rate
Confidential
Adaequare, Inc
Page 99 of 132
99
8) Save the rule as Loadcorp on the Essbase Server under the Sales database.
9) Select File > Close .
Loading the Data
1) Right-click the Sales database and select Load data .
2) Click Find Data File , select the File System tab, and then select Actual.txt and
Forecast.txt (located in the BCI\LoadRule directory).
3) Select Use Rules .
4) Click Find Rules File , select the Analytic Server tab, and then select the
Loadcorp load rule.
5) Click OK .
The load rule is executed. A message informs you that the files loaded with no errors.
6) Click Close .
You return to the Administration Console.
Verifying the Data
1) Select File > Open .
2) On the File System tab, browse to the BCI\LoadRule directory.
3) Select CalcAll.csc and click OK .
The Calculation Script Editor opens.
4) Select Options > Execute script .
The Execute Calculation Script dialog box is displayed.
5) Select Bigcorp and Sales from the Application and Database drop-down lists,
respectively.
6) Click OK .
7) Close the CalcAll calculation script.
8) In the Enterprise View, right-click the Sales database and select Preview data.
9) Double-click Scenario to expand it and verify there is data for Current Year, Prior
Year, Forecast, and Budget scenarios
25936855.doc
Confidential
Adaequare, Inc
25936855.doc
Confidential
Adaequare, Inc
Module 3
Exercise - Spreadsheet Reporting Challenge 1: Formats
This exercise assumes that you are logged on to the Bigcorp application and Sales
database and are working in the Essbase Spreadsheet Add-in.
There are a variety of ways to produce this challenge report. This is one possible
solution. This exercise assumes that you have the SSReports.xls file open.
1) Select the Challenge1 worksheet.
2) Select Essbase > Retrieve .
3) Select Product .
4) Select Essbase > Pivot .
Product switches axes.
5) Select Year Tot .
6) Select Essbase > Pivot .
Year Tot switches axes.
7) Select Customer .
8) Select Essbase > Zoom in .
9) Select Customer .
10) Select Essbase > Pivot .
Customer switches axes.
11) Select Channel Total .
12) Select Essbase > Zoom in .
The children of Channel Total are displayed.
13) Select OEM .
14) Select Essbase > Zoom in .
25936855.doc
Confidential
Adaequare, Inc
25936855.doc
Confidential
Adaequare, Inc
Tab Name
Labels 1
Diagnosis
The Customer dimension is
missing.
Resolution
The retrieval works as is.
Essbase adds the missing
Customer dimension at the
top level.
Labels 2
Since no customer is
recognized, Essbase adds
Customer at the top level
when it retrieves. Correct the
misspelling (and, if
necessary, remove the extra
customer that Essbase
added).
Labels 3
Labels 4
Labels 5
Labels 6
Labels 7
Labels 8
Confidential
Adaequare, Inc
Confidential
Adaequare, Inc
26) In the
Members
section, expand Quar ter
2 and select Apr .
27) Click Add .
Apr moves under Rules.
28) In the View Method section, select By Dynamic Time Series.
29) In the Members section, select Y-T-D .
25936855.doc
Confidential
Adaequare, Inc
34)
OK .
The
Click
selected
Members
section,
Confidential
Adaequare, Inc
45) Click OK .
The Essbase Member Selection dialog box is displayed.
25936855.doc
Confidential
Adaequare, Inc
46) Click OK .
Configuration A names beginning with LIGHT and MAV replace Product.
47) Select Essbase > Retrieve .
Exercise - Designing Queries
You have been asked by the Channels organization to modify the
previous report to include a list of all level 0 products grouped by
the customers in the OEM channel. In addition, they want the
products sorted within each group in descending order based on
the YTD totals, and they want to filter out rows with no YTD totals.
Because this report requires nested dimensions in the rows and
server-based sorting, Essbase Query Designer is the best tool for the
job.
On the Query Designer tab of SSReports.xls, build the report to the
following specifications:
Query Section
Dimension Members
Header
Dimensions
Column
Dimensions
Row Dimensions
Data Filtering
Data Sorting
25936855.doc
Confidential
Adaequare, Inc
Selecting Members
1) Double-click the Accounts dimension (in either the layout panel or the navigation
panel).
2)
25936855.doc
Confidential
Adaequare, Inc
Units .
3) Double-click Units .
Units is displayed under Selection Rules.
4) Repeat this process for Scenario , selecting Current Year .
5) In the navigation panel, click
Customer .
Year Tot .
10) For Yea r Tot , select Jan , Feb , Mar , and Apr .
You can select the Qtr 1 children by adding Qtr 1 to the selection rules, then rightclicking to select children.
11) Right-click in the Members box and select View by > Dynamic Time series
25936855.doc
Confidential
Adaequare, Inc
Confidential
Adaequare, Inc
Filtering Data
1) In the navigation panel, select
Data Filtering .
Sorting Data
1) In the navigation panel, select
Data Sorting .
25936855.doc
Confidential
Adaequare, Inc
4) Click OK .
5) In the navigation panel, right-click any member in the query and then select Apply
Query .
Module 4
Exercise - Adding a Back Calculation
Although you have rolled up all dimensions in the outline, some data is not
aggregating correctly. In this exercise, you modify the CalcCorp.csc file to correct rates
that are aggregating incorrectly.
1) Open the CalcCorp calculation script.
2) After the CALC DIM statement, add a block of formulas to derive the correct rates
for the following accounts:
List Price , Discount % , Labor/Unit , Matl/Unit ,
Overhead Rate , Gross Margin % .
Enclose the group of formulas in parentheses to prevent jump-ahead behavior from the
CALC DIM statement.
One possible solution to this exercise is a script that reads as follows:
/* Housekeeping */
SET UPDATECALC OFF;
/* The Main Rollup */
CALC DIM (Accounts, Year Tot, Customer, Product);
/* The Back Calc */
(
Gross Margin % = Net Sales / Gross Margin;
List Price = Gross Sales / Units;
Discount % = Discounts / Gross Sales;
Labor/Unit = Direct Labor / Units;
Matl/Unit = Material / Units;
Overhead Rate = Overhead / Direct Labor;
)
3) Save the script.
4) Calculate CalcCorp and check your results on the Anatomy.xls file:
25936855.doc
Confidential
Adaequare, Inc
Confidential
Adaequare, Inc
Confidential
Adaequare, Inc
Formula
Unit Mix
Sales $ Mix
2) Make both Unit Mix and Sales $ Mix and enable Two Pass calculation .
3) Save the outline and check your results on the ANCESTVAL It
Anatomy.xls file.
tab in the
Since the calculations are dynamic, you do not have to recalculate them.
Confidential
Adaequare, Inc
Confidential
Adaequare, Inc
2) Click Ye s .
3) Right-click the Dynamic database and select Start . The Confirm Database Start
dialog box is displayed.
4)Click Ye s .
5) Open the Dynamic outline and review the structure.
Confidential
Adaequare, Inc
9) View the results and investigate all nonzero values. Correct values that were not
calculated properly.
A zero indicates that there is no difference between the no dynamic and the dynamic
spreadsheet values.
25936855.doc
Confidential
Adaequare, Inc
Solutions
The comparison spreadsheet should show several nonzero amounts in the Act vs Fcst
column as well as #VALUE in the Other CGS and Balance Sheet rows. The Other CGS
and Balance Sheet rows are correct. A review of the no dynamic and the dynamic
spreadsheets for those rows show that both of them have no data (N/A). The nonzero
numeric values indicate a problem with the dynamic data. The problem is created
because the calculation order is sparse, then dense. There are two possible solutions for
correcting the calc.
Solution #1 - Setting Two-Pass Calculations
In this solution, you set the dynamic calculation shadow rates to two-pass calculations.
Since the spreadsheet uses Act vs Fcst, these steps are taken only to change the Act vs
Fcst outline member and recalculate the result. You would receive the same errors with
Act vs Bud or Bud vs Fcst if they were not also changed.
1) Open the Dynamic outline.
2) Expand Scenario to view all members.
3) Select Act vs Fcst .
4) Click Two-Pass Calculation .
5) Click Save .
6) Right-click the Dynamic database and select Execute calculation .
The Execute Database Calculation dialog box is displayed.
7) Select (Default) .
8) Click OK .
9) Return to the Aggressive.xls workbook.
10) Select the Dynamic spreadsheet.
11) Select Essbase > Retrieve .
25936855.doc
Confidential
Adaequare, Inc
3) Scroll down to the dimension storage types and, next to Scenario, click Sparse .
4) From the drop-down list, select
Dense .
5) Click Verify .
6) Click Save .
The Restructure Database dialog box is
displayed.
Confidential
Adaequare, Inc
Module 5
Exercise - Manipulating Data with Calculation Scripts
Copying data from one scenario to another is often a handy way to quickly populate a
scenario with useful data that may then be manipulated as necessary. In the first part of
this exercise, you create a budget by copying prior year Actual data into the Budget
scenario and then modifying it. In the second part, you populate a Rolling Forecast
scenario with a combination of Current Year (Actuals) and Budget data.
Loading and Calculating Data
1) In the Administration Console, right-click the
Sales database
and select Clear > All data .
The Confirm Database Clear dialog box is displayed.
2) Click Ye s .
3) Right-click the Sales database and select Load data .
The Data Load dialog box is displayed.
4) Load Actual.txt and Forecast.txt to Sales using the loadcorp.rul rules file (all
located in the BCI\CalcIt\AdvancedCalcs directory).
5) Right-click the Sales database and select Execute calculation .
The Execute Database Calculation dialog box is displayed.
6) Select CalcAll .
7) Click OK .
Reviewing the Workbook
1) Open Calculations.xls (found in the
BCI\CalcIt\AdvancedCalcs directory).
2) Select the Datacopy spreadsheet.
3) Log on to the Bigcorp application and
25936855.doc
Confidential
Adaequare, Inc
Sales database.
4) Select Essbase > Retrieve .
BudcopyA .
Confidential
Adaequare, Inc
Prior
Page 125 of 132125
6) Click Set .
7) Click Close .
Creating a Rolling Forecast from Actual and Budget Data
1) Open a new calculation script.
The
Calc
Script
Editor is displayed.
2)
Enter
the
following formula:
/*this is a generic calc to copy all data prior to the current month from
actuals for current year to rolling forecast followed by a copy of all budget
data for current year and the following months to rolling forecast*/
FIX (Jan:&PriorMonth)
DATACOPY Current Year TO Rolling Forecast;
ENDFIX
FIX (&CurrentMonth:Dec)
DATACOPY Budget TO Rolling Forecast;
ENDFIX
3) Click Save .
The Save As dialog box is displayed.
4) Save the script to the Sales database as
BudcopyB .
Confidential
Adaequare, Inc
Datacopy spreadsheet,
Confidential
Adaequare, Inc
(Customer, 0)));
Extra Credit
Units
(
IF (Units <> #Missing AND @ISLEV (Customer, 0))
"Customer Count" = 1;
ELSE /* set the customer count to missing when units are missing */
"Customer Count" = #Missing;
ENDIF
)
CALC ALL;
Exercise - Allocating Data
Clearing All Data
For testing purposes, you need a separate calculation script called
ClearAll that clears all data from the database. The solution is as
follows:
CLEARBLOCK ALL;
Building an Allocation Script
There are numerous ways to write this calculation script. The
following example represents one possible solution:
/*HOUSEKEEPING.*/
/*Turn intelligent calc off because of multiple passes on blocks.
Set aggregate missing on to enhance performance. No upper level inputs to
protect.
Declare allocation variables.*/
SET UPDATECALC OFF;
SET AGGMISSG ON;
VAR AllocUnits;
VAR AllocSales;
/*THE BASELINE FIX.*/
FIX (Budget)
/*THE NORMALIZATION.*/
/*Push down rates loaded at upper levels.*/
"List Price" = @PARENTVAL (Customer, "List Price");
25936855.doc
Confidential
Adaequare, Inc
Confidential
Adaequare, Inc
Confidential
Adaequare, Inc
Overhead Variances
/* straight allocation combined with a ratio allocation */
set updatecalc off;
FIX( @children("Family Total"))
"Overhead Variances"="Overhead Variances"->"Family Total"->"Channel Total"/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
Endfix
/* note that the 0 in the fix is to focus on level 0 descendants of family total*/
FIX(@descendants("Family Total",0))
"Overhead Variances"=@MDANCESTVAL(2,Product,3,Customer,2,"Overhead
Variances")*(units/@MDANCESTVAL(2,Product,3,Customer,2,Units));
endfix
Extra Credit
FIX( @children("Family Total"))
"Obsolete Charges"="Obsolete Charges"->"Family Total"->"Channel Total"/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
Endfix
FIX(@children(Performance))
"Obsolete Charges"="Obsolete Charges"->Performance->Customer/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
endfix
FIX(@children(Value))
"Obsolete Charges"="Obsolete Charges"->Value->Customer/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
endfix
FIX(@children(LIGHTBOLT))
"Obsolete Charges"="Obsolete Charges"->Lightbolt->Customer/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
endfix
FIX(@children(THUNDERBALL))
"Obsolete Charges"="Obsolete Charges"->Thunderball->Customer/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
endfix
FIX(@children(ROADRANGER))
"Obsolete Charges"="Obsolete Charges"->Roadranger->Customer/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
endfix
FIX(@children(MAVRIDER))
"Obsolete Charges"="Obsolete Charges"->Mavrider->Customer/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
25936855.doc
Confidential
Adaequare, Inc
endfix
FIX(@children(FIREBRAND))
"Obsolete Charges"="Obsolete Charges"->Firebrand->Customer/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
endfix
A cleaner Solution under Solution 2:
FIX(@children("Family Total"))
"Obsolete Charges"="Obsolete Charges"->"Family Total"->"Channel Total"/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
Endfix
FIX(@children(Performance),@children(Value))
"Obsolete Charges"=@mdancestval(2,product,3,customer,2,"Obsolete
Charges")/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
endfix
FIX(@GENMBRS (Product, 5))
"Obsolete Charges"=@mdancestval(2,product,4,customer,2,"Obsolete Charges")/
@count(SKIPMISSING,@Range(units,@ISIBLINGS(@Currmbr(Product))));
endfix\
25936855.doc
Confidential
Adaequare, Inc