Вы находитесь на странице: 1из 96

ewuds.

book Page 1 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide

Universal Drill Through Service

Windows
ewuds.book Page 2 Friday, July 9, 2004 3:31 PM

2 Universal Drill Through Service Guide

Copyright Copyright © 2004 Business Objects. All rights reserved.


If you find any problems with this documentation, please report them to Business Objects in
writing at documentation@businessobjects.com.

Trademarks Business Objects, the Business Objects logo, Crystal Reports, and Crystal Enterprise are
trademarks or registered trademarks of Business Objects SA or its affiliated companies in the
United States and other countries. All other names mentioned herein may be trademarks of
their respective owners.
Contains ICU libraries (c) 1995-2003 International Business Machines Corporation and others.
All rights reserved.

Use restrictions This software and documentation is commercial computer software under Federal Acquisition
regulations, and is provided only under the Restricted Rights of the Federal Acquisition
Regulations applicable to commercial computer software provided at private expense. The use,
duplication, or disclosure by the U.S. Government is subject to restrictions set forth in
subdivision (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at 252.227-
7013.

Patents Business Objects owns the following U.S. patents, which may cover products that are offered
and sold by Business Objects: 5,555,403, 6,247,008 B1, 6,578,027 B2, 6,490,593 and
6,289,352.

Part Number 372-10-610-01


ewuds.book Page 3 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 3

Contents

Preface Maximizing Your Information Resources 7


Information resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Useful addresses at a glance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
About this guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Chapter 1 About Drill Through 15


What does the administrator do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
What does the administrator need to know? . . . . . . . . . . . . . . . . . . . . . . . . 19
What is drill through? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Setting up drill through . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

Chapter 2 Drill Through Requirements 29


Normalized relational databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Star schemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
What is a Business Objects universe? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
How cubes and universes relate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

Chapter 3 Designing the Target Universe 41


Designing the target database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Designing a star schema database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Creating the target universe from the database . . . . . . . . . . . . . . . . . . . . . . 46

Contents
ewuds.book Page 4 Friday, July 9, 2004 3:31 PM

4 Universal Drill Through Service Guide

Chapter 4 Building Translation Maps 47


What is UDS Designer? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
What are translation maps? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Mapping from cubes to universes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Building translation maps using UDS Designer . . . . . . . . . . . . . . . . . . . . . . 54
Importing data sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Creating a translation map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Working with existing translation maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Making translation maps available to WebIntelligence . . . . . . . . . . . . . . . . 78

Chapter 5 WebIntelligence in Drill Through 79


Creating WebIntelligence target reports . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Drill through workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

Chapter 6 Managing and Maintaining a Drill Through Environment 89


Why maintenance is necessary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Changes that require updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Problems caused by outdated translation maps . . . . . . . . . . . . . . . . . . . . . 93
Source cube and target cube/universe locations . . . . . . . . . . . . . . . . . . . . 94

Contents
ewuds.book Page 5 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 5

Examples
What are the unit sales of different brands of soccer cleats in 2001 Q1 ? . . 21
Selecting multiple measure cells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Selecting member labels from different dimensions . . . . . . . . . . . . . . . . . . 86
Selecting member labels at the same level . . . . . . . . . . . . . . . . . . . . . . . . . 87
Selecting member labels from the same and different dimensions . . . . . . . 87
Selecting member labels and values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Examples
ewuds.book Page 6 Friday, July 9, 2004 3:31 PM

6 Universal Drill Through Service Guide

Examples
ewuds.book Page 7 Friday, July 9, 2004 3:31 PM

Maximizing Your Information


Resources

preface
ewuds.book Page 8 Friday, July 9, 2004 3:31 PM

8 Universal Drill Through Service Guide

Overview
Information, services, and solutions
The Business Objects business intelligence solution is supported by thousands
of pages of documentation, available from the products, on the Internet, on CD,
and by extensive online help systems and multimedia.
Packed with in-depth technical information, business examples, and advice on
troubleshooting and best practices, this comprehensive documentation set
provides concrete solutions to your business problems.
Business Objects also offers a complete range of support and services to help
maximize the return on your business intelligence investment. See in the
following sections how Business Objects can help you plan for and successfully
meet your specific technical support, education, and consulting requirements.

Maximizing Your Information Resources


ewuds.book Page 9 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 9

Information resources
Whatever your Business Objects profile, we can help you quickly access the
documentation and other information you need.

Where do I start?
Below are a few suggested starting points; there is a summary of useful web
addresses on page 12.

Documentation Roadmap
The Documentation Roadmap references all Business Objects guides and
multimedia, and lets you see at a glance what information is available, from
where, and in what format.
View or download the Business Objects Documentation Roadmap at
www.businessobjects.com/services/documentation.htm

Documentation from the products


You can access electronic documentation at any time from the product you are
using. Online help, multimedia, and guides in Adobe PDF format are available
from the product Help menus.

Documentation on the web


The full electronic documentation set is available to customers with a valid
maintenance agreement on the Online Customer Support (OCS) website at
www.businessobjects.com/services/support.htm

Buy printed documentation


You can order printed documentation through your local sales office, or from the
online Business Objects Documentation Supply Store at
www.businessobjects.com/services/documentation.htm

Search the Documentation CD


Search across the entire documentation set on the Business Objects
Documentation CD shipped with our products. This CD brings together the full set
of documentation, plus tips, tricks, multimedia tutorials, and demo materials.
Order the Documentation CD online, from the Business Objects Documentation
Supply Store, or from your local sales office.

Information resources
ewuds.book Page 10 Friday, July 9, 2004 3:31 PM

10 Universal Drill Through Service Guide

Multimedia
Are you new to Business Objects? Are you upgrading from a previous release or
expanding, for example, from our desktop to our web solution? Try one of our
multimedia quick tours or Getting Started tutorials. All are available via the Online
Customer Support (OCS) website or on the Documentation CD.

How can I get the most recent documentation?


You can get our most up-to-date documentation via the web. Regularly check the
sites listed below for the latest documentation, samples, and tips.

Tips & Tricks


Open to everyone, this is a regularly updated source of creative solutions to any
number of business questions. You can even contribute by sending us your own
tips.
www.businessobjects.com/forms/tipsandtricks_login.asp

Product documentation
We regularly update and expand our documentation and multimedia offerings.
With a valid maintenance agreement, you can get the latest documentation – in
seven languages – on the Online Customer Support (OCS) website.

Developer Suite Online


Developer Suite Online provides documentation, samples, and tips to those
customers with a valid maintenance agreement and a Developer Suite license
via the Online Customer Support (OCS) website.

Send us your feedback


Do you have a suggestion on how we can improve our documentation? Is there
something you particularly like or have found useful? Drop us a line, and we will
do our best to ensure that your suggestion is included in the next release of our
documentation: documentation@businessobjects.com

NOTE
If your issue concerns a Business Objects product and not the documentation,
please contact our Customer Support experts. For information about Customer
Support visit: www.businessobjects.com/services/support.htm

Maximizing Your Information Resources


ewuds.book Page 11 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 11

Services
A global network of Business Objects technology experts provides customer
support, education, and consulting to ensure maximum business intelligence
benefit to your business.

How we can support you?


Business Objects offers customer support plans to best suit the size and
requirements of your deployment. We operate three global customer support
centers:
• Americas: San Jose, California and Atlanta, Georgia
• Europe: Maidenhead, United Kingdom
• Asia: Tokyo, Japan and Sydney, Australia

Online Customer Support


Our Customer Support website is open to all direct customers with a current
maintenance agreement, and provides the most up-to-date Business Objects
product and technical information. You can log, update, and track cases from this
site using the Business Objects Knowledge Base.

Having an issue with the product?


Have you exhausted the troubleshooting resources at your disposal and still not
found a solution to a specific issue?
For support in deploying Business Objects products, contact Worldwide
Customer Support at: www.businessobjects.com/services/support.htm

Looking for the best deployment solution for your company?


Business Objects consultants can accompany you from the initial analysis stage
to the delivery of your deployment project. Expertise is available in relational and
multidimensional databases, in connectivities, database design tools,
customized embedding technology, and more.
For more information, contact your local sales office, or contact us at:
www.businessobjects.com/services/consulting.htm

Looking for training options?


From traditional classroom learning to targeted e-learning seminars, we can offer
a training package to suit your learning needs and preferred learning style. Find
more information on the Business Objects Education website:
www.businessobjects.com/services/education.htm

Services
ewuds.book Page 12 Friday, July 9, 2004 3:31 PM

12 Universal Drill Through Service Guide

Useful addresses at a glance

Address Content
Business Objects Documentation Overview of Business Objects documentation. Links
to Online Customer Support, Documentation Supply
www.businessobjects.com/services/ Store, Documentation Roadmap, Tips & Tricks,
documentation.htm Documentation mailbox.

Business Objects Documentation Feedback or questions about documentation.


mailbox

documentation@businessobjects.com
Product documentation The latest Business Objects product
documentation, to download or view online.
www.businessobjects.com/services/
support.htm
Business Objects product information Information about the full range of Business
Objects products.
www.businessobjects.com
Developer Suite Online Available to customers with a valid maintenance
agreement and a Developer Suite license via the
Online Customer Support (OCS) website. Provides
www.techsupport.businessobjects.com
all the documentation, latest samples, kits and tips.
Knowledge Base (KB) Technical articles, documents, case resolutions.
Also, use the Knowledge Exchange to learn what
www.techsupport.businessobjects.com challenges other users – both customers and
employees – face and what strategies they find to
address complex issues. From the Knowledge
Base, click the Knowledge Exchange link.
Tips & Tricks Practical business-focused examples.

www.businessobjects.com/forms/
tipsandtricks_login.asp

Maximizing Your Information Resources


ewuds.book Page 13 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 13

Address Content
Online Customer Support

www.techsupport.businessobjects.com Starting point for answering questions, resolving


issues.

www.businessobjects.com/services Information about registering with Worldwide


Customer Support.
Business Objects Education Services The range of Business Objects training options and
modules.
www.businessobjects.com/services/
education.htm
Business Objects Consulting Services Information on how Business Objects can help
maximize your business intelligence investment.
www.businessobjects.com/services/
consulting.htm

Useful addresses at a glance


ewuds.book Page 14 Friday, July 9, 2004 3:31 PM

14 Universal Drill Through Service Guide

About this guide


This guide describes the Universal Drill Through Service and associated tool,
UDS Designer.

Audience
This guide is intended for administrators who need to set up drill through between
WebIntelligence reports.

Conventions used in this guide


The conventions used in this guide are described in the table below.

Convention Indicates
This font Code, SQL syntax, computer programs. For
example: @Select(Country\Country Id).
This font is also used for all paths, directories,
scripts, commands and files for UNIX.
Some code Placed at the end of a line of code, the symbol ( )
more code indicates that the next line should be entered
continuously with no carriage return.
$DIRECTORYPATHNAME The path to a directory in the Business Objects
installation/configuration directory structure. For
example:
• $INSTALLDIR refers to the Business Objects
installation directory.
• $LOCDATADIR refers to a subdirectory of the
BusinessObjects installation directory called
locData.

Maximizing Your Information Resources


ewuds.book Page 15 Friday, July 9, 2004 3:31 PM

About Drill Through

chapter
ewuds.book Page 16 Friday, July 9, 2004 3:31 PM

16 Universal Drill Through Guide

Overview
Universal Drill Through Service (UDS) is a technology that allows users to drill
down into a WebIntelligence Relational report, or another WebIntelligence OLAP
report, from a WebIntelligence OLAP report. With UDS, users can seamlessly
carry over their data analysis from report to report. The user selects the cell or
cells in the OLAP cube for drilling, and UDS presents them with a list of
WebIntelligence Relational or OLAP reports that provide more detailed drill down
data. UDS ‘remembers’ the point at which the user left the cube and carries this
context across to the target WebIntelligence report.
UDS allows users to move from navigation of summarized OLAP cubes to more
detailed query, reporting and analysis within the same framework. Users can
perform dynamic multidimensional cube analysis and access lower level details
stored in the target report.
As administrator, you need to map the source OLAP cube to the universe or
target OLAP cube and create reports that are appropriate for the different
contexts at which the user might drill through from report to report.

About Drill Through


ewuds.book Page 17 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 17

What does the administrator do?


As the UDS Administrator, it is your job to ensure that drill through is seamless
for the user. You need to carry out some or all of the following tasks to ensure
this seamlessness:
• Design a star- or snowflake-schema database that will consolidate all the data
needed by the universe-based reports.
• Migrate data from RDBMSs and/or flat files into this database.
• Design a universe for target user reports.
• Create a translation map using UDS Designer that tells the Drill Through
Service how to translate the context from the OLAP cube to the universe on
which the WebIntelligence Relation target reports are based.
• Build target reports built against the target universe.

Design a star- or snowflake-schema database


If your source cube is already based on a star- or snowflake-schema database
then you will not need to design a database specifically for drill through. In this
case, you will use the existing database, and you will also have no need for data
migration.

Design a universe for target user reports


If your users are drilling from OLAP cubes to universe-based relational reports,
you need to design a WebIntelligence universe whose structure maps to the
structure of the source cube. The universe must contain objects that correspond
to the levels, hierarchies and members in the cube in all contexts at which the
user will be able to drill through from the cube.

Create a translation map


A translation map is an XML file that tells the Drill Through Service how to
translate the context from the source to the target report when the user drills
through. Because maps are XML, you could use any XML editing tool to create
one. However, you are much more likely to use UDS Designer, a specialized
XML tool designed specifically for building translation maps.
You build a map by assigning objects to a hierarchical map model and setting
various properties associated with these objects.

What does the administrator do?


ewuds.book Page 18 Friday, July 9, 2004 3:31 PM

18 Universal Drill Through Guide

Design target reports


You build WebIntelligence target reports against the target universe or OLAP
cube that contains detailed data. The Drill Through Service opens these reports
automatically when the user chooses to drill through from a context specified in
a translation map. Target reports provide data at a more detailed level than the
data available in summarized and aggregated OLAP cubes.

About Drill Through


ewuds.book Page 19 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 19

What does the administrator need to know?


As the large number of different tasks in the previous section indicates, you need
a wide range of knowledge and experience to set up a UDS environment. You
should have experience in most or all of the following areas, depending on the
environment in which you are setting up drill through:
• Advanced SQL
• Designing star or snowflake database schemas
• Data migration
• OLAP cubes
• Creating OLAP cubes
• Designing and building BusinessObjects universes
• Creating universe-based WebIntelligence reports
You can get further information from the following sources. For information on
star or snowflake schema databases and data warehouses, see Ralph Kimball,
The Data Warehouse Toolkit: Practical Techniques for Building Dimensional
Data Warehouses (John Wiley & Sons, 1996) and The Data Warehouse Lifecycle
Toolkit: Tools and Techniques for Designing, Developing, and Deploying Data
Warehouses (John Wiley & Sons, 1998). For creating OLAP cubes using
Hyperion Integration Server, see the Hyperion Integration Server Desktop OLAP
Model User’s Guide. For designing and building BusinessObjects universes, see
the BusinessObjects Designer’s Guide. For creating universe-based
WebIntelligence reports, see the Getting Started with WebIntelligence guide.

What does the administrator need to know?


ewuds.book Page 20 Friday, July 9, 2004 3:31 PM

20 Universal Drill Through Guide

What is drill through?


Drill through provides integration between data sources that contain related but
different data stored in different data sources. The scenarios that drill through
currently supports are:

Source Target
Microsoft and Essbase/DB2 OLAP Relational (BusinessObjects
universes)
Microsoft and Essbase/DB2 OLAP

This means that the following general drill through scenarios are possible:
• OLAP to relational (BusinessObjects universe)
• OLAP to OLAP
In the OLAP to OLAP scenario, the target cube could be:
• a different cube in a different database
• adifferent cube in the same database
• the same cube
When the user drills through from source to target, drill through carries the
context of the source report to the target report.
A user can drill through from a value cell or cells, or a dimension member or
members. When the user drills on value cells, drill through includes the
dimension members from the row and column axes that intersect at the cell(s).
When the user drills on member(s), drill through includes only that member(s). In
both cases, drill through also includes members from dimensions on the filter
axis.
Drill through provides integration between data sources that contain related but
different data. In most enterprises, data is stored in numerous sources, but it is
often necessary to access more than one source when analyzing this data.
Without drill through, this is a tedious and time-consuming task. On reaching the
limit of the data in one source, the analyst needs to do the following:
1. Identify the data source containing the data necessary for further analysis.
2. Start the query tool used to access this data.
3. Navigate the data to arrive at the same ‘context’ reached in the first data
source.
4. Continue data analysis using the new query tool.

About Drill Through


ewuds.book Page 21 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 21

EXAMPLE
What are the unit sales of different brands of soccer cleats in 2001 Q1 ?
In this example the data analyst needs to work with two data sources: an OLAP
cube that provides unit sales data down to the level of the type of sports
equipment (soccer cleats, golf shoes, baseball uniforms) and a WebIntelligence
universe that breaks down sales by each different brand of cleat, shoe, uniform
etc. Using the cube, the analyst has drilled down as far as producing a report
showing the sales of cleats by quarter. However, he now wishes to investigate
further the sales of individual brands of cleat by quarter. To do this, he must:
1. Start WebIntelligence.
2. Load the appropriate universe containing data down to the level of unit sales
of cleats by quarter.
3. Create a report showing sales of soccer cleats by quarter for the year 2001.
4. Drill down into this data to analyze sales figure by quarter by brand.
With drill through, this complex process becomes straightforward. While
browsing the data in the OLAP cube, the analyst simply elects to drill-down into
the data showing unit sales of brands by quarter. Even though this data is not in
the cube, Universal Drill Through Service (UDS) opens the appropriate
WebIntelligence report built against the appropriate universe, and passes the
analyst’s ‘context’ in the OLAP cube to this report. The analyst can then continue
drilling into the data in the WebIntelligence report.

Drill through components


The following sections describe the components that make up drill through.

Universal Drill Through Service


Universal Drill Through Service is the name for the technology that translates a
user’s context in a source report to a target report, using the information provided
in a UDS map (see the section UDS maps below).

OLAP source cube


The source cube contains data at an aggregated level.

OLAP target cube


The target cube contains data at a lower level of detail.

What is drill through?


ewuds.book Page 22 Friday, July 9, 2004 3:31 PM

22 Universal Drill Through Guide

UDS maps
Maps are files that tell the Drill Through Service exactly how to carry the drill
context from the source cube to the target universe (see Building Translation
Maps on page 47). You create UDS maps using UDS Designer (see below). For
more details on how UDS maps fit into the overall drill through architecture, see
Drill through architecture on page 22.

UDS Designer
UDS Designer is the graphical tool used to build UDS maps (see Building
Translation Maps on page 47).

Target database
In an OLAP-to-relational scenario, the target database is the database on which
the target universe is built. Ideally, this database should be configured in a star
or snowflake schema. (see Designing the target database on page 43). This
makes mapping OLAP cube members to universe objects simpler. However, the
only hard criterion for target database design is that it must be possible to map
the members in the OLAP cube to the objects in the target universe.

Target universe
In an OLAP-to-Relational scenario, the target universe is a Business Objects
universe built against the target database. It must be configured to match the
structure of the source cube (see Drill Through Requirements on page 29).

Target reports
Target reports are the WebIntelligence reports invoked by the Drill Through
Service when the analyst drills outside the data contained in the source cube.
Each possible ‘context’ at which you wish to allow the analyst to drill through to
the target universe must be covered by a target report (see Creating
WebIntelligence target reports on page 81). A general rule of thumb is that each
measure in the OLAP cube will require its own target report. This is because the
OLAP measures contain data at a summarized level; the report corresponding to
each measure therefore provides more detailed data for that measure.

Drill through architecture


It is possible to examine the drill through architecture from several angles: overall
architecture, WebIntelligence architecture and runtime architecture.

About Drill Through


ewuds.book Page 23 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 23

Overall drill through architecture


The following diagram illustrates the relationships between the different
components of drill through:

Drill through implementation in WebIntelligence


The following diagram illustrates the relationships between the different
components of drill through as implemented in WebIntelligence:

What is drill through?


ewuds.book Page 24 Friday, July 9, 2004 3:31 PM

24 Universal Drill Through Guide

Run time architecture


The following diagram shows the run time implementation of the drill through
architecture. This highlights the two data packages that the Drill Through Service
uses: the drilled data package and the translation map:

Why drill through was difficult before


Until recently, databases across an enterprise were rarely synchronized,
meaning that the dimensions and levels in an OLAP cube would be unlikely to
map to a relational data source within the same enterprise. In this situation, drill
through is extremely complex, time-consuming and maintenance-heavy,
because the source and target data sources do not share similar metadata.
As a result, drill through has thus far existed in two niches only: complex, custom-
built drill through solutions, or proprietary drill through solutions provided by
vendors. Proprietary solutions solve the problem of incompatible metadata at the
cost of supporting drill through from the vendor’s cubes only to the vendor’s
relational source only.
Furthermore, different vendors’ OLAP and relational solutions differ considerably
in their metadata models. Thus, a single drill through model was not feasible as
it would need to account for the metadata models of all the supported source and
target data sources.

About Drill Through


ewuds.book Page 25 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 25

Why drill through is possible now


Today, database designers recognize the need to synchronize data sources
across an enterprise. In particular, they are now basing OLAP cubes on relational
data sources. If a cube is built from a star- or snowflake-schema relational
source, both the cube and the relational database share similar metadata. This
is essential if drill through is not to be prohibitively complex.

How Business Objects enables drill through


With WebIntelligence, Business Objects has both a standard OLAP model and a
standard model for accessing relational data (the BusinessObjects universe).
This greatly simplifies communication between OLAP-OLAP or OLAP-relational
data sources because drill through needs to deal with at most two metadata
models - the BusinessObjects OLAP model and the BusinessObjects relational
model (universe).

OLAP object model


WebIntelligence uses a universal OLAP object model to access OLAP cubes
hosted on many different OLAP servers. By placing this layer of abstraction
between the OLAP server and the client tool, WebIntelligence removes the
complexity from querying OLAP cubes. It sees cubes hosted on different OLAP
servers through the same object model, and the object model handles the
complexity of translating user actions into MDX, the query language understood
by OLAP servers.

Business Objects universe


A universe - Business Objects’ patented ’semantic layer’ - provides a layer of
abstraction between WebIntelligence and relational data sources in the same
way that the OLAP model insulates WebIntelligence from the OLAP cube. The
universe abstracts the database structure into a set of hierarchically-organized
objects that represent the real-world objects about which the database stores
data. The universe translates user queries into SQL, shielding the user from the
often complex database-specific structures in which data about these objects are
stored.
Because the hierarchical nature of a WebIntelligence universe closely resembles
the structure of an OLAP cube, drill through is a good-fit technology for
WebIntelligence.

What is drill through?


ewuds.book Page 26 Friday, July 9, 2004 3:31 PM

26 Universal Drill Through Guide

NOTE
For more information on universes, see What is a Business Objects universe? on
page 34.

About Drill Through


ewuds.book Page 27 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 27

Setting up drill through


In order to set up a Drill Through environment you need to carry out the steps
described in What does the administrator do? on page 17.

Example drill through environment


WebIntelligence comes with a comprehensive set of materials to demonstrate a
Drill Through environment. These are:
• Source cubes
• Source report (OLAP Drill-Through Report)
• Target universe database (MS Access)
• Target universe (Retail2002)
• Target Report (MonthCustNameProdDepSales)
• Target report
This manual will refer to this material for all examples and demonstrations.

Setting up drill through


ewuds.book Page 28 Friday, July 9, 2004 3:31 PM

28 Universal Drill Through Guide

About Drill Through


ewuds.book Page 29 Friday, July 9, 2004 3:31 PM

Drill Through Requirements

chapter
ewuds.book Page 30 Friday, July 9, 2004 3:31 PM

30 Universal Drill Through Guide

Overview
This chapter looks at the design requirements for a successful drill through
environment. For Drill Through to function correctly, each component must be
designed according to specific guidelines, and the designs of the various
components are interrelated. For example, if you are using OLAP-relational drill
through, the design of the universe on which the target reports are built needs to
mirror the design of the source OLAP cube, and the database should be in a star
schema to facilitate the universe design.
The design requirements for a drill through environment are as follows:
For OLAP-relational drill through:
• The target relational database is ideally in a ’denormalized’ a star or
snowflake schema, although any schema that supports mapping to the OLAP
cube is workable. (The following sections describe the differences between
normalized and star schema databases.)
• The classes and objects in the target universe map to the levels and
dimensions in the source OLAP cube.
For OLAP-to-OLAP drill through:
OLAP-to-OLAP drill through is very similar to OLAP-to-relational drill through,
except that the target universe objects are replaced by target OLAP levels.
The rest of this chapter examines the issues surrounding relational databases in
OLAP-to-relational drill through.

Drill Through Requirements


ewuds.book Page 31 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 31

Normalized relational databases


In 1970, database researcher E.F. Codd formulated a series of rules for the
design of relational databases. Further researchers added additional rules;
collectively these rules are referred to as normalization rules. Normalization is
designed to eliminate data rendundancy (the storing of the same piece of data in
more than one place in a database) and therefore reduce the risk of errors when
writing to and reading from a database. In a correctly-normalized database, each
table stores data about one thing and one thing only. The ‘things’ in question
might be tangible, like employees or departments, or more abstract, like
relationships or events. Codd’s earlier rules deal with tangible things, while the
later rules deal with the abstract.
A normalized relational database is ideal for data input. However, the retrieval of
data from such a database is often slow. Because the data has been normalized
into many tables, a complex query might require data from a large number of
tables. This process of joining the data from different tables in order to present a
query result is an intensive database operation.
Normalized databases are usually found in On-Line Transaction Processing
(OLTP) systems, the primary purpose of which is data entry. Car rental
reservation systems or Point of Sale (POS) systems are examples of OLTP.

Normalized relational databases


ewuds.book Page 32 Friday, July 9, 2004 3:31 PM

32 Universal Drill Through Guide

Star schemas
The star schema is an alternative database design that is optimized for data
output. Star schemas violate normalization rules spectacularly, but they also
speed up data retrieval by a significant degree. As a general rule, they are used
strictly for reporting rather than data input.
Star schema databases are populated from OLTP databases. The OLTP data is
transformed to fit into the star schema, and the database is refreshed periodically
from the OLTP systems.
The star schema maps closely to the structure of an OLAP cube. As a result, data
in OLAP cubes is often drawn from data warehouse databases designed as star
schemas.

Fact tables, dimension tables and hierarchies


A star schema consists of a central ‘fact’ table, joined to numerous ‘dimension’
tables which radiate around it. The fact table contains numeric data with which
you can measure business performance: for example, numbers of products sold.
Dimension tables join to the fact table and relate these measures to different
aspects of the business. A star schema almost always includes a table or tables
that store time data, because the primary purpose of such databases is to allow
for the analysis of trends over time. For example, a database might contain Time,
Product and Customer dimensions linking to a fact table storing unit sales. In this
case it would be possible to examine unit sales by product, customer and time
period.
Dimensions usually contain hierarchies. As you move down through the
hierarchy, its data becomes progressively more specific. For example, a Product
dimension might contain hierarchy levels such as Product Category, Product
Subcategory and Brand Name. A Product dimension table containing all this data
is a good example of the kind of highly denormalized table found in star schemas.
In a normalized structure, these three distinct ‘things’ would probably be stored
in three tables.

Snowflake schemas
A snowflake schema is similar to a star schema except that the hierarchies in the
dimension table are ‘normalized out’ to some extent.
Snowflake schemas are less common because the database space saved by
normalization is small (in a large star schema database, approximately 95% of
the space is occupied by the fact table), and the joining of the snowflaked tables

Drill Through Requirements


ewuds.book Page 33 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 33

adds additional overhead. The example database is predominantly in a star


schema, although the Product dimension is ‘snowflaked’ into the PRODUCT and
PRODUCT_CLASS tables.

Star schemas
ewuds.book Page 34 Friday, July 9, 2004 3:31 PM

34 Universal Drill Through Guide

What is a Business Objects universe?


Universes are Business Objects’ patented ’semantic layer’ that sits between the
BusinessObjects client tool and its relational data source. Universes insulate
users from the complexities of SQL and relational data structures by presenting
the data in terms familiar with the user.
The hierarchical organization of data in universes is very similar to the
organization of data in an OLAP cube, which makes mapping between the two
data sources possible.

Drill Through Requirements


ewuds.book Page 35 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 35

How cubes and universes relate


OLAP cubes and Business Objects universes are both hierarchical structures
that are used to identify specific pieces of numerical data; for example the
number of soccer cleats sold in California in Q2 2001. To find this information in
an OLAP cube, the analyst would explore the Customer dimension in order to find
California, the Product Dimension in order to find Cleats, and the Accounts
dimension in order to find the unit sales. To do the same information in a
WebIntelligence universe, the analyst would navigate to the California object
within the Customer class, the Soccer Cleats object within the Product class, and
the Unit Sales measure. The classes and objects in universes therefore map to
the dimensions and hierarchy levels in an OLAP cube.

Cube Term Cube Data Universe Term Universe Data


Dimension ‘Product’ Class ‘Product’
Level ‘Brand Name’ Object ‘Brand Name’
(dimension or
detail)
Member ‘Cleats’ Value ‘Cleats’

The basic type OLAP-relational mapping provided by UDS is "level translation”.


In level translation a dimension level is mapped to a universe object where all the
members for a dimension level map to a universe object and the member name
corresponds exactly to the universe object value (eg. 2000Q1 = 2000Q1)

Design requirements
The following sections examine the structures of the cube, universe and
database in the demonstration material more closely, in order to demonstrate the
structure of the components in a drill through environment.

Relational database
Ideally, the database should be in a star or snowflake schema, although any
schema that allows mapping of cube members to universe objects is workable.
The following figure shows the schema for the example MS Access database that

How cubes and universes relate


ewuds.book Page 36 Friday, July 9, 2004 3:31 PM

36 Universal Drill Through Guide

ships with WebIntelligence. This database is predominantly in a star schema,


although the Product dimension is ‘snowflaked’ into the PRODUCT and
PRODUCT_CLASS tables.

Making member names unique


When building your database, you need to account for the fact that members in
Essbase/DB2 OLAP cubes must be unique throughout the entire cube. For
example, a Time dimension containing data for multiple years cannot contain
multiple members called ‘March’. You solve this by creating a composite name
for such members. A composite name is built from the member name qualified
by the names of parent members. For example, the member ‘March’ in the year
2001 could be named ‘2001Q103’. In this case, the month is qualified by both the
quarter and the year in order to make the member name unique.

Drill Through Requirements


ewuds.book Page 37 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 37

You need to account for this when designing your database. In the example
database, the TIME_PERIOD table contains the columns ess_month (in the form
‘2001Q103’) to uniquely identify the month, and ess_quarter (in the form
‘20001Q1’) to uniquely identify the quarter.

NOTE
You can also solve the problem of unique member names at the universe level.
See the next section.

Universe
The classes, objects and measures in the universe must match the dimensions,
levels and measures in the source cube. However, the universe can contain
additional items not in the source cube. The table below shows example
mappings from the demo universe and cube shipped with WebIntelligence.

Cube Universe
Dimension Product Class Product
Level Product Family Object Product Family
Member Sportswear Value Sportswear

You can see this mapping by examining the demonstration translation map
supplied with WebIntelligence. Open the map using UDS Designer (see the
chapter Building Translation Maps on page 47 for instructions on using this tool).

The translation map


maps the cube level
Product Family to the
universe class/object
Product/Product
Family.

’SportsWear’ is a
member in the cube
level and a value of
the universe object.

How cubes and universes relate


ewuds.book Page 38 Friday, July 9, 2004 3:31 PM

38 Universal Drill Through Guide

Designing for unique members


If your source cube is an Essbase/DB2 OLAP cube, you will need to take the
cube’s unique member names into account. In Essbase/DB2 OLAP, each
member name must be unique throughout the entire cube. Cube designers solve
this by qualifying member names with the names of one or more parent
members.
The time dimension members are often named in this way. If the time dimension
contains data for more than one year, the names of the months in the year must
be qualified with the year to make them unique. For example, the March 2001
member cannot be named ’March’; it needs a name like ’2001March’.

Creating universe objects to map to unique members


You can create universe objects that map to the unique members in a cube.
Because universes provide a layer of abstraction between the database and the
user, you can add objects to the universe that derive from various objects in the
database. For example, you could create a universe object called Essbase
Quarter that concatenates the quarter’s parent year followed by the quarter, in
the form "2000Q1". This is what the object definition would look like in Designer:

Drill Through Requirements


ewuds.book Page 39 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 39

Cube
There are no restrictions on cube design, other than the normal restrictions
imposed by Essbase/DB2 OLAP (for example, the need to have unique member
names). The cube design carries over to the design of the universe and target
databases and places restrictions on those components, as described in the
previous sections.

How cubes and universes relate


ewuds.book Page 40 Friday, July 9, 2004 3:31 PM

40 Universal Drill Through Guide

Drill Through Requirements


ewuds.book Page 41 Friday, July 9, 2004 3:31 PM

Designing the Target Universe

chapter
ewuds.book Page 42 Friday, July 9, 2004 3:31 PM

42 Universal Drill Through Guide

Overview
This chapter describes the WebIntelligence target universes on which you base
your drill through target reports in OLAP-to-Relational drill through.

Designing the Target Universe


ewuds.book Page 43 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 43

Designing the target database


If you are basing your target universe on the same database that populates your
source cube, you do not need to design a target and populate a target database.
If you are designing a new database for your target universe, you must be aware
that, for the OLAP dimensions that you wish the user to be able to drill through
from, the target universe needs to map exactly to the structure of the OLAP cube.
The ideal design for the underlying database for this universe is a star or
snowflake schema. These schemas map closely to OLAP cubes (and are often
used to feed data to cubes in OLAP databases); as a result, such a schema is
also ideal for a universe that maps to the structure of an OLAP cube.

NOTE
The target database does not need to map to the structure of the whole source
cube, just to those dimensions that you wish users to be able to drill through from.

After you have designed your database, you will need to populate it. How you do
this depends on factors such as the operating system and RDBMS on which the
database is hosted. If you use views in the target database, you do not need to
perform as much data migration.

Designing the target database


ewuds.book Page 44 Friday, July 9, 2004 3:31 PM

44 Universal Drill Through Guide

Designing a star schema database


In a star schema, the numeric data (the Accounts dimension in an Essbase/DB2
OLAP cube) is stored in a central ‘fact’ table. The dimension tables (equivalent to
the dimensions in an OLAP cube) radiate around this fact table and are joined to
it via foreign keys. (See Designing a star schema database on page 44 for more
details.) The example drill through database supplied with UDS Designer is
arranged almost entirely in a star schema, although the Product dimension has
been split (or ‘snowflaked’) into the PRODUCT and PRODUCT_CLASS tables.
Databases in which the dimensions are partly re-normalized into separate tables
are known as snowflake-schema databases.

Essbase/DB2 member naming restrictions


In an Essbase/DB2 OLAP cube, each member name must be unique throughout
the entire cube. Essbase/DB2 OLAP cube designers typically work around this
restriction by qualifying the name of the member with the names of its parent
members.
For example, it is not possible to have a member called ‘Q2’ if the cube contains
data for more than one Q2 (which is likely). In this situation, the cube designer
could qualify the name of the quarter with the name of the year in order to make
the member name unique. The member name for Q2 of 2001 would be 2001Q2.
You can account for this in the database by adding additional columns where
necessary to allow for mapping to uniquely named-members. You can see this in
the TIME_PERIOD table of the example database, which contains the columns
ess_quarter (uniquely-named quarters) as ess_month (uniquely-named
months).

NOTE
You can also account for unique members at the universe level. See Creating
universe objects to map to unique members on page 38 for more details.

The Accounts dimension


An Essbase/DB2 Accounts dimension might contain data that is not in the
relational data source. The Accounts dimension can contain aggregates, while
the relational data might contain the lowest-level numerical data only. In this
scenario it is not possible to map the Accounts dimension to the database.

Designing the Target Universe


ewuds.book Page 45 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 45

This should not present an issue as the mapping of an Accounts dimension is


rarely useful. The purpose of Drill Through is to allow the user to retrieve lower-
level numerical data from the database than is available in the cube. To do this,
Drill Through needs to map dimensions and levels between the cube and
database. Numerical data is retrieved based on the dimensions and levels that
the user is querying - in itself it is not relevant to drill through context.

Designing a star schema database


ewuds.book Page 46 Friday, July 9, 2004 3:31 PM

46 Universal Drill Through Guide

Creating the target universe from the database


In the target universe, the classes must map to the dimension in the OLAP cube,
the objects must map to the levels, and the values of those objects must map to
the cube members. The following table shows some example correspondances
between the example cube and universe shipped with WebIntelligence.

Cube Term Cube Data Universe Term Universe Data


Dimension ‘Product’ Class ‘Product’
Level ‘Brand Name’ Object ‘Brand Name’
(dimension or
detail)
Member ‘Cleats’ Value ‘Cleats’

Designing the Target Universe


ewuds.book Page 47 Friday, July 9, 2004 3:31 PM

Building Translation Maps

chapter
ewuds.book Page 48 Friday, July 9, 2004 3:31 PM

48 Universal Drill Through Guide

Overview
This chapter describes UDS translation maps and how to build them using UDS
Designer. Translation maps tell the Drill Through Service how to translate the
context from an OLAP source cube to a universe (OLAP-to-relational drill
through) or OLAP target cube (OLAP-to-OLAP drill through). Drill through
currently supports Microsoft SQL Analysis Services and Essbase/DB2 OLAP as
OLAP sources.

Building Translation Maps


ewuds.book Page 49 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 49

What is UDS Designer?


UDS Designer is a graphical tool that you use to build translation maps.
Translation maps are XML files; UDS Designer is a specialized XML editor
specifically tailored to building maps. However, you can build translation maps
with any XML editing tool.
UDS Designer is installed by default in the <BO_Install_Folder>\Business
Objects Enterprise 6\bin folder with a Desktop or Server installation of
the BusinessObjects suite . The application file name is uds_designer.exe.

What is UDS Designer?


ewuds.book Page 50 Friday, July 9, 2004 3:31 PM

50 Universal Drill Through Guide

What are translation maps?


A translation map is an XML file (with the extension UDM) that tells the Drill
Through Service how to translate the context from the source cube to the target
WebIntelligence report (which can be based on a universe or an OLAP cube)
when the user drills on a cell or cells. It describes how the values in the cube
relate to the values in the report.
You build a translation map by specifying which structures in the originating data
source you want to translate, and what their equivalents are in the target data
source. Because the originating data sources are OLAP cubes, this means that
the map is structured like a cube: it consists of dimensions, hierarchies and
levels.
There are two basic translations possible within a map: level translations and
member translations.

Level translations
A level translation is a general rule that applies to all members at a particular level
in an OLAP cube. It has the following components:
• Target universe class - in an OLAP to relational translation, the universe class
that an OLAP member translates to.
• Target universe objects - in an OLAP to relational translation, the universe
objects that an OLAP member translates to.
• Target OLAP level - in an OLAP to OLAP translation, the OLAP level that an
OLAP member translates to.
• Translation rule - a rule that specifies how to manipulate the member when
passing it from the source to the target.
• Parent translation - an additional translation rule used to qualify the member
with its parent member or members where the name of the member alone is
not enough to uniquely identify it in the universe.

Member translations
You use member translations to exclude specific members that you do not want
to be translated as part of a level translation. For example, the dynamic time
series members in an Essbase cube (Quarter to Date) have no equivalent in a
relational database. To prevent this member from being translated, you assign a
member translation to it and disable translation for the member.

Building Translation Maps


ewuds.book Page 51 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 51

What is in a translation map?


A translation map contains the following information:
• Details of the originating data source (OLAP cube)
• Details of the target data source (WebIntelligence report)
• Details of each dimension and its associated hierarchies and levels and
whether these are enabled for drill through
• The level and member translations associated with the levels.
• The target reports based on the target cube or universe.

Workflow for building a translation map


To build a translation map, you do the following:

Step Description For further


information, see...
Import the source cube Loads the source cube Importing the source
metadata into UDS cube on page 56
Designer
Import the target Loads the target Importing the target
universe universe metadata into universe on page 58
UDS Designer
OR
Import the target cube Loads the target cube Importing the target
metadata into UDS cube on page 59
Designer
Add the translations to Adds the translations Specifying member
the map that describe the cube- translations on page 67
to-universe mapping to
the translation map
Specify the target Adds the Specifying target reports
reports WebIntelligence target on page 73
reports to the translation
map

What are translation maps?


ewuds.book Page 52 Friday, July 9, 2004 3:31 PM

52 Universal Drill Through Guide

Import the source cube


When you load the source OLAP cube, you make its metadata (dimensions,
hierarchies, levels and members) available to UDS Designer. You can then add
these metadata objects to the translation map.

Import the target universe


When you load the target universe, you make its metadata (classes and objects)
available to UDS Designer for the same reason.

Import the target cube


When you load the target cube, you make its metadata available to UDS
Designer.

Add the translations to the map


This is the key process in which you tell the Drill Through Service how to translate
the context from the source cube to the target WebIntelligence report. You do this
by adding translation objects to the map and setting their properties.

Specify WebIntelligence target reports


After you have added all the translations to the map, you specify the target
WebIntelligence reports to which the map applies. These are the reports that the
user will drill through to from the source OLAP cube.

Building Translation Maps


ewuds.book Page 53 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 53

Mapping from cubes to universes


Data is structured in universes in a design that is very similar to the structure of
OLAP cubes. The dimensions, levels and members in a cube correspond to the
classes, objects and object values in a universe. For example, the Customer
dimension in the demonstration cube contains the City level, and one of the
members of this level is ‘San Diego’. This maps to the Customer class in the
demonstration universe, which contains the City object. One of the values of this
object is ‘San Diego’.
For drill through to work, you must be able to map the structure of the source cube
to the structure of the target universe. This means that the values of the
dimensions, levels and members in the cube must correspond exactly to the
classes, objects and values in the universe. This simple mapping is known as
structure mapping.
There are two flavors of structure mapping. The simpler form is 1:1 mapping and
the more complicated form is qualified 1:1 mapping.

Simple 1:1 mapping


In simple 1:1 mapping, the cube members map exactly to equivalent objects in
the WebIntelligence universe. The table below gives examples from the Rtl2002
cube and Rtl2002 universe supplied with the Drill Through Service.
In simple 1:1 mapping there is no need to qualify the source member in the
translation map because the target objects in the universe are unique and
unambiguous.

Qualified 1:1 mapping


In qualified 1:1 mapping the target objects in the universe are not unique. In order
to map the source OLAP members to the target universe objects unambiguously,
it is necessary to qualify the member with the name of one or more of its parent
members. This situation commonly occurs when translating members in the Time
dimension. If a relational data source contains data for more than one year, the
child objects of the year (for example the quarters and months) will not be unique
in the database. March 2001 and March 2002 will both be stored as ’March’.
Because a translation map must uniquely associate each cube member with a
corresponding universe object, you need to use a Parent Translation object to
qualify the name of the member with the name of its parent.

Mapping from cubes to universes


ewuds.book Page 54 Friday, July 9, 2004 3:31 PM

54 Universal Drill Through Guide

Building translation maps using UDS


Designer
This section describes how to build a UDS Map using UDS Designer. The UDS
Designer main interface is shown below.

The OLAP Source


Information pane
shows the
dimensions,
hierarchies and
levels in the
source cube

The
Universe Target
Information pane
shows the classes
and objects in the
target universe

The Mapping Parts


pane contains the
different objects
that you can add to The Properties area
a translation map allows you to change
the properties of the
currently-selected
object in the
You use the Add and Delete The Map Model translation map
buttons to add or remove ob- pane displays the
jects from the translation translation map
map

Building Translation Maps


ewuds.book Page 55 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 55

Navigating translation maps


You navigate a translation map in the Map Model pane. UDS Designer displays
the map hierarchically in a tree format. You select objects in this hierarchy and
change their properties in the Properties area. When you select an object, the
Properties area changes to display the properties that are relevant to that object.

Building translation maps using UDS Designer


ewuds.book Page 56 Friday, July 9, 2004 3:31 PM

56 Universal Drill Through Guide

Importing data sources


Your first step in creating a translation map is to import the metadata from both
the source cube and the target cube/universe. To do this you need to connect to
both the OLAP database containing the cube and the WebIntelligence repository
or OLAP database containing the universe/target cube.

NOTE
When working with a previously-saved translation map that you open using UDS
Designer, it is not possible to change the data sources.

Importing the source cube


To import the source cube, do the following:
1. Select New from the File menu.
The Map Types dialog box appears.

2. Click OLAP to Relational or OLAP to OLAP then click OK.

Building Translation Maps


ewuds.book Page 57 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 57

The Olap Source Information dialog box appears.

3. Enter the name of the OLAP server in the OLAP Server box.
4. Select the OLAP server type from the Server Type dropdown list.
5. Enter your OLAP server username and password in the User Name and
Password boxes. (This step does not apply to MS OLAP.)
6. Click Connect.
UDS Designer attempts to connect to the server using the information you
have given. If connection is successful, the DataBases dropdown list box is
populated with names of the OLAP databases available on the server.
7. Select the database containing the cube you want to access from the
Databases dropdown list box.
8. The Cubes dropdown list box is populated with the names of all the cubes
available in the database you selected.
9. Select the cube that you want to connect to from the Cubes dropdown list box.
10. Click Load Cube.
11. The OLAP Source Information pane is populated with the dimensions, levels
and hierarchies in the source cube. In addition, the translation map is
populated with all the dimensions, hierarchies and levels in the cube.

Importing data sources


ewuds.book Page 58 Friday, July 9, 2004 3:31 PM

58 Universal Drill Through Guide

NOTE
You can also import a source cube when you already have a translation map
loaded. In this case, UDS Designer does not automatically assign all the
dimensions, hierarchies and levels to the translation map.

Importing the target universe


If you selected OLAP to relational translation, the Choose Universe dialog box
opens automatically after you have loaded the source cube.

Enter your User Name and Password and click OK. If the connection to the
repository succeeds, you will see the Universe Target Information dialog box.

If you cannot connect to the repository, check that the repository database is
available and that you have the correct middleware installed to access it.
Select a universe from the Universes dropdown, then click Load Universe. UDS
Designer populates the Universe Target Information with the classes and objects
from the universe.

Building Translation Maps


ewuds.book Page 59 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 59

Importing the target cube


If you selected OLAP to OLAP translation, the OLAP Source Information dialog
box appears again. You follow the procedure described above to connect to the
source cube.

Security
Drill through security is handled entirely by the originating and target query tools.
The displayed cube members and values are based on the user ID used to
connect to the OLAP cube. Universe security is governed entirely by the user ID
used to connect to WebIntelligence.

Importing data sources


ewuds.book Page 60 Friday, July 9, 2004 3:31 PM

60 Universal Drill Through Guide

Creating a translation map


Once you have loaded the source and target metadata you are ready to start
building your translation map. When you loaded the cube metadata, UDS
Designer automatically loaded all the cube dimensions, hierarchies and levels
into the translation map. Now, when you select an object in the Map Model pane,
the Properties area on the right displays the properties of the selected object. The
Properties area changes to reflect the properties appropriate to the object you
select. You can then modify these properties.
You can add additional objects to be associated with an object in the translation
map. These objects come from three sources:
• The OLAP Source Information pane
• The Universe Target Information pane
• The Mapping Parts pane
To add an object to the translation map, do the following:
1. Select the object in the translation map.
2. Select the object to be added in the OLAP Source Information, Universe
Target Information or Mapping Parts panes.
3. Click the Add button to add the object to the translation map.
4. Use the Properties area to specify the properties of the added object.

Adding, deleting, replacing and enabling dimensions


The Map Model pane shows dimensions hierarchically beneath the map object
in the Map Model pane. You can perform four tasks relating to a dimensions: add
a new dimension, delete a dimension, replace a dimension and enable/disable
an existing dimension,

Building Translation Maps


ewuds.book Page 61 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 61

Creating a translation map


ewuds.book Page 62 Friday, July 9, 2004 3:31 PM

62 Universal Drill Through Guide

Adding, removing and replacing dimensions


You can add, remove or replace dimensions in the translation map. To add a
dimension:
1. Select the Map object in the Map Model pane.

2. Select the dimension in the OLAP Source Information pane.

3. Click Add.
The dimension is added to the translation map.

Building Translation Maps


ewuds.book Page 63 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 63

To remove a dimension:
1. Select the dimension in the Map Model pane.
2. Click Remove.
The dimension is removed from the translation map.
To replace a dimension:
1. Select the dimension to be replaced in the Map Model pane.
2. Select the replacing dimension in the OLAP Source information pane.
3. Click Add.
The dimension is replaced with the new dimension from the source cube.

Enabling dimensions for translation


When you load the source cube for a new translation map, UDS Designer adds
all the cube dimensions to the translation map. Initially, all dimensions are not
enabled for translation. You need to enable the dimensions that you wish to be
translated. To enable a dimension:
1. Click the dimension in the Map Model pane.
The Properties area shows the dimension properties.

2. Select Translation Enabled to enable translation for the dimension.

NOTE
To disable an enabled dimension, select Translation Enabled again.

Adding, deleting, replacing and enabling hierarchies


You work with hierarchies by selecting dimensions and hierarchies in the Map
Model pane. You can add, remove, replace and enable/disable hierarchies for
translation in the translation map.
To add a hierarchy:
1. Select the dimension to which you want to add a hierarchy in the Map Model

Creating a translation map


ewuds.book Page 64 Friday, July 9, 2004 3:31 PM

64 Universal Drill Through Guide

pane.
2. Select the hierarchy in the OLAP Source Information pane.
3. Click Add.
The hierarchy is added to the dimension in the translation map.
To remove a hierarchy:
1. Select the hierarchy in the Map Model pane.
2. Click Remove.
The hierarchy is removed from the translation map.
To update a hierarchy:
1. Select the hierarchy to be updated in the Map Model pane.
2. Select the replacing hierarchy in the OLAP Source information pane.
3. Click Add.
The hierarchy is replaced with the new hierarchy from the source cube.

Enabling hierarchies for translation


To enable a hierarchy for translation:
1. Click the hierarchy in the Map Model pane.
The Properties area shows the hierarchy properties.

2. Select Translation Enabled in the Properties area to enable translation for the
hierarchy.

NOTE
To disable an enabled hierarchy, select Translation Enabled again.

Building Translation Maps


ewuds.book Page 65 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 65

Adding, deleting, replacing and enabling levels


You work with levels by selecting the levels in the Map Model pane.
You can add, remove or replace levels in the translation map. To add a level:
1. Select the dimension hierarchy to which you want to add a level in the Map
Model pane.

2. Select the level in the OLAP Source Information pane.

Creating a translation map


ewuds.book Page 66 Friday, July 9, 2004 3:31 PM

66 Universal Drill Through Guide

3. Click Add.
The level is added to the dimension/hierarchy in the translation map.

To remove a level:
1. Select the level in the Map Model pane.
2. Click Remove.
The level is removed from the translation map.
To update a level:
1. Select the level to be updated in the Map Model pane.
2. Select the replacing level in the OLAP Source Information pane.
3. Click Add.
The level is replaced with the new level from the source cube.

Building Translation Maps


ewuds.book Page 67 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 67

Enabling levels for translation


To enable a level for translation:
1. Click the level in the Map Model pane.
The Properties area shows the level properties.

2. Select Translation Enabled to enable translation for the level.

NOTE
To disable an enabled level, select Translation Enabled again.

Populating translation objects automatically


UDS Designer can populate the class and object properties automatically when
you add a level translation. To add a level translation and automatically populate
these properties, do the following:
1. Select the level in the Map Model pane.
2. Select the universe object in the Target Universe information pane.
3. Click Add.
Because you specified a target universe object in step 2, the Universe Class
and Universe Object properties of the level translation are automatically
populated with the universe object’s parent class and object name
respectively.

Specifying member translations


A level translation applies to all members at a level. If you need to specify a
translation for a particular member, you can do so by adding a member
translation.

Creating a translation map


ewuds.book Page 68 Friday, July 9, 2004 3:31 PM

68 Universal Drill Through Guide

To add a member translation:


1. Select the member’s level in the Map Model pane.
2. Select Member Translation in the Mapping Parts pane.
3. Click Add.
UDS Designer adds a level translation (if one is not already present) and a
member translation to the level.

4. Specify the class and object properties for the level translation.

Building Translation Maps


ewuds.book Page 69 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 69

5. Select the Source Member Unique Name component of the member


translation.

6. Type the member name in the Member Unique Name box in the Properties
area.
The source member is updated in the Map Model pane.

7. Select the Target Unique Value component of the member translation in the

Creating a translation map


ewuds.book Page 70 Friday, July 9, 2004 3:31 PM

70 Universal Drill Through Guide

Map Model pane.

8. Type the member name in the Member Unique Name box in the Properties
area.
The source member is updated in the Map Model pane.

Building Translation Maps


ewuds.book Page 71 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 71

Deleting member translations


To delete a member translation:
1. Select the member translation in the Map Model pane.
2. Click Delete.
The member translation is removed from the translation map.

Adding parent translations


You might need to qualify a member with at least one parent member in order to
make translation to the target universe possible. For example, the source cube
might contain the member ’Q4’ in the Time dimension. You would need to qualify
the name of this member with the name of the parent member (for example
‘2000’) in order to create a unique member name. In this case, the context
passed by the Drill Through Service would be ‘2000Q4’. To do this you need to
add a Parent Translation object to the level.
You can add a Parent Translation Object only after you have added a level
translation. To add a Parent Translation Object:
1. Select the level translation in the Map Model pane.
2. Select Parent Translation in the Mapping Parts pane.

Creating a translation map


ewuds.book Page 72 Friday, July 9, 2004 3:31 PM

72 Universal Drill Through Guide

3. Click Add.
The Parent Translation object is added to the level. By default it points to the
immediate parent level.

4. Specify the level to which the Parent Translation Object points by typing its
name into the Unique Name box in the Properties area.

Qualifying a translation with multiple parent levels


You can qualify a level with more than one parent level by adding a Parent
Translation object that points to a level that itself has a parent translation object.
The Drill Through Service will move up through the hierarchy of Parent
Translation objects and qualify the level name with all the parent levels in the
hierarchy.

Deleting parent translations


You delete a Parent Translation Object directly or by deleting the level or member
translation to which it is associated.

Building Translation Maps


ewuds.book Page 73 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 73

Specifying target reports


After you have added the translations to the map, you need to specify the
WebIntelligence target reports to which the map applies. To do this:
1. Click Define Target Reports on the toolbar.
The Document Information dialog box appears.

2. Type the name of the report in the Document Name box.


3. Type the document caption in the Document Caption box.
4. Type a comment in the Comment box.
5. Click Add.
The report appears in the Assigned Documents list.
6. Click OK.

NOTE
The caption and comment are optional.

Creating a translation map


ewuds.book Page 74 Friday, July 9, 2004 3:31 PM

74 Universal Drill Through Guide

Editing a target report


To edit a target report:
1. Select the report in the Assigned Documents list.
The Add button becomes a Set button.

2. Modify the document name, caption or comment as necessary.


3. Click Set.

Deleting a target report


To remove a report from the target reports list:
1. Select the report in the Assigned Documents list.
2. Click Remove.
The report is removed from the list.

Building Translation Maps


ewuds.book Page 75 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 75

Working with existing translation maps


You can use UDS Designer to open and modify an existing translation map.
Because there is no file association between UDS Designer and UDM files, you
cannot open translation maps by double-clicking them in Windows Explorer.
To open a translation map:
1. Select Open on the File menu.
The Open Translation Map dialog box opens.

2. Select a translation map and click OK.


The translation map is loaded into UDS Designer.

Working with existing translation maps


ewuds.book Page 76 Friday, July 9, 2004 3:31 PM

76 Universal Drill Through Guide

Changing the originating and target data sources


After you have built a translation map, you can change its source and/or target
data sources.

To change the originating data source


1. Click Change Originating Data Source on the Data Sources menu.
The OLAP Source Information dialog box appears.

2. Enter the name of the OLAP server in the OLAP Server box.
3. Select the OLAP server type from the Server Type dropdown list.
4. Enter your OLAP server username and password in the User Name and
Password boxes. (This step does not apply to MS OLAP.)
5. Click Connect.
UDS Designer attempts to connect to the server using the information you
have given. If connection is successful, the DataBases dropdown list box is
populated with names of the OLAP databases available on the server.
6. Select the database containing the cube you want to access from the
Databases dropdown list box.
7. The Cubes dropdown list box is populated with the names of all the cubes
available in the database you selected.
8. Select the cube that you want to connect to from the Cubes dropdown list box.
9. Click Load Cube.

Building Translation Maps


ewuds.book Page 77 Friday, July 9, 2004 3:31 PM

Universal Drill Through Guide 77

The OLAP Source Information pane is populated with the dimensions, levels and
hierarchies in the source cube. In addition, the translation map is populated with
all the dimensions, hierarchies and levels in the cube.

NOTE
When you change the originating data source, the current map information is lost.

To change the target data source


1. Click Change Target Data Source on the Data Sources menu.
The OLAP Source Information dialog box appears if your are working with an
OLAP to OLAP map.

The Universe Target Information dialog box appears if you are working with
an OLAP to relational map.

2. Follow the procedure outlined in To change the originating data source on


page 76 to select a different OLAP cube, or select the universe and click
Change Originating Data Source to select a different universe.

Working with existing translation maps


ewuds.book Page 78 Friday, July 9, 2004 3:31 PM

78 Universal Drill Through Guide

Making translation maps available to


WebIntelligence
After you have built your translation maps, you need to make them available to
WebIntelligence so that the Drill Through Service can translate the user’s context
when they click on a drillable cell. To do this, place your maps (*.UDM files) in the
Data folder in your WebIntelligence installation, for example C:\Program
Files\Business Objects\Business Objects Enterprise 6\OLAPData\UDSMaps.
You then need to stop and restart the WebIntelligence DTS Service to load the
translation map. To do this:
1. Click Update UDS on the toolbar.
The Universal Drill Through Service Update dialog box appears.

2. Type the name of the server and the port number, then click Update.

Building Translation Maps


ewuds.book Page 79 Friday, July 9, 2004 3:31 PM

WebIntelligence in Drill Through

chapter
ewuds.book Page 80 Friday, July 9, 2004 3:31 PM

80 Universal Drill Through Service Guide

Overview
This chapter concentrates on the WebIntelligence side of drill through. It looks at
creating WebIntelligence target reports as well as the workflow that the user
follows when drilling through to a target report.

WebIntelligence in Drill Through


ewuds.book Page 81 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 81

Creating WebIntelligence target reports


Filters, conditions and prompts
The Universal Drill Through Service applies drill contexts to target reports
through the use of filters. For example, if you drill on the Fashion member of the
Product dimension, the Drill Through Service applies a condition that restricts the
Product dimension to Fashion.
The Drill Through Service deletes any existing filters on a report before applying
drill filters. This is to avoid conflicting filters. For example, a report already
contains a filter restricting Country to ‘US’, then the Drill Through Service adds a
filter restricting Country to ‘France’. The resulting filter - Country = ‘US’ and
‘France’ - returns no data.
As a result, you should create new reports to use with drill through, rather than
use existing reports that might contains filters that you want to retain.

Prompts
Prompts work by applying filters to a report. Your target reports should not
contain prompts on dimensions that are enabled for translation in the translation
map. The prompt filter might combine with the drill filter in the way described
above to filter all data from the report.

Sample target report


The best way to understand drill through target reports and their relationship to
source documents is to refer to the samples provided with WebIntelligence. The
sample source reports are based on the Retail2002 OLAP cube, and provide
data at a more detailed level than the data in the cube. The Universal Drill
Through Service applies filters to the reports depending on where the user
chooses to drill in the source cube.

Making target reports available for drill through


You make target reports available by uploading them to the ’Corporate
Documents’ area of WebIntelligence, then refreshing the list of corporate
documents. The reports can then be accessed by users who need to drill through
from OLAP cubes.

Creating WebIntelligence target reports


ewuds.book Page 82 Friday, July 9, 2004 3:31 PM

82 Universal Drill Through Service Guide

Drill through workflow


This section describes what happens in WebIntelligence when a user drills
through from an OLAP cube to a universe.

Where can the user drill in a report?


UDS supports single or multiple-cell drill through from both measure and member
cells. For example, the user might choose to drill down into sportswear revenues
in California in Q1 2000 (measure cell) or drill down into fashion products
(member cell).

Member
cell

Measure cell

WebIntelligence in Drill Through


ewuds.book Page 83 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 83

Starting drill through


To start drill through:
1. Select the cell in the report.
The cell is highlighted.

Cell selected for drill


through

Drill through workflow


ewuds.book Page 84 Friday, July 9, 2004 3:31 PM

84 Universal Drill Through Service Guide

2. Click the Drill Through button on the toolbar.


The Drill Through dialog box appears.

3. Select a target report from the list and click OK.

WebIntelligence in Drill Through


ewuds.book Page 85 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 85

The target report opens at the context where you started drill through.

The target report


In the example above you drilled on the cell showing sales revenues for
sportswear products California for Q1 of 2000. The Drill Through Service
therefore applied filters to restrict the target report to 2000Q1, sportswear, and
California. As a result, the target report displays sales revenue by product
department by month by sales person within these restrictions.

Drilling on multiple cells


Drilling on multiple cells works on the same principle. The Drill Through Service
builds a filter based on the cells you selected. These cells can be values,
members, or a combination of the two. They do not have to be contiguous in the
report.
The following examples show various multiple-selection scenarios and the the
filters generated by the Drill Through Service.

Drill through workflow


ewuds.book Page 86 Friday, July 9, 2004 3:31 PM

86 Universal Drill Through Service Guide

EXAMPLE
Selecting multiple measure cells

In this situation the filter generated by the Drill Through Service is


(2000 and Fashion) or (2000 and Work)

EXAMPLE
Selecting member labels from different dimensions

In this situation the filter generated by the Drill Through Service is


100 and West

WebIntelligence in Drill Through


ewuds.book Page 87 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 87

EXAMPLE
Selecting member labels at the same level

In this situation the filter generated by the Drill Through Service is


West or Central

EXAMPLE
Selecting member labels from the same and different dimensions

In this situation the filter generated by the Drill Through Service is


2001 and (Sportswear or Work)

EXAMPLE
Selecting member labels and values

In this situation the filter generated by the Drill Through Service is


((2000 or 2001) and Fashion) or (2001 and Sportswear)

Drill through workflow


ewuds.book Page 88 Friday, July 9, 2004 3:31 PM

88 Universal Drill Through Service Guide

WebIntelligence in Drill Through


ewuds.book Page 89 Friday, July 9, 2004 3:31 PM

Managing and Maintaining a Drill


Through Environment

chapter
ewuds.book Page 90 Friday, July 9, 2004 3:31 PM

90 Universal Drill Through Service Guide

Overview
This chapter describes the ongoing maintenance tasks that you will need to carry
out to keep a drill through environment up-to-date and functioning correctly.

Managing and Maintaining a Drill Through Environment


ewuds.book Page 91 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 91

Why maintenance is necessary


You design your translation maps to work with the current structures of your
source cubes and target cubes/universes, but it is rare for the structure of
databases to remain the same for long. If the structure of your source cube or
target cube/universe changes after you have installed your translation maps, you
will need to modify the maps to take account of the changes. If you do not, it is
likely that drill through will no longer work correctly. You need to be aware of
changes to both cube levels and individual cube members that might affect drill
through.

NOTE
Remember that after you have modified a translation map, you need to stop and
then restart the drill through service (see Making translation maps available to
WebIntelligence on page 78).

Why maintenance is necessary


ewuds.book Page 92 Friday, July 9, 2004 3:31 PM

92 Universal Drill Through Service Guide

Changes that require updates


Changes to either levels or specific members require that translation maps be
updated.

Level changes
The following changes will require you to update your translation map:
• A cube dimension is added, removed or renamed
• A cube hierarchy is added, removed or renamed
• A cube level is added, removed or renamed
• Any universe class or object referenced by the translation map is removed or
renamed

Member changes
Any of the above changes affect member translations also. You must also
account for new members that require additional member-specific translation
rules. If such members are added to the source cube, you will need to add
corresponding member translations to the translation map.

Managing and Maintaining a Drill Through Environment


ewuds.book Page 93 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 93

Problems caused by outdated translation maps


The problems caused by failing to update a translation map depend on the
changes made to the source cube or target universe. If a source cube dimension,
hierarchy or level or a target universe class or object referenced by a translation
map is removed or renamed, drill through will fail. If additional levels, hierarchies,
levels, members are added in the source cube, or additional classes and objects
are added in the target universe, the Drill Through Service will simply ignore them
because it will not be aware of their existence.

Problems caused by outdated translation maps


ewuds.book Page 94 Friday, July 9, 2004 3:31 PM

94 Universal Drill Through Service Guide

Source cube and target cube/universe locations


Translation maps are based on cube and universe metadata, not on the cubes
and universes themselves. This means that any cube can be a drill through
source as long as its metadata is compatible with the metadata in the translation
map. The same applies to target universes and cubes. You will not necessarily
’break’ a translation map by using different cubes and universes from the ones
you used to build the map in the first place. The source and target datasources
must have the same names as the ones specified in the map (the Drill Through
Service passes these names during drill through), but their physical locations are
irrelevant.

Managing and Maintaining a Drill Through Environment


ewuds.book Page 95 Friday, July 9, 2004 3:31 PM

Universal Drill Through Service Guide 95

Index
B F
Business Objects feedback
consulting services 11, 13 on documentation 10
documentation 10
Documentation Supply Store 9 K
support services 11
Knowledge Base 12
training services 11, 13

M
C
multimedia
consultants
quick tours 10
Business Objects 11
customer support 11
O
OLAP source cube
D
design requirements 39
demo
Online Customer Support 11
materials 9
Developer Suite 10, 12
documentation R
CD 9 relational database
feedback on 10 normalized 31
on the web 9 snowflake schema 32
printed, ordering 9 star schema 32
roadmap 9
search 9 S
Documentation Supply Store 9
search
drill through
documentation 9
and Business Objects 25
support
architecture 22-24
customer 11
components 21-22
defined 20-21
previous difficulty of 24 T
drill through samples target database
described 27 design requirements 35
designing 43
Essbase Accounts dimension 44
E Essbase member-naming restrictions 44
education see training

Index
ewuds.book Page 96 Friday, July 9, 2004 3:31 PM

96 Universal Drill Through Service Guide

target reports
defined 18
target universe
creating from the target database 46
design requirements 37
Tips & Tricks 10
training
on Business Objects products 11
translation maps
defined 17

U
UDS 16, 21
UDS Designer 48-75
Universal Drill Through Service see UDS 16
universes 25, 34
relation to cubes 35

W
web
customer support 11
getting documentation via 9
useful addresses 12
WebIntelligence administrator
required knowledge 19
tasks 17-18

Index

Вам также может понравиться