You are on page 1of 388

E Oracle BI Suite Enterprise

Edition 10g Bootcamp


Activity Guide
D58344GC11
Edition 1.1
July 2009
D61234
Copyright 2009, Oracle. All rights reserved.
Disclaimer
This document contains proprietary information and is protected by copyright and
other intellectual property laws. You may copy and print this document solely for your
own use in an Oracle training course. The document may not be modified or altered in
any way. Except where your use constitutes "fair use" under copyright law, you may
not use, share, download, upload, copy, print, display, perform, reproduce, publish,
license, post, transmit, or distribute this document in whole or in part without the
express authorization of Oracle.
The information contained in this document is subject to change without notice. If you
find any problems in the document, please report them in writing to: Oracle University,
500 Oracle Parkway, Redwood Shores, California 94065 USA. This document is not
warranted to be error-free.
Restricted Rights Notice
If this documentation is delivered to the United States Government or anyone using
the documentation on behalf of the United States Government, the following notice is
applicable:
U.S. GOVERNMENT RIGHTS
The U.S. Governments rights to use, modify, reproduce, release, perform, display, or
disclose these training materials are restricted by the terms of the applicable Oracle
license agreement and/or the applicable U.S. Government contract.
Trademark Notice
Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other
names may be trademarks of their respective owners.
Author
Jim Sarokin
Technical Contributors
and Reviewers
Matt Bedin
Dan Hilldale
Sujatha Kalastriraju
Gerry Langton
Sharonda Pettiett
Phillip Scott
Kasturi Shekhar
Scott Silbernick
Krishnan Viswanathan
Kurt Wolff
Editors
Amitha Narayan
Richard Wallis
Raj Kumar
Graphic Designer
Samir Mozumdar
Publishers
Sujatha Nagendra
Michael Sebastian Almeida
Veena Narasimhan

iii

Contents



Practice 3-1: Exploring an Oracle BI Repository.......................................................... 1
Practice 4-1: ABC Business Scenario........................................................................ 15
Practice 4-2: Gathering Information to Build an Initial Business Model ..................... 23
Practice 4-3: Creating a Repository and Importing a Data Source............................ 29
Practice 4-4: Defining Keys and Joins ....................................................................... 41
Practice 4-5: Creating Alias and Select Tables.......................................................... 47
Practice 5-1: Creating the Business Model ................................................................ 53
Practice 5-2: Creating Simple Measures ................................................................... 61
Practice 6-1: Creating the Presentation Layer ........................................................... 65
Practice 7-1: Testing the Repository.......................................................................... 73
Practice 8-1: Enhancing the Product Dimension ....................................................... 85
Practice 8-2: Creating Multiple Sources for a Logical Table Source (Manual) .......... 88
Practice 8-3: Creating Multiple Sources for a Logical Table Source (Automatic) ...... 96
Practice 8-4: Adding a New Logical Table Source..................................................... 97
Practice 9-1: Creating Calculation Measures by Using Logical Columns................ 101
Practice 9-2: Creating Calculation Measures by Using Physical Columns.............. 108
Practice 9-3: Creating Calculation Measures by Using the Calculation Wizard....... 113
Practice 10-1: Creating Dimension Hierarchies....................................................... 121
Practice 10-2: Creating Level-Based Measures ...................................................... 131
Practice 10-3: Creating Share and Rank Measures ................................................ 136
Practice 11-1: Using Aggregate Tables ................................................................... 141
Practice 11-2: Using the Aggregate Persistence Wizard......................................... 152
Practice 12-1: Modeling a Value-Based Partition .................................................... 161
Practice 12-2: Modeling a Fact-Based Partition....................................................... 170
Practice 12-3: Using the Calculation Wizard to Create Derived Measures.............. 175
Practice 13-1: Creating Dynamic Repository Variables........................................... 179
Practice 13-2: Using Dynamic Repository Variables as Filters................................ 186
Practice 14-1: Creating Time Series Comparison Measures................................... 191
Practice 15-1: Localizing Oracle BI Metadata.......................................................... 197
Practice 16-1: Setting an Implicit Fact Column........................................................ 203
Practice 17-1: Creating Users and Groups.............................................................. 209

iv
Practice 17-2: Setting Permissions for Users and Groups....................................... 214
Practice 17-3: Authenticating Users Using an External Database........................... 218
Practice 17-4: Authenticating Users with Database Authentication......................... 222
Practice 17-5: Setting Query Limits and Timing Restrictions................................... 226
Practice 17-6: Setting Filters to Personalize Information......................................... 230
Practice 18-1: Inspecting Cache Files ..................................................................... 237
Practice 18-2: Modifying Cache Parameters ........................................................... 244
Practice 19-1: Enabling Usage Tracking.................................................................. 251
Practice 20-1: Setting Up a Multi-User Environment ............................................... 257
Practice 20-2: Using a Multi-User Development Environment ................................. 262
Practice 21-1: Creating Requests in Oracle Business Intelligence Answers........... 271
Practice 22-1: Adding Filters to a Request .............................................................. 281
Practice 22-2: Adding a Column Filter Prompt to a Request ................................... 285
Practice 22-3: Adding an Image Prompt to a Request............................................. 290
Practice 23-1: Combining Requests Using Set Operations ..................................... 293
Practice 23-2: Executing a Direct Database Request.............................................. 298
Practice 24-1: Modifying Views................................................................................ 303
Practice 24-2: Adding a Column Selector to a Request........................................... 308
Practice 24-3: Performing Common Tasks in Views................................................ 312
Practice 24-4: Using the Table View........................................................................ 319
Practice 24-5: Working with Views........................................................................... 326
Practice 25-1: Showing Results with Pivot Tables................................................... 333
Practice 26-1: Creating a New Interactive Dashboard Page ................................... 341
Practice 26-2: Using Prompts to Filter Interactive Dashboard Data ........................ 344
Practice 27-1: Embedding Content in an Interactive Dashboard............................. 349
Practice 28-1: Modifying Oracle Business Intelligence Cascading Style Sheets..... 351
Practice 28-2: Using Instanceconfig.xml to Administer Oracle Business
Intelligence Answers............................................................................................. 354
Practice 28-3: Using XML Message Files to Administer Oracle Business
Intelligence Answers............................................................................................. 359
Practice 29-1: Administering Users and Groups...................................................... 363
Practice 29-2: Managing the Catalog....................................................................... 367
Practice 30-1: Configuring Scheduler Tables .......................................................... 371
Practice 30-2: Configuring the Oracle Business Intelligence Scheduler.................. 374


v
Practice 30-3: Creating and Delivering an iBot ........................................................ 376
Practice 30-4: Chaining an iBot ............................................................................... 380



























Module 3: Repository Basics
E Oracle BI Suite Enterprise Edition 10g Bootcamp 1
Practice 3-1: Exploring an Oracle BI Repository
Goal
To explore the three layers of an Oracle BI repository
Scenario
Before beginning the development of a repository, you use the Administration
Tool to explore an existing repository to get a better understanding of its three
layers and how the layers relate to one another, and to understand the link
between physical data sources and the information presented in the Oracle BI
Answers user interface.
Time
1520 minutes
Instructions
1. Stop the Oracle Business Intelligence Server service.
a. Double-click the Services icon on your desktop.
b. Right-click the Oracle BI Server service and click Stop.
c. Ensure that the status is blank, that is, the service is stopped.
d. Minimize the Services window.
2. Copy the repository for this practice to the appropriate directory.
a. Navigate to D:\Labs.
b. Copy the ClassStart.rpd file.
c. Paste the file in D:\OracleBI\server\Repository.
3. Start the Oracle BI Administration Tool and open the ClassStart repository in offline mode.
a. Select Start > Programs > Oracle Business Intelligence > Administration.
b. Select File > Open > Offline.
c. In the Open dialog box, double-click ClassStart.rpd.
d. Log in as Administrator; no password needed.
4. Examine the properties of the ORCL database object.
a. In the Physical layer, double-click the ORCL database object to view its properties.
b. Click the General tab.
c. What is the database platform type for this database?


d. Click the Features tab. Each database comes with a set of features that determine the SQL
Oracle BI Server will issue for this database. Features can have a Boolean value (on or off),
integer value, or a string value. Scroll to the right to view the Value and Default columns.
The features are specified in the DBFeatures.ini file located in the
Module 3: Repository Basics
2 E Oracle BI Suite Enterprise Edition 10g Bootcamp
D:\OracleBI\server\Config directory. If the Default check box is selected, the
default SQL features are identified. Default SQL features that are supported by the database
type of the data source are automatically selected.
e. Click the Connection Pools tab. This tab identifies all the connection pools associated with
this database.
f. Click the Display Folders tab. Physical layer objects can be organized into display folders.
When there are display folders in the Physical layer, they are listed here.
g. Click Cancel to close the Properties dialog box.
5. Explore the properties of a connection pool object.
a. In the Physical layer, expand the ORCL database object.
b. Double-click the SUPPLIER CP connection pool object.
c. What is the call interface type for this connection pool?


The call interface is the application programming interface (API) used to access the data
source. Some databases may be accessed using native APIs, some using ODBC.
d. What is the data source name for this connection pool?


The data source is accessed by Oracle Call Interface (OCI). The data source name, ORCL, is
a tnsnames.ora entry.
e. Click Cancel.
6. Examine the properties of a physical schema and its physical table objects.
a. Expand the SUPPLIER2 schema folder to display the physical table objects in the Physical
layer. These physical table objects map to tables in the physical database.

There are more tables in the physical database. The tables displayed here are the tables that
have been imported into the Physical layer. You learn more about importing tables in the
lesson titled Building the Physical Layer of a Repository.
b. Expand D1_ORDERS2 to view the physical columns for this table. D1_ORDERS2 is the
fact table in this business model. These columns correspond to the columns in the physical
database.
Module 3: Repository Basics
E Oracle BI Suite Enterprise Edition 10g Bootcamp 3


c. Right-click D1_ORDERS2 and select View Data. The first 100 rows of data for this table are
displayed.

d. Click Close.
e. Double-click the D1_ORDERS2 table object to view its properties.
f. Click the Columns tab to view the columns in this table. This is another way to create, view,
and modify physical columns.
g. Click the Foreign Keys tab.
h. Which tables have join relationships with D1_ORDERS2?


Module 3: Repository Basics
4 E Oracle BI Suite Enterprise Edition 10g Bootcamp
i. Double-click one of the foreign keys. The Physical Foreign Key dialog box opens and
displays the join relationship in the Expression field.

j. Click Cancel to close the Physical Foreign Key dialog box.
k. Click Cancel to close the Physical Table dialog box.
l. Right-click D1_ORDERS2 and select Physical Diagram > Object(s) and Direct Joins. The
Physical Diagram opens and displays the physical join relationships.

m. Double-click the connector between D1_CUSTOMER2 and D1_ORDERS2. The Physical
Foreign Key dialog box opens and displays the join relationship in the Expression field. This
is another way to view, build, and modify joins between tables in the Physical layer.
n. Click Cancel.
o. Close the Physical Diagram.


Module 3: Repository Basics
E Oracle BI Suite Enterprise Edition 10g Bootcamp 5
7. Examine the properties of a physical column object.
a. Expand the D1_CUSTOMER2 table object.
b. Double-click the Address physical column to view the properties.
c. Can this column object have null values?


d. Click Cancel.
8. Examine the properties of a logical table in the SupplierSales business model.
a. If necessary, expand the SupplierSales business model in the Business Model and Mapping
layer.
b. What are the logical table objects in the SupplierSales business model?


c. Expand the SalesFacts logical table to view the logical columns for this table. SalesFacts is
the logical fact table in this business model. These columns map to columns in the Physical
layer.

d. Double-click the SalesFacts logical table object.
e. Click the General tab. Note that the logical columns and their corresponding properties are
listed. On this tab you can change the name of the logical table, reorder the columns, and
add, edit, or remove a column.
f. Click the Sources tab. The source for this logical table is the D1_ORDERS2 table that you
explored in the Physical layer. In a more complex business model, there may be many
physical sources for a logical table.
g. Click the Keys tab. Typically, there are no keys defined for a logical fact table.
h. Click the Foreign Keys tab. Foreign key joins are typically not used in the Business Model
and Mapping layer. All joins in the Business Model and Mapping layer are logical joins.
i. Click Cancel to close the Logical Table properties dialog box.
Module 3: Repository Basics
6 E Oracle BI Suite Enterprise Edition 10g Bootcamp
j. Right-click SalesFacts and select Business Model Diagram > Whole Diagram. The
Logical Table Diagram opens and displays the logical join relationships.

k. Double-click the connector between Customers and SalesFacts. The Logical Join dialog box
opens. Note that there is no join expression in the Expression field and that there is a one-to-
many relationship between the Customers logical dimension table and the SalesFacts logical
fact table. You learn more about complex logical joins in the lesson titled Building the
Business Model and Mapping Layer of a Repository.

l. Click Cancel to close the Logical Join dialog box.
m. Close the Logical Table Diagram.
Module 3: Repository Basics
E Oracle BI Suite Enterprise Edition 10g Bootcamp 7
9. Examine the logical table source for the SalesFacts logical table.
a. Expand the Sources folder for the SalesFacts table to display the D1_ORDERS2 logical table
source for this logical table. In this example, there is only one logical table source. It is,
however, possible to have many logical table sources for a single logical table.
b. Double-click the D1_ORDERS2 logical table source to view the properties.
c. Click the General tab.
d. Which physical table does the D1_ORDERS2 logical table source map to?


e. Click the Column Mapping tab.
f. If necessary, scroll to the right to view the Physical Table column. Do all columns in the
SalesFacts logical table map to the same physical table?


g. Which physical column does the Dollars logical column map to?


h. Explain why some logical columns have names that are different from the physical columns
to which they map.


i. Click the Content tab. Currently, there is no information on the tab. Later in this course, you
learn how to use this tab to identify aggregation content and fragmentation content.
j. Click Cancel to close the Logical Table Source dialog box.
10. Examine the properties of a logical column in the SalesFacts logical table.
a. Double-click the Dollars logical column to open the properties window. Dollars is a measure
in this business model.
b. Click the General tab. This tab provides general information about the column, like the
column name, the table it belongs to, and a description of the column.
c. Click the Data Type tab.
d. Which physical table and physical column does the Dollars logical column map to?


e. Which logical table source does the Dollars logical column belong to?


f. Double-click the D1_ORDERS2 logical table source in this dialog box. Note that this is
another way to access the Logical Table Source properties dialog box.
g. Click Cancel to close the Logical Table Source properties dialog box.
h. Which aggregation rule is applied to the Dollars logical column?


Module 3: Repository Basics
8 E Oracle BI Suite Enterprise Edition 10g Bootcamp
i. Click the Aggregation tab. Note that the default aggregation rule is set to Sum. It is common
to apply aggregation rules to measures in business models. Open the aggregation rule drop-
down list to see the other available aggregation rules.

j. Make sure that the Sum aggregation rule is selected and click Cancel to close the Logical
Column dialog box.
11. Examine the properties of the SupplierSales presentation catalog object.
a. In the Presentation layer, double-click the SupplierSales presentation catalog to open the
Presentation Catalog properties dialog box.
b. Click the General tab. Note that the presentation catalog name is the same as the business
model name. This is because the presentation catalog was created by dragging the business
model from the Business Model and Mapping layer to the Presentation layer. If desired, you
could use this tab to change the name of the presentation catalog. The description appears in
the Answers user interface.
c. Click Permissions to open the Permissions dialog box. This shows the permissions for all
users and groups in the repository. Currently, there are no users and groups defined, so the
default is to give everyone read permission for this presentation catalog. You learn more
about setting up security in the lesson titled Security.
d. Click Cancel to close the Permissions dialog box.
e. Click the Presentation Tables tab to display a list of presentation tables. You can use this
tab to add, remove, edit, or change the display order of the presentation tables.
f. Click the Aliases tab. If you change the name of a presentation catalog, the tool
automatically creates an alias using the previous name. You can use this tab to specify or
delete an alias for a presentation folder.
g. Click Cancel to close the Presentation Catalog dialog box.
Module 3: Repository Basics
E Oracle BI Suite Enterprise Edition 10g Bootcamp 9
12. Examine the properties of a presentation table in the SupplierSales presentation catalog.
a. In the Presentation layer, expand SupplierSales to view the presentation tables.
b. Double-click the SalesFacts table to view the properties.
c. Click the General tab. You can use this tab to change the name of the presentation table. A
description would appear as a tool tip in the Answers user interface.
d. Click the Columns tab to see a list of columns in the SalesFacts presentation table. You can
use this tab to add, remove, edit, or change the display order of the presentation columns.
e. Which logical table and logical column in the Business Model and Mapping layer does the
Dollars presentation column map to?


f. Double-click Dollars to open the Presentation Column properties dialog box. This is one
method for viewing and modifying presentation column properties.
g. Click Cancel to close the Presentation Column properties dialog box.
h. Click Cancel to close the Presentation Table properties dialog box.
i. Double-click the SupplierSalesDM presentation catalog.
j. Click the General tab. Note that this presentation catalog also maps to the SupplierSales
business model. Many presentation catalogs can map to a single business model, but each
presentation catalog can map to only one business model.
k. Click Cancel to close the Presentation Catalog dialog box.
13. Examine the properties of a presentation column in the SalesFacts table.
a. Expand the SalesFacts presentation table.
b. Double-click Dollars to open the Presentation Column properties dialog box. Note that this is
the same dialog box you saw earlier. This is another method for viewing and modifying
presentation column properties.
c. Click Cancel to close the Presentation Column properties dialog box.
d. Click File > Close to close the repository without saving any changes.
e. Leave the Administration Tool open.
14. Modify the NQSConfig.ini file to load the ClassStart repository on Oracle BI Server startup.
a. Navigate to D:\OracleBI\server\Config.
b. Double-click NQSConfig.ini to open the file.
c. Scroll to the REPOSITORY section.
d. Modify the file to load the ClassStart repository. Your file should look similar to this:

e. Save and close NQSConfig.ini.
15. Start the Oracle BI Server service.
a. Return to the Services window.
Module 3: Repository Basics
10 E Oracle BI Suite Enterprise Edition 10g Bootcamp
b. Right-click the Oracle BI Server service and select Start.
c. Wait until the status displays as Started.
d. Minimize the Services window.
e. Navigate to D:\OracleBI\server\Log.
f. Open NQServer.log. This log file contains information about Oracle BI Server. It is
useful in diagnosing and troubleshooting Oracle BI Server startup and shutdown issues.
g. Ensure that you see the message Oracle BI Server started. It may be necessary to scroll to
the bottom of the file.
h. Close NQServer.log.
16. Examine the relationship between the columns in the Presentation layer and the columns
displayed in Oracle BI Answers.
a. In the Administration Tool, select File > Open > Offline.
b. Double-click ClassStart.rpd.
c. Click Yes to open as read-only.
d. Click OK to log in as Administrator; no password needed.
e. Select Start > Programs > Oracle Business Intelligence > Presentation Services.
f. Log in as Administrator; no password needed.
g. Click the Answers link to navigate to the Answers start page.
h. What are the names of the subject areas listed on the Answers start page?


i. Which object in the repository corresponds to the SupplierSales subject area in Answers?


j. Size the windows of Answers and the Administration Tool so you can see the two
applications side-by-side.
k. Click the SupplierSales subject area link on the Answers start page.
l. Expand the Facts table in Answers to see the nested SalesFacts table.
m. Expand the SupplierSales presentation catalog in the Administration Tool. Note that the
SupplierSales tables listed in Oracle BI Answers have the same names as the tables listed in
the Presentation layer in the Administration Tool.
n. Expand the SalesFacts table in Answers.
o. Expand the SalesFacts table in the Presentation layer in the Administration Tool. Note that
the column names in the Presentation layer of the Administration Tool are the same as the
columns listed for the SalesFacts table in Answers.
p. Do some more exploration on your own. Examine tables and columns of the SupplierSales
subject area in Answers and note how they correspond to the Presentation layer. The key
point to understand is this: What you see in Answers is driven by what is defined in the
repository in the Administration Tool.
17. Create a simple request.
a. In Answers, expand the Customers table and select the Region column to add it to the
request criteria in the right pane.
Module 3: Repository Basics
E Oracle BI Suite Enterprise Edition 10g Bootcamp 11
b. Expand Facts > SalesFacts and select the Dollars column to add it to the request.

c. Click the Results tab. The table displays the total dollars (sales) for each region.

18. Log out of Oracle Business Intelligence.
19. Close the browser.
20. In the Administration Tool, close the repository.
21. Select File > Exit to close the Administration Tool.
Module 3: Repository Basics
12 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solutions 3-1: Exploring an Oracle BI Repository
Answers
4.c. What is the database platform type for this database?
Oracle 10gR1
5.c. What is the call interface type for this connection pool?
Default (OCI 10g)
5.d. What is the data source name for this connection pool?
ORCL
6.h. Which tables have join relationships with D1_ORDERS2?
D1_CUSTOMER2, D1_PRODUCTS, D1_CALENDAR2
7.c. Can this column object have null values?
Yes
8.b. What are the logical table objects in the SupplierSales business model?
Customers, Periods, Products, SalesFacts
9.d. Which physical table does the D1_ORDERS2 logical table source map to?
D1_ORDERS2
9.f. Scroll to the right to view the Physical Table column. Do all columns in the SalesFacts
logical table map to the same physical table?
Yes
9.g. Which physical column does the Dollars logical column map to?
ACTLEXTND
9.h. Explain why some logical columns have names that are different from the physical
columns to which they map.
Because the names were changed in the logical (BMM) layer
10.d. Which physical table and physical column does the Dollars logical column map to?
D1_ORDERS2.ACTLEXTND
10.e. Which logical table source does the Dollars logical column belong to?
D1_ORDERS2
10.h. Which aggregation rule is applied to the Dollars logical column?
Sum
Module 3: Repository Basics
E Oracle BI Suite Enterprise Edition 10g Bootcamp 13
12.e. Which logical table and logical column in the Business Model and Mapping layer does the
Dollars presentation column map to?
SalesFacts.Dollars
16.h. What are the names of the subject areas listed on the Answers start page?
SupplierSales, SupplierSalesDM
16.i. Which object in the repository corresponds to the SupplierSales subject area in Answers?
SupplierSales presentation catalog
Module 3: Repository Basics
14 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 15
Practice 4-1: ABC Business Scenario
Goal
To read the ABC document to familiarize with the business scenario for the
fictitious company used throughout the course
Time
1015 minutes
Background
ABC sells food and nonfood items to restaurant chain customers throughout the United States.
ABCs product line includes food, condiments, cookware, clothing, and other miscellaneous
restaurant supplies.
ABC employees currently rely on reports generated by their IT department to analyze sales and
shipment data. These reports are generated monthly and therefore contain static information. ABC is
looking for a way to generate dynamic, interactive reports to analyze this data in order to effectively
manage its orders, monitor sales performance, and increase overall customer satisfaction. ABC
recognizes the importance of a business intelligence solution that will provide its employees with the
data and tools they need to query large data sets, generate reports, analyze data, identify trends, and
monitor business performance.
To achieve these goals, ABC has decided to implement an Oracle Business Intelligence (BI)
solution. The solution will enable its sales executives and operations managers to answer business
questions that are important to running the part of the business for which they are responsible. The
desired system will provide timely, up-to-date sales order data and provide sales and shipment
performance monitoring, which will allow ABC to better its customer service efforts. ABC also has
the vision of making this data directly available to customers, so they can analyze their purchase
history better and compare it with what is being purchased nationally or regionally. This initiative is
consistent with ABCs commitment to deliver a high quality business intelligence solution that will
set it apart from its competitors, and result in additional sales and revenue.
Module 4: Building the Physical Layer of a Repository
16 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Business Requirements
You are a consultant hired by ABC to implement a business intelligence solution. From your initial
interviews with the managers at ABC, you obtain the following information about ABC:
Managers want to use their own information to ask and answer questions about the sales history
of their products, the buying history of their customers, the order fulfillment performance of their
operations group, and the selling performance of the sales force.
The company has little experience in data analysis and does not expect to hire any data analysts
in the future. Therefore, the managers want to be able to ask relevant questions and analyze the
results themselves using an intuitive user interface.
The database has about 350,000 invoice-level records that span the period from January 2, 1998
to April 21, 1999.
To make this kind of information widely available within the enterprise, the business intelligence
solution must have a structure that is consistent with the way employees think about the business.
From further interviews and an examination of the existing sample reports presenting invoice-based
data, you determine the following:
ABC employees think about their business in terms of sales, products and product hierarchies,
time periods, and relationships between customers and the sales force.
ABC employees measure product data at five levels. The product levels from the top level to the
bottom (most detailed) level are:
1. Total
2. Type
3. Subtype
4. Generic Product
5. Specific Product
ABC employees measure sales organization data at five levels. These levels mirror
organizational management responsibilities. They are (in descending order):
1. Total
2. Region
3. District
4. Sales Representative
5. Customer
ABC employees measure time data at five levels:
1. Total time
2. Year
3. Quarter
4. Month
5. Day
Many existing reports contain data presented at these levels. An example of a report containing
product data levels is:
o Total Product sales
o Product Type sales: Cheese
o Product Subtype sales: American Cheese
o Generic Product sales: American Cheese Slices
o Specific Product sales: 2 Pack American Cheese Slices 16 Slices

Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 17
In addition to these hierarchies, ABC wants to group and analyze customers using geographical
attributes such as postal code, city, and state. They also want to analyze products by characteristics
such as diet type and suppliers.
The most common measures used in reports are dollar sales, units ordered, units shipped, and net
weight shipped. Another important measure for order fulfillment is cuts, that is, the difference
between the units ordered and the units shipped. Operations management wants to track this because
cuts equate to lost sales, and operations management is responsible for minimizing cuts.
ABC would like to analyze these measures at all levels of the hierarchies, by the important product
and customer attributes, by the various time periods, and be able to compare performance with
previous years.
Module 4: Building the Physical Layer of a Repository
18 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Source Data
By interviewing ABCs database administrators and examining the documents they provide, you
learn that the source data resides in an invoice system on an Oracle database. The core data
containing the business measures is stored in an invoice (orders) table.
In addition to the invoice information, there are various tables providing information about
customers, the product lines, the time periods, and the relationship between customers and the
companys sales organization.
The relevant data exist in the following tables, which are part of the invoice schema:


The following are examples of data in some of the tables.

D1_PRODUCTS


Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 19
D1_PRODUCT_TYPE


D1_PRODUCT_SUBTYPE



D1_CUSTOMER2


Module 4: Building the Physical Layer of a Repository
20 E Oracle BI Suite Enterprise Edition 10g Bootcamp
D1_ORDERS2

Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 21
Training Objective
The primary objective of this training is to build the metadata and administer Oracle BI Server to
support the business requirements of ABC. The metadata will allow ABC employees to build
interactive reports and Interactive Dashboards that they can use to analyze, monitor, and manage
business better, and improve overall customer satisfaction.

The recommended strategy for building metadata is to use an iterative approach. Begin by building a
relatively simple repository:

Minimize the number of source tables.
Expose only stored measures with simple aggregation rules.
Use the query log to check query results.
Create presentation folders and test with Answers.

After the initial repository is built and tested, add additional features to the business model:

Import the additional physical tables needed to support the business model.
Add calculated measures that involve operations on existing columns.
Add more complex calculated measures (for example, level-based measures and shares).
Add time series calculations (for example, percentage change in a measure compared to that
in the same period in the previous year).
Add security information.
Add aggregate table data sources to improve performance.
Localize Oracle BI metadata and data.
Configure many-to-many relationships.
Configure implicit fact columns.

In the lessons that follow, you follow this strategy to build the metadata that presents the business
model to support the business requirements of ABC. At first, the metadata will include only the basic
set of physical tables needed to support the initial business model. You will add more tables and
complexity in future iterations.


Module 4: Building the Physical Layer of a Repository
22 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 23
Practice 4-2: Gathering Information to Build an Initial
Business Model
Goal
To analyze the business requirements to begin building the metadata
Scenario
Before you begin building the metadata, you need to gather and analyze the
business requirements of the ABC company. In this practice, you use the
information provided in the ABC document that you read in the previous
practice to determine the structure of the initial business model.
Outcome
You identified the structure of the initial business model.
Time
1015 minutes
Instructions
Use the information in the ABC document to help you determine the following information, which
you will need to implement the initial business model.
1. What measures (facts) does ABC want to report on?




2. What hierarchies can you identify?




3. Against which attributes (dimensions) does ABC want to analyze its facts?




4. By which additional attributes does ABC want to analyze products?




Module 4: Building the Physical Layer of a Repository
24 E Oracle BI Suite Enterprise Edition 10g Bootcamp
5. By which geographical attributes does ABC want to analyze data?




6. Complete the following diagram with your identified facts and dimensions:


(Facts)
(Dimension)
(Dimension) (Dimension)
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 25
Module 4: Building the Physical Layer of a Repository
26 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solutions 4-2: Gathering Information to Build an Initial
Business Model
Answers
1. What measures (facts) does ABC want to report on?
Dollar sales, Units Ordered, Units Shipped, Net Weight Shipped, Cuts
2. What hierarchies can you identify?
Product, Time (Period), Customer/Sales Rep
3. Against which attributes (dimensions) does ABC want to analyze its facts?
Product, Time (Period), Customer
4. By which additional attributes does ABC want to analyze products?
Supplier, Diet Type
5. By which geographical attributes does ABC want to analyze data?
Zip Code, City, State
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 27
6. Complete the following diagram with your identified facts and dimensions:



Sales
Time Period
Customer Product
Module 4: Building the Physical Layer of a Repository
28 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 29
Practice 4-3: Creating a Repository and Importing a Data
Source
Goals
To create a new repository and import the table schema from an external data
source
Scenario
First, you check an existing ODBC data source for an Oracle database. Then
you create a new repository and import tables from the SUPPLIER2 schema
into the Physical layer of the repository using the Server Administration Tool.
Outcome You have a new repository file, ABC.rpd, which contains the D1_CALENDAR2,
D1_CUSTOMER2, D1_ORDERS2, and D1_PRODUCTS tables in the Physical
layer.
Time
1015 minutes
Instructions
1. Before you import tables from the SUPPLIER2 schema into the Physical layer of the repository,
you examine the tables and columns defined in the database using Oracle Enterprise Manager.
a. Open Internet Explorer and enter the following URL: http://<machine name>:1158>/em.
b. Log in to the ORCL database as SUPPLIER2/SUPPLIER2; connect as Normal.
2. Examine the SUPPLIER2 schema.
a. Click the Administration link.
b. In the Schema section, under Database Objects, click Tables.
c. In the Schema field, enter SUPPLIER2, if it is not entered automatically.
d. Click Go.
3. Examine the properties of the D1_CALENDAR2 table in the SUPPLIER2 schema.
a. Click the D1_CALENDAR2 link.
b. Is there a primary key constraint defined on this table?


c. How many rows are there in this table?


d. Scroll and examine the properties of the table columns.
e. Repeat this process and examine the D1_CUSTOMER2, D1_ORDERS2, and D1_PRODUCTS
tables.
Module 4: Building the Physical Layer of a Repository
30 E Oracle BI Suite Enterprise Edition 10g Bootcamp
f. When you have finished the process, log out of Oracle Enterprise Manager and close the
browser.
4. Create a new ABC repository file.
a. Select Start > Programs > Oracle Business Intelligence > Administration.
b. Select File > New.
c. To name the repository, enter ABC.rpd in the File Name field and click Save. The ABC
repository opens. Every repository contains three layers. The Physical layer is where
information about the physical data sources is stored. The Business Model and Mapping
layer is where measurements and terms used in business are mapped to the physical data
sources. The Presentation layer is where the business model is customized for presentation to
the user. You can work on each layer at any stage in creating a repository, but the typical
order is to create the Physical layer first, then the Business Model and Mapping layer, and
then the Presentation layer.
5. Import tables from the SUPPLIER2 schema to the Physical layer of the repository.
a. Select File > Import from Database.
b. Select the OCI 10g/11g connection type.
c. In the TNS Name field, enter ORCL.
d. In the User Name field, enter SUPPLIER2.
e. In the Password field, enter SUPPLIER2.

f. Click OK. The Import dialog box opens. This may take a moment.
g. Scroll to the SUPPLIER2 schema folder and expand it.
h. Scroll to view all of the tables in the SUPPLIER2 schema.
i. In the Table name mask field, enter D%.
j. Contract and then reexpand the SUPPLIER2 schema. Note that by entering something in the
Table name mask field, you can filter the tables that appear for selection. The percentage sign
is the wildcard character (as in SQL). The list is filtered when you reopen the container
object (the SUPPLIER2 schema folder in this example). D% filters the list of tables so that
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 31
only tables that begin with D are visible. The filter is case-sensitive.

k. Select the D1_CALENDAR2 table. This automatically deselects any higher-level container
objects in the tree.
l. Press and hold [Ctrl] and select the remaining three tables to import to the Physical layer to
build ABCs initial business model: D1_CUSTOMER2, D1_ORDERS2, and D1_PRODUCTS.
m. Ensure that the check boxes for Tables and Keys are selected. This is the default. The check
boxes allow you to select the information to import. You can import tables, keys, foreign
keys, database views, aliases, synonyms, and system tables. Import tables, aliases, synonyms,
or views only if you plan to generate queries against them. That is, import only objects that
are needed to support your business model. Even if you import extra objects at this point, you
can delete them later if they do not support your business model.
Module 4: Building the Physical Layer of a Repository
32 E Oracle BI Suite Enterprise Edition 10g Bootcamp
n. Scroll to ensure that no higher-level container objects are selected, and that only the four
tables for import are selected. Your screen should look similar to the following screenshot:

o. Click Import. The Connection Pool dialog box opens.
p. Change the Connection Pool name to SUPPLIER CP.
q. Ensure that the call interface is set to OCI 10g/11g.
r. Ensure that the data source name is ORCL. The username and password fields are
automatically populated with SUPPLIER2. The data source name, ORCL, is the same as the
tnsnames.ora entry for this Oracle database instance.
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 33


s. Click OK. The import process begins.
t. When the import is complete, click Close to close the Import dialog box.
u. Note that the metadata is imported into the Physical layer of the repository and the ORCL
database object appears in the Physical layer.
v. To display the tables, expand the ORCL database object and then expand the SUPPLIER2
schema folder.
w. Ensure that the four tables are imported successfully and that the connection pool name is
changed to SUPPLIER CP.

D1_CALENDAR2 is the table containing the period information. It contains columns that are
useful in queries using time periods as the criteria for selecting and grouping data.
D1_CUSTOMER2 contains customer information and D1_PRODUCTS contains product
Module 4: Building the Physical Layer of a Repository
34 E Oracle BI Suite Enterprise Edition 10g Bootcamp
information for the business model.
D1_ORDERS2 contains the invoice-level information needed to create the measures in the
business model.
As per commonly used nomenclature, D1_CALENDAR2, D1_CUSTOMER2, and
D1_PRODUCTS are dimension tables and D1_ORDERS2 is a fact table. In the next practice,
you create keys and joins so that the four tables form a star schema.
6. Examine the connection pool for ORCL data source.
a. Double-click the SUPPLIER CP connection pool object. Recall that you provided this name
for the connection pool during the import process. Connection pools regulate access to the
data source. Every data source must have at least one connection pool. A connection pool
provides connections for multiple concurrent data source requests (queries), reducing the
immediate overhead of connecting to a data source. Connection pools automatically queue
connection requests when they exceed connection pool limits.
b. Why would you create more than one connection pool for a single data source?






c. Call interface is the application program interface with which to access the data source;
Oracle Call Interface (OCI) in this example.
d. Maximum connections is the maximum number of connections allowed for this connection
pool. The default is 10. Each connection consumes about 1 MB of memory.
e. Data source name is configured to access the database to which you want to connect. This
value is set automatically when you import the tables to the physical layer.
f. Username and password are also configured automatically during import depending on the
parameters set for the ODBC data source in the ODBC Administrator.
g. Enable connection pooling allows a single database connection to remain open for a
specified time (in minutes) for use by future query requests. Connection pooling saves the
overhead of opening and closing a new connection for every query. If you do not select this
option, each query sent to the database opens a new connection.
h. For more information about connection pool parameters, consult the Oracle BI Server
Administrator Guide or click the Help button.
i. Click OK to close the Connection Pool dialog box.
7. Examine the properties of the database object in the Physical layer.
a. Right-click the ORCL database object and select Properties. You can also double-click the
object.
b. Click the General tab, if not selected by default. This tab provides general information about
the data source, such as the database name, database type, and so on.
c. Verify the database type is set to Oracle 10g R1.
d. Click the Features tab. This tab lists features that, when selected or deselected, determine the
SQL that Oracle BI Server will issue for this database. This features table is set to the
databases default values during the schema import process. You can turn off any of these
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 35
features if there is a reason to do so. Oracle BI Server will adjust the SQL that it sends to the
database accordingly and will compensate for the deselected features with its own
functionality. Note that turning a feature on when the default is off may or may not cause
that feature to be used in the generated SQL. To use a feature, Oracle BI Server needs to
know how the feature is implemented in that database platform. If it does not know, it will
not use it, even though the feature is selected.

e. Click the Find button.
f. In the Find field, enter INTERSECT and click OK.
g. Is the INTERSECT_SUPPORTED feature implemented on this database platform?


h. Click the Find Again button to display the next feature containing the INTERSECT search
string.
i. Is the INTERSECT_ALL_SUPPORTED feature implemented on this database platform?


j. Click the Connection Pools tab. This tab displays all connection pools associated with this
data source. In this example, there is only one connection pool.
k. Click the Display Folders tab. You could use this tab to create folders to organize the
information in the Physical layer.
l. Click OK to close the Database properties dialog box.
Module 4: Building the Physical Layer of a Repository
36 E Oracle BI Suite Enterprise Edition 10g Bootcamp
8. Examine the properties of a physical table object in the Physical layer.
a. Right-click D1_CALENDAR2 and select Properties. The Physical Table properties dialog box
opens.
b. Click the General tab.
c. Note that it is possible to rename the object using the Name field. Do not rename the object
now.
d. Note that the Cacheable check box is selected by default. This determines that queries that
hit this table will be cached. You could also select Cache persistence time and use the field
and drop-down list to determine the cache persistence time. This determines how long the
cached queries that include this table as a source should be used to provide information to
users. Ensure that the default, Cache never expires, is selected. You learn more about
caching in the lesson titled Cache Management.
e. Note that you can select a table type from the Table Type drop-down list. Physical Table is
the default and means that the object represents a physical table. You can also select Stored
Proc or Select. Stored Proc is used to call a stored procedure. Select can be used when you
want to create a SQL statement to represent a physical table. Leave the table type set to
Physical Table.
f. Note that the Hint box is editable. This box is editable only when the database is Oracle. A
hint specified here is included in all SQL that references this table.
g. Note that it is possible to add a description of the physical object.
h. Click the Columns tab.
i. Note that all columns and the corresponding column properties are listed on this tab. It is also
possible to add new columns.
j. Select the Keys and Foreign Keys tabs. Note that no keys are created for this table. You
learn how to create keys later in this practice.
k. Click Cancel to close the Physical Table properties dialog box.
9. Examine the properties of a physical column object in the Physical layer.
a. Expand the D1_CALENDAR2 table object.
b. Double-click any column to open the Physical Column properties dialog box. The physical
column properties include the data type of the columns and whether the column is nullable
(the column can contain NULL values). The Server Administration Tool automatically
selects compatible data types based on the data types of the source database.
c. Click Cancel to close the Physical Column properties dialog box.
10. Update row counts and view data. It is a good idea to update row counts or view data after an
import from an Oracle data source because typically the call interface has changed from ODBC
to OCI. Viewing data or updating row count, if successful, tells you that you have everything
configured correctly for OCI. Note that you cannot update row counts or view data from some
data sources (Access or Excel) that do not support count (distinct).
a. Update the row count for all tables by selecting Tools > Update All Row Counts. This may
take a moment. In this practice you imported a small number of tables. Note that updating
row counts for all tables can take a long time if you have imported many large tables. It is
also possible to update row count for a single physical layer object by right-clicking the
object and selecting Update Row Count.
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 37
b. When Update All Row Counts completes, move the cursor over the tables and observe that
row count information is now visible, including when the row count was last updated.
c. Expand any table.
d. Move the cursor over the columns for the table and observe that row count information is
now visible.
e. Right-click any table and select View Data to view the data for the table.
f. Close the View Data dialog box.
11. Save the repository.
a. Select File > Save or click the Save button on the toolbar. If the toolbar is not visible, select
Tools > Options > Show Toolbar.
b. Click No when prompted to check Global Consistency. Checking Global Consistency checks
for errors in the entire repository. Some of the more common checks are done in the Business
Model and Mapping layer and Presentation layer. Because these layers are not defined yet,
bypass this check until the other layers in the repository are built.
12. Leave the repository open and remain logged in to the Administration Tool for the next practice.

Module 4: Building the Physical Layer of a Repository
38 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 39
Solutions 4-3: Creating a Repository and Importing a
Data Source
Answers
4.b. Is there a primary key constraint defined on this table?
No
4.c. How many rows are there in this table?
474
7.b. Why would you create more than one connection pool for a single data source?
To give certain users more immediate access to data over others. You can affect the
immediacy of access to the database by creating multiple connection pools.
8.g. Is the INTERSECT_SUPPORTED feature implemented on this database platform?
Yes
8.i. Is the INTERSECT_ALL_SUPPORTED feature implemented on this database platform?
No
Module 4: Building the Physical Layer of a Repository
40 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 41
Practice 4-4: Defining Keys and Joins
Goals
To define the primary keys, foreign keys, and joins in the Physical layer
Scenario
You have just created a new repository and imported the initial tables from the
SUPPLIER2 schema to the Physical layer of the repository. Now, you must
define the keys and joins that exist on the physical database in the Physical
Layer of the repository. If the imported database had primary key-foreign key
relationships defined and the primary keys and foreign keys were imported
into the repository, then the join conditions would be set up automatically. But
that is not always what you want because foreign key relationships are set in a
database for only one purpose (referential integrity), which may not
correspond to the purpose of the Administration Tool (knowing which joins to
include in the SQL). In this database, primary keys, foreign keys, and joins
have not been defined. Therefore, you need to define the keys and join
conditions manually using an objects Properties dialog box and the Physical
Diagram feature of the Administration Tool.
Outcome
Keys and joins defined on the physical tables
Time
1520 minutes
Instructions
1. In this step, you define joins and keys using the Physical Diagram feature of the Administration
Tool.
a. Right-click the ORCL database object and select Physical Diagram > Object(s) and All
Joins to open the Physical Diagram dialog box. Alternatively, you can select the ORCL
database object and then click the Physical Diagram button on the toolbar.
b. Rearrange the table objects so they are all visible.
c. Click the New Foreign Key button on the toolbar.
d. Click the D1_CALENDAR2 table, and then click the D1_ORDERS2 table. The Physical
Foreign Key dialog box opens. It matters which table you click first. The join creates a one-
to-many (1:N) relationship that joins the key column in the first table to a foreign key column
in the second table.
e. Select the columns that join the tables. Select the D1_CALENDAR2.YYYYMMDD column,
and then select D1_ORDERS2.PERIODKEY. Ensure that the Expression edit box (at the
bottom) contains the following expression:
D1_CALENDAR2.YYYYMMDD = D1_ORDERS2.PERIODKEY
f. Click OK.
Module 4: Building the Physical Layer of a Repository
42 E Oracle BI Suite Enterprise Edition 10g Bootcamp
g. A prompt appears with the message: A matching table key doesnt exist in table
D1_CALENDAR2. Do you want to create one? Click Yes. This automatically creates a
key on the YYYYMMDD column in the D1_CALENDAR2 table.
h. Observe the 1:N relationship between D1_CALENDAR2 and D1_ORDERS2 represented in
the Physical Diagram view:

i. Repeat the process you just completed and create joins and keys for the other tables. Create
the joins using the following expressions as a guide:

D1_CUSTOMER2.NEWKEY = D1_ORDERS2.CUSTKEY
D1_PRODUCTS.PRODUCTKEY = D1_ORDERS2.PRODKEY

As you create the join links, you note that the tool guesses at which columns to join on the
basis of common names. Override the tool when necessary and check the join expressions in
the Expression edit field.

As you create the joins, the same message appears asking you to create a column as a key
column on the first table, which is necessary to create the relationship to the foreign key
column in the second table. When you see this message, click Yes.
2. Observe the Physical Diagram and check your work:

a. You may want to adjust the scale of the objects in the Physical Diagram. If so, right-click the
white space in the Physical Diagram window, select Zoom, and one of the zoom options.
You can also use right-click to adjust the grid properties and options.
b. Close the Physical Diagram window.
3. Observe additional options for viewing the physical table diagram.
a. Right-click the D1_CALENDAR2 table and select Physical Diagram > Object(s) and Direct
Joins.
b. Observe the Physical Diagram:

c. Close the Physical Diagram window.
d. Repeat this process for the D1_ORDERS2 table by selecting Physical Diagram > Object(s)
and Direct Joins for the D1_ORDERS2 table. Why are all the tables visible in the diagram
with D1_ORDERS2?




Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 43
e. Close the Physical Diagram window.
4. Observe the changes to the physical table properties.
a. Double-click the D1_ORDERS2 table to open the Physical Table properties dialog box.
b. Click the Foreign Keys tab. Note that the foreign key information is visible. This
information was created automatically when you created the join expressions in the earlier
steps.
c. Double-click any of the foreign key expressions and note that the Physical Foreign Key
dialog box opens, displaying the join information.
d. Click Cancel to close the Physical Foreign Key dialog box.
e. Click Cancel to close the Physical Table properties dialog box.
5. Click the Save button to save the ABC repository.
6. Click No when prompted to check global consistency.
7. Leave the Administration Tool open for the next practice.

Congratulations! You have successfully created a new repository, imported a table schema from
an external data source into the Physical layer, and defined keys and joins.
Module 4: Building the Physical Layer of a Repository
44 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 45
Solutions 4-4: Defining Keys and Joins
Answer
3.d. Why are all the tables visible in the diagram with D1_Orders2?
All the tables have a one-to-many relationship with D1_Orders2.

Module 4: Building the Physical Layer of a Repository
46 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 47
Practice 4-5: Creating Alias and Select Tables
Goals
To create alias and select table types, and deploy a view
Scenario You create an Order Date alias that points to the D1_CALENDAR2 table, and a
RegionEast select table. You also practice deploying and undeploying a view
and checking the results.
Outcome A new alias table called ORDER_DATE and a select table called RegionEast
Time
1520 minutes
Instructions
1. Create the ORDER_DATE alias table.
a. Right-click D1_CALENDAR2 and select New Object > Alias. The Alias Physical Dialog box
opens.
b. Name the alias ORDER_DATE.
c. Click the Columns tab. Note that alias tables inherit all column definitions from the source
table.
d. Double-click any of the columns listed to open the Physical Column properties dialog box.
Note that the column is read-only and cannot be modified.
e. Click Cancel to close the Physical Column dialog box.
f. Click OK to close the Alias Physical Table dialog box. The alias table is added to the
Physical layer. Note the green arrow icon.

2. Create a new column in the source table and observe the results.
a. Right-click D1_CALENDAR2 and select New Object > Physical Column. The Physical
Column dialog box opens.
b. Name the column ALIAS_COLUMN.
Module 4: Building the Physical Layer of a Repository
48 E Oracle BI Suite Enterprise Edition 10g Bootcamp
c. Leave type set to UNKNOWN and click OK. The column is added to the D1_CALENDAR2
source table.

d. Expand the ORDER_DATE alias table and ensure that the column was automatically added.
Creating a new column in a source table automatically creates the same column in all its alias
tables.

e. Double-click ALIAS_COLUMN in the ORDER_DATE alias table. The Physical Column
dialog box opens.
f. Ensure that the type is UNKNOWN.
g. Click Cancel.
h. Return to the D1_CALENDAR2 table and double-click ALIAS_COLUMN.
i. Change the type to VARCHAR.
j. Click OK.
k. Return to the ORDER_DATE alias table and double-click ALIAS_COLUMN.
l. Ensure that the type is changed to VARCHAR. Modification of a source column forces the
same changes to be reflected in the alias columns.
m. Click OK.
n. Return to the D1_CALENDAR2 table and delete ALIAS_COLUMN.
o. Click Yes to confirm the deletion.
p. Return to the ORDER_DATE table and ensure that ALIAS_COLUMN is deleted. Deletion of a
source column automatically deletes the corresponding alias columns.
3. Create a Select table.
a. Right-click the D1_CUSTOMER2 table object and select Duplicate. The
D1_CUSTOMER2#1 table is created.
b. Double-click D1_CUSTOMER2#1. The Physical Table dialog box opens.
c. Click the General tab and rename the table RegionEast.
d. Change the table type to Select. The Default Initialization String pane is enabled.
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 49
e. In the Default Initialization String pane, enter the following SQL:
Select * From D1_CUSTOMER2 Where REGION = 'East'

f. Click OK.
g. Right-click the RegionEast table and select Update Row Count.
h. Place the cursor over the table and ensure that there are 56 rows.
i. View the data and ensure that the correct rows are returned. (Region column has the expected
value, which is East.)
j. Close the View Data dialog box.
4. Before deploying the select table as a view, ensure that view deployment is supported for the
database.
a. Double-click the ORCL database object.
b. Click the Features tab.
c. Click Find.
d. In the Find dialog box, enter CREATE_VIEW_SUPPORTED and click OK.
e. Confirm that the Value field check box is selected for CREATE_VIEW_SUPPORTED.
f. Click OK to close the ORCL database object dialog box.
5. Deploy a view.
a. Save the repository without checking global consistency.
Module 4: Building the Physical Layer of a Repository
50 E Oracle BI Suite Enterprise Edition 10g Bootcamp
b. Right-click the RegionEast table and select Deploy View(s). The View Deployment
dialog box opens and identifies which views will be deployed.

c. Click OK. A message appears indicating that the view was successfully deployed.

d. Click OK to close the dialog box.
6. Ensure that the view is created in the database.
a. Open Internet Explorer.
b. In the Address field, enter http://<machine name>:1158/em to open Oracle
Enterprise Manager. You should bookmark this link for future access.
c. Log in as SUPPLIER2 with password SUPPLIER2; connect as Normal.
d. Click the Administration link.
e. Scroll to the Schema section.
f. Click the Views link.
g. Click Go to search for all views in the SUPPLIER2 schema.
h. Ensure that the REGIONEAST view appears.

i. Do not close Oracle Enterprise Manager.
Module 4: Building the Physical Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 51
7. Undeploy the view.
a. Return to the Administration Tool, right-click RegionEast and select Undeploy View(s).
The Undeploy View(s) dialog box appears.

b. Click Yes. A message appears indicating that the view was successfully undeployed.

c. Click OK.
8. Ensure that the view is undeployed on the database.
a. Return to Oracle Enterprise Manager.
b. Click Go to search for all views in the SUPPLIER2 schema.
c. Ensure that no objects are found.

d. Log out of Oracle Enterprise Manager.
e. Close Internet Explorer.
9. Return to the Administration Tool and delete the RegionEast select table and the
ORDER_DATE alias table. You do not use either of these tables in the remaining practices.
Module 4: Building the Physical Layer of a Repository
52 E Oracle BI Suite Enterprise Edition 10g Bootcamp
10. Save the repository without checking global consistency.
11. Close the repository.
12. Close the Administration Tool.

Module 5: Building the Business Model and Mapping Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 53
Practice 5-1: Creating the Business Model
Goal
To create a business model in the Business Model and Mapping layer of the
repository
Scenario
In the previous practice, you created the Physical layer of the repository. You
are now ready to begin building the business model in the Business Model and
Mapping layer of the repository. The main purpose of the business model is to
capture how users think about their businesses using their own vocabulary.
The business model simplifies the physical schema and maps the users
business vocabulary to physical sources. Most of the vocabulary translates
into logical columns in the business model. Collections of logical columns form
logical tables. Each logical column (and, therefore, each logical table) can
have one or more physical objects as sources.
There are two main categories of logical tables: fact and dimension. Logical
fact tables contain the measures by which ABC gauges its business
operations and performance. Logical dimension tables contain the data used
to qualify the facts. This practice assumes that a business model has already
been designed on paper. You know what measures are important to ABC,
what ABC employees compare measures to, and how the company likes to
analyze its data. The goal of this practice is to capture this information in a
business model in the Business Model and Mapping layer of the repository.
Outcome
In the Business Model and Mapping layer, the SupplierSales business model
with Periods, Customers, Products, and SalesFacts logical tables
Time
1520 minutes
Instructions
The business model that ABC has defined is based on Sales, Products, Customers, and Period data.
These data elements will be used to model the initial application. The physical model you are
working with now looks like this:

1. Open the ABC repository in offline mode.
a. Select Start > Programs > Oracle Business Intelligence > Administration.
b. Select File > Open > Offline.
Module 5: Building the Business Model and Mapping Layer of a Repository
54 E Oracle BI Suite Enterprise Edition 10g Bootcamp
c. Double-click ABC.rpd to open the repository file.
d. Log in as Administrator. There is no need to enter a password.
2. Use your understanding of ABCs business requirements to identify the mappings to the physical
tables. Refer to prior practices if necessary.
a. Which physical source table does the following data elementscustomer, sales rep, district,
and regionmap to?


b. Which physical source table does main product information data map to?


c. Which physical source table does invoice sales data map to?


d. Which physical source table does month codes, month names, and year data map to?


3. Create a business model in the Business Model and Mapping layer.
a. Right-click the white space of the Business Model and Mapping layer and select New
Business Model.
b. In the Name field, enter SupplierSales.
c. Click OK. The new Business Model and Mapping folder appears in the Business Model and
Mapping layer. The red symbol on the business model indicates that it is not yet enabled for
querying. You enable the business model for querying after the Presentation layer is defined
and the repository passes a global consistency check.

4. Create the logical tables.
a. In the Physical layer, expand the ORCL database object and expand the SUPPLIER2
schema.
b. Click and Drag each of the following four tables one at a time from the Physical layer onto
the SupplierSales business model.
D1_CALENDAR2
D1_CUSTOMER2
D1_ORDERS2
D1_PRODUCTS
This creates logical tables in the business model with logical columns.
c. Expand the logical tables and note that a Sources folder is created for each logical table. In
each Sources folder, there is a named source. For example, the named source for the
D1_CALENDAR2 logical table is the D1_CALENDAR2 physical table.
Module 5: Building the Business Model and Mapping Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 55


d. Note also that each logical table has a yellow table icon. In the Business Model and Mapping
layer, this indicates a fact table. Because you dragged each table one at a time, all table icons
are yellow. The icon color for dimension tables changes to white later when you create
logical joins.

If you had dragged all four tables simultaneously from the Physical layer onto the business
model, the logical keys and joins would have been created automatically in the business
model. This is because the keys and join relationships were already created in the Physical
layer. However, you typically do not drag all physical tables simultaneously, except in very
simple models. In later steps, you manually build the necessary logical keys and joins in the
Business Model and Mapping layer.
5. Rename the logical tables in the business model to make them more meaningful.
a. Double-click the D1_CALENDAR2 table in the SupplierSales business model. The Logical
Table dialog box opens.
b. If necessary, click the General tab.
c. In the Name field, enter Periods.
d. Click OK.
e. Repeat the process and rename the following tables. Alternative methods for renaming
include right-clicking an object and selecting Rename, or clicking twice slowly on an object
to highlight the name and making it editable. Note that logical table names are purely a
business model artifact. They are not necessarily exposed to users.
Table Rename to:
D1_CUSTOMER2 Customers
D1_PRODUCTS Products
D1_ORDERS2 SalesFacts
6. Delete columns that are not needed for analysis.
a. Expand the SalesFacts table and then click the first column below. Then press and hold
[Ctrl] and select the remaining columns to be deleted.
Columns
PRODKEY
PERIODKEY
INVNBR
CUSTKEY
DWACOSTEXTND
Module 5: Building the Business Model and Mapping Layer of a Repository
56 E Oracle BI Suite Enterprise Edition 10g Bootcamp
REPCOSTEXTND
CMDOLRS
NULL_FIELD
b. Ensure that the SalesFacts table is not selected, before you click the Delete key.
c. Click the Delete key. An alternative method is to right-click one of the selected objects and
click Delete.
d. Click Yes to confirm the delete.
e. Expand the Periods table and delete all columns except for the columns listed below.
Columns
DAY_IN_MONTH
DAY_IN_YEAR
DAY_NAME
FULL_GREGORIAN_DTE
MONTH
MONTHCODE
MONTH_IN_YEAR
YEAR
YYYYMMDD
f. Expand the Products table.
g. Right-click the PGCODE column and select Delete.
h. Click Yes to confirm the delete.
i. Expand the Customers table and delete the REPNO and FACTOR columns.
7. Rename logical columns so that users can understand them better. The names you give logical
columns in the business model can be exposed to client tools and end users. However, it is
possible to override logical column names in the Presentation layer.
Periods Table Rename As
DAY_IN_MONTH Day in Month
DAY_IN_YEAR Day in Year
DAY_NAME Day Name
FULL_GREGORIAN_DTE Date
MONTH Month
MONTHCODE Month Code
MONTH_IN_YEAR Month in Year
YEAR Year
YYYYMMDD Day


Module 5: Building the Business Model and Mapping Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 57

SalesFacts Table Rename As
ACTLEXTND Dollars
NETWGHTSHPD Net Weight Shipped
UNITSHPD Units Shipped
UNITORDD Units Ordered

Customers Table Rename As
ADDRESS Address
CITY City
DISTRICT District
NAME Customer
NEWKEY Customer Key
PHONE Phone
REGION Region
ROUTECODE Route Code
SALESREP Sales Rep
STATE State
ZIP_CODE Zip Code

Products Table Rename As
DIETCODE Diet Code
GENERICDESCRIPTION Generic
PACKAGECODE Package Code
PACKAGE_WEIGHT Package Weight
PRODUCTKEY ProductKey
SPECIFICDESCRIPTIN Specific
SUBTYPECODE Subtype Code
SUPPLIERCODE Supplier Code
TYPECODE Type Code
8. In this step, you check the logical table keys. For a business model to be valid, each logical
dimension table must have a logical key. Logical keys can be composed of one or more logical
columns. The logical key defines the lowest level (the most detailed level) of information of any
source in the logical table. In this example, the logical table keys were built automatically when
you dragged the tables from the Physical layer to the business model.
a. Double-click the Customers logical table in the business model.
b. Click the Keys tab.
c. Double-click D1_CUSTOMER2_Key.
d. Ensure that the Customer Key column is defined as the key for this table.
Module 5: Building the Business Model and Mapping Layer of a Repository
58 E Oracle BI Suite Enterprise Edition 10g Bootcamp
e. Click OK.
f. Click OK.
g. Repeat these steps and ensure that the Day column is defined as the logical table key for the
Periods table and ProductKey is defined as the logical table key for the Products
table.
9. In this step, you create the logical table joins. Another requirement for a valid business model is
that the logical tables must be joined via logical joins. Without logical joins, the Administration
Tool issues a warning that it is unable to load the navigation space for the business model.
Logical joins express the cardinality relationships between the logical tables. Logical fact tables
are always at the many end of these cardinality relationships. Logical joins help Oracle BI
Server understand the relationships between the various pieces of the business model. When a
query is sent to Oracle BI Server, the server figures out how to construct physical queries by
examining how the logical model is structured. Examining logical joins is an integral part of this
process.
a. Right-click the SupplierSales business model and select Business Model Diagram > Whole
Diagram. The Logical Table Diagram window opens.
b. Rearrange the table icons so they are all visible. Right-click the white space and adjust the
zoom factor, if desired.
c. Click the New Complex Join button (the yellow one) on the toolbar.
d. Click the Products table icon first and then click the SalesFact table icon in the Logical
Table Diagram window. The order is important. The second table clicked is the many side
of the relationship. The Logical Join dialog box opens.
e. Leave the default values as they are, but note which properties you can set in the Logical Join
dialog box: name, business model, tables, driving table, join type, and cardinality. Also, note
which properties you cannot set: the join expression and the join columns.
f. Do not change the default values and click OK. Typically, when defining logical joins, you
leave the defaults as they are and click OK.
g. Repeat the process and create logical joins from the Periods table to the SalesFacts
table and from the Customers table to the SalesFacts table.
h. Check your work in the Logical Table Diagram window:

i. Close the Logical Table Diagram window.
j. Note that the color of the table icons for the three dimension tables has changed to white in
the business model. In a business model, a yellow icon indicates a fact table and a white icon
indicates a dimension table. Defining the join relationships determined which tables are the
logical dimension tables and which is the logical fact table. Recall that a fact table is always
on the many side of a logical join. You now have a logical star schema consisting of one
Module 5: Building the Business Model and Mapping Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 59
logical fact table, SalesFacts, and three logical dimension tables: Periods, Products, and
Customers.
10. Save the repository.
11. Click No when prompted to check global consistency.
12. Leave the repository open for the next practice.
Module 5: Building the Business Model and Mapping Layer of a Repository
60 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solutions 5-1: Creating the Business Model
Answers
2.a. Which physical source table does the following data elementscustomer, sales rep,
district, and regionmap to?
D1_CUSTOMER2
2.b. Which physical source table does main product information data map to?
D1_PRODUCTS
2.c. Which physical source table does invoice sales data map to?
D1_ORDERS2
2.d. Which physical source table does month codes, month names, and year data map to?
D1_CALENDAR2


Module 5: Building the Business Model and Mapping Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 61
Practice 5-2: Creating Simple Measures
Goals
To examine the logical-to-physical column mappings and create simple
measures
Scenario
The SupplierSales business model is now defined in the Business Model and
Mapping layer. In this practice, you review the logical-to-physical table and
column mappings to better understand the relationships that exist between
logical tables and their logical table sources. You then create measures by
setting aggregation rules for logical columns. Then you check the physical
tables referenced by the business model.
Outcome Measures defined in the SalesFacts logical table
Time
1520 minutes
Instructions
1. In this step, you examine a logical table source (LTS). Each logical table in a business model has
a subfolder called Sources that contains the logical table sources. Logical table sources contain
the mappings from the logical columns in the Business Model and Mapping (BMM) layer to the
physical columns in the Physical layer. Every logical column maps directly (or indirectly via
another logical column) to a column or columns in the Physical layer.
a. Expand the Sources folder of the SalesFacts logical table. What is the name of the
logical table source for the SalesFacts table?


b. How was this logical table source created?




c. Double-click the SalesFacts logical table source, D1_ORDERS2. The Logical Table Source
dialog box opens.
d. Click the General tab. By default, the logical table source name corresponds to the name of
the physical table that was dragged from the Physical layer, but this name could be changed
to something more meaningful. For this exercise, leave the name as is. Note also that the path
to the physical table is identified.
e. Click the Column Mapping tab. If necessary, adjust the column widths and heights, or drag
the entire dialog box window to make it larger or smaller.
Module 5: Building the Business Model and Mapping Layer of a Repository
62 E Oracle BI Suite Enterprise Edition 10g Bootcamp
f. Which physical column is the Dollars logical column mapped to?


g. Which physical table is the Dollars logical column mapped to?


h. The Content tab is discussed later in this course. Click Cancel to close the dialog box.
2. In this step, you create some measures by defining default aggregation rules on logical columns
defined in the SalesFacts table. Measures are typically data that is additive, such as total dollars
or total quantities. The SalesFacts logical fact table contains the measures in your business
model. You aggregate some of its logical columns by summing.
a. Double-click the Dollars logical column in the SalesFacts table. The Logical Column
dialog box opens.
b. Click the Aggregation tab.
c. Set the default aggregation rule for Dollars to Sum.
d. Click OK.
e. Select Units Shipped, press and hold [Ctrl] and select Units Ordered and Net Weight
Shipped.
f. Right-click and select Set Aggregation.
g. Set the default aggregation rule to Sum.

h. Click OK. Using this method allowed you to set the same aggregation rule for multiple
columns at once.
i. What happens to the logical column icons after you change the default aggregation rule to
Sum?


Module 5: Building the Business Model and Mapping Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 63
3. In this step, you check which physical tables are referenced by a business model. In most
situations, there will be tables that are included in the Physical layer, but not in the Business
Model and Mapping layer. Only the tables referenced in the Business Model and Mapping layer,
that is, only the tables included in logical table sources, are used in queries. All other physical
tables are ignored when Oracle BI Server queries the physical database.
a. Select Tools > Options.
b. Click the General tab.
c. Select Show row count in physical view.
d. Click OK.
e. Select the SupplierSales business model.
f. Click the Physical Diagram icon on the toolbar.
g. The Physical Diagram displays all the physical tables currently referenced by the
SupplierSales business model. It also displays the row count for tables with updated row
counts.

h. Double-click the connector between the D1_CUSTOMER2 and the D1_ORDERS2 tables.
i. Which join type is displayed, the physical or logical?


j. How did you determine which join type is displayed?




k. Click Cancel to close the join dialog box.
l. Close the physical diagram.
4. Save the repository.
5. Do not check global consistency.
6. Leave the repository open for the next practice.

Congratulations! You have successfully built a business model in the Business Model and
Mapping layer of a repository and created business measures.
Module 5: Building the Business Model and Mapping Layer of a Repository
64 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solutions 5-2: Creating Simple Measures
Answers
1.a. Expand the Sources folder of the SalesFacts logical table. What is the name of the
logical table source for the SalesFacts table?
D1_ORDERS2
1.b. How was this logical table source created?
It was created automatically during the process of dragging the D1_ORDERS2 physical
table to the business model.
1.f. Which physical column is the Dollars logical column mapped to?
ACTLEXTND
1.g. Which physical table is the Dollars logical column mapped to?
D1_ORDERS2
2.i. What happens to the logical column icons after you change the aggregation rule to Sum?
It changes to a summation symbol.
3.i. Which join is displayed, the physical or logical?
Physical
3.j. How did you determine which join is displayed?
There are foreign key joins.

Module 6: Building the Presentation Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 65
Practice 6-1: Creating the Presentation Layer
Goal
To create the Presentation layer of a repository
Scenario
You have created the initial SupplierSales business model in the repository.
You now create the Presentation layer of the repository. This allows you to
expose the business model to users in Oracle BI Answers so that they can
build requests to analyze their data.
Outcome
In the Presentation layer of the repository, there is a SupplierSales
presentation catalog and a SupplierSalesDM presentation catalog.
Time
1015 minutes
Instructions
1. In this step, you create the Presentation layer for the SupplierSales business model. The
Presentation layer has three types of objects: presentation catalog, presentation table, and
presentation column. In Oracle BI Answers, the catalog appears as a subject area, the
presentation table appears as a folder, and the presentation columns appear as columns in the
folders. The ABC repository should be open in the Administration Tool from the previous
practice.
a. Ensure that the Presentation layer is visible. If it is not, select View > Presentation.
b. Drag the SupplierSales business model into the Presentation layer. A presentation catalog
appears with the name SupplierSales. When you create a presentation in this manner, the
business model becomes a presentation catalog, the logical tables become presentation tables,
and the logical columns become presentation columns. Note that all objects within a
presentation catalog must derive from a single business model.

2. In this step, you examine the properties of a presentation catalog.
a. Double-click the SupplierSales presentation catalog in the Presentation layer. The
Presentation Catalog properties dialog box opens.
b. Click the General tab. You use this tab to create or edit a presentation catalog.
Module 6: Building the Presentation Layer of a Repository
66 E Oracle BI Suite Enterprise Edition 10g Bootcamp
c. Note that it is possible to change the name of the catalog. For the purpose of these lessons,
leave the name as SupplierSales. This is the name that appears as a subject area in Answers.
Also, as you will see in later lessons, the name of the presentation catalog can be used in the
FROM clause of a logical SQL statement. Therefore, short catalog names are desirable. The
tool prevents you from giving the same name to a presentation catalog and presentation table.
It is also advisable to avoid using characters ($, %) that may cause illegal SQL syntax with
particular client tools
d. Click the Permissions button. This dialog box is used to assign user and group permissions
to this repository object. Permissions are discussed in more detail in the lesson titled
Security.
e. Click Cancel to close the Permissions dialog box.
f. The custom display name is used if you are planning to present the name in local languages.
You can ignore this for the purposes of this practice.
g. Note that the business model is grayed out and cannot be modified. This is because all
objects within a presentation catalog derive from a single business model and cannot span
multiple business models. After the business model is set, it cannot be changed and the tool
prevents you from including objects from other business models.
h. Note that export logical keys is deselected by default. This is irrelevant to users of Answers,
but may be advantageous to some query and reporting tools. If selected, columns in the
Presentation layer that are key columns in the Business Model and Mapping layer will be
presented as key columns to an ODBC client and will have a key icon in the Presentation
layer.
i. Note that the implicit fact column is not assigned. If you set an implicit fact column, this
column is added to a query when it contains columns from two or more dimension tables and
no measures. It is used to specify a default join path between dimension tables when there are
several possible alternatives.
j. In the Description field, enter something similar to Analyze Sales and Shipment
Data. This information is visible under the corresponding subject area in Answers. You
confirm this in the next set of practices.
k. Click the Presentation Tables tab.
Module 6: Building the Presentation Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 67
l. Use the Up and Down buttons or drag objects to rearrange the presentation tables into the
following order:

m. Click the Aliases tab. If you change the name of a presentation catalog, the tool
automatically creates an alias using the previous name. You can use this tab to specify or
delete an alias for a presentation folder.
n. Click OK to close the Presentation Catalog properties dialog box.
o. Expand the SupplierSales presentation catalog and note that the order of the presentation
tables is now changed.
3. In this step, you explore the properties of a presentation table. You can use presentation tables to
hold columns from multiple logical tables, thereby reducing the number of apparent logical
tables. You can also use presentation tables to organize logical columns into smaller groupings,
thereby increasing the number of apparent logical tables. For example, you might have a hundred
measures in a logical fact table. You may want to create multiple presentation tables as
containers for those measures and thus present them in an organized way (for example, all dollar
measures in one folder; all unit measures in another folder). These measure folders could be
nested within a single folder in the Answers user interface.
a. Double-click the Customers presentation table. The Presentation Table dialog box opens.
b. Click the General tab.
c. Note that, by default, the presentation table name is the same as the logical table name. With
Oracle BI Answers, the name can be anything, except that it should not contain single
quotation marks, double quotation marks, or the % sign. For client tools that generate SQL,
it is advisable to avoid names that might violate valid SQL syntax. For example, avoid SQL
key words, spaces, single and double quotation marks, and other characters such as $ or
%. A presentation table name cannot be the same as the presentation catalog name or any
logical column name in that catalog. As in a presentation catalog, changing a presentation
Module 6: Building the Presentation Layer of a Repository
68 E Oracle BI Suite Enterprise Edition 10g Bootcamp
table name does not have any affect on the logical table name in the Business Model and
Mapping layer. The Alias tab keeps a record of any changes.
d. Type a brief description in the Description field. This will show up as a tool tip in the
Answers UI when the user places the cursor over the object. You confirm this in the next set
of practices.
e. Click the Columns tab.
f. Change the order of the columns, using the Up and Down buttons or by dragging, into the
following order:
Columns
Region
District
Sales Rep
Customer
Address
Phone
City
State
Zip Code
Route Code
Customer Key
g. Click OK to close the Presentation Table dialog box.
4. In this step, you explore the properties of a presentation column. Presentation columns can come
from multiple logical tables in a business model. By default, a presentation column uses the same
name as its corresponding logical column in the Business Model and Mapping layer. If you
rename the column in the Business Model and Mapping layer, corresponding presentation
columns are automatically renamed wherever they appear in the Presentation layer. Even if you
rename a presentation column, it does not impact the corresponding logical column in the
Business Model and Mapping layer. However, as with presentation catalogs and tables, the
repository stores an alias for the column using the previous name.
a. Expand the Customers presentation table.
b. Ensure that the columns are now in the order you specified in the previous step.
c. Double-click the District column. The Presentation Column dialog box opens.
d. Click the General tab.
e. Deselect Use Logical Column Name. The Name field can now be edited.
f. Change the column name by entering Sales District in the Name field.
g. Click the Aliases tab. What is the logical column name (or alias) for this presentation
column?


h. Return to the General tab.
i. Click the Edit button. The Logical Column dialog box opens.
Module 6: Building the Presentation Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 69
j. Click the General tab in the Logical Column dialog box.
k. Which logical column does this presentation column map to?


l. Which business model does this presentation column map to?


m. Which logical table does this presentation column map to?


n. Click the Data Type tab.
o. Which physical table and column does this presentation column map to?


p. Click OK to close the Logical Column window.
q. Click OK to close the Presentation Column window
5. In this step, you simplify the content by deleting unnecessary presentation columns. You may not
want to expose all the logical columns of a business model in a presentation catalog. You can
delete columns from the Presentation layer safely without affecting the existence of the logical
column in the Business Model and Mapping Layer. Key columns in presentation tables can be
deleted, unless the client tools require that key information be provided.
a. In the Presentation layer, in the Customers table, delete the Customer Key column.
b. Click Yes to confirm the deletion.
c. In the Products table, delete the ProductKey column
d. Click Yes to confirm the deletion.
6. In this step, you create a nested folder. Nested folders are a useful way to organize the way
information is presented to the user in Answers.
a. Double-click the SupplierSales presentation catalog to open the Presentation Catalog
properties dialog box.
b. Click the Presentation Tables tab.
c. Click Add.
d. In the Name field, enter Facts.
e. Click OK to return to the Presentation Tables tab.
Module 6: Building the Presentation Layer of a Repository
70 E Oracle BI Suite Enterprise Edition 10g Bootcamp
f. Position the Facts presentation table directly above the SalesFacts presentation table.

g. Double-click SalesFacts to open the Presentation Table dialog box.
h. Click the General tab.
i. Add a hyphen and a space before SalesFacts in the Name field. This will nest the
SalesFacts folder under the Facts folder in Answers. Alternatively, you can enter a hyphen
and a greater than sign in the Description field to achieve the same result. You ensure this in
the next set of practices.

j. Click OK to close the Presentation Table dialog box.
k. Click OK to close the Presentation Catalog dialog box.
l. Observe that SalesFacts now appears below Facts in the SuppliersSales presentation
catalog.

7. In this step, you use the duplicate feature to create a new presentation catalog in the Presentation
layer. This new presentation catalog is for ABCs District Managers. District Managers analyze
Module 6: Building the Presentation Layer of a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 71
information required to manage their sales district, such as sales dollars and sales reps. District
managers do not need to analyze any information related to ABCs products.
a. Right-click the SupplierSales presentation catalog and select Duplicate. A presentation
catalog folder appears with the name SupplierSales#1.
b. Expand SupplierSales#1 and note that it contains all the same objects as the SupplierSales
presentation catalog.
c. Rename the SupplierSales#1 presentation catalog to SupplierSalesDM.
d. Since ABCs district managers do not need to analyze the SupplierSales product information
in their view of the data, delete the Products presentation table from the
SupplierSalesDM presentation catalog.
e. Click Yes to confirm the deletion.
8. Save the repository.
9. Click No when prompted to check global consistency.
10. Leave the repository open for the next practice.

Congratulations! You have successfully built the Presentation layer of a repository.
Module 6: Building the Presentation Layer of a Repository
72 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solutions 6-1: Creating the Presentation Layer
Answers
4.g. Click the Aliases tab. What is the logical column name (or alias) for this presentation
column?
District
4.k. Which logical column does this presentation column map to?
District
4.l. Which business model does this presentation column map to?
SupplierSales
4.m. Which logical table does this presentation column map to?
Customers
4.o. Which physical table and column does this presentation column map to?
D1_CUSTOMER2.DISTRICT
Module 7: Testing and Validating a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 73
Practice 7-1: Testing the Repository
Goal
To test the repository by generating some queries, retrieving the results, and
examining the query log
Scenario You finished building the initial business model and now need to test the
repository before continuing. You begin by checking the repository for errors
using the consistency checking option. You then test the repository by running
queries using Oracle BI Answers. Finally, you examine the query log file to
verify the SQL generated by Oracle BI Server.
Outcome A tested and verified repository file
Time 2535 minutes
Instructions
1. In this step, you perform a consistency test to check the repository for inconsistencies. A
consistent repository has met the following requirements:
All logical columns are mapped directly or indirectly to one or more physical columns.
All logical dimension tables have a logical key.
All logical tables have a logical join relationship to another logical table.
There are at least two logical tables in the business model: one is a logical fact table, the
other is logical dimension table; and both tables may map to the same physical table.
There are no circular logical join relationships.
A presentation catalog exists for the business model.
a. Select File > Check Global Consistency. A message appears indicating that the
SupplierSales business model is consistent and asks if you want to make it unavailable for
queries.
b. Click Yes. The Consistency Check Manager opens and displays a Warning message: The
user Administrator belongs to the Administrators Group and has an empty
password and a Best Practice message: The Physical Table
'"ORCL".."SUPPLIER2"."D1_ORDERS2"' has no keys defined.
Please note that your results may be slightly different.
Module 7: Testing and Validating a Repository
74 E Oracle BI Suite Enterprise Edition 10g Bootcamp

The Consistency Check Manager provides three types of messages:
Error messages indicate errors that need to be fixed to make the repository consistent.
Warning messages indicate conditions that may or may not be errors, depending upon
the intent of the Oracle BI Server administrator. For example, a warning message about a
disabled join may be the result of the administrator intentionally disabling a join, such as
eliminating a circular join condition.
Best Practices messages provide information about conditions but do not indicate an
inconsistency, for example, fact table does not contain a logical key.
2. For the purposes of this training you can safely disable the Warning message and the Best
Practices messages.
a. Click the Options tab.
b. Expand the Warnings folder.
c. Expand the User folder.
d. Select Search for Administrators with no Password.
e. Click Disable.
f. Click the Best Practices folder.
g. If the Best Practices folder is already disabled, leave as is. Otherwise, click Disable.
h. Click the Messages tab.
Module 7: Testing and Validating a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 75
i. Click Check All Objects. The Consistency Check Manager appears with no messages
displayed, indicating that the repository is consistent.

j. Close the Consistency Check Manager. The SupplierSales business model folder has changed
from unavailable for queries to available for queries .
k. Save the repository.
l. Click No when prompted to check global consistency because you just checked consistency.
3. In this step, you enable query logging for the Administrator user. To test the repository, you need
to generate some queries, retrieve the results, and examine the query log. You log query activity
at the individual user level. Logging is intended for testing, debugging, and technical support. In
production mode, logging is normally disabled because query logging can impact performance
by producing very large log files.
a. Select Manage > Security.
b. In the left pane, select Users. The Administrator user appears in the right pane.
c. In the right pane, double-click Administrator. The User dialog box opens.
d. Ensure that the User tab is clicked.
e. In the Logging level field, set the value to 2.
f. Click OK.
g. Select Action > Close to close the Security Manager window. More security-related topics
are addressed in the lesson titled Security.
h. Save the repository.
i. Click No when prompted to check consistency.
j. Select File > Close to close the repository.
k. Select File > Exit to exit the Server Administrator.
4. In this step, you update the Repository and Cache sections of the NQSConfig.ini
initialization file. An entry in the Repository section of the initialization file instructs Oracle BI
Module 7: Testing and Validating a Repository
76 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Server to load a specific repository into memory upon startup. If Oracle BI Server detects a
syntax error while loading the repository, it logs the error to the server log file
(D:\OracleBI\server\Log\NQServer.log). You also disable caching. Caching is
typically not used during development, except to test the cache. You learn more about caching in
the lesson titled Cache Management.
a. Double-click D:\OracleBI\server\Config\NQSConfig.ini.
b. Locate the REPOSITORY section and change the entry from Star = ClassStart.rpd,
DEFAULT; to Star = ABC.rpd, DEFAULT;.
c. In the CACHE section, immediately below the REPOSITORY section, change the ENABLE
parameter from YES to NO.

d. Save the changes and close the file.
e. Close or minimize Windows Explorer.
5. Start the Oracle BI Server service to load the ABC repository into memory, and ensure that the
Oracle BI Presentation Server service is started.
a. If the Services window is not open, double-click the Services icon on your desktop.
b. If the Oracle BI Server service is already started, right-click Oracle BI Server and select
Restart. If Oracle BI Server is not started, right-click and select Start.
c. If Oracle BI Presentation Server is not started, right-click and select Start.
d. Ensure that the Oracle BI Server and Oracle BI Presentation Server services are started by
clicking the Refresh button until the Status column displays the value Started.
e. Minimize the Services window.
6. Examine the NQServer.log file to ensure that startup is successful.
a. Navigate to D:\OracleBI\server\Log.
b. Double-click NQServer.log to open it.
c. Locate the message Loading repository D:\OracleBI\server\Repository\ABC.rpd.
d. Ensure that SupplierSales is the Subject Area that was loaded and note the Oracle BI
Server started message. The log should look similar to the following screenshot.
Module 7: Testing and Validating a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 77

The log file can contain messages indicating why the server startup failed. For example, if
there was a syntax error in the NQSConfig.ini file, the NQServer.log file would
contain messages about the syntax error. After examining the log messages, if errors were
detected, you would correct the problem and start the server again.
e. Close the NQServer.log file.
7. Start Oracle BI Answers.
a. Ensure that the Oracle BI Server and Oracle BI Presentation Server services are started.
b. Select Start > Programs > Oracle Business Intelligence > Presentation Services.
c. Log in as Administrator. There is no need to enter a password.
d. Click the Answers link.
e. Ensure that the description you entered for the SupplierSales presentation catalog appears
under the SupplierSales subject area. Recall that presentation catalogs appear as subject areas
in Answers.

8. Execute queries to test the SupplierSales business model. In this step, you create a request
showing the dollars for each sales rep in the MidAtlantic district in the year 1999.
a. Click the SupplierSales subject area.
b. Place the cursor over the Customers folder and ensure that the description you entered in an
earlier practice appears as a tool tip.
c. Expand the Facts folder and ensure that SalesFacts is nested under the Facts folder.

Module 7: Testing and Validating a Repository
78 E Oracle BI Suite Enterprise Edition 10g Bootcamp
d. Expand the Customers table and click the Sales Rep and Sales District columns to add the
columns to the request.

e. Expand the SalesFacts table and click the Dollars column to add it to the request.

f. In the Dollars column, click the Column Properties button.

g. In the Column Properties dialog box, click the Data Format tab.
h. Click Override Default Data Format.
i. In the Treat Number As field, select Currency.
j. In the Currency Symbol field, select $.
k. In the Decimal Places field, select 2.
l. Select the Use 1000s Separator check box.
m. Check your work:

n. Select Save > as the system-wide default for -SalesFacts.Dollars.

Module 7: Testing and Validating a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 79
o. In the Dollars column, click the Order by button once to select the Order Ascending
icon.
p. Expand the Periods table and press and hold [Ctrl] and select the Year column. The
Create/Edit Filter dialog box opens.
q. In the Value field, enter 1999 and click OK.
r. In the Sales District column, click the Add Filter button .
s. Click All Choices.
t. Select MidAtlantic from the list and click OK.
u. Check the filters:

v. Click the Remove Column icon for the Sales District column so that this column
will not be displayed in the request results.
w. Your request now includes two columns:

And two filters:

x. Click the Results tab to view the results. Ensure that the Dollars column is formatted as
expected.

y. Which sales rep in the MidAtlantic sales district produced the highest revenue (dollars) in
1999?


9. In this step, you create a request showing the dollars for each sales district in the East region for
the year 1999.
a. Click the Create a new request icon and select the SupplierSales subject area.
b. Create the following request:

c. In the Dollars column, click the Order by icon once, to select Order Ascending
icon.
Module 7: Testing and Validating a Repository
80 E Oracle BI Suite Enterprise Edition 10g Bootcamp
d. Press and hold [Ctrl] and add the following filters for Year and Region:

e. Click Results.

f. Which sales district in the East region had the highest revenue (dollars) in 1999?


10. Examine the query log file.
a. Select Settings > Administration > Manage Sessions.
b. In the Cursor Cache section, click View Log for the last entry.
c. If necessary, scroll to the bottom of the file and then scroll up to locate the last query
executed by Administrator. The log file should look similar to the following screenshot:

d. Locate the SQL Request section. This section contains the logical SQL issued from
Answers.
e. Which presentation table does Sales District information come from?


f. Which presentation table does Dollars information come from?


Module 7: Testing and Validating a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 81
g. Which catalog name does the FROM clause identify?


h. What filters were applied to this request?


i. Locate the General Query Info section, just below the SQL Request section. This section
identifies the repository, subject area, and presentation catalog from which the query was run.
j. Which repository (logical name) was accessed for this query?


k. Which subject area was accessed for this query?


l. Which presentation catalog was accessed for this query?


m. Locate the Sending query to database named ORCL section, just below the General Query
Info section. This section identifies the physical data source to which Oracle BI Server
connects.
n. Which physical tables were accessed for this query?


o. Which physical columns were accessed for this query?


p. For which physical column was an aggregation rule applied?


q. Which logical column maps to the physical column with the aggregation rule?


r. Which physical join specifications are used in this query?




s. Which physical column orders the query results?


t. Did this query complete successfully?


u. How many rows were retrieved from the database?


Module 7: Testing and Validating a Repository
82 E Oracle BI Suite Enterprise Edition 10g Bootcamp
v. Close the log file.
w. Click Finished to close the Session Management window.
x. Click Close Window to close the Oracle BI Presentation Services Administration window.
y. Leave Oracle BI open for the next practice.

Congratulations! You have successfully used the Consistency Check Manager, Oracle BI
Answers, and the query log to test and check the repository.
Module 7: Testing and Validating a Repository
E Oracle BI Suite Enterprise Edition 10g Bootcamp 83
Solutions 7-1: Testing the Repository
Answers
8.y. Which sales rep in the MidAtlantic sales district produced the highest revenue (dollars) in
1999?
Paula Madison
9.f. Which sales district in the East region had the highest revenue (dollars) in 1999?
Yankee
10.e. Which presentation table does Sales District information come from?
Customers
10.f. Which presentation table does Dollars information come from?
SalesFacts
10.g. Which catalog name does the FROM clause identify?
SupplierSales
10.h. What filters were applied to this request?
year = 1999 and region = east
10.j. Which repository (logical name) was accessed for this query?
Star
10.k. Which subject area was accessed for this query?
SupplierSales
10.l. Which presentation catalog was accessed for this query?
SupplierSales
10.n. Which physical tables are accessed for this query?
D1_CUSTOMER2, D1_CALENDAR2, and D1_ORDERS2
10.o. Which physical columns were accessed for this query?
DISTRICT and ACTLEXTND
10.p. For which physical column was an aggregation rule applied?
ACTLEXTND
10.q. Which logical column maps to the physical column with the aggregation rule?
SalesFact.Dollars
Module 7: Testing and Validating a Repository
84 E Oracle BI Suite Enterprise Edition 10g Bootcamp
10.r. Which physical join specifications are used in this query?
D1_CALENDAR2.YYYYMMDD = D1_ORDERS2.PERIODKEY
D1_CUSTOMER2.NEWKEY = D1_ORDERS2.CUSTKEY
10.s. The query results are ordered by which physical column?
ACTLEXTND (Dollars)
10.t. Did this query complete successfully?
Yes
10.u. How many rows were retrieved from the database?
4
Module 8: Adding Multiple Logical Tables Sources
E Oracle BI Suite Enterprise Edition 10g Bootcamp 85
Practice 8-1: Enhancing the Product Dimension
Goal
To import normalized tables that contain additional product information into the
Physical layer of the repository
Scenario
There are product tables that store detailed information about ABCs products.
You want to add these tables to the Product dimension in the Business Model
and Mapping layer. You import these tables into the repository and create
keys and foreign key joins for the tables.
Outcome D1_PRICELIST, D1_PROD_DIET_TYPES, D1_PRODUCT_SUBTYPE,
D1_PRODUCT_TYPE, and D1_SUPPLIERS tables imported into the Physical
layer with associated keys and joins
Time
510 minutes
Instructions
1. Ensure that Oracle BI Server is stopped.
a. Open the Services window.
b. Locate Oracle BI Server and ensure that it is stopped and the Status field has no value.
c. Minimize Services.
2. Start the Server Administrator and open the ABC.rpd repository in offline mode.
a. Select Start > Programs > Oracle Business Intelligence > Administration.
b. Select File > Open > Offline.
c. Double-click ABC.rpd.
d. Ensure that User is Administrator and that the Password field is blank.
e. Click OK.
3. In this step, you import additional product tables that store product code, pricing, and supplier
information. The product dimension is an example of where information has been stored
physically in a normalized table structure. Data warehouse design writers such as Ralph Kimball
refer to this as snowflaking a dimension. Many database administrators regard this as good
database design, so this is a very common practice. So far, you have only included the
information in the root product table in the logical subject area. After import, you can include
information from the other product tables.
a. Select File > Import > From Database.
b. Select the OCI 10g/11g connection type.
c. In the TNS Name field, enter ORCL.
d. In the User Name field, enter SUPPLIER2.
Module 8: Adding Multiple Logical Table Sources
86 E Oracle BI Suite Enterprise Edition 10g Bootcamp
e. In the Password field, enter SUPPLIER2.
f. Click OK. The Import dialog box opens. This may take a few moments.
g. Scroll to the SUPPLIER2 folder and expand it.
h. Select the following tables (press and hold [Ctrl]) to import:
Table Name
D1_PRICELIST
D1_PRODUCT_SUBTYPE
D1_PRODUCT_TYPE
D1_PROD_DIET_TYPES
D1_SUPPLIERS
i. Ensure that the Tables and Keys check boxes are selected.
j. Click Import. Wait for the import process to complete.
k. Click Close to close the Import dialog box.
l. Ensure that the tables were imported into the Physical layer.

m. Update row counts for the new tables.
4. Define joins and foreign keys using the Physical Diagram.
a. In the Physical layer, right-click the ORCL database and select Physical Diagram >
Object(s) and All Joins to open the Physical Diagram view.
b. Drag the new table objects so they are all visible and use the zoom feature as needed.
c. Use the New Foreign Key button on the toolbar to create the following join relationships. As
in earlier lessons, click Yes if you are asked to create a matching table key.
D1_PRODUCT_SUBTYPE.SUBTYPECODE = D1_PRODUCTS.SUBTYPECODE
D1_PROD_DIET_TYPES.DIETCODE = D1_PRODUCTS.DIETCODE
D1_SUPPLIERS.SUPPLIERCODE = D1_PRODUCTS.SUPPLIERCODE
D1_PRICELIST.PRODUCTKEY = D1_PRODUCTS.PRODUCTKEY
D1_PRODUCT_TYPE.TYPECODE = D1_PRODUCT_SUBTYPE.TYPECODE
Module 8: Adding Multiple Logical Tables Sources
E Oracle BI Suite Enterprise Edition 10g Bootcamp 87
d. Check your results:

e. Close the Physical Diagram.
f. Save the repository. Do not check consistency.

Module 8: Adding Multiple Logical Table Sources
88 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 8-2: Creating Multiple Sources for a Logical
Table Source (Manual)
Goal
To add the information from the price list table to the Product dimension
Scenario
You have imported the product tables that store detailed information about
ABCs products into the Physical layer of the repository and configured keys
and joins for the tables. So far, the Product dimension in the Business Model
and Mapping layer has only information from the root product table:
D1_PRODUCTS. You are ready to add the information from the price list table to
the Product dimension, and while doing that, simplify the data structure (in
effect, creating a denormalized logical table).
Outcome In the Business Model and Mapping layer, the D1_PRICELIST physical table
is added to the existing logical table source for the Product dimension and the
Price logical column is added to the Product dimension and mapped to the
appropriate physical table.
Time
5 minutes
Instructions
1. In this step, you add the information from the price list table to the existing logical table source
for the Product dimension. There are two methods to add multiple sources for an existing logical
table source. In this practice, you use the Properties window of an existing logical table source,
which is a manual process and requires several steps. In the next practice, you use a more
automated process.
a. In the Business Model and Mapping layer, expand the Products logical table and then the
Sources folder, and then double-click the D1_PRODUCTS logical table source to view the
properties.
b. Click the General tab and click Add. The Browse window automatically includes those
tables that are joined directly to the table already in the logical table source. In this case, it
includes all tables that join to D1_PRODUCTS. Only tables that join to tables included in the
logical source can be added to the logical source. In other words, if tables do not have a join
relationship in the Physical layer to tables included in the logical source, they cannot be
added to the logical table source.
Module 8: Adding Multiple Logical Tables Sources
E Oracle BI Suite Enterprise Edition 10g Bootcamp 89
c. Which product table is not visible in the browse list?


d. Why is this table not visible in the list?




e. In the Browse window, select the D1_PRICELIST table and click the Select button. The
table is added to the logical table source and the join is displayed in the Joins section on the
General tab.

f. Select the join in the Joins section. The View Details button becomes active.
g. Click View Details to open the join dialog box and view the read-only details of the join.
h. Click Cancel to close the join dialog box.
i. To change a join to an outer join, you could use the drop-down list in the Type column. This
allows you to change the join type from inner to three kinds of outer joins. For the purpose of
these practices, leave the type as Inner. You can think of the tables in a logical dimension
table source as being like a database view. When it formulates physical SQL, Oracle BI
Server will leave out the tables in this view that are not needed to satisfy the logical query
(join elimination), but only if the join type is Inner. When the join type is Outer, however,
Oracle BI Server will always include the tables.
j. Click OK to close the Logical Table Source dialog box.
2. In this step, you create a new logical column based on the new logical table source. Using the
manual method in the previous step to add a physical table to a logical table source neither
automatically adds logical columns to the logical table nor changes the logical to physical
mapping of any existing column. Now that the physical table that stores the pricing information
Module 8: Adding Multiple Logical Table Sources
90 E Oracle BI Suite Enterprise Edition 10g Bootcamp
has been added to the Product logical table source, you create a new logical column and map it to
the appropriate physical table.
a. In the Business Model and Mapping layer, right-click the Products table and select New
Object > Logical Column.
b. Enter Price in the Name field and click OK.
c. Double-click the D1_PRODUCTS logical table source to open its properties dialog box.
d. Click the Column Mapping tab.
e. If necessary, select the Show unmapped columns check box. Note that the column you just
created, Price, is not mapped to any physical column.
f. In the Logical Column section, click the ellipsis () button next to Price to open the
Expression Builder.
g. In the lower-left pane of the Expression Builder, click the Physical Tables folder.
h. In the center pane, click D1_PRICELIST.
i. In the right pane, click PRICE.
j. Click the Insert button and examine the expression.
k. Click OK to close the Expression Builder.
l. Ensure that Show Mapped Columns is selected, and that the Price logical column is now
mapped to the PRICE physical column in the D1_PRICELIST physical table.

m. Click OK to close the Logical Table Source dialog box.

Module 8: Adding Multiple Logical Tables Sources
E Oracle BI Suite Enterprise Edition 10g Bootcamp 91
Solutions 8-2: Creating Multiple Sources for a Logical
Table Source (Manual)
Answers
1.c. Which product table is not visible in the browse list?
D1_PRODUCT_TYPE
1.d. Why is this table not visible in the list?
Because it does not have a direct join relationship with D1_PRODUCTS in the Physical
layer. The Browse window automatically includes those tables that are joined directly to
the table already in the logical table source.

Module 8: Adding Multiple Logical Table Sources
92 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 8-3: Creating Multiple Sources for a Logical
Table Source (Automated)
Goal
To add the information from the additional product tables to the Product
dimension
Scenario
You have manually added information from the price list table to the Product
dimension. You are ready to add information from the other product tables to
the Product dimension using an alternate method. You create multiple sources
for the Product logical table source and simultaneously add the columns to the
Product dimension.
Outcome In the Business Model and Mapping layer, the D1_PROD_DIET_TYPES,
D1_PRODUCT_SUBTYPE, D1_PRODUCT_TYPE, and D1_SUPPLIERS physical
tables are added to the existing logical table source for the Products logical
table.
In the Business Model and Mapping layer, the DIET_TYPE, ITEMSUBTYPE,
ITEMTYPE, and ITEMSUPPLIER logical columns are added to the Products
logical table and mapped to the appropriate physical tables.
Time
510 minutes
Instructions
1. In this step, you use a second method to add additional information to the Product dimension and
simultaneously add a new source to the existing D1_PRODUCTS logical table source.
a. In the Physical layer, expand the D1_PROD_DIET_TYPES table and select the
DIET_TYPE column.
b. In the Physical layer, drag the DIET_TYPE column onto the D1_PRODUCTS logical table
source in the Products dimension in the Business Model and Mapping layer.
c. Ensure that the DIET_TYPE column is added to the Products logical table.
d. Double-click the D1_PRODUCTS logical table source to view its properties.
e. Click the Column Mapping tab.
f. To which physical column and physical table is the DIET_TYPE logical column mapped?


g. Click OK to close the Logical Table Source properties dialog box.
Module 8: Adding Multiple Logical Tables Sources
E Oracle BI Suite Enterprise Edition 10g Bootcamp 93
2. Repeat the steps above to add more product information to the Products dimension,
simultaneously adding new sources to the existing D1_PRODUCTS logical table source.
a. Drag the following columns from the Physical layer to the D1_PRODUCTS logical table
source:
Physical Table Physical Column
D1_PRODUCT_SUBTYPE ITEMSUBTYPE
D1_PRODUCT_TYPE ITEMTYPE
D1_SUPPLIERS ITEMSUPPLIER
b. Open the D1_PRODUCTS logical table source properties dialog box and click the Column
Mapping tab to check your results.
c. Which new table sources are added to the D1_PRODUCTS logical table source? It may be
necessary to scroll to the right.




d. Click OK to close the Logical Table Source properties dialog box.
3. Rename the new logical columns in the Product dimension so they are meaningful to users.
a. In the Business Model and Mapping layer, slowly double-click the DIET_TYPE logical
column to make the column editable or right-click the column and select Rename.
b. Change the name to Diet Type.
c. Rename the other new columns to the following:
From To
ITEMSUBTYPE Subtype
ITEMTYPE Type
ITEMSUPPLIER Supplier
4. Add the new product information to the SupplierSales presentation catalog.
a. Drag the five new columns from the Business Model and Mapping layer onto the Products
table in the SupplierSales presentation catalog and reorder the columns in the Presentation
layer as follows:
Column Name
Price
Type
Subtype
Diet Type
Supplier
5. Select File > Check Global Consistency to validate your work. If you receive any error
messages, fix them before proceeding.
Module 8: Adding Multiple Logical Table Sources
94 E Oracle BI Suite Enterprise Edition 10g Bootcamp
6. Close the Consistency Check Manager.
7. Save and close the repository.
8. Close the Administration Tool.
9. Start the Oracle BI Server service.
10. Start Answers.
a. Select Start > Programs > Oracle Business Intelligence > Presentation Services.
b. Log in as Administrator. There is no need to enter a password.
c. Click the Answers link.
11. Create a request to check your work.
a. Select the SupplierSales subject area.
b. Create the following request:

c. Click the Results tab to view the results.

12. Examine the query log to determine which table or tables have been accessed for this simple
query.
a. Select Settings > Administration > Manage Sessions.
Module 8: Adding Multiple Logical Tables Sources
E Oracle BI Suite Enterprise Edition 10g Bootcamp 95
b. Click View Log for the last entry in the Cursor Cache section.
c. Ensure that three tables: D1_PRODUCTS, D1_PRODUCT_SUBTYPE, and
D1_PRODUCT_TYPE, have all been accessed, despite the fact that the
D1_PRODUCT_TYPE table alone contains all the data requested. The log should look similar
to the following screenshot:

d. Why are all the three tables included in the query?


e. Close the query log. In the next practice, you specify a more economical way for Oracle BI
Server to access this data.
13. Log out of Oracle BI.
Module 8: Adding Multiple Logical Table Sources
96 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solutions 8-3: Creating Multiple Sources for a Logical
Table Source (Automated)
Answers
1.f. To which physical column and physical table is the DIET_TYPE logical column mapped?
D1_PROD_DIET_TYPES.DIET_TYPE
2.c. Which new table sources are added to the D1_PRODUCTS logical table source? It may be
necessary to scroll to the right.
D1_PRODUCT_SUBTYPE, D1_PRODUCT_TYPE, and D1_SUPPLIERS
12.c. Why are all three tables included in the query?
Because of the join conditions. The only way the query can access the
D1_PRODUCT_TYPE table is through the D1_PRODUCTS table.
Module 8: Adding Multiple Logical Tables Sources
E Oracle BI Suite Enterprise Edition 10g Bootcamp 97
Practice 8-4: Adding a New Logical Table Source
Goal
To add a second logical table source to the Product dimension
Scenario Examining the physical sources and the Products dimension table, you
discover that the Type Code and Type columns are mapped to different
physical tables, while the information for both is stored in a common physical
table.
In order to model the most economical method for Oracle BI Server to find
information for these two columns, you decide to add a second logical table
source to the Product dimension so that Oracle BI Server queries only one
table for the Type Code and Type information.
Outcome
In the Business Model and Mapping layer, Type is added as second logical
table source for the Products logical table.
Time
5 minutes
Instructions
1. Open the ABC repository file in offline mode.
a. Stop the Oracle BI Server service.
b. Navigate to D:\OracleBI\server\Repository.
c. Double-click ABC.rpd.
d. Log in as Administrator with no password.
2. Examine the existing column mappings for the two columns, Type and Type Code, to
determine the most economical method for Oracle BI Server to find information.
a. In the Business Model and Mapping layer, expand the Sources folder of the Products table
and double-click D1_PRODUCTS.
b. Click the Column Mapping tab.
c. To what physical table and physical column is Type Code mapped?


d. To what physical table and physical column is Type mapped?


e. Click Cancel to close the Properties window.


Module 8: Adding Multiple Logical Table Sources
98 E Oracle BI Suite Enterprise Edition 10g Bootcamp
3. Determine which physical table stores information for both Type Code and Type.
a. In the Physical layer, expand the D1_PRODUCT_TYPE physical table.
b. Ensure that this table stores the information for ITEMTYPE and TYPECODE.
4. Model a new mapping for the Type Code logical column by creating a second logical table
source for the Products dimension.
a. In the Business Model and Mapping layer, right-click the Products table and select New
Object > Logical Table Source.
b. Ensure that the General tab is selected.
c. In the Name field, enter Type to name the new logical table source.
d. Click Add.
e. In the Browse dialog box, double-click the D1_PRODUCT_TYPE physical table to select it.
f. Click OK to close the Logical Table Source properties dialog box. Note that the new logical
table source, Type, is added to the Sources folder.

g. Double-click the Type logical table source to view its properties.
h. Click the Column Mapping tab.
i. Use the Expression Builder to map the Type Code logical column to the
D1_PRODUCT_TYPE.TYPECODE physical column. This maps the Type Code logical
column to the TYPECODE physical column in the D1_PRODUCT_TYPE physical table for
this logical table source.

j. Click OK to close the Expression Builder.
k. Use the Expression Builder to map the Type logical column to the
D1_PRODUCT_TYPE.ITEMTYPE physical column. This maps the Type logical column to
the ITEMTYPE physical column in the D1_PRODUCT_TYPE physical table for this logical
table source.
Module 8: Adding Multiple Logical Tables Sources
E Oracle BI Suite Enterprise Edition 10g Bootcamp 99


l. Click OK to close the Expression Builder.
m. Check your work:

n. Click OK to close the Logical Table Source properties dialog box. There are now two logical
table sources for the Products dimension and the Type Code logical column maps to both the
D1_PRODUCT_TYPE and D1_PRODUCTS tables. In a later practice, you let Oracle BI
Server know which source to use by specifying the aggregation content for the Type logical
table source.
o. Select File > Check Global Consistency to validate your work. If you receive any error
messages, fix the errors before proceeding.
p. If the repository is consistent, save and close the repository.
q. Select File > Exit to close the Administration Tool.
Module 8: Adding Multiple Logical Table Sources
100 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solutions 8-4: Adding a New Logical Table Source
Answers
2.c. To what physical table and physical column is Type Code mapped?
Type Code is mapped to the D1_PRODUCTS physical table and to the TYPECODE physical
column.
2.d. To what physical table and physical column is Type mapped?
Type is mapped to the D1_PRODUCT_TYPE physical table and to the ITEMTYPE physical
column.

Module 9: Adding Calculations to a Fact
E Oracle BI Suite Enterprise Edition 10g Bootcamp 101
Practice 9-1: Creating Calculation Measures by Using
Logical Columns
Goal
To derive a new calculation based on existing business measures
Scenario
You want to enable users to track the difference between the units ordered
and units shipped by selecting a single fact column called Cuts. This business
measure can potentially help track lost revenue. You use the Expression
Builder to configure a formula for Cuts using existing logical columns as
objects in the formula.
Outcome In the Business Model and Mapping layer, the Cuts logical column is added to
the SalesFacts logical table.
In the Presentation layer, the Cuts presentation column is added to the
SalesFacts presentation table.
Time
1015 minutes
Instructions
1. Because you modify the ABC repository in online mode in this practice, ensure that the Oracle
BI Server service is started.
2. In this step, you start the Administration Tool and open the ABC repository in online mode. Up
to this point, all the changes you have made to the repository have been in offline mode. Now
that you have a consistent repository and Oracle BI Server is running and using it, you can make
changes to the metadata in online mode.

Offline, the relationship between the Administration Tool and the repository is similar to the
relationship between any Windows application and a file: an application, the Administration
Tool in this case, opens a file for editing, makes changes to its in-memory copy, and tells the OS
to save the changed file.

In online mode, the relationship is different. Oracle BI Server has already opened the repository
file and the operating system has put a write-lock on the file. In this mode, Oracle BI Server can
act as an agent of the Administration Tool. When the Administration Tool tells it to, Oracle BI
Server sends the Administration Tool a copy of its in-memory repository. Then it listens for
messages from the Administration Tool about changes, makes those changes to its in-memory
copy, and, when told by the Administration Tool, tells the OS to save the changed file.

When you start the Administration Tool in online mode, you pick an Oracle BI ODBC DSN that
points to the repository you want to edit (the repository that is the default repository in the DSN).
Module 9: Adding Calculations to a Fact
102 E Oracle BI Suite Enterprise Edition 10g Bootcamp
The Administration Tool then communicates changes to Oracle BI Server and Oracle BI Server
makes the corresponding changes to its in-memory copy.
a. Select Start > Programs > Oracle Business Intelligence > Administration.
b. Select File > Open > Online.
c. In the Open Online Analytics Web dialog box, log in as Administrator; no password
needed.
d. Ensure that the title bar displays (Online) indicating you are in online mode.
3. In this step, you set a user preference to check out objects automatically. Because Oracle BI
Server may be processing queries while you are editing the repository, you must check out
objects before editing them. After the objects have been edited, you check them in again. Then
the changes you made become active. When you have finished editing, you can save the changes
to the repository.
a. Select Tools > Options.
b. Select the General tab.
c. Make sure that Check out objects automatically is selected.
d. Click OK.
4. In this step, you define a new logical measure called Cuts (the difference between what was
ordered and what was shipped) in the SalesFacts logical table, using existing logical columns to
define the calculation formula.
a. In the Business Model and Mapping layer, right-click the SalesFacts logical table and
select New Object > Logical Column.
b. Ensure that the General tab is selected.
c. Enter Cuts in the Name field to name the column.
d. Select the Use existing logical columns as the source check box.
e. To open the Expression Builder, click the Ellipsis button (to the right of the text edit
box).
f. In the left pane of the Expression Builder, select the Logical Tables folder.
g. In the middle pane, select the SalesFacts logical table.
h. In the Search field under the right pane, enter the letter U. This narrows the list of objects in
the pick list. This is a useful feature in large repositories.
i. In the right pane, select the Units Ordered logical column.
j. Click Insert.
k. Click the minus sign on the toolbar.
l. In the right pane, double-click the Units Shipped logical column to insert it in the
formula.
Module 9: Adding Calculations to a Fact
E Oracle BI Suite Enterprise Edition 10g Bootcamp 103
m. Check your results:

n. Click OK to close the Expression Builder. Note that the expression is now displayed in the
Logical Column dialog box.
o. Select the Data Type tab. The data type of logical columns derives from the data types of the
underlying physical columns. The Administration Tool examines the data types of the
physical sources and selects the most inclusive data type for the logical column. Data types
may be changed by the formula you create. For example, consider a logical column that is
defined as ColumnA * ColumnB. If ColumnA and ColumnB are integers, then the product of
those two columns is also an integer. If the formula was 1.0 * ColumnA * ColumnB instead,
the resulting data type would be a DOUBLE. The data type transformation happens in left to
right order within the normal order of operations. If the data were from SQL Server (which
has an Integer data type) and both UNITORDD and UNITSHPD were integers, Cuts would
have an INT data type instead of DOUBLE. Note also that the formula is expressed in terms
of the physical column data types and that it also includes the aggregation functions (sum).

p. Click OK. Note that the icon for Cuts is blue and that all other logical columns in the
SalesFacts logical table have a check mark. This indicates that the logical columns have
not yet been checked in to the server.
5. Add the new Cuts column to the SupplierSales presentation catalog.
a. In the Presentation layer, ensure that the SupplierSales presentation catalog is expanded.
b. Select Cuts from the SalesFacts logical table and drag it onto the SalesFacts
presentation table.
Module 9: Adding Calculations to a Fact
104 E Oracle BI Suite Enterprise Edition 10g Bootcamp
6. Select File > Check In Changes or click the Check In Changes button on the toolbar.
7. Click Yes to check global consistency. Fix errors, if any, before proceeding.
8. If the repository passes the consistency check, close the Consistency Check Manager.
9. Save the repository.
10. Check your work.
a. Log in to Oracle BI Presentation Services as Administrator; no password is needed.
b. Click the Answers link and the SupplierSales subject area.
c. Click Reload Server Metadata.
d. Create the following request:

e. Click the Results tab to view the results.


f. Ensure that the Cuts calculation is accurate for the Frozen food type by manually
subtracting Units Shipped from Units Ordered.
g. Is the value in the Cuts column for the Frozen food type accurate?


Module 9: Adding Calculations to a Fact
E Oracle BI Suite Enterprise Edition 10g Bootcamp 105
h. Ensure that the Cuts calculation is accurate for the Lamb food type by manually subtracting
Units Shipped from Units Ordered.
i. Is the value in the Cuts column for the Lamb food type accurate?


j. Leave Answers open.
11. Examine the query log to see what query was sent to the database.
a. Select Settings > Administration > Manage Sessions > View Log to open the query log.
What you see should be similar to the following:

b. Note that Cuts is included in the logical query.

c. Note that the difference between units ordered and units shipped is being calculated in the
outer query block (D1.c1 - D1.c2 as c4 here). Because you defined the Cuts calculation
using logical columns, the columns are summed first and then the difference is calculated.
You compare these results to the query results in the next practice.
d. Close the query log.
e. Leave Answers open.
f. What would happen if you deleted a logical column that is used to define the formula of
another logical column? The derived column would not be deleted automatically. However,
Module 9: Adding Calculations to a Fact
106 E Oracle BI Suite Enterprise Edition 10g Bootcamp
the tool would display an icon that warns you about this condition. Dont do this! This is
just for informational purposes.
Module 9: Adding Calculations to a Fact
E Oracle BI Suite Enterprise Edition 10g Bootcamp 107
Solutions 9-1: Creating Calculation Measures by Using
Logical Columns
Answers
10.g. Is the value in the Cuts column for the Frozen food type accurate?
Yes, 0 is the correct value.
10.i. Is the value in the Cuts column for the Lamb food type accurate?
Yes, 39 is the correct value.
Module 9: Adding Calculations to a Fact
108 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 9-2: Creating Calculation Measures by Using
Physical Columns
Goals
To modify a repository in online mode and create a calculation measure using
physical columns
Scenario
You want users to be able to track the difference between the units ordered
and units shipped by selecting a single fact column called CutsP. In the
previous practice, you used logical columns to create the calculation. In this
practice, you use the Expression Builder again to configure a formula for
CutsP using physical columns as objects in the formula.
Outcome In the Business Model and Mapping layer, CutsP is added to the
SalesFacts logical table.
In the Presentation layer, CutsP is added to the SalesFacts presentation
table.
Time
1015 minutes
Instructions
1. Return to the ABC repository, which should still be open in online mode.
2. Configure a new logical column in the SalesFacts logical table that uses physical columns in
its formula.
a. In the Business Model layer, right-click the SalesFacts table and select New Object >
Logical Column.
b. Enter CutsP in the Name field to name the column.
c. Select the Aggregation tab.
d. In the Default aggregation rule field, select Sum.
e. Click OK.
3. Map the new CutsP column to a physical source.
a. In the Business Model and Mapping layer, expand the Sources folder for the SalesFacts
table and double-click D1_ORDERS2.
b. Select the Column Mapping tab.
c. If necessary, select the Show unmapped columns check box to display the CutsP logical
column.
d. To open the Expression Builder, click the Expression Builder button (. . .) next to CutsP.
e. In the left pane of the Expression Builder, select the Physical Tables folder.
Module 9: Adding Calculations to a Fact
E Oracle BI Suite Enterprise Edition 10g Bootcamp 109
f. In the middle pane, select the D1_ORDERS2 table.
g. Following the process used in the previous practice, create a formula that subtracts units
shipped from units ordered using physical columns. Check your results:

h. Click OK to close the Expression Builder.
i. Note that you can see the formula in the Expression column for CutsP on the Column
Mapping tab. You may need to adjust the column width to see the entire formula.
j. Click OK to close the Logical Table Source properties dialog box.
k. Double-click the CutsP logical column.
l. Click the General tab and note that CutsP is not defined using existing logical columns as
the source.
m. Click the Data Type tab and note the data type of the logical column based on its formula
definition and the data types of the sources. Note also that formula finds the difference
between the columns first and then sums the difference.
n. Click OK to close the Logical Column properties dialog box.
o. Select CutsP in the SalesFacts logical table and drag it onto the SalesFacts presentation
table in the Presentation layer.
4. Check in the changes made to the repository:
a. Select File > Check In Changes or click the Check In Changes button on the toolbar.
b. Click Yes when asked to check consistency. Fix errors, if any, before proceeding.
c. If the repository is consistent, close the Consistency Check Manager.
5. Save the repository.
6. Reload the server metadata in Answers.
a. Return to Answers.
b. Click the Reload Server Metadata link to update the repository.
c. Ensure that CutsP appears in the SalesFact presentation table.

7. Check your work.
a. Create the following request:

Module 9: Adding Calculations to a Fact
110 E Oracle BI Suite Enterprise Edition 10g Bootcamp
b. Click the Results tab to view the results.

c. Ensure that the CutsP calculation is accurate for the Frozen food type by manually
subtracting Units Shipped from Units Ordered. Is the value in the CutsP column accurate?


d. Ensure that the CutsP calculation is accurate for the Lamb food type by manually
subtracting Units Shipped from Units Ordered. Is the value in the CutsP column accurate?


8. Examine the query log to see what query was sent to the database:
Module 9: Adding Calculations to a Fact
E Oracle BI Suite Enterprise Edition 10g Bootcamp 111
a. Open the query log. Your results should resemble the following screenshot:

b. Note that CutsP is included in the logical query.

c. Note also that the difference between units ordered and units shipped is calculated first and
then summed (sum(T285.UNITORDD - T285.UNITSHPD) as c4 in the example here).
Compare these results with the query results in the previous practice.
d. Close the query log.
e. Leave Answers open.
f. What are the advantages and disadvantages of defining a logical column in terms of other
logical columns, rather than in terms of the physical sources directly? The advantage of
defining a logical column formula based on existing logical columns is that you have to
define it only once. When you create formulas based on physical columns, you have to map
for each physical source it could be derived from. Sometimes, you have no choice, however,
if you have to use physical columns to apply an aggregation rule after a calculation.
Module 9: Adding Calculations to a Fact
112 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solutions 9-2: Creating Calculation Measures by Using
Physical Columns
Answers
7.c. Ensure that the CutsP calculation is accurate for the Frozen food type by manually
subtracting Units Shipped from Units Ordered. Is the value in the CutsP column accurate?
Yes, 0 is the correct value.
7.d. Ensure that the CutsP calculation is accurate for the Lamb food type by manually
subtracting Units Shipped from Units Ordered. Is the value in the CutsP column accurate?
Yes, 39 is the correct value.
Module 9: Adding Calculations to a Fact
E Oracle BI Suite Enterprise Edition 10g Bootcamp 113
Practice 9-3: Creating Calculation Measures by Using
the Calculation Wizard
Goals
To modify a repository in offline mode and create calculation measures using
the Calculation Wizard
Scenario
You want to model two calculation measures using the Calculation Wizard,
called Change Units Shipped and Percent Change Units Shipped. The
Change Units Shipped measure calculates the difference between the units
ordered and units shipped. The Percent Change Units Shipped measure
calculates what percentage of the units ordered has not been shipped. The
calculation measures that are created by the wizard are based on existing
logical columns. You rename these columns CutsW and Percent Not
Shipped in the Presentation layer.
Outcome
In the Business Model and Mapping layer, Change Units Shipped and Percent
Change Units Shipped are added to the SalesFacts logical table.
In the Presentation layer, CutsW and Percent Not Shipped are added to the
SalesFacts presentation table.
Time
1015 minutes
Instructions
1. Return to the ABC repository, which should still be open in online mode.
2. In this step, you model two calculation measures using the Calculation Wizard.
a. In the Business Model and Mapping layer, expand the SalesFacts table.
b. Right-click the Units Ordered column and select Calculation Wizard.
c. In the Calculation Wizard Introduction dialog box, click Next.
d. In the Choose columns pane, SalesFacts is selected. The columns appear in the right
pane.
e. Select the Units Shipped check box.
f. Click Next.
g. In the Generate Calculations section, ensure that the Change and Percent Change check
boxes are both selected.
Module 9: Adding Calculations to a Fact
114 E Oracle BI Suite Enterprise Edition 10g Bootcamp
h. In the Generate Calculations section, ensure that Change is highlighted.

i. In the Calculation Name field, enter CutsW.
j. Note the results that are returned when Units Shipped is NULL:

k. In the Generate Calculations section, select Percent Change so that it is highlighted.


l. Change the Calculation Name to Percent Not Shipped.
m. Note the results that are returned when Units Shipped is not available (NULL) or is zero
using the following parameters. The screenshot shows only partial results:

n. Click Next to open the Check Out Objects window.
o. Review the objects that must be checked out.
p. Click Next.
q. Review the two calculations measures that will be created by the Wizard: CutsW and
Percent Not Shipped.
r. Click Finish.
Module 9: Adding Calculations to a Fact
E Oracle BI Suite Enterprise Edition 10g Bootcamp 115
s. In the Business Model and Mapping layer, ensure that there are two new columns created by
the Calculation Wizard in the SalesFacts table.

t. Drag the new CutsW and Percent Not Shipped logical columns from the
SalesFacts logical table onto the SalesFacts presentation table in the SupplierSales
presentation catalog in the Presentation layer.
3. Check in changes.
4. Check global consistency.
5. If the repository is consistent, close the Consistency Check Manager. If not, fix any errors before
proceeding.
6. Save the repository.
7. Return to Answers.
8. Reload Server Metadata.
9. Create the following request:

10. Format the Percent Not Shipped column to display percentages.
a. In the Percent Not Shipped column, click the Column Properties button .
b. Click the Data Format tab.
c. Select the Override Default Data Format check box.
d. In the Treat Numbers As drop-down list, select Percentage.
e. In the Decimal Places drop-down list, select 2.
f. Save these settings as the system-wide default for Percent Not Shipped.
Module 9: Adding Calculations to a Fact
116 E Oracle BI Suite Enterprise Edition 10g Bootcamp
g. Check your changes:

h. Click OK to close the Column Properties dialog box.
11. Click Results.

Module 9: Adding Calculations to a Fact
E Oracle BI Suite Enterprise Edition 10g Bootcamp 117
12. Ensure that the CutsW calculation is accurate for the Frozen food type by manually subtracting
Units Shipped from Units Ordered. Is the value in the CutsW column accurate?


13. Ensure that the CutsW calculation is accurate for the Lamb food type by manually subtracting
Units Shipped from Units Ordered. Is the value in the CutsW column accurate?


14. To ensure that the Percent Not Shipped value is accurate, you divide CutsW by Units
Shipped. For example, for the Lamb food type, you divide 39 by 961 to get 4.06. This tells you
that 4.06% of the units ordered have not been shipped.
15. Examine the query log to see what query was sent to the database. Your query results should
resemble the following screenshot:

a. Note that the CutsW and Percent Not Shipped columns are listed in the logical
query.

Module 9: Adding Calculations to a Fact
118 E Oracle BI Suite Enterprise Edition 10g Bootcamp
b. Also, note that the parameters you specified for NULL values are included.

c. Close the log file.
d. Leave Answers and the Administration Tool open for the next practice.
Module 9: Adding Calculations to a Fact
E Oracle BI Suite Enterprise Edition 10g Bootcamp 119
Solutions 9-3: Creating Calculation Measures by Using
the Calculation Wizard
Answers
12. Ensure that the CutsW calculation is accurate for the Frozen food type by manually
subtracting Units Shipped from Units Ordered. Is the value in the CutsW column accurate?
Yes, 0 is the correct value.
13. Ensure that the CutsW calculation is accurate for the Lamb food type by manually
subtracting Units Shipped from Units Ordered. Is the value in the CutsW column accurate?
Yes, 39 is the correct value.
Module 9: Adding Calculations to a Fact
120 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Module 10: Creating Dimension Hierarchies and Level-Based Measures
E Oracle BI Suite Enterprise Edition 10g Bootcamp 121
Practice 10-1: Creating Dimension Hierarchies
Goal
To create dimensions to introduce hierarchies into the business model
Scenario
Dimensions are metadata objects that allow you to introduce hierarchies into a
business model. The dimensions and hierarchies remain hidden to users, but
they enable Oracle BI Server to provide useful calculations. You need to
implement three dimensions for ABC: Product, Customer, and Period.
Creating dimensions and hierarchies allows you to build level-based
measures, to define aggregation rules that vary by dimension, to provide drill
down on charts and tables in Answers and dashboards, and to describe the
content of aggregate sources.
Outcome
In the Business Model and Mapping layer, there are ProductsDim,
CustomersDim, and PeriodsDim dimension objects.
Time
2025 minutes
Instructions
1. Return to the ABC repository, which should still be open in online mode.
2. In order to create a dimension hierarchy, you need to know the levels in the hierarchy, the
columns that uniquely define each level, and the distinct values for each level. In this step, you
identify these for the product dimension.
a. The business requirements determine the levels. In the case of the product hierarchy for ABC,
the levels are (from top to bottom): Type, Subtype, Generic, and Specific.
b. Typically, a database administrator provides you the columns that define each level. In ABCs
case, the columns are:
Level Column on D1_PRODUCTS table that defines the level
Type
TYPECODE
Subtype
SUBTYPECODE
Generic
GENERICDESCRIPTION
Specific
SPECIFICDESCRIPTIN
c. In the Physical layer, navigate to D1_PRODUCTS.TYPECODE. Note that there are 22 rows for
the TYPECODE column. (If the row count is not visible, run Update Row Count). This is the
manual method to determine the number of elements at each level of a hierarchy. You update
row counts and then use the row count information to set the number of elements at each level
in a dimension hierarchy. In a later step, you learn how to use an automated method to
determine the number of elements at each level.
d. Confirm the row counts for the other columns in D1_PRODUCTS.
Module 10: Creating Dimension Hierarchies and Level-Based Measures
122 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Level Column on D1_PRODUCTS table that defines the level Row Count
Subtype
SUBTYPECODE
159
Generic
GENERICDESCRIPTION
186
Specific SPECIFICDESCRIPTIN (this spelling is correct) 192
3. In this step, you create a dimension object to represent the hierarchy of products.
a. In the Business Model and Mapping layer, right-click SupplierSales and select New Object >
Dimension. The Dimension dialog box opens.
b. In the Name field, enter ProductsDim.
c. Click OK. The new dimension appears in the Business Model and Mapping layer. Note the
three-arrow icon.
4. In this step, you add the parent level of the hierarchy.
a. Right-click the ProductsDim dimension and select New Object > Logical Level.
b. In the Name field, enter TotalProduct.
c. Because this level represents the grand total for products, select the Grand total level check
box. Note that when you do this, the Supports rollup to higher level of aggregation field is
grayed out and protected.
d. Note that the Number of elements at this level field has the value of 1. The TotalProduct level
has only one element (the grand total). Therefore, 1 is the appropriate value for this level and
cannot be changed.
e. Click OK. The new level appears as a child of the ProductsDim dimension.
5. Add the child levels of the hierarchy.
a. Right-click the TotalProduct level and select New Object > Child Level.
b. In the Name field, enter Type.
c. In the Number of elements at this level field, enter 22. Recall that this is the value you
determined in an earlier step. This number does not have to be exact. The ratio from one level
to the next is more important than the absolute number. These numbers only affect which
aggregate source is used (optimization, not correctness of queries).
d. Ensure that Supports rollup to higher level of aggregation is selected. This field is selected
because if data is stored at the Type level, it can be aggregated to produce the total for its
parent level without double counting or leaving anything out. There are some hierarchies
where certain levels might not include all the elements of the dimension.
e. Click OK. The Type level appears as a child of the TotalProduct level.
f. Repeat the above steps to add further child levels:
Name Number of elements at this level
Subtype
159
Generic
186
Specific
192
g. Ensure that your results appear as follows:
Module 10: Creating Dimension Hierarchies and Level-Based Measures
E Oracle BI Suite Enterprise Edition 10g Bootcamp 123

6. In this step, you specify which columns from the logical dimension table are associated with
which levels in the dimension hierarchy, starting from top to bottom. Here are some guidelines
for associating columns with levels:
Not all columns in the dimension table need to be associated explicitly with a level; the
ones that are not will be associated with the lowest level implicitly.
No columns can be associated with more than one level (although it may be part of the
level key of a lower level).
If a column pertains to more than one level, associate it with the highest level it belongs
to.
No level except the Grand Total level can exist without at least one column being
associated with it.
The Detail level (lowest level) must have the column that is the logical key of the
dimension table associated with it and it must be the key for that level.
a. In the Business Model and Mapping layer, expand the Products table, select the Type
column, and drag it up to the Type level.
b. Drag the logical column Type Code onto the Type level. Check your results:

c. Continue dragging logical columns from the Products table to the ProductsDim levels:
Logical Column Level
Subtype
Subtype
SubtypeCode
Subtype
Generic
Generic
Specific
Specific
ProductKey
Specific
Module 10: Creating Dimension Hierarchies and Level-Based Measures
124 E Oracle BI Suite Enterprise Edition 10g Bootcamp
d. Check your results:

Any column not associated explicitly with a level is associated implicitly with the detail level.
In this example, Package Weight and Supplier (among others) are by default associated with
the Specific level. The logical dimension table key column, ProductKey in this example,
must be associated explicitly with the lowest level.
e. Double-click the Type column in the Products logical table. The Logical Column dialog
box opens.
f. Click the Levels tab. This tab identifies the dimensions and logical levels associated with this
logical column. These values were set when you dragged the column onto the ProductsDim
dimension hierarchy.
g. Click the drop-down list for the Type logical level. Note that this is another method for
associating logical columns with dimensions and logical levels. You use this method later in
the next practice. Leave the logical level set to Type.
h. Click Cancel to closes the Logical Column dialog box.
7. In this step, you specify the level keys for the Type level in the hierarchy. The level key defines
the unique elements in each logical level. Each level key can consist of one or more columns at
this level (or may include columns at a higher level). When you pick a column to represent a
level key, you are saying that the values of all columns associated with the level are dependent
on the value of the level key column. If you know the value of the level key column, you can
determine the values of the other columns.
a. In ProductsDim, double-click the Type level. The Logical Level properties dialog box opens.
b. Click the Keys tab.
c. Click the New button. The Logical Level Key dialog box opens.
d. Select the Type check box.
e. Ensure that the Use for drilldown check box is selected. (Use for drilldown is explained in
the next step.)
f. Click OK. The attribute displays a key icon.
g. Click the New button again.
h. Select the Type Code check box.
i. Deselect the Use for drilldown check box.
j. Click OK.
k. Click OK.
Module 10: Creating Dimension Hierarchies and Level-Based Measures
E Oracle BI Suite Enterprise Edition 10g Bootcamp 125
l. Both level columns now display with key icons.
8. In this step, you set the level keys for the Subtype level using a different method.
a. In ProductsDim, right-click the Subtype column (not the level) and select New Logical
Level Key.
b. Ensure that the Subtype check box is selected.
c. Ensure that the Use for drilldown check box is selected.
d. Click OK.
e. Right-click the Subtype Code column and select New Logical Level Key.
f. Ensure that the Subtype Code check box is selected.
g. Deselect the Use for drilldown check box.
h. Click OK. Subtype is selected for drilldown and Subtype Code is not. Later, when a user
drills down in Answers or a dashboard, the default drill is to the level key that has Use for
drilldown checked in the next lowest level. Based on this example, when a user drills down
from the Type level (the next highest level), the default is to drill down to the Subtype
column, not the Subtype Code column.
9. Continue specifying the following level keys for the remaining levels:
Dimensional Level Key Use for drilldown
Generic
Generic Yes
Specific
Specific Yes
Specific
ProductKey No
10. Check your final results:

11. In this step, you use another method to create the customer dimension and levels.
a. Right-click the Customers logical table and select Create Dimension. A new dimension
called CustomersDim is created with two levels, Customers Total and Customers Detail.
The Customers Detail level is populated with all columns from the Customers logical
Module 10: Creating Dimension Hierarchies and Level-Based Measures
126 E Oracle BI Suite Enterprise Edition 10g Bootcamp
dimension table.

b. Double-click the Customer Detail level, click the General tab, and note that the number of
elements at this level is set to 136. The number was inherited automatically from Customer
Key when the dimension hierarchy was created.
c. Click OK to close the Logical Level dialog box.
d. Right-click the Customer Detail level and select New Object > Parent Level.
e. Name the parent level SalesRep, set the number of elements to 34, and click OK.
f. Create a District level as a parent of SalesRep, set the number of elements to 12, and click
OK.
g. Create a Region level as a parent of District, set the number of elements to 3, and click
OK.
h. Double-click the Customers Total level, ensure that it is set as the grand total level and the
number of elements is set to 1, and click OK.
i. Check your work:

j. Add columns to the hierarchy by dragging columns from the Customers Detail level (not the
Customers table) to the other CustomersDim hierarchy levels. This is a useful method when
business models are large. It eliminates the need to scroll to locate columns.
Module 10: Creating Dimension Hierarchies and Level-Based Measures
E Oracle BI Suite Enterprise Edition 10g Bootcamp 127
Column Level
Region
Region
District
District
Sales Rep
SalesRep
k. Create the following keys for each level.
Level Key Use for drilldown
Region
Region Yes
District
District Yes
SalesRep
Sales Rep Yes
Customers Detail
Customer Yes
l. In the Customers Detail level, deselect Use for drilldown for Customer Key (Customers
Detail_Key).
m. Check your work:

n. Check in changes.
o. Click Yes to check consistency before creating more dimensions. If there are any errors or
warnings, fix them before continuing.
p. If there are no errors or warnings, close the Consistency Check Manager.
q. Save the repository.
12. In this step, you can use either of the two methods described in the previous steps to create the
Periods dimension.
a. Create a dimension hierarchy called PeriodsDim based on the Periods logical dimension
table.
b. Create the levels within PeriodsDim:
Name Grand
Total
Level
Supports rollup
to higher level
of aggregation
Number of
elements at
this level
TotalPeriod Yes Protected 1
Module 10: Creating Dimension Hierarchies and Level-Based Measures
128 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Year No Yes 2
Quarter No Yes 6
Month No Yes 16
Day No Yes 474
13. There is no logical column you can associate with the Quarter level, so you need to create one
and map it to the MONTH_IN_YEAR column with a formula using a CASE statement.
a. Double-click the D1_CALENDAR2 logical source table for the Periods logical table.
b. Click the Column Mapping tab.
c. Click the New column button.
d. Name the column Quarter and click OK.
e. Make sure Show unmapped columns is selected.
f. Open the Expression Builder for the Quarter column.
g. Use fully qualified column names and build the following formula. Or, you can copy and paste
this formula from the Quarter.txt file in D:\Labs.

CASE WHEN "ORCL".""."SUPPLIER2"."D1_CALENDAR2"."MONTH_IN_YEAR" < 4 THEN 1
WHEN "ORCL".""."SUPPLIER2"."D1_CALENDAR2"."MONTH_IN_YEAR" < 7 THEN 2
WHEN "ORCL".""."SUPPLIER2"."D1_CALENDAR2"."MONTH_IN_YEAR" < 10 THEN 3
ELSE 4 END

h. Click OK to close the Expression Builder. The expression is displayed in the Expression field
in the Logical Table Source dialog box.
i. Click OK to close the Logical Table Source dialog box.
14. Add columns to the hierarchy by dragging columns to the PeriodsDim hierarchy levels:
Logical Column Level
Year
Year
Quarter
Quarter
Month
Month
MonthCode
Month
Month in Year
Month
Day
Day
Date
Day
15. Create the keys for each child level in the PeriodsDim dimension. Note that additional
configuration of the key for the Quarter level is completed in a subsequent step.
Level Key Use for drilldown
Year Year Yes
Month Month Yes
Month MonthCode No
Quarter Quarter Yes
Module 10: Creating Dimension Hierarchies and Level-Based Measures
E Oracle BI Suite Enterprise Edition 10g Bootcamp 129
16. Set MonthCode as the primary level key for the Month level.
a. Double-click the Month level.
b. Click the Keys tab.
c. In the Primary Key drop-down list, select MonthCode.
d. Click OK.
17. Setting the key for Quarter involves an additional step. Quarters (1, 2, 3, 4) occur each year.
However, these numbers do not uniquely identify a quarter, except when combined with Year.
Therefore, you need to make Year part of the Quarter level.
a. Double-click the Quarter level in PeriodsDim.
b. Click the Keys tab.
c. Select the Quarter key.
d. Click the Edit button.
e. Click the Add Button.
f. In the Browse dialog box, expand the Periods logical table.
g. Select Year and click OK.
h. Click OK to close the Logical Level Key dialog box.
i. Click OK to close the Logical Level dialog box.
j. Check your work. It should look similar to the following screenshot. Your results may vary
depending on which method you used to build the hierarchy.

k. Drag the Quarter logical column from the Periods logical table to the Periods presentation
table in the SupplierSales presentation catalog to make it available for queries in Answers.
18. Check in changes.
19. Check consistency.
20. Fix any consistency errors or warnings before proceeding. If there are no errors or warnings,
close the Consistency Check Manager.
21. Save the repository.
22. Open Answers and check your work:
Module 10: Creating Dimension Hierarchies and Level-Based Measures
130 E Oracle BI Suite Enterprise Edition 10g Bootcamp
a. Return to Answers.
b. Reload server metadata.
c. Create the following request:

d. Click Results.
e. Drill down on 1998 and ensure that you can see dollars data by quarter.
f. Drill down on any quarter and ensure that you can see dollars data by month.
g. Drill down on any month and ensure that you can see dollars data by day.
23. Leave Answers open.
24. Leave the Administration Tool open for the next practice.
Module 10: Creating Dimension Hierarchies and Level-Based Measures
E Oracle BI Suite Enterprise Edition 10g Bootcamp 131
Practice 10-2: Creating Level-Based Measures
Goal
To create level-based measures
Scenario
Now that you have created dimension hierarchies with levels, you want to use
them to implement level-based measures that calculate total dollars at various
levels.
Time
2025 minutes

Instructions
1. Return to the ABC repository, which should still be open in online mode.
2. In this step, you create new logical fact columns to represent the product level totals based on
existing fact columns.
a. In the Business Model and Mapping layer, right-click the SalesFacts table and select New
Object > Logical Column.
b. In the Name field, enter ProductTotalDollars.
c. Select the Use existing logical columns as the source check box.
d. Open the Expression Builder.
e. In the Expression Builder, add Logical Tables > SalesFacts > Dollars to the expression.
Recall that the Dollars column has a default aggregation rule of Sum.
f. Click OK.
g. Click the Levels tab.
h. For the ProductsDim, select TotalProduct from the Level drop-down list to specify that this
measure should be calculated at the grand total level in the product hierarchy.
i. Click OK. Note that setting the level causes the measure to automatically appear in the
ProductsDim dimension.

j. Repeat the steps to create a second level-based measure:
Name Dimension Level
ProductTypeDollars ProductsDim Type
Module 10: Creating Dimension Hierarchies and Level-Based Measures
132 E Oracle BI Suite Enterprise Edition 10g Bootcamp
k. Check your final results for the Product dimension:

3. Expose the new columns to users by dragging ProductTotalDollars and ProductTypeDollars
from the SalesFacts logical table to the SalesFacts presentation table in the SupplierSales catalog
in the Presentation layer.
4. Check in changes.
5. Check consistency. Fix any errors or warnings before proceeding.
6. If there are no errors or warnings, close the Consistency Check Manager.
7. Save the repository.
8. Test your results.
a. Return to Answers
b. Reload server metadata.
c. Create the following request:

d. For the ProductTypeDollars column, click the Column Properties button, then click the
Data Format tab, override the default data format, and set to Currency, $, Decimal Places =
2, Use 1000s Separator.
Module 10: Creating Dimension Hierarchies and Level-Based Measures
E Oracle BI Suite Enterprise Edition 10g Bootcamp 133
e. Click Save > as the system-wide default for SalesFacts.ProductTypeDollars.

f. Click Results. Note that ProductTypeDollars returns dollars grouped by Type when the query
is at a different level than Type; Generic in this example.

g. Drill down on a value in the Generic column. Based on how you constructed the hierarchy in
the business model, if you drill down on a value in the Generic column, Answers drills down
Module 10: Creating Dimension Hierarchies and Level-Based Measures
134 E Oracle BI Suite Enterprise Edition 10g Bootcamp
to the Specific column by default.

9. Leave Answers open.
Module 10: Creating Dimension Hierarchies and Level-Based Measures
E Oracle BI Suite Enterprise Edition 10g Bootcamp 135
Module 10: Creating Dimension Hierarchies and Level-Based Measures
136 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 10-3: Creating Share and Rank Measures
Goals
To create share and rank measures
Scenario
Now that you have created level-based measures, you use them to create a
share measure for products. You also create a rank measure for dollars.
Time
1530 minutes
Instructions
1. Return to the ABC repository, which should still be open in online mode.
2. Create a new share measure referencing existing logical columns.
a. In the Business Model and Mapping layer, right-click SalesFacts and select New Object >
Logical Column.
b. Name the logical column ProductShare.
c. Select the Use existing logical columns as the source check box.
d. Open the Expression Builder.
e. In the left pane, select the Functions folder.
f. In the middle pane, select Mathematic Functions.
g. In the right pane, select Round.
h. Click Insert. The function appears in the edit box.
i. Click SourceNumber.
j. Enter 100* followed by a space.
k. Select Logical Tables > SalesFacts > Dollars.
l. Click Insert.
m. Using the toolbar, click the Division button. Another set of angle brackets appears,
<<expr>>.
n. Click <<expr>>.
o. Select Logical Tables > SalesFacts > ProductTotalDollars. Recall that this is the total
measure for the hierarchy.
p. Double-click ProductTotalDollars or click Insert.
q. Click between the last set of angle brackets, <<Digits>>, and enter 1. This represents the
number of digits of precision with which to round the integer.
r. Check your work:

This share measure will allow you to run a query in Answers to show how sales of a specific
product compares to overall sales for all products.
Module 10: Creating Dimension Hierarchies and Level-Based Measures
E Oracle BI Suite Enterprise Edition 10g Bootcamp 137
s. Click OK to close the Expression Builder.
t. Click OK to close the Logical Column properties dialog box.
u. The ProductShare logical column is added to the business model.
3. Create a new rank measure referencing existing logical columns.
a. In the Business Model and Mapping layer, right-click the SalesFacts table and select New
Object > Logical Column.
b. In the Name field, enter RankDollars.
c. Select the Use existing logical columns as the source check box.
d. Open the Expression Builder.
e. Select Functions > Display Functions > Rank.
f. Double-click Rank or click Insert.
g. Click <<numExpr>>.
h. Select Logical Tables > SalesFacts > Dollars.
i. Click Insert.

j. Click OK to close the Expression Builder.
k. Check your work:

l. Click OK to close the Logical Column dialog box.
m. RankDollars is added to the business model.
4. Add the ProductShare and RankDollars measures to the Presentation layer by dragging them
to the SalesFacts table in the SupplierSales catalog.
5. Check in changes.
Module 10: Creating Dimension Hierarchies and Level-Based Measures
138 E Oracle BI Suite Enterprise Edition 10g Bootcamp
6. Check consistency. If there are errors or warnings, correct them before you proceed.
7. If there are no errors or warnings, close the Consistency Check Manager.
8. Save the repository.
9. Test your results.
a. Return to Answers
b. Reload server metadata.
c. Create the following query:

d. For the RankDollars column, click the Order By button once to sort the results in
ascending order.
e. For the ProductShare column, click the Column Properties button, then the Data Format
tab, override the default data format, and set to Percentage with Decimal Places = 2.
f. Click Save > as the system-wide default for SalesFacts.ProductShare.
g. Click the Results tab:

The results show total dollars for each product, the percent of total sales for each product,
and how each product ranks in total sales.
h. Create a similar query to view results for Products.Type, SalesFacts.Dollars,
SalesFacts.Product Share, and SalesFacts.Rank Dollars.

Module 10: Creating Dimension Hierarchies and Level-Based Measures
E Oracle BI Suite Enterprise Edition 10g Bootcamp 139
The results show total dollars for each product type, the percent of total sales for each
product type, and how each product type ranks in total sales.
10. Leave Answers open.
Module 10: Creating Dimension Hierarchies and Level-Based Measures
140 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Module 11: Using Aggregates
E Oracle BI Suite Enterprise Edition 10g Bootcamp 141
Practice 11-1: Using Aggregate Tables
Goal
To use aggregate tables to speed up processing
Scenario
ABC wants to add sources that contain precomputed aggregations. You need
to specify the level of aggregation for each source using logical levels. The
database administrator for ABC has already created the necessary aggregate
tables:
D1_SALESREPS contains one row for each sales representative,
which can be considered an aggregation of the Customer dimension
to the SalesRep level.
MONTHS contains one row for each year and month combination,
which can be considered an aggregation of the Period dimension to
the Month level.
D1_ORDER_AGG1 contains sales facts aggregated to the Sales Rep,
Product Type, and Month levels.
D1_PRODUCT_TYPE is already part of your model and contains one
row for each product type, which can be considered an aggregation of
the Product dimension to the Type level.
Outcome
In the Physical layer, there are new physical sources for the aggregate tables
listed above. In the Logical layer, there are new logical table sources for
Customers, Periods, and SalesFacts.
Time
3035 minutes
Instructions
1. Return to the Administration Tool and close the ABC repository, which should still be open in
online mode.
2. Stop the Oracle BI Server service and open the ABC repository in offline mode. You return to
the offline mode in this practice to import tables.
3. Import the physical aggregate tables from the ORCL database to the Physical layer of the
repository. You are importing both aggregate fact and aggregate dimension tables because you
need to create logical dimension sources at the same level of detail as the fact sources.
a. Select File > Import > from database.
b. Select the OCI 10g/11g connection type.
c. In the TNS name field, enter ORCL.
d. In the User name field, enter SUPPLIER2.
e. In the Password field, enter SUPPLIER2.
Module 11: Using Aggregates
142 E Oracle BI Suite Enterprise Edition 10g Bootcamp
f. Click OK. The Import dialog box opens. This may take a few moments.
g. Scroll to the SUPPLIER2 schema and expand it.
h. Select the following tables for import:
D1_ORDER_AGG1
D1_SALESREPS
MONTHS
i. Ensure that only Tables and Keys are selected and click Import to start the import process.
j. When the import process is complete, close the Import dialog box.
k. Ensure that the aggregate tables are added to the Physical layer of the repository.

4. Update row counts to check connectivity.

5. View the data in the aggregate tables.
a. Right-click D1_ORDER_AGG1 and select View Data. D1_ORDER_AGG1 contains sales
facts aggregated to the Sales Rep (REPKEY), Product Type (TYPEKEY), and Month
(PERKEY) levels.
Module 11: Using Aggregates
E Oracle BI Suite Enterprise Edition 10g Bootcamp 143


b. Close the View Data window.
c. Right-click D1_SALESREPS and select View Data. D1_SALESREPS contains one row for
each sales representative, which is an aggregation of the Customer dimension to the SalesRep
level.

d. View data for the MONTHS table. The MONTHS table contains one row for each year and
month combination, which is an aggregation of the Period dimension to the Month level.

e. View data for the D1_PRODUCT_TYPE table. D1_PRODUCT_TYPE contains one row for
each product type, which is an aggregation of the Product dimension to the Type level.

6. Create physical joins between the aggregate fact and aggregate dimension tables. Click Yes
when prompted to create a matching table key.
Module 11: Using Aggregates
144 E Oracle BI Suite Enterprise Edition 10g Bootcamp
a. In the Physical layer, press and hold [Ctrl] and select the three tables you just imported plus
the D1_PRODUCT_TYPE table, and click the Physical Diagram icon on the toolbar.
b. Rearrange the tables to make them visible in the Physical Diagram.
c. Use the New foreign key button and create the following joins:
D1_SALESREPS.SALESREP = D1_ORDER_AGG1.REPKEY
MONTHS.MONTHCODE = D1_ORDER_AGG1.PERKEY
D1_PRODUCT_TYPE.TYPECODE = D1_ORDER_AGG1.TYPEKEY
d. Check your work:

e. Close the Physical Diagram.
7. Create new logical sources within the current logical fact table that point to the aggregate tables.
a. In the Physical layer, expand the D1_ORDER_AGG1 table.
b. In the Business Model and Mapping layer, expand SalesFacts.
c. Drag the columns ACTLEXTND, UNITSHPD, UNITORDD, and NETWGHTSHPD one at a
time from D1_ORDER_AGG1 and drop each onto their corresponding SalesFacts logical
columns: Dollars, Units Shipped, Units Ordered, and Net Weight Shipped. This creates a
new D1_ORDER_AGG1 logical table source and corresponding column mappings.
d. Expand the SalesFacts Sources folder. Note that there are two logical table sources:
D1_ORDERS2 and D1_ORDER_AGG1.
e. Double-click the D1_ORDER_AGG1 logical table source and click the Column Mapping tab
to check your work:

Note that these four columns now map to both the D1_ORDERS2 table and the
D1_ORDER_AGG1 table. In the next step, you configure the business model to choose the
appropriate table to use during a query based on how content is specified in the Content tab.
8. Specify the aggregation content of the new table source for the SalesFacts table so that Oracle BI
Server knows what level of data is stored in the aggregate tables.
Module 11: Using Aggregates
E Oracle BI Suite Enterprise Edition 10g Bootcamp 145
a. Click the Content tab.
b. In the Aggregation content, group by field, ensure that the value is Logical Level. This is
the default.
c. Use the drop-down menus in the Logical Level field to specify the aggregation content as
follows:

You are setting aggregation content for the fact table to the corresponding levels in the
dimension hierarchies. In a subsequent step, you set similar levels for the dimension table
aggregate sources. Later, when a user queries against a particular level, Oracle BI Server will
know to access the aggregate tables instead of the detail tables. For example, if a user
queries for total sales by month by Sales Rep, the server will access the D1_ORDER_AGG1
aggregate fact table and the corresponding aggregate dimension tables, MONTHS and
D1_SALESREP. If a user queries for a level lower than the levels specified here, for
example Day instead of Month, or Customer instead of Sales Rep, then the server will access
the detail tables (D1_ORDERS2, D1_CALENDAR2, D1_CUSTOMER2). If a user queries for
higher level (year instead of month or district instead of sales rep) the aggregate tables will
be used as well, because whenever a query is run against a logical level or above, the
aggregate tables are used.
d. Click OK to close the Logical Table Source dialog box for D1_ORDER_AGG1.
e. Specify the content for the remaining fact logical table source, D1_ORDERS2. You are doing
this because it is good practice to set the levels for the detail source to the lowest levels in the
hierarchies. This is because you want the server to access the detail tables when queries are
against levels lower than those specified for the aggregate tables. It is also a good practice to
specify the content of all sources for documentation purposes, as another administrator could
interpret the lack of an aggregation content statement as an inadvertent omission of
information.



Module 11: Using Aggregates
146 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Note that the name of the detail level for CustomersDim may be different from the
screenshot, depending on which method you used to create the CustomersDim hierarchy in
the previous set of practices.
f. The Administration Tool can also validate the levels of the fact table sources. Change the
CustomersDim logical level to Region and select More > check levels. The dialog box
shows the recommended levels and the current level.

g. Click the Set button to set the level to the recommended level. You may need to scroll to the
right to see the Set button.
h. Close the Results dialog box.
i. Click OK to close the Logical Table Source dialog box.
9. Create a new source within the Periods logical table that points to the MONTHS aggregate table.
a. In the Physical layer, expand the MONTHS table.
b. In the Business Model and Mapping layer, expand Periods.
c. Drag the MONTH_IN_YEAR, MONTHCODE, MONTHNAME, QUARTER, and YEAR columns
from the MONTHS aggregate table onto the corresponding Periods logical columns to create
the mappings and the new source (drag MONTHNAME to MONTH). Click the Column Mapping
tab for the MONTHS logical table source to check your work:

10. Specify the aggregation content for the new MONTHS logical table source for the Periods table so
that Oracle BI Server knows what level of data is stored in the aggregate table. Recall that the
MONTHS table contains data at the Month level within the Period dimension hierarchy.
a. Select the Content tab in the MONTHS logical table source.
b. In the Aggregation content, group by field, ensure that the value is Logical Level.
Module 11: Using Aggregates
E Oracle BI Suite Enterprise Edition 10g Bootcamp 147
c. Use the drop-down menu in the Logical Level field to specify the aggregation content as
follows:

d. Click OK.
e. Specify the content for the remaining fact logical table source, D1_CALENDAR2. Again, it is
best practice to set the levels for the detail source to the lowest in the hierarchies.

f. Click OK to close the Logical Table Source dialog box.
11. Apply a similar process to create a new source within the Customers logical table that points to
the D1_SALESREPS aggregate table. Your results should resemble the following screenshot:

12. Apply a similar process as above to specify the aggregation content for the logical table sources
for the Customers table so that Oracle BI Server knows what level of data is stored in the
aggregate table. Recall that the D1_SALESREPS table contains data at the SalesRep level within
the Customer hierarchy. D1_CUSTOMER2 should be set to the lowest level in the hierarchy.
Your results should resemble the screenshots. Again, the name of the detail level for
CustomersDim may be different from the screenshot, depending on which method you used to
create the CustomersDim hierarchy in the previous set of practices.
Module 11: Using Aggregates
148 E Oracle BI Suite Enterprise Edition 10g Bootcamp



13. Apply a similar process to set the aggregation content for the logical table sources for the
Products table. Use the screenshots as a guide.



14. Save the repository.
15. Check global consistency. Fix any errors or warnings before you continue.
16. If there are no errors or warnings, close the Consistency Check Manager.
17. Close the repository. Leave the Administration Tool open.


Module 11: Using Aggregates
E Oracle BI Suite Enterprise Edition 10g Bootcamp 149
18. Why dont you need to change the Presentation layer?




19. Test your results.
a. Start the Oracle BI Server service.
b. Return to Answers and reload server metadata.
c. Query for Customers.Sales Rep and SalesFacts.Dollars and click the Results tab.

20. Select Settings > Administration > Manage Sessions > View Log to inspect the query log.
21. Ensure that the query uses the D1_ORDER_AGG1 aggregate fact table and the related
D1_SALESREPS aggregate dimension table.

22. Experiment with using Sales District in the query.
a. Return to Answers and run a query for Customers.Sales District and SalesFacts.Dollars.

Module 11: Using Aggregates
150 E Oracle BI Suite Enterprise Edition 10g Bootcamp
b. Open the log file and inspect the query.


c. Note that the query still uses the same aggregate tables. Why is this?




23. Experiment with using Customer in the query.
a. Return to Answers and run a query for Customers.Customer and SalesFacts.Dollars.

b. Open the log file and inspect the query.


c. Note that the detail fact table, D1_ORDERS2, and the detail dimension table,
D1_CUSTOMER2, are accessed instead of the aggregate tables. Why is this?




Module 11: Using Aggregates
E Oracle BI Suite Enterprise Edition 10g Bootcamp 151
Solutions 11-1: Using Aggregate Tables
Answers
18. Why dont you need to change the Presentation layer?
You made changes in the business model that impact how the queries are processed and
which sources are accessed. The user interface remains the same, so there is no need to
change the Presentation layer. It will automatically use the new sources.
22.c. Note that the query still uses the same aggregate tables. Why is this?
Sales District is at a higher level than Sales Rep; therefore, the aggregate tables can still
be used.
23.c. Note that the detail fact table, D1_ORDERS2, and the detail dimension table,
D1_CUSTOMER2, are accessed instead of the aggregate tables. Why is this?
The data requested is at a lower level than what is contained in the aggregate tables;
therefore, the aggregate tables do not contain the data and the detail tables must be used.

Module 11: Using Aggregates
152 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 11-2: Using the Aggregate Persistence Wizard
Goal
To use the Aggregate Persistence Wizard to automate the creation of aggregate tables
and their corresponding objects in the repository
Scenario
The traditional process for creating aggregates for Oracle BI Server queries is manual,
requiring the writing of DDL and DML scripts to create tables in the databases
involved. Additionally, these aggregated tables need to be mapped into the repository
metadata to be available for queries. This is a time consuming and, possibly, an error
prone process. The Aggregate Persistence Wizard allows an administrator to
automate the creation of aggregate tables and their corresponding objects in the
repository. Recall that your repository contains an aggregate table called
D1_ORDER_AGG1, which contains sales fact data aggregated at the month, sales
representative, and product type levels, and corresponding dimension aggregate
tables for product type, sales rep, and months. In this practice, you use the Aggregate
Persistence Wizard to create similar aggregate tables and the corresponding
metadata.
Time
2030 minutes
Instructions
1. In this step, you use the Aggregate Persistence Wizard to build a script that is used to create
aggregate tables and the corresponding metadata.
a. Return to the Administration Tool and open the ABC repository in online mode.
b. Select Tools > Utilities > Aggregate Persistence Wizard and click Execute.
c. Click Browse. The Repository directory opens by default.
d. In the File Name field, enter CREATE_AGG and ensure that the sql file type is selected. This
specifies the file where the output script is saved. This file stores the aggregate specifications
and is updated if more aggregates are specified.
e. Click Open.
f. Click Next.
g. In the top pane, select the SupplierSales business model. When there are multiple business
models only one business model can be selected.
h. In the bottom pane expand the SalesFacts fact table. When there are multiple fact tables,
only one fact table can be selected.
Module 11: Using Aggregates
E Oracle BI Suite Enterprise Edition 10g Bootcamp 153
i. Select the Dollars, Units Shipped, Units Ordered, and Net Weight Shipped measures.

j. Click Next.
k. Select the following levels. Leave the Use Surrogate Key? field check box deselected.
ProductsDim: Type
PeriodsDim: Month
CustomersDim: SalesRep

l. Click Next.
m. In the top pane, select the ORCL database.
n. In the second pane, expand ORCL and select the SUPPLIER2 schema. The SUPPLIERCP
connection pool is selected by default.
Module 11: Using Aggregates
154 E Oracle BI Suite Enterprise Edition 10g Bootcamp
o. In the Aggregate table name field, accept the default name ag_SalesFacts for the aggregate
table name.

p. Click Next.
Module 11: Using Aggregates
E Oracle BI Suite Enterprise Edition 10g Bootcamp 155
q. Review the aggregate definition. The screen displays the logical SQL that generates the
aggregate tables based on the parameters defined in the previous steps.

r. Select I am done.
s. Click Next. The Complete Aggregate Script dialog box appears confirming that the script has
been generated and stored in the location identified in an earlier step.
t. Click Finish.
u. Navigate to D:\OracleBI\server\Repository and ensure that the
CREATE_AGG.sql script file was generated.
2. Examine the aggregate parameters in the NQSConfig.ini file.
a. Navigate to D:\OracleBI\server\Config and open NQSConfig.ini.
b. In the General section, note the setting for AGGREGATE_PREFIX. This is the prefix that is
added automatically to the names of the dimension (level) aggregates when they are
generated by the script.
c. Close NQSConfig.ini without making any changes.
3. Set a password for the Administrator user. You do this because you need to provide a password
to run a batch file in the next step.
a. Select Manage > Security.
b. Select User in the left pane.
c. Double-click Administrator in the right pane to open the User dialog box.
Module 11: Using Aggregates
156 E Oracle BI Suite Enterprise Edition 10g Bootcamp
d. Enter Administrator in the Password and Confirm Password fields.
e. Click OK.
f. Select Action > Close to close the Security Manager.
g. Check in changes.
h. Save the repository.
i. Close the repository. Leave the Administration Tool open.
4. Create and run a batch file to drive the aggregate creation process.
a. Open Notepad and create the following create_agg batch file:

The file has the following format:
nqcmd Oracle BI Server command utility
-d Oracle BI Server data source name
-u repository username
-p repository password
-s path to the create aggregate SQL script
b. Save the file as D:\OracleBI\server\Repository\create_agg.bat.
c. Close the file.
d. Ensure that the Oracle BI Server service is started. Oracle BI Server must be running to
create the aggregates.
e. Open the command prompt.
f. In the command prompt window, navigate to D:\OracleBI\server\Repository and
run create_agg.bat.
g. Ensure that you receive the message Statement execute succeeded.
h. Close the command prompt window.
5. Ensure that the aggregates are created in the Physical layer of the repository.
a. Open the ABC repository in online mode as Administrator with Administrator as
the password.
b. In the Physical layer, ensure that the aggregates were created in the SUPPLIER2 schema.
There should be one new ag_SalesFacts aggregate and three new dimension aggregates in
the Physical layer. Your results should resemble the screenshot.
Module 11: Using Aggregates
E Oracle BI Suite Enterprise Edition 10g Bootcamp 157


c. Update row counts for the new aggregates to check connectivity. Confirm that you see the
following row counts:
ag_SalesFacts: 10,212 rows
SA_Month: 16 rows
SA_SalesRe: 34 rows
SA_Type: 21 rows
d. Double-click ag_SalesFacts, click the Foreign Keys tab, and ensure that joins are created
between ag_SalesFacts and the new dimension aggregates.
e. Double-click the foreign keys to view the join relationships in the Physical Foreign Key
dialog box.
f. Click Cancel to close the Physical Foreign Key dialog box.
g. Click Cancel to close the Physical Table - ag_SalesFacts dialog box.
6. Ensure that the aggregates are created in the Business Model and Mapping layer of the
repository.
a. In the Business Model and Mapping layer, open the Sources folder for the SalesFacts,
Customers, Periods, and Products logical tables and ensure that new logical table sources
are created for the aggregates.
b. In the Sources folder for the SalesFacts logical table, double-click the ag_SalesFacts logical
table source.
c. Click the General tab and ensure that the ag_SalesFacts logical table source maps to the
ag_SalesFacts physical table.
d. Click the Column Mapping tab and ensure that the Dollars, Units Ordered, Units
Shipped, and Net Weight Shipped logical columns map to the corresponding physical
columns in the ag_SalesFacts physical table.
Module 11: Using Aggregates
158 E Oracle BI Suite Enterprise Edition 10g Bootcamp
e. Click the Content tab and ensure that the logical levels are set correctly.

f. Click Cancel to close the ag_SalesFacts Logical Table Source dialog box.
g. Check in changes.
h. Check global consistency. Fix any errors or warnings before you continue.
i. If there are no errors or warnings, close the Consistency Check Manager.
j. Save the repository.
7. Ensure that the aggregates are created in the database.
a. Open Internet Explorer and enter the following URL to open the Oracle Enterprise Manager:
http://<machine name>:1158/em.
b. Enter SUPPLIER2 as the username and password, and log in.
c. Click the Administration link.
d. Click the Tables link.
e. Ensure that SUPPLIER2 is entered as the schema name, and click Go.
f. Ensure that the four new aggregate tables are created in the SUPPLIER2 schema.
g. Log out of Oracle Enterprise Manager.
8. Deactivate the D1_ORDER_AGG1 logical table source.
a. Double-click the D1_ORDER_AGG1 logical table source in SalesFacts > Sources.
b. Click the General tab.
c. Deselect Active.
d. Click OK to close the Logical Table Source dialog box.
e. Repeat the steps and deactivate the D1_SALESREPS and MONTHS logical table sources for
the Customers and Periods logical tables, respectively. You are deactivating these logical
table sources so you can ensure that the aggregate tables you just created are accessed when
you run a query in Answers in the next step.
f. Check in changes.
g. Check global consistency. Fix any errors or warnings before you proceed.
h. Close the Consistency Check Manager.
i. Save the repository.
9. Use Answers to test your work.
a. Return to Answers and log out.
b. Log back in as Administrator with Administrator as the password.
Module 11: Using Aggregates
E Oracle BI Suite Enterprise Edition 10g Bootcamp 159
c. Reload server metadata.
d. Create and run the following query:



10. Inspect the query log and ensure that the query used the ag_SalesFacts aggregate table and the
related SalesRep dimension aggregate. Your file should resemble the screenshot.

11. Reverse some of your changes to the repository for the remaining lessons. This practice
illustrated how Aggregate Persistence Wizard can be used to create aggregate tables. The tables
that were created with the wizard are not used in the remaining lessons in this course. In this
step, you deactivate the new aggregate tables and reactivate the original aggregate tables.
a. Return to the ABC repository open in online mode.
b. In the Business Model and Mapping layer, expand the Sources folder for the SalesFacts
logical table.
c. Double-click the D1_ORDER_AGG1 logical table source.
d. Click the General tab and click Active.
e. Click OK to close the logical table source dialog box.
f. Repeat the steps and activate the D1_SALESREPS and MONTHS logical table sources.
g. Return to the Sources folder for the SalesFacts logical table and double-click the
ag_SalesFacts logical table source.
h. Click the General tab and deselect Active to deactivate the ag_SalesFacts logical table
source.

i. Click OK to close the logical table source dialog box.
Module 11: Using Aggregates
160 E Oracle BI Suite Enterprise Edition 10g Bootcamp
j. Use similar steps to deactivate the corresponding dimension logical table sources beginning
with SA_ for Customers, Periods, and Products. Only Products is shown in the screenshot.

k. Check in changes.
l. Check global consistency. Fix any errors or warnings before you proceed.
m. Close the Consistency Check Manager.
n. Save the repository.
o. Leave the Administration Tool open.
Module 12: Using Partitions and Fragments
E Oracle BI Suite Enterprise Edition 10g Bootcamp 161
Practice 12-1: Modeling a Value-Based Partition
Goal
To model a value-based partition
Scenario
ABC wants to implement separate partitions for customer data. One partition
will store data for customers AM, the other will store data for customers
NZ.
Outcome
In the Physical layer, there are new physical sources: custAtoM and custNtoZ.
In the Logical layer, the logical sources for the Customers logical table are
changed.
Time
1520 minutes
Instructions
1. Examine customer data results. You use this information to compare results later in this practice.
a. Return to Answers. If necessary, log in as Administrator with Administrator as the
password.
b. Reload server metadata.
c. Create and run a request for Customers.Customer.
d. Record the name of the first customer in the list:


e. Click the last record button to move to the end of the list.
f. Record the total number of customers in the list:


2. Use the Direct Database Request feature to create new partitioned customer tables.
a. Click Settings > Administration to open the Oracle BI Presentation Services Administration
window.
b. Click Manage Privileges to open the Privilege Administration screen.
c. Scroll to the Answers section. Note that the Edit Direct Database Requests privilege is
granted to Presentation Server Administrators. By default, the Administrator user is a
member of this group.
d. Note also that the Execute Direct Database Requests privilege is not granted to anyone (not
permitted).
e. Click (not permitted) for the Execute Direct Database Requests privilege to open the
Change Privilege Permissions screen.
Module 12: Using Partitions and Fragments
162 E Oracle BI Suite Enterprise Edition 10g Bootcamp
f. Click the Add link next to the Presentation Server Administrators group to give this group
explicit access to this privilege.

g. Click Finished to close the Change Privilege Permissions window. Note the change to the
privilege permissions for Execute Direct Database Requests. Presentation Server
Administrators can now execute direct database requests.
h. Click Finished to close the Privilege Administration window.
i. Click Close Window to close the Oracle BI Presentation Services Administration window.
j. Click the Answers link to return to the Answers start page.
k. Click the Create Direct Request link.
l. In the Connection Pool field, enter SUPPLIER CP. This is the connection pool name for the
ORCL data source.
m. Enter the following SQL in the SQL Statement field:
CREATE TABLE D1_custAtoM AS SELECT * FROM D1_CUSTOMER2 WHERE
Name < 'N'
n. Click Results. You should see a No Results message.
o. Click the Criteria tab.
p. Remove the CREATE TABLE SQL from the SQL Statement field.
q. Enter the following SQL in the SQL Statement field:
SELECT COUNT(*) FROM D1_custAtoM
r. Click Validate SQL and Retrieve Columns.
s. Click Results. You should see COUNT(*) = 94.
t. Click the Criteria tab.
u. Remove the SELECT COUNT(*) SQL statement from the SQL Statement field.
v. Enter the following SQL in the SQL Statement field:
CREATE TABLE D1_custNtoZ AS SELECT * FROM D1_CUSTOMER2 WHERE
Name >= 'N'
w. Click Results. You should see a No Results message.
x. Click the Criteria tab.
y. Remove the CREATE TABLE SQL from the SQL Statement field.


Module 12: Using Partitions and Fragments
E Oracle BI Suite Enterprise Edition 10g Bootcamp 163
z. Enter the following SQL in the SQL Statement field:
SELECT COUNT(*) FROM D1_custNtoZ
aa. Click Validate SQL and Retrieve Columns.
bb. Click Results. You should see COUNT(*) = 42.
3. Return to the ABC repository, which should still be open in online mode.
4. Import the new partitioned sources D1_CUSTATOM and D1_CUSTNTOZ into the Physical layer.
a. Select File > Import > from Database.
b. Select the OCI 10g/11g connection type.
c. In the TNS Name field, enter ORCL.
d. In the User Name field, enter SUPPLIER2.
e. In the Password field, enter SUPPLIER2.
f. Click OK.
g. In the Import dialog box, expand the SUPPLIER2 schema.
h. Press and hold [Ctrl] and select the D1_CUSTATOM and the D1_CUSTNTOZ tables.
i. Click Import.
j. When the import process completes, close the Import dialog box.
k. Ensure that the two new tables are visible in the Physical layer.
l. Check in changes.
m. Update row counts for the two new tables to ensure connectivity.
CUSTATOM: 94
CUSTNTOZ: 42
5. Use the Physical Diagram and New foreign key button to create the following physical joins
from the new customer tables to the D1_ORDERS2 table. Create matching keys when prompted.
D1_CUSTATOM.NEWKEY = D1_ORDERS2.CUSTKEY
D1_CUSTNTOZ.NEWKEY = D1_ORDERS2.CUSTKEY
6. Add the new sources and change the business model to use the new partitions instead of the
original source.
a. From the Physical layer, drag D1_CUSTATOM to Customers in the Business Model and
Mapping layer.
b. Delete the following new logical columns since they are duplicates and not needed: NEWKEY,
NAME, ZIP_CODE, SALESREP, and ROUTECODE.
c. Double-click D1_CUSTATOM in the Sources folder and click the Content tab.
d. Click the ellipsis button to open the Fragmentation Content expression builder.
e. Select Logical Tables > Customers, and then double-click Customer. The expression is
added to the expression builder.
Module 12: Using Partitions and Fragments
164 E Oracle BI Suite Enterprise Edition 10g Bootcamp
f. Click < and enter N.

g. Click OK to close the Expression Builder.
h. Select This source should be combined with others at this level.
i. Click the Column Mapping tab, make sure both mapped and unmapped columns are shown,
and map the logical columns to physical columns. Use the screenshot as a guide.

j. Click OK to close the Logical Table Source dialog box.
k. From the Physical layer, drag D1_CUSTNTOZ to Customers in the Business Model and
Mapping layer.
l. Delete the following logical columns because they are duplicates and not needed: NEWKEY,
NAME, ZIP_CODE, SALESREP, and ROUTECODE (the last five columns).
m. Double-click D1_CUSTNTOZ in the Sources folder and click the Content tab.

Module 12: Using Partitions and Fragments
E Oracle BI Suite Enterprise Edition 10g Bootcamp 165
n. Click the ellipsis button to open the Fragmentation Content expression builder.
o. Select Logical Tables > Customers, and then double-click Customer.
p. Click >= and enter N.
q. Click OK.
r. Select This source should be combined with others at this level.
s. Click the Column Mapping tab and modify the mappings as follows:

t. Click OK.
u. Deactivate the original source by double-clicking D1_CUSTOMER2, clicking the General
tab, and deselecting the Active flag.
v. Click OK.
w. Note that you did not have to change the Presentation layer.
7. Check in changes.
8. Check consistency. Fix errors or warnings, if any, before you proceed.
9. If there are no errors or warnings, close the Consistency Check Manager.
10. Save the repository.
11. Test your results.
a. Return to Answers.
b. Reload server metadata.
c. Build a request for Customers.Customer and click the Results tab.
d. Click the All Pages button to see all records.
e. Compare your results to those in step 1. There should not be any difference. The query
returns 134 customer records.

Module 12: Using Partitions and Fragments
166 E Oracle BI Suite Enterprise Edition 10g Bootcamp
12. Ensure that the query being issued accesses your new tables.
a. Open the query log.
b. Ensure that it references your new tables. Both partition tables are used because you
deactivated the detail source table, D1_CUSTOMER2, and did not apply a filter to Customer
in the query. Note that a separate select statement is sent to each table and Oracle BI Server
performs a UNION ALL to combine the results.

c. Close the log file.
13. Execute a new query for names greater than or equal to N.
a. Return to Answers and add a filter to Customer to show names greater than or equal to N.
b. Add SalesFacts.Dollars and run the query.
c. Ensure that your result displays only names starting with N and above.

d. Open the query log and ensure that the query being issued accesses the correct partition,
D1_CUSTNTOZ, for the Customer data.

e. Close the log file.

Module 12: Using Partitions and Fragments
E Oracle BI Suite Enterprise Edition 10g Bootcamp 167
14. Further test that your results are correct for names less than N.
a. Return to Answers and edit the filter to show names less than N.
b. Run the query.
c. Ensure that your result displays only names less than N.

d. Open the query log and ensure that the query being issued accesses the correct partition,
D1_CUSTATOM, for the Customer data.


e. Close the log file.
Module 12: Using Partitions and Fragments
168 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Module 12: Using Partitions and Fragments
E Oracle BI Suite Enterprise Edition 10g Bootcamp 169
Solutions 12-1: Modeling a Value-Based Partition
Answers
1.d. Record the name of the first customer in the list:
2
nd
& Goal Sports Cafe
1.f. Record the total number of customers in the list:
134

Module 12: Using Partitions and Fragments
170 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 12-2: Modeling a Fact-Based Partition
Goals
To incorporate quotas in the business model and create new business
measures using a fact-based partition
Scenario
ABC sets sales quotas for its sales organization. These quotas are set at the
region level by quarter. In addition, each of the region sales quotas is broken
down by product type. Quota numbers are stored in an Excel workbook. The
workbook, quota.xls, is stored on your machine. You incorporate the quota
numbers in the business model and create business measures to report
variance from quota and percent of quota.
Time
1015 minutes
Instructions
1. Create an ODBC data source for an Excel spreadsheet.
a. Double-click Data Sources (ODBC) on your desktop to open the ODBC Data Source
Administrator.
b. Click the System DSN tab.
c. Click Add.
d. Select the Microsoft Excel Driver and click Finish.
e. Enter xls_quota as the data source name.
f. Click Select Workbook.
g. Navigate to D:\Labs and select the quota.xls workbook.
h. Click OK.
i. Click OK to close the ODBC Microsoft Excel Setup dialog box.
j. Click OK to close the ODBC Data Source Administrator.
2. Import the xls_quota data source into the ABC repository.
a. Return to the ABC repository, which should still be open in online mode.
b. Select File > Import > from Database.
c. Select the xls_quota data source, and enter Administrator as the username; no password
is needed.
d. Click OK. The Import dialog box opens.
e. Expand D:\Labs\quota.
f. Select and import the following tables:
Item Types
Quarters
Regions
regiontypequota
Module 12: Using Partitions and Fragments
E Oracle BI Suite Enterprise Edition 10g Bootcamp 171
g. Close the Import dialog box.
3. Because Excel has limited data types, check or change the data types to conform to existing data
types for the relevant fields. Expand the physical tables and double-click the physical columns to
open the properties dialog box.
ItemType: VARCHAR 20
Quarter: DOUBLE
YR: DOUBLE
Region CHAR 16
Dollars: DOUBLE
4. Specify joins and keys.
a. For each table, double-click the table, click the Keys tab, and use the New button to specify
the table keys as follows:

b. Use the Physical Table Diagram to specify the following foreign key joins:
ItemTypes.ItemType = regiontypequota.ItemType
Regions.Region = regiontypequota.Region
Quarters.YR = regiontypequota.YR AND Quarters."Quarter" =
regiontypequota."Quarter"

Hint: Press and hold [Ctrl] and create the multicolumn join for the Quarters columns or
enter the join expression in the Expression edit field:
Module 12: Using Partitions and Fragments
172 E Oracle BI Suite Enterprise Edition 10g Bootcamp


c. Check your work:

d. Close the Physical Diagram.
5. Create a new measure for quotas.
a. Create a new logical column in the SalesFacts table and name it Quota.
b. Set the aggregation rule to SUM.
6. Create a new logical table source for SalesFacts by dragging the Dollars physical column from
the regiontypequota physical table onto the Quota logical column that was just created. This
automatically creates a new regiontypequota logical table source.
Module 12: Using Partitions and Fragments
E Oracle BI Suite Enterprise Edition 10g Bootcamp 173
7. Specify the content for the new regiontypequota logical table source on the Content tab of the
Logical Table Source properties dialog box:

8. Create new logical table sources for the dimension tables.
a. Drag the YR physical column from the Quarters physical table onto the Year logical
column in the Periods logical table. This automatically creates a new Quarters logical table
source for the Periods logical table.
b. Repeat the steps for the following columns:
Physical Table.Column Logical Table.Column
Quarters.Quarter into Periods.Quarter
Regions.Region into Customers.Region
ItemTypes.ItemType into Products.Type

This automatically creates a Regions logical table source for the Customers logical table and
an ItemTypes logical table source for the Products logical table.
9. Specify the content level for the Quarters, Regions, and ItemTypes logical table sources. Use
the screenshots as a guide.




Module 12: Using Partitions and Fragments
174 E Oracle BI Suite Enterprise Edition 10g Bootcamp


It is best practice to set the aggregation level of these dimension sources. You specify the content
of a dimension table source in terms of the hierarchy of that dimension only. The content of a
fact table source is specified in terms of the content of all dimensions.
10. Drag the Quota logical column into the SalesFacts presentation table.
11. Check in changes.
12. Check consistency. If you get a warning that the features in database xls_quota do not match the
defaults, you can ignore the warning for the purposes of this practice. If you want to prevent the
warning message from appearing, click Options > Warnings > Database, and disable Check
Features Match Default. Fix any other errors or warnings before you proceed.
13. Close the Consistency Check Manager.
14. Save the repository and leave it open for the next practice.
Module 12: Using Partitions and Fragments
E Oracle BI Suite Enterprise Edition 10g Bootcamp 175
Practice 12-3: Using the Calculation Wizard to Create
Derived Measures

Goals
To utilize the Administration Tool Calculation Wizard to create derived
measures
Scenario
Use the Calculation Wizard to create two derived measures: Variance from
Quota and Percent of Quota.
Time
510 minutes
Instructions
1. In this step, you use the Calculation Wizard to create two new measures.
a. Right-click the Dollars logical column and select Calculation Wizard. The Calculation
Wizard opens.
b. Click Next. The Calculation Wizard Choose Columns dialog box opens.
c. Click SalesFacts.
d. In the right pane, select the Quota check box.
e. Click Next.
f. Ensure that the Change check box is checked in the Generate Calculations section and enter
Variance from Quota in the Calculation Name field to change the name of this
calculation.
g. Deselect the Percent Change calculation check box.
h. Select the Percent check box, and rename the measure Percent of Quota. The
Calculation Wizard writes the correct formula for each measure, handling the cases of NULL
and zero values according to the default.
Module 12: Using Partitions and Fragments
176 E Oracle BI Suite Enterprise Edition 10g Bootcamp


i. Click Next. Objects that have to be checked out are displayed.
j. Click Next. The new calculations that the wizard will create are displayed.
k. Click Finish to close the Calculation Wizard. The new measures are added to the business
model.
l. Drag the new measures to the Sales Facts presentation table in the Presentation layer.
2. Check in changes.
3. Check consistency. Fix any errors or warnings before you proceed.
4. Close the Consistency Check Manager.
5. Save and close the repository.
6. Return to Answers, reload server metadata, and run the following query and filter:



Module 12: Using Partitions and Fragments
E Oracle BI Suite Enterprise Edition 10g Bootcamp 177
7. Check your results. In the screenshot, the columns have been formatted.

8. Check the query log. The log shows that a single logical query generated two physical queries.
Oracle BI Server automatically joined the two result sets on the basis of common values in the
logical dimension columns. The join of two results sets from two different sources is always a
full outer join. Mapping two sources to the same logical columns (as you did for region, year,
quarter, and type) was all that was necessary to cause this join to happen.

9. Close the query log.
Module 12: Using Partitions and Fragments
178 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Module 13: Using Repository Variables
E Oracle BI Suite Enterprise Edition 10g Bootcamp 179
Practice 13-1: Creating Dynamic Repository Variables
Goal
To create and use dynamic repository variables
Scenario
ABC has implemented separate partitions for customer data. However, when
the partitions get reloaded, 50% of the data is loaded into the first partition and
50% of the data into the second partition. You create an initialization block and
a dynamic repository variable, and then use the variable to determine how the
data is split between the partitions.
Outcome
A new initialization block called CustomerDataSplit is created with the
EndPartOne variable.
In the Business Model and Mapping layer, sources for the Customers logical
table are modified.
Time
1015 minutes
Instructions
1. Open the ABC repository in online mode.
2. In this step, you create an initialization block. Initialization blocks contain SQL statements that
initialize variables. The variables are repository variables and their values persist until the
initialization block resets them the next time it runs. Repository initialization blocks execute
whenever Oracle BI Server starts up and thereafter according to any schedule that is applied.
a. Select Manage > Variables.
b. Select Action > New > Repository> Initialization Block.
c. Name the block CustomerDataSplit.
d. Click Edit Data Source.
e. Click the Browse button.
f. Select the SUPPLIER CP connection pool object.
g. Click the Select button. The connection pool is added to the Repository Variable Init Block
Data Source dialog box.
Module 13: Using Repository Variables
180 E Oracle BI Suite Enterprise Edition 10g Bootcamp
h. Enter the following SQL in the Default Initialization String field to capture the first letter of
the maximum customer name in the D1_CUSTATOM table:
SELECT SUBSTR(MAX(UPPER(NAME)),1,1) AS EXPR1 FROM
SUPPLIER2.D1_CUSTATOM

i. Click OK to close the dialog box.
3. Create the variables.
a. Click Edit Data Target.
b. Click the New button.
c. In the Name field, enter EndPartOne.
Module 13: Using Repository Variables
E Oracle BI Suite Enterprise Edition 10g Bootcamp 181
d. Enter A in the Default Initializer section:

e. Click OK to close the Dynamic Repository Variable dialog box.
f. Click OK to close the Repository Variable Init Block Variable Target dialog box.
g. Click Edit Data Source.
h. Click Test to test the variable and check your results:

i. Click Close.
j. Click OK to close the Repository Variable Init Block Variable Target dialog box.
k. Click OK to close the Repository Variable Init Block dialog box. The initialization block and
dynamic repository variable are visible in the Variable Manager.

l. Select Action > Close to close the Variable Manager.
4. Use the variable to dynamically determine the content in the customer sources.
a. In the SupplierSales business model, expand Customers and then Sources.
b. Double-click D1_CUSTOMER2.
Module 13: Using Repository Variables
182 E Oracle BI Suite Enterprise Edition 10g Bootcamp
c. Click the General tab and ensure that the source is inactive (Active is not selected.).
d. Click OK.
e. Double-click D1_CUSTATOM.
f. Click the General tab.
g. In the Name field, enter CustPartOne.
h. Ensure that Active is selected.
i. Click the Content tab.
j. Open the Expression Builder by clicking the ellipsis button next to the Fragmentation content
field.
k. Remove < N from the expression.
l. Click the <= button.
m. Select Repository Variables in the left pane and double-click EndPartOne in the middle
pane to change the expression to use the variable.
n. Click OK.
o. Check your result:

p. Ensure that the This source should be combined with other sources at this level check box
is selected.
q. Click OK.
r. Double-click D1_CUSTNTOZ.
s. Click the General tab.
t. In the Name field, enter CustPartTwo.
u. Ensure that Active is selected.
v. Click the Content tab.
w. Open the Expression Builder.
x. Remove >= N from the expression.
Module 13: Using Repository Variables
E Oracle BI Suite Enterprise Edition 10g Bootcamp 183
y. Click the > button.
z. Select Repository Variables in the left pane and double-click EndPartOne in the middle
pane to change the expression to use the variable.
aa. Click OK.
bb. Check your result:

cc. Ensure that the This source should be combined with other sources at this level check box
is selected.
dd. Click OK.
ee. The two sources with content expressions based on the repository variables are renamed in
the Sources folder:

5. Check in changes.
6. Check consistency. Fix errors or warning messages, if any, before you proceed.
7. Close the Consistency Check Manager.
8. Save and close the repository.
9. Test your results.
a. Restart the Oracle BI Server service.
Module 13: Using Repository Variables
184 E Oracle BI Suite Enterprise Edition 10g Bootcamp
b. Navigate to D:\OracleBI\server\log and open NQQuery.log.
c. Scroll to the end of the file to locate the query issued by the initialization block:

d. Close the log file.
e. Return to Answers.
f. Reload server metadata.
g. Use the SupplierSales subject area and create a request with Customers.Customer.
h. Add a filter for customer names less than B:

i. Run the query and ensure that your results display names starting less than B:

j. Select Settings > Administration > Manage Sessions > View Log to open the query log.
k. Ensure that the D1_CUSTATOM table is being used:


l. Close the log file.
10. Further test your results.
a. Return to Answers and change the filter to provide names greater than X.
Module 13: Using Repository Variables
E Oracle BI Suite Enterprise Edition 10g Bootcamp 185
b. Run the query and check the results:

c. Ensure that the SQL in the log file references the D1_CUSTNTOZ table:

d. Close the log file.
11. In the remaining practices you do not use separate partitions for customer data. In this step, you
activate the D1_CUSTOMER2 logical data source for the Customers table and deactivate the two
partitioned data sources.
a. Open the ABC repository in online mode.
b. In the SupplierSales business model, expand the Customers table and the Sources folder.
c. Double-click the D1_CUSTOMER2 logical table source.
d. Click the General tab, select the Active check box, and click OK.
e. Double-click the CustPartOne logical table source.
f. Click the General tab, deselect the Active check box, and click OK.
g. Double-click the CustPartTwo logical table source.
h. Click the General tab, deselect the Active check box, and click OK.
i. Check your results:

12. Check in changes.
13. Check consistency. Fix any errors or warnings before continuing.
14. Save the repository.
15. Leave the repository open for the next practice.
Module 13: Using Repository Variables
186 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 13-2: Using Dynamic Repository Variables as
Filters
Goal
To create and use dynamic repository variables as filters
Scenario
Rather than creating hard-coded column filters like Year = 1999 in Answers
requests, ABC wants to use variables that always return the current year,
current month, and current day. You create these dynamic repository variables
and then use them in column filters in Oracle BI Answers.
Outcome
New initialization block, Current Periods, and three new dynamic repository
variablesCurrentYear, CurrentMonth, and CurrentDayare created.
Time
1015 minutes
Instructions
1. In this step, you create a new initialization block. This initialization block will initialize three
variables called CurrentYear, CurrentMonth, and CurrentDay. The variables will get
their values from the initialization block SQL according to the schedule you set. In this example,
the system determines the value of the current day by finding the maximum value of the period
key (YYYMMDD) in the D1_ORDERS2 table and then determining the month code and year
that correspond to that value in the D1_CALENDAR2 table.
a. Select Manage > Variables.
b. Select Action > New > Repository > Initialization Block.
c. Name the block CurrentPeriods.
d. Click Edit Data Source.
e. Click the Browse button.
f. Double-click the SUPPLIER CP connection pool object to select it.
Module 13: Using Repository Variables
E Oracle BI Suite Enterprise Edition 10g Bootcamp 187
g. Enter the following SQL in the block to determine the value of the current day by finding the
maximum value of the period key (YYYMMDD):
SELECT YYYYMMDD, MONTHCODE, YEAR FROM SUPPLIER2.D1_CALENDAR2
WHERE YYYYMMDD = (SELECT MAX(PERIODKEY) FROM
SUPPLIER2.D1_ORDERS2)

h. Click OK to close the Repository Variable Init Block Data Source dialog box.
2. Create the variables.
a. Click the Edit Data Target.
b. Create three new variables: CurrentDay, CurrentMonth, CurrentYear. The order is
important. The value that comes back from the first column in the initialization block SQL,
YYYYMMDD, is assigned to the CurrentDay variable. The value of the second column,
MONTHCODE, is assigned to CurrentMonth (the second variable), and the value of the
third column, YEAR, is assigned to CurrentYear (the third variable). If necessary, use the
Up and Down buttons to arrange the variables.

c. Click OK to close the Repository Variable Init Block Variable Target dialog box.
d. Leave the default refresh interval set to every hour. This means that the variables will be
reinitialized every hour.
e. Click Edit Data Source.
Module 13: Using Repository Variables
188 E Oracle BI Suite Enterprise Edition 10g Bootcamp
f. Click the Test button and check the results:

In this example, the results are determined by the data in the SUPPLIER2 database used for
this course, which holds data only through the year 1999.
g. Click Close to close the Results window.
h. Click OK to close the Repository Variable Init Block Data Source dialog box.
i. Click OK to close the Repository Variable Init Block dialog box.
j. Check your work in the Variable Manager:

k. Close the Variable Manager.
l. Check in changes.
m. Save the repository.
3. Test your work.
a. Return to Answers.
b. Reload server metadata.
c. Create the following request:

d. Click the Add Filter button for the Year column. The Create/Edit Filter dialog box opens.
e. Select Add > Variable > Repository.
f. In the Server Variable field, enter CurrentYear to add a filter for the Year column using
the CurrentYear repository variable.

g. Click OK.
Module 13: Using Repository Variables
E Oracle BI Suite Enterprise Edition 10g Bootcamp 189
h. Click Results and ensure that only data for the current year (1999 based on this data set) is
returned.

i. Check the query log. Note that the logical request filters for the variable (you may need to
scroll to the right):

j. Close the log file.
Module 13: Using Repository Variables
190 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Module 14: Modeling Time Series Data
E Oracle BI Suite Enterprise Edition 10g Bootcamp 191
Practice 14-1: Creating Time Series Comparison
Measures
Goal To create Month time comparison measures using the Ago and ToDate
functions
Scenario You use the Oracle BI Ago and ToDate functions to create new measures
and calculations to enable users to compare dollar performance from a month
back and calculate the dollar change, the percentage of dollar change, and the
to-date dollar change. You then add the new measures to the presentation
catalog and test the comparison measures using Answers.
Outcome
In the Presentation layer, Month Ago Dollars, Change Month Ago Dollars,
Percent Change Month Ago Dollars, Month To Date Dollars columns are
added to the SalesFacts table.
New time comparison measures are tested using Oracle BI Answers.
Time
15 minutes
Background
The ability to compare business performance with previous time periods is fundamental to
understanding a business. Yet, as Ralph Kimball states, SQL was not designed to make
straightforward comparisons over time:
The most difficult area of data warehousing is the translation of simple business analyses into
SQL. SQL was not designed with business reports in mind. SQL was really an interim language
designed to allow relational table semantics to be expressed in a convenient and accessible form,
and to enable researchers and early developers to proceed with building the first relational
systems in the mid-1970s. How else can you explain the fact that there is no direct way in SQL
to compare this year to last year? Ralph Kimball
Instructions
1. Return to the ABC repository open in online mode.
2. In the SupplierSales business model, identify the PeriodsDim dimension as a time dimension.
a. In the SupplierSales business model, double-click PeriodsDim.
b. Select the Time Dimension check box.
c. Click OK to close the Dimension dialog box.
Module 14: Modeling Time Series Data
192 E Oracle BI Suite Enterprise Edition 10g Bootcamp
3. Identify level keys as chronological keys.
a. Expand PeriodsDim and double-click the Month level.
b. Click the Keys tab.
c. Select the Chronological Key check box for MonthCode.
d. Click OK to close the dialog box.
4. Create a measure that calculates dollars for the previous month.
a. Right-click SalesFact and select New Object > Logical Column.
b. Name the column Month Ago Dollars.
c. Select the Use existing logical columns as the source check box.
d. Open the Expression Builder.
e. Select Functions > Time Series Functions > Ago.
f. Click Insert to add the Ago function to the Expression Builder.
g. Click <<Measure>> in the expression.
h. Select Logical Tables > Sales Facts and then double-click Dollars to add it to the
expression.
i. Click <<Level>> in the expression.
j. Select Time Dimensions > PeriodsDim and then double-click Month to add it to the
expression.
k. Click <<Number of Periods>> and enter 1. The Ago function calculates the Dollars value
one month before the current month.
l. Click OK to close the Expression Builder.
m. Check your work:

n. Click OK to close the Logical Column dialog box.
o. Drag the Month Ago Dollars logical column to the SalesFacts presentation folder.
5. Create a measure that calculates the difference in dollars between the current month and the
previous month.
a. Right-click SalesFact and select New Object > Logical Column.
b. Name the new logical column Change Month Ago Dollars.
c. Select the Use existing logical columns as the source check box.
d. Open the Expression Builder.
Module 14: Modeling Time Series Data
E Oracle BI Suite Enterprise Edition 10g Bootcamp 193
e. Select Logical Tables > Sales Facts and then double-click Dollars to add it to the
expression.
f. Insert a minus sign.
g. Select Logical Tables > Sales Facts and then double-click Month Ago Dollars.
h. Click OK to close the Expression Builder.
i. Check your work:

j. Click OK to close the Logical Column dialog box.
k. Drag the Change Month Ago Dollars logical column to the SalesFacts presentation folder.
6. Create a measure that calculates the percentage change in dollars between the current month and
the previous month.
a. Right-click SalesFact and select New Object > Logical Column.
b. Name the new logical column Percent Change Month Ago Dollars.
c. Select the Use existing logical columns as the source check box.
d. Open the Expression Builder and create the following expression:

100 * (SupplierSales.SalesFacts.Dollars -
SupplierSales.SalesFacts."Month Ago Dollars") /
"SupplierSales"."SalesFacts"."Month Ago Dollars"

e. Click OK to close the Expression Builder.
Module 14: Modeling Time Series Data
194 E Oracle BI Suite Enterprise Edition 10g Bootcamp
f. Check your work:

g. Click OK to close the Logical Column dialog box.
h. Drag the Percent Change Month Ago Dollars logical column to the SalesFacts presentation
folder.
7. Create a measure that calculates a running sum of dollars over the past year on a monthly basis.
a. Right-click SalesFacts and select New Object > Logical Column.
b. Name the new logical column Year To Date Dollars.
c. Select the Use existing logical columns as the source check box.
d. Open the Expression Builder.
e. Select Functions > Time Series Functions and double-click ToDate to insert the
expression.
f. Click <<Measure>>.
g. Select Logical Tables > Sales Facts and then double-click Dollars.
h. Click <<Level>>.
i. Select Time Dimensions > PeriodsDim and the double-click Year.
j. Click OK to close the Expression Builder.
k. Check your work:

Module 14: Modeling Time Series Data
E Oracle BI Suite Enterprise Edition 10g Bootcamp 195
l. Click OK to close the Logical Column dialog box.
m. Drag the Year To Date Dollars logical column to the SalesFacts presentation folder.
8. Set the sort order column for the Month logical column.
a. Expand the Periods logical table.
b. Double-click Month to open the logical column dialog box.
c. Click the Set button.
d. Select MonthCode and click OK. The Month column is now automatically sorted by
MonthCode whenever it is used in an Answers query. You check this later in this practice.
e. Click OK to close the logical column dialog box.
9. Check in changes.
10. Check consistency. Fix errors or warnings, if any, before you proceed.
11. Close the Consistency Check Manager.
12. Save and the repository.
13. Check your work in Answers.
a. Return to Answers.
b. Reload server metadata.
c. Create the following query and filter:


Note: Press and hold [Ctrl] and add the Year filter or remove Year from the query criteria
after the filter is set.
d. Click Results.

Module 14: Modeling Time Series Data
196 E Oracle BI Suite Enterprise Edition 10g Bootcamp
e. Note that Month is sorted automatically based on the MonthCode sort order column you set
in the repository.
Lesson 15: Localizing Oracle BI Metadata
E Oracle BI Suite Enterprise Edition 10g Bootcamp 197
Practice 15-1: Localizing Repository Metadata
Goal
To localize Oracle BI repository metadata
Scenario
The Externalize Strings repository utility has been run to export Presentation layer
object strings to a table in comma-separated format. The table has been updated to
include translated strings. You import the table, create an initialization block to
populate translation session variables, modify My Account localization preferences,
and check the results in Answers and NQQuery.log.
Time
1520 minutes
Instructions
1. Create an ODBC data source for an Excel spreadsheet with language translations. The
Externalize Strings utility has already been run to export presentation layer object strings to the
spreadsheet. Rows with corresponding translations have been added to the spreadsheet.
a. Select Start > Programs > Administrative Tools > Data Sources (ODBC).
b. Click the System DSN tab.
c. Click Add.
d. Select Microsoft Excel Driver (*.xls) and click Finish.
e. Enter TRANSLATIONS as the data source name.
f. Click Select Workbook.
g. Navigate to D:\Labs, select the TRANSLATIONS spreadsheet, and click OK.
h. Click OK.
i. Click OK to close the ODBC Data Source Administrator.
2. Import the TRANSLATIONS table into the Physical layer.
a. Return to the ABC repository, which should still be open in online mode.
b. Select File > Import > from Database.
c. In the Select ODBC Data Source dialog box, ensure that the ODBC 3.5 data source
connection type is selected.
d. Select the TRANSLATIONS data source and click OK.
e. Ensure that Tables is selected, and click Import.
f. When import completes, click Close.
g. Check in changes.
h. Save the repository.
i. Update row counts for the TRANLSATIONS table. You should see 40 rows. 20 rows are the
English objects and 20 rows are the French translations.
j. View data for the TRANSLATIONS table. The table contains three required columns.
LANG_ID identifies the language for each row. In this example, there are rows for English
Lesson 15: Localizing Oracle BI Metadata
198 E Oracle BI Suite Enterprise Edition 10g Bootcamp
(en) and French (fr). MSG_NUM (message number) identifies the metadata display variable to
translate. Each message number corresponds to a metadata object display variable in the
repository. MSG_TEXT contains the language-specific text for each row. Note that there is a
row for English and another for French.
k. Check in changes.
l. Save the repository.
3. Create the external metadata strings initialization block. This initialization block populates the
MSG_NUM and MSG_TEXT variables with values from the TRANSLATIONS table, matching the
WEBLANGUAGE session variable to the LANG_ID stored in the table.
a. Select Manage > Variables.
b. Select Action > New > Session > Initialization Block.
c. Name the initialization block TRANSLATIONS.
d. Click Edit Data Source.
e. In the Default Initialization String field, enter the following SELECT statement:
SELECT MSG_NUM, MSG_TEXT
FROM TRANSLATIONS
WHERE VALUEOF(NQ_SESSION.WEBLANGUAGE) = LANG_ID
f. Click Browse to select the connection pool.
g. In the left pane, expand TRANSLATIONS and double-click Connection Pool to select it.
TRANSLATIONS.Connection Pool is displayed in the Connection Pool field in the
Session Variable Initialization Block Data Source dialog box.
h. Click Test. You should receive an Empty result set message.
i. Why are no records returned?




j. Click OK to close the message.
k. Click Close.
l. Click OK to close the Session Variable Initialization Block Data Source dialog box.
m. Click Edit Data Target.
n. Select the Row-wise Initialization check box to enable it.
o. Click OK.
p. Click OK to close the Session Variable Initialization Block dialog box.
q. Select Action > Close to close the Variable Manager.
r. Check in changes.
s. Save the repository.
4. Externalize the metadata names and descriptions for the SupplierSales presentation catalog. This
enables repository object names and descriptions to be read from the MSG_NUM and MSG_TEXT
session variables that are populated by the initialization block.
a. In the Presentation layer, right-click the SupplierSales presentation catalog and select
Externalize Display Names.

Lesson 15: Localizing Oracle BI Metadata
E Oracle BI Suite Enterprise Edition 10g Bootcamp 199
Note: Externalize Display Names may already have a gray check mark next to it. This is an
effect of the scripted installation process, and does not affect the application. Once you have
chosen Externalize Display Names, ensure that the check mark is black.
b. Right-click the SupplierSales Presentation folder and select Externalize Descriptions.
Note: Externalize Descriptions may already have a gray check mark next to it. This is an
effect of the scripted installation process, and does not affect the application. Once you have
chosen Externalize Descriptions, ensure that the check mark is black.
c. Check in the changes.
d. Check consistency.
e. Save the repository.
5. Log in to Oracle BI Presentation Services as Administrator in the English language and
check the effect of your configuration in Oracle BI Answers.
a. Select Start > Programs > Oracle Business Intelligence > Presentation Services.
b. On the Login screen, enter Administrator with password Administrator.
c. Ensure that English is selected in the Select a Language field.
d. Click Log In.
e. Click Answers.
f. Note the description for the SupplierSales subject area:
This is the description for SupplierSales.
g. Click SupplierSales.
h. Place the cursor over the Customers table to display the description:
Customers: This is the description for Customers.
i. Click Settings > My Account at the top of the screen.
j. Set Locale (location) to franais France. The User Interface Language field automatically
updates to franais.
k. Click Finished.
l. Click the Refresh button in the Web Browser.
Note: You may be asked to log back in to the application. Click Log In to reenter the
application.
m. Note that the SupplierSales object names and descriptions now display the French
translations.
n. Select Parametres > Mon compte at the top of the screen and change your account
information back to English United States.
o. Click Fin at the upper right corner.
p. Refresh the browser to check the change.
q. Navigate to D:\OracleBI\server\log and open the NQQuery.log file.
Lesson 15: Localizing Oracle BI Metadata
200 E Oracle BI Suite Enterprise Edition 10g Bootcamp
r. Scroll to the bottom of the file and ensure that the TRANSLATIONS initialization block
issued a SQL query:

s. Close NQQuery.log.
t. Leave Answers and the Administration Tool open for the next practice.
Lesson 15: Localizing Oracle BI Metadata
E Oracle BI Suite Enterprise Edition 10g Bootcamp 201
Solutions 14-1: Localizing Repository Metadata
Answers
3.i. Why are no records returned?
No records are returned because we are comparing the transformed LANG_ID to a session
variable. Without logging in to Oracle BI Presentation Services there is no session variable
for comparison.
Lesson 15: Localizing Oracle BI Metadata
202 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Module 16: Setting an Implicit Fact Column
E Oracle BI Suite Enterprise Edition 10g Bootcamp 203
Practice 16-1: Setting an Implicit Fact Column
Goals
To set an implicit fact column for a presentation catalog
Scenario
ABC tracks both product sales and product return information. ABC wants to ensure
that dimension-only queries with columns from more than one dimension return the
expected results. To ensure the expected results, you test different implicit fact column
settings for the SupplierSales presentation catalog.
Time
1015 minutes
Instructions
1. If the Administration Tool is still open, close the Administration Tool.
2. Stop the Oracle BI Server service.
3. Copy the repository for this practice to the appropriate directory.
a. Navigate to d:\labs\BI_BLD_Repositories_Solutions.
b. Copy the ABC_After15_LocalizingData.rpd file.
c. Paste the file in D:\OracleBI\server\Repository.
d. Delete the existing ABC.rpd file.
e. Rename the file ABC_After15_LocalizingData.rpd to ABC.rpd.
4. Start the Oracle BI Server service.
5. Start the Administration Tool and open the ABC repository in online mode as Administrator with
Administrator as
the password.
6. Set an implicit fact column for the SupplierSales presentation catalog to point to a measure in the
Returns fact table.
a. In the Presentation layer, right-click SupplierSales and select Properties.
b. Click the General tab.
c. In the Implicit Fact Column section, click Set.
d. Expand Returns, select the # of Returns column and click OK.
e. Click OK to close the Presentation Catalog dialog box.
f. Check in changes.
g. Check global consistency.
h. Save the repository.
7. Test the Returns implicit fact column.
Module 16: Setting an Implicit Fact Column
204 E Oracle BI Suite Enterprise Edition 10g Bootcamp
a. If necessary, start Answers and log in as Administrator with Administrator
password.
b. Select the SupplierSales subject area.
c. Reload server metadata.
d. Create the following dimension-only query: Customers.Customer, Products.Generic with
Customer filter set to Rib Pit.
e. Click Results and verify that 9 rows are returned.
f. Select Settings > Administration > Manage Sessions.
g. View the log for the request.
h. Verify that the RETURNS implicit fact column and D1_RETURNS fact table are included in
the query, although the column is not visible in the query results in Answers. (The screenshot
shows only partial results):

i. Close the Session Monitor.
j. Click Finished in the Session Management window.
k. Click Close Window in the Oracle BI Presentation Services Administration window.
l. Log out of Answers.
8. Set an implicit fact column for the SupplierSales presentation catalog to point to a measure in the
SalesFacts fact table.
a. Return to the ABC repository, which should still be open in online mode.
b. In the Presentation layer, right-click SupplierSales and select Properties.
c. In the Implicit Fact Column section, click Clear.
d. In the Implicit Fact Column section, click Set.
e. Expand SalesFacts, select the Dollars column and click OK.
f. Click OK to close the Presentation Catalog dialog box.
g. Check in changes.
h. Check global consistency.
i. Save the repository.
9. Test the Dollars implicit fact column.
a. Log in to Answers as Administrator with Administrator password.
b. Select the SupplierSales subject area.
c. Reload server metadata.
d. Create the following query: Customers.Customer, Products.Generic with Customer filter
set to Rib Pit.
e. Click Results and ensure that 139 rows are returned. Hint: Click the All Pages button to see
the total number of rows returned.
Module 16: Setting an Implicit Fact Column
E Oracle BI Suite Enterprise Edition 10g Bootcamp 205
f. Select Settings > Administration > Manage Sessions.
g. View the log for the request.
h. Verify that the Dollars implicit fact column (ACTLEXTND) and the D1_ORDERS2 fact table
are included in the query, although the column is not visible in the query results in Answers.

i. Close the Session Monitor.
j. Click Finished in the Session Management window.
k. Click Close Window in the Oracle BI Presentation Services Administration window.
l. Log out of Answers.
10. Clear the implicit fact column for the SupplierSales presentation catalog.
a. Return to the ABC repository, which should still be open in online mode.
b. In the Presentation layer, right-click SupplierSales and select Properties.
c. In the Implicit Fact Column section, click Clear.
d. Click OK to close the Presentation Catalog dialog box.
e. Check in changes.
f. Check global consistency.
g. Save the repository.
11. Test with no implicit fact column defined.
a. Log in to Answers as Administrator with Administrator password.
b. Select the SupplierSales subject area.
c. Reload server metadata.
d. Create the following query: Customers.Customer, Products.Generic with Customer filter
set to Rib Pit.
e. Click Results and ensure that 9 rows are returned.
f. Select Settings > Administration > Manage Sessions.
g. View the log for the request.

h. Verify that no implicit fact column is included in the SELECT statement.
i. Why is the D1_RETURNS table included in the query?

Module 16: Setting an Implicit Fact Column
206 E Oracle BI Suite Enterprise Edition 10g Bootcamp



j. Close the Session Monitor.
k. Click Finished in the Session Management window.
l. Click Close Window in the Oracle BI Presentation Services Administration window.
m. Log out of Answers.
Module 16: Setting an Implicit Fact Column
E Oracle BI Suite Enterprise Edition 10g Bootcamp 207
Solutions 16-1: Setting an Implicit Fact Column
Answers
11.i. Why is the D1_RETURNS table included in the query?
No implicit fact column is set for the SupplierSales subject area, so for a dimension-only
query the Oracle BI Server returns data based on the most economical path, which, in this
case, is through the fact table with the least amount of rows.
Module 16: Setting an Implicit Fact Column
208 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 209
Practice 17-1: Creating Users and Groups
Goal
To set up user access so that Oracle BI Server can authenticate users and
assign them appropriate permissions
Scenario
You can maintain a list of users, their passwords, and groups in the Oracle BI
repository. When using Oracle BI security, which is the default, Oracle BI
Server authenticates users against this list. In this practice, you create new
users and groups using the Oracle BI Administration Tool. After you have
created these users, you assign them to the appropriate group.
Time
1015 minutes

Instructions

1. Create the user Sara Wright.
a. Return to the ABC repository, which should still be open in online mode.
b. Select Manage > Security to open the Security Manager.
c. Select Users in the left pane.
d. Right-click in the white space of the right pane and select New User.
e. Create the user with the following information:
User name SWRIGHT
Full Name Sara Wright
Password <Blank>
Logging level 2
Note that setting the logging level to 2 ensures that query activity by this user is recorded in
the query log.
f. Click OK to close the User window.
2. Repeat this process and create the following users:
User Name Full Name Logging Level
PSMITH Paul Smith 0
RMIND Rob Mind 0
JCRAFT Jen Craft 0
MWEST Mary West 2
JMEYER Jacob Meyer 2
Module 17: Security
210 E Oracle BI Suite Enterprise Edition 10g Bootcamp
3. In the Security Manager window, ensure that your results resemble the following:

4. Create the SalesManagers group and add Sara Wright and Paul Smith to this group. A group is a
set of permissions. When a user belongs to a group, the user inherits the permissions of the
group. Groups can belong to other groups and, therefore, inherit the permissions of other groups.
a. In the left pane of the Security Manager, select Groups.
b. Right-click in the right pane and select New Security Group.
c. Enter SalesManagers in the Name field and click the Add button.
d. Press and hold [Ctrl] and select SWRIGHT and PSMITH.
e. Click OK. SWRIGHT and PSMITH are now part of the SalesManagers group.
f. Click OK to close the Group dialog box.
5. Repeat this process and create the following groups and assign users to the groups:
Group Name Add User
SalesUsers RMIND, JCRAFT
SalesHR JMEYER
6. Assign MWEST to the Administrators group. When a repository is created, an Administrator user
and an Administrators group are automatically created. The Administrator user automatically
belongs to the Administrators group. The Administrator user cannot be deleted or removed from
the Administrators group. Additional users can be added to the Administrators group. All
members of the Administrators group can fully administer a repository.
a. Double-click Administrators.
b. Add MWEST.
c. Click OK to close the Group dialog box.
d. At this point, the group and the user structure resemble the following:
SalesManagers Group SalesUsers Group SalesHR Group Administrators Group
SWRIGHT RMIND JMEYER
Administrator
PSMITH JCRAFT MWEST
7. Select Action > Close to close Security Manager.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 211
8. In this step, you set repository object permissions for a user, Jacob Meyer. Jacob Meyer should
not be given access to the SupplierSales presentation catalog. Use the Administration Tool to
explicitly prohibit Meyers access to this object.
a. In the Presentation layer, double-click SupplierSales.
b. Click the General tab.
c. Click the Permissions button.
d. Note that by default Everyone has read permission for this object.
e. Click Show all users/groups.
f. Select the JMEYER check box twice. The red X indicates that Meyer does not have access
to the SupplierSales presentation catalog.

g. Do the remaining users have read access?


h. Why or why not?


i. Click OK to close the Permissions dialog box.
j. Click OK to close the Presentation Catalog dialog box.
9. Check in changes.
10. Check consistency. Fix any errors or warnings before you proceed.
11. Save the repository.
12. With your changes now saved, log in as the new users and examine the impact of the permissions
that you set.
a. Return to Answers, log out, and then log back in as MWEST; no password is needed.
Module 17: Security
212 E Oracle BI Suite Enterprise Edition 10g Bootcamp
b. Click the Dashboards link and make sure you can see Welcome, Mary West! to ensure that
you are logged in as Mary.
c. Click the Answers link.
d. What subject areas are available to Mary?




e. Click the SupplierSales link and note that Mary has access to the same objects as the
Administrator user: Customers, Periods, Products, Facts, SalesFacts, and so on.
f. Click Log Out in the upper-right corner.
g. Click the here link to log back in.
h. Log in as JMEYER; no password is needed.
i. Does the SupplierSales subject area display?


j. Why is this?




k. Log out of Oracle BI Presentation Services.
13. In this step, you explore how to change the default permission setting for the Everyone user in
the Oracle BI Server NQSConfig.ini file.
a. Navigate to D:\OracleBI\server\Config and open the NQSConfig.ini file.
b. Scroll to the SECURITY section.
c. Note that DEFAULT_PRIVILEGES is set to READ.

d. Close the NQSConfig.ini file without making any changes. This default permission
could be set to READ or NONE. When the default is set to NONE and a new object is created,
the permission for Everyone looks like this:

Oracle recommends that the default permission be set to READ, so you retain
DEFAULT_PRIVILEGES set to READ. If you change the default for
DEFAULT_PRIVILEGES, it only impacts new objects after the NQSConfig.ini file is
saved and Oracle BI Server is restarted. The status of permission for Everyone in the existing
objects is not affected.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 213
Solutions 17-1: Creating Users and Groups
Answers
8.g. Do the remaining users have read access?
Yes
8.h. Why or why not?
The check box for Everyone is selected. By default, all users and groups are members of
the Everyone group. Because the Everyone group check box is selected, all members
inherit this permission, unless the member is explicitly denied access.
12.d. What subject areas are available to Mary?
SupplierSales, SupplierSalesDM, Inventory
12.i. Does the SupplierSales subject area display?
No
12.j. Why is this?
The SupplierSales subject area does not appear because you explicitly denied read access
to JMEYER.

Module 17: Security
214 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 17-2: Setting Permissions for Users and Groups
Goal
To set up security access so that Oracle BI Server can authenticate groups
and assign appropriate permissions to group members
Scenario
You first modify explicit permissions for Jacob Meyer. You then modify the
permission of the group that Jacob Meyer is a member of and examine the
effect this has on Jacob Meyer. Lastly, you add Jacob Meyer to another group
and examine how this affects his access.
Time
1015 minutes
Instructions
1. In this step, you modify user and group permissions for the SupplierSales presentation catalog.
a. Return to the ABC repository open in online mode, double-click the SupplierSales
presentation catalog, and click the Permissions button.
b. Select Show all users/groups.
c. Define permissions so that JMEYER is deselected and the SalesHR group is explicitly denied
access to the SupplierSales presentation catalog. Your results should resemble the following:

d. Now that you have removed JMEYERs explicit access restrictions from the SupplierSales
presentation catalog, is he able to execute query requests against it in Answers? Explain.






Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 215
e. Select the SalesManagers group check box to explicitly give it Read permission for the
SupplierSales presentation catalog.

f. Click OK to close the Permissions dialog box.
g. Click OK to close the Presentation Catalog dialog box.
2. Add the SalesHR group to the SalesManagers group.
a. Open the Security Manager.
b. Select Groups and double-click SalesManagers.
c. Click the Add button.
d. Select the SalesHR group and click OK. The SalesHR group now belongs to the
SalesManagers group.
e. Click OK to close the Group dialog box. At this point, the group and user structure is as
follows:
SalesManagers Group
SWRIGHT

PSMITH
SalesHR Group
JMEYER

SalesUsers Group
RMIND
JCRAFT

Administrators Group
Administrator
MWEST

f. Close the Security Manager.
3. Check in changes. For the purposes of this practice it is not necessary to run a consistency check.
4. Save the repository.
5. With the changes you have made so far, will JMEYER be able to access the SupplierSales
presentation catalog?

6. Check your answer.
a. Log in to Oracle BI as Administrator with password Administrator.
b. Click Reload Server Metadata. Only users who are assigned this privilege have the ability
to reload server metadata. This link is not visible to other users.
c. Click Log Out.
d. Log back in as JMEYER with no password.
Module 17: Security
216 E Oracle BI Suite Enterprise Edition 10g Bootcamp
e. Does JMEYER have access to the SupplierSales subject area now?


f. Why or why not?




g. Log out of Oracle BI.
7. Return to the Administration Tool and modify the permissions so that JMEYER also belongs to
the SalesManagers group.
a. Open the Security Manager and double-click the SalesManagers group.
b. Click the Add button.
c. Select JMEYER and click OK. Meyer now belongs to both SalesHR and SalesManagers
groups. The group and user structure resembles the following:
SalesManagers Group
SWRIGHT

PSMITH
JMEYER
SalesHR Group
JMEYER

SalesUsers Group
RMIND
JCRAFT

Administrators Group
Administrator
MWEST

d. Click OK to close the Group dialog box.
e. Close the Security Manager.
8. Check in changes and save the repository.
9. Log in to Oracle BI as Administrator and reload the server metadata.
10. Check Meyers access to the SupplierSales subject area.
a. Log out and log back in as JMEYER.
b. Does JMEYER have access to the SupplierSales subject area now?


c. Why or why not?




11. Log out of Oracle BI.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 217
Solutions 17-2: Setting Permissions for Users and
Groups
Answers
1.d. Now that you have removed JMEYERs explicit access restrictions from the SupplierSales
presentation catalog, is he able to execute query requests against it in Answers? Explain.
No, JMEYER is a member of the SalesHR group, which was explicitly denied access.
5. With the changes you have made so far, will JMEYER be able to access the SupplierSales
data?
No
6.e. Does JMEYER have access to the SupplierSales subject area now?
No
6.f. Why or why not?
JMEYER is a member of the SalesHR group, which was explicitly denied access. If a user is
a direct member of a group, the permissions granted or denied to that group take
precedence over permissions granted or denied through other groups.
10.b. Does JMEYER have access to the SupplierSales subject area now?
Yes
10.c. Why or why not?
JMEYER is a member of the SalesHR and SalesManagers groups. Because these groups
have conflicting permissions, the user is granted the least restrictive permissions of the two
groups.
Module 17: Security
218 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 17-3: Authenticating Users Using an External
Database
Goal
To authenticate users using an external database
Scenario
You can choose to maintain lists of users and their passwords in an external
database rather than in the repository. An external database table consisting
of user login information has been provided so that you can import this
information into the repository and use it to authenticate users during login.
The table contains a list of users, their logins and passwords, and the group
they belong to. Optionally, the table can also contain the logging level for each
user, Web interface information, and the names of specific database catalogs
or schemas to use for each user when querying data. After this information
has successfully been imported, you need to create an initialization block that
retrieves this data.
Outcome
External database of login information used for authenticating users
Time
1520 minutes
Instructions
1. Attempt to log in to Oracle BI as AJOHNSON, with password aj. Click No if prompted to
remember password. You receive a message that an invalid username or password was entered.
At the end of this practice, you should be able to log in as AJOHNSON.
2. Return to the ABC repository open in online mode.
3. Import the SECURITYTABLE table into Physical layer.
a. Select File > Import > from Database.
b. Select the OCI 10g/11g connection type.
c. In the TNS name field, enter ORCL.
d. In the User name field, enter SUPPLIER2.
e. In the Password field, enter SUPPLIER2.
f. Click OK. The Import dialog box opens. This may take a few moments.
g. Expand the SUPPLIER2 schema and click SECURITYTABLE.
h. Click Import.
i. When import completes, close the Import dialog box.
j. Ensure that SECURITYTABLE is added to SUPPLIER2 in the Physical layer.
k. Check in changes.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 219
l. Right-click SECURITYTABLE and select View Data to see the data stored in the table:

Note that each user listed in this table is a member of the SalesRep group, except for Alan
Ziff, who belongs to the Sales Admin group, and User Two, who belongs to the users2 group.
Using a table of users in an external database allows you to maintain a single list of users for
multiple repositories. Although the groups must be entered into the Administration Tool
manually, it is easier to set up 100 groups than it is to set up 50,000 separate users.
m. Close the View Data window.
4. Create an initialization block. This initialization block will populate session variables with data
values returned by querying the database each time a user logs in.
a. Select Manage > Variables.
b. In the left pane, select Session > Initialization Blocks.
c. In the right pane, right-click and select New Initialization Block.
d. In the Name field, enter Security.
e. Click Edit Data Source.
f. In the Default Initialization string field, create an initialization string that populates group,
username, password, and log level variables. You define the variables in a later step. The
values returned by the database are assigned to the variables you define. These variables are
used to authenticate a user during login. Enter the following into the Initialization string
field:

select GRP, SALESREP, USERNAME, 2 from SECURITYTABLE where
USERNAME = :USER and PWD = :PASSWORD

The SQL contains two constraints in the WHERE clause. :USER (note the colon) passes the
users login ID and :PASSWORD (note the colon) passes the password the user enters. The
query returns data only if the login ID and password match values found in the table in the
FROM clause, SECURITYTABLE in this example. If this query returns data, the user is
Module 17: Security
220 E Oracle BI Suite Enterprise Edition 10g Bootcamp
authenticated and the session variables are populated.

g. Click Browse.
h. Double-click the SUPPLIER CP connection pool to select it.
i. Click OK to close the Session Variable Initialization Block Data Source dialog box.
j. Ensure that your initialization block looks like this:

5. Create the variables. Because you requested data for four variables in the string, you need to
define each variable. The variables are GROUP, DISPLAYNAME, USER, and LOGLEVEL.
a. Click Edit Data Target.
b. Click New.
c. Enter GROUP in the Name field.
d. Click OK.
e. Click Yes to acknowledge that this variable has a special purpose.
f. Repeat the process for the remaining three variables. The order of the variables is important.
You must list variables in the same order as the columns in the SQL statement. In this
example, the value in the GRP column is assigned to the GROUP variable, the value in the
SALESREP column is assigned to the DISPLAYNAME variable, USERNAME is assigned to
the USER variable, and the LOGLEVEL variable is given the value of 2.
g. Check your work:

h. Click OK to close the Session Variable Initialization Block Variable Target dialog box.
i. Click OK to close the Session Variable Initialization Block dialog box.
j. Close the Security Manager.
6. Check in changes.
7. Save the repository.
8. Check your work.
a. Return to Oracle BI and log in as AJOHNSON with password aj.
b. Click the Dashboards link.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 221
c. Ensure that the greeting Welcome, ANN JOHNSON! appears to the left of the Dashboards
link. This confirms that the external database table was used to authenticate a user during
login.
d. Log out of Oracle BI.
Module 17: Security
222 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 17-4: Authenticating Users with Database
Authentication
Goals
To authenticate users using database authentication
Scenario
As an additional option, Oracle BI Server can authenticate users through
database login names. Oracle BI Server trusts a user with Read permission on
a specified database. To authenticate users with this method, you have to
maintain a list of users in the repository. So for large deployments, this is not a
good option.
Time
1520 minutes
Instructions
1. Return to the ABC repository open in online mode.
2. Create a new database in the Physical layer.
a. Right-click inside the Physical layer and select New Database. The Database dialog box
opens.
b. Name the database Authenticate.
c. Set the Database to Oracle 10gR1.
d. Click the Connection Pools tab.
e. Click Add.
f. Name the Connection Pool Authenticate CP.
g. Ensure that the call interface is set to Default (OCI 10g/11g).
h. Enter :USER in the User name field.
i. Enter :PASSWORD in the Password field.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 223
j. Enter ORCL in the Data Source Name field.

k. Click OK to close the Connection Pool dialog box.
l. Enter :PASSWORD to confirm the password and click OK.
m. Click OK to close the Database dialog box.
n. Ensure that the Authenticate database is added to the Physical layer.
3. Add a database user to the repository.
a. Select Manage > Security.
b. Click Users in the left pane.
c. Right-click in the right pane and select New User.
d. Enter SH in the User name field. This is a user in the ORCL database.
e. Leave the Password field blank.
f. Click OK to close the User dialog box.
g. Close the Security Manager.
4. Check in changes.
5. Save the repository. The changes do not require a consistency check.
Module 17: Security
224 E Oracle BI Suite Enterprise Edition 10g Bootcamp
6. Close the repository.
7. Unlock the user in the ORCL database and enter a password.
a. Open Internet Explorer.
b. In the Address field, enter http://<machine name>:1158/em to open Enterprise
Manager.
c. Log in as SUPPLIER2 with password SUPPLIER2.
d. Click the Administration link.
e. Scroll down and click the Users link (on the left, under Users and Privileges).
f. Click the SH link. The View User: SH window opens.
g. Click Edit.
h. In the Enter Password field, enter SH.
i. In the Confirm Password field, enter SH.
j. For Status, select the Unlocked check box.
k. Click Apply.
l. You should receive an update message that user SH has been modified successfully.

m. Log out of Oracle Enterprise Manager.
8. Edit the security section of the NQSConfig.ini file.
a. Navigate to D:\OracleBI\server\Config.
b. Open NQSConfig.ini.
c. Scroll to the SECURITY section.
d. Uncomment the second authentication option, AUTHENTICATION_TYPE = DATABASE,
by deleting the preceding # signs.
e. Where it says some_data_base, enter Authenticate, the name of the database you
created in the Physical layer.

f. Save and close the file.
9. Test your work.
a. Restart the Oracle BI Server service to apply changes to NQSConfig.ini.
b. Ensure that you can log in to Oracle BI as user SH with password SH.
c. Click the Dashboards link and ensure that there is a Welcome, SH! message.
d. Log out of Oracle BI.
10. Reset the security defaults in NQSConfig.ini.
a. Stop the Oracle BI Server service.
b. Navigate to D:\OracleBI\Server\Config.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 225
c. Open NQSConfig.ini.
d. Scroll to the SECURITY section.
e. Comment out the second authentication option, AUTHENTICATION_TYPE = DATABASE,
by adding preceding # signs.
f. Change DATABASE from Authenticate to some_data_base.

g. Save and close the file. Note that external database table authentication (covered in the
previous practice) can coexist with database authentication (covered in this practice).
External database authentication precedes database authentication. If the external database
table authentication succeeds, then the server does not perform database authentication. If
external database table authentication fails, then the server performs database authentication.
Module 17: Security
226 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 17-5: Setting Query Limits and Timing
Restrictions
Goals
To disallow queries that may consume too much of the system resources by
setting query limits
Scenario
You want to prevent queries from consuming too many resources by limiting
how long a query can run and how many rows a query can retrieve. You also
want to regulate when individual users can query databases to prevent users
from querying when system resources are tied up with batch reporting, table
updates, or other production tasks.
Outcome
You have set the maximum rows of any query to five rows, the maximum time
of any query to 1 minute, and restricted access to a database on Sunday from
12:00 AM to 7:00 AM.
Time
1015 minutes
Instructions
1. Start the Oracle BI Server service and open the ABC repository in online mode. Log in as
Administrator with password Administrator.
2. Disallow queries that may consume too many system resources by setting query limits for the
SalesManagers group.
a. Open the Security Manager.
b. Double-click the SalesManagers group.
c. Click the Permissions button.
d. Click the Query Limits tab.
e. Locate the ORCL database and change its Max Rows value to 5. This specifies the
maximum number of rows each query can retrieve from the ORCL database for members of
this SalesManagers group.
f. In the Status Max Rows column, select Enable from the drop-down list.
g. In the Max Time (Minutes) column, change the value to 1. This specifies the maximum time
a query can run on the ORCL database.
h. In the Status Max Time column, select Enable from the drop-down list.
3. Restrict the time period for which users can access specified repository resources from midnight
Sunday to 7:00 AM Sunday:
a. Click the button in the Restrict column of the ORCL database.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 227
b. Highlight the blocks from Sunday at midnight to 7 AM Sunday. Hint: With the first block
selected, press [Shift] and select the 7 AM block, or click the first box and drag to the 7 AM
block.
c. Click the Disallow button.

If a time period is not highlighted, the access rights remain unchanged. If access is allowed or
disallowed explicitly to one or more groups, the user is granted the least restrictive access for
the time periods that are defined.
d. Click OK to close the Restrictions dialog box.
e. Click OK to close the User/Group Permissions dialog box.
f. Click OK to close the Group dialog box.
g. Close Security Manager.
h. Check in changes.
i. Save the repository.
4. Log in to Oracle BI as Administrator and register your changes on the server by reloading
the server metadata.
5. Ensure that the changes you made to the maximum number of rows allowed per query work
correctly.
a. Log in to Oracle BI as JMEYER with no password. Recall that JMEYER is a member of the
SalesManagers group.
b. If necessary, click the Answers link.
c. Click the SupplierSales subject area.
d. Select Customers.Customer, SalesFacts.Dollars, and click Results.
e. Did the results of the query display?


Module 17: Security
228 E Oracle BI Suite Enterprise Edition 10g Bootcamp
f. Expand Error Details to view message. What does the error message state?




g. Click the Criteria tab.
h. Set the filter Customer is in top 5 for the Customer column and click Results.

i. Did the results display?


j. Why is this?


k. Log out of Oracle BI.
6. Return to the Administration Tool and deactivate the query restriction you just created.
a. Open the Security Manager.
b. Double-click the SalesManagers group.
c. Click the Permissions button.
d. Click the Query Limits tab.
e. In the ORCL row, select Ignore for both Status Max Rows and Status Max Time columns.
f. Click OK.
g. Close all dialog boxes and the Security Manager.
7. Check in changes and save the repository.
8. Test your results.
a. Log in to Oracle BI as JMEYER with no password.
b. Click the Answers link.
c. Click the SupplierSales subject area.
d. Select Customers.Customer, SalesFacts.Dollars, and click Results.
e. What are the results now and why are they so?




9. Log out of Oracle BI.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 229
Solutions 17-5: Setting Query Limits and Timing
Restrictions
Answers
5.e. Did the results of the query display?
No
5.f. Expand Error Details to view message. What does the error message state?
A general error has occurred. The user request exceeded the maximum query governing
rows from the database.
5.i. Did the results display?
Yes
5.j. Why is this?
Because the query returned only five rows, which do not exceed the maximum query
restricting rows from the database.
8.e. What are the results now and why are they so?
The customer rows are returned in the query because there is no longer a restriction on the
number of rows that can be returned from the ORCL database.

Module 17: Security
230 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 17-6: Setting Filters to Personalize Information
Goals
To set up filters to personalize the information a user gets when the user
enters a query
Scenario
ABC decided that its customers would value the ability to analyze their own
purchase records using Oracle BI. However, ABC wants each customer to be
able to analyze only his or her own information. In this practice, you set a filter
so that the management of the Rib Pit restaurant can analyze its purchases
from ABC. ABC also wants to set up a filter so that members of the
SalesUsers group see only the data that pertains to them.
Outcome
The management of the Rib Pit restaurant is able to analyze its own purchase
records using Oracle BI. Members of the SalesUsers group see only data that
pertains to them.
Time
1015 minutes
Instructions
1. Return to the ABC repository open in online mode.
2. Create a new user and set a filter.
a. Open the Security Manager and create a new user Rib Pit with no password, and with
logging level set to 2.
b. Click the Permissions button.
c. Click the Filters tab.
d. Click Add.
e. In the left pane, expand SupplierSales and double-click the Customers presentation folder
to add it to the Filters tab.
f. Click the ellipsis button to open the Expression Builder. You may need to scroll to the right.
g. Set the following filter: "SupplierSales"."Customers"."Customer" = 'Rib Pit'
h. Click OK and the filter is added to the Filters tab.

i. Click OK to close the User/Group Permissions dialog box.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 231
j. Click OK to close the User dialog box.
k. Close the Security Manager.
l. Check in changes.
m. Save the repository.
3. Test your work.
a. Log in to Oracle BI as Rib Pit with no password.
b. Click Supplier Sales.
c. Create the following query:

d. Click Results.

e. Navigate to D:\OracleBI\server\log and open NQQuery.log (Settings >
Administration is not accessible by this user). Scroll to the bottom of the file and then back
up to find the entry for the Rib Pit user. Note that the filter is applied in the WHERE
clause.

f. Close the log file.
g. Run another query:



Module 17: Security
232 E Oracle BI Suite Enterprise Edition 10g Bootcamp
h. Check the query log. Note that no filter is applied because there are no references to any
attributes in the Customers folder.

i. Close the log file.
4. Set a filter on a fact folder.
a. Open the Security Manager.
b. Double-click the Rib Pit user to open the User dialog box.
c. Click the Permissions button.
d. Click the Filters tab.
e. Click Add.
f. In the left pane, expand SupplierSales and double-click the -SalesFacts presentation folder
to add it to the Filters tab.
g. Click the ellipsis button to open the Expression Builder.
h. Set the following filter: "SupplierSales"."Customers"."Customer" = 'Rib Pit'
i. Click OK. The Filters tab for Rib Pit now contains two filters:

j. Click OK to close the User/Group Permissions dialog box.
k. Click OK to close the User dialog box.
l. Close the Security Manager.
m. Check in changes and save the repository.
5. Test your work.
a. Log out of Oracle BI and log back in as Rib Pit with no password.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 233
b. Run the following query:



c. Check the query log. Note that this time the Name = Rib Pit filter is applied to the
results. Only the sales facts data that applies to Rib Pit is returned.

d. Close the log file.
6. Set up a filter using a variable to filter data for the SalesUsers group.
a. Open the Security Manager.
b. Create a new SalesRep group. Recall that this is the group in SECURITYTABLE.
c. Click the Permissions button.
d. Click the Filters tab.
e. Click Add.
f. In the left pane, expand SupplierSales and double-click the Customers presentation folder
to add it to the Filters tab.
g. Click the ellipsis button to open the Expression Builder.
h. Set the following filter:
"SupplierSales"."Customers"."Sales Rep" =
VALUEOF(NQ_SESSION.DISPLAYNAME)
You are filtering data using the DISPLAYNAME session variable. You can use
DISPLAYNAME because it contains the same characters that appear in the Sales Rep logical
column. Add the Sales Rep logical column to the filter first using the Logical Tables folder,
then scroll down to the Session Variables folder and double-click the DISPLAYNAME
session variable to paste it into the filter as an argument in the VALUEOF() function.

Module 17: Security
234 E Oracle BI Suite Enterprise Edition 10g Bootcamp
i. Click OK to close the Expression Builder. The filter is added to the Filters tab.


j. Click OK to close the User/Group Permissions dialog box.
k. Click OK to close the Group dialog box.
l. Close the Security Manager.
m. Check in changes and save the repository.
7. Test your work.
a. Log in to Oracle BI as TBELL with password tb.
b. Click the Dashboards link and ensure that there is a Welcome, Tracie Bell message.
c. Create the following request:



d. Click Results. Note that the results are automatically personalized for Tracie Bell.


e. Check the query log. Recall that you set the system session variable LOGLEVEL to 2 when
you created the initialization block SQL, so the query is logged. Note that the WHERE clause
filters for SALESREP = TRACIE BELL.
Module 17: Security
E Oracle BI Suite Enterprise Edition 10g Bootcamp 235


f. Close the log file.
g. Log out of Oracle BI.

Module 17: Security
236 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Module 18: Cache Management
E Oracle BI Suite Enterprise Edition 10g Bootcamp 237
Practice 18-1: Inspecting Cache Files
Goals
To create a query request and inspect cache entries using Cache Manager
Scenario
You create a request in Answers and ensure that a cache entry was created in
the Cache Manager and that a cache file was created. You create the same
request again and ensure that the results were fulfilled by the cache, and not
the database.
Time
1520 minutes
Instructions
1. Close the ABC repository.
2. Stop the Oracle BI Server service.
3. Enable the cache parameter in the NQSConfig.ini file.
a. Navigate to D:\OracleBI\server\Config.
b. Open NQSConfig.ini.
c. Locate the CACHE section and set the ENABLE parameter to YES.
d. Save and close the file.
4. Start the Oracle BI Server service.
5. Create and run a request.
a. Log in to Oracle BI as MWEST, with no password.
b. Click in the SupplierSales subject area.
c. Create the following request:

Module 18: Cache Management
238 E Oracle BI Suite Enterprise Edition 10g Bootcamp
d. Click Results.

e. Log out of Oracle BI.
6. Open the ABC repository in online mode. Log in as Administrator with password
Administrator.
7. Open the Cache Manager and ensure that the request you made is listed as a cache entry.
a. Select Manage > Cache.
b. Expand Star > SupplierSales. By selecting the appropriate leaf of the tree in the left pane,
you can limit the cache entries that appear in the right pane. The Cache Manager allows you
to view cache entries by repository, subject area, and user.
c. Click MWEST in the left pane. All cache entries associated with this user appear in the right
pane.
d. Select the cache entry (there should only be one).
e. Select SQL > Show.
f. By inspecting the SQL, can you determine if this is the cache that represents the query you
just created?




g. Click OK to close the SQL.

Module 18: Cache Management
E Oracle BI Suite Enterprise Edition 10g Bootcamp 239
h. With this entry still selected, scroll to the Created and Last used columns. Are the values for
these fields the same?


i. Record the values for these two fields.


j. Were the results for the query you created derived from an existing cache entry or returned
directly from the database?




k. Close the Cache Manager.
8. Inspect the cache file and ensure that the results of the query were stored as a file in the cache
directory. The modified time of the file should coincide with the time you originally created the
request (time recorded above).
a. Navigate to D:\OracleBIData\cache. The file in this directory is the cache file that
resulted from your query.
b. Ensure that the modified time of this file is the same as the time you created the request.
9. Create a new request.
a. Log in to Oracle BI as JMEYER, with no password.
b. Create the same request you created earlier and inspect the results:

c. Was the request satisfied by the database or by a cache? Explain.



10. Examine the cache hit in the log file.
a. Open the query log.
Module 18: Cache Management
240 E Oracle BI Suite Enterprise Edition 10g Bootcamp
b. Ensure that you see a Cache Hit on query entry for the query initiated by JMEYER.

c. Note that the log identifies who created the cache entry: MWEST.
d. Close the log file.
e. Log out of Oracle BI.
11. In response to JMEYERs request, determine if a new cache entry was made in the Cache
Manager and filed in the Cache directory. If a new entry was made in the Cache Manager and
filed in the directory, then an existing cache was not used to satisfy his request.
a. Return to the ABC repository and open the Cache Manager.
b. Are there any entries listed with JMEYER as the user?


c. Has the Last used date for MWESTs cache entry changed? Explain.




d. Close the Cache Manager.
e. Navigate to D:\OracleBIData\cache.
f. Note that there is no new cache file created as a result of JMEYERs request. Thus,
JMEYERs request was satisfied by an existing cache entry.
Module 18: Cache Management
E Oracle BI Suite Enterprise Edition 10g Bootcamp 241
Module 18: Cache Management
242 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solutions 18-1: Inspecting Cache Files
Answers
7.f. By inspecting the SQL, can you determine if this is the cache that represents the query you
just created?
Yes, the listed objects correspond to the columns selected for the request. These objects
were also selected from the SupplierSales subject area as indicated from the SQL.
7.h. With this entry still selected, scroll to the Created and Last used columns. Are the values
for these fields the same?
No. Created has a time stamp and Last used is set to Never.
7.j. Were the results for the query you created derived from an existing cache entry or returned
directly from the database?
Results for this query were returned directly from the database. Last used is set to Never,
indicating the cached entry has never been used. Thus, no cache entry existed for this query
until now.
9.c. Was the request satisfied by the database or by a cache? Explain.
JMEYERs query was fulfilled by the cache that resulted from MWESTs query earlier.
Because JMEYERs request was identical to the cache, the server used the cache (cache
hit) instead of processing against the database.
11.b. Are there any entries listed with JMEYER as the user?
No
11.c. Has the Last used date for MWESTs cache entry changed? Explain.
Yes, because JMEYERs query used this cache to satisfy his request and the last used date
was updated to reflect this.
Module 18: Cache Management
E Oracle BI Suite Enterprise Edition 10g Bootcamp 243
Module 18: Cache Management
244 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 18-2: Modifying Cache Parameters
Goal To modify cache parameters in the NQSConfig.ini file
Scenario
You use the Cache Manager to inspect the cache parameters. Then modify
the number of rows per cache, as well as the number of cache entries allowed.
In addition to modifying cache parameters, you make certain tables
noncacheable.
Outcome
A decrease in the number of rows per cache, as well as a decrease in the
number of cache entries allowed
Time
1015 minutes
Instructions
1. What are some advantages of using a caching system for requests?



2. True or false: There is a list of criteria that can qualify a cache hit. If all but one of these
conditions are met, a cache hit will not occur.


3. True or false: Cache files are stored in the D:\OracleBIData\cache directory.


4. True or false: Cache files can be stored anywhere.


5. If you wanted to store cache files in a different location, where do you indicate this?


Module 18: Cache Management
E Oracle BI Suite Enterprise Edition 10g Bootcamp 245
6. Use the Cache Manager to inspect cache parameters.
a. Open the Cache Manager.
b. Select Action > Show Info.
c. Inspect the information and record the following values:
d. Number of entries currently in cache:


e. Maximum allowable number of entries in cache:


f. Maximum allowable number of rows per cache entry result set:


g. Click OK.
h. Close the Cache Manager.
i. Close the repository.
7. Decrease the number of rows per cache, as well as the number of cache entries allowed.
a. Stop the Oracle BI Server service.
b. Navigate to D:\OracleBI\server\Config.
c. Open NQSConfig.ini.
d. Locate the CACHE section.
e. Modify as follows:

MAX_ROWS_PER_CACHE_ENTRY = 150000
MAX_CACHE_ENTRIES = 9000

f. Save the changes and close the file.
8. Validate your changes in the Administration Tool.
a. Start the Oracle BI Server service.
b. Open the ABC repository in online mode.
c. Select Manage > Cache.
d. Select Action > Show Info and ensure that changes are applied. Your results should
resemble the screenshot below:

e. Click OK.
f. Close the Cache Manager.
Module 18: Cache Management
246 E Oracle BI Suite Enterprise Edition 10g Bootcamp
9. Make certain tables noncacheable, that is, if a request is made against them, there are no cache
entries.
a. In the Physical layer, double-click the ORCL.SUPPLIER2.D1_CUSTOMER2 table.
b. Click the General tab.
c. Deselect the Cacheable check box.
d. Click OK.
e. Repeat this process for the D1_ORDERS2 table.
f. Check in changes and save the repository. You do not need to check consistency.
10. Test your work.
a. Log in to Oracle BI as JMEYER, with no password.
b. Create the following request using columns from the SupplierSales subject area:

c. Click Results.
d. Log out of Oracle BI.
e. Return to the Administration Tool and open the Cache Manager.
f. Do you see an entry for the request you just created?


g. Close the Cache Manager.
11. Make the tables cacheable.
a. In the Physical layer, double-click the D1_CUSTOMER2 table.
b. Select the General tab.
c. Select the Cacheable check box.
d. Click OK.
e. Repeat this process for the D1_ORDERS2 table.
f. Check in changes and save the repository. You do not need to check for consistency.
12. Test your work.
a. Log in to Oracle BI as JMEYER, with no password.
b. Create the following request using columns from the SupplierSales subject area:

c. Click Results.
d. Log out of Oracle BI.
e. Return to the Administration Tool and open the Cache Manager.
Module 18: Cache Management
E Oracle BI Suite Enterprise Edition 10g Bootcamp 247
f. Ensure that there is a new entry for the request you just created.

13. Alter how the cache manager displays information.
a. Select Edit > Options.
b. Deselect Creation elapsed time.
c. Use the Up button to move Business Model to the top of the options list.
d. Click OK.
e. Check the changes in the Cache Manager.

14. Purge cache entries.
a. Right-click the cache entry for JMEYER and select Purge, or select Edit > Purge. In this
pane, it is possible to purge a single cache entry, multiple entries, or all entries.
b. Click OK to confirm cache purge.
c. Click the Physical tab at the bottom of the left pane.
d. Expand ORCL > Supplier2.
e. Select the D1_PRODUCTS table. A message appears on the right stating that all associated
cache entries will be purged for this table. In this pane, it is possible to delete cache entries
for a single table, multiple tables, or the entire schema.
f. Select Edit > Purge.
g. Click OK to confirm cache purge.
h. Click the Cache tab at the bottom of the left pane.
i. Confirm that the MWEST cache entry is deleted.
j. Close the Cache Manager.
Module 18: Cache Management
248 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Module 18: Cache Management
E Oracle BI Suite Enterprise Edition 10g Bootcamp 249
Solutions 18-2: Modifying Cache Parameters
Answers
1. What are some advantages in using a caching system for requests?
Faster response time fulfilling a query from a cache versus searching through the
database; minimizing strain on database resulting in reduced database processing; and
conservation of network resources
2. True or false: There is a list of criteria that can qualify a cache hit. If all but one of these
conditions are met, a cache hit will not occur.
True
3. True or false: Cache files are stored in the D:\OracleBIData\cache directory.
True
4. True or false: Cache files can be stored anywhere.
True, cache files can be stored anywhere, even on a separate machine.
5. If you wanted to store cache files in a different location, where would you need to indicate
this?
To define the location of where cache files are stored, you would need to indicate this in
the NQSConfig.ini file, in the Cache Section.
6.d. Number of entries currently in cache:
1
6.e. Maximum allowable number of entries in cache:
1,000
6.f. Maximum allowable number of rows per cache entry result set:
100,000
10.f. Do you see an entry for the request you just created?
No
Module 18: Cache Management
250 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Module 19: Enabling Usage Tracking
E Oracle BI Suite Enterprise Edition 10g Bootcamp 251
Practice 19-1: Enabling Usage Tracking
Goals
To set up and administer usage tracking
Scenario
ABC wants to monitor the ad hoc queries generated by users to help identify
performance improvement areas. You use the recommended usage tracking
approach, which is to track statistics by loading them directly into a database table
rather than a flat file. You use a script to create the S_NQ_ACCT database table, build
the business model, modify the NQSConfig.ini file to support usage tracking, and
test results.
Time
2530 minutes
Instructions
1. Use a given script to create the S_NQ_ACCT usage-tracking table. This table stores the usage
tracking data when queries are run against Oracle BI Server.
a. Open Oracle SQL*Plus (Start > Programs > Oracle OraDb10g_home > Application
Development > SQL Plus).
b. Log in to the ORCL host as SUPPLIER2 with password SUPPLIER2.
c. At the SQL prompt, enter:
start D:\oraclebi\server\schema\SAACCT.Oracle.sql;
d. Press [Enter]. Ensure that the table and three indexes are created.
e. At the SQL prompt, enter DESC S_NQ_ACCT; and press [Enter] to view the table
structure.
f. Close SQL*Plus.
2. Import the usage-tracking table into the Physical layer.
a. Return to the ABC repository, which should still be open in online mode.
b. Select File > Import > from Database.
c. Select the OCI 10g/11g connection type.
d. Enter SUPPLIER2 as username and password, and click OK.
e. In the Import dialog box, expand the SUPPLIER2 object.
f. Click the S_NQ_ACCT table.
g. Ensure that the Tables import option is checked, and click Import.
h. When import completes, click Close.
i. Check in changes and save the repository.
j. In the Physical layer, expand ORCL and ensure that S_NQ_ACCT was imported.
3. Create a usage-tracking database object.
a. Right-click inside the Physical layer white space and select New Database to open the
Database properties dialog box.
Module 19: Enabling Usage Tracking
252 E Oracle BI Suite Enterprise Edition 10g Bootcamp
b. Click the General tab and name the database ABC Usage Tracking.
c. In the Database drop-down list, select Oracle 10g R1.
d. Click the Connection Pools tab.
e. Click Add to open the Connection Pool dialog box.
f. Name the connection pool ABC Usage Tracking Connection Pool.
g. Enter ORCL for data source name.
h. Enter SUPPLIER2 for username and password.
i. Click OK.
j. Enter SUPPLIER2 to confirm the password, and click OK.
k. Click OK to close the Database properties dialog box.
l. Right-click the ABC Usage Tracking database object and select New Object > Physical
Schema.
m. Name the physical schema ABC Usage Tracking Schema.
n. Click OK.
4. Copy the S_NQ_ACCT table to the usage-tracking database object.
a. In the Physical layer, expand ORCL > SUPPLIER2.
b. Right-click S_NQ_ACCT and select Copy.
c. Right-click ABC Usage Tracking Schema and select Paste.
d. Check in changes and save the repository.

5. Create a usage-tracking business model.
a. Right-click in the Business Model and Mapping layer and select New Business Model.
b. Name the business model ABC Usage Tracking and click OK.
c. Right-click ABC Usage Tracking and select New Object > Logical Table.
d. Name the table Measures and click OK.
e. Repeat and add three more tables, Time, Topic, and User to the ABC Usage Tracking
business model.
f. Drag the following physical columns from ABC Usage Tracking > ABC Usage Tracking
Schema > S_NQ_ACCT to the Measures logical table in the ABC Usage Tracking
business model and rename:
Physical Column Rename
QUERY_TEXT Query Count
ROW_COUNT Row Count
TOTAL_TIME_SEC Total Time
Seconds
g. Apply the following aggregation rules:
Logical Column Aggregation Rule
Query Count Count
Module 19: Enabling Usage Tracking
E Oracle BI Suite Enterprise Edition 10g Bootcamp 253
Row Count Sum
Total Time in Secs Sum
h. Drag the following physical columns from ABC Usage Tracking > ABC Usage Tracking
Schema > S_NQ_ACCT to the Time logical table in the ABC Usage Tracking business
model and rename:
Physical Column Rename
START_DT Start Date
START_HOUR_MIN Start Hour Minute
END_HOUR_MIN End Hour Minute
i. Set Start Date as the logical key for the Time logical table.
j. Drag the following physical columns from ABC Usage Tracking > ABC Usage Tracking
Schema > S_NQ_ACCT to the Topic logical table in the ABC Usage Tracking business
model and rename:
Physical Column Rename
QUERY_TEXT Logical SQL
REPOSITORY_NAME Repository Name
SUBJECT_AREA_NAME Subject Area Name
k. Set Logical SQL as the logical key for the Topic logical table.
l. Drag the USER_NAME physical column from ABC Usage Tracking > ABC Usage
Tracking Schema > S_NQ_ACCT to the User logical table in the ABC Usage Tracking
business model and rename User Name.
m. Set User Name as the logical key for the User logical table.
n. Use the Business Model Diagram to create complex joins from Time, Topic, and User to
Measures.
o. Drag the ABC Usage Tracking business model to the Presentation layer to create the
Presentation layer objects.
p. Check in changes.
q. Check consistency, and if the repository is consistent, save the repository.
6. Modify the NQSConfig.ini file to support usage tracking.
a. Close the ABC repository open in online mode.
b. Stop the Oracle BI Server service.
c. Navigate to D:\OracleBI\server\Config and open NQSConfig.ini using
Notepad.
d. Scroll to the Usage Tracking section.
e. Set ENABLE = YES;
This enables usage tracking. Do not delete the semicolon at the end of the line.
f. Scroll past the Parameters used for writing data to a flat file section and ensure that
DIRECT_INSERT = YES. What is the purpose of this parameter?


Module 19: Enabling Usage Tracking
254 E Oracle BI Suite Enterprise Edition 10g Bootcamp


g. Scroll to the Parameters used for inserting data into a table section. When defining the
parameters for PHYSICAL_TABLE_NAME, there are two format options identified. Which
should you use, and why?






h. Using your answer to the question given above, update the NQSConfig.ini file and set
the PHYSICAL_TABLE_NAME parameter as follows: PHYSICAL_TABLE_NAME =
"ABC Usage Tracking"."ABC Usage Tracking Schema"."S_NQ_ACCT" ;
i. Set the CONNECTION_POOL variable in the NQSConfig.ini file to support both reads
and writes. The setting is CONNECTION_POOL = ABC Usage Tracking.ABC
Usage Tracking Connection Pool.
j. Leave the default settings for BUFFER_SIZE, BUFFER_TIME_LIMIT_SECONDS,
NUM_INSERT_THREADS, and MAX_INSERTS_PER_TRANSACTION. Your screen should
look as follows:

k. Save and close the NQSConfig.ini file.
7. Test your work.
a. Start the Oracle BI Server service.
b. Log in to Oracle BI as Administrator with password Administrator.
c. Click Answers.
d. Ensure that the ABC Usage Tracking subject area is visible. If not, click Reload Server
Metadata.
e. Click SupplierSales.
f. Create a query containing Customers.Customer and Fact.SalesFacts.Dollars.
g. Click the Results.
Module 19: Enabling Usage Tracking
E Oracle BI Suite Enterprise Edition 10g Bootcamp 255
h. Click the All Pages button and ensure that 136 records are returned.
i. Click the Create a New Request icon .
j. Click the ABC Usage Tracking subject area.
k. Create a query containing User Name, Start Date, Logical SQL, Row Count, and Total
Time Seconds.
l. Click Results.
m. Ensure that you get the expected usage-tracking results.

n. Check the log file and ensure that the ABC Usage Tracking database and S_NQ_ACCT
table are accessed in the query.

o. If desired, experiment with other usage-tracking queries.
Module 19: Enabling Usage Tracking
256 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solution 19-1: Enabling Usage Tracking
Answers
6.f. Scroll past the Parameters used for writing data to a flat file section and ensure that
DIRECT_INSERT = YES. What is the purpose of this parameter?
If DIRECT_INSERT = YES, usage-tracking information is stored in a database table. If
DIRECT_INSERT = NO, usage-tracking information is stored in a file.
6.g. Scroll to the Parameters used for inserting data into a table section. When defining the
parameters for PHYSICAL_TABLE_NAME, there are two format options identified. Which
should you use, and why?
Use "<Database>"."<Schema>"."<Table>", which is formatted to support Oracle.
Module 20: Using the Multi-User Development Environment
E Oracle BI Suite Enterprise Edition 10g Bootcamp 257
Practice 20-1: Setting Up a Multi-User Environment
Goal
To set up a multi-user development environment to support two developers
Scenario
ABC uses multi-user development environments for its developers. You prepare the
development platform to support multi-user development and then configure two users
to act as developers to test the environment.
Time
1015 minutes
Instructions
1. Modify two users, MWEST and JMEYER, to give them administrative privileges so they can act
as developers. As a precaution, reset their passwords. So they need to communicate with you
before starting with development.
a. Close the ABC repository that is open in online mode.
b. Stop the Oracle BI Server service.
c. Open the ABC repository in offline mode as Administrator, with Administrator
as password.
d. Select Manage > Security.
e. Click Groups in the left pane.
f. Double-click Administrators. Administrator and MWEST are already members of the
Administrators group.
g. Click Add.
h. Select JMEYER.
i. Click OK.
j. Click OK to close the Group Administrators window.
k. Click Users in the left pane.
l. Double-click MWEST.
m. In the User dialog box, enter MWEST in the Password and Confirm Password fields.
n. Click OK.
o. Double-click JMEYER.
p. In the User dialog box, enter JMEYER in the Password and Confirm Password fields.
q. Click OK.
r. Select Action > Close to close the Security Manager window.
s. Save the repository. It is not necessary to check consistency.
2. Ensure that only one user can modify the repository at a time.
a. Select Start > Programs > Oracle Business Intelligence > Administration to open a
second instance of the Oracle BI Administration Tool.
b. Select File > Open > Offline.
Module 20: Using the Multi-User Development Environment
258 E Oracle BI Suite Enterprise Edition 10g Bootcamp
c. Select the ABC repository.
d. Click Open. Note that you can open the file only as read-only. This is because multi-user
development has not been set up, so only one user can edit the repository at a time.
e. Click No.
f. Select File > Exit to close this instance of the Oracle BI Administration Tool.
3. In this step, you create projects in the master repository. After you have copied the master
repository to a shared directory, it is no longer used for development, so it can be used as a
backup. Creating the original set of projects in the master repository allows you to see what
changes were made after multi-user development is established by comparing the shared
repository to the master. Normally, you create projects to contain all the presentation catalogs in
the repository, broken down in a reasonable manner. In this practice, you create only two
projects.
a. Select Manage > Projects. The Project Manager window is displayed.
b. Select Action > New Project.
c. Enter Inventory Fact Table Project as the name.
d. Expand Catalogs in the left pane.
e. Expand Inventory.
f. Select Inventory.Inventory Facts.
g. Click Add. Note that a Catalogs folder appears in the right pane.
h. Expand Catalogs in the right pane. Note that the Inventory presentation catalog is
automatically included in the project.
i. Expand Inventory in the right pane. Ensure that Inventory.Inventory Facts has been
included in this project as well.
j. Expand the Users folder in the left pane.
k. Press and hold [Ctrl] and select Administrator, MWEST, and JMEYER.
l. Click Add. A Users folder is added to the right pane.
m. Expand the Users folder in the right pane and ensure that the three users are added to the
project.
Module 20: Using the Multi-User Development Environment
E Oracle BI Suite Enterprise Edition 10g Bootcamp 259
n. Check your work:

o. Click OK to save the project and close the Project window.
4. Create a second project to contain the Inventory presentation catalog. Note that this project also
contains the Inventory Facts logical fact table. This demonstrates that it is possible for projects to
overlap, or for one project to contain another.
a. Select Action > New Project.
b. Enter Inventory Project as the name.
c. Expand Catalogs in the left pane.
d. Double-click the Inventory presentation catalog. Note that a Catalogs folder appears in the
right pane.
e. Expand Catalogs in the right pane. Note that the Inventory presentation catalog has been
added to the project.
f. Expand Inventory in the right pane. Ensure that Inventory.Inventory Facts has been
included in this project as well.
g. Add the Administrator, MWEST, and JMEYER users to the project.
Module 20: Using the Multi-User Development Environment
260 E Oracle BI Suite Enterprise Edition 10g Bootcamp
h. Check your work:

i. Click OK to save the project and close the Project window. Your Project Manager should
look as follows:

j. Select Action > Close to close the Project Manager.
k. Save your changes to the repository. It is not necessary to perform a global consistency
check.
5. Copy your master repository to a shared directory. This allows all the developers on the
development team to access the repository.
a. Open Windows Explorer.
b. Navigate to <machine name>\Shared Documents. Folders in this Shared
Documents folder are automatically shared with other users on this machine.
c. Right-click in the right pane and select New > Folder.
d. Name the new folder RPD.
e. Copy ABC.rpd from D:\OracleBI\server\Repository to the Shared
Documents\RPD folder.
f. In the Shared Documents\RPD folder, rename the repository SharedABC.rpd.
6. Set the multi-user directory in the Oracle BI Administration Tool to point to the shared
repository you just created.
a. In the Oracle BI Administration Tool, select Tools > Options.
b. Click the Multiuser tab.
c. Click Browse next to the multi-user development directory field.
Module 20: Using the Multi-User Development Environment
E Oracle BI Suite Enterprise Edition 10g Bootcamp 261
d. Browse to select Shared Documents\RPD.
e. In the Full Name field, enter Mary West.
f. Click OK to close the Options dialog box.
g. Select File > Close to close the ABC.rpd repository. You are ready to perform multi-user
development.
Module 20: Using the Multi-User Development Environment
262 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 20-2: Using a Multi-User Development
Environment
Goals
To check out, modify, and check in projects in a multi-user development environment
To examine the various files created and modified when working with a multi-user
development environment
Scenario Two users, MWEST and JMEYER, work in the multi-user development environment and
modify the same project simultaneously.
Time
2030 minutes
Instructions
1. Connect to the shared repository and check out the Inventory Project as MWEST.
a. In the Oracle BI Administration Tool, select File > Multi-User > Checkout. The Extract
from SharedABC.rpd dialog box opens.
b. Enter MWEST as the username and password.
c. Click OK.
d. Note that the two projects you created are listed.
e. Select Inventory Project and click OK. The New Repository dialog box opens.
f. Change the file name to MWEST.rpd. Note that this repository file is being saved to the
default repository directory and not the shared repository directory you created earlier. Also,
note that a copy of the shared master repository, SharedABC.rpd, has been copied to the
default repository directory.
g. Click Save. The Inventory Project repository is displayed. Note that it only contains the
Inventory presentation catalog and business model. The other presentation catalogs and
business models are not shown.
2. Review the files that were created or modified by the checkout process.
a. Using Windows Explorer, navigate to Shared Documents\RPD. Which are the new files
that appear?


b. Navigate to D:\OracleBI\server\Repository. Which are the new files that appear?
What are they?






Module 20: Using the Multi-User Development Environment
E Oracle BI Suite Enterprise Edition 10g Bootcamp 263
3. As JMEYER, check out the same Inventory project using a second instance of the Oracle BI
Administration Tool. This demonstrates that multiple users can work with the same repository
and the same project simultaneously.
a. Select Start > Programs > Oracle Business Intelligence > Administration.
b. Select File > Multiuser > Checkout. The Extract from ShareABC.rpd dialog box opens.
c. Enter JMEYER as the username and password.
d. Click OK. Note that both projects are still shown. There is no indication that MWEST has the
Inventory Project open. This is an intentional feature of the product: multiple developers can
work on a single project, and changes are merged during the check-in process.
e. Select Inventory Project.
f. Click OK.
g. Enter JMEYER.rpd as the file name.
h. Click Save. The Inventory Project is now being worked on by two developers
simultaneously.
i. Navigate to D:\OracleBI\server\Repository and note that a set of JMEYER files
has been added.
4. Modify the project as MWEST and check it in to understand the check-in process.
a. Return to the Administration Tool that has MWEST.rpd open. The repository name is
displayed on the title bar of the application.
b. In the Presentation layer, expand Inventory, right-click Regions, and select Delete. This is
an obvious change that will be easy to track.
c. Click Yes to confirm the deletion.
d. Save the repository. Do not perform a global consistency check.
e. Select File > Multiuser > Merge Local Changes. This merges your changes to the shared
repository. A Lock Information window is displayed. The shared repository will be locked
until check-in is complete.
f. Accept the default values shown and click OK. The Merge Repositories dialog box appears.
Do not click Merge yet. Note that you first merge your modified project repository with the
original copy of the project repository in the default repository directory.
5. Switch to the Oracle BI Administration Tool with the JMEYER.rpd open and attempt to merge
local changes.
a. Select File > Multi-User > Merge Local Changes. An error message appears: You are
already attempting to check in this file. No one else can check in projects while the shared
repository is locked. Here, you are trying to check in the same project using the same
Windows username, and so the error message warns you about this.
b. Click OK to close the error message.
6. Return to the Oracle BI Administration Tool where the check-in is being performed for the
MWEST.rpd and complete the merge.
a. Ensure that the original subset is D:\OracleBI\server\Repository\originalMWEST.rpd.
b. Ensure that the modified subset is D:\OracleBI\server\Repository\MWEST.rpd.
c. Because no changes were made to the shared repository while you had your project checked
out, your only options are to merge your changes or examine the merge statistics.
Module 20: Using the Multi-User Development Environment
264 E Oracle BI Suite Enterprise Edition 10g Bootcamp
d. Click Stats. A summary of the number of changes is shown. One object was deleted from the
modified subset.

e. Click Close.
f. Click Merge.
g. Click No when prompted to check global consistency. At this point, the changes are merged
to the local copy of the SharedABC repository and the local copy is opened. The changes
have not yet been published to the shared master repository.
h. Navigate to D:\OracleBI\server\Repository. Note that there is a new file named
SharedABC.merge_log.csv. This is a comma-separated values file listing the changes
made to the repository in the merge.
i. Double-click SharedABC.merge_log.csv to open it using Microsoft Excel and check
the changes.

j. Close SharedABC.merge_log.csv without saving any changes and close MS Excel.
k. Return to the Administration Tool with SharedABC.rpd open and ensure that the Regions
presentation table no longer appears in the Inventory presentation catalog.

l. Save the modified SharedABC repository. Do not check for global consistency.
m. Select File > Close to close the repository. A warning appears indicating that you are closing
an MUD repository without publishing or discarding your local changes, so the lock on the
repository has not been released. At this point, you have the option to publish the repository
(copy the local copy of the shared repository to the server), discard the local changes, or
Module 20: Using the Multi-User Development Environment
E Oracle BI Suite Enterprise Edition 10g Bootcamp 265
close the repository and keep the lock.

n. Click Cancel.
o. Select File > Multiuser > Publish to Network. The local copy of the shared repository is
merged with the shared repository and then closed and deleted.
p. Select File > Multiuser > History.
q. Log in as Administrator with the password Administrator.
r. The Version 1 of SharedABC repository is opened and the history of changes is displayed.

s. Right-click the entry and select View > Details. The event details for the project are
displayed:

t. Close the details window.
u. Select Action > Close. The History window and Version 1 of SharedABC are closed.
v. In the Administration Tool, select File > Open > Offline.
w. Navigate to Shared Documents\RPD and select SharedABC.rpd to open the shared
master repository.
x. Click Open.
y. Click Yes to acknowledge that it can only be opened as read-only.
z. Log in as Administrator.
aa. Expand the Inventory presentation catalog and ensure that the Regions presentation table no
longer appears.

bb. Close the repository.
cc. Select File > Exit to close this instance of the Administration Tool.
Module 20: Using the Multi-User Development Environment
266 E Oracle BI Suite Enterprise Edition 10g Bootcamp
7. Return to the instance of the Administration Tool with JMEYER.rpd open and ensure that
JMEYER sees the changes, even though he checked out his project before those changes were
applied.
a. Return to the remaining instance of the Administration Tool with the JMEYER repository
open.
b. Expand the Inventory presentation catalog and ensure that Regions still appears. This is
because JMEYER checked out this project before MWEST deleted the Regions table.
c. Select File > Multiuser > Merge Local Changes.
d. Click OK to accept the default lock information. The Merge Repositories dialog box opens.
e. Note: The fact that Regions was deleted is listed in the merge log indicates that another
developer did this. This is why the application copies the latest version of the shared
repository when performing a check-in.

f. Select the listing to highlight it and then click the ellipsis button to view the objects
deleted from the Current repository.

g. Click Cancel.
h. In the bottom panels of the original JMEYER project, the modified JMEYER project and the
current SharedABC repository are shown. The differences between the projects are
displayed. In this case, the original and modified repositories have a Regions presentation
table that is not in the current shared repository. At this point, a decision must be made about
how to proceed with the merge.







Module 20: Using the Multi-User Development Environment
E Oracle BI Suite Enterprise Edition 10g Bootcamp 267
i. In the Decision column for the highlighted listing, choose Modified (A) from the drop-down
list (it may be necessary to scroll to the right). This chooses the modified repository over the
current repository, thereby rejecting the changes of the other developer, and restoring the
repository to the state before MWEST deleted Regions.


j. Click Merge.
k. Click No when prompted to check global consistency.
l. Ensure that Regions now appears in the Inventory presentation catalog.
m. Select File > Multiuser > Publish to Network to publish the repository.
n. Click No when prompted to check global consistency. The local shared repository is merged
with the master shared repository.
o. Open Shared Documents\RPD\SharedABC.rpd in read-only mode and ensure that
the changes were applied to the shared repository and that Regions now appears in the
Inventory presentation catalog.
Module 20: Using the Multi-User Development Environment
268 E Oracle BI Suite Enterprise Edition 10g Bootcamp


p. Close the repository.
Module 20: Using the Multi-User Development Environment
E Oracle BI Suite Enterprise Edition 10g Bootcamp 269
Solutions 20-2: Using a Multi-User Development
Environment
Answers
2.a. Using Windows Explorer, navigate to Shared Documents\RPD. Which are the new
files that appear?
SharedABC.000 and SharedABC.mhl
2.b. Navigate to D:\OracleBI\server\Repository. Which are the new files that
appear? What are they?
originalMWESTt.rpd, MWEST.rpd, and MWEST.rpd.Log. The MWEST.rpd file
is the subset of the repository containing the Inventory Project metadata, which is the file
that you modify. The original MWESTt.rpd is the original file so you can track your
changes or revert to the original. The MWEST.rpd.Log file is your local log file.

Module 20: Using the Multi-User Development Environment
270 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Module 21: Working with Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 271
Practice 21-1: Creating Requests in Oracle Business
Intelligence Answers
Goals
To create and format requests
Scenario
You need to query data from the Supplier Sales subject area and format the results.
Outcome
You will have saved formatted requests that return business intelligence data.
Time
2530 minutes
Instructions
1. Stop the Oracle BI Server service.
a. Double-click the Services icon on your desktop.
b. Right-click Oracle BI Server and select Stop.
c. Ensure that Oracle BI Server stopped by checking that the Status column displays no value.
d. Minimize the Services window.
2. Modify the NQSConfig.ini file to load the reports_dashboards repository on Oracle BI Server
startup.
a. Navigate to D:\OracleBI\server\Config.
b. Double-click NQSConfig.ini to open the file.
c. Scroll to the REPOSITORY section.
d. Modify the file to load the reports_dashboards repository. Your file should look similar to
this:
######################################################
[ REPOSITORY ]
Star = reports_dashboards.rpd, DEFAULT;
######################################################
e. Save and close NQSConfig.ini.
3. Start the Oracle BI Server service.
a. Return to the Services window.
b. Right-click the Oracle BI Server service and select Start.
c. Wait until the status displays as Started.
4. Start Oracle Business Intelligence Presentation Services.
a. Select Start > Programs > Oracle Business Intelligence > Presentation Services.
b. Enter the following information to log in:
Module 21: Working with Oracle Business Intelligence Answers
272 E Oracle BI Suite Enterprise Edition 10g Bootcamp

User ID Administrator
Password Administrator
c. Click Log In.
5. Click Answers to navigate to the Oracle Business Intelligence Answers start page. If the
SupplierSales subject area is not displayed in the Subject Areas list on the Business Intelligence
Answers start page, click the browser refresh button.
6. In the Subject Areas section, click SupplierSales. The SupplierSales subject area appears in the
left selection pane.
7. Expand the Customers table to display the columns.
8. List the columns in the Customers table:




9. Create a request for customers by state.
a. In the Customers table, click the State column. What happens in the right pane?


b. In the Customers table, click the Customer column. What happens in the right pane?


10. Review the results of the request you just created.
a. In the right pane, click the Results tab.
b. Notice that the results appear in a table format within the Compound Layout. This is the
default. What are three ways to review results in the table format?


c. Scroll down and click the Next Page button to view the next set of rows in the table.
d. Click the All Pages button to view all the rows in the table.
e. How many rows of data are in the table for this request?


f. Select Table from the drop-down view list.
g. Click the Table View Properties button to explore the properties you can set for the table
in the Edit View dialog box.
h. Click Cancel to close the Edit View dialog box.
i. Click the Refresh button to refresh your results. This is the Answers refresh, not a typical
browser refresh.
j. Notice that the display currently includes header toolbars, which allow you to access the
request criteria tools to add column formatting and filters, modify column formulas, and
delete columns.
Module 21: Working with Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 273
k. Select Results Only in the Display drop-down list to view the results without the header
toolbars.
11. Modify the request by adding a column.
a. Expand the SalesFacts table and select the Dollars column. The Dollars column is added to
the request. Check your results:

b. Click the Criteria tab to verify that the Dollars column was added to your request criteria.

12. Save the request in a new folder.
a. Click the Save Request button . The Save Request dialog box is displayed.
b. Click the Create Folder button. The Create Folder dialog box is displayed.
c. Name the new folder. Enter My Sales in the Caption field.
d. Click OK. A new folder is created in My Folders.
e. Click the My Sales folder.
f. In the Name field, enter Sales by State.
g. Click OK.
h. The request is saved in the My Sales folder in the My Folders section of the Oracle BI
Presentation Catalog.
13. View the saved request in the catalog.
a. Click the Answers link.
b. In the Catalog section, select My Folders > My Sales to see your saved request.
c. Click Sales by State. What happens?


d. Click the Modify button. What happens?


14. Modify the request to sort data by state, then by dollars in descending order.
a. Click the Order By button in the State column. The button changes to the Order
Ascending button .
b. Click the Order By button twice on the Dollars column. The button changes to the Order
Descending button with a 2.
Note: The 2 on the button indicates that this is a secondary sort. In this case, the State
column represents the primary sort.
15. Click the Results tab to verify the sort.
Module 21: Working with Oracle Business Intelligence Answers
274 E Oracle BI Suite Enterprise Edition 10g Bootcamp

16. Format dollars to appear with two decimal points.
a. Click the Criteria tab.
b. Click the Column Properties button in the Dollars column. The Column Properties
dialog box is displayed.
c. Click the Data Format tab.
d. Check the Override Default Data Format check box.
e. Select Currency from the Treat Numbers As drop-down list.
f. Select $ from the Currency Symbol drop-down list.
g. Select 2 from the Decimal Places drop-down list.
h. Click OK.
17. Click the Results tab to verify the formatting.
18. Change the format again to appear as whole dollar amounts without decimal points.
a. Click the Criteria tab.
b. Click the Column Properties button in the Dollars column. The Column Properties
dialog box is displayed.
c. Click the Data Format tab.
d. Select 0 from the Decimal Places drop-down list.
e. Click OK.
f. Click the Results tab.
19. Center the alignment of the customer column.
a. Click the Edit View button for the table below the title in the Compound Layout.

b. Select Header Toolbar with Results in the Display drop-down list.
c. Click the Column Properties button in the Customer column. The Column Properties dialog
box is displayed.
d. Click the Style tab.
e. Select Center from the Horizontal Alignment field drop-down list.
f. Click OK.

20. Repeat the process and set the Vertical Alignment of the State column to Top and examine the
results.
Module 21: Working with Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 275
21. Return the Customer column settings back to the defaults and check the results.
22. Modify the Customer column heading.
a. Click the Column Properties button in the Customer column.
b. Click the Column Format tab.
c. Select the Custom Headings check box.
d. Enter Customer Name in the Column Heading field.
e. Click OK.
23. Navigate to the Criteria and Results tabs and verify that the new name is displayed in both
places.


24. Set up conditional formatting on the Dollars column.
a. Click the Criteria tab.
b. Click the Column Properties button in the Dollars column.
c. Click the Conditional Format tab.
d. Click the Add Condition button.
e. Select Dollars from the drop-down list. The Create/Edit Filter dialog box is displayed.
f. Select is less than from the Operator drop-down list.
g. Enter 250000 in the Value field.
h. Click OK. The Edit Format dialog box is displayed.
i. Click the Color button.
j. Select red from the color selector and click OK.
k. Select Bold from the Style drop-down list.
l. Click OK.
m. Repeat the process and create the following conditional formatting:
Criteria Operator/Value Color Style
Dollars is between 250000 and 500000 Blue Bold
Dollars is greater than 500000 Green Bold

Module 21: Working with Oracle Business Intelligence Answers
276 E Oracle BI Suite Enterprise Edition 10g Bootcamp


n. Click OK to close the Column Properties dialog box after you finish.
o. Click the Results tab to view the conditional formatting.

p. Save this request as a new request in your My Sales folder. Name the request Formatted
Sales By State.
25. Add formulas to your request.
a. Add a formula to the request to increase the dollar amount by 10 percent.
i. In the Dollars column, click the Edit Formula button. The Edit Column Formula
dialog box is displayed.
ii. Click at the end of the column name in the Column Formula field.
iii. Click the Multiply button in the Formula Editor.
Module 21: Working with Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 277
iv. Enter 1.10.

v. Click OK and verify that the dollar amount increases in your results.
The criteria for SalesFacts should look like this:

The results should look like this:

b. Add a formula to the request to rank customers by dollar sales and sort by state.
i. In the Dollars column, click the Edit Formula button.
ii. Select the text in the Column Formula field.
iii. Click the Function button. The Insert Function window appears.
iv. Expand the Aggregate functions group and select Rank. Notice that a description of the
Rank function appears in the bottom of the window.
Module 21: Working with Oracle Business Intelligence Answers
278 E Oracle BI Suite Enterprise Edition 10g Bootcamp

v. Click OK.

vi. Click OK and verify that your results are ranked.

vii. In the Dollars column, click the Edit Formula button.
viii. Complete the syntax by adding the by statement to the expression in the Column
Formula field: Rank(SalesFacts.Dollars*1.10 by ).
ix. With your cursor at the end of the expression in the Column Formula field (inside the
parentheses), add the State column by clicking the Column button and selecting State.

x. Select the Custom Headings check box.
xi. In the Column Heading field, enter RANK(Dollars By State).
xii. Click OK.
Module 21: Working with Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 279
xiii. Click the Criteria tab to check your request:

c. Change the format of the column to eliminate the $ sign from the custom formatting because
now you will be showing results as a rank.
i. In the RANK(Dollars By State) column, click the Column Properties button.
ii. Click the Data Format tab.
iii. In the Treat Numbers As drop-down list, select Number.
iv. Click OK.
d. Click the Results tab to view the results.


26. Save the request to the My Sales folder.
a. Click the Save button. The Choose Folder dialog box is displayed.
b. Verify that the Folder field indicates My Folders: My Sales.
c. Enter Ranked Sales by State in the Name field.
d. Click OK.
Module 21: Working with Oracle Business Intelligence Answers
280 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Solutions 21-1: Creating Requests in Oracle Business
Intelligence Answers
Answers
8. List the columns in the Customers table:
Region, Sales District, Sales Rep, Customer, Address, Phone, City, State, and Route Code
9.a. In the Customers table, click the State column. What happens in the right pane?
The State column is added to the request criteria.
9.b. In the Customers table, click the Customer column. What happens in the right pane?
The Customer column is added to the request criteria.
10.b. What are three ways to review results in the table format?
Click the Results tab, click the Table button, or click the Display Results button.
10.e. How many rows of data are in the table for this request?
136
13.c. Click Sales by State. What happens?
The request is executed and the results are displayed in the workspace.
13.d. Click the Modify button. What happens?
The request is ready for editing.







Module 22: Filtering Requests in Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 281

Practice 22-1: Adding Filters to a Request
Goals
To add a column filter to constrain a request to obtain results that answer a particular
question and to limit results to specific months
Scenario
Add a filter that allows you to filter results based on region, state, and city.
Time
10 15 minutes
Instructions
1. If necessary, start Oracle Business Intelligence Presentation Services and log in as Administrator.
To do this, click Start > Programs > Oracle Business Intelligence > Presentation Services and
enter Administrator in the User ID and Password fields.
2. Add filters to your saved request.
a. Click the Answers link.
b. Open the Formatted Sales By State request.
i. Click the Catalog tab (in the selection pane).
ii. Select My Folders > My Sales and expand the My Sales folder.
iii. Click the saved request, Formatted Sales By State.
iv. Click the Modify button.
c. Add a filter to show records only from the West region. Note that you dont want to add the
Region column to your results.
i. Click Region in the Customers table. The Region column is added to the Columns
section on the Criteria tabbed page.
ii. Click the Column Properties button in the Region column. The Column Properties
dialog box is displayed.
iii. Click the Column Format tab.
iv. Check the Hide check box at the upper-right corner.
v. Click OK.
vi. Click the Add Filter button in the Region column. The Create/Edit Filter dialog box is
displayed.
vii. In the right panel, click All Choices, and then click West. Note that West is added to
the Value field.
Module 22: Filtering Requests in Oracle Business Intelligence Answers
282 E Oracle BI Suite Enterprise Edition 10g Bootcamp

viii. Click East. Note that it is added as a second value.

ix. Click OK.
x. Note that you are returned to the Criteria tab and that in the Filters section you have a
new filter called Region is equal to / is in West, East.

xi. Click the Filter Options button and select Edit Filter.
xii. In the Create/Edit Filter window, click the Delete button next to the East value.
xiii. Click OK.

d. Add another filter value to show records only from 1999. Follow the steps above, using the
Periods table and the Year column.
e. Check your filters:

f. How would you change the AND to an OR in your filters?


g. Click the Results tab to view the results.

h. How many records appear?


Module 22: Filtering Requests in Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 283

i. Save the filter for use with other content.
i. Click the Criteria tab.
ii. Click the Save Filter button. The Save Filter dialog box is displayed.
iii. Click the My Filters folder. My Filters: Supplier Sales appears in the Folder text box.
iv. Enter West Region, 1999 in the Name field.
v. Click OK.
j. Save the existing request with the filter.
i. Click the Save button.
ii. Select My Folders > My Sales.
iii. Name the request Formatted Sales by State, West Region 1999.
iv. Click OK.
3. Create a filter for the current and previous month using variables.
a. Click the Answers link.
b. Open the Sales by State request in the My Sales folder.
c. Click the Modify button.
d. Add the Month column to the request by selecting Periods, and then Month in the selection
pane.
e. Click the Add Filter button in the Month column.
f. In the filter Operator field, choose is equal to / is in.
g. Change Value to Variable by clicking the Add button and selecting Variable, and then
Repository from the drop-down list.
Note: The administrator has predefined variables called CURRENT_MONTH and
PREVIOUS_MONTH.
h. In the Server Variable field, enter CURRENT_MONTH.
i. Click the Add button and select Variable, and then Repository from the drop-down list.
j. In the Server Variable field, enter PREVIOUS_MONTH.
k. Click OK.
l. Click the Results tab to review the results.
m. Save the request as Sales by State for Current and Previous Month in the My Sales
folder.
Module 22: Filtering Requests in Oracle Business Intelligence Answers
284 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Solutions 22-1: Adding Filters to a Request
Answers
2.f. How would you change the AND to an OR in your filters?
Click the AND.
2.h. How many records appear?
29
Module 22: Filtering Requests in Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 285

Practice 22-2: Adding a Column Filter Prompt to a
Request
Goals
To use a column filter prompt to constrain a request to obtain results that answer a
particular question
Scenario
Build a column filter prompt that allows you to filter results based on region, state, and
city.
Time
10 15 minutes
Instructions
1. If necessary, start Oracle Business Intelligence Presentation Services and log in as Administrator.
2. Create a request.
a. Click the Answers link.
b. Select the SupplierSales subject area.
c. Create the following request:

3. Add a column filter prompt.
a. Click the Prompts tab.
b. Select Create Prompt > Column Filter Prompt. The Column Filter Properties dialog box
opens.
c. In the Caption field, enter Filter by Region. This caption will appear to the user.
d. In the Description field, enter Filter by Region. Descriptions are displayed when
administrators use the Catalog Manager.
e. In the Filter on Column drop-down list, select the Region column.
f. In the Operator drop-down list, select is equal to / is in.
g. Under How should the user choose a value or values?, accept the defaults: Select it from a
drop-down list and Single Value Only.
h. Under What values should be shown to the user?, select Limited Values. Limiting values
prevents a user from choosing values that would result in no data. In this example, when a
Region is selected in the first prompt, only states within that region will be available for
selection in the next prompt.
i. Select Allow user to skip prompt. This will cause a Skip Prompt option to appear. The user
can then click this option to bypass a selection for this filter.
Module 22: Filtering Requests in Oracle Business Intelligence Answers
286 E Oracle BI Suite Enterprise Edition 10g Bootcamp

j. Check your work:


k. Click OK. The prompt is added to the request.

4. Test the prompt.
Module 22: Filtering Requests in Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 287

a. Click the Test Prompts button. The prompt appears in a separate window. Notice the Skip
Prompt option:

b. Click the drop-down list and verify that three regions appear: Central, East, and West.

c. Close the window where the prompt appears.
5. Repeat the steps outlined above and build two more column filter prompts: one for State, and one
for City. Use the screenshots below as a guide.
a. State column filter prompt:

Module 22: Filtering Requests in Oracle Business Intelligence Answers
288 E Oracle BI Suite Enterprise Edition 10g Bootcamp

b. City column filter prompt:

6. Set the execution order of the column filter prompts.
a. If necessary, use the up and down arrows to move the prompts so they appear in the
following order:

7. Test your work.
a. Click Test Prompts.
b. In the Filter By Region prompt, select West from the drop-down list. The next prompt, Filter
By State, appears automatically.
c. In the Filter By State prompt, select CA (California) from the drop-down list. Notice that
only states in the West region appear. The next prompt, Filter By City, appears automatically.





Module 22: Filtering Requests in Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 289

d. In the Filter By City prompt, select San Francisco from the drop-down list. Notice that only
cities in California appear. The filtered request appears, displaying customers who are in the
West region, in the state of California, in the city of San Francisco.

e. Close the prompt test window.
8. Save the request as My Column Filter Prompts in the My Sales folder.
9. Leave Answers open for the next practice.
Module 22: Filtering Requests in Oracle Business Intelligence Answers
290 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Practice 22-3: Adding an Image Prompt to a Request
Goals
To add an image prompt to an Oracle Business Intelligence request
Scenario
Create an image prompt for a map image that users click to return results filtered by
region.
Time
10 15 minutes
Instructions
1. Save an image file in the inetpub\Wwwroot directory so that the Oracle BI Presentation Server
can locate the file.
a. In Windows Explorer, navigate to D:\labs.
b. Copy the file USAMap.jpg. This image has already been defined with hot spots for the
purposes of this practice. The image is a United States map with three drillable regions
defined: West, Central, and East.
c. Paste the file into D:\Inetpub\Wwwroot.
2. Create the following request:

3. Create an image prompt.
a. Click the Prompts tab.
b. Select Create Prompt > Image Prompt.
c. In the Caption field, enter Click a region on the map to see total region revenue
by customer.
d. In the Image URL field, enter http://localhost/USAMap.jpg.
e. Navigate to D:\labs and open the file USAMap.txt. This file has the appropriate HTML
<map> tags and data for the USAMap.jpg file, including the hot spots and image
coordinates.
Module 22: Filtering Requests in Oracle Business Intelligence Answers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 291

f. Select and copy the contents of USAMap.txt and paste them into the HTML image map field.

g. Click Extract Image Map from HTML. The Image Map Prompt Properties dialog box
expands to show the area titles, shapes, and coordinates entered in the HTML field.
h. Enter the following values. Area Title can be any value. Column needs to be a fully qualified
column name in the format Table.Column. The Value column must display values contained
in the request table. Column and Value are case-sensitive.
Area Title Column Value
West Customers.Region West
Central Customers.Region Central
East Customers.Region East
i. Check your work.

j. Click OK. The image prompt is displayed on the Prompts tab.

Module 22: Filtering Requests in Oracle Business Intelligence Answers
292 E Oracle BI Suite Enterprise Edition 10g Bootcamp

k. Click Test Prompts.

l. Move your cursor over the different regions of the map and verify that the region names
appear.
m. Drill down on the West region.
n. Verify that you see the expected results.

o. Close the prompt test window.
p. Save the request as My Image Prompt in the My Sales folder.
4. Leave Answers open for the next practice.

Module 23: Oracle Business Intelligence Answers Advanced Features
E Oracle BI Suite Enterprise Edition 10g Bootcamp 293

Practice 23-1: Combining Requests Using Set
Operations
Goals
To combine the results of two requests using union, union all, intersect, and minus set
operators
Time
1015 minutes
Instructions:
1. If necessary, start Oracle Business Intelligence Presentation Services and log in as Administrator.
To do this, click Start > Programs > Oracle Business Intelligence > Presentation Services and
enter Administrator in the User ID and Password text boxes.
2. Combine criteria from multiple requests using the Union set operator.
a. Click the Answers link to navigate to the Answers start page.
b. Select the SupplierSales subject area.
c. Create the following request and filter:


d. Click Combine with Similar Request. The Subject Area list appears.

Module 23: Oracle Business Intelligence Answers Advanced Features
294 E Oracle BI Suite Enterprise Edition 10g Bootcamp

e. Select the SupplierSales subject area. The Set Operations page appears.

f. Click column names in the selection pane to create the following request and filter:

Please note that the number of columns and data types must be consistent.
Module 23: Oracle Business Intelligence Answers Advanced Features
E Oracle BI Suite Enterprise Edition 10g Bootcamp 295

g. Click the Set button and select the Union set operator (Union is the default).

h. Click the Results tab to display the combined, nonduplicate rows (union) from all requests.
In this example, the table displays all customers with revenue between five thousand and
twenty thousand.

3. Combine criteria from multiple requests using the Union All set operator.
a. Click the Criteria tab to return to the Criteria view.
b. Click the Set button and select the Union All set operator.

Module 23: Oracle Business Intelligence Answers Advanced Features
296 E Oracle BI Suite Enterprise Edition 10g Bootcamp

c. Click the Results tab to display all rows from all requests (Union All). In this example, the
table displays all customers with revenue between five thousand and twenty thousand, and
includes dollar values that meet criteria from both requests.

4. Combine criteria from multiple requests using the Intersect set operator.
a. Click the Criteria tab to return to the Criteria view.
b. Click the Set button and select the Intersect set operator.

Module 23: Oracle Business Intelligence Answers Advanced Features
E Oracle BI Suite Enterprise Edition 10g Bootcamp 297

c. Click the Results tab to display all rows that are common to both requests (Intersect). In this
example, the table displays all customers with revenue between ten thousand and fifteen
thousand.

5. Combine criteria from multiple requests using the Minus set operator.
a. Click the Criteria tab to return to the Criteria view.
b. Click the Set button and select the Minus set operator.

c. Click the Results tab to display all rows from the first request that are not in the other request
(Minus). In this example, the table displays all customers with revenue between five
thousand and ten thousand.

6. Save the combined request as Customers Revenue Between Five and Ten Thousand in
the My Sales folder.
7. Leave Answers open for the next practice.
Module 23: Oracle Business Intelligence Answers Advanced Features
298 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Practice 23-2: Executing a Direct Database Request
Goals
To create and issue a database request directly to a physical back-end database
Scenario
Use Oracle Business Intelligence Answers to set the appropriate privilege to execute
direct database requests and then create, display, and manipulate a direct database
request.
Time
1520 minutes
Instructions:
1. Set the privilege to allow the Administrator user to create and issue direct database requests. Any
user can execute a direct database request, provided that the Administrator has granted the user
this privilege.
a. Click the Settings link and select Administration. The Oracle BI Presentation Services
Administration window opens.

Module 23: Oracle Business Intelligence Answers Advanced Features
E Oracle BI Suite Enterprise Edition 10g Bootcamp 299

b. Click the Manage Privileges link. The Privilege Administration window opens.

c. Scroll to the Answers section.

d. Locate the Execute Direct Database Requests privilege.
e. Click (not permitted). The Change Privilege Permissions window opens.

f. Click the Show users and groups link.
Module 23: Oracle Business Intelligence Answers Advanced Features
300 E Oracle BI Suite Enterprise Edition 10g Bootcamp

g. Next to Administrator, click Add to give the Administrator the privilege to execute direct
database requests.

h. Click Finished in the Change Privilege Permissions window.
i. Click Finished in the Privilege Administration window.
j. Click Close Window in the Oracle BI Presentation Services Administration window.
2. Create and execute a request in Oracle Business Intelligence Answers. You compare the results
of this request with the results of a direct database request in the next step.
a. Click the Answers link
b. Select the SupplierSales subject area.
c. Create the following request and associated filters:

Please note: If you add the Region column to your request to create the filter, delete it from
the request after creating the filter. Another way to do this is to press the CTRL key while
clicking the column in the selection panel, which opens the Create/Edit Filter dialog box
without adding the column to the request.
d. Click Results and verify that the following results are returned:

3. Create and execute a direct database request.
a. Click the Answers link.
Module 23: Oracle Business Intelligence Answers Advanced Features
E Oracle BI Suite Enterprise Edition 10g Bootcamp 301

b. On the Answers start page, click Create Direct Request.

c. In the Connection Pool field, enter Connection Pool. Include the double quotation marks.
This is the name of the connection pool specified in the Physical layer of the repository.
d. In the SQL Statement field, enter the following SQL statement:
SELECT D1_customer2.Name, sum(D1_Orders2.ActlExtnd)
FROM D1_customer2, D1_Orders2
WHERE ( D1_customer2.NewKey = D1_Orders2.CustKey and
D1_customer2.Region = 'East' )
GROUP BY D1_customer2.Name
having 2000000 < sum(D1_Orders2.ActlExtnd)

e. Click Validate SQL and Retrieve Columns and verify that the appropriate columns appear
under Result Columns:

f. Click the Results tab and verify that the same results from the previous step are returned:

4. Leave Answers open for the next practice.
Module 23: Oracle Business Intelligence Answers Advanced Features
302 E Oracle BI Suite Enterprise Edition 10g Bootcamp


Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 303

Practice 24-1: Modifying Views
Goals
To modify the results of a request beyond the default format
Scenario
Add a chart to a request and rearrange how the various views within a request are
displayed.
Time
5 10 minutes
Instructions
In the following exercise, you add and arrange Chart, Table, and Title views within the Compound
Layout view.
1. Start Oracle Business Intelligence Presentation Services and log in as Administrator.
2. Click Answers to clear the workspace and navigate to the Oracle BI Presentation Catalog where
saved requests are stored.
3. Modify the Sales by State request.
a. Select the saved request, Sales by State, from the catalog.
b. Click Modify.
c. From the SalesFacts folder, add the measures Units Ordered and Units Shipped to the Sales
by State request.
d. From the My Filters folder, click the West Region, 1999 filter you created previously to add
it to the request.
e. In the Apply Saved Filter dialog box, click OK.
4. Create a chart view.
a. Click the Show results in a chart view button to display the results of the request. The
default chart type is Vertical Bar.
b. In the Graph drop-down list, at the top of the screen, select Horizontal Bar.
c. Explore chart options.
i. Click the General Chart Properties button to explore chart properties. Notice that
data labels are set to the default, in which they are displayed when you move your
cursor over them.
ii. Click Cancel to close the General dialog box.
iii. Click the Axis Titles and Labels button . Notice that you can set label properties for
the axes in the chart and add custom labels and data formats for the display of data.
iv. Click Cancel to close the Axis Titles & Labels dialog box.
Module 24: Building Views and Charts in Requests
304 E Oracle BI Suite Enterprise Edition 10g Bootcamp

v. Click the Additional Charting Options button and explore the charting options,
including setting gridlines and chart legends, defining behavior when a user clicks a
chart, and setting borders and colors.
vi. Click Cancel to close the Additional Charting Options dialog box.
5. Format the chart to display as a three-dimensional cylinder.
a. In the Type drop-down list, select 3D.
b. In the Style drop-down list, select Rectangle.
6. Add different facts to the chart.
a. In the horizontal axis in the Columns section, uncheck the Dollars fact and select the check
boxes for both Units Ordered and Units Shipped.
b. Click the Redraw button (below the chart view) and notice the results.
7. Change the chart width by clicking and dragging the horizontal bar at the bottom of the chart two
tick marks to the right.
8. Verify that the horizontal and vertical axes titles are displayed, create a title for the chart, and
move the legend.
a. Click the General Chart Properties button . The General dialog box is displayed.
b. Select Custom Title and enter Western Sales 1999 in the field.
c. Click OK.
d. Verify that the title was added to the chart.
e. Click the Additional Charting Options button.
f. Select the Legend tab.
g. Select Bottom in the Location drop-down list.
h. Click OK.
i. Verify that the legend moved from the default location to the bottom of the chart.
j. Roll over the rectangles in the chart and verify that the data value is displayed.
9. Add position formatting to your chart. Set the Units Ordered bars to display as red and the Units
Shipped bars to display as blue.
a. Click the Format Chart Data button . The Format Chart Data dialog box is displayed.
b. In the Positional tab, click the Color button for Position 1.
c. In the Color Selector, select red and click OK.
d. Click the Color button for Position 2.
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 305

e. In the Color Selector, select blue, and click OK.

f. Click OK and verify your results.

10. Add conditional formatting to your chart to indicate states that have crossed a high threshold for
units ordered. Build a condition to display Units Ordered as green in the chart if they exceed
100,000 units.
a. Click the Format Chart Data button .
b. In the Conditional tab of the Format Chart Data dialog box, click the Add Condition button
and select Units Ordered. The Create/Edit Filter dialog box is displayed.
c. Set the Operator to is greater than.
d. Enter the value 100000.
e. Click OK. Verify that the condition is listed in the Conditional tab of the Format Chart Data
dialog box under the Units Ordered column.
f. Click the Color button for the condition.
Module 24: Building Views and Charts in Requests
306 E Oracle BI Suite Enterprise Edition 10g Bootcamp

g. In the Color Selector, select green and click OK.

h. Click OK.
i. Verify that the Units Ordered bar in the chart turns green to indicate that California has more
than 100,000 units ordered.
11. View the results in the Compound Layout.
a. Select Compound Layout from the result view drop-down list.

b. Click the Chart button to add the chart to the Compound Layout.
c. If necessary, scroll down to view the chart.
12. Change the title view in the Compound Layout.
a. Scroll up to see the Title view.
b. Select the Edit View button for the Title view.
c. Enter Western Region Sales 1999 in the Title field.
d. Deselect the Display Saved Name check box.
e. Click OK at the upper-right corner.
f. Verify that the title view is changed.
13. Move the views to change the display.
a. Scroll down to the Chart view.
b. Click the Chart view and drag it to the top of the Compound Layout.
c. Click the Table view and drag it to the right of the Chart view.
d. Drag the Title view to the top of the Compound Layout.
e. Save the request as Western Region Sales with Chart in the My Sales folder.
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 307

14. Notice the results when attempting to save a request using the same name as a saved request.
a. Click the Save button. The Save Request dialog box is displayed.
b. Click OK.
c. Click Yes in the prompt to replace the existing file.
15. Leave Answers open for the next practice.
Module 24: Building Views and Charts in Requests
308 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Practice 24-2: Adding a Column Selector to a Request
Goals
To add a column selector to a request
Scenario
You need to add a column selector view to enable users to dynamically change the
columns that appear in a request.
Time
5 10 minutes
Instructions
Using the Column Selector view in your Compound Layout view, you can provide a quick way for
users to select a column for which they would like to view sales fact results.
1. Click the Answers link to clear the workspace and return to the Answers start page.
2. Click the SupplierSales subject area.
3. Create the following request:

4. Click the Results tab to view your results. By default, the results appear in a Compound Layout
with a title view and a table view.


Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 309

5. Add a Column Selector view to the Compound Layout view.
a. Click the Add View link and select Column Selector from the list.

b. In the Column 1 column (Customer), select the Include Selector option.

Module 24: Building Views and Charts in Requests
310 E Oracle BI Suite Enterprise Edition 10g Bootcamp

c. Add choices to the column selector by clicking the following columns in the selection pane:
Periods.Month, Periods.Year, Customers.Region, Customers.State.

d. Click OK to return to the Compound Layout view.
e. Scroll to the bottom and locate the Column Selector view.
f. Drag the Column Selector view above the Table view in the Compound Layout.
.
6. Use the Column Selector to modify the table results.
a. Select Region from the Column Selector drop-down list and notice the results.

b. Select the other columns from the Column Selector and notice the results.
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 311

7. Save your request as My Column Selector in the My Sales folder.
8. Leave Answers open for the next practice.
Module 24: Building Views and Charts in Requests
312 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Practice 24-3: Performing Common Tasks in Views
Goals
To perform some common tasks while working with views
Scenario
While working with the various results views, you perform common tasks such as
creating a Compound Layout, adding a chart, duplicating a view, previewing how a
view will appear in an Interactive Dashboard, adding a Title view, adding a Column
Selector view, and displaying an image in a view.
Time
15 20 minutes
Instructions:
1. Create a Compound Layout view.
a. Create the following request and associated filter:


Please note: If you add the Region column to your request to create the filter, delete it from
the request after creating the filter.
b. Click Results:

c. Click the Chart button to add a Chart view.
d. Click OK to return to the Compound Layout view.
e. Drag the Chart view above the Table view in the Compound Layout.
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 313

f. Verify your work:

2. Create a duplicate of the Chart view. Duplicating a view is useful when you want to make
changes to a view while preserving the original view, or when you want to create a new view
based on an existing view.
a. Click the Edit View button for the Chart view.
b. Click the Duplicate View button at the top of the workspace.
c. Select Duplicate View from the list.
d. Notice that the duplicate view has the numeral 2 appended to it.

e. Change the chart type to Horizontal Bar.
f. Deselect the check box for the Units Ordered column on the horizontal axis.
g. Select the check box for the Dollars column on the horizontal axis.
Module 24: Building Views and Charts in Requests
314 E Oracle BI Suite Enterprise Edition 10g Bootcamp

h. Click Redraw and check your work.

i. Select Compound Layout from the view drop-down list.
j. Select Add View > Chart: 2.
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 315

k. Drag the Chart (2) view above the Table view and below the original Chart view.

3. Add a Column Selector view to the Compound Layout view.
a. Select Add View > Column Selector.
b. In the Column 1 column (Customer), select the Include Selector check box.
Module 24: Building Views and Charts in Requests
316 E Oracle BI Suite Enterprise Edition 10g Bootcamp

c. Add choices to the column selector by clicking the following columns in the selection pane:
Periods.Month, Periods.Year, Customers.Sales Rep, and Customers.State.

d. Click OK to return to the Compound Layout view.
e. Scroll to the bottom, locate the Column Selector view, and drag it above the Chart view.
f. Check your work:

Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 317

g. Select Month from the Column Selector drop-down list and observe the results:

h. Select the other columns from the Column Selector drop-down list and observe the results.
4. Add a title to the Compound Layout view.
a. Click the Edit View button for the Title view located at the top of the workspace.
b. Select Display Saved Name. When the request is saved, the saved name will appear as the
title.
c. Click the Edit button to the right of the Title field.
d. Make your choices for font, cell, and border options, and then click OK.
e. In the Subtitle field, enter West Region.
f. Click the Edit button to the right of the Subtitle field.
g. Make your choices for font, cell, and border options, and then click OK. Notice that if
Display Results is checked, the results are displayed.
h. In the Logo field, type fmap:Images/report_salesVolume.jpg to display an image in the
Title view. This image file is located in
D:\OracleBI\web\app\res\s_oracle10\images.
i. Click the Edit button to the right of the Logo field.
j. Make your formatting choices, and then click OK.
k. In the Started Time drop-down list, select Display Date and Time to identify when the
request started to execute.
l. Click OK to return to the Compound view layout.
m. Save the request in the My Sales folder as Units Ordered/Shipped Revenue.
Module 24: Building Views and Charts in Requests
318 E Oracle BI Suite Enterprise Edition 10g Bootcamp

n. Check your work. Your Title view should look similar to the following:

5. Preview how the view will appear on an Intelligence Dashboard.
a. Click the Preview button near the top of the workspace. The dashboard preview appears
in a new window.

b. Click the Close button to close the preview window.
6. Leave Answers open for the next practice.
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 319

Practice 24-4: Using the Table View
Goals
To use the Table view to show results in a standard table.
Scenario
You use the Table view to display column totals and grand totals, combine values into
bins, and specify Table view properties, such as location of paging controls, number of
rows per page, green bar styling, and column and table headings.
Time
15 20 minutes
Instructions:
1. Create the following request and associated filters:


Please note: If you add the Year column to your request to create the filter, delete it from the
request after creating the filter.
Module 24: Building Views and Charts in Requests
320 E Oracle BI Suite Enterprise Edition 10g Bootcamp

a. Click Results.

2. Specify report totals.
a. Click the Edit View button for the Table view.
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 321

b. To add a grand total for the report, click the Grand Total button at the top of the
workspace. A grand total is added to the bottom of the table.

c. Click the Grand Total button again to verify that the option Report-Based Total is selected.

This option is selected by default. If this option is not selected, the Oracle BI Server
calculates the total based on the entire result set before applying any filters to the measures.
d. Click the Grand Total button again and select the Format Labels option. Specify caption,
cell, font, and border options as desired.
e. Click the Grand Total button again and select the Format Measure Values option. Specify
cell, font, and border options as desired.
f. Click the Total By button for the Month column to apply totals for the individual column.
g. If desired, click the Total By button for the Month column again to modify the format for
labels and measure values.
Module 24: Building Views and Charts in Requests
322 E Oracle BI Suite Enterprise Edition 10g Bootcamp

h. Your request should look similar to the following:

3. Combine values into bins.
a. Click the Edit Formula button for the Day column. The Edit Column Formula dialog box
opens. Notice the column formula.
b. Click the Bins tab.
c. Click Add Bin. You want to build bins that will compare revenue in the first half of the
months with revenue in the second half of the months.
d. In the Create/Edit Filter dialog box, create a filter where Day is between 19980201 and
19980214.
e. Click OK.
f. In the Edit Bin Name field, enter February First Half.
g. Click OK.
h. Add another bin called February Second Half with a filter where Day is between
19980215 and 19980228.
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 323

i. Repeat the steps and create two more bins: March First Half and March Second Half.

j. Click the Column Formula tab and examine the column formula created when you built the
bins.

k. Click OK to close the Edit Column Formula dialog box.
Module 24: Building Views and Charts in Requests
324 E Oracle BI Suite Enterprise Edition 10g Bootcamp

l. Your results should look similar to the following:

4. Specify Table view properties.
a. Click the Edit Formula button for the Day column.
b. Click the Bins tab.
c. Click Clear All.
d. When prompted with the Clear Bins message, click No to revert to the original formula.
e. Click OK to close the Edit Column Formula dialog box. The table reverts to its original
format.
f. Click the Criteria tab.
g. Delete the filter Name is equal to / is in 2
nd
& Goal Sports Caf.
h. Add the Region column and a filter where Region is equal to / is in Central.
i. Delete the Region column.
j. Click Results.
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 325

k. Click the Table View Properties button near the top of the workspace. The Edit View
dialog box opens.

l. Experiment with specifying the Table view properties: paging controls, rows per page,
display column and table headings, and green bar styling.
m. When you are done, save the request in the My Sales folder as My Table View.
5. Leave Answers open for the next practice.
Module 24: Building Views and Charts in Requests
326 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Practice 24-5: Working with Views
Goals
To add a variety of views to results.
Scenario
You add a variety of views to the results of a request to help you look at data in
meaningful and intuitive ways. Preparing multiple views of results helps users to
identify trends and relationships in data. You create a request and add Filters, Legend,
Narrative, Ticker, and Logical SQL views. Finally, you add a View Selector view so that
users can choose the view thats useful to them.
Time
15 20 minutes
Instructions:
1. Create the following request:

2. Click Results.
3. Add a Filters view.
a. Select Add View > Filters to add a Filters view.
b. Drag the Filters view above the Table view and below the Title view.
c. Drill down on the Central region.
d. Notice how the Filter view changes after drill down. This is because drilling down limits the
result set and automatically creates a filter. The Filter view tracks the results.
e. Drill down on the Gulf sales district.
f. Drill down on Mary Silver.
g. Check your results:

Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 327

h. Click the Criteria tab. Notice that columns and filters have been automatically added to the
original request.


i. Remove all filters.
j. Remove the Sales Rep and Customer columns.
4. Add a Legend view.
a. Create a conditional format for the Dollars column where the background cell color for
dollars less than one million is red, dollars between one million and two million is yellow,
and dollars greater than two million is green.

b. Click Results.
c. Delete the Filters view you created in an earlier step.
d. Select Add View > Legend.
e. Set legend items per row to 3.
Module 24: Building Views and Charts in Requests
328 E Oracle BI Suite Enterprise Edition 10g Bootcamp

f. Populate title and items based on the following screenshot. Use the Sample Text format
buttons to set colors to match those used in the conditional formatting for the Dollars column.

g. Click OK to return to the Compound Layout view.
h. Check your work.

5. Add a Narrative view.
a. Select Add View > Narrative.
b. In the Prefix field, enter This report shows sales by sales district. The sales
districts are:.
c. Select the text in the Prefix field and click the Bold button .
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 329

d. Place your cursor at the end of the text, after the close bold tag, and click the Line Break
button twice.
e. In the Narrative field, enter @2. This will include the results from the second column (Sales
District) in the narrative text. You use @n to return results from a column, where n
represents the desired column based on the sequence of columns in the request. In this
example, Sales District is the second column in the request.
f. Place your cursor after @2 and click the Line Break button.
g. In the Postfix field, enter Please address sales marked as red.
h. Bold the text in the Postfix field.
i. Place your cursor at the beginning of the text in the Postfix field, before the bold tag, and
click the Line Break button once.
j. Check your work.

Module 24: Building Views and Charts in Requests
330 E Oracle BI Suite Enterprise Edition 10g Bootcamp

k. Click OK to return to the Compound Layout view and check your results.


6. Add a Ticker view.
a. Select Add View > Ticker.
b. In the Beginning Text field, enter Total Sales by Sales District between the <tr> and
<td> tags.
c. In the Row Format field, enter @2[br/]@3. This will display data from columns two and
three in separate rows in the ticker. Column 2 is Sales District and column 3 is Dollars.
Module 24: Building Views and Charts in Requests
E Oracle BI Suite Enterprise Edition 10g Bootcamp 331

d. Check your work.

e. Accept all other defaults and click OK to return to Compound Layout view.

7. Add a Logical SQL view. This view is useful for Administrators and developers for debugging
purposes, and is usually not included in results for typical users.
a. Select Add View > Logical SQL.
b. Verify that a logical SQL view was added to the Compound Layout and that the logical SQL
for the query appears.

8. Add a View Selector view. This view allows users to select among available views and display
the most useful view.
a. Select Add View > View Selector.
Module 24: Building Views and Charts in Requests
332 E Oracle BI Suite Enterprise Edition 10g Bootcamp

b. In the Caption text box, enter Select a view:
c. Set the Caption Position to Above.
d. Select the Table view in the Available Views list and click the right-arrow button to add
it to the Views Included list.
e. Repeat the above step to add the following views to the Views Included list: Logical SQL,
None, and Narrative.
f. In the Views Included list, select the None view and click the down-arrow button to move
it to the bottom of the list. The views appear in the list in the order that they appear in the
view selector. Note that you can also rename views in the list to give them names that are
more meaningful to your users.
g. Check your work.

h. Click OK.
i. Scroll down to the bottom of the Compound Layout. In the View Selector view, toggle
between the different available views and verify that each is displayed.
9. Save the request as My Views.
10. Leave Answers open for the next practice.
Module 25: Showing Results with Pivot Tables
E Oracle BI Suite Enterprise Edition 10g Bootcamp 333

Practice 25-1: Showing Results with Pivot Tables
Goals
To use the Pivot Table view to display results in Oracle Business Intelligence Answers
Scenario
You use a Pivot Table view to take row, column, and section headings and swap them
around to obtain different perspectives of the data. You create multiple drop-down lists
for attributes; add totals; override default aggregation rules for measures; display an
items relative value; use calculations; and modify pivot table formatting.
Time
2025 minutes
Instructions
1. Create a request and add a Pivot Table view.
a. Create the following request and associated filter:


b. Click the Pivot Table button at the top of the workspace to add a Pivot Table view. The
Pivot Table template appears.

c. Drag Year and Region to the Pages section to create a prompt for the pivot table.
d. Drag Generic Description to the Columns section. Make sure Generic Description is below
Measure Labels.
Module 25: Showing Results with Pivot Tables
334 E Oracle BI Suite Enterprise Edition 10g Bootcamp

e. Check your work:

f. Verify that Display Results is selected. If not, select it.
g. Your results should look similar to the following:

2. Create separate drop-down lists for each of the attributes in the Pages layout area.
a. Click the More Options button for Region and select Start New Page Drop Down.

Module 25: Showing Results with Pivot Tables
E Oracle BI Suite Enterprise Edition 10g Bootcamp 335

b. Check your results. Notice that there are now two drop-down lists in the pivot table.

3. Add totals to the pivot table.
a. Click the Totals button in the Columns area and select After.
b. Click the Totals button in the Rows area and select After.
c. Your results should look similar to the following:


4. Override the default aggregation rule for the Dollars measure. The default aggregation rule is
specified in the Oracle Business Intelligence repository, or by the original author of a report. In
this example, the default aggregation rule for Dollars is SUM.
a. What is the total dollar amount for 2
nd
& Goal Sports Caf? You compare this value with the
value after you override the default aggregation rule in the next steps.


b. Click the More Options button for the Dollars measure.
Module 25: Showing Results with Pivot Tables
336 E Oracle BI Suite Enterprise Edition 10g Bootcamp

c. Select Aggregation Rule > Average.

d. What is the total dollar amount now for 2
nd
& Goal Sports Caf?


e. Check your results. Notice that the total dollar amount is now the average rather than the
sum.

f. Experiment with some of the other available aggregation rules and notice how the value
changes for total dollars.
g. After you finish, reset the aggregation rule to Default.
5. Add green bar styling and formatting to the Pivot table to make it more visually appealing.
a. Click the Pivot Table View Properties button near the top of the workspace. The Edit
View dialog box is displayed.
b. Select the Enable alternating row green bar styling check box.
c. In the alternate drop-down list, select All Columns.
d. If desired, click the Set alternate format button to modify the formatting of the
alternating rows.
e. Click OK to close the Edit View dialog box.
Module 25: Showing Results with Pivot Tables
E Oracle BI Suite Enterprise Edition 10g Bootcamp 337

f. Check your work. Your results should look similar to the following:

6. Add formatting for sections and section content.
a. Drag Region from Pages to Sections. Notice that the Pivot table is now divided into three
sections, one for each region.

b. Click the Section Properties button .
c. Change the column heading display to Left.
d. Click OK to close the Sections Properties dialog box.
e. Check your work. Your results should look similar to the following:

7. Show dollars as a percentage of the total for each section.
a. Click the More Options button for Dollars.
b. Select Duplicate Layer.

c. Click the More Options button for the Dollars column that you just created, and select
Format Headings. The Edit Format dialog box is displayed.
d. In the Caption field, enter % Dollars.
Module 25: Showing Results with Pivot Tables
338 E Oracle BI Suite Enterprise Edition 10g Bootcamp

e. Click OK.
f. Click the More Options button for % Dollars, and select Show Data As > Percent of >
Section.

This displays the percentage of the section that this value constitutes.
g. Your results should look similar to the following:

h. Which customer in the Central region bought the highest percentage of sugar in 1998?


i. Which customer in the Central region bought the highest percentage of white sugar in 1999?


8. Build a calculation that identifies combined dollar sales and percentages for powdered sugar and
white sugar only.
a. Click the More Options button for the Generic Description column.
b. Select New Calculated Item. The Calculated Item dialog box opens.
c. In the Name field, enter Powdered & White.
d. In the Function drop-down list, select Sum.
Module 25: Showing Results with Pivot Tables
E Oracle BI Suite Enterprise Edition 10g Bootcamp 339

e. On the right, select the Powdered Sugar and White Sugar values.

f. Click OK to close the Calculated Item dialog box.
g. Your results should look similar to the following:

h. Which customer in the Central region purchased the highest percentage of powdered and
white sugar in 1998?


i. Save the request as My Pivot in the My Sales folder.
9. In the Choose a result view drop-down list, select Compound Layout.

10. Delete the Table view in the Compound Layout view.
11. Click the Pivot Table button to add the pivot table to the Compound Layout.
12. Save the request again.
13. Leave Answers open for the next practice.
Module 25: Showing Results with Pivot Tables
340 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Solutions 25-1: Showing Results with Pivot Tables
Answers
4.a. What is the total dollar amount for 2
nd
& Goal Sports Caf?
$3434
4.d. What is the total dollar amount now for 2
nd
& Goal Sports Caf?
$1145
7.h. Which customer in the Central region bought the highest percentage of sugar in 1998?
Penn Brewery: 18.7%
7.i. Which customer in the Central region bought the highest percentage of white sugar in
1999?
Demos Steak and Spaghetti House: 4.6%
8.h. Which customer in the Central region purchased the highest percentage of powdered and
white sugar in 1998?
Demos Steak and Spaghetti House: 6.3%
Module 26: Creating Interactive Dashboards
E Oracle BI Suite Enterprise Edition 10g Bootcamp 341
Practice 26-1: Creating a New Interactive Dashboard
Page
Goals
To create a new Interactive Dashboard page in Oracle Business Intelligence and populate
it with content
Scenario
You create a new Interactive Dashboard and populate it with request content created in
previous practices.
Time
510 minutes
Instructions
You now build a page in My Dashboard containing a report you created in an earlier practice. This
dashboard presents you with regional sales data when you load it after logging in to Oracle Business
Intelligence Presentation Services.
1. If necessary, start Oracle Business Intelligence Presentation Services and log in as Administrator.
2. Click the Dashboards link.
3. Click the Page Options button and select Edit Dashboard in the upper-right corner.
4. Create a new Interactive Dashboard page.
a. Click the Add Dashboard Page button . The Add Dashboard Page dialog box is displayed.
b. Enter Western Region Analytics in the Page Name field.
c. Click OK. Notice that the new Interactive Dashboard page has one column by default.
5. Add a request to the section.
a. Expand the My Sales folder.
b. Drag the Western Region Sales with Chart request onto the default column. Notice that a
section is added and the request is embedded in it.

c. Rename the report in the dashboard.
Module 26: Creating Interactive Dashboards
342 E Oracle BI Suite Enterprise Edition 10g Bootcamp
i. Click the Rename button for the Western Region Sales with Chart report object in the
Dashboard Editor.
ii. In the Rename dialog box, change the name to Western Region Sales.
iii. Click OK.
d. Click the Save button in the upper-right corner.
e. Select the Western Region Analytics page in the Interactive Dashboard and verify that it
includes the request.

f. Which view do you see in the dashboard page?


Module 26: Creating Interactive Dashboards
E Oracle BI Suite Enterprise Edition 10g Bootcamp 343
Solutions 26-1: Creating a New Interactive Dashboard
Page
Answers
5.f. Which view do you see on the dashboard page?
Compound Layout view
Module 26: Creating Interactive Dashboards
344 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 26-2: Using Prompts to Filter Interactive
Dashboard Data
Goals
To create a prompt and add it to an Interactive Dashboard
Scenario
You add a Presentation variable to a request to be populated by a dashboard prompt. You
then create an Interactive Dashboard prompt and add it to the Interactive Dashboard page
created in the previous practice.
Time
1015 minutes
Instructions
1. Prepare a request to use Interactive Dashboard prompts, including a Presentation variable.
a. Click the Answers link.
b. Select the Sales By State request from the My Sales folder.
c. Click Modify.
d. In the selection panel, add the Customers > Region column.
e. Click the Add Filter button in the Region column. The Create/Edit Filter dialog box is
displayed.
f. Set the filter operator to is prompted and click OK.
g. Click the Add Filter button in the State column. The Create/Edit Filter dialog box is
displayed.
h. Enter AZ in the Value field to create an initial value for the prompt.
i. Click OK.
j. Click the Edit Formula button in the Region column. The Edit Column Formula dialog box
is displayed.
k. Select the Custom Headings check box and enter Region Variable as the Column
Heading.
l. In the Column Formula field, select the Customers.Region column and press the Delete key.
m. Click the Variable button and select Presentation. The Insert Variable dialog box is
displayed.
Module 26: Creating Interactive Dashboards
E Oracle BI Suite Enterprise Edition 10g Bootcamp 345
n. Enter FavoriteRegion as the Variable Name and do not set a default value.

o. Click OK.
p. Add single quotation marks around the variable in the Column Formula field. Because the
variable will be treated as a string, it requires single quotation marks in the formula.

q. Click OK.
r. Save the request as Sales by Region - State in the My Sales folder.
2. Create the prompt.
a. Click the Answers link.
b. Click the New Dashboard Prompt button in the selection pane beneath the Catalog tab.
c. Select the Supplier Sales subject area from the Subject Area pop-up window.
d. Select Page from the Scope drop-down list to limit the filters scope to the current page in
the Interactive Dashboard.
e. Expand the Customers table and select the Region column.



Module 26: Creating Interactive Dashboards
346 E Oracle BI Suite Enterprise Edition 10g Bootcamp
f. Set or enter the following:
Operator
is equal to/is in
Control
Drop-down list
Label Select Region:
g. In the Set Variable column, select PresentationVariable from the drop-down list and enter
FavoriteRegion in the text field.

h. In the Customers table in the selection pane on the left side, select the State column.
i. Set or enter the following:
Operator
is equal to/is in
Control
Drop-down list
Label Select State:
j. Select the Constrain check box to constrain values for the State prompt based on the value
selected for the Region prompt. Deselect the (All Choices) check box.
k. Save the prompt as Region and State Prompt in the My Sales folder.
3. Edit the Western Region Analytics page to add the dashboard prompt you created.
a. Click the Dashboards link.
b. Click the Page Options button and select Edit Dashboard in the upper-right corner.
c. Select Western Region Analytics from the Page drop-down list.

d. Click the Add Column button. A new column is added on the right.
e. Drag Section 1 from the left column to the right column.

f. Expand the My Sales folder.
g. Drag the Region and State Prompt object onto the empty column on the left.
Module 26: Creating Interactive Dashboards
E Oracle BI Suite Enterprise Edition 10g Bootcamp 347
h. Drag the Sales By Region - State object below the Region and State Prompt object.

i. Click Save.
j. Click the Collapse button for the Western Region Sales request in the dashboard page so
that you can view the prompt without distraction.
Note: When the dashboard displays, the Region Variable is not populated in the request and
the initial value for State is AZ.

4. Test the prompt.
a. In the Select Region: drop-down list, select West.
b. Click the Select State: drop-down list. Notice that all the available states are in the West
region due to the constraint you set.
c. Select CA from the prompt drop-down list.
Module 26: Creating Interactive Dashboards
348 E Oracle BI Suite Enterprise Edition 10g Bootcamp
d. Click Go. Notice that the data in the request changes to show only data from California and
that the dashboard prompt has set the FavoriteRegion Presentation variable to West based
on the prompt.

5. Leave Answers open for the next practice.
Module 27: Configuring Interactive Dashboards
E Oracle BI Suite Enterprise Edition 10g Bootcamp 349

Practice 27-1: Embedding Content in an Interactive
Dashboard
Goals
To add content other than requests to an Interactive Dashboard
Scenario
You have an Interactive Dashboard with content generated by Oracle Business
Intelligence requests. You want to add additional content from sources other than a
request. You add a folder object and embed a PDF file and an HTML link.
Time
10 15 minutes
Instructions
1. If necessary, start Oracle Business Intelligence Presentation Services and log in as Administrator.
2. Click the Page Options button and select Edit Dashboard.
3. Select Western Region Analytics from the Page drop-down list.
4. Add an existing folder to display information on the dashboard page.
a. Add a new column to the dashboard page.
b. Click and drag a new Section object onto the right column.
c. Click and drag the Folder object onto the new section you added in the previous step.
d. Click the Properties button in the Folder object.
e. In the Folder Properties dialog box, click the Browse button.
f. In the Choose Folder dialog box, select the My Sales folder and click OK.
g. Select the Expand check box.
h. Click OK.
Module 27: Configuring Interactive Dashboards
350 E Oracle BI Suite Enterprise Edition 10g Bootcamp

i. Click Save and view the results. You can collapse other objects on the Interactive Dashboard
page to more easily view the column and folder you added.

5. Add an embedded content object.
a. In Windows Explorer, navigate to D:\oracle\product\10.2.0\db_1\oui\guide.
b. Copy the file oui.pdf.
c. Paste the file into D:\Inetpub\Wwwroot.
d. In Presentation Services, click the Page Options button and select Edit Dashboard.
e. Drag the Embedded Content object onto the section below the Sales By Region - State
request.
f. Click the Properties button in the Embedded Content object.
g. Enter the following values:

h. Click OK.
i. Click Save.
View the results in the dashboard. You may have to scroll down to see the embedded content. If the PDF file
does not appear in the dashboard, you may have to minimize the browser to accept the Adobe license
agreement. If Adobe asks if you want to check for updates, click Cancel.
Module 28: Customizing the Oracle Business Intelligence User Interface
E Oracle BI Suite Enterprise Edition 10g Bootcamp 351

Practice 28-1: Modifying Oracle Business Intelligence
Cascading Style Sheets
Goals
To locate and modify cascading style sheets used for Oracle Business Intelligence
Scenario
You want to make global changes to the appearance of Interactive Dashboards and
requests. You use cascading style sheets to make changes to the default font and colors.
Time
30 minutes
Instructions
1. Locate the folder containing the cascading style sheets (CSS) for Oracle Business Intelligence
and create a backup copy of the folder.
a. In Windows Explorer, navigate to D:\OracleBI\web\app\res and copy the s_oracle10 folder.
b. Navigate to the D:\OracleBIData\web\res folder and paste the s_oracle10 folder.
c. Rename the folder s_oracle10_backup.
2. View style sheet formatting for an existing request. You compare this current formatting with the
results of your edits to the appropriate cascading style sheet.
a. If necessary, start Oracle Business Intelligence Presentation Services and log in as
Administrator.
b. Click Answers.
c. Select My Folders > My Sales > Formatted Sales By State.
d. What is the background color of the table cells?


e. What is the background color of the column headings?


3. Edit the Views.css style sheet.
a. In Windows explorer, navigate to D:\OracleBI\web\app\res\s_oracle10\b_mozilla_4.
b. Right-click views.css and select Open With > Notepad.
c. Find the .ResultsTable class and make the following edits:
font-family times, serif
font size 16pt
background-color #F0E68C
d. Find the .ColumnHdg class and make the following edits:
Module 28: Customizing the Oracle Business Intelligence User Interface
352 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Font size 24pt
background-color #48D1CC
e. Save and close Views.css.
4. View the style sheet changes in Answers.
a. Press and hold Ctrl and click the browser Refresh button (Ctrl + refresh the browser). If you
do not get the expected results, restart Oracle BI Presentation Services.
b. Select My Folders > My Sales > Formatted Sales by State.
c. What is the background color of the table cells?


d. What is the background color of the column headings?


e. Navigate to other saved requests. Do other requests have the same style changes?


5. Restore the original views.css file.
a. Delete the edited views.css file in D:\OracleBI\web\app\res\s_oracle10\b_mozilla_4.
b. Copy the original views.css file from
D:\OracleBIData\web\res\s_oracle10_backup\b_mozilla_4 to
D:\OracleBI\web\app\res\s_oracle10\b_mozilla_4.
c. Press and hold Ctrl + refresh the browser and verify that the original styles are applied.
Note: If the browser refresh does not work properly, perform the following steps:
i. Log out and close the browser window.
ii. Delete the views.css file.
iii. Copy the original views.css file back into D:\OracleBI\web\app\res\s_oracle10.
iv. Open a new browser window.
v. Clear the browser cache by selecting Tools > Internet Options > Delete Files.
Additionally, clear the browser history.
vi. Log back into Answers.
Module 28: Customizing the Oracle Business Intelligence User Interface
E Oracle BI Suite Enterprise Edition 10g Bootcamp 353

Solutions 28-1: Modifying Oracle Business Intelligence
Cascading Style Sheets
Answers
2.f. What is the background color of the table cells?
Light blue
2.g. What is the background color of the column headings?
Medium blue
4.c. What is the background color of the table cells?
Gold
4.d. What is the background color of the column headings?
Aqua blue
4.e. Navigate to other saved requests. Do other requests have the same style changes?
Yes
Module 28: Customizing the Oracle Business Intelligence User Interface
354 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Practice 28-2: Using Instanceconfig.xml to Administer
Oracle Business Intelligence Answers
Goals
To use instanceconfig.xml to modify default settings in Oracle Business Intelligence
Answers
Scenario
You use instanceconfig.xml to override some of the default settings in Oracle BI
Answers. You specify the maximum number of records to process in a pivot table and
the maximum number of populated cells to process in a pivot table.
Time
1015 minutes
Instructions:
1. Specify the maximum number of records to process in an Answers Pivot Table view.
a. Navigate to D:\OracleBIData\web\config.
b. Right-click instanceconfig.xml and open it with Notepad.
c. At the end of the file, before the tag closing the ServerInstance definition, add the following
entry: <CubeMaxRecords>1</CubeMaxRecords>.

d. Save and close instanceconfig.xml.
e. Restart the Oracle BI Presentation Server service.
f. Log in to Presentation Services as Administrator.
g. Open the My Pivot request you created in an earlier practice.
Module 28: Customizing the Oracle Business Intelligence User Interface
E Oracle BI Suite Enterprise Edition 10g Bootcamp 355

h. Notice that the following error is returned:

i. What is the meaning of this error?




j. Modify the entry in instanceconfig.xml to <CubeMaxRecords>20000</CubeMaxRecords>.
k. Restart the Oracle BI Presentation Server service.
l. Log in to Presentation Services as Administrator.
m. Open the My Pivot request you created in an earlier practice.
n. Verify that the Pivot table records are returned as expected.

2. Specify the maximum number of populated cells to process in an Answers Pivot table.
a. If necessary, open Instanceconfig.xml in Notepad.
Module 28: Customizing the Oracle Business Intelligence User Interface
356 E Oracle BI Suite Enterprise Edition 10g Bootcamp
b. Add the following entry: <CubeMaxPopulatedCells>1</CubeMaxPopulatedCells>.

c. Save and close instanceconfig.xml.
d. Restart the Oracle BI Presentation Server service.
e. Log in to Presentation Services as Administrator.
f. Open the My Pivot request.
g. Notice that the following error is returned:

h. What is the meaning of this error?




i. Modify the entry in instanceconfig.xml to
<CubeMaxPopulatedCells>150000</CubeMaxPopulatedCells>.
j. Restart the Oracle BI Presentation Server service.
k. Log in to Presentation Services as Administrator.
l. Open the My Pivot request.
Module 28: Customizing the Oracle Business Intelligence User Interface
E Oracle BI Suite Enterprise Edition 10g Bootcamp 357

m. Verify that the Pivot table records are returned as expected.

Module 28: Customizing the Oracle Business Intelligence User Interface
358 E Oracle BI Suite Enterprise Edition 10g Bootcamp
Solutions 28-2: Using Instanceconfig.xml to Administer
Oracle Business Intelligence Answers
Answers
1.i. What is the meaning of this error?
The maximum number of records that can be processed by a pivot table is set too low in
instanceconfig.xml.
2.h. What is the meaning of this error?
The maximum number of populated cells that can be processed by a pivot table is set too
low in instanceconfig.xml.
Module 28: Customizing the Oracle Business Intelligence User Interface
E Oracle BI Suite Enterprise Edition 10g Bootcamp 359

Practice 28-3: Using XML Message Files to Administer
Oracle Business Intelligence Answers
Goals
To use XML message files to administer Oracle Business Intelligence Answers
Scenario
You use XML message files to override the default values distributed with Oracle BI
Presentation Services. You add a default header and footer to new reports and
automatically include links in reports that are embedded in dashboards.
Time
1015 minutes
Instructions:
1. Use a custom XML message file to add a default header and footer to new reports. An .xml
template has been provided to you for the purposes of this practice.
a. Navigate to D:\labs.
b. Copy HeaderFooter.xml.
c. Paste HeaderFooter.xml into D:\OracleBIData\web\msgdb\l_en\CustomMessages. Note that
you need to create the required folders under D:\OracleBIData\web\msgdb.
d. Right-click HeaderFooter.xml and open with Notepad.
e. Locate the caption tags between the pageHeader tags.
f. Change AAAA to ABC Company.
g. Locate the caption tags between the pageFooter tags.
h. Change AAAA to Confidential.
i. Save the file and close Notepad.
Module 28: Customizing the Oracle Business Intelligence User Interface
360 E Oracle BI Suite Enterprise Edition 10g Bootcamp
j. Double-click HeaderFooter.xml and verify your work.

k. Close HeaderFooter.xml.
2. Check your work.
a. Log out of Presentation Services.
b. Restart the Oracle BI Server and Oracle BI Presentation Server services.
c. Log in to Presentation Services as Administrator.
d. Create a new request.
e. Click Results.
f. Verify that the header and footer appear in the request. Your results should look similar to
the following:

Module 28: Customizing the Oracle Business Intelligence User Interface
E Oracle BI Suite Enterprise Edition 10g Bootcamp 361

g. Save the request as HeaderFooter in the My Sales folder.
3. Use a custom XML message file to automatically include links in reports that are embedded in
dashboards. By default, the results of embedded reports within a dashboard are displayed without
including the Modify, Print, Refresh, Download, and Add to Briefing Book links. You modify an
.xml message file template to include these links.
a. Select My Dashboard.
b. Open the Dashboard Editor.
c. Add the HeaderFooter request to the dashboard.
d. Save the dashboard and observe the results. The table appears without the Modify, Refresh,
Print, Download, and Add to Briefing Book links.

e. Navigate to D:\labs.
f. Copy Links.xml.
g. Paste Links.xml into D:\OracleBIData\web\msgdb\l_en\CustomMessages.
h. Right-click Links.xml and open with Notepad.
i. Add the attribute values to the file so that links=mfrdg.
j. Save the file and close Notepad.
k. Double-click Links.xml and verify your work.

l. Close Links.xml.
4. Check your work.
a. Log out of Presentation Services.
b. Restart the Oracle BI Server and Oracle BI Presentation Server services.
c. Log in to Presentation Services as Administrator.
d. Navigate to My Dashboard and open the Dashboard Editor.
Module 28: Customizing the Oracle Business Intelligence User Interface
362 E Oracle BI Suite Enterprise Edition 10g Bootcamp
e. Embed another instance of the HeaderFooter request in the dashboard.
f. Save the dashboard and observe the results. The second instance of the HeaderFooter request
includes the links.

Module 29: Administering the Oracle Business Intelligence Web Catalog
E Oracle BI Suite Enterprise Edition 10g Bootcamp 363

Practice 29-1: Administering Users and Groups
Goals
To administer dashboard access and permissions for users and groups
Scenario
You are the Oracle Business Intelligence administrator and must manage dashboard
access and permissions so that only the appropriate users see certain information. You will
create a new group with an associated shared Interactive Dashboard, add users to the
group, and set dashboard permissions for the new users.
Time
10 20 minutes
Instructions
In this practice, first you log in to Oracle Business Intelligence as a particular user to ensure that the
user is authenticated. Then you add that user to a new group and explore the default Interactive
Dashboard for the group, adding content first from individual folders in the Presentation Catalog to
determine the impact of dashboard and request privileges.
1. Start Oracle Business Intelligence Presentation Services and log in as CCHENG to authenticate
the user.
a. Select Start > Programs > Oracle Business Intelligence > Presentation Services.
b. Enter the following information to log in:
User ID CCHENG
Password CCHENG
c. Click Log In.
d. Verify that you are logged in as CCHENG by confirming the welcome message. CCHENG is
an authenticated user.
e. Click Log Out.
2. Log back in to Oracle Business Intelligence Presentation Services as Administrator.
3. Click Settings and select Administration. The Oracle BI Presentation Services Administration
window opens.
4. Create a new non-system Catalog group and associate a default dashboard with the group.
a. Click the Manage Presentation Catalog Groups and Users link. The Presentation Catalog
Security: Groups and Users window opens.
b. Click the Create a new Catalog Group link.
Module 29: Administering the Oracle Business Intelligence Web Catalog
364 E Oracle BI Suite Enterprise Edition 10g Bootcamp

c. In the Create Catalog Group window, enter the following:
Group Name Western Region Sales
Password Administrator
Verify Password Administrator
Dashboard Name Western Region Sales
Dashboard Builder Administrator
d. Click Finished.
5. Add users to the group.
a. Locate the Western Region Sales group you just created in the Existing Catalog Groups and
Users list and click its Edit button. Notice that there are no members in this group.
b. Click the Add New Member link. The Add Member to Group window appears.
c. Click the Show users and groups link.
d. In the Catalog Groups and Users list, click the Add link for Administrator. Notice that
Administrator is now listed as a member under Group Membership.

e. Click the Add New Member link.
f. Use the steps above to add the user CCHENG to the group.
g. Click Finished.
h. Click Finished.
i. Click Close Window to close the Oracle BI Presentation Services Administration window.
6. Verify that a new shared Presentation Catalog folder and shared dashboard have been created for
the new group.
a. Click Answers.
b. In the selection pane, verify that a new shared folder named Western Region Sales has been
created.

Module 29: Administering the Oracle Business Intelligence Web Catalog
E Oracle BI Suite Enterprise Edition 10g Bootcamp 365

c. Click the Dashboards tab and verify that the groups default dashboard has been added.

7. Click Dashboards and then click the Western Region Sales dashboard link at the top of the
screen. Notice that the dashboard is empty.
8. Remaining logged in as Administrator, add content from your personal Catalog folders to the
Western Region Sales dashboard. Notice that you automatically have permissions to modify the
new group dashboard because you specified Administrator as the Dashboard Builder when you
created the Western Region Sales group and its associated dashboard above.
a. Click the here link to add content.
b. Add the Western Region Sales with Chart request from My Folders > My Sales to the
dashboard page.
c. Click the Save button and view the results. The request should appear in the group dashboard
because you are logged in as Administrator and therefore have access to the request youve
added.
9. Click Log Out.
10. Log back in as CCHENG. Notice that CCHENG has no content in the My Dashboard page.
11. Click the Dashboards link.
12. Click the Western Region Sales dashboard link. Notice that while CCHENG has access to the
shared dashboard due to her membership in the Western Region Sales Catalog group, she cannot
see the content you added to the dashboard as Administrator because it is in that users personal
folder. Also note that CCHENG cannot see the Edit Dashboard link, as she was not designated as
the Dashboard Builder and has not been granted change permissions on the dashboard.
13. Give CCHENG explicit change permissions for the dashboard. This will not permit the user to
view the request, but will allow edits of content in the dashboard.
a. Click Log Out.
b. Log back in as Administrator.
c. Click Settings and select Administration. The Oracle BI Presentation Services
Administration window opens.
d. Click the Manage Interactive Dashboards link.
e. Click the Permissions button for the Western Region Sales dashboard. Notice that the
Western Region Sales group has Traverse Folder permissions on the dashboard, which is
why CCHENG and other members of the group can view the dashboard.
f. Click the Show users and groups link.
g. Click the Add link for CCHENG.
Module 29: Administering the Oracle Business Intelligence Web Catalog
366 E Oracle BI Suite Enterprise Edition 10g Bootcamp

h. Click the control property link until it changes to Change/Delete.


i. Click Finished.
j. Click Finished.
k. Click Close Window.
14. Click Log Out.
15. Log back in as CCHENG.
16. Click Dashboards and then click the Western Region Sales dashboard link.
17. Click Page Options and select Edit Dashboard. Notice that the Western Region Sales with
Chart request is present, but that it appears with a warning icon indicating that it is not present in
the catalog. This is because the request is still available only in the Administrators personal
folder in the catalog.

18. Click Save. CCHENG still cannot see any content. This is because CCHENG does not have
permission to access this content.
19. Click Log Out. In the next practice, you will copy the request to the Western Region Sales
shared folder and assign necessary privileges for all content so that it will be available to all
members of the group. Finally, you will delete all personal folder content from the shared
dashboard so that anyone later added to the Western Region Sales group will automatically have
access to the dashboard and its embedded content.
Module 29: Administering the Oracle Business Intelligence Web Catalog
E Oracle BI Suite Enterprise Edition 10g Bootcamp 367

Practice 29-2: Managing the Catalog
Goals
To use the Oracle Business Intelligence Catalog Manager to manage the catalog
Scenario
You need to give a group permission to view specific content on a shared dashboard. You
use the Oracle Business Intelligence Catalog Manager to copy a request from one user
and make it available to a group.
Time
10 15 minutes
Instructions
By default the Presentation Services Catalog autosaves every five minutes. To ensure that you see
changes from the previous practice, allow five minutes between the completion of the previous
practice and the start of this practice.
1. Stop the Oracle BI Presentation Server service.
2. Select Start > Programs > Oracle Business Intelligence > Catalog Manager. The Catalog
Manager may take up to a minute to start.
3. Open the Presentation Catalog.
a. Select File > Open Catalog from the menu. The Open Catalog dialog box is displayed.
b. Enter the following:
Type
Offline
Path
D:\OracleBIData\web\catalog\default
c. Click OK.
4. View the contents of the Presentation Services catalog.
a. Click users in the left pane.
b. Select the administrator folder, then select the My Sales folder. Notice the requests and
prompts you created in previous practices.
c. Select the _portal folder to see the dashboard pages you created.
5. Add the Western Region Sales with Chart request to the Western Region Sales shared folder.
a. Select users > administrator > My Sales.
b. Copy the Western Region Sales with Chart request.
c. Select shared > Western Region Sales.
d. Paste the Western Region Sales with Chart request into the Western Region Sales folder.
e. Select the Western Region Sales with Chart request in the Western Region Sales folder.
Module 29: Administering the Oracle Business Intelligence Web Catalog
368 E Oracle BI Suite Enterprise Edition 10g Bootcamp

f. Select Edit > Permissions. In the Permissions dialog box, verify that the Western Region
Sales group appears in the Users and groups (Explicit permissions) list.
g. Change the Permissions type to Read using the drop-down list.

h. Click OK.
6. Add read permissions to the West Region, 1999 saved filter that is included in the shared request.
a. Select users > administrator > _filters > SupplierSales.
b. Select the West Region, 1999 filter.
c. Select Edit > Permissions.
d. In the Permissions dialog box, select the Western Region Sales group in the Additional
users and groups list.
e. Click the < button to move the group to the Users and groups (Explicit permissions) list.
f. Verify that the Permissions type is Read.

g. Click OK.
h. Select File > Exit to close the Catalog Manager.
i. Start the Oracle BI Presentation Server service.
Module 29: Administering the Oracle Business Intelligence Web Catalog
E Oracle BI Suite Enterprise Edition 10g Bootcamp 369

7. Start Oracle Business Intelligence Presentation Services and log in as CCHENG.
8. Click Dashboards and then click the Western Region Sales dashboard link.
9. Add the shared request to the shared dashboard.
a. Click Page Options and select Edit Dashboard.
b. Add the Western Region Sales with Chart request from Shared Folders > Western Region
Sales to the dashboard page below the original request.

c. Click the Delete button for the request from the Administrators personal My Sales folder.
d. Click the Save button and view the results.
e. The request should appear in the group dashboard because you are logged in as CCHENG, a
member of the group, and therefore have access to the shared request youve added to the
dashboard.
Module 29: Administering the Oracle Business Intelligence Web Catalog
370 E Oracle BI Suite Enterprise Edition 10g Bootcamp


Module 30: Using Oracle Business Intelligence Delivers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 371

Practice 30-1: Configuring Scheduler Tables
Goals
To create Oracle Business Intelligence Scheduler tables
Scenario
In order to deliver iBots, the Oracle Business Intelligence Scheduler must be installed and
configured. The first step is to create tables for storing information about Scheduler jobs.
You create the following tables in the SUPPLIER2 database using iSQL Plus:
S_NQ_ERR_MSG, S_NQ_INSTANCE, S_NQ_JOB, and S_NQ_JOB_PARAM.
Time
5 10 minutes
Instructions
To enable the Oracle Business Intelligence Scheduler, certain tables need to exist (mentioned above)
to store information. The scheduler, in turn, monitors these tables and performs any necessary
actions. These tables store information about a job instance, parameters, and schedule. You run SQL
scripts to create the tables.
1. Start the iSQLPlus service.
a. Double-click the Services button on your desktop.
b. Start the OracleOraDB10g_homeiSQL*Plus service.
2. Create the Scheduler tables.
a. Identify your machine name.
i. Right-click your computer icon on the desktop and select Properties.
ii. In the System Properties dialog box, click the Computer Name tab.
iii. In the Full computer name field, note your machine name.


iv. Click Cancel.
b. Select Start > Programs > Oracle OraDb10g_home1 > Application Development > SQL
Plus.
c. In the Log On dialog box, enter the following and click OK:
Login name SUPPLIER2
Password SUPPLIER2
Module 30: Using Oracle Business Intelligence Delivers
372 E Oracle BI Suite Enterprise Edition 10g Bootcamp

d. Enter @ D:\OracleBI\server\Schema\SAJOBS.Oracle.sql.

e. Verify that the script has run successfully. The message should resemble the following:

f. Select File > Exit to close SQL*Plus.
3. Use Oracle Enterprise Manager to verify that the following tables exist: S_NQ_ERR_MSG,
S_NQ_INSTANCE, S_NQ_JOB, and S_NQ_JOB_PARAM.
a. In Internet Explorer, navigate to http://<hostname>:1158/em.
b. In the Login screen, enter the following values:
Login name SUPPLIER2
Password SUPPLIER2
c. Click Login. (If the Oracle Database 10g Licensing Information window appears, click I
agree.)
d. Click the Administration link.
e. Scroll down and click the Tables database object.
f. Click Go to search the SUPPLIER2 schema.
Module 30: Using Oracle Business Intelligence Delivers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 373

g. Scroll down in the list of tables and click the Next 14 link. The tables youve added should
appear as follows at the bottom of the list.

h. Click Logout in the upper right of the screen and close the browser.
Module 30: Using Oracle Business Intelligence Delivers
374 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Practice 30-2: Configuring the Oracle Business
Intelligence Scheduler
Goals
To configure the Oracle Business Intelligence Scheduler
Scenario
You have created the tables for storing information about Oracle Business Intelligence
Scheduler jobs in the SUPPLIER2 database. Now you need to configure the Oracle
Business Intelligence Scheduler. You set Scheduler configuration options in the Job
Manager Configuration dialog box, a feature of the Oracle Business Intelligence
Administration Tool.
Time
10 15 minutes
Instructions
1. Set Scheduler configuration options in the Job Manager Configuration dialog box.
a. Select Start > Programs > Oracle Business Intelligence > Administration.
b. Select File > Open > Online.
c. Enter the following values:
User: Administrator
Password: Administrator
d. Click Open to open the repository in online mode.
e. Select Manage > Jobs to open the Job Manager.
f. Select File > Configuration Options.
g. Click the Scheduler tab.
h. In the Database subtab, enter or verify the following values:
Database Type
Oracle 10g R1
Call Interface
OCI 10gR1/R2
Data Source Name ORCL
User name SUPPLIER2
Password SUPPLIER2
Confirm Password SUPPLIER2
i. Click the General subtab.




Module 30: Using Oracle Business Intelligence Delivers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 375

j. In the General sub-tab, enter or verify the following values:
Administrator Name Administrator
Administrator Password Administrator
Administrator Confirm Password Administrator
2. Set mail configuration options.
a. Click the Mail tab.
b. In the Sender Address field, enter server@localhost.com.
c. In the SMTP Server field, enter localhost.
d. Click OK to close the Job Scheduler Configuration window.
e. If you receive a message indicating that you must restart the service, click OK.
f. Select File > Exit to close the Job Manager.
g. Select File > Exit to close the Oracle Business Intelligence Administration Tool.
3. Start the Oracle BI Scheduler service. If the service is already started, restart it.
Module 30: Using Oracle Business Intelligence Delivers
376 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Practice 30-3: Creating and Delivering an iBot
Goals
To create an iBot and deliver it to an Intelligence Dashboard and an e-mail account
Scenario
You need to create and test an iBot that delivers an alert to an Interactive Dashboard and
an e-mail account based on a condition.
Time
15 20 minutes
Instructions:
1. Start Oracle BI Delivers.
a. If necessary, start Oracle Business Intelligence Presentation Services and log in as
Administrator.
b. Click the More Products link and select Delivers to navigate to the Oracle BI Delivers start
page.
2. Edit your delivery profile.
a. Click Edit My Account.

b. Under Delivery Options, click Add Email Device.
c. Select the Email device (leftmost icon) and confirm or enter the following values:
Device Name Email
Device / Provider
HTML eMail
Address user@localhost.com
d. Click Finished.
e. If you receive an AutoComplete dialog window, click No.
Module 30: Using Oracle Business Intelligence Delivers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 377

f. Verify that the device is listed under Devices.

g. Under the Delivery Profiles box, click Add Delivery Profile.
h. In the Delivery Profile window, enter the following values:
Name Email
Content Priority
Normal
i. Click Finished.
j. Verify that the profile is listed under Delivery Profiles.

k. Click Finished.
3. Start the e-mail server.
a. Select Start > Programs > hMailServer > Service > Start Service.
4. Create the e-mail account that will receive the iBot.
a. Open Outlook Express by selecting Start > Programs > Outlook Express.
b. Click No if asked to make Outlook Express your default mail client.
c. If necessary, click Cancel to close the Internet Connection Wizard.
d. Select Tools > Accounts from the menu.
e. Select the Mail tab.
f. Click the Add button and select Mail from the pop-up menu.
g. Enter User in the Display name text box.
h. Click Next.
i. Enter User@localhost.com in the Email address field.
j. Click Next. Accept POP3 as the incoming mail server.
k. Enter localhost in the Incoming mail server field.
l. Enter localhost in the Outgoing mail server field.
m. Click Next.
n. Enter oracle in the Password text box.
o. Click Next.
p. Click Finish.
q. Click Close.
r. Minimize the Outlook Express window.
Module 30: Using Oracle Business Intelligence Delivers
378 E Oracle BI Suite Enterprise Edition 10g Bootcamp

5. Create an iBot that will deliver a request to a dashboard and an e-mail account based on a
schedule.
a. Return to Oracle BI Delivers and click Create New iBot to open the iBot overview page.

b. Click the General tab to specify the priority of the iBot and how to send the delivery content.
c. Enter or confirm the following values:
Priority
Normal
Data Visibility
Personalized (individual data visibility)
Run As
<Leave Blank>
d. Click the Conditional Request tab.
e. Click Select Condition. The Choose Request dialog box is displayed.
f. Click the My Sales folder to expand it.
g. Select the Sales By State request that will trigger the iBot.
h. Click OK.
i. Click the Schedule tab to schedule the iBot.
j. Verify that Set Schedule, Start Immediately, and Recurrence/Once (Run once) are selected.
k. Click the Recipients tab to identify recipients of the iBot.
l. Select Me.
m. Click the Delivery Content tab to identify the content that will be delivered by the iBot.
i. Enter a headline.
ii. Click Select Content to open the Choose Delivery Content dialog box.
iii. Click the My Sales folder to expand it.
iv. Select the Formatted Sales By State request to pick the content that will be delivered by
the iBot.
v. Click OK.
vi. Verify that (Device default) is selected in the Send content as drop-down list.
n. Click the Destinations tab to select the destination for the iBot.
o. Under User Destinations, check the Interactive Dashboard and Active Delivery Profile
check boxes.
p. Click the Save button to save the iBot.
q. Enter a name and description for the iBot.
r. Click OK.
6. Verify that the iBot was sent to the specified destinations.
a. Click the Dashboards link to open the My Dashboard page.
b. Verify that the iBot you created appears in the Alerts section at the top of the page.
c. Click the iBot name to view the iBot.
d. Close the iBot.
Module 30: Using Oracle Business Intelligence Delivers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 379

e. Click the Alerts menu item to open the Alerts page.

f. Verify that the iBot you created appears on the page.
g. Click View to view the alert.
h. Close the alert.
i. Return to Outlook Express.
j. Click Inbox in the left pane of Outlook Express.
k. Click Send/Recv. If prompted for a username, ensure that you enter the entire name, that is
user@localhost.com.
l. In the right pane, verify that an email was delivered with the iBot. It may take a few minutes
for the iBot to appear in the Inbox.
m. Leave Outlook Express open.
Module 30: Using Oracle Business Intelligence Delivers
380 E Oracle BI Suite Enterprise Edition 10g Bootcamp

Practice 30-4: Chaining an iBot
Goals
To create a new iBot to be automatically executed when another iBot completes
Scenario
You need to chain iBots, so that the result of one iBot triggers the delivery of a second
iBot. You create a new iBot to be automatically executed and delivered to an Interactive
Dashboard and an e-mail account when the iBot created in the previous practice
completes.
Time
10 15 minutes
Instructions
1. If necessary, start Oracle BI Delivers
a. Click More Products > Delivers to navigate to the Oracle BI Delivers start page.
2. Create an iBot that will be executed automatically when another iBot completes.
a. Click Create New iBot to open the iBot overview page.
b. Click the General tab to specify the priority of the iBot and how to send the delivery content.
c. Enter or verify the following values:
Priority
Normal
Data Visibility
Personalized (individual data visibility)
Run As
<Leave Blank>
d. Click the Schedule tab to schedule the iBot.
e. Verify that Set Schedule, Start Immediately, and Recurrence/Once (Run once) are selected.
f. Click the Recipients tab to identify recipients of the iBot.
g. Select Me.
h. Click the Delivery Content tab to identify the content that will be delivered by iBot.
i. Enter a headline.
ii. Click Select Content to open the Choose Delivery Content window.
iii. Select the Ranked Sales By State request from the My Sales folder.
iv. Click OK.
v. Select (Device default) from the Send content as drop-down list.
i. Click the Destinations tab to select the destination for the iBot.
i. Under User Destinations, verify that Interactive Dashboard and Active Delivery Profile
are checked.
j. Click the Save button to save the iBot.
i. Enter a name and description for the iBot.
ii. Click OK.
Module 30: Using Oracle Business Intelligence Delivers
E Oracle BI Suite Enterprise Edition 10g Bootcamp 381

3. Open and modify the iBot created in the previous practice.
a. If necessary, select Delivers to navigate to Oracle BI Delivers.
b. In the left panel, click My iBots to expand the folder, and then select the iBot you created in
the previous practice.
c. Click the Schedule tab and select Set Schedule and Start Immediately.
d. Select the Advanced tab to select the iBot that will be executed automatically when this iBot
completes.
i. Click Add Action from the Execute these actions when iBot conditions are satisfied
area.

ii. Select iBot from the list.
iii. In the iBot Properties dialog box, click Browse.
iv. In the Select iBot dialog box, select the iBot you created in this practice.
v. Click OK.
vi. For Execute for Recipients, select of current iBot in the drop-down list.
vii. Click OK.
e. Save the iBot.
4. Verify that iBot was sent to the specified destinations.
a. Click the Dashboards link to open the My Dashboard page.
b. Verify that the iBot you created in the previous practice appears in the Alerts section at the
top of the page.
c. Verify that the iBot you created in this practice was also executed and appears in the Alerts
section.
d. Click the Alerts! link to open the Alerts page.
e. Verify that both iBots appear on the page.
f. Close the Alerts page.
g. If necessary, open Outlook Express.
i. Select Start > Programs > Outlook Express.
ii. If prompted for a user name and password, enter the following values:
User Name: User
Password: oracle
iii. Click OK.
h. Click Inbox in the left pane of Outlook Express.
i. Click Send/Recv.
j. In the right pane, verify that both iBots were delivered.
k. Close Outlook Express.
Module 30: Using Oracle Business Intelligence Delivers
382 E Oracle BI Suite Enterprise Edition 10g Bootcamp