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
Essbase Analytics Option [ 370 ] Hierarchies Dimensions can have one or more hierarchies of the members. Included with your installation of Essbase, you get the sample ASO application called ASOsamp to use as a guide when learning about ASO. In ASO, there are two types of hierarchies: • Stored hierarchies • Dynamic hierarchies An outline dimension in an ASO database can have any number of members and these members can only be set as either stored members or dynamic members. They can even have both of the hierarchies. In order to set the dimension to have both types of hierarchies, you need to enable Multiple Hierarchies Enabled. If no hierarchy is dened, then by default it is tagged as Stored hierarchy. To enable multiple hierarchies, follow these steps: 1. Right-click on the dimension or member name you wish to enable the multiple hierarchies on. Click on Edit member properties…. 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 10 [ 371 ] 2. On the Member Properties screen, under the Hierarchy section, select Hierarchies Enabled from the Hierarchy list box: Stored hierarchies Using Stored hierarchies, the data is aggregated based on the outline structure. The data aggregation and data retrieval is faster. There are a few restrictions when using Stored hierarchies: • Stored hierarchies cannot have member formulas. • Stored hierarchies can have the no-consolidation (~) operator for Label-only members. A member that is label only is merely in the outline as a place holder or to be informational and does not store data. A good example of this is our Calendar Periods dimension. While the root member Calendar Periods is useful to have for information, the data would make no sense rolled upto this level. 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 Essbase Analytics Option [ 372 ] Dynamic hierarchies Using Dynamic hierarchies, the data is not aggregated but is calculated at the time of the data retrieval. Since the data is calculated at the time of retrieve, the response time for the output is longer. The account dimension is always tagged as Dynamic hierarchies and you cannot change the account dimension to stored hierarchy. The advantages of the Dynamic hierarchies are: • Dynamic hierarchies can have formulas. • Dynamic hierarchies can have any consolidation operator. The following screenshot shows an example of how the Dynamic and Stored hierarchies are used in the sample ASO database. In the sample ASO database's case, you can see that the Time dimension has MultipleHierarchies Enabled: Outline paging This is one major difference between a Block Storage application and an Aggregate Storage application that provides a noticeable boost in performance. Unlike a BSO application, where the database outline must be loaded into memory as a single element, the database outlines in ASO databases are created and stored in what can be considered a page-able format. This means that instead of Essbase loading the entire database outline into memory, the page-able outline can be loaded into memory either one page or section at a time. This can free up resources and can help make data retrieval and data aggregations faster by reducing the amount of memory consumed by large database outlines. 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 10 [ 373 ] Aggregation There is no need for complex calculation scripts in an ASO database. Now, you may be wondering how the data gets aggregated without performing any calculated aggregation? How fast will my data get retrieved? In an ASO database, the data gets loaded only into the level 0 (leaf node) cells. When the user attempts to retrieve data at a level higher than the zero level, the data is dynamically aggregated. Also, remember a good portion of this aggregated data is not physically stored in the database. As the database size increases, the dynamic aggregation consumes more time. In order to improve the database performance, you may need to pre-a ggregate the data. MDX query language So is now a good time to spring a new scripting language on you? Of course it is! Okay, so it's not really a whole new language, it's just a piece of the MaxL scripting language we haven't gone over with you yet. You may recall how we've gone over the MaxL scripting language previously. Well, the MaxL scripting language actually has two pieces. These MaxL pieces are known as MaxL DDL for Data Denition Language, which is the piece you are already familiar with and MaxL MDX for Multidimensional Expressions. Why have we not explained something like MDX in-depth already? The reason is that while the DDL piece of MaxL contains many powerful functions that are written in relatively easy to understand syntax and it can easily replace the Essbase Command scripting language (EssCmd) as your primary tool for automating database maintenance and support processes, the MDX piece of MaxL is more of a data querying language. Yes, MDX is very powerful as is DDL, but its usefulness can be debated since there are several other methods of querying data in Essbase that are just as effective and easier or more convenient to use. The Essbase Reports scripting language with the aid of the Essbase Query Designer, is one example that comes to mind as an effective data querying tool. MDX also supports the XML for Analysis (XMLA) API. MDX however, has its place and its place is where it is best suited. The place for MDX is querying ASO Essbase databases. 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 Essbase Analytics Option [ 374 ] MDX functions for ASO As we said earlier, the MDX data query language is a useful tool in its own right. In most cases, the MDX language has equivalent functions for each member set function found in the Essbase Calculation Script language or the Essbase report script language. The following screenshot shows the complete list of MDX data query functions available: Now, look at the functions listed here. They look like a hybrid between Essbase member selection functions and typical SQL functions found in any relational database. Unfortunately, after all of the hard work we've been through getting you to think and act like an Essbase programmer/administrator, we don't want you to slip back into the relational way of thinking. This is only acceptable when querying an ASO database, because it is indeed set up somewhat similar to a relational database in terms of data structure. 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 . querying ASO Essbase databases. This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 20 09 8601 ave. p #1, , lubbock, , 794 23 Download at Boykma.Com Essbase Analytics. methods of querying data in Essbase that are just as effective and easier or more convenient to use. The Essbase Reports scripting language with the aid of the Essbase Query Designer, is one. and is licensed for the sole use by Paul Corcorran on 5th July 20 09 8601 ave. p #1, , lubbock, , 794 23 Download at Boykma.Com Essbase Analytics Option [ 372 ] Dynamic hierarchies Using Dynamic