Step 3: Open data load file or the SQL data source file
Step 4: Set the Data Source Properties
Step 5: Set the View to Dimension build fields
Step 6: Select Dimension build method
Generation reference
Level reference
Parent-child reference
Step 7: Format file
Step 8: Associate fields with dimensions
Step 9: Validate the Dimension Build rules file
Update your outline using a rules file
Update your outline using the EAS Outline Editor
Update using MaxL Shell
Executing MaxL from EAS editor
Executing MaxL from command prompt
Attribute dimensions
User Defined Attributes (UDA)
Dynamic Time Series
Shared members
Summary
Chapter 4: Loading Data into Essbase
Make your data Essbase-friendly
Essbase-friendly thoughts
Essbase-friendly example
Types of data sources
Type of data
Types of files used for data loads
Relational databases
Data load methods
Data file freeform (no load rule)
Essbase export and import (no load rule)
Structured data load (load rule used)
Microsoft Excel Lock and Send (no load rule)
Building your first data load rules file
Step 1: Starting the Data Prep Editor
Step 2: Associating the data load rules file
Step 3: Opening data load file or the SQL
data source file
Step 4: Setting the View to Data Load Fields
Step 5: Setting the Data Source Properties
Step 6: Updating the Data Load Settings
Step 7: Setting the Data Load Values
Clearing Data Combinations
Header Definition
Step 8: Associating fields with Data Load Properties
Global properties
Data Load Properties
Step 9: Validating the data load rules file
Step 10: Saving the data load rules file
Loading data into your database
Using the EAS to load data into your
Essbase cube
Loading data using MaxL
Data Load vs. Dimension Build
Summary
Chapter 5: Calculating your Essbase Cube
Calculating your database
The Essbase calculation script
Essbase outline member formula
Calculation types explained
Calculation Scripts
Stored data member formula
Dynamic Calc and Dynamic Calc and Store
Essbase calculation terminology
Default database calculation script
Calc All
Calculate/Aggregate dimension
Essbase Calc commands and functions
Data declarations
Control flow
FIX/ENDFIX
EXCLUDE/ENDEXCLUDE
Functional
SET command functions
Conditionals
IF/ENDIF
Boolean
Relationship functions
Operators
Member set
Range (Financial)
Forecasting
Statistical
Date and Time
Miscellaneous
Order of calculation
Two-Pass Calc
Using Substitution Variables
Substitution Variables using EAS
Substitution Variables using MaxL
Create variables at the server level
Create variables at the application level
Create variables at the database level
Displaying the Substitution Variable and its value
Displaying the Substitution Variable in the
SQL editor
Building your first Calculation Script
Writing and saving a Calculation Script
Executing your Calculation Scripts
Running Calculation Scripts manually
using EAS
Running a Calculation Script using an Essbase Command Script (EssCmd)
What the EssCmd script looks like
Running a Calculation Script using a
MaxL Script
Running a Calculation Script using the Essbase API
Running a Calculation Script from
Microsoft Excel
Running a Calculation Script through the
Essbase Add-In
Running a Calculation Script using Microsoft
Excel VBA
Summary
Chapter 6: Using your Essbase Cube
Using your Essbase database
How do you use your data in the real world
Ad hoc data
Canned reporting
Export data
Forecast analysts
Planning analysts
Budget analysts
Financial analysts
The real target users of your Essbase data
Ways to extract your Essbase data
The Essbase Report Script
How to create an Essbase Report Script
Report script commands and functions
Report layout commands
Data range commands
Data ordering command
Member selection and sorting commands
Format commands
Column or row calculation
Member names and aliases
Building your first Essbase report script
Executing your report scripts
Run reports using EAS
Running a report script using an Essbase command script
Running calc using a MaxL script
Previewing data in EAS
Cubeview
Properties
Summary
Chapter 7: Getting the most out of the Microsoft Excel Add-in
Reporting with the Microsoft Excel Add-in
Connecting to Essbase
Connecting to Essbase from Microsoft Excel
Disconnecting from Essbase
Launching the Essbase Query Designer
Retrieving data from Essbase
Setting the add-in spreadsheet options
Display tab
Zoom tab
Mode tab
Global tab
Selecting Essbase members for your query
Using the Keep Only function
Using the Remove Only function
Zooming in on your data
Zooming out on your data
Pivot Essbase members on your spreadsheet
Flashback: The Essbase Add-in Undo
Locking the data and retrieving
Locking the data
Unlocking the locked data
Sending your data to the database
Running a database calculation
Retrieving your sheet without data
Zooming in on sample data
Linking objects to your data
Creating graphical data representations
Using the currency conversion tool
Custom Microsoft Excel workbook reporting
A final word on the Essbase add-in
Using the Essbase Query Designer
Where do I find the Essbase Query Designer
Creating a query with Essbase Query Designer
Page dimensions
Row dimensions
Column dimensions
Sample query
Report script by-product
Summary
Chapter 8: Automating your Essbase Cube
Essbase command scripts (EssCmd)
Creating an Essbase command script
EssCmd commands and categories
Coding a basic EssCmd
Always remember EssCmd logging
Connecting to an Essbase server
What about error checking
Adding some functional commands
The finished script
Executing an EssCmd
Essbase MaxL scripts
Logging on to the Essbase server
Working with an Essbase application in MaxL
Creating an application
Altering the application
Display application
Drop application
Working with an Essbase database from MaxL
Creating or replacing a database
Altering a database
Display database
Drop database
Working with data in MaxL
Working with database calculations in MaxL
Create calculation
Display calculation
Execute calculation
Drop calculation
Working with user privileges in MaxL
Create user
Alter user
Display user
Drop user
Grant user
Working at the System level with MaxL
Alter system properties
Display system properties
Substitution variables
Executing a MaxL statement
Executing MaxL from Command Prompt
Executing MaxL from EAS
Essbase Application Programming
Interface (API)
Installing the Essbase API
What you should know to use the
Essbase API
What functions are available in the
Essbase API
Essbase API programming tips
Essbase nested coding style examples
Essbase API function declarations
How to code an API function
Essbase API code sample blocks
The sample API subroutine explained
Summary
Chapter 9: Advanced Techniques
Performance tuning your database
The shape of your database outline
The hourglass outline
Database block size
Database configuration settings
Data retrieval buffers
Data cache settings
Data load and storage settings
Partitioning databases
Analytic server configuration file
Configuration categories
Configuration settings to consider
Ports and connections
Logging and error handling
Calculation
Data import/export
Memory management
essbase.cfg memory settings
Summary
Chapter 10: Essbase Analytics Option
What is ASO
Creating an aggregate storage
Application|Database
Hierarchies
Stored hierarchies
Dynamic hierarchies
Outline paging
Aggregation
MDX query language
MDX functions for ASO
MDX function examples
MDX query syntax
Executing an MDX query
Tuples and Sets
Pros and cons of ASO and BSO
Pros and cons of BSO
Pros
Cons
Pros and cons of ASO
Pros
Cons
Summary
Chapter 11: Essbase System 9 Components
Overview of System 9 components
Essbase Analytic Services (Essbase agent)
Essbase Planning
Essbase analytics
Hyperion Application Link/Oracle
Application Link
Oracle Business Rules
Oracle Reports
Essbase Shared Services
Oracle Essbase Provider Services
Essbase Smart Office
Oracle Essbase Financial Reporting
Smart View for Microsoft Office
Summary
Appendix: A New Essbase Companion—Oracle Smart View
Reporting with Oracle Smart View
Adding a data source with the connection manager
Retrieving data using Smart View in
Microsoft Excel
POV Manager
Submitting data and calc scripts in Smart View
Using Smart View in other Microsoft Office products
Index
Nội dung
Calculating your Essbase Cube [ 190 ] In the following screenshot you can see how the vehicle totals are correct because the vehicle dimension has already been calculated: Jan 2009 Feb 2009 Mar 2009 Qtr 1 2009 Sporty Reserved Functional Flashy 2 Door Sedan 4 Door Sedan Worker Player 4X2 Pickup Muddog Climber 4X4 Pickup Total Vehicles 4000 5000 9000 750 1350 2100 12500 350 12850 300 7800 8100 32050 300 7800 8100 4000 5000 9000 750 1350 2100 4000 5000 9000 28200 4000 5000 9000 750 1350 2100 12500 350 12850 300 7800 8100 32050 0 0 0 0 0 0 0 0 0 0 0 0 0 Now that we have the sales rolled up in the vehicle dimension, we can now calculate the Calendar Periods dimension which will roll up the values of the months to the quarters, and then to the years. Can you imagine how the numbers would look if we rolled up the Calendar Periods dimension rst? Jan 2009 Feb 2009 Mar 2009 Qtr 1 2009 Sporty Reserved Functional Flashy 2 Door Sedan 4 Door Sedan Worker Player 4X2 Pickup Muddog Climber 4X4 Pickup Total Vehicles 4000 5000 9000 750 1350 2100 12500 350 12850 300 7800 8100 32050 300 7800 8100 4000 5000 9000 750 1350 2100 4000 5000 9000 28200 4000 5000 9000 750 1350 2100 12500 350 12850 300 7800 8100 32050 8300 17800 26100 5500 7700 13200 25750 2050 27800 4600 20600 25200 92300 This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 2009 8601 ave. p #1, , lubbock, , 79423 Download at Boykma.Com Chapter 5 [ 191 ] Looking at these examples can also give you a good idea of why it is so important to correctly set up your dimensions with regards to the Dense and Sparse settings. You can take solace in the fact that this only applies to BSO databases and there are no Dense or Sparse considerations for ASO databases. ASO databases only contain Sparse dimensions. Using Substitution Variables One of the coolest things in Essbase is the substitution variable. Substitution variables are like global variables that can be dened once and then used anywhere in Essbase you want to. The main use for substitution variables is to create a dynamic, easy to use variable which will change with time. Each variable name will have a value associated with it which can be changed (recreated), displayed or deleted. For example, let's say you have a batch job that runs every day. In this daily job you are loading data, calculating it, and creating a unit report for the current month. Now, can you guess what should be the value of the substitution variable? You got it, it is the Month value from the database time dimension. You set the value of the time variable once and you can use it in the SQL statement in your data load rule le. You can also use its value in the FIX statement in a calc script, and in an Essbase database report script. When you code any one of these scripts, you use the name of the substitution variable in the statement in place of the actual value. This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 2009 8601 ave. p #1, , lubbock, , 79423 Download at Boykma.Com Calculating your Essbase Cube [ 192 ] In Essbase, you can use substitution variables in the following places: • Dimension Build or Data load Rules File (used in the SQL interface) • Calculation Scripts • Report Scripts • Outline Formulas • MDX Queries • Partition Denitions Substitution variables can be dened on a server level, application level, or database level. These variables can be created using EAS, MaxL scripts, or using API calls and Essbase EssCmd scripts. Some rules while creating the variables are: • The value of a substitution variable should not exceed 256 bytes or characters. • The substitution variable value should not begin with the ampersand [ &] character, although all other characters are allowed. • The user should have READ access to the application or database which has the variable and should have ADMINISTRATOR access to read a variable at the server level. Substitution Variables using EAS We have talked a lot about the substitution variable, let us now see how to create a substitution variable using the EAS. 1. In EAS, scroll down to your Essbase server and select it. 2. Click on Actions | Variables | Variable for <YOUR SERVER NAME>. 3. You should see the New Variable screen as shown: This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 2009 8601 ave. p #1, , lubbock, , 79423 Download at Boykma.Com Chapter 5 [ 193 ] 4. For a Server level variable you need to select All Apps from the Application drop box and all dbs from the database drop box. 5. For an Application Level variable you need to select your application from the Application drop box. 6. For a Database Level variable, you rst need to select your application from the Application drop box and then select your database from the Database drop box. 7. To give a Name to the variable, enter sCurMonth and set the Value to 200801. Click OK. 8. The substitution variable is now created on the server. In order to view the substitution variable, select your Server, Click on Actions | Edit | Variables. You will see the Substitution Variables screen as shown: This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 2009 8601 ave. p #1, , lubbock, , 79423 Download at Boykma.Com Calculating your Essbase Cube [ 194 ] 9. To edit a variable which is already created, on the Substitution Variables screen, select the value on the variable you want to change, update the Value and then click on the Set button. 10. To copy a variable, click on the Copy button and the Copy Substitution Variables screen will be displayed (shown below). Select your Application then Database from their respective drop-down boxes. Next, select the Variable name checkbox, check on the Overwrite Exiting value and click OK. To reference a substitution variable from your calc script, you must use the substitution variable's name preceded by an ampersand (&). Substitution Variables using MaxL Now that you are familiar with how to create, drop, and copy a substitution variable using the EAS, let us learn how we can set up a substitution variable at Application, Database, and Server level using the MaxL statement. This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 2009 8601 ave. p #1, , lubbock, , 79423 Download at Boykma.Com . your Essbase Cube [ 190 ] In the following screenshot you can see how the vehicle totals are correct because the vehicle dimension has already been calculated: Jan 20 09 Feb 20 09 Mar 20 09 Qtr. rst? Jan 20 09 Feb 20 09 Mar 20 09 Qtr 1 20 09 Sporty Reserved Functional Flashy 2 Door Sedan 4 Door Sedan Worker Player 4X2 Pickup Muddog Climber 4X4 Pickup Total Vehicles 4000 5000 90 00 750 1350 2100 12500 350 12850 300 7800 8100 32050 300 7800 8100 4000 5000 90 00 750 1350 2100 4000 5000 90 00 28200 4000 5000 90 00 750 1350 2100 12500 350 12850 300 7800 8100 32050 8300 17800 26100 5500 7700 13200 25750 2050 27800 4600 20600 25200 92 300 This. the sole use by Paul Corcorran on 5th July 20 09 8601 ave. p #1, , lubbock, , 794 23 Download at Boykma.Com Calculating your Essbase Cube [ 192 ] In Essbase, you can use substitution variables in