0% found this document useful (0 votes)
7 views330 pages

Hi Getting Started

The Hyperion Performance Suite Release 8.3 Getting Started Guide provides an introduction to Hyperion Intelligence Clients, including tutorials and basic operations for querying relational and multidimensional databases. It covers features, tools, and document management, along with detailed instructions on data analysis, reporting, and visualization. The guide is intended for users looking to familiarize themselves with the software's functionalities and capabilities.

Uploaded by

sonu2hit29
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views330 pages

Hi Getting Started

The Hyperion Performance Suite Release 8.3 Getting Started Guide provides an introduction to Hyperion Intelligence Clients, including tutorials and basic operations for querying relational and multidimensional databases. It covers features, tools, and document management, along with detailed instructions on data analysis, reporting, and visualization. The guide is intended for users looking to familiarize themselves with the software's functionalities and capabilities.

Uploaded by

sonu2hit29
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 330

Hyperion Performance Suite

® ™

Release 8.3

Hyperion Intelligence Getting Started Guide

Hyperion Solutions Corporation

D830683000
Copyright © 1989–2004 Hyperion Solutions Corporation.
All rights reserved.
“Hyperion” and Hyperion's product names are trademarks of Hyperion. References to
other companies and their products use trademarks owned by the respective
companies and are for reference purpose only.

No portion of this manual may be reproduced or transmitted in any form or by any


means, electronic or mechanical, including photocopying, recording, or information
storage and retrieval systems, for any purpose other than the purchaser's personal use,
without the express written permission of Hyperion.

The information contained in this manual is subject to change without notice.


Hyperion shall not be liable for errors contained herein or consequential damages in
connection with the furnishing, performance, or use of this material.
This software described in this manual is licensed exclusively subject to the conditions
set forth in the Hyperion license agreement. Please read and agree to all terms before
using this software.
GOVERNMENT RIGHTS LEGEND: Use, duplication or disclosure by the U.S.
Government is subject to restrictions set forth in the applicable Hyperion license
agreement and as provided in DFARS 227.7202-1(a) and 227.7202-3(a) (1995),
DFARS 252.227-7013(c)(1)(ii) (Oct 1988), FAR 12.212(a) (1995), FAR 52.227-19, or
FAR 52.227-14, as applicable.

Hyperion Solutions Corporation


1344 Crossman Avenue
Sunnyvale, California 94089
Printed in the U.S.A.
Contents in Brief

Preface

CHAPTER 1 Introducing Hyperion Intelligence Clients

CHAPTER 2 Getting Started with Hyperion Intelligence Clients: A Tutorial

CHAPTER 3 Hyperion Intelligence Client Basics

CHAPTER 4 Querying Relational Databases

CHAPTER 5 Working with Query Results

CHAPTER 6 Querying Multidimensional Databases

CHAPTER 7 Using Limits

CHAPTER 8 Working with Computed Items

CHAPTER 9 Applying Sorts

Glossary

Glossary

Index
iv Contents in Brief
Contents

Preface
Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Document Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
Related Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
Where to Find Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviii
Additional Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix
Education Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix
Consulting Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix
Technical Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx
Documentation Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx

CHAPTER 1 Introducing Hyperion Intelligence Clients


Hyperion Intelligence Clients Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Hyperion Intelligence Client Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Hyperion Intelligence Client Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3
How Hyperion Intelligence Clients Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6
Relational Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7
Multidimensional Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7
About Hyperion Intelligence Client Documents . . . . . . . . . . . . . . . . . . . . . . 1-8
Data Source Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
Data Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10
Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11
Analysis and Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
Turning Data into Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
CHAPTER 2 Getting Started with Hyperion Intelligence Clients: A Tutorial
Starting a Hyperion Intelligence Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
Opening and Saving a Sample File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
Looking at a Simple Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
Viewing Database Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5
Adding Topics to a Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6
Viewing Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
Reordering Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
Sorting Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
Limiting Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
Calculating Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9
Pivoting Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10
Calculating Totals and Subtotals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-11
Drilling Down . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
Hiding Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13
Adding Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13
Charting Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14
Sorting Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16
Inserting Text Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16
Designing Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-17
Creating Smart Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19
Sorting Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-21
Setting Up a Report Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-21

CHAPTER 3 Hyperion Intelligence Client Basics


Exploring the Hyperion Intelligence Client Workspace . . . . . . . . . . . . . . . . 3-2
Main Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3
Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3
Standard Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
Navigation Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
Formatting Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5
Section Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5
Section Title Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6
Command Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6
Outliners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6
Section Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7
Catalog Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8
Content Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9
Status Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9

vi Contents
Managing Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10
Maintaining Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10
Creating a New Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11
Opening an Existing Document . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11
Closing a Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11
Saving Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12
Specifying Save Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12
Save Query Results With Document . . . . . . . . . . . . . . . . . . . . . . 3-12
Compress Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13
Password Protect Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13
Password Protect Designer Mode . . . . . . . . . . . . . . . . . . . . . . . . . 3-14
Working with Data Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15
Open From Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16
Save To Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17
Import Data File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18
Import SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19
Exporting Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-20
Dynamic HTML in the Results and Table Sections . . . . . . . . . . 3-21
Dynamic HTML in the Pivot and OLAP Section . . . . . . . . . . . . 3-22
Dynamic HTML in the Chart Section . . . . . . . . . . . . . . . . . . . . . 3-24
Dynamic HTML in the Report Section . . . . . . . . . . . . . . . . . . . . 3-26
Static HTML in the Results and Table Sections . . . . . . . . . . . . . 3-27
Static HTML in the Pivot and OLAP Sections . . . . . . . . . . . . . . 3-28
Static HTML in the Report Section . . . . . . . . . . . . . . . . . . . . . . . 3-29
Exporting a Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-30
Exporting a Document as a Web Page . . . . . . . . . . . . . . . . . . . . . 3-31
Browser and HTML Restrictions and Limitations . . . . . . . . . . . 3-33
Using the Export to HTML Wizard . . . . . . . . . . . . . . . . . . . . . . . 3-34
Exporting SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-34
Exporting a Query Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-35
Exporting Scripts To a Text File . . . . . . . . . . . . . . . . . . . . . . . . . . 3-36
Printing Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-36
Page Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-36
Print Preview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-37
Print . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-37
Sending Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-38
Quitting a Hyperion Intelligence Client . . . . . . . . . . . . . . . . . . . . . . . . . 3-38
File Menu Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-39

Contents vii
Using Edit Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-40
Changing Workspace Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-41
Inserting Sections and Breaks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-42
Formatting Text and Other Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-43
Formatting Numeric Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-45
Changing Numeric Formatting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-45
Displaying Numbers in Scientific Notation . . . . . . . . . . . . . . . . . . . . . . 3-47
Working with Document Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-48
Understanding Document Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-48
Adding Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-49
Viewing Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-49
Moving Between Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-50
Duplicating Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-50
Renaming Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-51
Adding Headers and Footers to Sections . . . . . . . . . . . . . . . . . . . . . . . . 3-51
Deleting Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-53
Setting Hyperion Intelligence Client Options . . . . . . . . . . . . . . . . . . . . . . . 3-54
Specifying Default Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-54
Default Fonts and Styles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-54
Default Number Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-55
Selecting Program Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-57
General Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-57
File Locations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-60
OLAP Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-61
Customizing Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-62
Tools Menu Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-64

CHAPTER 4 Querying Relational Databases


Query Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2
Using Data Models in the Query Section . . . . . . . . . . . . . . . . . . . . . . . . 4-3
Building Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
Working with Items on the Request Line . . . . . . . . . . . . . . . . . . . . . . . . 4-4
Reordering Request Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
Removing Request Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
Hiding Request Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5
Processing Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6
Query Processing Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7
Saving Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-8

viii Contents
Cancelling Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9
Building Subqueries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9
Regular Subqueries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9
Correlated Subqueries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11
Derived Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13
Derived Tables Rules and Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-14
Derived Tables and SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-17
Custom SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-17
Processing a Query that Contains another Query Section . . . . 4-18
Working with Query Section Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-20
Processing Results to a Database Table . . . . . . . . . . . . . . . . . . . . . . . . . . 4-20
Estimating Query Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-22
Displaying Database Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23
Preaggregating Data Using Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23
Appending Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26
Using Local Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28
Limitations of Local Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28
Processing Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29
Using Stored Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29
Setting Query Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31
Query Menu Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-32

CHAPTER 5 Working with Query Results


Results Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2
Understanding Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
Enhancing Your Results Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
Limiting Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
Sorting Results Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
Adding Computed Items to Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5
Applying Data Functions to Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5
Inserting Column Totals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6
Inserting Grand Totals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6
Inserting Break Totals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6
Adding Grouping Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7
Automatically Adding Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
Breaking Out Dates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
Working with the Results Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10
Selecting Columns and Rows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10

Contents ix
Deleting Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10
Formatting Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10
Saving Results Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-11
Exporting Result Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-13
Results Menu Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14

CHAPTER 6 Querying Multidimensional Databases


OLAPQuery Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2
Defining OLAPQuery Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5
General OLAPQuery Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5
Database-specific OLAPQuery Options . . . . . . . . . . . . . . . . . . . . . . . . . 6-7
Display Options for Essbase Databases . . . . . . . . . . . . . . . . . . . . 6-7
Display Options for Microsoft OLE/DB . . . . . . . . . . . . . . . . . . . . 6-9
Building OLAP Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10
OLAPQuery Section Outliner Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11
OLAPQuery Member and Level Rules . . . . . . . . . . . . . . . . . . . . . . . . . . 6-13
Refining OLAPQuery Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14
Specifying a Slicer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14
Drilling Down . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-15
Drilling Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16
Hybrid Analysis and Drilling (Essbase and DB2 only) . . . . . . . . . . . . . 6-16
Adding Computed Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17
Using OLAPQuery Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-19
Processing OLAP Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22
Automatically Processing OLAP Queries . . . . . . . . . . . . . . . . . . . . . . . . 6-23
Working with an OLAPQuery Offline . . . . . . . . . . . . . . . . . . . . . . . . . . 6-24
Automatically Creating a Results Section . . . . . . . . . . . . . . . . . . . . . . . 6-24
Applying Filters and Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-25
Applying Member Selection Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-25
Applying Measure Limits (Essbase) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-26
Applying Variable Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-26
Member Variable Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-27
Measure Variable Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-27
Slicer Variable Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-28
Essbase Substitution Variables . . . . . . . . . . . . . . . . . . . . . . . . . . 6-29
Operator Types and Data Operators . . . . . . . . . . . . . . . . . . . . . 6-30

x Contents
Changing Data Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-32
Suppressing Rows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-32
Adding Totals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-33
Adding Database Totals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-33
Adding Local Totals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-34
Adding Data Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-35
Showing as a Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-36
Formatting OLAPQuery Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-36
Drilling Through from a Multi-Dimensional to a Relational Database . . . 6-36
Setting Drill-through Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-37
Drilling Through . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-39
OLAP Menu Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-40

CHAPTER 7 Using Limits


About Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
Server versus Local Limit Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
Server Limits in the Query Section . . . . . . . . . . . . . . . . . . . . . . . . 7-2
Local Limits in the Results Section . . . . . . . . . . . . . . . . . . . . . . . . 7-3
Limit Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-3
Limit Line Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4
Limit Line Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4
Limit Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-5
Showing Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-6
Defining Custom Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-7
Using Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-8
Setting Simple Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10
Limiting Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10
Limiting Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-11
Setting Compound Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-12
Setting Variable Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-13
Customizing Limit Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-15

CHAPTER 8 Working with Computed Items


About Computed Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2
Computing New Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2
Computed Items in Hyperion Intelligence Client Sections . . . . . . . . . . . 8-3

Contents xi
Computed Items in the Query Section . . . . . . . . . . . . . . . . . . . . . 8-3
Computed Items in the Results and Reporting Sections . . . . . . 8-4
Computed Items in the Pivot Section . . . . . . . . . . . . . . . . . . . . . . 8-5
Using Surface Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6
Computed Items and Data Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7
Pivot Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7
Adding Computed Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8
Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-9
Arithmetic Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10
Comparison Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-11
Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12
Logical Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-13
Using Functions in Hyperion Intelligence Clients . . . . . . . . . . . . . . . . . . . 8-14
Scalar Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-14
Teradata Version 3 OLAP Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-19
Functions for Returning the Day of the Week . . . . . . . . . . . . . . . . . . . 8-25
Formatting Day of Week Data . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-25
Analyzing Data Based on Day of Week Data . . . . . . . . . . . . . . . 8-26
Common Computed Item Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-27
Scalar Function Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-31
Trend Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-50
General Moving Average and Moving Function Functionality . . . . . . . 8-51
Simple Moving Averages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-52
Positioning of Moving Average Results - Trailing and Centered Averages . .
8-53
Weighted Moving Averages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-55
Exponential Moving Averages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-57
Moving Difference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-59
Moving Maximum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-61
Moving Median . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-62
Moving Sum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-64
Moving Minimum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-65
Direction Of Moving Function Calculation . . . . . . . . . . . . . . . . . . . . . 8-67

xii Contents
CHAPTER 9 Applying Sorts
Sorting Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
Simple Sorts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
Sort Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3
Complex Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4
Complex Sorting in the Query, Results, and Table Sections . . . . . . . . . . 9-4
Complex Sorting in Chart, Pivot, and OLAPQuery Reports . . . . . . . . . 9-5
Sort Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6
Reference Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6
Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7

Glossary

Glossary

Index

Contents xiii
xiv Contents
Preface

Welcome to the Hyperion Intelligence Getting Started Guide. This preface


discusses the following topics:
■ “Purpose” on page xv
■ “Audience” on page xv
■ “Document Structure” on page xvi
■ “Related Documents” on page xvii
■ “Where to Find Documentation” on page xvii
■ “Conventions” on page xviii
■ “Additional Support” on page xix
■ “Documentation Feedback” on page xx

Purpose
This guide provides an overview of the Designer, Explorer, and web client
Intelligence Clients and explains the user interface and basic commands. It
includes information on how to retrieve data, how to query new data and
change existing queries, and how to query a single database as well as multiple
databases. It also covers how to work with query results.

Audience
This guide is written for all levels of Intelligence Client users, from those who
need to simply retrieve and view data in a report format, to those who need to
build queries and reports as well as analyze data.
Document Structure
This guide contains the following information:
Chapter 1, “Introducing Hyperion Intelligence Clients” introduces business
intelligence software tools and provides an overview of how anyone can use
Intelligence Clients to access and analyze database information.
Chapter 2, “Getting Started with Hyperion Intelligence Clients: A Tutorial,”
offers a tutorial on basic data analysis techniques and familiarizes you with the
powerful capabilities and features of the Intelligence Clients application.
Chapter 3, “Hyperion Intelligence Client Basics” provides an overview of the
Intelligence Client workspace and describes fundamental Intelligence Client
features and functions.
Chapter 4, “Querying Relational Databases,” explains how to use Intelligence
Clients to connect to and query a relational database. It provides basic
information about data models and the Intelligence Client Repository, as well
as how to build and process queries and subqueries.
Chapter 5, “Working with Query Results” explains how to work with the
results sets obtained from your relational database query or data import. It
includes how to enhance your results set, as well as how to export your results
to different file formats.
Chapter 6, “Querying Multidimensional Databases,” explains how to use
Intelligence Clients to connect to and query a multidimensional database. It
details how to build, refine, and process OLAP queries and how to apply filters
and limits.
Chapter 7, “Using Limits,” explains how to use limits to refine your data and
filter away the data you do not need for more intelligent analysis.
Chapter 8, “Working with Computed Items,” describes how to use
calculations to compute new data items. Such calculations are important for
supplementing the information already stored in the database
Chapter 9, “Applying Sorts” discusses features that enable you to sort data in
various Intelligence Client sections, including sort lines, single sorts, and
nested sorts.
Glossary contains a list of key terms and their definitions.
Index contains a list of Hyperion Intelligence terms and their page references.

xvi Preface
Related Documents
In addition to the Getting Started Guide, Hyperion Intelligence includes the
following documentation:
Hyperion Intelligence Data Analysis and Reporting Guide describes how to use
the Designer, Explorer, and web client’s powerful reporting features – pivots,
charts, and tables – and how to use the Report Designer to create reports. This
guide also explains common report features such as printing, drill-down, and
spotlighter.
Hyperion Intelligence Administrator’s Guide explains data modeling, including
how to modify existing data models, and create new data models. It also
discusses metadata definitions and database connectivity.
Hyperion Intelligence Object Model and Dashboard Guide explains the
Hyperion Intelligence Object Model and how to create custom Dashboard
applications using JavaScript.

Where to Find Documentation


All Hyperion Intelligence documentation is accessible from the following
locations:
■ Online help is accessible from the product that it documents. Start the
product and click the Help button or menu command.
■ The Hyperion Solutions Web site is located at http://
www.hyperion.com.

■ Access to the Hyperion Download Center is through http://


hyperion.subscribenet.com.

To access documentation from the Hyperion Solutions Web site:

1 Log on to http://www.hyperion.com.
2 Select the Support link and type your username and password to log on.

✏ Note New users must register to receive a username and password.

3 Follow the on-screen instructions.

Preface xvii
To access documentation from the Hyperion Download Center:

1 Log on to http://hyperion.subscribenet.com.
2 In the Login ID and Password text boxes, enter your assigned login ID name and
password. Then click Login.

3 If you are a member on multiple Hyperion Download Center accounts, select the account
that you want to use for the current session.

4 Follow the on-screen instructions.

To order printed documentation:

1 Visit the Hyperion Solutions Web site at http://www.hyperion.com.


2 In the United States, call Hyperion Solutions Customer Support at 877-901-4975.
3 From outside the United States, including Canada, call Hyperion Solutions Customer
Support at 203-703-3600. Clients who are not serviced by support from North America
should call their local support centers.

Conventions
The following table shows the conventions that are used in this document:

Tab le 1 Conventions Used in This Document

Item Meaning

➤ Arrows indicate one-step procedures.

Bold Bold highlights options, buttons, or tabs that you need to choose
and text that you need to type.

CAPITAL LETTERS Capital letters denote commands and various IDs.

For example: CLEARBLOCK command

[Ctrl + 0] Keystroke combinations shown with the plus sign (+) indicate that
you should press the first key and hold it while you press the next
key. Do not type the plus sign.

xviii Preface
Tab le 1 Conventions Used in This Document (Continued)

Item Meaning

Example text Courier font indicates that the example text is code or syntax.
Courier font is also used for file names, directory/folder names, and
path names.

For example: Sample1.bqy is located in the


\HYPERION_HOME\Samples directory.
Courier italics Courier italic text indicates a variable field in command syntax. Sub-
stitute a value in place of the variable shown in Courier italics.

Mouse orientation This document provides examples and procedures using a right-
handed mouse. If you use a left-handed mouse, adjust the proce-
dures accordingly.

Menu options Options in menus are shown in the following format. Substitute the
appropriate option names in the placeholders, as indicated.

Menu name→Menu command→Extended menu command

For example: 1. Select File→Desktop→Accounts.

Additional Support
In addition to providing documentation and online help, Hyperion offers the
following product information and support. For details on education,
consulting, or support options, visit Hyperion’s Web site at http://
www.hyperion.com.

Education Services
Hyperion offers instructor-led training, custom training, and eTraining
covering all Hyperion applications and technologies. Training is geared to
administrators, end users, and information systems (IS) professionals.

Consulting Services
Experienced Hyperion consultants and partners implement software solutions
tailored to clients’ particular reporting, analysis, modeling, and planning
requirements. Hyperion also offers specialized consulting packages, technical
assessments, and integration solutions.

Preface xix
Technical Support
Hyperion provides enhanced electronic-based and telephone support to clients
to resolve product issues quickly and accurately. This support is available for all
Hyperion products at no additional cost to clients with current maintenance
agreements.

Documentation Feedback
Hyperion strives to provide complete and accurate documentation. We value
your opinions on this documentation and want to hear from you. Give us your
comments by going to http://www.hyperion.com/services/
support_programs/doc_survey/index.cfm.

xx Preface
1 Introducing Hyperion Intelligence
Clients

Welcome to Getting Started with Hyperion Intelligence Clients. This book shows
how anyone —both technical and nontechnical people—can use Hyperion
Intelligence Clients to access and analyze database information.
This chapter introduces the conceptual background of business intelligence
software tools and provides an overview of database concepts. It also explains
the Hyperion Intelligence Client approach to querying databases.

In This Chapter Hyperion Intelligence Clients Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-2


How Hyperion Intelligence Clients Work. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-6
About Hyperion Intelligence Client Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-8
Turning Data into Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-13
Hyperion Intelligence Clients Overview
Hyperion Intelligence Clients connect business users to data and give them a
complete set of tools to support business decisions including ad hoc
client/server querying, reporting, and analysis all in one application. Hyperion
Intelligence Clients provide the following capabilities:
■ Data extraction and analysis
■ Reporting and distribution
■ Platform development

The Hyperion Intelligence Client interface is highly intuitive and provides an


easy-to-navigate environment for data exploration and decision making. With
a consistent design paradigm for query, pivot, charting, and reporting, users at
any level move fluidly through cascading dashboards—finding answers fast.
Trends and anomalies are automatically highlighted, and robust formatting
tools enable users to easily build free-form, presentation-quality reports for
broad-scale publishing across their organization.

Hyperion Intelligence Client Features


Hyperion Intelligence Client features include:
■ Support for all industry-standard databases (see “Relational Databases” on
page 1-7 and “Multidimensional Databases” on page 1-7 for a list of the
specific databases supported).
■ A point-and-click interface for intuitive custom query and report building.
■ Support for Microsoft Windows and Motif (UNIX), with complete file
compatibility between the platforms.
■ Easy, nonprocedural navigation between query and reporting sections.
■ An extensive online help system that provides assistance for features and
document construction.
■ A drag-and-drop Outliner tool for developing reports and analyzing data.
■ Interactive pivot reporting that lets you perform unrestricted drill-down
analysis of different data relationships.
■ Extensive formatting tools for creating compelling data presentations.
■ An easy-to-use, interactive charting utility for graphically displaying and
drilling-down into data.

1-2 Introducing Hyperion Intelligence Clients


Hyperion Intelligence Client Tools
Hyperion Intelligence Clients include two client-server based tools and one
web-based tool. (The web-based tool has three different user roles). Table 1-1
lists these tools along with their core query, analysis, and reporting features
and shows the increasing levels of data modeling functionality.

Tab le 1 - 1 Features of Hyperion Intelligence Client Tools

Access Database Tables


Administer Repository

Dashboard Scripting
Create Data Models

Access Repository
Create Reports
Create Queries
Process

Analyze
Tools View

Client/Server Hyperion
Intelligence ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
Explorer

Hyperion
Intelligence ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
Designer

Web Hyperion
Intelligence

Web Client
Viewer

Hyperion
Intelligence
Web Client ✔ ✔ ✔
Dynamic
Viewer

Hyperion
Intelligence
✔ ✔ ✔ ✔ ✔ ✔ ✔
Web Client
Analyzer

Hyperion Intelligence Clients Overview 1-3


The following is a description of the Hyperion Intelligence Client tools:
■ Hyperion Intelligence Explorer – A client/server-based tool that delivers
query, analysis, and reporting capabilities for power users who need to
directly access data sources—or to explore the information organized in
pre-built data models stored in the repository. Explorer users can use
distributed predefined data models or create new data models from
database tables for their own or distributed use. They can also create
custom, Web-enabled dashboards.
■ Hyperion Intelligence Designer – A client/server-based tool that delivers
query, analysis, and reporting capabilities and centralized solution
administration for developers, database administrators, and system
administrators. Designer users manage the Hyperion Intelligence Client
environment by building data, which they distribute to other Hyperion
Intelligence Client users. They also create and administer job repositories,
and build custom, Web-enabled dashboards using the Hyperion
Intelligence Client open application development environment.
■ Hyperion Intelligence Web Client Viewer – A read-only web plug-in that
allows users to view Hyperion Intelligence Client reports.
■ Hyperion Intelligence Web Client Dynamic Viewer – A web plug-in that
offers simplified report viewing and data refresh for users who need to view
published, formatted reports within their browser – a perfect way to
publish analysis results for up-to-the-minute communication.
■ Hyperion Intelligence Web Client Analyzer – A web-based tool that
delivers query, analysis, and reporting functionality for intranet, Internet,
or extranet access to information. Based on user profiles or report-level
security, the client environment adapts in six stages from full query,
analysis, and reporting with data refresh to static report viewing. Web client
users can use distributed predefined data models to create their own queries
or to create new data models. Web Client Analyzer users can use all the
Hyperion Intelligence Client reporting and analysis features to analyze the
data from their own queries and work with resulting datasets.

1-4 Introducing Hyperion Intelligence Clients


✏ Note In addition to the Hyperion Intelligence Clients discussed above, the Hyperion Intelligence
Products include the following two server tools:

■ Hyperion Intelligence iServer Client

■ Hyperion Intelligence Server

For detailed information on the Hyperion Intelligence iServer client, refer to the Hyperion
Intelligence iServer Client online help. For detailed information on the Hyperion Intelligence
Server, refer to the Hyperion Intelligence Clients Administrator’s Guide.

Hyperion Intelligence Clients Overview 1-5


How Hyperion Intelligence Clients Work
Hyperion Intelligence Clients enable you to access and analyze information
stored in different company data sources. They connect you to data and supply
a complete set of tools that enable you to build queries quickly and
intuitively—by clicking icons and manipulating objects. Hyperion Intelligence
Clients automatically build a query to your specifications, send it to the
database, and display the retrieved data as a table of results. Figure 1-1
illustrates this.

F i g ure 1 - 1 Hyperion Intelligence Client Process

There are many types of data sources, but the most prevalent are relational
databases and multidimensional databases.

1-6 Introducing Hyperion Intelligence Clients


Relational Databases
A relational database is a collection of data items organized as a set of formally
described tables from which data can be accessed or reassembled in many
different ways without having to reorganize the database tables.
The definition of a relational database results in a table of metadata or formal
descriptions of the tables, columns, domains, and constraints. Metadata is
literally “data about data.”
Hyperion Intelligence Clients support the following relational database
systems:
■ DB2
■ Oracle
■ Informix
■ Red Brick Warehouse
■ MS SQL Server
■ Sybase and Sybase IQ
■ Teradata

Multidimensional Databases
A multidimensional database is a data cube that provides multidimensional
views of business data. Multidimensional databases are OLAP servers that
enable you to easily and selectively extract and view data from different points
of view. Multidimensional databases consider each data attribute as a separate
dimension and allow you to create hierarchies within a dimension.
OLAP (On-Line Analytical Processing) designates a category of applications
and technologies that allow the collection, storage, manipulation, and
reproduction of multidimensional data, with the goal of analysis. OLAP
provides for the fast analysis of multidimensional shared information.
Hyperion Intelligence Clients support the following multidimensional
database systems:
■ DB2
■ MS OLAP
■ Essbase
■ SAP BW
■ Microsoft SQL Server 2000 Analysis Services
How Hyperion Intelligence Clients Work 1-7
About Hyperion Intelligence Client Documents
Hyperion Intelligence Client documents are files you create and use to retrieve
information from a database, analyze the information, and build reports. Since
Hyperion Intelligence Clients are integrated query, analysis, and reporting
tools, Hyperion Intelligence Client documents have multiple sections, each of
which governs one part of the query and reporting process. You create sections
progressively as you query a database, retrieve results, and then generate
reports.
Hyperion Intelligence Client documents can contain data from any number of
relational databases queries, multidimensional database queries, and/or from
imported data. Documents usually include one or more of the following items:
■ A data model, which is a visual representation of actual database tables
■ A query or multiple queries for retrieving a subset of data from the database
■ Join options, including local joins between different data sets within a single
document, local join limits, and optional join path generation
■ A results set displayed in a table-style format
■ Reports presenting customized hierarchical views of your data
■ Multidimensional pivot tables that permit drill-down analysis of data
results
■ Charts that graphically display your query results and allow different angles
of vision on the data.

All Hyperion Intelligence Client documents usually have at least one Query
section and one Results section. From the Results section, you can create
multiple Pivot, Chart, Table, and Report sections to analyze and present data.
Developers can also create Dashboard sections, which provide an automated
push-button interface to a document for use by other users across the
enterprise.

1-8 Introducing Hyperion Intelligence Clients


Data Source Connections
For Hyperion Intelligence Client users, the process of creating a new
document and connecting to a database is simple. You select a connection file,
or Open Catalog Extension (OCE), for the database server you plan to use and
enter your database password. You can select either a new or an existing OCE.
The way you choose an OCE depends on the data model or document with
which you are working, and also on which Hyperion Intelligence Clients
edition you are using:
■ When a data model is present in the Query workspace, Hyperion
Intelligence Clients automatically prompt you with the correct connection
when your actions require a database connection. You need to be
connected to a database when you download a data model and when you
process your query to retrieve a data set. In addition, you must be
connected to show values for a server limit, to use server functions to create
a computed item, or to schedule a document.
■ When you open an Hyperion Intelligence Client to begin a work session
(for example, by downloading a data model from an Hyperion Intelligence
Client Repository, or creating a new data model), you must select the
correct connection for the targeted database.

OCEs retain all the information necessary to log onto a specific configuration
of database and connection API software. In addition, an OCE retains DBMS-
specific connection preferences as well as specifications for automatic access to
metadata. This simplifies the connection process for company personnel by
transparently handling host and configuration information. Each user can
substitute his or her own database user name when using the OCE, which
enforces security measures and privileges that are centralized at the database
server.
OCEs have significant advantages in network environments with many
database users. One connection can be created for each database connection in
the environment and shared with each end-user. Because passwords are not
saved with the OCE, there is no danger that distribution will provide
unauthorized access to any user who receives the wrong OCE file or acquires it
from other sources.

About Hyperion Intelligence Client Documents 1-9


Data Models
After connecting to a database, Hyperion Intelligence Clients present subsets
of the database contents in the Query section through custom views called data
models, which are visual representations of actual database tables. You use a
data model to interact with a database to create queries that specify which data
to fetch from the database and retrieve for analysis.
Data models make the database more accessible because you can:
■ Substitute descriptive names for arcane database table and column names.
■ Create custom views of the data.
■ Add computed fields for performing calculations on the retrieved data.

In addition to standard data models derived from database tables, Hyperion


Intelligence Clients let you create metatopics—virtual views independent of
the actual database. You can use metatopics to standardize complex
calculations and simplify views of the underlying data with intuitive topics
customized for business needs.
Depending on their Hyperion Intelligence Clients tool, users can create their
own data models or use data models provided by other users or through the
centralized Hyperion Intelligence Clients Repository, a catalogued storehouse
of database views for querying.
You also optionally can provide a document that contains a master data model
from which your users can then build one or more queries. This master data
model allows your users to concentrate on the data they want, not how to set
up the data access. Any existing data model can be promoted to a master data
model.
Thus, you can offer users a raw look at the table schema, or you can hide the
complexity by first creating one or more metatopics and then promoting the
data model. Each time the user adds a new query, the Hyperion Intelligence
Client asks if the query should be linked to the master data model. Any linked
queries inherit changes made to the master data model, but the query’s data
model is locked and cannot be modified. (Only the master data model can be
changed.)

1-10 Introducing Hyperion Intelligence Clients


Queries
A query is a request for information from a database. Queries take the form of
a command language that lets you select, insert, update, find out the location
of data, and so forth.
The standard command language for getting information from and updating a
relational database is Structured Query Language (SQL). SQL statements are
used both for interactive queries for information from a relational database
and for gathering data for reports.
Multidimensional databases also require a language that allows you to express
multidimensional queries; however, to date, there is no standard. MDX
(Multidimensional Expression Language) is used by Microsoft’s OLE DB for
OLAP API and OLAP Services. Hyperion’s Essbase uses MaxL
(Multidimensional Access Language). MDSQL (Multidimensional Query
Language) is yet another query language.
With Hyperion Intelligence Clients, you do not need to know SQL or any
multidimensional query languages to create powerful database queries. You
build queries by choosing the data you want to retrieve from a visual
representation of the database.
Hyperion Intelligence Clients offer two query methods, each of which appears
as a separate section within an Hyperion Intelligence Clients document:
■ Query – Displays the structure of the relational database as tables (or
topics), which are used to create a data model—the visual representation of
the database tables. An Hyperion Intelligence Clients document can have
more than one data model.
■ OLAPQuery – Displays the structure of the multidimensional database as a
hierarchical tree. OLAP queries are displayed in a form similar to a pivot
table, except the data comes straight from the OLAP server.

A Hyperion Intelligence Client document can contain one or more relational


Query sections as well as one or more OLAPQuery sections. This allows users
access to information in organizations that have both types of databases.

About Hyperion Intelligence Client Documents 1-11


Analysis and Reporting
Once a query is processed and data results are returned to the desktop, you can
use the Hyperion Intelligence Clients powerful reporting and analysis tools to
create custom views, cross-sections, and drill-downs to slice and dice data and
view the multidimensional relationships it contains.
You may create as many different views of the data as you want, and you can
display the information in any form and from any angle possible. At any time,
you can reconnect to the server and update your reports and charts with fresh
data from the database.
You can also use Hyperion Intelligence Clients to work autonomously with
data after disconnecting from the server. Even without a database connection,
you can continue to analyze data and produce reports. You can save results in
the desired format for additional refinement in Hyperion Intelligence Clients,
or you can export the data to other applications for further analysis.

1-12 Introducing Hyperion Intelligence Clients


Turning Data into Information
Data is meaningless unless it can be analyzed and interpreted. Analysis
depends on consolidating and summarizing data through mathematical
operations that reveal meaningful relationships, also called aggregation. The
result is a summary of the data at a higher level, which summarizes and
consolidates data from a lower level.
Aggregation is a critical feature of data analysis. Successful and rapid
interpretation of data requires you to have some easy method of aggregating
data and representing it for easy interpretation.
The Hyperion Intelligence Clients aggregation techniques are easy to master.
With the simple drag-and-drop of a data item, you can reorganize your data.
Remove an item or drill down into your data, and you disaggregate your data.
Hyperion Intelligence Clients provide a great deal of flexibility in how you
choose to aggregate your data. One possibility is to aggregate your data at the
time of your query, called server aggregation or preaggregation. In this case,
the database server actually performs the aggregation for you.
An advantage of server aggregation is that since the database server returns less
data, preaggregation reduces network traffic and takes less time. However, if
you preaggregate data at the server, you might find that later when you want to
drill down into the data that you cannot reach the data depths that you need.
This is because you excluded the more detailed data by preaggregating. If you
do not know your database tables, you could eliminate data that might be
important for analysis. Also, preaggregation requires more server processing
resources.
Alternatively, you can aggregate data on your desktop without involving the
server. Hyperion Intelligence Clients automatically aggregate your data for you
in report sections.

What Next
You now understand some basic database and data interpretation concepts. This
framework will help you make the most of the Hyperion Intelligence Clients. Proceed
to Chapter 2, “Getting Started with Hyperion Intelligence Clients: A Tutorial,” and get
ready to explore all that the Hyperion Intelligence Clients have to offer.

Turning Data into Information 1-13


1-14 Introducing Hyperion Intelligence Clients
2 Getting Started with Hyperion
Intelligence Clients: A Tutorial

This chapter offers a tutorial on basic data analysis techniques and familiarizes
you with the powerful capabilities and features of the Hyperion Intelligence
Clients.

To use this tutorial, you must have access to Hyperion Intelligence Clients and
their sample database and documents. A connection to your company
database is not necessary.

In This Chapter Starting a Hyperion Intelligence Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2


Opening and Saving a Sample File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2
Looking at a Simple Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-4
Viewing Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7
Pivoting Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10
Charting Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-14
Designing Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-17

✏ Note The screen captures in this tutorial display the Designer Hyperion Intelligence Client name. If
you are using Explorer or the web client, the screens will display Explorer or a URL address in
place of Designer.
Starting a Hyperion Intelligence Client
To start a Hyperion Intelligence Client:

➤ Choose Start→Programs→Intelligence Client Name.

For example Start→Programs→Designer.


Whenever you start a Hyperion Intelligence Client, you must first choose
whether to create a new document or open an existing document.

Opening and Saving a Sample File


During the installation process, Hyperion Intelligence Clients install several
sample files. This tutorial uses the document named Sample1.bqy to
familiarize you with the many Intelligence Client features.

To open Sample1.bqy:

1 In the Welcome dialog box, select Recent Documents from the Open Existing Documents
area.

2 Click Browse and navigate to the Samples folder in the appropriate Hyperion Intelligence
Client folder (for example, the Designer folder or the Explorer folder).

2-2 Getting Started with Hyperion Intelligence Clients: A Tutorial


✏ Note If you cannot locate the sample files, please contact your Hyperion Intelligence Client
administrator.

3 Select Sample1.bqy and click Open.


The Hyperion Intelligence Client workspace appears and displays the sample
document with the Dashboard active.

4 Choose File→Save Options→Save Query Results with Document.


The Save Query Results With Document dialog box opens.

5 Make sure that the all of the items in the Query, Results and the Computed Columns lists
are selected, and then click OK.

6 Choose File→Save As to open the Save File dialog box.


7 Type a new name for the sample document (for example, practice.bqy) and click Save.

Opening and Saving a Sample File 2-3


Looking at a Simple Query
The Query section is the foundation of an Hyperion Intelligence Client
document. It is the space where you build questions for the database.
The Query section in the sample document is labelled SalesQuery. It is a
simple query constructed for a fictitious company named Books, Movies, and
Video (BMV). BMV distributes books, movies, and videos to a number of
retail stores. To predict trends and locate strengths and weaknesses in its
distribution techniques, BMV warehouses extensive data.

To view the SalesQuery section:

➤ In the Sections pane, select SalesQuery.

Section
Title Bar

Section
Pane

Content
Pane
Database
Tables in the
Catalog Pane

Connection
Icon

2-4 Getting Started with Hyperion Intelligence Clients: A Tutorial


Viewing Database Tables
In Sample1.bqy, there are four tables, also called topics, in the Content pane.
These four topics represent tables in the BMV database. The database tables are
listed in the Catalog pane, located to the left of the Content pane.

To view all the database tables:

1 In the Catalog pane, click the plus sign to the left of Tables.
If you are not connected to the sample database, the Hyperion Sample1.oce
dialog box appears and prompts you for a user name and password.

An OCE is an Open Catalog Extension file that allows you to connect to a


database. The following icons on the Status bar indicate your connection
status:

Connected – You must be connected to a database to work in the


Query section.

Disconnected – You do not need to be connected to a database for


many Hyperion Intelligence Clients tasks.

For the sample database, you do not need to enter any information in this
dialog box.

2 Click OK to connect to the database.


The Tables tree in the Catalog pane expands to show all of the tables in the
database.

Looking at a Simple Query 2-5


Adding Topics to a Query
To include data from a particular table in your query:

➤ Drag and drop the table from the Catalog pane to the Content pane.

Each topic contains a list of topic items that represent fields or rows of data in
the database. In Sample1.bqy, the topics included in the query are Periods,
Sales Fact, Products, and Stores.

Limit Line
Sort Line
Request Line

You build queries by adding topics from the Content pane to the Request line.
You can drag and drop any topic item to the Request line. When you process a
query, Hyperion Intelligence Clients return data for all the topic items present
on the Request line. In the sample, several topic items from each table have
already been dragged to the Request line (for example, Unit Sales, Amount
Sales, Year, Quarter, and so on).
You can also add limits to the data, or specify columns by which to sort the
data. You can apply limits and sorts in either the Query section or the Results
section.
In the Query section, limits instruct the database server to filter unwanted
information from the requested data. Sorts instruct the database server to
retrieve data to your desktop in a particular order.

2-6 Getting Started with Hyperion Intelligence Clients: A Tutorial


Viewing Results
Data returned from a query appears in the Results section. Each column of
results corresponds to items on the Request Line in the Query section. Request
items are listed in the Catalog pane.

To view the Results section:

➤ In the Sections pane, select SalesResults.

Use the arrow buttons on the Section title bar to compare the items in the
Query and Results sections.

SalesResults

Request
Items in the
Catalog Pane

Columns in
the Outliner

Viewing Results 2-7


Reordering Columns
To reorder columns in the Results section:

➤ Drag one column to the left or right of another column.

You can also move column labels in the Outliner.

Sorting Columns
To sort columns of data:

1 If the Sort line does not show, click Sort(0) on the Section title bar.
2 Drag Product Line from the Catalog pane to the Sort line.
3 Click Sort Now to group items by Product Line.

Limiting Data
At times you may have more data in a column than you want. Use the Limit
line to limit the data displayed in a column.

To limit data:

1 If the Limit line does not show, click Limits(0) on the Section title bar.
2 Drag Amount Sales from the Catalog pane to the Limit line. [Ctrl+L]
The Limit dialog box appears.

2-8 Getting Started with Hyperion Intelligence Clients: A Tutorial


3 Select >=Greater or Equal from the Limit drop-down list.
4 Click Custom Values, type 100000 in the field provided, and click OK.
All entries with sales amounts less than $100,000 dollars are dropped from the
Results section.

To remove a data limit:

➤ Delete Amount Sales from the Limit line. [Del]

The data reappears when you remove the limit.

Calculating Data
Hyperion Intelligence Clients can perform calculations on columns of numeric
data.

To sum up numeric data:

1 Select the Amount Sales column.


The Insert Grand Total dialog displays.

2 Choose Results→Grand Total and click OK.


3 Scroll down to the bottom of the table to view the total amount of sales.
BMV total sales for 1999-2000 are $132,881.
If the figure you see does not match $132,881, you need to remove any limits
imposed on the results. Delete any limits from the Limit line and view the total
again. The sum automatically adjusts.
If you see ########, the number is too large to fit in the designated space.

To resize the column:

➤ Choose Format→Column→Auto-Size Width. [Ctrl+A][Ctrl+E]

Viewing Results 2-9


Pivoting Data
In Sample1.bqy, the SalesPivot section is a simple example of a pivot table.
Pivot tables provide multiple angles on your data.

To view the Pivot section:

➤ In the Section pane, select SalesPivot.

The SalesPivot section appears.

Outliner
Button

Dimension Tab

Outliner
Panes

Pivot tables allow you to quickly summarize data in the Results section and
immediately see the relationships between different dimensions of your data.
These reports pivot to provide fresh angles of vision on your data.

To create a pivot table:

1 Select SalesQuery in the Section pane.


2 Choose Insert→New Pivot.
3 If the Outliner is not already visible, click Outliner on the Section title bar.

2-10 Getting Started with Hyperion Intelligence Clients: A Tutorial


Drag one or more items from the Catalog pane into each of the Outliner panes.
Remove items from the Outliner panes and add new ones. Use the Top Labels
pane and Side Labels pane for text. Use the Facts pane for numeric values.

To pivot views:

1 Click the dimension tab at the end of the row labels.


2 Drag the tab down and left to turn your row into a column.
The same data is displayed but with a different angle on the data.

3 Take the tab of the newly formed column and drag it so it becomes a row again.

Calculating Totals and Subtotals


To make effective use of data, you may need to generate totals or subtotals.

Subtotals

Total

Dimension
Handles

To calculate totals and subtotals (as displayed above):

1 Drag Product Line and Region to the Side Labels pane in Outliner.
2 Drag Year to the Top Labels pane in Outliner.
3 Drag AmountSales to the Facts pane in Outliner.
4 Select the dimension handle for Region (click at the bottom of the Region column).
Pivoting Data 2-11
5 Choose Pivot→Add Totals.
A row is added that shows the total number of product line sales for all regions.

6 Select the handle for Product Line and choose Pivot→Add Totals.
A row is added that shows the subtotals (also know as break totals) for each
product line by region.

Drilling Down
More data is available for analysis than is currently visible in your pivot table.

To drill anywhere:

➤ Select the Region column and choose Pivot→Drill Anywhere→Country.

A column is added to your pivot table that shows countries within region.

Drill to
Country

Drill
Indicator

To restore the original pivot table without the Unit Sales column:

➤ Select the Country column and choose Pivot→Drillup.

2-12 Getting Started with Hyperion Intelligence Clients: A Tutorial


Hiding Data
You can temporarily hide data.

To hide an item:

➤ Select a label such as the Americas label and choose Pivot→Hide Items.

To focus on an tem:

➤ Select a label such as the Americas label and choose Pivot→Focus On Items.

To restore your excluded items:

➤ Choose Pivot→Show All Items.

Adding Color
Use the Format toolbar to add color to emphasize aspects of your pivot table.

✏ Note If the Format toolbar is not visible, choose View→Toolbars→Formatting.

To add a line color:

1 Click the label, dimension handle, or column whose line color you want to change.
2 On the Format toolbar, open the Line Color list and select a color from the palette.

To add a fill color:

1 Click the label, dimension handle, or column whose fill color you want to change.
2 On the Format toolbar, open the Fill Color list and select a color from the palette.

To add a text color:

1 Click the label, dimension handle, or column whose text color you want to change.
2 On the Format toolbar, open the Text Color list and select a color from the palette.

Pivoting Data 2-13


Charting Data
Hyperion Intelligence Client charting features make graphic analysis of data
and powerful presentations simple. In Sample1.bqy, the AllChart section is a
chart based on the data from the original query.

To view the Chart section:

➤ Choose Pivot→Show All Items.

The AllChart section appears.

Hyperion Intelligence Clients rapidly convert data from one chart type to
another.

2-14 Getting Started with Hyperion Intelligence Clients: A Tutorial


To change the chart type and format:

➤ Select a chart format from the Chart list.

As you shift from one chart type to another, data may be shifted to different
axes.
In a pie chart, you can draw attention to individual slices by pulling them out
of the pie. To do so, select a slice choose Pull Out Slice on the shortcut menu.

To create a new chart:

1 In the Section pane, select SalesQuery.


2 Choose Insert→New Chart.
Chart appears in the Section pane.

3 In the Section pane, double-click Chart.


The Section Label dialog box appears.

4 Delete Chart and type Unit Sales Region, then click OK.
5 If the Outliner is not already visible, click Outliner on the Section title bar.
Numeric values (facts) are placed in the Y-Facts pane in Outliner. Non-
numeric data (dimensions) are placed in the X-Categories and Z-Categories
panes in Outliner.

6 Drag Unit Sales to the X-Facts pane in Outliner.


7 Drag Region to the Z-Categories pane in Outliner.
8 Drag Product Line to the Y-Categories pane in Outliner.
9 Click a Legend box to change the distribution and patterns of colors.

Charting Data 2-15


Sorting Charts
It is often useful to order the bars of a chart sequentially.

To sort your chart:

1 If the Sort line is not visible, click Sort on the Section title bar.
Sort provides drop-down menus to select sort criteria. Experiment sorting.

2 Click the Ascending or Descending sort icon on the Standard toolbar.


The data on the chart is rearranged in ascending or descending order.

Inserting Text Labels


You can insert a text label anywhere within the chart to further explain or
emphasize a chart component.

To insert a text label:

1 On the shortcut menu, click Insert Text.


The Set Inserted Text dialog box appears.

2 Type the text you want to insert and click OK.


Drag the text box to any position on the chart.
2-16 Getting Started with Hyperion Intelligence Clients: A Tutorial
Designing Reports
The Report Designer is another way to analyze and present data and offers a
great deal of formatting flexibility. You can embed either a pivot table or a
chart directly in a report.

To view a report section:

➤ In the Section pane, select RegionReport.

The RegionReport section appears.

Table
Groups
Outliner
Outliner

To create a new tabular report:

1 Choose Insert→New Report.


Blank columns appear in the Content pane.

2 Click Groups and Table on the Section title bar to see all panes in the Outliner.
In the Report section, create reports by dragging items from the Catalog pane
to the Groups Outliner and the Table Outliner.

Designing Reports 2-17


The Groups Outliner allows you to drag nonquantifiable items and create
separate tables for each label in a report group. In other words, when you
designate a results column to serve as a report group, you instruct Hyperion
Intelligence Clients to organize data in repeating collections of records
according to the Report group.
The Table Outliner is divided into the Dimensions and Facts panes. The Facts
pane allows you to drag quantifiable items to show quantity. Totals are
generated automatically in the report body. The Dimensions pane allows you
to drag nonquantifiable items to itemize the facts.

3 In the Catalog pane, double-click the SalesQuery folder, and then click the plus sign to
the left of the SalesResults folder.

4 Drag Year and Quarter into the Dimensions pane in Table Outliner.
5 Drag Amount Sales into the Facts pane in Table Outliner.
6 Drag Territory to the Report Group 1 field of the Groups Outliner.
7 Drag Country to the Report Group 2 field of the Groups Outliner.
The new report has visible section boundaries. Results columns added to the
Facts pane are automatically summed and the totals are displayed in the
tabular report of the report table column.

✏ Note You can disable automatic totaling.

2-18 Getting Started with Hyperion Intelligence Clients: A Tutorial


Creating Smart Reports
Smart reports allow you to embed charts and pivot tables into a report body.
These reports show only the data that is relevant to the report section in which
they are placed. For example, if the report is grouped by year and you insert a
chart in the report body, the chart replicates automatically so that there is a
chart for each year of data in the report. Each year’s chart contains data specific
to that year.

To create a Smart report:

1 In the Catalog pane, click the plus sign to the left of the SalesQuery folder.
2 Drag a Chart icon (use either Unit Sales Region or AllChart) and position it just above
the table in the report body.
Allow some white space between the embedded chart and the table.
In the newly-created Smart report, the chart changes to reflect the data specific
to each country within a territory.

Designing Reports 2-19


2-20 Getting Started with Hyperion Intelligence Clients: A Tutorial
Sorting Columns
To sort table columns:

➤ Select a table column, and then drag it to the Sort line.

Multiple table columns can be added to the Sort line to create a nested sort.

Setting Up a Report Page


To set up a report page:

1 Choose Report→Report Setup.


The Report Page Setup dialog box appears.

2 On the Margin page, set margin sizes (top, bottom, left, and right) and click OK.
3 On the Column page, specify the number of columns on a page and the default column
width and spacing, then click OK.
Page breaks can be inserted before and after a report body or before and after a
Report Group label.

To insert a page break:

➤ Select a Report Group header (be careful not to select the Report Group label) and on
the shortcut menu, choose Page Break After or Page Break Before.

To remove a page break:

➤ Select a Report Group header with a page break applied, and on the shortcut menu,
choose Page Break After or Page Break Before to remove the check mark.

What Next
You have seen some of the powerful functionality of Hyperion Intelligence Clients and
the ease with which you can use it. While there is still a great deal more to learn about
Hyperion Intelligence Clients, you now have a solid foundation for learning additional
techniques. To find out more about the Hyperion Intelligence Client workspace and
commands that are available to you, proceed to Chapter 3, “Hyperion Intelligence
Client Basics.”

Designing Reports 2-21


2-22 Getting Started with Hyperion Intelligence Clients: A Tutorial
3 Hyperion Intelligence Client
Basics

This chapter provides an overview of the Hyperion Intelligence Client


workspace and describes fundamental features and functions. These features,
available through the File, Edit, View, Insert, and Tools menus, help you
manage documents and provide numerous ways to manipulate data in the
query and results sections.

In This Chapter Exploring the Hyperion Intelligence Client Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-2


Managing Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-10
Using Edit Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-40
Changing Workspace Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-41
Inserting Sections and Breaks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-42
Formatting Text and Other Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-43
Formatting Numeric Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-45
Setting Hyperion Intelligence Client Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-54
Exploring the Hyperion Intelligence Client Workspace
When you start a Hyperion Intelligence Client and create a new document or
open an existing document, the Hyperion Intelligence Client workspace
appears.

Menu Bar
Standard
Toolbar Format
Toolbar
Section
Title Bar Limit Line
Sort Line
Request Line
Section
Pane

Content Pane

Catalog
Pane

Connection
Status Bar
Indicator

The Hyperion Intelligence Client workspace is a tri-pane window that


provides the tools and the access you need to perform database operations.
You can resize the window and customize the appearance of most of the
elements in the workspace, and you can decide whether certain elements
should be visible.
Toolbars, buttons, Outliners, and palettes provide quick access to most
functions. All the toolbars, Outliners, and palettes are dockable; that is, they
can be detached and dragged as floating windows to any location on the
workspace. You can also hide these objects from view to reclaim screen space
for report viewing and dashboard applications.

3-2 Hyperion Intelligence Client Basics


Main Menu
The Main menu provides access to all Hyperion Intelligence Client menus and
functions. In addition, certain menus change based on the active Hyperion
Intelligence Client section. For example, only the Query section has the Query
and Data Model menus. Every section has a unique menu whose label matches
the name of the section. Hyperion Intelligence Clients also provide extensive
shortcut menus.

Toolbars
Toolbars provide quick access to frequently used functions and features.
Available toolbars include:
■ Standard Toolbar
■ Navigation Toolbar
■ Formatting Toolbar
■ Section Toolbar

Exploring the Hyperion Intelligence Client Workspace 3-3


Standard Toolbar
The Standard toolbar contains icons for commonly used operations. The
availability of an icon depends on the active Hyperion Intelligence Client
section.

Navigation Toolbar

New Document
Open
Save
Print
Print Preview
Remove
Format Painter
Show Section/Catalog
Insert Section
Properties
Limit
Sort Ascending
Sort Descending
Grand Total
Group Items
Process
Connections
Back
Forward
Dashboard Home
Help

Navigation Toolbar
The Navigation toolbar returns to the dashboard from another section when
the Section catalog, Section title bar, toolbars, and menus are turned off. This
toolbar is hidden by default. When activated, it includes the Back and Forward
buttons and a dashboard Home button.

3-4 Hyperion Intelligence Client Basics


Formatting Toolbar
The Formatting toolbar provides text formatting, styling, and editing
commands.

Font
Font Size
Increase Font Size
Decrease Font Size
Bold
Italic
Underline
Justify Left
Justify Center
Justify Right
Line Color
Fill Color
Text Color
Currency
Percentage
Comma-formatting
Decimal Increase
Decimal Decrease

Section Toolbar
The Section toolbar provides commands for a specific Hyperion Intelligence
Client document section.

Exploring the Hyperion Intelligence Client Workspace 3-5


Section Title Bar
The Section title bar displays the name of the active section (that is, the section
in which you are currently working). The Section title bar includes navigation
buttons, as well as buttons that correspond to the command lines and
Outliners available in a particular section.

Section Command Line Navigation


Buttons Buttons

Command Lines
You use command lines to complete important operations during the query
and reporting processes. The command lines that appear are determined by
the active section. The command lines available in each section are:
■ Query Section – Request, Limit, and Sort
■ Results Section – Limit and Sort
■ Report Section – Sort and Expression

✏ Note All command lines can be docked, resized, or hidden.

Outliners
Outliners are drag-and-drop templates used in the Pivot, Chart, Results,
OLAPQuery, and Report sections. Each Outliner pane corresponds to a
specific layout element of the report. Outliners allow you to easily view, plot,
and manipulate the data in the Content pane.

3-6 Hyperion Intelligence Client Basics


Section Pane

The Section pane lists the sections available in the current document. Possible
sections include:
■ Dashboard – A document front-end that can be customized, which makes
it easy for developers to build and deploy analytic applications and for end
users to access information.
■ Report – A dynamic and analytical designer that provides the ability to
easily develop a complete range of reports. Use the Report Designer’s visual
layout capabilities to drag and drop columns, expression, charts, logos,
bitmaps, and other items to quickly design and customize your reports.
■ Query – The foundation of the Hyperion Intelligence Client document, the
Query section enables you to connect to a relational database and
download a prebuilt query or data model, or build a new data model and
create your own query.
■ Results – Created when you process a query or import data. Hyperion
Intelligence Clients retrieve data to your desktop and displays it in the
Results sections as columns in a table.
■ Pivot – An interactive table that quickly summarizes, or cross-tabulates,
large amounts of data. You can rotate its rows and columns to see different
summaries of the source data, or display the details for areas of interest.
■ Chart – A fully interactive, two- or three-dimensional view of your data
that provides powerful ways to visually analyze your data.
■ Table – A single-dimension report that displays your data in columns.
Tables are often used as building blocks in other sections.

Exploring the Hyperion Intelligence Client Workspace 3-7


■ OLAPQuery – A query section specifically designed for connecting to
multidimensional databases.
■ OLAPResults – Results section for an OLAPQuery.

By default, an Hyperion Intelligence Client document has at least one Query


section and one Results section.

Catalog Pane
The Catalog pane contains the objects you use to build contents.

For example in the Pivot section, the Catalog pane contains Results columns.
In the Query section, the Catalog pane contains the tables available in your
database. In the Report Designer section, the catalog pane contains the Results,
Pivot, and Chart sections in addition to available graphic and field elements
To use an object, drag it from the Catalog pane to the Content pane or to the
Outliner.

3-8 Hyperion Intelligence Client Basics


Content Pane
The Content pane displays a data model or provides a view of the content from
a Query, Pivot, Chart, or Dashboard section.

Status Bar
The Status bar, located below the Content pane, displays information about
the current database connection, document, and document section.
■ The area immediately to the left of the connection icon provides
information about the current document section.
■ The area to the far left displays information about data retrieval and the
current database connection:

Connected

Disconnected

Exploring the Hyperion Intelligence Client Workspace 3-9


Managing Documents
Managing documents involves:
■ Maintaining Documents
■ Saving Documents
■ Specifying Save Options
■ Working with Data Sources
■ Exporting Data
■ Printing Documents
■ Sending Documents
■ Quitting a Hyperion Intelligence Client

You can accomplish all of these tasks by using the commands on the File
menu.

✏ Note See “File Menu Command Reference” on page 3-39 for an overview of all the File menu
commands.

Maintaining Documents
Review the following sections for information on:
■ Creating a New Document
■ Opening an Existing Document
■ Closing a Document

✏ Note Web client users access files through a Web browser.

3-10 Hyperion Intelligence Client Basics


Creating a New Document
To create a new Hyperion Intelligence Client document:

1 Choose File→New, or click the New icon on the Standard toolbar. [Ctrl+N]
The New File dialog box appears.

2 Select a database connection file.


For more information about connection files, see “Data Source Connections”
on page 1-9.

3 Enter your user name and password and click OK.

Opening an Existing Document


To open an existing Hyperion Intelligence Client document:

1 Choose File→Open, or click the Open Document icon on the Standard Toolbar. [Ctrl+O]
The Open File dialog box appears.

2 Select the file you want to open and click OK.

Closing a Document
To close a Hyperion Intelligence Client document:

➤ Choose File→Close. [Ctrl+W]

The Hyperion Intelligence Client prompts you to save changes to your


document.

Managing Documents 3-11


Saving Documents
When you save a document, you save the current formatting and layout of all
Hyperion Intelligence Client sections in the document.

To save a document:

➤ Click the Save button on the standard toolbar, or choose File→Save. [Ctrl+S]

To save the document under a different name:

1 Choose File→Save As.


The Save File dialog box appears.

2 Type a name for the document in the File Name field and click Save.

Specifying Save Options


To select specific save options:

➤ Choose File→Save Options and select the desired option.

Save options include:


■ Save Query Results With Document
■ Compress Document
■ Password Protect Document
■ Password Protect Designer Mode

Save Query Results With Document


This option saves the results of a query and any computed columns (from the
results) with a document and allows you to analyze and generate reports using
the results set without being connected to the database.
For more information about saving results, see “Saving Results Sets” on
page 5-11.

3-12 Hyperion Intelligence Client Basics


Compress Document
The Compress Document option condenses the number of bytes in a
document and saves the document in a compressed file format. It enables you
to quickly transmit the document and saves valuable storage space.
Compression concentrates the number of bytes by removing empty data fields
and unnecessary information. Hyperion Intelligence Clients automatically
decompress the file when you reopen it.

✰ Tip To configure a Hyperion Intelligence Client to compress all documents when


saving, use the Compress All Documents option. See “General Options” on
page 3-57 for more information.

Password Protect Document


Use the Password Protect Document option to restrict access to a document
and ensure the confidentiality of sensitive documents. This option requires
users to input a correct password for document access.

To assign a password to a document:

1 Choose File→Save Options→Password Protect Document.


The Password Protect Document dialog box appears.

2 In the Password field, type the password you want to assign to this document.
Passwords can contain up to 38 alphanumeric characters and are case sensitive.

3 In the Verify Password field, retype the password and click OK.
If the password and the verification do not match, an error message appears.

Caution ! Keep a list of each document and the specific password needed to access it in a
secure place.

Managing Documents 3-13


Password Protect Designer Mode
Use the Password Protect Designer Mode option to do the following:
■ Restrict access to a document script and the scripting environment.
This ensures the integrity and confidentiality of sensitive scripts in a
Dashboard section and when you are working with document scripts.
■ Enable encryption for startup, shutdown, document, and Dashboard
scripts associated with BQY documents.
You must supply a valid to encrypt scripts. (Encrypted scripts are not
functional in releases prior to 6.6.3 or 8.1.) You can still password protect a
document without encrypting any scripts associated with it.
You can define a default encyption state on the General Options tab of the
Designer Options dialog box. When you create a new BQY, the default
encryption state will match the one on the Designer Options dialog box.
Despite the default setting, scripts are only encrypted if the BQY has a valid
Design mode password.
For more information on this command, see the Hyperion Intelligence
Object Model and Dashboard book.

To password protect a script:

1 Choose File→Save Options→Password Protect Designer Mode.


The Password Protect Designer Mode dialog box appears.

2 In the Password field, enter the password required to open the document script.
Passwords can contain up to 38 alphanumeric characters and are case sensitive.

3 In the Verify Password field, retype the password and click OK.
If the password and the verification do not match, an error message appears.

3-14 Hyperion Intelligence Client Basics


To open a password protected script:

1 Do one of the following:


■ Choose File→Document Scripts.
■ Click the Design/Run icon in the Dashboard section run mode.
The Unlock Design Mode dialog box appears.

2 Enter the password required to open the script and click OK.

To encrypt a script:

1 In the Password field, enter the design mode password required to open the script.
Passwords can contain up to 38 alphanumeric characters and are case sensitive.

2 In the Verify Password field, retype the password and click OK.
If the password and the verification do not match, an error message appears.

3 Select the Encrypt Dashboard scripts for new document.

Working with Data Sources


You can use a prebuilt data model or you can import files from other
applications and use the data as the source for your document. As you work
with data sources, you can use the following commands:
■ Open From Repository
■ Save To Repository
■ Import Data File
■ Import SQL

Managing Documents 3-15


Open From Repository
Use the Open From Repository command to select a prebuilt data model as the
basis for a new document.
Repository objects ensure that your documents maintain a standard look and
feel. If you are not experienced with database access, repository objects also
help you get the data you need quickly and easily.

✏ Note Your administrator grants you access to the Hyperion Intelligence Client Repository that
contains the data models you need. Before selecting from a Repository catalog, make sure you
have connections for the correct databases. If necessary, check with your administrator to see
which database contains the Hyperion Intelligence Client Repository, or in which owner area of
the Repository a particular object is located.

To open a document using a repository object:

1 Choose File→Open From Repository→Select.


The Select Connection dialog box appears.

✏ Note You can also choose to use the connection file currently in use, if there is one. Current OCEs
are listed below the Select menu item.

2 Select the connection file you want to use and click OK.
3 In the Password dialog box, type your user name and password and click OK.
The Open From Repository dialog box appears and displays information
about the selected object.

3-16 Hyperion Intelligence Client Basics


■ Unique Name – Name of repository object
■ Creator – Creator of the repository object
■ Created – Date on which the repository object was created
■ Description – General description of the repository object, its contents, and
the type of information that can be queried

4 Navigate through the repository tree to select the repository object you want to use and
click Open.
The Hyperion Intelligence Client downloads the repository object to the
appropriate section.

Save To Repository
Hyperion Intelligence Client Designers can use the Save To Repository
command (on the File menu) to upload repository objects (data models,
standard queries, and standard queries with reports) for version-controlled
distribution to networked Hyperion Intelligence Client users.

Managing Documents 3-17


Import Data File
Use the Import Data File command to use data stored in Microsoft Excel,
tab-delimited, or comma-delimited file formats. The data appears in the
Results section. You can then use the imported data to build reports and
perform data analysis.

To import a data file:

1 Choose File→Import Data File→Data File.


The Import File dialog box appears.

2 Navigate to the location of the file you want to import.


Select a file type from the Files of Type drop-down list to make the file easier to
find. Choose from:
■ Tab delimited (.txt)
■ Comma delimited (.csv)
■ Excel File (.xls)

3 Select the file you want to import and click OK.


The data from the imported file is displayed as a table in the Results section.

3-18 Hyperion Intelligence Client Basics


Import SQL
The Import SQL command allows you to take a complete SQL statement from
a text file, import it into an existing query, and retrieve the data set from the
database server. Use this feature to take advantage of SQL statements you have
already written.
Before importing SQL files, make sure that the following conditions are true:
■ The SQL file you want to import begins with a SELECT statement.
■ The Query section of your Hyperion Intelligence Client document is active.
■ The connection to the database is active.
■ The Content pane does not contain any tables.

You also need to know the number of columns to display in the Results section.
After you import the SQL file into the Query section:
■ You cannot edit it.
■ You cannot drag items from the table to the Request line.
■ You cannot use the custom SQL feature.
■ You cannot display its properties.

However, you can specify a user-friendly name for the Request item and
identify its data type.

To import SQL files:

1 Choose File→Import Data File→SQL.


The Import File dialog box appears.

2 Navigate to the location of the file you want to import.


3 Select the file you want to import and click OK.
The Hyperion Intelligence Client prompts you for the number of data
columns. The number that appears by default in the dialog box is an estimate.

Managing Documents 3-19


4 Type the number of columns and click OK.
The Hyperion Intelligence Client inserts the SQL statement directly into the
content, nested between the header and footer “Imported SQL Statement.” If
the statement is larger than the visible Content pane, use the scroll keys to view
it.

Exporting Data
Hyperion Intelligence Clients allow you to export data to other file formats for
use with non-Hyperion Intelligence Client applications. Review the following
sections for information on exporting data:
■ Defining Export Properties for Dynamic HTML in the Results and Table
Sections
■ Defining Export Properties for Dynamic HTML in the Pivot and OLAP
Section
■ Defining Export Properties for Dynamic HTML in the Chart Section
■ Defining Export Properties for Dynamic HTML in the Report Section
■ Defining Export Properties for Static HTML in the Results and Table
Sections
■ Defining Export Properties for Static HTML in the Pivot and OLAP
Sections
■ Defining Export Properties for Static HTML in the Report Section
■ Exporting a Section
■ Exporting a Document as a Web Page
■ Browser and HTML Restrictions and Limitations
■ Using the Export to HTML Wizard
■ Exporting SQL
■ Exporting a Query Log
■ Exporting Scripts To a Text File

3-20 Hyperion Intelligence Client Basics


Defining Export Properties for Dynamic HTML in the Results and Table
Sections
Before exporting data to an HTML file to use in the Intelligence iServer (Web
browser), use the Export Properties dialog box to specify export properties for
data.
The Export Properties dialog box is separated into two discrete sections for
exporting either to dynamic or static HTML. Common export features are
shown at the top of the dialog.
The options in this section allow you to override any default pregeneration
settings defined in the Hyperion Intelligence Publisher. Before any new setting
takes effect, you must publish (or republish) the BQY file. Any dynamic HTML
changes you make either through the Export Properties dialog box or through
the Object Model are not inherited until you republish the BQY file.
Static HTML by definition has pregenerated data and is stored locally.

To specify export properties:

1 Choose Format→Export Properties.


The Export Properties dialog box appears.

Managing Documents 3-21


2 Specify the number of vertical rows to include on an HTML page before starting a new
page (file) by checking the Vertical Page Break checkbox and entering the number of
rows.
The default setting is 100 rows per HTML page. (Select Pixels to specify the
number of pixels instead of rows).
To export to one file or to have no page break, leave the Vertical Page Break
checkbox blank.

3 In the Dynamic HTML section, select the desired dynamic export properties.
Specify to pregenerate the HTML for All Pages. Enabling pregeneration for all
pages can place high demands on the Hyperion Intelligence Repository,
especially if the section is large. (Select First and Last _ pages to specify a range
of pages to pregenerate).

4 For data exported to tab-delimited text files, select the Export Without Quotes check box
to exclude double quotation marks around real column/cell values in the exported files.

5 Click OK.

Defining Export Properties for Dynamic HTML in the Pivot and OLAP
Section
Before exporting data to an HTML file to use in the Intelligence iServer (Web
browser), use the Export Properties dialog box to specify export properties for
data.
The Export Properties dialog box is separated into two discrete sections for
exporting either to dynamic or static HTML. Common export features are
shown at the top of the dialog.
The options in this section allow you to override any default pregeneration
settings. Before any new setting takes effect, you must publish (or republish)
the BQY file. Any dynamic HTML changes you make either through the
Export Properties dialog box or through the Object Model are not inherited
until you republish the BQY file.
Static HTML by definition has pregenerated data and is stored locally.

3-22 Hyperion Intelligence Client Basics


To specify export properties:

1 Choose Format→Export Properties.


The Export Properties dialog box appears.

2 Specify the number of vertical rows to include on an HTML page before starting a new
page (file) by checking the Vertical Page Break checkbox and entering the number of
rows.
The default setting is 100 rows per HTML page. (Select Pixels to specify the
number of pixels instead of rows).
To export to one file or to have no page break, leave the Vertical Page Break
checkbox blank.

3 Specify the number of horizontal columns to include on an HTML page before starting a
new page (file) by checking the Horizontal Page Break checkbox and entering the
number of rows.
The default setting is 100 columns per HTML page. (Select Pixels to specify the
number of pixels instead of columns).
To export to one file or to have no page break, leave the Horizontal Page Break
checkbox blank.

Managing Documents 3-23


4 In the Dynamic HTML section, select the desired dynamic export properties.
Specify to pregenerate the HTML for All Pages. Enabling pregeneration for all
pages can place high demands on the Repository, especially if the section is
large. (Select First and Last _ pages to specify a range of pages to pregenerate).

5 For data exported to tab-delimited text files, select the Export Without Quotes check box
to exclude double quotation marks around real column/cell values in the exported files.

6 Click OK.

Defining Export Properties for Dynamic HTML in the Chart Section


Before exporting a chart section to an HTML file to use in the Intelligence
iServer (Web browser), use the Export Properties dialog box to specify export
properties for data. Note that any dynamic HTML changes you make either
through the Export Properties dialog box or through the Object Model are not
inherited until you republish the BQY file.

To specify export properties:

1 Choose Format→Export Properties.


The Export Properties dialog box appears.

3-24 Hyperion Intelligence Client Basics


2 To match the maximum number of bars displayed (X and Z directions) for HTML
renderings (static or Intelligence iServer) with the corresponding values on the Label Axis
tab of the Chart Properties dialog (that is, use the Designer settings for the chart), check
the Sync with Chart Properties field.
To manually set the maximum number of bars to display per view, uncheck the
Sync with Chart Properties field. When the X-Axis Maximum Bars Displayed
and Z-Axis Maximum Bars displayed are active, you can set the maximum
number of bars to display for both the X axis and the Z axis. The horizontal
scrollbar controls scrolling of the X axis, and the Vertical scrollbar controls
scrolling of the Z axis.

3 Select the desired dynamic export properties and click OK.


Specify whether to pregenerate the HTML for All Pages. Enabling
pregeneration for all pages can place high demands on the Repository,
especially if the section is large. (Select First and Last _ pages to specify a range
of pages to pregenerate).
Specify whether to pregenerate the HTML for All Views. Enabling
pregeneration for all views can place high demands on the Repository,
especially if the section is large. (Select First and Last _ views to specify a range
of views to pregenerate).
Specify whether to show Chart Boundaries. The chart boundary consists of the
rectangular parameters, measured in pixels, that surround the actual chart,
legend and label(s).
Specify the height of the vertical boundary and the width of the horizontal
boundary in pixels.

Managing Documents 3-25


Defining Export Properties for Dynamic HTML in the Report Section
Before exporting a chart section to an HTML file to use in the Intelligence
iServer (Web browser), use the Export Properties dialog box to specify export
properties for data. Note that any dynamic HTML changes you make either
through the Export Properties dialog box or through the Object Model are not
inherited until you republish the BQY file.

To specify export properties:

1 Choose Format→Export Properties.


The Export Properties dialog box appears.

2 Select the desired dynamic export properties and click OK.


Specify to pregenerate the HTML for All Pages. Enabling pregeneration for all
pages can place high demands on the Hyperion Repository, especially if the
section is large. (Select First and Last _ pages to specify a range of pages to
pregenerate).

3-26 Hyperion Intelligence Client Basics


Defining Export Properties for Static HTML in the Results and Table
Sections
Before exporting data to static HTML, use the Export Properties dialog box to
specify export properties for data in the Results and Table sections.

To specify export properties:

1 Choose Format→Export Properties.


The Export Properties dialog box appears.

2 Specify the number of vertical rows to include on an HTML page before starting a new
page (file) by checking the Vertical Page Break checkbox and entering the number of
rows.
The default setting is 100 rows per HTML page. (Select Pixels to specify the
number of pixels instead of rows).
To export to one file, or to have no page break, leave the Vertical Page Break
checkbox blank.

3 Select the desired export properties.


Check the Export with Style Sheet (CSS) option to create a Cascading Style
Sheet file separate from the HTML file. If this field is unchecked, the style sheet
information is embedded in the HTML file itself.

4 For data exported to tab-delimited text files, select the Export Without Quotes check box
to exclude double quotation marks around real column/cell values in the exported files
and click OK.
Managing Documents 3-27
Defining Export Properties for Static HTML in the Pivot and OLAP
Sections
Before exporting data to static HTML, use the Export Properties dialog box to
specify export properties for data in the Pivot section.

To specify export properties:

1 Choose Format→Export Properties.


The Export Properties dialog box appears.

2 Specify the number of vertical rows to include on an HTML page before starting a new
page (file) by checking the Vertical Page Break checkbox and entering the number of
rows.
The default setting is 100 rows per HTML page. (Select Pixels to specify the
number of pixels instead of rows). To export to one file, or to have no page
break, leave the Vertical Page Break checkbox blank.

3 Specify the number of horizontal columns to include on an HTML page before starting a
new page (file) by checking the Horizontal Page Break checkbox and entering the
number of rows.
The default setting is 100 rows per HTML page. (Select Pixels to specify the
number of pixels instead of rows). To export to one file, or to have no page
break, leave the Horizontal Page Break checkbox blank.

3-28 Hyperion Intelligence Client Basics


4 Select the desired export properties.
Check the Export with Style Sheet (CSS) option to create a Cascading Style
Sheet file separate from the HTML file. If this field is unchecked, the style sheet
information is embedded in the HTML file itself.

5 For data exported to tab-delimited text files, select the Export Without Quotes check box
to exclude double quotation marks around real column/cell values in the exported files.

6 Click OK.

Defining Export Properties for Static HTML in the Report Section


Before exporting data to static HTML, use the Export Properties dialog box to
specify export properties for data in the Report section.

To specify export properties:

1 Choose Format→Export Properties.


The Export Properties dialog box appears.

2 Select the desired export properties.


Check the Export with Style Sheet (CSS) option to create a Cascading Style
Sheet file separate from the HTML file. If this field is unchecked, the style sheet
information is embedded in the HTML file itself.

3 Click OK.

Managing Documents 3-29


Exporting a Section
After processing a query, you can export the data contents of the Results, Pivot,
Chart, Table, or Report sections for use in other applications. If you export
from a Results section, the data is raw and unaggregated. If you export from a
report section, the data is already aggregated.
In addition, you can export the contents of a Dashboard section to a JPEG file.

To export the current section to a file:

1 Choose File→Export→Section.
The Export Section dialog box appears.

2 Specify the location where you want to save the file.


3 Type a name for the section to be exported in the File Name field.
4 Choose a file format from the Save As Type drop-down list. Choose from:
■ Excel (.xls)
■ Lotus 1-2-3 (.wks)
■ Tab delimited (.txt)
■ HTML (.htm)
■ Comma delimited (.csv)
■ JPEG (.jpg)
■ PDF (.pdf)(Adobe Acrobat Reader 5.x is recommended)
The available export file formats change depending on which section you
export.

✏ Note Choose Format→Export Properties to set properties for files exported to text or HTML.

5 Click Save to export the data in the specified format.


You also can use the clipboard to cut and paste the data into another
application.

3-30 Hyperion Intelligence Client Basics


Exporting a Document as a Web Page
Use the Export Document As Web Page command to publish the contents of a
Hyperion Intelligence Client document as a Web page. You can select which
sections of the current document to include in the export set.
Documents sections are exported in the same order as they appear in the
Hyperion Intelligence Client document. Exportable document sections
include: Results, Table, Pivot, Chart, and reports created with the Report
Designer. Imported sections that have been added to the document, such as
text files and Excel files, can also be exported. Data models and the Query,
OLAPQuery, and Dashboard sections are not exportable. Neither are empty or
blank sections.
The files created by this export option include:
■ Main (or frameset) HTML (.htm) page
■ Document-type icons (.gif )
■ Cascading style sheets (.css) that describe the layout primitives
■ Individual HTML (.htm) pages for each selected section
■ JPEG files (.jpg) with the report content

After these files are posted to a Web site, you can access the files individually or
use the main HTML file to view the frameset, which lists the sections in the
report. The exported Web pages include navigation buttons so you can scroll
back and forth between pages, or jump to the beginning or end of a document.
In addition, the current page number and total number of pages are included
in the report.

✏ Note The Export As HTML and HTML Wizard options in prior versions of Brio Intelligence and
BrioQuery remain unchanged. However, we recommend that you use the Export As Web Page
option.

Managing Documents 3-31


To export a Hyperion Intelligence Client document as a Web page:

1 Choose File→Export→Document As Web Page.


The Export Document As Web Page dialog box appears.

2 Select the sections of the document that you want to export and click OK.
To select all sections, click Select All. To clear all selected sections, click
Deselect All.
The Save As Type dialog box appears.

3 Navigate to the location where you want to save your Web page.

✰ Tip Create a separate folder to store the files created by this export option.

4 Type a name for the exported Web page in the File Name field, or accept the default
name, for example Sample1.htm.
The Save As Type field is set to *.htm by default. All of the HTML files that the
export process creates begin with the name specified in the File Name field, for
example, Sample1Chart.htm, Sample1Pivot.htm, and so on. The HTML
file with the exact same name as the name specified in the File Name field is the
main HTML page, and it contains the frameset and links to all of the other
pages, for example Sample1.htm.

5 Click Save.
To view the exported selection, open your Web browser, choose File→Open,
browse to the location of the exported files, and open the main HTML page.

3-32 Hyperion Intelligence Client Basics


Browser and HTML Restrictions and Limitations
Browser and HTML restrictions may affect how graphics and formatting
appear on Web pages created by exporting document sections. The known
restrictions and limitations are:
■ Diagonal lines, ovals, round rectangles, and dotted or dashed lines do not
export to the Web page. Overline or double-overline text appears as regular
text.
■ The Netscape browser shows data formatted with bold Arial 8 pt. as regular
Arial 8 pt.
■ Data formatted with Arial 14 pt. appears smaller in Hyperion Intelligence
Clients and Netscape than in Microsoft Word and Internet Explorer.
■ Border properties (including color properties) are supported in Microsoft
Internet Explorer, but not in Netscape. Consequently, border properties for
the Results, Table, and Pivot sections do not appear on Web pages opened
with Netscape. If you embed a Results, Table, or Pivot section in a report,
Netscape does recognizes the border properties.
■ Raised and sunken borders are displayed as regular borders.
■ Lines and rectangles do not appear in reports in UNIX browsers.
■ The right border of a table embedded in a report sometimes appears thicker
in Netscape.
■ The Picture Tile property is not supported by HTML.
■ Word-wrapped fields contain hard-coded leading spaces for left padding.
HTML permits the browser to implement word-wrap, but eliminates
extraneous space. In addition, a browser word-wrap feature does not break
a word in the middle of a word regardless of its length.
■ When empty table cells appear with a certain font, it is because Hyperion
Intelligence Clients inserts a single blank into each empty cell. HTML
requires a single value in each empty cell.
■ HTML does not recognize vertical text.

Managing Documents 3-33


Using the Export to HTML Wizard
The Export To HTML Wizard helps you create Web pages from existing
charts, reports, and pivot tables.

✏ Note We suggest you use the Export Document As Web Page command (see “Exporting a Document
as a Web Page” on page 3-31) rather than the HTML Wizard.

To use the Export to HTML Wizard:

➤ Choose File→Export→HTML Wizard.

Exporting SQL
Use the Export SQL command to export the SQL statement for your query.
The file is saved in an SQL format.

To export SQL:

1 Choose File→Export→SQL.
The Export SQL File dialog box appears.

2 Specify the file name and location and click Save.

3-34 Hyperion Intelligence Client Basics


Exporting a Query Log
When you process a query, the Hyperion Intelligence Client translates your
request into SQL or a multidimensional database query statement and
forwards it to the database server.

To save the contents of the SQL log to a text file:

1 Choose File→Export→Query Log.


The Export Query Log dialog box appears.

2 Specify the file name and location, and then click Save.

Managing Documents 3-35


Exporting Scripts To a Text File
Use the Export Scripts To Text File command to export JavaScript code and
associated events contained in a BQY file into a text file (TXT). Hyperion
Intelligence Clients and web client categorize the text file by object name and
events, and includes document and custom menu item scripts.

To export a script to a text file:

1 Choose File→Export→Script To Text File.


The Export Script dialog box appears.

2 Specify the file name and location, and then click Save.

Printing Documents
Hyperion Intelligence Client printing functions are available for most
document sections. You can specify the page setup for your printer, print
directly to a printer, or preview a print job onscreen.

Page Setup
Use the Page Setup command to specify the default printer for a Hyperion
Intelligence Client document and to define default page properties for that
printer.

3-36 Hyperion Intelligence Client Basics


To define page setup information:

➤ Choose File→Page Setup.

Print Preview
Use the Print Preview command to view onscreen a representation of the
printed version of a finished report. The Print Preview command is available
for all sections except the Dashboard. In the Report Designer section, the page
view of the report is a direct representation of the printed report.

To preview a section before sending it to a printer:

➤ Choose File→Print Preview

A preview of the current section appears in the Content pane, and a Print
Preview menu is added to the Main menu. Use the commands on the Print
Preview menu to navigate through the preview pages and to specify starting
page numbers.

Print
Use the Print command to print the information displayed in the Content
pane of most sections.

To print the information in a Hyperion Intelligence Client document:

➤ Choose File→Print. [Ctrl+P]

Managing Documents 3-37


Sending Documents
You can attach documents to your electronic mail (email) if you have a
MAPI-compliant email system such as Microsoft Mail or Microsoft Exchange.

To email a document:

1 Choose File→Send.
The Mail Document window appears.

2 Select the name of the document recipient.


You can send the document with or without the results. Sending a BQY
document with the results enables the recipient to do further analysis.
A document sent without the results contains snapshots of the Chart, Pivot,
and other reporting sections, but not of reports created using the Report
Designer. No further analysis is possible.

3 Select whether to copy other recipients or include additional remarks, then click Send It.

Quitting a Hyperion Intelligence Client


To end your Hyperion Intelligence Client session:

➤ Choose File→Exit.

If documents remain open, you are prompted to save changes to each


document before it shuts down.

3-38 Hyperion Intelligence Client Basics


File Menu Command Reference
Table 3-1 provides a quick reference to the commands available on the File
menu and list any related shortcuts. The commands listed are those available
in Query and Results sections.

Tab le 3 - 1 File Menu Commands

Keyboard
Command Description Shortcut

New Opens the New File dialog box. [Ctrl+N]

Open Opens the Open File dialog box. [Ctrl+O]

Close Closes the active document. [Ctrl+W]

Save Saves the active document [Ctrl+S]

Save As Opens the Save As dialog box.

Save Options Allows you to specify save options for the active document
such as saving result sets, compression, or password protec-
tion.

Open From Repository Opens the Open From Repository dialog box for the selected
database, from which you choose a data model to use as the
basis of a new document.

Save To Repository Saves data models to the repository for version-controlled dis-
tribution to networked Hyperion Intelligence Client users.

Import Data File Imports data stored in Microsoft Excel, tab-delimited, or


comma-delimited file formats to the Results section for analy-
sis and reporting.

Export Exports data to the selected format.

Document Scripts Opens the Script Editor for the selected object.

Page Setup Opens the Print Setup dialog box.

Print Preview Toggles Print Preview mode and the Print Preview menu. Dis-
plays a preview of the current section in the Content pane.

Print Prints the information displayed in the Content pane. [Ctrl+P]

Send Attaches a document to an email message.

Exit Shuts down the Hyperion Intelligence Client. [Alt+F4]

Managing Documents 3-39


Using Edit Commands
The Edit menu contains standard editing commands. It also contains
commands that allow you to work with document sections. (See “Formatting
Numeric Data Types” on page 3-45 for detailed information on working with
document sections.)
Table 3-2 provides a quick reference to the commands available on the
Edit menu and lists any related shortcuts. The commands listed are those
available in the Query and Results sections.

Tab le 3 - 2 Edit Menu Commands

Keyboard Shortcut
Command Description Shortcut Menu

Undo Reverses the last command issued. [Ctrl+Z]

Redo Re-applies the actions or commands on which you [Ctrl+Y]


have used the Undo command.

Cut Cuts the selected item. [Ctrl+X] ✔

Copy Copies the selected item. [Ctrl+C]

Paste Paste the last copied item. [Ctrl+V]

Clear Clears entry fields in dialog boxes.

Select All Select all items or elements, depending on the loca- [Ctrl+A]
tion of the cursor.

Delete Section Opens the Delete Section dialog box. ✔

Rename Section Opens the Section Label dialog box. ✔

Duplicate Section Duplicates the selected section and adds the copy ✔
to the Section pane with a sequenced number
appended to the section name.

Duplicatable Makes the selected section duplicatable, which


means it can be copied.

3-40 Hyperion Intelligence Client Basics


Changing Workspace Views
The View menu allows you to toggle the display of interface elements, such as
panes, toolbars, and so on. It also provides commands for working with
sections. (See “Formatting Numeric Data Types” on page 3-45 for detailed
information on working with document sections.)
Table 3-3 provides a quick reference to the commands available on the
View menu and list any related shortcuts. The commands listed are those
available in the Query and Results sections.

Tab le 3 - 3 View Menu Commands

Shortcut
Command Description Menu

Section/Catalog Toggles the display of the Section and Catalog panes.

Section Title Bar Toggles the display of the Section title bar.

Toolbars Toggles the display of the Standard, Format, and Section tool-
bars.

Status Bar Toggles the display of the Status bar.

Console Window Opens the Console window, which is used to display error mes-
sages and alert values generated by the JavaScript interpreter.

Execution Window Opens the Execution window, which is used to test script com-
mands in the Dashboard section.

Go To Section Navigates to the section selected from the list of sections in the
current document.

Hide Section Hides the active section.

Unhide Section Opens the Unhide Section dialog box which lists currently
hidden sections.

Query Log Opens the Query Log dialog box, which displays the command
language statement for the active query.

Zoom Changes the display of the active section to the selected zoom
setting.

Hide Request Item Hides the selected Request item from view. ✔

Unhide Request Item Opens the Unhide Columns dialog box, which lists currently ✔
hidden Request items.

Changing Workspace Views 3-41


Tab le 3 - 3 View Menu Commands (Continued)

Shortcut
Command Description Menu
SQL Opens the Custom SQL window where you can edit the SQL
statement for a query.

Properties Opens the Properties dialog box for the selected topic or topic ✔
item.

Inserting Sections and Breaks


Use the commands on the Insert menu to insert new sections in your
Hyperion Intelligence Client document. You can also insert page headers and
footers for use when printing certain sections.
Table 3-4 provides a quick reference to the commands available on the
Insert menu and list any related shortcuts. The commands listed are those
available in the Query and Results sections.

Tab le 3 - 4 Insert Menu Commands

Command Description

New Query Inserts a new Query section.

New OLAP Query Inserts a new OLAPQuery section.

New Table Inserts a new Table section.

New Pivot Inserts a new Pivot section.

New Chart Inserts a new Chart section.

New Report Inserts a new Report section.

New Dashboard Inserts a new Dashboard section.

Page Header Inserts a page header that is used when the section is printed.

Page Footer Inserts a page footer that is used when the section is printed.

✏ Note See “Formatting Numeric Data Types” on page 3-45 for detailed information on adding
document sections and customizing the headers and footers in the document sections.

3-42 Hyperion Intelligence Client Basics


Formatting Text and Other Elements
Use the commands on the Format menu to change the formatting properties
of text, numbers, borders, rows, columns, exported documents, and so on.
Most of these commands can also be found on the Formatting toolbar (see
page 3-5).
Table 3-5 provides a quick reference to the commands available on the
Format menu and lists any related shortcuts. The commands listed are those
available in the Query, Results, and OLAPQuery sections.

Tab le 3 - 5 Format Menu Commands

Keyboard Shortcut
Command Description Shortcut Menu

Font Opens the Font page of the Properties dialog box. ✔

Style Choose between Plain, Bold, Italics, Underline, Over-


line, Double Underline.

Number Opens the Number page of the Properties dialog box. ✔

Justify Choose between Left, Center, Right and Top, Middle, ✔


Bottom.

Column By default, Results columns are evenly sized without


regard to the length of data values. Numeric data that
does not fit is replaced with pound signs (#).

To manually resize a column, drag the right edge of the


column to a new position.

Auto-Size Width Resizes the selected column to the width of the con- [Ctrl+E]
tents.

Standard Width Resizes the selected column to the standard column


width.

Row Resizes all rows to the standard row height.

To resize all rows in a table, drag the bottom edge of a


row to a new position. All rows in the table are resized.

Column Titles Toggles the display of column titles.

Formatting Text and Other Elements 3-43


Tab le 3 - 5 Format Menu Commands (Continued)

Keyboard Shortcut
Command Description Shortcut Menu
Row Numbers Toggles the display of row numbers. Row numbers are
printed on reports, but are not copied to the clipboard
or exported to a file.

Text Wrap Wraps text in a column. ✔

Suppress Suppresses duplicate values in a column. Use this ✔


Duplicates feature if you want to display only the first instance of
a duplicate value when individual database records
include redundant information.

Grid Lines Opens the Gridlines page of the Properties dialog box.

Border and Opens the Border and Background page of the Proper-
Background ties dialog box.

Spotlighter Opens the Spotlight dialog box. Use to spotlight impor-


tant values.

Export Properties Opens the Export Properties dialog box. Use to set the
number of rows that should be included on an HTML
page before the data breaks to another page, and to
export data that does not contain any quote to a tab-
delimited text file.

✰ Tip To automatically size all columns so that the column width fits its contents,
press [Ctrl+A] [Ctrl+E].

✏ Note See “Formatting Numeric Data Types” on page 3-45 for detailed information on working with
document sections.

3-44 Hyperion Intelligence Client Basics


Formatting Numeric Data Types
This section discusses formatting numeric data types in the following areas:
■ Changing Numeric Formatting
■ Displaying Numbers in Scientific Notation

Changing Numeric Formatting


You can change the formatting properties of numeric data types (real and
integer) in the following ways:
■ Select an object, right-click to access the Number speed menu, and select a
numeric formatting option from the menu.
■ Use the buttons on the right-hand side of the Formatting toolbar.

Table 3-6 describes the numeric formatting buttons on the Formatting


toolbar:

Tab le 3 - 6 Numeric Formatting Buttons

Button Description

Currency – Applies currency formatting to the selected numeric object(s). The


currency formatting applied is the first currency type for the selected locale
specified in the BQFORMAT.INI file. To display all the available currency types
for the current local, click the arrow to the right of the Currency button.

Note: The Currency button is ignored if the selected object is not of a numeric
type (real or integer).

Percentage – Applies percentage formatting to the selected numeric


object(s). The percentage formatting applied is the first percentage format for
the selected locale specified in the BQFORMAT.INI file. To display all the
available percentage formats for the current local, click the arrow to the right
of the Percentage button.

Note: The Percentage button is ignored if the selected object is not of a


numeric type (real or integer).

Formatting Numeric Data Types 3-45


Tab le 3 - 6 Numeric Formatting Buttons (Continued)

Button Description

Comma Formatting – Toggles the presence of the thousands-separator


character on or off. If on, comma formatting inserts the thousands-separator
character into the current format string for the selected object. The
thousands-separator character is inserted based on current locale settings.

Note: Comma formatting does not affect numbers formatted with scientific
notation.

Decimal Increase – Increases the number of displayed digits after the


decimal point (or its locale-specific equivalent).

For example, if the current format for the field specifies three decimal digits,
such as $#.000, pressing Decimal Increase modifies the format to $#.0000.

Pressing Decimal Increase when the number of decimal positions is zero adds
the decimal separator character in addition to the one decimal digit. For
example, if the format is ##%, pressing Decimal Increase changes the format
to ##.0%.

Note: The Decimal Increase button is ignored if the selected object is not of a
numeric type (real or integer).

Decimal Decrease – Decreases the number of displayed digits after the


decimal point (or its locale-specific equivalent).

For example, if the current format for the field specifies three decimal digits,
such as $#.000, pressing Decimal Decrease modifies the format to $#.00.

If the number of decimal positions goes from one to zero when pressing
Decimal Decrease, the decimal separator is no longer part of the format.
Pressing Decimal Decrease when the number of decimal positions is already
at zero results in no action.

Note: The Decimal Decrease button is ignored if the selected object is not of
a numeric type (real or integer).

✏ Note Hyperion Intelligence web client users must have Analyze or greater privileges to change the
formatting properties of numeric data types. If you are a web client user with less than Analyze
privileges, you cannot change the formatting; however, you will see the effects when formatting
changes are applied to a published BQY file.

3-46 Hyperion Intelligence Client Basics


Displaying Numbers in Scientific Notation
Hyperion Intelligence Clients allow you to display numbers in scientific
notation. The default scientific notation format is:
0.00E+000

The scientific notation format appears using the appropriate decimal separator
for the current local. (The above example uses a period as the decimal
separator.)
Table 3-7 describes the acceptable variations on the default scientific notation
format:

Tab le 3 - 7 Variations on the Default Scientific Notation Format

Variation Description

The number of For example, 0.00000E+000 displays six digits of precision.


decimal positions
after the decimal
separator.

# Used after the decimal point to suppress zeros.

For example, the value .000179 with the format 0.00000E-00 displays as
1.79000E-04. With the format 0.0####E-00, the same value displays as
1.79E-04.

E or e Controls the case in which the exponent designator displays.

E0 E+0 E-0 (and If the plus sign is used, the exponential component always displays with a
the lower case sign (plus or minus).
equivalents)
If the minus sign or no sign is used, the sign displays only when negative.

E+0 to E+000 The number of zeros following the E or e, with or without a sign character, is
the minimum number of digits to display for the exponent. For example, the
value 179 displays as 1.79E2 with the format 0.00E0 and as 1.79e002
with the format 0.00e000.

If the minimum number of digits is not adequate to represent the magni-


tude of the number, additional digits are added as required. For example,
the value 1,789,000,000,000 with the format 0.00E0 displays as
1.79E12.

Leading + or – sign A leading minus sign (or no sign character) displays a sign only if the preci-
sion of the number is negative. The appropriate sign always displays if the
plus character leads the string.

Formatting Numeric Data Types 3-47


✏ Note You cannot apply scientific notation to non-numeric data types. If you try to do so, the
formatting remains the same.

Working with Document Sections


Working with document sections involves:
■ Understanding Document Sections
■ Adding Sections
■ Viewing Sections
■ Moving Between Sections
■ Duplicating Sections
■ Renaming Sections
■ Adding Headers and Footers to Sections
■ Deleting Sections

Understanding Document Sections


Documents are divided into multiple sections, each of which governs one step
of the query and reporting procedure. You create sections progressively as you
query a database, retrieve results, and generate reports.
A document usually includes Query and Results sections. From the Results
section, you can create multiple Pivot, Chart, Table and Report sections to
analyze and present data. You can also create Dashboard sections, which
provide an automated push-button interface to a document.
Each section occupies an independent window and performs distinct
operations. You can move back and forth between sections at any time to
rebuild your query or alter your result data. You can also position sections
side-by-side in multiple windows.
To see a graphical representation of a document section, click the desired
section name in the Section pane.

3-48 Hyperion Intelligence Client Basics


Figure 3-1 shows some example document sections displayed in the Section
pane.

F i g ure 3 - 1 Document Sections in the Section Pane

Adding Sections
To insert a new section in a document:

➤ Choose Insert→New Section.

For example, to insert a new Chart, choose Insert→Chart, to insert a new


Table, choose Insert→Table.
The Hyperion Intelligence Client inserts the new section and adds a new
section label to the Section pane. The section label is based on the type of
section added. A sequence number is added to the section label if a section
with the same name already exists.

Viewing Sections
You can hide sections to simplify your view of the Hyperion Intelligence Client
workspace. This allows you to concentrate on only those sections in which you
want to work.

To hide a section:

1 In the Section pane, select the section that you want to hide.
2 Choose View→Hide Section.

Working with Document Sections 3-49


To view a hidden section:

1 Choose View→Unhide Section.


The Unhide Sections dialog box appears.

2 Select the hidden section that you want to view and click OK.
The section appears in the Section pane.

Moving Between Sections


Although each section occupies an independent window and performs distinct
operations, you can move back and forth between sections at any time to
rebuild your query or alter your results data. You can also position sections
side-by-side in multiple windows.
You can easily navigate between sections to work on queries, results, and
reports.
To move between sections, use one of the following options:
■ Select the desired section in the Section pane.
■ Click the arrow keys on the Section title bar.
■ Choose View→Go To Section→Section.

Duplicating Sections
You can copy Query, OLAPQuery, Chart, Pivot and Dashboard sections if the
Duplicatable feature is selected.

To make a section duplicatable:

➤ Select the section label in the Section pane and choose Edit→Duplicatable.

To duplicate a section:

➤ Select the section label in the Section pane and choose Edit→Duplicate Section.
The Hyperion Intelligence Client duplicates the section and adds a new section
label to the Section pane. The new section label is based on the original section
label, but a sequence number is appended to the label. For example, if you
duplicate a section named SalesChart three times, the Section pane would
show: SalesChart, SalesChart2, SalesChart3, and SalesChart4.

3-50 Hyperion Intelligence Client Basics


Renaming Sections
The first section that you create is given the default section name, for example,
Query or Results. When you insert new sections of the same type as those that
already exist, they are numbered sequentially, for example, Query2, Results2,
and so on. To assign sections different or unique names based on your
application, use the Rename command.

To rename a section:

1 In the Section pane, select the section label.


2 Choose Edit→Rename.
You can also click Rename Section on the shortcut menu, or double-click the
desired section.
The Section Label dialog box appears.

3 Type a new name in the Label field and click OK.

Adding Headers and Footers to Sections


You can add custom headers and footers and page numbers to your printed
section.

To add a header or footer:

1 Choose File→Print Preview.


A preview of the current section appears in the Content pane.

2 Choose Insert→Page Header (or Page Footer).


The Edit Header (or Edit Footer) dialog box appears.

Working with Document Sections 3-51


Date
Time
File Name
Page Number
Page Total
Limits Applied in the Query

3 Enter the desired text or use the buttons in the dialog box to add current date, time, file
name, page, page total, or limit values and click OK.
The Hyperion Intelligence Client adds the new header or footer to your report.
You can change the font properties and alignment of headers and footers, but
you cannot add color.

To edit a header or footer:

➤ Double-click the header or footer you want to edit, make any desired changes, and then
click OK.

3-52 Hyperion Intelligence Client Basics


Deleting Sections
You can delete a section, but do so with care. Some sections are dependent on
other sections. Deleting one section could also delete one or more sections that
you did not want to delete. Note that you cannot restore a deleted section.

To delete a section:

1 In the Section pane, select the section label.


2 Choose Edit→Delete Section.
You can also select the section and click Delete Section on the shortcut menu.
The Remove Section dialog box appears.

3 Click Remove.

Working with Document Sections 3-53


Setting Hyperion Intelligence Client Options
The Tools menu provides commands that allow you to manage various
Hyperion Intelligence Client options, such as job processing options,
connections, default formats, and program options.
Review the following sections for information on:
■ Specifying Default Formats
■ Selecting Program Options
■ Customizing Menus
■ Tools Menu Command Reference

✏ Note See “Tools Menu Command Reference” on page 3-64 for an overview of all the Tools menu
commands.

Specifying Default Formats


This section explains how to set up and change the way fonts, styles, numbers,
currency values, and dates appear within the Hyperion Intelligence Client
workspace. Default formats that you can set include:
■ Default Fonts and Styles
■ Default Number Formats

Default Fonts and Styles


You can control the way fonts are displayed in every Hyperion Intelligence
Client section (except Results and Dashboard) by applying default font and
formatting styles to each section element.

To change default fonts and text settings:

1 Choose Tools→Options→Default Formats.


The Default Fonts And Styles dialog box appears, with tabs that contain
specific font settings for each section.

3-54 Hyperion Intelligence Client Basics


2 Click the tab for the section whose fonts and styles you want to change.
3 Make the desired default font, size, style, and alignment settings and click OK.
To restore the default settings, click Defaults.

Default Number Formats


You can change the way numbers, currency values, and dates appear
throughout a Hyperion Intelligence Client, or you can create new custom
formats. Use the Numbers tab of the Default Fonts and Styles dialog box to
specify default settings for number formats.
Table 3-8 lists the fields available on the Numbers tab.

Tab le 3 - 8 Default Number Formats

Field Description

Select a Formatting Sets the locale or country associated with the default format that you
Locale want to use. The locale that you select determines the available number,
date, and currency formats.

Date Sets the default date format.

Timestamp Sets the default time and date format.

Time Sets the default time format.

Setting Hyperion Intelligence Client Options 3-55


Tab le 3 - 8 Default Number Formats (Continued)

Field Description
Month (For “Add Sets the default month format for the month used in Add Date Groups.
Date Groups”)

Null Sets the default format for null values.

Null values are empty values for which no data exists. Null values are not
equal to zero.

Real Sets the default format for real values.

Integer Sets the default format for integer values.

Table 3-9 lists the numeric field options and definitions along with examples.

Tab le 3 - 9 Number Field Descriptions

Option Description Examples

0 Integer placeholder or zero value. If a number Apply 0 to show 123


has an integer value in this position relative to
the decimal point, the integer is displayed. Apply 0.00 to show 123.45
Otherwise, a zero is displayed.

# Integer placeholder. If a number has an integer Apply #,##0 to show 1,234


value in this position relative to the decimal
point, the integer is displayed. Otherwise,
nothing is displayed.

() Formats with parenthesis options display nega- Apply (#,##0) to show (1,234)
tive values in parentheses. Otherwise, negative
values display with a minus sign.

; A semicolon operates as a separator between Apply #, ##0;(#,##0) to show


two number formats. The semicolon separates 1, 234 or apply (1, 234) for a
a positive integer and a negative integer. negative number

$ % Adds the respective character to numeric Apply $#,##0.00 to show


values in the same position relative to the $1,234.56
decimal point.
Apply 0% to show 3%

m d yy Displays month, day, and year in respective Apply mm dd yy to show


positions for date-coded information. 05 07 99

3-56 Hyperion Intelligence Client Basics


Tab le 3 - 9 Number Field Descriptions (Continued)

Option Description Examples


-/ Adds the respective character to date-coded Apply mm/dd/yy to show
values in the same position relative to vari- 06/23/99
ables.

HH MM SS Displays hour, minute, and second in respec- Apply HH:MM:SS to show


tive positions for date-coded information. 17:45:10

: AM PM Adds the respective character to time-coded Apply HH:MM:SS AM to show


values in the same position relative to vari- 17:45:10 AM
ables.

Selecting Program Options


This section explains how to set up default file locations, enable and disable
specific operating functions, administer document features, define drill-down
paths, and set OLAP options. Review the following sections for information
on:
■ General Options
■ File Locations
■ OLAP Options

General Options
Use the General tab to globally enable or disable specific operating functions.

To select general options:

1 Choose Tools→Options→Program Options.


2 Click the General tab in the Options dialog box.

Setting Hyperion Intelligence Client Options 3-57


3 Define the desired options and click OK.
■ Auto Logon – Maintains an existing connection whenever you create a new
document. If you are currently logged on, Hyperion Intelligence Clients
prompts you to use the current connection.
■ Reset Print Properties – Retains the print settings with each section of the
document, instead of inheriting the current default print settings.
■ Compress All Documents – Specifies that the Hyperion Intelligence Client
save all documents in compressed file format. This reverses the default
setting, which saves documents without compression. If enabled, you can
override this privilege and save documents without compression by
choosing File→Save As and changing the Save As type.
■ Create New Documents Compressed – Specifies that the Hyperion
Intelligence Client only compress new documents.
■ Always Prompt For Owner Name – Requires Hyperion Intelligence Clients
to prompt for an owner name of job scheduling repository tables whenever
you schedule a document. Enable this feature if you schedule documents to
more than one repository.

3-58 Hyperion Intelligence Client Basics


■ Encrypt Dashboard scripts for new document – Enables the default
encryption state for a new bqy document in the Password Protect Designer
Mode option. When a new bqy is created, the default encryption state will
match the one on the Designer Options dialog. The setting chosen in this
field does not affect the encryption state of any existing bqy (including the
active document.) Note that encrypted scripts are not be functional in a
release prior to 6.6.3 or 8.1. Despite the default setting you select, scripts
will only be encrypted if the bqy has a valid Design mode password.
■ When A Two Digit Year Is Entered, Interpret As A Year Between – By
default, if you enter a date and type only two digits for the year, the
Hyperion Intelligence Client handles the dates as follows:
❑ Two-digit years entered from 00 up to and including 29 are assigned to
the 21st century (2000 to 2029). For example, if you enter 3/12/18, the
Hyperion Intelligence Client accepts the date as March 12, 2018.
❑ Two-digit years entered from 30 up to and including 99 are assigned to
the 20th century (1930 to 1999). For example, if you enter 3/12/96, the
Hyperion Intelligence Client accepts the date as March 12, 1996.
You can change the default century to which a two-digit year is assigned by
using the date-handling boxes. These boxes require a range of dates within
a 99-year time period. Changes to a date format are applied globally, but do
not affect dates previously formatted.
For example, if you want the two-digit year 25 to be assigned to the
twentieth century instead of the twenty-first century use the arrow keys to
scroll to the year 1999. The date in the corresponding read-only
date-handling box is automatically changed to 1900.

✰ Tip Whenever possible, enter the year as four digits; that is, type 2001 instead of
01.

Setting Hyperion Intelligence Client Options 3-59


File Locations
Use the File Locations tab to specify the default locations for Hyperion
Intelligence Client documents and other necessary files.

To specify default file locations:

1 Choose Tools→Options→Program Options.


The Options dialog box appears.

2 Click the File Locations tab.

3 Enter the desired options and click OK.


■ Documents Directory – The default directory where you want to save
Hyperion Intelligence Clients documents when the Save File dialog box
appears. Hyperion Intelligence Clients documents are saved in the default
directory with the .bqy extension.
■ Connections Directory – A directory that contains the OCEs used to
connect to databases. The default Connections directory is
c:\brioqry\Open Catalog.
■ Default Connection – The OCE Hyperion Intelligence Clients uses when
no connection is specified, such as when you click the connection icon in a
new document file.

3-60 Hyperion Intelligence Client Basics


■ Preferred Repository Connection – The repository connection file you
want the user to see in the Open Repository Connection drop-down list.
■ HTML Template Directory – The directory of HTML templates used with
the HTML Export Wizard.

OLAP Options
Use the OLAP tab to have the Hyperion Intelligence Client automatically
create a Results section when you click Process to process your OLAPQuery

To select OLAP options:

1 Choose Tools→Options→Program Options.


The Options dialog box appears.

2 Click the OLAP tab.

3 Define the desired options and click OK.


Auto-Generate Results Section When Processing an OLAP Query –
Automatically create a Results section for any future OLAPQuery section when
that OLAPQuery section is first processed.

Setting Hyperion Intelligence Client Options 3-61


Customizing Menus
You can use JavaScript to customize Hyperion Intelligence Client and web
client (with Query&Analyze or DataModel&Analyze adaptive state privileges)
menus. Add scripted menu items to the menu bar to:
■ Run commonly used scripts
■ Launch separate applications
■ Export sections to a different file format with a single click

✏ Note Since version 6.0, JavaScript is used as the script-editing tool instead of the Hyperion
Intelligence Clients scripting language. Script written prior to version 6.0 is still recognized, but
is enclosed in a wrapper and called with a JavaScript command.

To add a custom menu:

1 Choose Tools→Customize.
The Customize dialog box appears.

2 Type the name of your custom menu in the Menu Name field.

3-62 Hyperion Intelligence Client Basics


3 Click Add to add a new menu item to the Menu Items list.
The Properties dialog box appears and displays the Text page.

4 Type a name for the menu item.


Select one or more check boxes to indicate the sections where the menu item
should appear.

5 Click the Script tab to display the Script page.


Enter script commands to be run when the item is chosen from the menu. If
you plan to deploy the menu item to a group of users, make sure that
commands which reference external applications or files use universal paths.

6 Click OK to return to the Customize dialog box.


Add separator lines and move menu items as needed to complete the final
menu.

7 Click OK when you are finished to close the Customize dialog box.
8 To provide the same functionality for distributed users, copy the preference file which
supports this feature to users’ machines.
■ For Windows, the bqtools.ini file is located in the Windows directory.
■ For UNIX, the .bqtools.ini file is located in the user home directory.

Setting Hyperion Intelligence Client Options 3-63


Tools Menu Command Reference
Table 3-10 provides a quick reference to the commands available on the
Tools menu and list any related shortcuts. The commands listed are those
available in the query and results sections.

Tab le 3 - 10 Tools Menu Commands

Keyboard
Command Description Shortcut

Process Query Processes the current query, all queries in the document, or a
customized selection of queries.

Connection Allows you to select, log on, log out, modify, or create a connec-
tion.

Connections Manager Opens the Connections Manager dialog box. [F11]

Save Connection Saves a connection file with a Hyperion Intelligence Clients


document.

Administer Repository Opens the Administer Repository dialog box, where you can
modify object descriptions or groups.

View Job List Shows run time and status details for each job submitted to a
job repository.

Options Allows you to set default formats or program options.

Customize Opens the Customize dialog box where you can add customized
menus or menu items.

What Next
This chapter provides a reference for many of the menu commands used throughout
Hyperion Intelligence Clients. Now you are ready to learn core query techniques.
Proceed to Chapter 4, “Querying Relational Databases,” which explains how to build a
relational query by downloading prebuilt data models from a repository, and how to
create your own data model and use it to build a relational query.

3-64 Hyperion Intelligence Client Basics


4 Querying Relational Databases

This chapter explains how to use Hyperion Intelligence Clients to connect to


and query a relational database.

In This Chapter Query Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-2


Building Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4
Processing Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6
Saving Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-8
Cancelling Queries. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-9
Working with Query Section Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-20
Query Menu Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-32
Query Section
The Query section is the foundation of any Hyperion Intelligence Client
document and is automatically created (along with its complementary Results
section) whenever you open a new document. It provides an intuitive interface
to a relational database server.

Query Menu DataModel Menu

Request
Line
Section
Pane Topic

Topic
Items

Database
Tables

Join
Catalog
Pane Content
Pane

Status
Bar

A Hyperion Intelligence Client document can contain multiple Query


sections. These query sections can access a wide range of data sources
(relational databases, OLAP servers, imported data sets, and local joins). Each
Query section has its own Results section and can be associated with the same
database or different databases (that is, the connection file or data model used
is independently defined in each query).

4-2 Querying Relational Databases


Using Data Models in the Query Section
Relational queries use data models to view the server database tables and create
queries. Depending on your Hyperion Intelligence Client tool, you can
download a prebuilt data model to the Query section, or build a data model
and create your own query.
When you connect to a database, the tables in the database appear in the
Catalog pane of the Query section. A data model is a visual representation of
these tables. You use a data model to create queries that specify which data to
fetch from the database and retrieve for analysis.

To view the database tables in the Table catalog:

➤ Choose DataModel→Table Catalog. [F9]

The Table catalog in the Catalog pane expands to show all of the tables in the
database. If you are not connected to a database, Hyperion Intelligence Clients
prompt you for your user name and password.

To create a data model:

➤ In the Catalog pane, select a table from the Table catalog, and choose Query→Add
Request Item(s).

Query Section 4-3


Building Queries
You build queries by adding topics from the data model in the Content pane to
the Request line.

To build a relational query:

1 Click the Request button on the Section title bar to display the Request line.
2 Complete one of the following actions:
■ Drag an item from the Content pane to the Request line.
■ Select an item in the Content pane and choose Query→Add Request
Item(s).
To add an entire column from a table to the Request line, select the table
header. You also can select more than one of the same item (to create duplicate
items)
If you add more items than the Request line can display, use the arrow buttons
at the right of the Request line to scroll through the requested items, or resize
the Request line to display multiple rows of request columns.

Working with Items on the Request Line


As you build your query, you can reorder, remove, or hide items on the Request
line. This allows you to change the way in which the query processes and
displays.

Reordering Request Items


You can move Request items to reorder them for viewing results.

To reorder items on the Request line:

➤ Select the item to be moved and drag it to a new location on the Request line.

Removing Request Items


You can remove items from the Request line to exclude the data from your
query or Results set.

4-4 Querying Relational Databases


To remove an item from the Request line, select the desired item and complete
one of the following actions
■ Click the Delete button on the standard toolbar.
■ Click Remove on the shortcut menu.
■ Press the Delete key [Del].
If you have not yet processed the query, Hyperion Intelligence Clients remove
the item from the Request line. If you have previously processed the query, you
are informed that your results no longer match the items requested.

Caution ! Remove items with caution as a computed item or report may draw data from
the item you delete.

Hiding Request Items


You can hide items that appear on the Request line. This allows you to
incorporate data in the results set without displaying it. Hidden request items
cannot be referenced for computations.

To hide a request item, complete one of the following actions:


■ Select the item and click Hide on the shortcut menu.
■ Select the item and choose View→Hide Request Items.

To show a hidden request item:

1 Complete one of the following actions:


■ Click in the Request line and click Unhide on the shortcut menu.
■ Choose View→Unhide Request Items.
The Unhide Columns dialog box appears.

2 Select the items you want to view and click OK.


When you have identified the items you want to include in your query, you can
perform a number of other operations before processing the query. You can
add limits or computed items to the Request line, or you can use a Request line
item to specify a sort order.
For more information about limits, see Chapter 7, “Using Limits.” For more
information about computed items, see Chapter 8, “Working with Computed
Items.” For more information about sorts, see Chapter 9, “Applying Sorts.”

Building Queries 4-5


Processing Queries
After you build your query and apply limits, computations, sorts, and any
other adjustments to further refine your request, you need to process it.
Processing your query may take a few moments if your query is complex or if
the data in linked report sections needs to be refreshed.
When you process your query, the data is retrieved to the Results section in
tabular form. You can reprocess your query at any time and in any section to
refresh the data. You can also return to the Query section from any other
section at any time to alter the query and reprocess it.

To process a query, use one of the following options:


■ Click the Process button on the standard toolbar. (Click the right-arrow to
select a process option.)
■ Choose Tools→Process Query and select the desired process option.

Since a document can contain multiple queries, there are three processing
options on the Process drop-down list:
■ Process Current – Processes the current object. In some cases more than
one query may be processed, for example, if a report references results sets
from multiple queries. Process Current is the default selection when using
the toolbar button.
■ Process All – Processes all the queries in the document. By default, queries
are processed in the order in which they appear in the section catalog. For
example, in a document with three queries, Query1, Query2, and Query3,
the queries are executed in that order when you select Process All. (See
“Query Processing Order” on page 7.).
■ Process Custom – Opens the Process Custom dialog box so that you can
indicate which queries to process by selecting a query’s check box.

The Hyperion Intelligence Client sends the query to the database and display
retrieved data in the Results section. While the data is being retrieved, the
Status bar displays a dynamic row count indicating rate and progress of server
data processing and network transfer.

4-6 Querying Relational Databases


Query Processing Order
If there are multiple queries in a document, you can determine the order in
which they get processed, and select which queries to include or exclude from
the processing stream.
This feature is particularly useful when you need to use “fresh” data during a
local join operation, or you want to ensure that your local results are populated
with current data from a source query not affected by several earlier tables
without duplicating the processing of some queries.
Query Processing Order is available for the Query section, OLAPQuery section
and any imported data files sections that can be processed in a BQY file when
you use the “Process All” feature.

✏ Note Query processing order settings are saved with the document. For a temporary processing
order, do not save the document or set the processing order to what is normal for the given
document.

To specify a query processing order:

1 Choose Tools→Process Query→Processing Order.


The Query Processing Order dialog box appears.
The first time the Query Processing Dialog is displayed after the new
document is created, all query sections belonging to the document appear in
the order which they appear in the Section Catalog (top down). Query sections
added after the existing sections have been arranged, appear at the end of the
list in the order in which they were added when the dialog is reopened.

Processing Queries 4-7


2 Select a query section and then move it up or down in the processing order using the
arrow keys to the right.

3 Double click a query section to remove it from the processing order or add it back.
Only queries with an asterisk (*) are processed during “Process All”.

4 Click OK.
5 Choose Tools→Process Query→All.

Saving Queries
After you process a query, your data is available until you close the document.
Saving your document saves the current formatting and layout of all Hyperion
Intelligence Client sections in the document.
To save your query, choose File→Save. For a complete discussion of save
options, see “Saving Documents” on page 3-12 and “Saving Results Sets” on
page 5-11.

4-8 Querying Relational Databases


Cancelling Queries
In order for you to use the following command to cancel a query, both
Intelligence Clients and the database must communicate properly for reasons
other than running a query. Requirements include:
■ The OCE used to connect to the database must use an Asynchronous API.
This is the default configuration, but can be turned off on some databases.
If the Asynchronous API s disabled, the database cannot detect a new
request until the query has finished processing.
■ The database must pause every so often even when processing a query. As a
default configuration, many databases are not set up to pause, which could
result in the database being too busy to hear the cancel request until the
query has finished processing.

To cancel a query:

➤ Press and hold [Alt+End] until the query is cancelled.

Building Subqueries
You can use subqueries to filter your data. A subquery answers a specific
question or provides specific information within the context of a main query,
also called a “parent” statement. The database evaluates the entire query by
first analyzing the subquery. The parent statement then filters its rows based on
the rows retrieved by the subquery. Hyperion Intelligence Clients use two
types of subqueries: regular and correlated.

Regular Subqueries
A regular subquery executes the inner and outer queries once and returns the
values from the inner query to the outer query. For example, you might need
to find out who sold more than the average of all sales representatives in April.
You first use a subquery to define what was the average sales amount in April.
This information is supplied to the parent query, which then determines which
representatives exceeded the average of all sales in April.

Building Subqueries 4-9


To build a regular subquery:

1 Select an existing parent query or build a parent query.


2 Use one of the following options to select an item on which you want to set a limit:
■ Double-click the topic item
■ Drag the item from the Content pane to the Limit line
■ Right-click and item and select Limit on the shortcut menu.
The Limit dialog box appears.

3 Click Advanced.
The Advanced button toggles the Create Subquery button.

Click here to create


a subquery.

4 Click Create Subquery.


A subquery indicator shows that you are working with a subquery and not the
parent query, even though the parent query’s data models are displayed in the
Content pane (which now has a gray background).
The Subquery section is considered a child of the parent query and is
subordinate to the parent query. That is, it is dependent on the parent query
and does not have its own default Query or Results sections. Subqueries can be
nested within other subqueries, in which case the first subquery becomes the
parent query to the subquery nested inside it.

4-10 Querying Relational Databases


5 Build the query.
Only one item can be on the Request line, but you can add server and local
limits, set a limit inside a subquery as a variable, and define data functions and
computations as needed.

6 In the Section pane, click the parent query for the subquery.
The parent query section is redisplayed.

7 Click Process to process the parent query and subquery.

Correlated Subqueries
A correlated subquery is related to a regular subquery in that it uses an inner
query to feed result values to the outer query. A correlated subquery executes
the outer query multiple times, once for each row returned by the inner query;
it is processed by joining a column in the subquery to a column in the parent
query.
For example, suppose you had to identify which sales representatives had more
sales in the current month than they did in the previous month. The correlated
subquery is executed for each row of sales information in the parent query to
first determine what were the sales for each representative in the previous
month. This data, in turn, is compared to sales for each representative in the
current month, and only those representatives whose sales in the current
month were greater that their previous month’s sales are returned.

To build a correlated subquery:

1 Select an existing parent query or build a parent query.


2 Use one of the following options to select an item on which you want to set a limit:
■ Double-click the topic item
■ Drag the item from the Content pane to the Limit line
■ Right-click and item and select Limit on the shortcut menu.
The Limit dialog box appears.

3 Click Advanced.
The Advanced button toggles the Create Subquery button.

4 Click Create Subquery.

Building Subqueries 4-11


A subquery indicator ( ) shows that you are working with a subquery and not
the parent query, even though the parent query’s data models are displayed in
the Content pane (which now has a gray background).
The Subquery section is considered a “child” of the parent query and is
subordinate to the parent query. That is, it is dependent on the parent query
and does not include its own default query or results section.
Subqueries can be nested within other subqueries, in which case, the first
subquery becomes the parent query to the subquery nested inside it.
A subquery is correlated based on a join from a column in the subquery to a
column in the parent query.

5 Build the query.


Only one item can be on the Request line, but you can add server and local
limits, set a limit inside a subquery as a variable, and define data functions and
computations as needed.

6 If the parent query you want to work with does not appear in the Catalog pane, choose
Show Queries from the shortcut menu in the Section pane.

7 Drag the parent query into the Content pane.


The parent query appears as a blank topic in the Content pane.

8 Drag the topic item you want to correlate by into the blank parent query topic.
The Select Correlation Column dialog box appears and displays the tables of
the parent query.

9 Use the + and – signs to navigate through the structure of the directory tree.
10 Select the column in the parent to which you want to join the subquery topic item and
click OK.
The topic item is added to the Limit line and a join line is drawn.

11 In the Section pane, click the parent query section.


The parent query section is redisplayed.

12 Click Process to process the entire query.


The topic item added in the subquery shows the label sub next to the topic item
name.

4-12 Querying Relational Databases


Derived Tables
A “Derived table” is essentially a statement-local temporary table created by
means of a subquery in the FROM clause of a SQL SELECT statement. It exists
only in memory and behaves like a standard view or table.
For example, assume an Oracle 9i database table is called “state_table” and has
the following row values in the “state” column.

State
CA

CA

CA

FL

If you used the following inner SELECT statement which includes a derived
table to evaluate the “state_table”, you could return the count and percentage
of each state. The SQL has been written for Oracle 9i.
select state, count(state) as State_Count,
(count(state)/derived_table.tot_state_count) as State_Percentage
from state_table,
(select count(state) tot_state_count from state) derived_table
group by state, derived_table.tot_state_count;

The results of the query appear below:

State State_Count State_Percentage


CA 3 0.75

FL 1 0.25

Derived Tables 4-13


Derived tables are useful when you need to generate aggregates in a table that
would otherwise contain dimension type data and join the resulting aggregate
with detail level facts in another table.
Additionally, the aggregate values in the derived tables can be used in the outer
query's WHERE clause (i.e., "where salary > average_salary", average_salary
has been derived by the subquery). These tables can also optimize a query's
performance in some circumstances, such as minimizing sorting when some
DISTINCT values are needed from some tables but not all. Finally, it might
eliminate the need in some cases, to build "local results" queries. This feature
enables Intelligence Clients users to access this type of SQL construct in an
easy-to-build manner.

Derived Tables Rules and Behavior


The rules and behavior of a Derived Table include:
■ A Derived Table cannot be “iconized”.
■ A Derived Table only has two speed menu options: “Add Selected Items”
and “Remove”.
■ When you modify a Query section that is used as a Derived Table, note the
following:
❑ Derived tables are available for connections to Teradata, DB2, Oracle,
and Microsoft SQL Server. If you use the feature when you build a query,
an active connection is required if the server code is ODBC or OLEDB
so that the “smart ODBC” can determine the database type.
❑ Designer, Explorer and the web client (with a web client analyzer role)
all can use this feature. Scripts in documents opened with the
Intelligence iServer can also use this feature.
❑ If you remove all items from the Request line, the topic appears empty
(there are no columns) in the section(s) where they are used as a derived
query.
❑ If the columns referenced by the “deriving” Query section are removed
from the Request line, the effect is the same as if a “sync with database”
had found the column removed.

4-14 Querying Relational Databases


❑ If you rename items in a Query section used as a derived table, you must
ensure that the new name is a valid name for the database in use. These
names are used during the SQL generation, and are quoted if “quoted
identifiers” are selected in the OCE.
❑ Items from “Local Results” collection cannot be added to the Query.
❑ The icon used for a Derived Table in the Table Catalog tree is shown on
the left.
❑ Both the referencing query and the derived table query must use the
same data source even if one or the other is not connected. For example,
assume Query1 is built from DataModel1, and Query2 is a query section
not derived from a DataModel section. That is, you must be sure that
both Query1 and Query2 can connect to the same data source name
(such as an ODBC data source name or an Oracle TNS name), and they
share the same API and server codes. The data source name alone may
not be sufficient since two names can be identical over two different
APIs. However, it is not required that the connections use the same
database credentials. You do have to ensure that the referenced tables
are accessible from whatever logon is used in all selected Query sections.
❑ Web client users need at least a Query role to use derived tables in an
existing data model, or data model role to add or remove them from the
data model.

To build a query that uses a “Derived Table”

1 Build the query which will use the “Derived Table” and process the query.
2 Insert a new query by choosing New Query on the Insert menu.
A derivable query can be built for a relational database.

3 Build the “Derived Table” query by clicking anywhere in the Catalog Pane and choosing
Derivable Queries on the shortcut menu.
The “Derivable Queries” option does not appear if no existing query sections
can be used in the current query.
(The Table Catalog below shows and the Derivable Queries tree expanded and
the Tables tree contracted. Local Results only appear when a user has requested
them from the speed menu.)

Derived Tables 4-15


The only queries that appear in this list are those that:
■ have the same connection information as the current Query section,
■ have at least one item on the Request line,
■ do not use local joins,
■ do not also contain derived table topics (that is, derived tables are not
nestable).
The topic name, when a derived table is added to the workspace, is the same as
the Query section name, and the column names are the same as the names of
the items on the Request line in the Query section being added with the
exception of any (data) function component. In cases where the function
appears on the Request line, then the resulting topic item name would be the
same as the name that would appear in Results after processing the query. The
following diagram illustrates how the Request line for Query2 would appear as
a topic in another Query section:

4 Create a manual join by dragging an item from at least one topic to another, including
to/from the added derivable query sections.
Once the derived table becomes a topic, items from it can be added to the
Request, Limit, or Sort lines of the containing query. It can be referenced in
computed item dialogs, and can be used in custom GROUP BY logic.
If you use the Show Values feature when setting a limit on an item in the
“derived table”, the SQL that would be used is the same as if you set a limit on
the same column in the source Query section.

4-16 Querying Relational Databases


5 Process the query using the derived table
You can process the query by way of “Process” command when viewing the
query section (or one of its dependent sections) or by checking it in the Process
Custom dialog.
The “Process All” command process the query containing the derived table. It
also processes the query section from which the derived table is derived, unless
it explicitly removed using the Query Processing Order dialog (which is
recommended to avoid duplication of processing at the database.)
Additions to the Request line of the source Query are reflected in the topic item
list of the referencing Query section the next time it is displayed.
Once a Query section has been added to another Query or Data Model
workspace, changes to the source query section will check for dependencies
and warn you of any discrepancies that might occur. For example, you would
receive a warning if you removed an item from the source query’s Request line
which is used someplace else (Request, Limit, Sort, etc.) in a Query that is
deriving a table from the source query.

Derived Tables and SQL


Review the following sections for information on:
■ Custom SQL
■ Processing a Query that Contains another Query Section

Custom SQL
If t you open the Custom SQL window in a query that has a derived table topic,
then the SQL for the derived table is shown in the custom SQL window as part
of the overall query. At this point, the SQL is locked; changes in the source
query section for the derived table are not reflected in this SQL until such time
as the user presses the Reset button. Further more, when you process the query
with the Custom SQL window open, it is executed “as is”.

Derived Tables 4-17


Processing a Query that Contains another Query Section
When you process a Query section that contains another Query section, it
forms SQL that uses what are called “derived tables”, which are essentially
subquery statements in a FROM clause. Intelligence’s SQL generation phase
will:
■ Generate the SQL for the Query section being used as a topic in the current
Query section being processed, including resolving any variable limits. Any
Sort line items in the source Query section are ignored in generating the
SQL. This generation only occurs if the contents of the Query as a topic is
referenced by the currently processing Query section, following the rules
for join path generation specified for the currently processing section.
■ The resulting SQL will be added to the currently processing Query section if
required, in the FROM clause, surrounded by parentheses, as with any
subquery.
■ The entire subquery is given a table alias. The alias will follow the pattern
for any table involved in a query and will thus be of the form “ALn”. As with
subquery limits, any aliases used in the subquery itself will be distinct from
the alias names used in the currently processing Query section’s table
references. The alias will be used thereafter to refer to columns in the
“derived table”, as is normal for SQL generation based on physical tables.
■ Following the table alias name, “ALn”, a parenthesized list of column aliases
is added. This list is identical to the list of names of the topic items in the
Query topic. (For Oracle, the column aliases appear in the select list of the
subquery instead of in a separate parenthesized list, for example, SELECT
AL1.STORE AS store….)
■ Before submitting the resulting SQL to the database, a check is performed
to ensure that the query is properly joined. If it is not, the standard
behavior, as specified by the OCE preference “Allow Non-Joined Queries”, is
taken.
■ Following submission of the SQL, any references to the column alias names
on the Request line of the currently processing Query section are available
to build the dependent Results section.
■ The minimum requirement is that if the “derived table” is referenced by the
currently processing query, then its SQL is generated as if that section were
processed alone, with the exceptions noted above. At initial implementation
or in a future release, the SQL would include only those columns actually

4-18 Querying Relational Databases


needed by reference in the currently processing Query. This would reduce
the number of items in the SELECT list of the subquery, with a
corresponding reduction in the number of column alias names.
For example, assume the following Query section is to be used as the source
for a “derived table” in another Query section:

In this example, the computed item’s definition is


“UCASE (Pcw_Customers.Buyer)”. The limit on ‘Store Type’ is set to
‘Discount’.
The Query section using “Query” as a derived table might appear as
follows:
In the previous diagram, the limit on City is set to ‘Los Angeles’. The SQL
generated when the above query is processed, per the minimum requirements,
would be:
SELECT AL2.STATE, SUM(AL1.UNITS) FROM PCW_SALES AL1,
(SELECT AL3.STORE_ID, AL3.CITY, AL3.STATE, UCASE(AL3.BUYER)
FROM PCW_CUSTOMERS AL3
WHERE AL3.STORE_TYPE = ‘Discount’) AL2(STORE_ID, CITY, STATE,
COMPUTED)
WHERE AL2.STORE_ID = AL1.STORE_ID AND AL2.CITY = ‘Los Angeles’
GROUP BY AL2.STATE

Derived Tables 4-19


Working with Query Section Data
You can further enhance the data requested in the Query section by working
with the data. Working with Query Section Data involves:
■ Processing Results to a Database Table
■ Estimating Query Size
■ Displaying Database Remarks
■ Preaggregating Data Using Functions
■ Appending Queries
■ Using Local Results
■ Using Stored Procedures
■ Setting Query Options

You can accomplish these tasks by using the commands on the Query menu.

✏ Note See “Query Menu Command Reference” on page 4-32 for a complete list of the commands
available on the Query menu.

Processing Results to a Database Table


Instead of retrieving data to the Results section, you can instruct an Hyperion
Intelligence Client to create a table in the database to store your results set.
Items on the Request line become the column headings of the new table, and
you can append new columns to the table and query it as needed.

✏ Note The connection file and database to which you are connected determine whether you can use
this feature. You must have Create and Insert privileges on the database to process results to
a database table.

4-20 Querying Relational Databases


To process results to a database table:

1 Choose Query→Process Results To Table.


The Process Results To Database Table dialog box appears.

2 Specify the information requested.


■ Table Name – Name of the new table you want to create or the name of an
existing table to which you want to append columns.
You can create tables under your own owner name or under different
databases or owners. If you do not have the correct privileges or do not
specify an alternate location, the table is created under your own owner
name. Use the format DATABASE.OWNER.TABLENAME to specify
alternate names.
■ Create Table – Creates a new table in which Request items form columns.
■ Append To Table – Appends Request items as new columns in an existing
table.
■ Grant Access To – Enables either everyone or specific users to access the
new tables. Type PUBLIC or specific user IDs (separated by commas) for
each user who should have access to the table. If not selected, access to the
table is limited to your own user ID.

3 Click OK.
The table is created or modified under the specified database and owner name.

Working with Query Section Data 4-21


To verify that the query was processed and the results saved as a database table:

1 Choose DataModel→Table Catalog. [F9]


The Table catalog expands in the Catalog pane.

2 Choose Refresh on the shortcut menu.


The table you created appears in the list of database tables.
Hyperion Intelligence Clients tracks tables you have created under your
database user name and stores a list of these tables in the bqtbls5.ini file.

To delete tables you created using the Process To Database Table feature:

1 Choose Query→Process Results To Table.


The Process Results to Database Table dialog box appears. Tables created under
your user ID appear in the Tables Created By list.

2 Select a table from the list and click Delete.

Estimating Query Size


Queries that sift through and retrieve enormous amounts of data can take a
long time to process, and may consume unnecessary system and server
resources. If you suspect these factors exist, you may want to size your query
before you process it.
The Estimate Size feature queries the database to see how many records your
query will retrieve. You can use this feature to test a questionable query or to
decide whether to prevent or postpone processing a large results set.

To estimate the size of a query:

➤ Choose Query→Estimate Query Size. [Ctrl+I]

Hyperion Intelligence Clients query the database and count the number of
records to retrieve if the query is processed. This process may take a while for
server-intensive queries.

4-22 Querying Relational Databases


Displaying Database Remarks
Database remarks provide detailed contextual information about a table or
column. Remarks may describe the origin, derivation, or details about data
model topics and items, which can help you identify and select the information
you need. Database remarks often exist as metadata when you map data in a
data warehouse project or if you use a CASE tool to manage your database.

To display database remarks, use one of the following options:


■ Choose Query→Show Remarks.
■ Click Show Remarks on the shortcut menu.

Preaggregating Data Using Functions


Depending on how you plan to view your data, you can choose to preaggregate
data at the database server.
Preaggregation (also called server aggregation) is a querying strategy that uses
functions to summarize data as it is retrieved from the database. Instead of
returning a line-item list of every row that meets the criteria on your Request
line, you can order the database to group related information. This results in
one row representing the combined (aggregate) value of each distinct group.
You use data functions (provided by your RDBMS) to preaggregate data in a
query. When a data function is applied to a Request item, the data related to
that item is aggregated when the query is processed.
If you need both summary data and increasing levels of detail breakdown in
your reporting or analysis, do not preaggregate the data. Report sections will
automatically provide an aggregated summary view, and component levels of
detail data can be reached using drill-down tools.
If your data set is potentially very large, or incorporates very discrete levels of
transactional data that do not apply to your analysis, it may be best to
preaggregate the data at the server to return a more manageable data set.

Working with Query Section Data 4-23


✏ Note Preaggregating data in your query assumes that you have a clear idea of the data you want to
look at and a good conceptual understanding of relational databases. If you are unsure that
you want to preaggregate, process the query without applying data functions. If you find that it
would be better to preaggregate, you can always return to the Query section and apply data
functions to the query.

Use data functions to preaggregate data as it is retrieved from the database.


Table 4-1 lists the prebuilt data functions that you can apply to items in the
Request line.

Tab le 4 - 1 Query Section Data Functions

Data Function Description

None Returns unaggregated values as stored in the database. This is the default
option in the Query section.

Sum Returns sum of underlying values.

Average Returns average of underlying values.

Minimum Returns lowest of underlying values.

Maximum Returns highest of underlying values.

Count Returns number of underlying values.

Count Distinct Returns the number of distinct values in a column. This function is not
supported by all database servers.

Standard Deviation Returns standard deviation of values. This function is not supported by all
database servers.

Variance Returns variance of values. This function is available through Oracle


servers only.

Weight Use for computing weighted items in pivot tables. See the Hyperion Intelli-
gence Data Analysis and Reporting Guide for more information.

When using data functions, remember that with the exception of counts, data
functions are applied almost entirely to numeric data items and the results are
computed with respect to dimensional, nonnumeric items on the Request line,
such as name and date items as in the following examples.

4-24 Querying Relational Databases


Example 1 Query 1 includes only items State and Units_Delivered. The data function Sum is
applied and the data returned consists of one row for each state with an aggregate
sum for that state in the Units column.

Example 2 In Query 2, the item Fiscal_Year is added to Query 1, breaking out rows for each
state/fiscal year combination with Units totaled on a per state, per year basis.

Example 3 In Query 3, the Product_Line Name has been included and the data function is
changed to Average. The number of rows increased, with data summarized as an
average per state, per year, per product line.

Working with Query Section Data 4-25


To apply a data function in the Query section:

1 Select an item on the Request line.


2 Choose Query→Data Function and select the desired function. (See Table 4-1 for a list
of the available data functions.)
The item is renamed to reflect the data function you selected. For example,
SUM(Units) or AVG (Amount_Sold).
When the Query is processed, the data is returned from the server in aggregate
form.

To remove a data function in the Query section:

1 Select the item on the Request line whose data function you want to remove.
2 Choose Query→Data Function→None.

Appending Queries
When you need to view and merge multiple queries in a combined Results set,
Hyperion Intelligence Clients provide four query operators that allow you to
merge two or more separate queries. The operators and their functions are:
■ Union– All distinct rows selected by either query are retrieved. No
duplicate rows are retrieved.
■ Union All – All rows selected by either query, including duplicate rows, are
retrieved.
■ Intersection – All distinct rows selected by both queries are retrieved.
■ Except – All distinct rows selected by the first query but not the second
query, are retrieved. (Oracle database servers refer to the Except operator as
“Minus.”)

✏ Note If your database supports the Intersection and Except operators, but they are not available in
the Operator drop-down list, check the Allow SQL-92 Advanced Set Operations connection
preference.

4-26 Querying Relational Databases


The rules governing the use of these operators are:
■ The number of columns in the Select clause in both queries must be equal.
■ The data type returned in the columns in both queries must match.
For example, if Column 1 in the first query is a date, then Column 1 in the
second query must also be a date.

✏ Note Items on the Union line can be repositioned to see the results of different intersections.

To append a query:

1 Verify data types and associated column(s).


This ensures that you know how to merge data in the second query.

2 Build the Request line.


Add server and local limits, data functions, and computations to the query as
needed.

3 Choose Query→Append Query.


An Operator drop-down list and a second query tab is added below the
Request, Limit, and Sort lines. The drop-down list shows whether the queries
are linked by way of a union, a union all, an intersection, or an except.

4 Build the second query.


5 To merge multiple queries, select the operator you want to use from the Operator
drop-down list.

6 Click Process.
You can have the Hyperion Intelligence Clientt automatically generate the join
path required by the context of the query by using the automatic join path
feature. This feature eliminates the need for you to predefine any join paths,
since the Hyperion Intelligence Client determines the paths. When multiple
paths are available, you are prompted for which one to use.

Working with Query Section Data 4-27


Using Local Results
Local results are a snapshot of a Results section shown in topic format. They
are used to add the results of one query to another in a Hyperion Intelligence
Client document.

To use local results:

➤ Click anywhere in the Catalog pane and choose Local Results on the shortcut menu.

A Table catalog named Local Results is added to the Catalog pane.

Limitations of Local Results


Since local results are maintained on the desktop and not by the database
server, there are limitations when using Local Results. The following functions
are not available when using Local Results:
■ Limits, computed items, data functions, or query properties to further
analyze the dataset
■ The following Query Options menu governors (disabled if only local results
topics make up the Query):
❑ Returning unique rows
❑ Row limit
❑ Time limit
❑ Auto-process
❑ Custom Group by
■ Query limits on Local Results Topic Items
■ More than one Limit Local Join
■ Limit Local Joins used with Local Joins
■ Meta topics
■ Access or change properties for Local Results Topic Items
■ Append Query features of Unions or Intersections with Local Results Topic
Items
■ Process to table a query

4-28 Querying Relational Databases


✏ Note A query based on local result topics will not perform as well as the equivalent database query.

Processing Order
When using process all, the query producing the results may be processed twice
if the query using its results are listed first in the section catalog. It is also
possible for the query using the local results to use stale data if it was saved with
results, and the query that produced them is reprocessed. To prevent this from
happening, you can defined the order in which queries are processed. For
more information, see Query Processing Order.

Using Stored Procedures


Stored procedures are precompiled, complex queries that are executed on a
database server and maintained by a database administrator. Stored
procedures execute very quickly and are usually created to accomplish tasks
that SQL cannot do alone. Hyperion Intelligence Clients treat stored
procedures as locked standard queries and does not allow you to modify the
procedures.
You can use Hyperion Intelligence Clients to process stored procedures
through Open Client or ODBC, collect the results, and generate reports as you
would with a standard query. Stored procedures can be loaded from your
desktop and appear as a query object in the Content pane

✏ Note ODBC only. Hyperion Intelligence Clients support stored procedures that return results. This
support is contingent on the driver and database. The driver and database must support the
required ODBC calls, including SQL Procedures to retrieve a list of available procedures and
SQLProcedureColumns which identify the parameters required to execute the procedure. For
Oracle, results are recognized in ODBC by specifying reference cursor parameters when the
procedure is created. The OCE must specify the database as “ODBC” rather than “Oracle” to
work properly.

The ODBC driver must recognize the ODBC syntax for calling procedures: {call
<procedure name> (parameter list)}. If the procedure has no parameters,
the parentheses surrounding the parameter list are optional. Hyperion Intelligence Clients does
not insert empty parentheses in the call to execute the procedure. In addition, the driver must
accept literal values for any specified parameter. Drivers that require parameter markers, for
which values are provided when the procedure is executed, are not currently supported.

Working with Query Section Data 4-29


To open a stored procedure:

1 Choose Query→Stored Procedures.


The Stored Procedures dialog box appears.

2 Choose the database owner name that contains the stored procedure.
Any stored procedure to which you have been granted access is displayed in the
Stored Procedures list.

3 Select a stored procedure from the list and click Load.


The stored procedure appears as an icon in the Content pane. No items appear
on the Request line until the stored procedure is processed.

To process a stored procedure:

1 Click Process.
If the stored procedure calls for user input, a dialog box appears and prompts
you with up to 10 entry fields. If more than 10 arguments are required,
successive dialog boxes appear.

2 If an argument dialog box is displayed, enter appropriate values as arguments to the


stored procedure.
The arguments supplied are similar to variable limits. If necessary, see your
database administrator for clarification on the arguments needed to process a
particular stored procedure.

3 If the stored procedure queries the database, the database server returns data to the
Results section and the Hyperion Intelligence Client adds items to the Request line.

4-30 Querying Relational Databases


Setting Query Options
When working with very large or unfamiliar databases, you may occasionally
process a query that takes a long time to run or returns more data than is
manageable. To prevent problems under these conditions, set query options
before processing.

To set query options:

1 Choose Query→Query Options.


The Query Properties dialog box appears.

2 Select the desired restrictions for the current query and then click OK.
■ Return Unique Rows – Eliminates duplicate rows from the data set
retrieved by the query.
■ Return First ___ Rows – Limits the number of database rows retrieved to
the number entered.
■ Time Limit ___ Minutes – Limits the amount of time the query is allowed
to run to the number entered. Seconds are entered as a decimal number.
Time limits work for asynchronous database connections and cancel at the
earliest opportunity for nonasynchronous connections.
■ Auto Process – Specifies the current query as a Standard Query to be
processed automatically on download from the Repository (Designer only).
■ Custom Group By – Customizes the Group By criteria used to compute
aggregate Request items, with selected items not factored into the grouping.
This feature is available only when a data function is placed on a Request
item.

Working with Query Section Data 4-31


Query Menu Command Reference
Table 4-2 provides a quick reference to the commands available on the Query
menu and lists any related shortcuts.

Tab le 4 - 2 Query Menu Commands

Keyboard Shortcut
Command Description Shortcut Menu

Process Results To Allows you to create a table in the database to store


Table your results set.

Estimate Query Size Queries the database to see how many records your
query will retrieve.

Show Remarks Displays any remarks recorded about a topic or topic [Ctrl+I] ✔
item.

Add Request Item(s) Adds the selected topic item to the Request line. ✔

Add Limit(s) Allows you to create a limit for the selected topic [Ctrl+L] ✔
item.

Add Sort(s) Adds the selected topic item to the Sort line.

Add Computed Item Allows you to add a new data item derived from ✔
server-side calculations performed on an existing
topic item.

Data Functions Applies a prebuilt data function to the selected ✔


Request item.

Variable Limit Designates the selected Limit item as variable, which ✔


causes Hyperion Intelligence Clients to prompt the
user for limit values when the query is processed.

Customize Limit Allows you to control access to the features on the ✔


Limit dialog box.

Append Query Allows you to combine two or more queries in one


Results set.

Stored Procedures Loads a stored procedure and displays it as a query


object in the Content pane.

Query Options Opens the Query Properties dialog box where you
can specify options for rows returned, time limits,
and so on.

4-32 Querying Relational Databases


What Next
This chapter explained how to use Hyperion Intelligence Clients to connect to and
query a relational database. Proceed to Chapter 5, “Working with Query Results”
understand how to work with the results from a relational query.

Query Menu Command Reference 4-33


4-34 Querying Relational Databases
5 Working with Query Results

This chapter explains how to work with the results sets obtained from your
relational database query or data import.

In This Chapter Results Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-2


Enhancing Your Results Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-4
Working with the Results Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-10
Saving Results Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-11
Exporting Result Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-13
Results Menu Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-14
Results Section
When you process a query or import data, Hyperion Intelligence Clients
retrieve data to your desktop and display it in the Results section. Although the
query may have accessed several different database tables, the results set is
displayed as a single table. Each requested item appears as a column in the table
and each database record is a row. The Status bar shows the date and time the
results set for a particular Results section was last processed (or imported).

Results Menu Limit Line Column Heading Sort Line

Select All
Corner Column
Title
Row
Heading

Cell
Section
Pane

Row
Catalog
Pane

Request
Columns

Results
Outliner

Last Processed Date

5-2 Working with Query Results


Use the Results section to:
■ Verify that your query returned the correct information.
■ Refine and extend the data set by applying limit conditions or create new
computed or grouped items.
■ Sort or use text and column formatting features to enhance the appearance
of data results.
■ Add summary totals or subtotals and compute them with data functions.
■ Print or export the retrieved data to other applications.
All reports, including tables, pivots, charts, and those created using the Report
Designer, are based on the data that is retrieved to the Results section.

Understanding Data Types


To effectively work with the data in the Results section, you need to understand
how Hyperion Intelligence Clients handle data. Certain functions can only be
used on certain types of data.
The Results section formats data in table format. A table is either a fact table or
a dimension table. A table is a fact table if it contains at least one fact column.
A dimension table contains only dimension columns.
A fact is a quantifiable entity, such as a value or unit of measure. Facts are the
numeric values in a relational database that are available for analysis.
A dimension is a descriptive item, such as a name or label.

Results Section 5-3


Enhancing Your Results Set
Before generating reports or exporting the data set, verify that the Results
section contains all the information you need. You might want to redesign
your query and process it again so that the data set is more manageable.
As you begin to refine your querying technique, you will increasingly use more
sophisticated limits and computed items and will understand when to use
aggregation in the Query section. Complex queries can be somewhat difficult
for new users. When using data aggregation features, it is best to check the data
set before creating reports.
You can return to the Query section to modify your query and refresh the data
set if necessary, but you can also apply many of the same refinements locally in
the Results section, including limits, sorts, and computations.
Enhancing your results set involves:
■ Limiting Results
■ Sorting Results Data
■ Adding Computed Items to Results
■ Applying Data Functions to Results
■ Adding Grouping Columns
■ Automatically Adding Columns
■ Breaking Out Dates

Limiting Results
Local limits applied in the Results section enable you to temporarily screen out
portions of data for reporting purposes, without eliminating then from the
data set.
Local limits are discussed in “Server versus Local Limit Processing” on
page 7-2.

Sorting Results Data


Use the sort buttons to quickly sort a Results column or report item locally on
your desktop. You can apply sequenced, nested sort conditions to Request
items in the Results section.
For information about sorts, see Chapter 9, “Applying Sorts.”

5-4 Working with Query Results


Adding Computed Items to Results
You can rank and provide statistics for the values represented as totals or
subtotals in your Results section. The Add Computed Item command enables
you to build equations to compute totals, or to apply functions to existing
values. Computations are performed on the desktop by a Hyperion
Intelligence Client and involve only the data in your Results set. Therefore, you
can only create new computed items – you cannot modify original data items
that were retrieved from the database.
In the Results section, reference items are limited to the items that appear on
the Request line of the original query. Also, the scalar functions used to
compute items are provided by Hyperion Intelligence Clients, rather than the
RDBMS.
For more information about computed items, see Chapter 8, “Working with
Computed Items.”

Applying Data Functions to Results


In the Results section, you can only use a data function for totals and subtotals.
The other values cannot be recalculated without redoing the query. Data
functions return to the underlying values and recalculate the value according
to the type of function specified.
You can apply a break (subtotal), grand, or custom total to any column.
Table 5-1 lists the data functions that you can use with break totals and grand
totals.

Tab le 5 - 1 Break Total and Grand Total Data Functions

Function Description

Sum Returns sum of underlying values.

Average Returns average of underlying values.

Minimum Returns lowest of underlying values.

Maximum Returns highest of underlying values.

Count Returns number of underlying values.

Other Allows you to create a custom function using JavaScript.

Enhancing Your Results Set 5-5


Inserting Column Totals
To calculate a column total:

➤ Select the column to be totaled and click the summation icon on the Standard toolbar.

The Hyperion Intelligence Client adds a row labeled Total to the bottom of the
table and display the total as the last entry in the selected column.

Inserting Grand Totals


To apply a grand total to a column using a data function:

1 Select a column and choose Results→Grand Total.


The Insert Grand Total dialog box appears.

2 Select a data function from the Grand Total Function drop-down list.
3 Select one or more columns to be totalled from the Add Grand Total To list and click OK.
The total and any subtotals in the column are computed to reflect the new data
function.

Inserting Break Totals


To apply a break total (subtotal):

1 Select a column and choose Results→Break Total.


The Insert Break Total dialog box appears.

5-6 Working with Query Results


2 Select a break column from the At Every Break drop-down list.
3 Select the data function you want to apply from the Break Total Function drop-down list.
4 Select one or more columns on which to display the break total and click OK.

Adding Grouping Columns


Grouping columns, like computed items, create new data in your results set by
grouping data from an already existing column. You can use grouping columns
to consolidate nonnumeric data values into more general group values and
map the group values to a new column in the data set.
Grouping columns are new items added to the Results section and are available
for use in report sections.
For example, your company sales database may contain the items: State, Sales
Region, and Country, which allow you to aggregate data on different levels in
reports. However, suppose you are looking to track sales by subregion, or you
want to see data for one state versus an average for all other states combined.
You can do this by grouping states together to create a Subregion item or other
custom dimension.

To add a grouping column:

1 Select a column as a base for your grouped column.


2 Choose Results→Add Grouping Column.
The Grouped Column dialog box appears. Use the column values to build the
grouping categories for the new item.

Enhancing Your Results Set 5-7


3 Type a name for the new column in the Column Name field.
4 Create custom group values and link them to values in the base column.
■ Click New Groups to create groups and add them to the Groups list.
■ Select a group in the Groups list; then, select items from the Available
Values list and use the arrows to add them to the Items In Group list for the
selected group.
■ Remove selected values from a group by using the arrow to move them back
to the Available Items list.
■ Double-click a group name to modify it.
■ Specify options for ungrouped values as follows:
❑ Null – Leaves the values ungrouped and unaggregated.
❑ Default – Allows you to specify a default name to assign to all
ungrouped values.
❑ Individual Group – Assigns each ungrouped values the name originally
assigned to it.

5 When the grouping definitions are complete, click OK.


The new grouping column is added to the Request line and to the Content
pane.

You can modify a grouping column to change the group structure.

To modify a grouped column:

➤ Select the grouped column and choose Results→Modify Column.

5-8 Working with Query Results


Automatically Adding Columns
By default, Hyperion Intelligence Clients retrieve data to your desktop and
display it in the Results section as columns. You can manually add request
items by having a Hyperion Intelligence Clientreturn an empty Results set.
This allows you to add columns as you need them.
This feature allows you to display only the rows with which you want to work.
You can still sort or create limits using columns not displayed in the Results
section.

To toggle AutoAdd columns:

➤ Choose Results→AutoAdd Columns.

If the AutoAdd Columns feature is selected, all requested items are displayed in
columns.
If the AutoAdd Columns feature is not selected, no columns are returned to the
Results section and you have to manually add requested items.

Breaking Out Dates


Use date breakout columns to separate date-typed columns into Year, Quarter,
and Month items. The new items are automatically derived using date
functions available to computed items.
For example, when you add date groups for an item Order Date, the item is
broken into constituent date items. A new Year item is created as an integer,
Qtr as a string, and Month as a new date.

To break out date items:

1 In the Content pane, select a date-type column.


2 Choose Results→Add Date Group.

✏ Note This feature automatically sets the display format of the new Month item to mmm so that the
data sorts correctly. Quarters are based on the calendar year beginning 1/1.

Enhancing Your Results Set 5-9


Working with the Results Table
Hyperion Intelligence Clients offer a number of options for working with table
components (that is, columns and rows) in the Results section. These
commands are found on the Format and Results menus. Many of these
commands also have corresponding toolbar icons and shortcut menu items.

Selecting Columns and Rows


To select a column:

➤ Click anywhere inside the column.

To select a row:

➤ Click the row header (row number).

Deleting Columns
To delete a selected column from the Results table (and Outliner):
Choose Results→Remove. [Del]
If an item is removed from the Content pane, it is completely removed from
the Outliner and the data set.

Caution ! Remove items with caution as computed items and other report sections may
draw data values from the deleted item.

Formatting Commands
You can use the commands available on the Format menu to change the
appearance of fonts, backgrounds, borders, color, row heights, and column
widths. For more information on formatting options, see “Formatting Text
and Other Elements” on page 3-43. For detailed information on adding
document sections and customizing the headers and footers in the document
sections, see “Formatting Numeric Data Types” on page 3-45.

5-10 Working with Query Results


Saving Results Sets
After you process a query, your data is available until you close the document.
Saving your document saves the current formatting and layout of all Hyperion
Intelligence Client sections in the document.
You have the option to save the results set with the document. You also have
the option to save any computed column expressions as a snapshot. Your
decision in this selection depends largely on how you want to use the
information in the document, and on what information needs to be
recalculated.
Saving results with your query allows you to analyze and generate reports
without being connected to the database. Results are saved for an individual
query or for multiple queries for which results have been generated. You also
can specify whether to save any computed columns in the results set as a
snapshot with the document.

✏ Note If you intend to work with a document that includes a Report Designer section, you must save
results with the document. If you do not save results with the document, the Report Designer
section is not available.

Saving your results set makes sense if you cannot connect to a database, for
example, when traveling or working remotely, or if you are scheduling or
forwarding documents for someone else’s use.

To save results with your document:

1 Choose File→Save Options→Save Query Results With Document.


The Save Query With Results Document dialog box appears and displays all of
the query sections contained in your document.

Saving Results Sets 5-11


2 Select the check box for the query results you want to save and decide whether to save
computed columns as snapshots, then click OK.
The query results and snapshots for computed columns that you selected are
automatically saved the next time you save the document.
Computed values saved as snapshots are not recalculated when the document
is opened. Not even dynamic expressions (for example, values that reference
the sysdate function such as date or time) are recalculated. They are
recalculated only when the query is reprocessed. Documents that are saved
with computed columns as snapshots tend to be larger in size than documents
that do not contain shapshots, but they take less time to open.
If you want to automatically recalculate the values of computed columns when
a document is opened, do not select the corresponding results section in the
Computed Columns list. The document file may take longer to open,
especially if the results set contains a large number of computed columns or
uses complex formulas in the definitions, since all computed values are
recalculated in the Results section and in any other section that references the
Results section. On the other hand, documents that do not contain snapshots
tend to be smaller in size than documents that contain snapshots of computed
columns.
Table 5-2 lists the selection options and effects for saving query results and
snapshots of computed columns with documents.

Tab le 5 - 2 Effects of Save Query Results with Document Options

Save
Save Computed
Query Columns
Results (as Snapshot) What Happens
⌧ ⌧ Results are saved with the document and computed columns are
saved as a snapshot. Computed columns are not recalculated
when the document is opened. Values are recalculated only when
the query is reprocessed.

5-12 Working with Query Results


Tab le 5 - 2 Effects of Save Query Results with Document Options (Continued)

Save
Save Computed
Query Columns
Results (as Snapshot) What Happens
⌧ Results are saved with the document but computed columns are
not saved as a snapshot. Computed columns are recalculated
when the document is opened.

⌧ Neither Results nor computed columns are saved with the docu-
ment.

Neither Results nor computed columns are saved with the docu-
ment.

✏ Note: You cannot choose to save computed columns as snapshots unless you first choose to save
the corresponding query results.

Exporting Result Sets


After processing a query, you can export the data contents of the Results
section for use in other applications. There are several ways to export from a
Hyperion Intelligence Client, the most common being into file formats such as
Excel or Lotus.
Hyperion Intelligence Clients also export to HTML format, making it easy to
distribute data to many corporate intranets or Web sites. Exported Results
section data is raw and unaggregated. If you export from a report section, the
data is drawn from the desktop datacube and is preaggregated. Scripts created
by the Hyperion Intelligence Client JavaScript engine can be saved to a text file.
Export options are discussed in detail in “Exporting Data” on page 3-20. This
section also covers export properties such as whether to use page breaks in
HTML files, or whether to include double quotation marks in tab-delimited
text files.

Exporting Result Sets 5-13


Results Menu Command Reference
Table 5-3 provides a quick reference to the commands available on the Results
menu and lists any related shortcuts.

Tab le 5 - 3 Results Menu Commands

Keyboard Shortcut
Command Description Shortcut Menu

Limit Opens the Limit dialog box. [Ctrl+L] ✔

Sort Ascending Sorts the selected column values in ascending order ✔


(alphabetical or numeric).

Sort Descending Sorts the selected column values in descending ✔


order (alphabetical or numeric).

Add Computed Item Opens the Insert Computed Item dialog box. ✔

Add Grouping Column Opens the Grouped Column dialog box. Use to ✔
merge dimension labels into new groupings and
aggregate the associated data.

Add Date Groups Separates date-type items into year, quarter, and
month items.

Modify Column Use to modify a computed column or a group [Ctrl+M]


column.

Remove Removes the selected column (or Outliner item). [Del] ✔

Break Total Opens the Insert Break Total dialog box. ✔

Grand Total Opens the Insert Grand Total dialog box. ✔

Hide Column Hides the selected column from view. ✔

Unhide Column Opens the Unhide Column dialog box. ✔

AutoAdd Columns Automatically adds columns in the Content pane for


all requested items.

If not selected, no columns appear in the Content


pane. Turn this option off to manually add columns
for requested items.

5-14 Working with Query Results


What Next
This chapter described the features and tools used for working with results from a
relational query. Proceed to Chapter 6, “Querying Multidimensional Databases,” to
find out how to create OLAP queries.
For more information about the features used in the Query and Results section, read
Chapter 7, “Using Limits,” Chapter 8, “Working with Computed Items,” and Chapter 9,
“Applying Sorts.”
When you are finished formatting and fine-tuning your results, see Data Analysis and
Reporting with Hyperion Intelligence Clients for assistance with using the Hyperion
Intelligence Client application’s powerful reporting and data analysis features.

Results Menu Command Reference 5-15


5-16 Working with Query Results
6 Querying Multidimensional
Databases

This chapter explains how to use Hyperion Intelligence Clients to connect to


and query a multidimensional database.

In This Chapter OLAPQuery Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-2


Defining OLAPQuery Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-5
Building OLAP Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-10
Refining OLAPQuery Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-14
Processing OLAP Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-22
Applying Filters and Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-25
Changing Data Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-32
Formatting OLAPQuery Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-36
Drilling Through from a Multi-Dimensional Database to a Relational Database . . . . . . . . . . . .6-36
OLAP Menu Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-40
OLAPQuery Section
Use the OLAPQuery section to query multidimensional) or OLAP databases.
When you connect to a multidimensional database, the document opens an
OLAPQuery section.

Side Labels Top Labels Sort Item Sort Type Sort Aggregate

Sort
Section Order
Pane
Data
Dimensions Labels

Levels Facts
Catalog
Content
pane
Pane
Members
of Level Selection
Tabs
Top
Labels
Measures
Pane

Side Labels Slicer


Pane Pane
Measures
Pane
Outliner

6-2 Querying Multidimensional Databases


The user interface is similar to the Hyperion Intelligence Client Pivot section,
except the OLAPQuery section displays the multidimensional database
components as a hierarchical tree in the Catalog pane. These components
include:
■ Dimensions – categories of information, such as Location, Products, Stores,
and Time. Dimensions are for informational use only and cannot be used
as query items. (If a dimension contains multiple hierarchies, they will be
represented under the dimension.)
Level (All) ❑ Levels – Groups of similar types of members. For example, using the
members listed in a Location dimension, Japan, USA, and France belong
to the Country level. San Francisco, Paris, Tokyo, and Rome belong to
the City level. 35 Main Street belongs to the Address level.
❑ Hybrid (Analysis) – Further dimensional data is present by way of
Hybrid Analysis (the lowest levels of an Essbase or DB2 cube that can
reside in a relational database, but are not reflected in the cube structure
(metadata) that is resident on the Essbase Server itself). If a dimension
has Hybrid Analysis data, the Essbase Server, in conjunction with the
Essbase Integration Server automatically retrieves the data from the
appropriate relational table source and passes it to Hyperion
Intelligence Clients. If a dimension has available hybrid analysis, it is
indicated to the right of the level as shown below.

❑ Members – Content values for a dimension. In the Location dimension,


they could be San Francisco, Japan, Paris, 35 Main Street, Tokyo, USA,
France, Rome, and so on. These all are values for location.
Members are shown only under the Values (I) icon and can be dragged
only into the Top Labels or Side Labels panes in Outliner.

OLAPQuery Section 6-3


❑ Member Property – A descriptive piece of information about a member
that can be retrieved and displayed in the OLAPQuery. This information
is metadata and does not in itself constitute a distinct member in the
dimensional hierarchy. For example, let’s assume the following
hierarchy:
Product
Category
Product Name
The Product Name level might have the following properties defined:
Product Description
Product SKU
Color
Size
Weight
You can drag a property into the Outliner with its corresponding level,
but you cannot drag it into the Slicer or the Measures pane, or apply a
filter to it.
■ Measures – Numeric values in a database cube that are available for
analysis. The measures could be margin, cost of goods sold, unit sales,
budget amount, and so on.
Individual measures are shown under the Measures icon and can be
dragged only to the Measures pane.

✏ Note Essbase only. Hyperion Intelligence Clients support Essbase Attribute Dimensions. An
Attribute Dimension displays in the OLAPQuery section with the word “attribute” to right of the
Attribute Dimension’s name. In addition, for each Attribute Dimension, Hyperion Intelligence
Clients create an Attribute Calculation Dimension. An Attribute Calculation Dimension appears
at the bottom of the Catalog pane. You can position the members contained within the
Attribute Calculation Dimension in the Top or Side Labels of the Outliner.

6-4 Querying Multidimensional Databases


Defining OLAPQuery Options
Hyperion Intelligence Clients allow you to set options that control various
properties in the OLAPQuery section. You can define both general and
database-specific options.

To define OLAPQuery options:

➤ Choose OLAP→OLAP Query Options.

General OLAPQuery Options


General OLAPQuery options can be adjusted regardless of the database. The
General tab in the OLAP Query options dialog box appears as follows:

Defining OLAPQuery Options 6-5


Tab le 6 - 1 General OLAP Query Options

Design Options Defines how Hyperion Intelligence Clients retrieve database totals and
requery the database.
■ Database Totals – Retrieves database totals when the query is pro-
cessed.
■ Hardwire Mode – Defines whether to requery the database when
changes are made in the Outliner.
❐ If you select Hardwire mode, Hyperion Intelligence Clients auto-
matically requery the database everytime you add an item to or
remove an item from the Outliner and instantaneously retrieve
the data. You do not have to click Process.
❐ If you do not select Hardwire mode, you must click Process to
requery the database whenever you make a change.

Slicer Display Defines how to display slicer values.


■ Member List – Selects from a list of all members at the same level
as the previously selected member.
■ Tree Control – Displays parent-child slicer value relationships. With
Tree Control, you can select multiple values from a dimension as long
as your database supports this function. (Databases such as Hyper-
ion Essbase and IBM DB2 OLAP allow this).

Drill Options Defines what level of data is the next level displayed when you drill down
in an OLAPQuery.
■ Drill to Next Level – Automatically displays data for the next level
below the selected member.
For example, in a dimension with levels of Year, Quarter, Month, and
Date, double-clicking on a Year level member name automatically
displays all the data for the Quarter level belonging to that year.
■ Drill to All Levels – Automatically displays all possible levels of data
below the selected member.
For example, in a dimension with levels of Year, Quarter, Month, and
Date, double-clicking on a Year level member name automatically
displays all the data for the Quarter, Month, and Date levels belong-
ing to that year.
■ Drill to Lowest Level – Automatically displays data for only the
lowest level belonging to the selected member (intermediate
member levels are not shown).
For example, in a dimension with levels of Year, Quarter, Month, and
Date, double-clicking on a Year level member name automatically
displays all the data for the Date level belonging to that year.

6-6 Querying Multidimensional Databases


Database-specific OLAPQuery Options
Database-specific OLAPQuery options depend on the database to which you
are connected. As a result, the content on the tab in the dialog box varies
according to the type of database connection.

Display Options for Essbase Databases


The tab for Essbase databases appears as follows:

Defining OLAPQuery Options 6-7


Tab le 6 - 2

Query Options Defines query options in the following areas:


■ Suppress Missing Rows – Suppresses the retrieval of any missing rows
where all cells are null.
■ Suppress Zero Rows – Suppresses the retrieval of any zero rows where all
cells are null.
■ Specify the number of decimal places to retrieve – Sets the number of
decimal places that the server will return.
■ Enable Hybrid Analysis Value Retrieval This feature allow you to retrieve
the lowest levels of an Essbase cube that reside in an external relational
database. These levels are not reflected in the cube structure (metadata)
that is resident on the Essbase Server itself. Instead, their existence and
retrieval is performed by the separate Essbase Integration Server product.
In order for this functionality to be performed, however, the Essbase server
must first receive instructions to enable Hybrid Analysis retrieval.This
instruction takes the form of an Essbase Report Script keyword:
< HYBRIDANALYSISON>
Conversely, to disable Hybrid Analysis retrieval, the instruction keyword
<HYBRIDANALYSISOFF>
The applicable keyword used sent to the Essbase Server can be viewed on
the Query Log.

This feature is only supported in Hyperion Essbase version 6.5 and IBM DB2
OLAP version 8.1.

Alias Table Defines the alias table to use in an OLAPQuery.


■ Select an Alias Table – When you use aliases to assign user-friendly
names to database physical member and/or generation/level names,
Essbase stores the aliases in an Alias Table in the cube. Since a cube can
have multiple alias tables, you can select the alias table to use and modify
the query based on the value you enter.
For example, you could define Store Category members as codes, but
define an alias for each Store Category to use as a descriptive alias in the
Alias Table.
In the following example, for the member name "0199", you could see
either "January 11999, "Jan99" or Fiscal Month 1" depending on the
selected alias table. By default, Hyperion Intelligence Clients use the
default alias table and if another alias table were not selected, you would
see "January 1999."
Physical Member Name = 0199
Default Alias Table Value = January11999
Alias Table 1 Value = Jan99

Alias Table 2 Value = Fiscal Month 1

6-8 Querying Multidimensional Databases


Display Options for Microsoft OLE/DB
The tab for Microsoft/OLE DB for OLAP databases appears as follows:

Tab le 6 - 3 Display Options for Microsoft/OLE DB for OLAP Database

Suppress Empty Suppresses the retrieval of any empty rows for which there is no
Rows measure data.

Defining OLAPQuery Options 6-9


Building OLAP Queries
Hyperion Intelligence Clients use the Outliner to manage multidimensional
information.The Outliner enables you to plot, view, and manipulate
dimensions. The three Outliner panes are:
■ Side Labels – Contains nonquantifiable dimensions or members.
■ Top Labels – Contains nonquantifiable dimensions or members.
■ Measures – Contains quantifiable dimensions or measures. The Measures
pane in Outliner holds the cube’s values.

✏ Note Hyperion Intelligence Clients treat time and date dimensions as nonquantifiable values.

To build an OLAP query:

1 Create an OLAP connection file, or if you already have an OLAP connection file, choose
Insert→New OLAPQuery.
The Insert OLAP Query dialog box appears.

2 Specify an OCE to use to connect to the multidimensional database; enter your user
name and password if prompted.
The Hyperion Intelligence Client document creates and switches to an
OLAPQuery section. The Catalog pane displays the hierarchy of your
multidimensional database.

3 If the Outliner is not visible, click Outliner on the Section title bar.

6-10 Querying Multidimensional Databases


4 In the Catalog pane, select one or more measures (such as units or amounts) and
choose OLAP→Add Fact/Measure to add the item(s) to the Measures pane in Outliner.

5 In the Catalog pane, select one or more levels or members and choose OLAP→Add Side
Labels to add the item to the Side Labels pane in Outliner.

6 In the Catalog pane, select one or more levels or members and choose OLAP→Add Top
Label to add the item to the Top Labels pane in Outliner.

To refresh the dimension values in the Catalog pane:

➤ Choose OLAP→Retrieve Dimensions.

When you drag items from the Catalog pane to the Outliner, only the level
names appear. For example, if you drag CA into the Outliner, the Outliner
displays State. Level names appear in the Outliner preceded by a icon.
You can reorient, or pivot, your OLAPQuery by interchanging the items in the
top and side dimensions. This feature is useful for juxtaposing data in one
dimension with data from other dimensions. By pivoting dimensions from the
top to the side, alternate relationships become evident.

OLAPQuery Section Outliner Rules


The following rules apply to the OLAPQuery section Outliner:
■ A dimension can be represented only on one axis. For example, if the level
Year is in the Side Labels pane, you cannot drag the level Quarter to the Top
Labels pane.
■ If you move the level of one dimension, Hyperion Intelligence Clients
automatically move all levels of the same dimension.
■ To pivot data in the OLAPQuery section, move the items in the Outliner
panes. You cannot use the label handles to pivot data.

Building OLAP Queries 6-11


■ Levels from the same dimension must be grouped together in both the Side
Labels and Top Labels panes.
For example, you cannot use the following order for side-label levels, since
levels from different dimensions are mixed (Year, Quarter, and Month come
from the Time dimension, Store Type comes from the Store dimension, and
Product Category comes from the Product dimension).

Instead, the Outliner requires that you use this order (Year, Quarter, and
Month are all from they same dimension so they are grouped together).

■ The hierarchy of a dimension cannot be broken. For example, Year must


come before Quarter, which must come before Month.
■ Essbase only – If “Hybrid Analysis” is available and data is successfully
retrieved from the Essbase servers, a “dummy” Level is added to the
Outliner called "Hybrid1". The new Level of data is shown in the Contents
Pane. If data is not retrieved successfully from the Essbase servers (i.e. an
error message is returned) the message "No more levels to drill into"
message is displayed. If you subsequently drills-down on a returned Hybrid
Analysis Level of data, the retrieved Hybrid Analysis Level of data is called
"Hybrid2" and so on.

6-12 Querying Multidimensional Databases


■ OLE DB only – If you retrieve dimensional level properties from the
database, you can drag each property into the Outliner after you add its
corresponding level.
For example, if the Outliner contains Country, Year and you drag Manager,
(a property of Country) into the Outliner, the Manager property is kept
with Country and not added after the Year level. A property cannot be
dragged into the Slicer pane, the Measures pane in Outliner, or have a filter
applied to it.
Note that in order to retrieve dimensional level properties, you must enable
the Show Member Properties checkbox when creating the OCE.

OLAPQuery Member and Level Rules


If you include both members and levels together in a query, a union of the two
data sets occurs, and not an intersection. For example, if you select a State level
and then select San Francisco (which is a city), your query retrieves all states
and San Francisco.
Table 6-4 shows the results of different queries.

Tab le 6 - 4 Query Results

Outliner item(s) Component Type Query returns:

Country (All) Level All countries

State (All) Level All states regardless of country

City (All) Level All cities regardless of state or country

Canada Member Canada only

CA Member California only

San Francisco Member San Francisco only

Building OLAP Queries 6-13


Tab le 6 - 4 Query Results (Continued)

Outliner item(s) Component Type Query returns:


State (All), San Level, Member All States regardless of country and San Francisco
Francisco

Country (All), CA Level, Member All Countries and California (not just the USA)

Country (All), State Level, Level, All Countries, All States


(All), CA, NV, San Member, Member,
Francisco Member

Refining OLAPQuery Data


Once you have identified the items to include in your OLAP query, you can
perform numerous operations to refine the data such as setting slicer limits,
specifying drill data, adding computed items, data functions, and so on.
Review the following sections for information on each of these functions.

Specifying a Slicer
A slicer is a sort of third axis in a query that filters data. The other axes are the
row axis and the column axis. A slicer defines a logical slice of the server cube
by instructing the server to ignore all values not part of your slice. For example
if you were running a query for general category stores, you could apply a slicer
that slices the category stores into store subsets, such as computer stores,
discount stores, and electronic stores.
When working with a slicer, use only an individual member from a dimension.
The dimension cannot be used in a Top Label or Side Label (no dimension can
be represented on more than one axis at any time).

✰ Tip A query can have multiple slicers, each from a different dimension.

To specify a slicer:

1 Click Slicer on the Section title bar to open the Slicer pane.
2 Select a member from a dimension in the Catalog pane and drag it to the Slicer pane.
Every dimension folder contains a members subfolder named “Values for …”
that domain. The subfolder contains the members eligible for selection in the
Slicer pane.
6-14 Querying Multidimensional Databases
3 Click Process.
If you are running in Hardwire mode (see “Automatically Processing OLAP
Queries” on page 6-23), the slice is applied instantly.

Drilling Down
The Drill Down feature retrieves data from the multidimensional database
cube, following the hierarchy down to the granular level. When you find a
specific item that you want to learn more about, such as a product line, you can
drill down into the item label. You can drill down on more than one item as
well as drill down on all items at the same time.
For a member drill down, any Top Label or Side Label can be drilled down so
that you can view the structure of the hierarchies for any particular dimension.
Every time you select a specific label in a dimension row or column, you show
only the data for that label value. When you select the dimension tab for a
level, you show all the members of that dimension level.
Use one of the following methods to drill down on a label:
■ Double-click the label.
■ Select the label and choose Drill Down on the shortcut menu.
■ Select the label and choose OLAP→Drill Down.

✰ Tip You can specify what level of data is the next level displayed when you drill
down in an OLAPQuery. See “Drill Options” in Table 6-1 on page 6-6 for
information.

✏ Note You cannot set filters while in a drilled-down state on a dimension.

✏ Note Essbase only. For a measure drill down, you can show how different measures consolidate
together. A drill down on a measure is done on a progressive basis, one level at a time on a 1
to n path (sequential rather than nested). For example, if Profit is the parent of Tax and Pre-Tax
Profit, and Revenue and Expenses are children of Pre-Tax Profit, then the Tax and Pre-Tax
columns are drilled down first and you must double-click the Pre-Tax label to display the
Revenue and Expense columns.

Refining OLAPQuery Data 6-15


Drilling Up
If you used the Drill Down feature, you return to your original view of the data
by drilling up one level at a time. To drill up, select the level to drill up to and
use one of the following methods:
■ Double-click the level.
■ Choose Drill Up on the shortcut menu.
■ Choose OLAP→Drill Up.

Hybrid Analysis and Drilling (Essbase and DB2 only)


When you drill down to retrieve Hybrid Analysis data, the drill down retrieves
only the next level of information, even if there is a selection made for “Drill
Through”, or the "Drill to all Levels" or "Drill to Lowest Level" options have
been enabled on the OLAP Query Options dialog.
If you can drill into data returned by way of hybrid analysis, Intelligence
Clients adds a “dummy” level to the Outliner called "Hybrid1" and displays the
new Level of data accordingly in the Contents Pane. If data is not retrieved
successfully from the Essbase servers, you get the message: "No more levels to
drill into" message.
If you continue to drill down on the Hybrid Analysis level of data, each
successful drill down returns the data as "Hybrid2" in the Outliner (and
"Hybrid3", "Hybrid4"… etc. for any subsequent Hybrid Analysis Level
retrievals).
You can use drill up on Hybrid Analysis data to redisplay that level as the
lowest level in the Contents Pan. All lower level Hybrid Analysis data is
removed from the Contents Pane and Outliner.

6-16 Querying Multidimensional Databases


Adding Computed Items
Computed items allow you to create a new column by building an expression
to compute measures, or by applying functions to existing measures.
Computed items are like normal data measures and can be included in reports
or reused to compute other measures.
Computed items appear in virtual columns (as opposed to columns that are
physically stored in the cube). They are automatically calculated during the
query and supplement the information already stored in the database.
For example, you can modify the Amount Sold item by building an expression
around it, multiplying by the Unit Price item, and renaming the resulting item
Revenue.

To compute or modify a measure:

1 Choose OLAP→Add Computed Item.


The Modify Item dialog box appears.

Refining OLAPQuery Data 6-17


2 Specify the information requested in the following fields:
■ Name – Specify a new column name that reflects the computation result.
■ Definition – Build an expression by adding items from the pad or the
Functions dialog box.
❑ Use the keypad to select and insert arithmetic and logical operators.
❑ If you are familiar with MDX (Multi Dimensional eXpressions), type
your instruction directly in the Definition field.
■ Measure – Select the MDX equivalent from the list of available measures
for the expression.
■ Functions – Apply a numeric function to a selected measure in the
Definition field. Depending on the function you select, the Functions
dialog box changes to accommodate the selected function. For more
information about functions, see “Using OLAPQuery Functions” on
page 6-19.

3 When the expression is complete, click OK.


The new measure name is added to the Outliner.
For more information on computed items, see Chapter 8, “Working with
Computed Items.”

✏ Note You can only add computed items if your database supports them. Examples of databases
that support computed items are OLE DB for OLAP-compliant databases such as MS OLAP and
SAP BW.

6-18 Querying Multidimensional Databases


Using OLAPQuery Functions
Use OLAPQuery functions to insert standard numeric functions in computed
measure expressions. Numeric functions compute a new measure for each
value associated with it. You can use two types of OLAPQuery functions in the
OLAPQuery section:
■ Hyperion Intelligence Client functions – Non-MDX functions that allow
you to perform common mathematical computations in MDX. The
% of Column, % of Row, and % of Total functions allow you to use only a
measure name from the query (not all measures in the cube) as a
parameter.
■ MDX functions – Standard mathematical functions that you apply to
computed item expressions. Hyperion Intelligence Clients supports a
number of MDX functions. (For more information on MDX functions,
consult your MDX documentation.)
Table 6-5 lists the functions available in the OLAPQuery section.

Tab le 6 - 5 OLAPQuery Functions

Function Type of Function Description

% of Column Hyperion Calculates the value of the specified measure as a


Intelligence percentage of the total for the column.
Client

% of Row Hyperion Intelli- Calculates the value of the specified measure as a per-
gence Client centage of the total for the row.

% of Total Hyperion Intelli- Calculates the value of the specified measure as a per-
gence Client centage of the total for all rows and columns.

% Change Hyperion Intelli- Calculates the percentage change of the specified


gence Client measure for a particular dimension from the previous
member in that dimension. For example, this function
could be used to calculate the percentage change from
sales from the previous year.

Absolute Change Hyperion Intelli- Calculates the absolute change of the specified
gence Client measure for a particular dimension from the previous
member in that dimension. For example, this function
could be used to calculate the difference in sales from
the previous year.

Refining OLAPQuery Data 6-19


Tab le 6 - 5 OLAPQuery Functions (Continued)

Function Type of Function Description


Avg MDX Calculates the average of the selected measure
evaluated over the specified dataset.

Correlation MDX Returns the correlation of a dataset against two mea-


sures.

Count MDX Calculates the number of members for the specified


dimension in the report.

Covariance MDX Measures the tendency of two values to vary together.


Variance is the average of the squared deviation of a
value from its mean. The covariance is the average of the
values of the deviations of feature values from their
means.

Linregpoint MDX Calculates the linear regression of a dataset and returns


the value of “b” in the regression line y = ax + b.

Linregr2 MDX Calculates the linear regression of a dataset and returns


r2 (the coefficient of determination).

Linregslope MDX Calculates the linear regression of a dataset and returns


the value of “a” in the regression line y = ax + b.

Linregvariance MDX Calculates the linear regression of a dataset and returns


the variance that fits the regression line y = ax + b.

Max MDX Returns the maximum value of the selected measure


evaluated over the specified dataset.

Median MDX Calculates the median value of the selected measure


evaluated over the specified dataset.

Min MDX Returns the minimum value of the selected measure


evaluated over the specified dataset.

Stdev MDX Calculates the standard deviation of the selected


measure evaluated over the specified dataset.

Sum MDX Calculates the sum of the selected measure evaluated


over the specified dataset.

Variance MDX Calculates the variance of the selected measure evalu-


ated over the specified dataset.

6-20 Querying Multidimensional Databases


To apply a data function:

1 Choose OLAP→Add Computed Item and click Functions in the Modify Item dialog box.
The Functions dialog box appears.

2 Select the Hyperion Intelligence Client or MDX function that you want use from the
Functions list.
A description of the selected function appears below the Functions list and
explains the type of calculation the function performs.

3 Select the measure to which you want to apply the function.


You can select any measure in the cube, not just a measure in the query. The
Cube Hierarchy list shows the organization of the cube including both
members and levels.
Some functions require that you specify a second measure to perform the
calculation. See the specific function if you are required to specify a second
measure.
The Count function requires no measure.

Refining OLAPQuery Data 6-21


4 Define the dataset by which to evaluate the function and click OK.
To add a member or level to the dataset from the Cube Hierarchy list, select a
member or level and click Add.
To remove a member or level from the dataset, select a member or level and
click Remove.

Processing OLAP Queries


After you build your OLAP query and apply limits, computations, sorts, and
any other adjustments to further refine your request, you need to process it.
Processing your query may take a few moments if your query is complex, or if
the data in linked report sections needs to be refreshed.

To process an OLAP query:

➤ Choose Tools→Process Query→Option.

Since a document can contain multiple queries, the Process drop-down list has
three processing options:
■ Process Current – Processes the current object. In some cases more than
one query may be processed, for example, if a report references results sets
from multiple queries. Process Current is the default selection when using
the toolbar button.
■ Process All – Processes all the queries in the document.
■ Process Custom – Opens the Process Custom dialog box so that you can
indicate which queries to process by selecting a query’s check box.

Hyperion Intelligence Clients send the query to the database and retrieve the
data to the OLAPQuery section. While the data is being retrieved, the Status
bar displays a dynamic count indicating rate and progress of server data
processing and network transfer.

6-22 Querying Multidimensional Databases


Automatically Processing OLAP Queries
If you select to run in Hardwire mode, Hyperion Intelligence
Clientsautomatically requery the database everytime you add an item to or
remove an item from the Outliner and instantaneously retrieves the data. You
do not have to click Process.

✏ Note You should consider the size of the cube you are querying to determine whether to use
Hardwire mode.

To select Hardwire mode:

➤ Choose OLAP→OLAP Query Options and select Hardwire Mode in the Design section of
the General tab.

Select Hardwire Mode to


automatically process
your OLAPQuery
everytime you add or
remove an item.

Processing OLAP Queries 6-23


Working with an OLAPQuery Offline
To view, plot, and work with an OLAPQuery offline, download the data set to
an OLAPResults section within the document. Once downloaded, the data can
be integrated with the Hyperion Intelligence Client application’s Chart, Table,
and other reporting sections. If you need to modify the query, reconnect to the
database and apply any necessary changes.

To download the OLAPQuery data set:

➤ Choose OLAP→Download To Results.

An OLAPResults section is created for the query. You can use the OLAPResults
data set to insert a new chart, pivot, or other report.

Automatically Creating a Results Section


You can have Hyperion Intelligence Clients automatically create a Results
section when you click Process. This eliminates the need to select
OLAP→Download to Results (see “Working with an OLAPQuery Offline”).

To automatically create a Results section when you click Process:

1 Choose Tools→Options→Program Options and click the OLAP tab.

2 Select Auto-Generate Results Section When Processing an OLAP Query.


When you select this option, the Hyperion Intelligence Client automatically
creates a Results section for any OLAPQuery section you create in this session
when that OLAPQuery section is first processed.

6-24 Querying Multidimensional Databases


Applying Filters and Limits
Filters enable you to define and apply limits to a query once Top Labels or Side
Labels have been added to the query. You set filters by applying comparison
operators on the values for a specific member. Review the following sections
for information on:
■ Applying Member Selection Limits
■ Applying Measure Limits (Essbase)
■ Applying Variable Limits

Applying Member Selection Limits


Use a member selection limit to filter data retrieved from the server cube. A
member selection limit is similar to a slicer, except that the member selection
limit introduces the member value in your report, and multiple members may
be selected from a single hierarchy.

To apply a member selection limit:

➤ Drag individual member values from the Catalog pane to the Outliner.

Another method of member selection uses an expression to dynamically


retrieve the list of members that satisfy selected parameters, for example, the
Top N or Bottom N. You specify these parameters in the Filter dialog box.

✏ Note If you used the Drill Down feature to navigate down to a members level, you have to use the
Drill Up feature to return to the original level before you apply Member Selection limits.

To apply a member selection limit using an expression:

1 Drag a level into the Outliner and double-click the level name.
The Filter dialog box appears.

2 Specify the information requested in the Filter dialog box and click OK.

Applying Filters and Limits 6-25


Applying Measure Limits (Essbase)
You can limit data retrieved from the server cube with a measure limit, which
is similar to a member selection limit. A measure limit uses an expression to
dynamically retrieve the list of measures that satisfy selected parameters, for
example, the Top N or Bottom N. You specify these parameters in the Filter
dialog box. Additional parameters are available based on the selected
multidimensional database.

To apply a measure limit:

1 Double-click a measure in Outliner.


The Filter dialog box appears.

2 Select the data operator from the Data Operator drop-down list.
The selections shown on this list depend on the database to which you are
connected. See “Operator Types and Data Operators” on page 6-30.

3 Specify any database specific parameter requests, such as a column index (that is, the
column on which to apply the measure limit) or value.

4 Move the member(s) to the Applied Filters list and click OK.

Applying Variable Limits


A variable limit is a limit you specify when you process a query. You can use
variable limits for standardized documents that you distribute to many users,
or to automatically reset limits when you need new conditions every time you
run a particular query. A (v) next to an item indicates it has a variable limit.
You place a variable limit on an item using the Filter dialog box, which is
accessed in either the Slicer pane or the Outliner, depending on your database.
Table 6-6 specifies how various OLAP databases access the Filter dialog box.

Tab le 6 - 6 Filter Dialog Box Access Points for Variable Limits

Database Access Points


Essbase Side Labels pane, Top Labels pane, Measures pane, Slicer pane

OLE DB Side Labels pane, Top Labels pane, Slicer pane

6-26 Querying Multidimensional Databases


Member Variable Limits
To set a member variable limit:

1 In the Outliner, double-click the item you want to define as a member limit.
The Filter dialog box appears.

2 Select the method for retrieving items from the database from the Operator Type list.
The selections shown on this list depend on the database to which you are
connected. See “Operator Types and Data Operators” on page 6-30.

3 Specify any database-specific parameter requests.


4 Click Show Values to display values in the database.
5 In the Members field, select the member(s) that you want to define as a limit.
6 Move the member(s) to the Applied Filters list.
7 Click Set As Variable and click OK.
The OLAPQuery section is redisplayed.

8 Click Process.
The Filter dialog box is redisplayed.

9 Select the member(s) that you want to define as a variable limit in the Members field.
10 Move the member(s) as a variable limit to the Applied Filters list and click OK.

Measure Variable Limits


To set a measure variable limit:

1 Double-click the item to define as a measure limit in the Outliner.


The Filter dialog box appears.

2 Select the data operator from the Data Operator drop-down list.
The selections shown on this list depend on the database to which you are
connected. See “Operator Types and Data Operators” on page 6-30.

3 Specify any database-specific parameter requests, such as a column index or value.

Applying Filters and Limits 6-27


4 Move the measure to the Applied Filters list.
5 Click Set As Variable and click OK.
The OLAPQuery Section is redisplayed.

6 Click Process.
The Filter dialog box is redisplayed.

7 Choose a measure variable limit by selecting the data operator from the Data Operator
drop-down list and specifying any database-specific parameter requests, such as a
column index or value.

8 Move the measure variable limit to the Applied Filters list and click OK.

Slicer Variable Limits


To set a slicer variable limit:

1 Click Slicer on the Section title bar to open the Slicer pane.
2 Select a member from a dimension in the Catalog pane and drag it to the Slicer pane.
Every dimension folder contains a members subfolder named
Values For Domain, which contains the members that are eligible for selection
in the Slicer pane.

3 Double-click the member in the Slicer pane that you want to use to filter data.
The Slicer dialog box appears.

4 Select the member for which you want to filter data.


5 Click the Set As Variable field and click OK.
The OLAPQuery section is redisplayed.

6 Click Process.
The Slicer dialog box is redisplayed.

7 Select the member(s) you want to use as a variable limit and click OK.

6-28 Querying Multidimensional Databases


Essbase Substitution Variables
In Essbase, a substitution variable acts as a dynamic limit. Substitution
variables are defined on the server using Essbase’s Application Manager. Your
administrator names the substitution variable and set its value equal to a user-
defined parameter. For example, a variable might be named Latest Period and
have its value set to equal November. When the latest period ends, the variable’s
value could be reset to December, and so on.
An advantage of this type of variable is that saved queries capture the variable’s
name instead of hard coding the actual value. Each time the query is run,
different data could be returned if the variable’s value has been changed on the
server.

To apply a substitution variable:

1 Double-click an item in the Outliner.


The Filter dialog box appears.

2 Click Substitution Variable in the Operator Type drop-down list.


The Filter dialog box retrieves all available variables in the Substitution
Variables list.

3 Move the member(s) to the Applied Filters list and click OK.
You can also double-click the member to add it to the Applied Filters list.
The OLAPQuery section is redisplayed.

4 Click Process.
The Filter dialog box is redisplayed.

5 In the Members field, select the member(s) that you want to use as a variable limit.
6 Move the member(s) you want to use as a variable limit to the Applied Filters list and
click OK.

Applying Filters and Limits 6-29


Operator Types and Data Operators
The OLAPQuery section supports the following operator types and data
operators:
■ OLE DB Operator Types and Data Operators (see Table 6-7)
■ Essbase Operator Types and Data Operators (see Table 6-8)

✏ Note Not all providers support all operators.

Tab le 6 - 7 OLE DB Operator Types and Data Operators

Operator Type Description

Select Members from DB Creates a filter based on a member(s) retrieved from the database.

Select by Measure Creates a filter based on a measure that you specify.

Top N Retrieves only the top N values where each top N value is at least
the specified Index value.

Top N % Retrieves only the top N % values where each top N % value is at
least the specified Index value.

Top Sum Retrieves the top N (the smallest number possible) values, such
that their sum is at least the specified Index value.

Bottom N Retrieves only the bottom N values where each bottom N value is at
least the specified Index value.

Bottom N % Retrieves the bottom N% where each bottom N % value is at least


the specified Index value.

Bottom Sum Retrieves the bottom N (the smallest number possible) values such
that their sum is at least the specified Index value.

Data Operator Description

= Equal Retrieves only records where the limited item equals the specified
value(s).

< > Not Equal Retrieves only records where the limited item does not equal the
specified value(s).

< Less than Retrieves only records where the limited item is less than the speci-
fied value(s).

6-30 Querying Multidimensional Databases


Tab le 6 - 7 OLE DB Operator Types and Data Operators (Continued) (Continued)

Operator Type Description


< = Less than or Equal to Retrieves only records where the limited item is less than the speci-
fied value(s).

> Greater than Retrieves only records where the limited item is greater than the
specified value(s).

> = Greater than Retrieves only records where the limited item equals, or is greater
or Equal to than the specified value(s).

Tab le 6 - 8 Essbase Operator Types and Data Operators

Operator Type/
Data Operator Definition

Equal Retrieves only records where the limited item equals the specified
value(s).

Match Member The Match Member performs a trailing-wildcard member search for
member names and alias names that match the pattern you specify.
It returns the member and alias names it finds. The search uses the
Essbase formula: mbrName|genName|levName, "pattern"). The
character pattern to search for, including a wildcard character (* or
?). ? substitutes one occurrence of any character. You can use ?
anywhere in the pattern. * substitutes any number of characters.
You can use * only at the end of the pattern. To include spaces in
the character pattern, enclose the pattern in double quotation
marks ("").

Data Operator Description

= Equal Retrieves only records where the limited item equals the specified
value(s).

< > Not Equal Retrieves only records where the limited item does not equal the
specified value(s).

< Less than Retrieves only records where the limited item is less than the speci-
fied value(s).

< = Less than or Equal to Retrieves only records where the limited item is less than the speci-
fied value(s).

> Greater than Retrieves only records where the limited item is greater than the
specified value(s).

> = Greater than Retrieves only records where the limited item equals, or is greater
or Equal to than the specified value(s).

Applying Filters and Limits 6-31


Changing Data Views
In the OLAPQuery section, there are numerous ways to change the way you
view the data. Changing data view involves:
■ Suppressing Rows
■ Adding Totals
■ Adding Data Functions
■ Showing as a Chart

Suppressing Rows
You can suppress the following types of rows:
■ Missing Rows (Essbase only) – Suppresses the retrieval of any missing rows
where all cells are null.
■ Zero Rows (Essbase only) – Suppresses the retrieval of any zero rows where
all cells are null.
■ Empty Rows (OLE DB only) – Suppresses the retrieval of any empty rows
for which there is no measure data.

To suppress rows in your OLAPQuery data:

➤ Choose OLAP→OLAP Query Options and click the DB Specific tab.

The options that appear on the DB Specific tab depend on the database to
which you are connected. See “Database-specific OLAPQuery Options” on
page 6-7 for more information.

6-32 Querying Multidimensional Databases


Adding Totals
Hyperion Intelligence Clients allow you to add either database totals or local
totals. Database totals are calculated by querying the actual database. Local
totals are calculated and applied to surface values on the Hyperion Intelligence
Client.

Adding Database Totals


You can include or exclude database totals to tailor the look of the
OLAPResults section and any charts you create using the Show As Chart
feature. When you activate the Database Totals feature, totals are retrieved into
the OLAPResults section as additional rows or columns. In the Chart section,
database totals are plotted.
The OLAPQuery section includes database totals by default. You may wish to
turn off this feature if you intend to use the Drill Down feature to navigate the
multidimensional cube, or if you plan to export the OLAPQuery section.

To add database totals:

1 Choose OLAP→OLAP Query Options and click Database Totals in the Design section of
the General tab.

Click here to
retrieve database
totals when you
process the query.

Changing Data Views 6-33


2 Click Process to add the totals to the data.
The Hyperion Intelligence Client displays the result as the first item at each
level of the dimension.

✏ Note If you enable database totals in the OLAPQuery section, the Hyperion Intelligence Client copies
them as static values into any Results section. As a result, they will not be treated as
dynamically updated totals.

To remove database totals:

➤ Remove the checkmark next to Database Totals on the General tab and click Process to
reprocess the query.

Adding Local Totals


To add local totals:

➤ Select the desired dimension handle, right-click, and choose Add Totals.

The Hyperion Intelligence Client totals the data and display the result as the
last item at each level of the dimension.

To remove local totals:

➤ Click on a total label and press the Delete key. [Del]

6-34 Querying Multidimensional Databases


Adding Data Functions
Column or row totals added to the OLAPQuery section are aggregates and can
be recalculated using data functions. When applied to totals, data functions
apply the calculation to surface values.
When applied to surface values, data functions recalculate the values in the
visible cells or surface of the OLAPQuery section. For example, you can show
the total sale, average sale, and maximum sale of each product by quarter. Each
of these dimensions is based on the same value. They only differ in the data
function that is applied.

To apply a total function:

1 Select the dimension handle for a particular measure.


2 Click the summation icon on the Standard toolbar to calculate the total.
3 Select a column of a particular measure.
4 Choose OLAP→Data Function and select a function.
Table 6-9 lists the data functions available in the OLAPQuery section.

Tab le 6 - 9 OLAPQuery Data Functions

Data Function Description

Sum Returns sum of all values. This is the default function in all report sections.

Average Returns average of all values.

Count Returns number of values.

Maximum Returns highest value.

Minimum Returns lowest value.

% of Column Returns surface values as a percentage of their respective column item.

% of Row Returns surface values as a percentage of their respective row item.

% of Grand Returns surface values as a percentage of all like values in the report.

Changing Data Views 6-35


Showing as a Chart
You can perform interactive analysis on the OLAPQuery data by viewing the
data as a chart. When you select this option, an OLAPQuery Results section is
automatically created, as an OLAP Chart section.

✏ Note Because the Chart created by the Show As Chart command is stationary, you cannot perform
drill-down analysis on it. In addition, it is recommended that you deactivate the Database
Totals feature since the chart plots the totals when totals are retrieved from the database.

To show the query as a chart:

➤ Choose OLAP→Show As Chart.

Formatting OLAPQuery Items


You can use the commands available on the Format menu to add corner and
data labels, and to change the appearance of fonts, backgrounds, borders,
color, row heights, and column widths. For more information on formatting
options, see “Formatting Text and Other Elements” on page 3-43.

Drilling Through from a Multi-Dimensional Database to a


Relational Database
In general, OLAP data is aggregated and obtained from a relational database
source. As a result, there may be occasions where you want to see the relational
data associated with the multi-dimensional data.
For example, assume that you create an OLAP analysis to show your company’s
sales aggregated to Country, State, and City levels. Assume further that the
sales data for each store within a city is stored in a transactional, relational
database. In this case, you could drill down in the OLAPQuery section to sales
data for USA→California→San Francisco. To see the data for the stores in San
Francisco, however, you would need to drill through to a relational database.

6-36 Querying Multidimensional Databases


Drilling through from a multi-dimensional database to a relational database
involves:
■ Setting Drill-through Options
■ Drilling Through

Setting Drill-through Options


Drill-through options define the mapping between a multi-dimensional
database and a relational database.

To set drill-through options.

1 Choose OLAP→Set Drill-Through.


The Set Drill-Through dialog box appears.

2 Fill in the options in the Set Drill-Through dialog box and click OK.

Tab le 6 - 10 Options in the Set-Drill-Through Dialog Box

Dimensions The dimensions in the current OLAP query. Click a dimension to select it.

Selected Dimension The dimension selected by the user. This is the dimension to use for
mapping.

Drilling Through from a Multi-Dimensional Database to a Relational Database 6-37


Tab le 6 - 10 Options in the Set-Drill-Through Dialog Box (Continued)

Specify Relational The relational query sections that are currently available. To specify a
Query relational query, click the arrow to the right of the drop-down list and
select a query from the list that appears.

Relational Topics The topics contained in the selected relational query. Click a topic to
select it.

Selected Topic The topic selected by the user. This is the topic to use for mapping. The
selected topic should have topic items with names corresponding to the
selected dimension levels.

Map/UnMap Maps the selected dimension to a topic (or unmaps the selected dimen-
Dimension sion from a topic). When you map a dimension to a topic, Hyperion Intel-
ligence Clients store an internal link between the dimension and the
selected topic.

Specify Fact Topic The topic used to map to the OLAP measures. The selected topic should
have topic items with names corresponding to the OLAP measures.

To specify a topic, click the arrow to the right of the drop-down list and
select a topic from the list that appears. The topics that appear are the
topics available in the selected query.

✰ Tip In order to drill-down to any level in the relational data, enable the “Set as
Dimension” property for the relational topics that represent the OLAP
dimension data. To do this, right-click the topic in the original relational query
section Contents pane, select Properties, and click the checkbox next to “Set as
Dimension” in the Topic Item Properties dialog box.

6-38 Querying Multidimensional Databases


Drilling Through
To drill through from a mulit-dimensional database to a relational database:

1 Select a dimension and drill-down to the lowest level.


2 Do one of the following:
■ Double-click the dimension.
■ Select OLAP→Drill Through.
The Drill-Through dialog box appears letting you know that there are no
additional OLAP levels to drill into.

3 Click Yes to drill through to the relational data source.


The Hyperion Intelligence Client creates a new Pivot Section (along with
associated Query and Results sections) for the relational data.

✏ Note Hyperion Intelligence Clients ignore slicers when drilling through to a relational database. If a
slicer is present, a message appears letting you know that the slicer will be ignored.

✰ Tip After you drill through on a dimension and create a new Pivot section, you can
return to the OLAPQuery section and drill down on additional dimensions if
desired. When you drill down on an additional dimension, you can choose
whether to create a new Pivot section or update an existing pivot section with
the new dimension data.
If you update an existing pivot section with new data, ensure that the new data
to be added to the Pivot section maps to a Fact Topic that is the same as the
Fact Topic in the existing Pivot.

Drilling Through from a Multi-Dimensional Database to a Relational Database 6-39


OLAP Menu Command Reference
Table 6-11 provides a quick reference to the commands available on the OLAP
menu and lists any related shortcuts.

Tab le 6 - 11 OLAP Menu Commands

Keyboard Shortcut
Command Description Shortcut Menu

Retrieve Dimensions Refreshes the dimension values in the Catalog pane. [F9]

Add Side Label Adds the selected item to the Side Labels pane.

Add Top Label Adds the selected item to the Top Labels pane.

Add Fact/Measure Adds the selected item to the Measures pane. ✔

Add Computed Item Opens the Computed Items dialog box. (The avail- ✔
ability of this option depends on the database to
which you are connected.)

Drill Down Allows you to progressively narrow your focus on a ✔


selected item.

Drill Up Returns the original view of data. ✔

Drill Through Drills through from a multi-dimensional database to


a relational database.

Remove Total Removes local totals from selected dimensions. [Del] ✔

Hide Items Removes selected items from the OLAPQuery report. ✔

Show Hidden Items Retrieves hidden items from the selected row or ✔
column to the OLAPQuery report.

Show All Items Retrieves all hidden items to the OLAPQuery report. ✔

Download To Results Downloads the OLAPQuery data set to an OLAPRe-


sults section for offline work.

Show As Chart Charts the OLAPQuery data set; automatically


creates OLAPChart and OLAPResults sections.

6-40 Querying Multidimensional Databases


Tab le 6 - 11 OLAP Menu Commands (Continued) (Continued)

Keyboard Shortcut
Command Description Shortcut Menu
OLAP Query Options Accesses the OLAPQuery Options dialog box, where
you can set options for your OLAPQuery.

Data Functions Recalculates the surface values in the OLAPQuery ✔


data set.

Set Drill-Through Accesses the Set Drill-Through dialog box, where you
can define the options for drilling through from a
multi-dimensional database to a relational data-
base.

What Next
For more information about features used in the OLAPQuery section, read Chapter 7,
“Using Limits,” Chapter 8, “Working with Computed Items,” and Chapter 9, “Applying
Sorts.” When you are finished formatting and fine-tuning your results, see Data
Analysis and Reporting with Hyperion Intelligence Clients for assistance with using
Hyperion Intelligence Clients powerful reporting and data analysis features.

OLAP Menu Command Reference 6-41


6-42 Querying Multidimensional Databases
7 Using Limits

Sometimes you do not need to work with all the data in a particular category.
This chapter explains how to use limits in the Query and Results sections to
refine your data for more intelligent analysis and filter away the data you do
not need.

In This Chapter About Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-2


Setting Simple Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-10
Setting Compound Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-12
Setting Variable Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-13
Customizing Limit Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-15
About Limits
When building a query, you usually do not want to see information associated
with every product you sell. Instead, you want to see information that relates
only to a specific product or product line. Similarly, you probably do not want
to see this information for every year the product has been available, but only
for recent periods.
When you set a limit in the Query section, data is returned from the database
only if it meets the specified conditions. For instance, suppose you only want
to see your most important customers who spend more than $400,000 per
year, or who buy gardening products in the Midwest. By applying a limit you
are instructing the database to “give me only the data which satisfies the
following conditions” (sales > $400,000; or, state is in Midwest Region and
Product Line = Garden).
For example, a limit placed on Item Type (which includes an “=” (equal)
operator and value “Keyboard”) returns only records associated with keyboard
sales. Records associated with all other products are excluded from the Results
set. The data set could be expanded to include modem sales records by adding
the value “Modem” to the limit expression.
Similarly, the limit “> 5000” applied to the Amount Sold item filters out all
sales transactions less than or equal to $5,000. Alternately, the expression
“between 5000, 10000” would exclude transactions above $10,000 and
eliminate any below or equal to 5,000.

Server versus Local Limit Processing


You apply limits in the Query or Results sections in basically the same way. The
difference is in whether the limit is applied at the server or on your desktop.

Server Limits in the Query Section


A limit applied in the Query section instructs the database server to filter
unwanted information from your request. Only the filtered data is returned to
your desktop.
If your query is potentially large, and you are more or less certain of both the
information you need and how to define the correct limits, it is best to apply
limits in the Query section. By using the database server to filter the data, you
return only the data you need across the network and onto your computer.

7-2 Using Limits


Another advantage of applying limits in the Query section is that you can
apply a limit to any topic item in the data model, even if the item is not on the
Request line. You can also set limits on computed items.

Local Limits in the Results Section


You can apply limits to columns to locally filter the data set in the Results
section. Since the other reporting sections reference the results set, these local
limits are disseminated to these sections.
Local limits are useful for managing your data set. If you decide you do not
need all the information retrieved by your query, you can use a local limit to
exclude data from view. Local limits are a good way to filter the data set for
temporary or hypothetical situations. You can always suspend or delete the
limit to view the data and make it available for reporting.

✏ Note You can only apply local limits to items on the Request line.

Limit Line
Setting limits involves dragging an item from the Content pane to the Limit
line and then setting the desired limits in the Limit dialog box.
The Limit line is a drag and drop command line similar to the Request line and
Sort lines. Limited items are displayed on the Limit line. The Limit line can be
moved, sized, docked, and hidden.

Limit indicators appear on the Limit line and next to the item in the topic. The
Limit line expressions available in the Query section Limit line are:
■ () – Encloses suboperations.
■ Var – Indicates a variable.
■ AND – Retrieves data that meets both condition.
■ OR – Retrieves data that satisfies either of two conditions.

About Limits 7-3


Limit Line Functionality
In the Query section, the Limit line includes special functionality:
■ The Limit line is an interface for building compound limits. Compound
limits are multiple limits linked together to form complex limit equations.
(See “Setting Compound Limits” on page 7-12 for more information.)
■ The Limit line enables you to convert an existing limit to a variable limit,
which prompts the user of the document to select limits as the query is
processed. (See “Setting Variable Limits” on page 7-13 for more
information.)
■ When placing a limit on a request item computed with a data function, a
divider appears on the Limit line, and the Limit icon is placed to the right of
the divider. The divider indicates that the limit is applied in the SQL Having
clause.
■ Subqueries and correlated subqueries use the result from an inner query as
the value of a limit in an outer query.

Limit Line Syntax


The following rules of syntax apply to all Limit line expressions.
■ By default, all equations are solved from left to right, with enclosed sub-
operations evaluated first.
■ AND is evaluated before OR.
■ The AND operator retrieves data that meets both conditions. For example,
if you query customers, and limit State to “Florida” AND Item Type to
“Modem,” the data retrieved would apply only to customers buying
modems in Florida, not to modems bought in Minnesota or keyboards
bought in Florida.
■ The OR operator retrieves data that satisfies either of two conditions. For
example, if you limit State to “Florida” OR Item Type to “Modem,” the data
retrieved would include Florida customers and any customers purchasing
modems. It would not include customers purchasing keyboards (unless
they lived in Florida), or customers in Minnesota (unless they bought
modems).
■ Suboperations allow you to override the default evaluation order, and may
be required for certain operations involving both AND and OR operators.

7-4 Using Limits


Limit Dialog Box
All limits are applied using the Limit dialog box. When applying a limit, you
supply (or select from a list) data values associated with a data item and use
mathematical logic to apply the values as constraints.

Custom SQL
appears only if you
access the Limit
dialog box from the Displays as Advanced in the
Query section. Query section and Options in
all other sections.

Create Subquery appears only


if you access the Limit dialog
box from the Query section.

The fields in the limit dialog box are:


■ Name – Descriptive name for the limit.
■ Include Null – Toggles the inclusion/exclusion of null values.
■ Not – Reverses the effect of an operator (for example, ‘Not >=’ is
equivalent to <).
■ Operators – Comparison operators for the limit expression. Values that
pass the comparison test will be included.
■ Show Values – Shows all potential values from the database that are
associated with the item.
You cannot use Show values in the Query section for limits on computed,
aggregate, or computed metatopic items.
■ Custom Values – Lists potential values saved with the limit or read from a
file. This feature enables you to select values from a predefined pool. You
can create and save a custom list with each limit.

About Limits 7-5


■ Custom SQL – Displays the custom SQL dialog box for coding Limits
directly in SQL.
The Custom SQL button appears only if you access the Limit dialog box
from the Query section.
■ Select All – Selects all values displayed in the list of values.
■ Transfer – Adds selected values to the custom list.
■ Ignore – Temporarily suspends a limit without deleting it.
■ Advanced – Displays Loaded Values settings and subquery options.
❑ Loaded Values Settings – Toggles a custom values list to be read from a
file or from the database. Change File allows you to specify the file name.
If you read values from a text file, vertical tabs or paragraph markers
must delimit each value. Use Show Values to display the file contents.
❑ Create Subquery – Creates a subquery where the current query is the
parent. (For information about subqueries, see “Building Subqueries”
on page 4-9.)
If you access the limit dialog box from the Results section the Advanced button
appears as Options and the Create Subquery option does not appear.

✏ Note Limits apply only to the chosen data item. You can combine limits into more complex
Compound Limits using the Limit line.

Showing Values
The Show Values command in the Limit dialog box is a powerful option for
selecting values to define limits. Show Values provides a list of values actually
in the database (or in the data set in Results) and allows you to choose a value
based on the data available.
This feature makes it possible to set limits accurately without being familiar
with the contents of the database. Show Values is also advantageous when
values change frequently and custom lists quickly become outdated.

7-6 Using Limits


To Show Values and define a limit:

1 Click the Show Values button in the Limit dialog box to retrieve the item's current values
from the database.

2 Select the desired (values) in the Values panel and click OK.
Click Select All or select the values you want individually. To create a snapshot
of the values, click Select All and then click Transfer to move the variables to
the Custom Values.

✰ Tip Because Show Values retrieves every value available, it is best not to use it in the
Query section when the data item is large, consists mostly of values, or does
not change frequently (for example, telephone numbers). In these situations,
custom lists are sufficient and help avoid extra calls to the database. You
administrator may disable Show Values if database hits are a concern.

✏ Note Show Values cannot be used for limiting computed or aggregate items.

Defining Custom Values


Custom value lists are created by or supplied to Hyperion Intelligence Client
users. When users open the limit to choose new values, they can choose a limit
from a custom list that has been supplied.
One reason to use custom lists with distributed documents is that many data
items change rarely, if at all. For example, a Gender item has three consistent
values (male, female, and unknown). A Product line item has many more
values, but may only change every year or so. Data that changes rarely is said to
have low cardinality. Under such circumstances, it makes sense for users to
select from a custom values list, rather than continuously querying to show
database values.
Custom lists are also useful when setting variable limits. When a document
creator sets a variable limit, a custom list can be prepared and added to the
document. The subsequent users who sets the limit can use the custom list or
read more custom values in from an external file.

About Limits 7-7


To create a custom values list, use one of the following options:
■ Click Show Values in the Limit dialog box to retrieve the item’s current
values from the database, then select the values to be included in the
custom list and click Transfer.
■ Click Custom Values and enter values individually in the edit field, then
click the check mark to add each to the custom list.
■ Click Advanced and select Load From File to read values from a separate
file. Use the Change File button to choose a file from the Select Limit File
window. Click Show Values to load the values from the file to the list of
values. Click Transfer to add selected values to the custom list.

Once added to the custom list, values can be selected in the list to determine
the limit. If the limit is converted to a variable limit, the custom list is stored in
the document and the saved values are available to users who resolve the limit.

✰ Tip Imported values must be vertical-tab or paragraph delimited.

Using Operators
Table 7-1 lists the logical operators used for defining limits. These operators
support standard SQL wildcards including “%” and “_”.

Tab le 7 - 1 Operators Used to Define Limits

Operator Description

Equal ( = ) Retrieves records where the limited item equals the specified value(s).

Not Equal ( <> ) Retrieves records where the limited item does not equal the specified
value(s).

Less Than ( < ) Retrieves records where the limited item is less than the specified
value(s).

Less or Equal ( <= ) Retrieves records where the limited item is equal to or less than the speci-
fied value(s)

Greater Than ( > ); Retrieves records where the limited item is greater than the specified
value(s).

Greater or Equal ( >= ); Retrieves records where the limited item is equal to or greater than the
specified value(s)

7-8 Using Limits


Tab le 7 - 1 Operators Used to Define Limits (Continued)

Operator Description
Begins With Retrieves records where the limited item begins with the specified value(s)
up to and including the end value.

Contains Retrieves records where the limited item contains the specified value(s)
regardless of location.

Ends With Retrieves records where the limited item ends with the specified value(s).

Like (with wildcards) Retrieves records where a text string appears and reflects the placement of
the specified value(s).

For example, Name Like %ZE_ would retrieve records for all employees
whose names have the letters Ze followed by a single character at the end

s Null Retrieves records where the limited item has no value; for example a field
in which no data has been entered.

Between Retrieves records where the value of the limited item lies between (and
does not equal) the specified values.

Not (with operator) Negates the operator it precedes, reversing the results of the equation

✏ Note Text strings are evaluated differently among database systems, and are often case-sensitive
(that is, “RED”, “Red” and “red” may not be equivalent in comparison). Text characters are
generally valued in ascending order (0 1 ... 9 A B C ... Z a b c ... z), so that “A” is less than “a”
in string comparisons, and strings beginning with numbers are considered “less” than strings
beginning with alphabetic characters. See your administrator for specific information.

About Limits 7-9


Setting Simple Limits
Simple limits are applied in basically the same manner in the Query and
Results sections. If you are working with a distributed document, some of the
buttons in the Limit dialog box may not be available.

Limiting Queries
The simplest way to limit a query is to apply limits individually to topic items.

To limit a query:

1 Select an item in the data model and choose Query→Add Limit(s). [Ctrl+L]
The Limit dialog box appears.

2 Select an arithmetic or logical operator from the drop-down list.


3 Define the potential limit values by clicking one of the following options:
■ Show Values – Shows database values associated with the item.
■ Custom Values – Supplies an empty field for inputting custom values.
Click the check mark to add a value to the list of values. You can also
display values from a previously saved custom list or values loaded from a
file.
■ Custom SQL – Supplies an empty text box for typing an SQL clause to be
included in the query statement. Choose View→Custom SQL to check the
complete statement logic.

4 Select the values to include in the limit definition in the Values list.
Individually select values or click Select all and deselect the values you do not
want to include. Only selected items are applied to the limit definition. To
create a snapshot of the values, click Select All and then click Transfer to move
the variables to the Custom Values.

5 When the correct values are highlighted in the Values list, click OK.
The limit is applied to the topic item and an icon is added to the Limit line.
In the Query section, the limit is applied when you process the Query.

7-10 Using Limits


✏ Note When placing a limit on an aggregate item (computed with a data function) in the Query
section, a limit divider appears and the limit icon is placed to the right. The divider indicates
the limit is located in the SQL Having clause. You need to drag the aggregate item from the
Request line to the Limit line to create a limit on an aggregate item.

To remove a limit on a query:

➤ Select an item on the Limit line and choose Remove on the shortcut menu. [Del]

Limiting Results
To limit the display of data in the Results section:

1 Select a column (click the column heading) and choose Results→Limit. [Ctrl+L]
The Limit dialog box appears.

2 Select an arithmetic or logical operator from the drop-down list.


3 Define the potential limit values by clicking one of the following options:
■ Show Values – Shows database values associated with the item.
■ Custom Values – Supplies an empty field for inputting custom values.
Click the check mark to add them to the list of values. You can also display
values from a previously saved custom list or values loaded from a file.

Setting Simple Limits 7-11


4 Select the values to include in the limit definition in the Values list.
Individually select values or click Select all and deselect the values you don’t
want to include. Only selected items are applied to the limit definition.

5 When the correct values are highlighted in the Values list, click OK.
An indicator is added to the Limit line and the limit is immediately applied to
the data set.

To remove a local limit:

➤ Select an item on the Limit line and choose Results→Remove. [Del]

Setting Compound Limits


In some cases, you may want to set two distinct limits on the same Request
item or create compound constraints using more than one item.
Use the Limit line to build compound limit expressions. The Limit line enables
you to apply more than one limit to a single item, or create compound
conditions dependent on more than one constraint.
Drag an item to the Limit line more than once and apply different logical
operators to create a complex constraint. For example, to retrieve dollar values
greater than $100 or less than or equal to $10, drag the Amount item to the
Limit line twice, and set two separate limits. An AND operator is placed
between the icons on the Limit line and the data set is constrained by both
conditions.
Similar logic can be applied using two different limits and substituting the OR
operator. For example, to retrieve customers located in the Cleveland area and
those who have purchased more than $100,000 worth of goods, you can place a
limits such that City = Cleveland and SUM(Sale Amount) > $100,000 and join
them with the OR operator.

✏ Note The second instance of an item on the Limit line displays a “_2” next to the item name.

7-12 Using Limits


To create compound Limit line expressions:

1 Add two or more items to the Limit line and apply individual limits using the Limit dialog
box.
An AND operator appears between each item on the Limit line.

2 In the Query section only, click the small arrow at the left edge of the Limit line.
The Limit line is adjusted to display the Limit line control buttons.

3 On the Limit line, select limit controls to complete the equation.


■ To switch Boolean operators AND and OR, double-click the operator you
want to change.
■ To enclose suboperations, select the items you want to enclose and click the
parentheses button. To remove parentheses, select a parenthesis and click
Remove on the shortcut menu.
■ With an item selected on the Limit line, click Var to make the limit variable.
When using compound limits, verify that the expression delivers the correct
results.

Setting Variable Limits


A variable limit is a limit in the Query section that is resolved only when a
query is processed. At that time the user is prompted to select or enter limit
values and complete the constraint. You can use variable limits in standardized
documents and distribute them to users to supply different limit values for
each process.
Variable limits work particularly well with custom lists. If a custom list has
been saved with a variable limit, the user can respond to the prompt by simply
selecting a value from the custom list.
For example, you may have a document you use monthly to monitor inventory
levels. Each time you use the document, you run it separately for each product
line you carry. You can accelerate the process by making the limit variable on
the product line item, and create a custom values list. Each time you process
the document, you can select a new product line without redefining limits.

Setting Variable Limits 7-13


To set a variable limit:

1 If necessary, add a topic item to the Limit line and define a limit.
If you are providing a custom list, add all the values you want to make available
to the list of values.

✏ Note You need to select at least one value in the list to save the limit, even if no custom list is
provided and the user clicks Show Values to choose from database values. This selection does
not influence the values available to the variable limit, which offers all values in the database
or in the custom list.

2 Select a topic item on the Limit line.


3 Choose Query→Variable Limit.
The Limit item is displayed with a V(1) beside the item name to indicate it is a
variable limit.
If other items are set to variable limits, they are displayed with V(2), V(3), and
so on, to indicate the order in which the user is prompted to respond to the
Variable Limit dialog box when the query is processed.

7-14 Using Limits


Customizing Limit Options
You can control access to the features available in the Limit dialog box, which
can be especially useful when you distribute documents to end users. For
instance, if you plan to distribute a document to novice users who need to set a
simple variable limit, it may be preferable to disable or even remove such
features as Include Null or the Custom Values buttons.

✏ Note Customizing affects a single limit. Setting global limit preferences that restrict the options
available throughout a distributed data model is an advanced feature not covered in this book.

To customize limit options:

1 Select an item on the Limit line and choose Query→Customize Limit.


The Customize Limit dialog box appears.

2 Customize the limit as follows:


■ Title – Add a title or text to the limit dialog to instruct users on how to set
the limit or on what the values mean.
■ Prompt – Supply explanatory comments or instructions.
■ Values – Disable Show Values to reduce database hits or remove the
Custom SQL or Custom Values option.
■ Options – Disable elements and lock in operators.

3 Click OK.

Customizing Limit Options 7-15


7-16 Using Limits
8 Working with Computed Items

This chapter describes how to use calculations to compute new data items in
the Query, Results, and reporting sections. Such calculations are important for
supplementing the information already stored in the database.

In This Chapter About Computed Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-2


Adding Computed Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-8
Using Functions in Hyperion Intelligence Clients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-14
Common Computed Item Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-27
Scalar Function Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-31
Trend Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-50
About Computed Items
When looking for answers to basic business questions, raw data cannot always
help. For example, while a database might track dollar sales figures, sometimes
this information is much more valuable with reference to more complicated
calculations such as cost of sales or profit margin.
Administrators sometimes anticipate these requirements, designing the
internal database structure so that it makes such calculations as the raw data is
collected. But at times you might need information that no one has yet
anticipated.
Computed data items are a means of generating new information, usually from
data that is already stored in the database. If your database doesn’t offer
particular information, use Hyperion Intelligence Clients to compute it for
yourself.

Computing New Data


Computations can be performed by your database server or by Hyperion
Intelligence Clients on your desktop. A computation does not add data to the
database; instead, new data items are added or data items are recalculated in
your data set.
Hyperion Intelligence Clients provide different tools for computing data
items. These tools allow you to:
■ Build arithmetic expressions {Units * Amount = Revenue}
■ Build logical expressions {If Score > =50 Then “Pass” Else
“Fail”}
■ Build mixed expressions {Tax = Revenue *.35)
■ Apply functions {(abs (Amount_Sold)}

Examples of computed items include:


■ A Full_Name item that concatenates the values in the First_Name and
Last_Name items.
■ A Profit item derived by subtracting the Cost of Goods column from the
Gross Revenues column.
■ A Grade item that uses if…else logic to assign letter grades derived from
test scores.

8-2 Working with Computed Items


■ A Sine item that computes an item for the sine of an angle.
■ A Moving Average item that smooths a set of data points, i.e., removes
irregular fluctuations in the general trend of data.

Computed Items in Hyperion Intelligence Client Sections


You can add computed items in the Query, OLAPQuery, Results, Table, Chart,
and Pivot sections. This feature works similarly in all sections with a few
differences.
In all Hyperion Intelligence Client sections, you can use computed items to
create a completely new data item on the Request line from an already existing
data item. Each value in the original data item is computed to produce a new
value in the newly generated data item. A one-to-one correspondence exists
between the original values and the derived computed values.

Computed Items in the Query Section


In the Query section, a computed item is a set of instructions to the database
server. Hyperion Intelligence Clients use the computing power of the database
server to perform calculations as it retrieves data from the database.
For this reason, the Query section allows you to use computed items in a way
that is not possible in the other sections. Instead of creating a new data item,
the new values simply replace the original values in the data item as they are
retrieved from the database.
Additionally, you can compute items using any topic item in the data model
and any scalar functions provided by your RDBMS.
Since computed items are new data items, you may want to confirm or change
the new item’s data type to preserve the precision of a mixed-data type
computations, or to change the way a data item is handled (for example,
interpreting number as strings). This ensures the correct handling of data in
server computations.
Local calculations (Results, Pivot) are handled internally, and adjustment
between 16- and 32-bit integers, for example, can be handled safely using the
automatic or number data type specification. For a list of Hyperion-supported
data types, see Table 8-1.

About Computed Items 8-3


Tab le 8 - 1 Data Types and Specifications

Data type Specification

Automatic A data type is determined automatically given the data type of the reference
items and the computations performed.

Byte Variable data type of length determined by a single byte of computer storage.
Bytes can store numeric values from 0 to 255, or a single text character.

Date Calendar date in server default format (typically mm/dd/yy).

Integer (16-bit) Retains a 16-bit value (2 bytes). A 16-bit integer stores integer values from 0
to 16,777,216, and signed integers between +8,388,608 and –8,388,608.

Integer (32-bit) Retains a 32-bit value (4 bytes). A 32-bit integer has a range of 0 to
4,294,967,296 if unsigned. If signed, -2,147,483,648 to 2,147,483,647.

Packed Real Real numbers packed for use with EDA middleware. The results in Hyperion
Intelligence Clients are the same as real numbers.

Real Decimal numbers up to 5 positions right of the decimal.

String Text strings to a maximum length of 256 characters.

Time Time in format set by user preference.

TimeStamp Date/time combination in format set by user preference.

Computed Items in the Results and Reporting Sections


In the Results and reporting sections, Hyperion Intelligence Clients perform
computations on the desktop. The computations involve only the data in your
Results set or on the surface of a reporting section.
In these sections you can only create new computed items: you cannot modify
original data items retrieved directly from the database. For the same reason,
scalar functions used to compute items in these sections are provided by the
Hyperion Intelligence Client, rather than the RDBMS.
Computed items in the Results and reporting sections differ in two respects:
■ In the Results and Table sections, reference items are limited to the items
that appear on the Request line.

8-4 Working with Computed Items


■ In the remaining reporting sections (excluding the Report Designer
section), reference items are limited to the items placed in the Fact pane in
the Outliner. Computations in these sections work on the aggregated cell
values that make up the core of the report. To perform computations on
data before it is aggregated, compute the new item in Results.

Computed Items in the Pivot Section


When you analyze and interpret Pivot Section computed item break totals, two
methods are available for you to present the data. These methods include:
■ Break total cell results derived from the computed item formula applied to
the detail cell
■ True Computed Item totals

When determining which method to use, look at how the two types of totals
differ from each other. The former method is derived from the formula used to
calculate the detail cell.
True computed item totals use aggegation according to the specified data
function and they never rely on the computed item total formula. Depending
on what you are trying to achieve, each method will show different totals
You can see how the two types of totaling computed items differ in the example
below. The first part of the example shows what happens when the totals are
derived from the computed item formula used in the detail cells.
Detail cell data is shown at the City level and break totals are shown when the
State changes.

Detail cells

Break Total Cells

About Computed Items 8-5


In this example, the Sum data function has been applied. The “Computed”
column is defined by the following formula:
(Units % 50) +1

where “%” represents modulo (remainder) operator. In other words, the


formula is defined as:
Integer remainder of (“Unit column cell value” /50) + 1

For the Unit column values for each city within a state, the formula works as
expected. For example, in the Oakland, CA cell, the formula is:
Units 910
Modulo (remainder) of 910 / 50 = 10
Add 1 to assign a value of 11 (shown above).

For the California “Total” row, the value shown is 41, which is the result of the
following formula:
Total “Units” for California = 12390
Modulo of 123900/50 = 40
Add 1 to assign a value of 41

The Modulo of 41 is not the sum of the displayed cell values for all cities in
California, instead it is the modulo formula applied only to the cell containing
the “Unit” column city total for California.
If you expected to see a break cell total value of 145, you need to use the True
Computed Item feature total, which would reference the displayed values in
the detail cells (this example assumes a Sum data function):
46 +1 + 11 +1 +46 ( = 145

✏ Note For information on enabling True Totals to a Pivot section break total cell, see “Using True
Computed Item Totals” on page 3-13 in the Hyperion Intelligence Data Analysis and Reporting
Guide.

Using Surface Values


Hyperion Intelligence Clients allow you to use underlying or surface values
when working with totals. Underlying values refer to values from the original
results section. Surface values refer to values in the actual report section. The
two approaches produce values that may appear incongruous with the values
in the report.

8-6 Working with Computed Items


To understand this difference between underlying and surface values, consider
a simple pivot table with two values of 20 and 30. Each of these is already a
total of underlying values (20 = 8 +12 and 30 = 10 + 20). An average of the
underlying value yields the result of 12.5 = (8 + 12 + 10 + 20) /4). An average
of the surface values yields the results 25 = (20 +30) / 2).

✏ Note Average and Count aggregation Data Functions are not evaluated in True Total
mode unless the Use Surface Values property is also enabled (see Use Surface
Value above). If Use Surface Values is not enabled, the Average and Count
aggregation are calculated using the count of the underlying Table/Result
Section data values instead of the displayed Pivot values.

✏ Note By default, the Surface Values feature is deactivated.

Computed Items and Data Functions


Computed items and data functions are fundamentally different, and the
functions available in the Computed Item dialog box do not calculate data in
the same way as data functions.
■ Computed items calculate a fresh value for each original value, based on the
computation (for example, Revenue calculated from Price and Units Sold).
The new values are part of a new data item or replace the original values.
Computed items never reduce the original number of records.
■ Data functions, by contrast, summarize groups of database records and
replace the original values with new summary data. Because data functions
summarize values, the number of records are frequently reduced.

Pivot Options
The Pivot Options tab allows you to enable and disable surface values, true
computed item totals, and how to treat null fact values. For more information,
see “Selecting Pivot Options” on page 3-21 in the Hyperion Intelligence Data
Analysis and Reporting Guide.

About Computed Items 8-7


Adding Computed Items
In the Query section, a computed item is a new data item derived from
calculations. In the Results, OLAPQuery, Pivot, Chart and Report Designer
sections, you add computed items by building equations to compute data
items, or by applying functions to existing data items.
Computed items are like normal data items, and can be included in reports or
reused to compute other data.

To create (or modify) a computed item:

1 Choose Add Computed Item from a Section menu (for example, Query, Results, and so
on).
The Computed Item or Modify Item dialog box appears.

Local Meta-topic
Server Level Level Operators
Operators

2 In the Name field, type a name that describes the computation.


The default name is Computed, which is numbered sequentially if there is
more than one. If you assign a name to a computed item that is identical to an
existing scalar function name, the Hyperion Intelligence Client numbers the
name starting with the number 2.

8-8 Working with Computed Items


3 Define the new data item by building an expression in the Definition text box.
■ Use the operator buttons to insert arithmetic and logical operators at the
insertion point.
■ Click Functions to apply scalar functions using the Functions dialog box.
■ Click Reference to display the Reference dialog box, and select items to
place in the equation.
You also can type any portion of the equation or the entire equation directly
into the Definition text box using JavaScript. The names are case sensitive, and
you must replace spaces in item names with underscores (‘_’).

4 If necessary, click the Options button to set a new data type for the item.
5 When the equation is complete, click OK.
The computed item is listed in the Results Outliner and appears as a column in
the results set.
In the Query section, the computed item appears on the Request line with its
new name. In the Results section, compute items appear in the Outliner in blue
type.

Operators
The following sections describe the operators available for creating computed
items. Use the following guidelines as you add operators to your computation.
■ Type the word null (no quotes) into the Expression text box to represent
null values.
■ Enclose all text string constant values and date constant values entered in
expressions in single quotes. (Numbers can be entered without quotes.)
■ To join items with a space or other character, reference or type items and
strings into the Expression text box and join them with the + operator (for
example, City + ‘,’ + State). To join without additional characters,
use the Concat function.
■ In division operations, the divisor may not be null or equal to zero. If a data
item serves as the divisor in an expression (for example, 5000 / Units_Sold)
and includes null or zero values, first create a computed item using if/else
logic to remove null and zero values, and then compute the item containing
the division operation.

Adding Computed Items 8-9


■ Two date items can be subtracted, but not added. The Add Month function
adds an integer value to a date.
■ You cannot nest functions inside the Sum, Cume, Chr, and Breaksum
functions.

Arithmetic Operators
Arithmetic operators take numerical values (either logical or variables) as their
operands and return a single numerical value.

Tab le 8 - 2 Arithmetic Operators

+ Add Used at both the server level and the local metatopic level
for all sections.

- Subtract Used at both the server level and the local metatopic level
for all sections.

* Multiply Used at both the server level and the local metatopic level
for all sections.

/ Divide Used at both the server level and the local metatopic level
for all sections.

( Begin suboperations Used at both the server level and the local metatopic level
for all sections.

) End suboperations Used at both the server level and the local metatopic level
for all sections.

++ Increment Used at both the server level and the local metatopic level
for all sections except the Query section.

-- Decrement Used at both the server level and the local metatopic level
for all sections except the Query section.

Mod Modulus Used only at the local metatopic level.


(%)
The modulus operator
returns the remainder of
dividing var1 by var2.

For example, 5% 4
returns 1.

8-10 Working with Computed Items


Comparison Operators
A comparison operator compares its operands and returns a logical value
based on whether the comparison is true. The operands can be numerical or
string values. When used on string values, the comparisons are based on the
standard lexicographical ordering.

✏ Note The comparison operators in Table 8-3 are only available at the local metatopic level.

Tab le 8 - 3 Comparison Operators

== Returns true if the operands are equal.

!= Returns true if the operands are not equal.

< Returns true if the left operand is less than the right operand.

<= Returns true if the left operand is less than or equal to the right operand.

> Returns true if the left operand is greater than the right operand.

>= Returns true if the left operand is greater than or equal to the right operand.

Adding Computed Items 8-11


Statements
Executes a set of statements if a specified condition is true. If the condition is
false, another set of statements can be executed.

✏ Note Statements are only available at the local metatopic level.

Tab le 8 - 4 Statements

if…else if executes a set of statements if a specified condition is true. The specified


condition may be another statement and can include other nested if statements.
Braces, {}, must enclose multiple statements. If the condition is false, another set
of statements can be executed if the optional else statement has been included in
the script.

A sample if … else statement looks likes this:


if (condition) {
statements1
}
else {
statements2
}

8-12 Working with Computed Items


Logical Operators
Logical operators take Boolean (logical) values as operands and return a
Boolean value.

✏ Note The logical operators in Table 8-5 are only available at the local metatopic level.

Tab le 8 - 5 Logical Operators

AND (&&) Connects two conditional expressions and retrieves records only if each expres-
sion is true.

OR (||) Specifies a combination of expressions and retrieves records that include at least
one of the expressions. For example, if one of the words is Washington or Oregon,
every record with the expression “Washington” and every record with the word
“Oregon” is included.

NOT (!) Computes and shows items more accurately stated in a negative way. In effect, all
records are retrieved except those that fulfill the conditional expression.

You enter the conditional expression with the NOT (!) logical operator preceding
the conditional expression.The conditional expression can be a simple value or
nested within other conditional expressions, for example, expressions using AND
and OR.
A combined condition expression that uses NOT is true if the conditional expres-
sion following NOT is false. A combined conditional expression is false if the con-
ditional expression following NOT is true.

Adding Computed Items 8-13


Using Functions in Hyperion Intelligence Clients
This section lists the functions available in Hyperion Intelligence Clients,
including:
■ Scalar Functions
■ Teradata Version 3 OLAP Functions
■ Functions for Returning the Day of the Week

Scalar Functions
Tables 8-6 through 8-11 list the scalar functions available in Hyperion
Intelligence Clients.

✏ Note In the tables for Conditional, Date, Math, String and Trend functions below, the variables n, s,
d, and exp (and val) represent data items and columns (State, Amount Sold) or actual values
(‘NY’, 6000) as arguments to scalar functions, and indicate number, string, date, or variable
types, respectively.

The variable c indicates that only a data item reference may be used, and not a constant
value. If constant values are substituted for data items, dates and text strings must be
enclosed in single quotes. Examples in the tables that follow use a mixture of constants and
data items, which are generally interchangeable.

Tab le 8 - 6 Conditional Scalar Functions

Decode Compares value of item c to one or more expressions exp, and


(c,exp,val,exp,val...def) returns the value val matched to each expression, or a default
def.

Nvl (c,exp1,exp2) Returns exp2 if null, and exp1 otherwise.

Tab le 8 - 7 Date Scalar Functions

AddMonths (d,n) Adds n months to date d.

DayOfMonth (d) Returns the day of month for date d.

LastDay (d) Returns date of the last day of the month containing date d.

8-14 Working with Computed Items


Tab le 8 - 7 Date Scalar Functions (Continued)

MonthsBetween (d1,d2) Returns the number of months between dates d1 and d2 as a real
number (fractional value).

NextDay (d,s) Returns the date of the first weekday s after date d. If s is omitted,
add one day to d.

Sysdate (c) Returns the current system date and time for each record in item c.

ToCha (d/n, 'f' or "f") Converts the date or number d/n into a string in the specified
format. This function does not change the data, but rather the item
data type. The results cannot be computed mathematically.

If you are referencing a Date or Number column for the first argu-
ment (Date field), single quotes are not required. If you are passing
a data value, single quotes are required.

A comma must immediately follow the first argument. In the second


argument (Format field), single quotes or double quotes must
enclose values.

ToDate (s) Returns date type in place of date-string s. This function does not
change the data, but rather the item data type. The results can be
computed mathematically.

ToMonth (d) Returns a numeric month value for each value of d. You can change
the value to display as a month string by adding and applying a
mmm date format.

ToQtr (d) Returns a string quarter value for each value of d.

ToYear (d) Returns the integer year for each value of d. You can convert the
year to display without commas by applying the 0 numeric format.

Tab le 8 - 8 Math Scalar Functions

Abs (n) Returns the absolute value of number n.

Atn (n) Returns arc tangent of number n radians.

Ceil (n) Returns the smallest integer value greater than or equal to number n.

Cos (n) Returns cosine of number n radians.

Cosh (n) Returns hyperbolic cosine of number n radians.

Count (c) Returns the number of row values in c (including nulls).

Exp (n) Returns e (2.718) raised to exponential power n.

Using Functions in Hyperion Intelligence Clients 8-15


Tab le 8 - 8 Math Scalar Functions (Continued)

Max (a,b) Returns the larger of items a and b for each new value.

Min (a,b) Returns the smaller of items a and b for each new value.

Mod (n,m) Returns the integer remainder of number n divided by number m. If m is larger,
the default value is n.

Power (n,m) Returns number n raised to exponential power m.

Round (n,m) Returns number n rounded to m decimal places. The default value for m is 0.

Sign (n) Returns indicator of -1, 0, or 1 if number n is variously negative, 0, or positive.

Sin (n) Returns sine of number n radians.

Sinh (n) Returns hyperbolic sine of number n radians.

Sqrt (n) Returns square root of number n.

Tan (n) Returns tangent of number n radians.

Tanh (n) Returns hyperbolic tangent of number n radians.

Trunc (n,m) Returns number n truncated to number m decimal places. The default value for
m is 0.

Tab le 8 - 9 Numeric Scalar Functions

Avg (numbers, break_col, Returns the average (arithmetic mean) of values in a


break_value) number column. The average includes null values
when calculating the arithmetic mean.

AvgNonNull (numbers, break_col, Returns the average (arithmetic mean) of values in a


break_value) number column, excluding null values.

chr (n) Returns string converted from ASCII numeric code n.

ColMax (numbers, break_col, Returns the largest value in a column of numbers.


break_value)

ColMin (numbers, break_col, Returns the smallest value in a column of number.


break_value)

Count (numbers, break_col, Counts and returns the number of rows in a column.
break_value)

CountDistinct (numbers, break_col, Counts and returns the number of values in a column.
break_value)

8-16 Working with Computed Items


Tab le 8 - 9 Numeric Scalar Functions (Continued)

CountNonNull (numbers, break_col, Counts the number of rows in a column.


break_value)

CountNull (numbers, break_col, Counts the number of rows in a column that contains
break_value) null values.

Cume (numbers, break_col) Returns a cumulative running total for each value in a
column of numbers.

Next (c) Returns the next row value of the referenced item c.

Prior (c) Returns the prior row value of the referenced item c.

Sum (numbers, break_col, Returns the total of a column of numbers.


break_value)

Tab le 8 - 10 Statistical Scalar Functions

Median (numbers, break) Returns the median of a column of numbers.

Mode (numbers, break_col) Returns the most frequently occurring value in a column of
numbers.

Percentile (numbers, n, Returns the nth percentile of values in a column of


break_col) numbers in ascending order.

Rank (numbers, break_col) Returns the rank of a number in a column of numbers.

There is a restriction on setting a limit on an aggregate


column (which “Rank” is considered). To set a limit on the
column, insert a new table into the document and drag the
columns into the table outliner. This creates a “copy” of
the columns which can have a limit set on it.

RankAsc (numbers, break_col) Returns the rank of a number in a column of numbers in


ascending order.

StdDev (numbers, break_col) Estimates standard deviation based on a sample. The


standard deviation is a measure of how widely values are
dispersed from the average value (the mean). If your data
represents the entire population, then compute the stan-
dard deviation using the StdDevpfunction.

Using Functions in Hyperion Intelligence Clients 8-17


Tab le 8 - 10 Statistical Scalar Functions (Continued)

StdDevp (numbers, break_col) Calculates standard deviation based on the entire popula-
tion given as arguments. The standard deviation is a
measure of how widely values are dispersed from the
average value (the mean). If your data represents a
sample of the population, then compute the standard
deviation using the StdDevfunction.

Var (numbers, break_col) Estimates variance based on a sample. The Var function
assumes that its arguments are a sample of the popula-
tion. If your data represents the entire population, then
compute the variance using the Varp function.

Varp (numbers, break_col) Estimates variance based on the entire population. The
Varp function assumes that its arguments are the entire
population. If your data represents a sample of the popu-
lation, then compute the variance using the Var function.

Tab le 8 - 11 String Scalar Functions

Ascii (s) Returns an ASCII numeric representation of string s.

Concat (s1, s2) Returns text strings s1 and s2 concatenated.

Initcap (s) Returns string s with the first letter of each word capitalized, and
remaining characters in lower case.

Instr (s1,s2,n,m) Returns position of mth occurrence of string s2 in string s1, begin-
ning at position number n. If n is negative, the count is made back-
wards from the end of s1. If no values are found, 0 is returned.

Length (s) Returns character count of string s.

Lower (s) Returns string s in lower case.

Ltrim (s1,s2) Trims string s1 from the left, up to the first character not included in
string s2.

Replace (s1,s2,s3) Returns string item s1 with all occurrences of string s2 replaced by
string s3. The default for s3 deletes each occurrence of s2.’

Rtrim (s1,s2) Trims column string s1 from the right, up to the first character not
included in string s2.

Substr (s,n,m) Returns a portion of string s, m characters long, beginning at


numeric position n. The default action for m includes all remaining
characters.

8-18 Working with Computed Items


Tab le 8 - 11 String Scalar Functions (Continued)

Translate (s1,s2,s3) Returns string s1, with each character contained in string s2
replaced by the corresponding characters in string s3.

Upper (s) Returns string s in upper case.

Teradata Version 3 OLAP Functions


Hyperion Intelligence Clients support a number of Teradata version 3 OLAP
and system functions, which dramatically reduce query time. See Tables 8-12
through 8-22 for complete descriptions of these functions.

Tab le 8 - 12 CSum (Cumulative Sum) Function

Description Accumulates a sum over an ordered set of rows, providing the current
values of the SUM on each row

Syntax: CSum(value_expression, sort_expression_list)

value_expression A value_expression is a scalar numeric column expression for which a


running sum is to be computed.

sort_expression_list The sort_expression_list is a list of expressions (with optional sort


direction specifications) separated by commas. That is, it specifies the
column references used to sort the values. The default sort direction is
ascending (ASC).

Tab le 8 - 13 MAvg (Moving Average) Function

Description Computes the moving average of a column using the current row and
the preceding width-1 rows.

Syntax: MAvg(value_expression, width, sort_expression_list)

Using Functions in Hyperion Intelligence Clients 8-19


Tab le 8 - 13 MAvg (Moving Average) Function (Continued)

value_expression The value expression represents a scalar numeric column expression


for which a moving average is to be computed.

The expression cannot contain any OLAP or aggregate functions.

width The width represents the number of previous rows to be used in com-
puting the moving average. The width value is always a positive integer
constant. The maximum width is 4096.

sort_expression_list The sort_expression_list is a list of expressions (with optional sort


direction specifications) separated by commas. That is, it specifies the
column references used to sort the values. The default sort direction is
ascending (ASC).

Tab le 8 - 14 MDiff (Moving Difference) Function

Description Returns the moving difference between the current row-column value
and the preceding nth value.

The moving difference is a common business metric used to compare


activity for some variable in a current time period to the activity for the
same variable in another time period at a fixed distance in the past.

Syntax: MDiff(value_expression, width, sort_expression_list)

value_expression The value expression represents a scalar numeric column expression


for which a moving average is to be computed. The expression cannot
contain any OLAP or aggregate functions.

width The width represents the number of previous rows to be used in com-
puting the moving average. The width value is always a positive integer
constant. The maximum width is 4096.

sort_expression_list The sort_expression_list is a list of expressions (with optional sort


direction specifications) separated by commas. That is, it specifies the
column references used to sort the values. The default sort direction is
ascending (ASC).

8-20 Working with Computed Items


Tab le 8 - 15 MSum (Moving Sum) Function

Description Computes the moving sum of a column using the current row and the
preceding n-1 row.

Syntax: MSum(value_expression, width, sort_expression_list)

value_expression The value expression represents a scalar numeric column expression


for which a moving average is to be computed. The expression cannot
contain any OLAP or aggregate functions.

width The width represents the number of previous rows to be used in com-
puting the moving average. The width value is always a positive integer
constant. The maximum width is 4096.

sort_expression_list The sort_expression_list is a list of expressions (with optional sort


direction specifications) separated by commas. That is, it specifies the
column references used to sort the values. The default sort direction is
ascending (ASC).

Tab le 8 - 16 MLingreg (Multiple Linear Regression) Function

Description Returns a predicted value for a column expression based on a least


squares multiple linear regression of the previous width-1 based on
the sort_expression column values. When there are fewer than width-1
preceding rows, the MLinreg function computes the regression using
all the preceding rows.

Syntax: MLingreg(value_expression, width, sort_expression_list)

value_expression The value expression represents a scalar numeric column expression


for which a moving average is to be computed. The expression cannot
contain any OLAP or aggregate functions.

width The width represents the number of previous rows to be used in com-
puting the moving average. The width-1 previous rows are used to
compute the linear regression and the row value itself is used to calcu-
late the predicted value. The width value is always a positive integer
constant greater than 1. The maximum width is 4096.

sort_expression_list The sort_expression_list is a column reference used to sort the values


and to define the dependent variable for calculating the linear regres-
sion. The sort_expression_list is an expression with optional sort direc-
tion specification. The default sort direction is ascending (ASC). Only
one sort_expression is allowed with this function.

Using Functions in Hyperion Intelligence Clients 8-21


Tab le 8 - 17 Quantile Function

Description Computes the quantile scores for the values in a column. A quantile is
a generic interval of user-defined width.

Syntax: Quantile(quantile_constant, sort_expression_list)

quantile_constant A positive integer constant used to define the number of quantile par-
titions to be used.

sort_expression_list List of expressions (with optional sort direction specifications) sepa-


rated by commas. That is, it specifies the column references used to
sort the values. The default sort direction is ascending (ASC).

Quantile Value Range 0 through (Q-1) where Q is the number of quantile partitions specified
by the quantile constant.

Tab le 8 - 18 Rank Function

Description Returns the rank (1…n) of all the rows in the group by the value of
sort_expression_list, with the same sort_expression values receiving
the same rank.

Syntax: Rank(sort_expression_list)

sort_expression_list List of expressions (with optional sort direction specifications) sepa-


rated by commas. That is, it specifies the column references used to
sort the values. The default sort direction is ascending (ASC).

Tab le 8 - 19 Current_Timestamp Function

Description Returns the current system timestamp and current session Time Zone
displacement.

Syntax: Current_Timestamp(fractional_precision)

fractional_precision An option precision range for the returned timestamp value. The value
range is 0 through 6, inclusive. The default is 6.

Properties Data type: TIMESTAMP WITH TIME ZONE


Length: 12
Not nullable

Fields YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, TIMEZONE_HOUR,


TIMEZONE_MINUTE

8-22 Working with Computed Items


Tab le 8 - 20 Qualify Function

Description Filters results of a previously computed OLAP function according to


user-specified conditions.

Syntax: Qualify search_condition

Qualify Represents a conditional clause in the SELECT statement.

search_condition One or more conditional expressions that must be satisfied by the


result rows. Aggregate operators with a Qualify clause can be used.

Usage Notes When you specify a QUALIFY clause in a query, you must also specify a
statistical function in one of the following locations within the query.

select_list of the SELECT clause


grouping_key of the GROUP BY clause
search_condition of the QUALIFY clause

When the WHERE, GROUP BY, and QUALIFY clauses are used together
in a SELECT statement, the order of evaluation is:

WHERE
GROUP BY
QUALIFY

Tab le 8 - 21 Sample Function

Description Reduces the number of rows to be considered for further processing by


returning mutually exclusive samples of rows specified either as a list
of fractions of the total number of rows or as a list of numbers of rows
from the SELECT query.

Syntax: Sample(fractional_description [count_description])

fractional_descriptio Represents any number of floating point constants in the closed inter-
n val (0, 1) and separated by a comma. This is a list of fractions, the
sum of which must not exceed 1.

count_description Represents a positive integer constant list of row counts. A warning is


returned if there are not enough rows in the result to satisfy the sam-
pling request completely.

Using Functions in Hyperion Intelligence Clients 8-23


Tab le 8 - 21 Sample Function (Continued)

Usage Notes No more than 16 samples can be requested per SELECT statement.

SAMPLE operates on the evaluated output of the table expression,


which can include a WHERE clause and GROUP BY, HAVING, or
QUALIFY clauses, sampling the result according to use specification.

A sampling request cannot be repeated. The identical sampling query


run twice against the same data will report different rows in the result.

Sampling can be used in a derived table, view, or INSERT-SELECT to


reduce the number of rows to be considered for further computation.

You cannot use SAMPLE in a subquery.

If a fraction_description results in no rows being returned, a warning is


generated.

If a count_description cannot be completely satisfied, a warning is


generated and the sample size is reduced to the number of remaining
rows.

Tab le 8 - 22 SampleID Function

Description Identifies the sample to which a row belongs, distinguishing rows


belonging to different samples specified in the SAMPLE clause of a
SELECT statement.

Syntax: SAMPLEID

Definition The sample ID identifies the sample to which a row belongs in the left-
to-right order of the SAMPLE clause specification, from 1 through n
(where n is the number of samples requested in the SAMPLE clause).

Where to Specify SAMPLEID can only be specified with a SAMPLE clause and can
SAMPLEID appear either as part of a SELECT clause or in an ORDER BY clause.

8-24 Working with Computed Items


Functions for Returning the Day of the Week
If you need to return the day of the week on which a given date falls, some
database systems enable this through functions that can be applied in the
SELECT statement. Examples are the datepart() function in Microsoft and
Sybase SQL Servers (which requests the ‘weekday’ part of the date), and
Oracle’s to_char() function, which specifies a format of D (for day of week
number 1 through 7) or DAY to get the name of the day.
If you database does not support this function, you can add a computed item
to the Results section to derive it.

Formatting Day of Week Data


If you simply need to format the day of the week for displaying or printing out
the date, then no special computation or statement is needed.

To format the day of the week:

1 In the Results section, select the date item and choose Format→Number.
The Number page of the Properties dialog box appears.

2 Select Custom from the Category list.


3 In the Format field, type ddd to display a three-letter day abbreviation or dddd to display
the full name, and click OK.

Using Functions in Hyperion Intelligence Clients 8-25


Analyzing Data Based on Day of Week Data
If you add a format such as dddd mm/dd/yyyy, it displays a date as Tuesday
05/19/2000. This may not be sufficient if you need to perform analysis on data
based on the day of the week. Despite the display format, the data in the field is
still a date. That is, if you need to compare sales for Mondays versus other days
of the week over a given time period, changing the display format does not
address your original question. In this case, you need to group all Mondays to
do that sort of analysis.

To analyze data based on the day of the week:

1 In the Results section, select the item and choose Results→Add Computed Item.
2 In the Name field, assign a new name to the column.
3 In the Definition field, type: to_char(<MyDate>,'dddd')
Replace <MyDate> with the name of the column for which you need the day of
the week information. This creates a string from the date column with the
desired format, as discussed earlier. You can also add the following:
: decode((NEXT_DAY ( <MyDate>, 'Sunday' )) -<MyDate>,
7,'Sunday', 6,'Monday', 5,'Tuesday', 4,'Wednesday',
3,'Thursday', 2,'Friday', 1,'Saturday', 'Error!')

8-26 Working with Computed Items


Common Computed Item Examples
The examples that follow show you how to apply some of the mathematical,
numerical, and statistical calculations available in the Pivot and Chart sections
using computed items.

Math Functions A mathematical equation consists of the argument and a simple or complex
arithmetic operator that is applied to the argument. In this example, the sales tax
is calculated as a percentage of the revenue (3.5%). The “Net Amount” column is
calculated by subtracting the tax dollars from the revenue.

1. Create a query to 2. Create a computed item 3. Create a computed


retrieve Amount Sales in the Pivot section: item in the Pivot section:
for each year. =Amount_Sales x 0.035 =Amount_Sales – Tax

Measure of Central Tendency


If you need to distinguish patterns within a given set of data, you can begin
looking for the center of distribution where statistics tend to reside. This form of
measurement involves finding the “average” in the data set and is typically
referred to as the Measure of Central Tendency technique.
Three types of measurements are associated with this technique:
■ Mean – The value is equal to the sum of the measures divided by the number of
measures.
■ Median – The value is representative of the positional middle measure.
■ Mode – The value that occurs with the greatest frequency.
In this example, Unit Sales represent the total number of product units pur-
chased. Mean of Unit Sales represents the average purchase size. Median of Unit
Sales represent the number of product units that scores exactly in the middle of
all purchase quantities. The Mode of Unit Sales presents the number of product
units most commonly purchased at one time.

= Avg (Unit_Sales, Year) = Median (Unit_Sales, Year) = Mode (Unit_Sales, Year)

Common Computed Item Examples 8-27


Average Numeric Calculated averages can be applied to break columns and break values. In this
example, a variety of columns are created and display different average calcula-
tions based on the Amount_Sales column.

Column Numeric Function

Amount sum of Amount Sales by quarter and Product Line


Sales = Sum (Amount_Sales)

Entire Year average purchase amount (Amount Sales) across all quarters and Product Lines
= Avg (Amount_Sales)

By Quarter average purchase amount (Amount Sales) in a specific quarter


= Avg (Amount_Sales, Quarter)

For Quarter average purchase amount (Amount Sales) in a specific quarter for a Product line
and Product = Avg data function applied to Amount_Sales column
Line

For Q1 average purchase size (Amount Sales) across all Product Lines for Q1 specifi-
cally
= Avg (Amount_Sales, Quarter, 'Q1')

For Books average purchase size (Amount Sales) across all Quarters for Books
= Avg (Amount_Sales, Product_Line, 'Books')

8-28 Working with Computed Items


Percentile Suppose Sales Managers qualify for a special bonus if they are within the 80th per-
centile (Qualify column). You can define an 80th percentile value for Amount
Sales.

The Eightieth Percentile column calculates the


80th percentile value for all Sales managers:
=Percentile (Amount Sales, .8)

Important! Surface values must be used in this type of report.

The Qualify column determines whether a Sales Manager


is within the 80th percentile:
=if (Amount_Sales >= Eightieth_Percentile) {‘a’}

The letter ‘a’ formats as a check mark using the Marlett font.

The second example identifies countries that make sales transactions under
$10,000.

Calculated by finding the 95th percentile value within


each country. Country is used as the break column.
=Percentile (Amount Sales, .95, Country)

Important! Calculations must be done using the


underlying values instead of the surface values.

Percentile values under $10,000.00 are spotlighted in


red to identify the countries that have such sales
transactions 95% of the time.

Common Computed Item Examples 8-29


Rank You can return the rank of a number in a column of numbers. The Rank func-
tion works as if you were to sort the list in descending order. In this example,
Amount Sales values are ranked for each Country.

✏ Note The Rank function assigns duplicate numbers the same rank, which affects the ranks of
subsequent numbers.

Countries ranked by their Amount Sales.


Country is the break column.
=Rank (Amount Sales, Country)

Projected Sales This example shows a calculation for a 20% increase in sales projections for each
quarter, based on Amount Sales for 1999.

This bar represents the


Revenue Increase values.
Amount_Sales * 2

8-30 Working with Computed Items


Scalar Function Examples
This section provides examples of some common scalar functions. Each
example shows the syntax used and the result of applying the function. The
examples that follow do not include all the Hyperion Intelligence Clients scalar
functions.

Avg The Avg function returns the average (arithmetic mean) of values in a number
column.
Avg (numbers, break_col, break_value)
where:
numbers references the column that contains the numbers on which the average
is calculated.
break_col is an optional parameter that references a break column.
break_value is an optional parameter that returns the average of numbers
column where value in break_col equals break_value.

✏ Note If constant values in the break_value column are substituted for data items, dates and text
strings must be enclosed in single quotes.

In this example, the Avg function is used on the numeric column and
break_column. The results are shown in the Computed column.
Avg (Amount, State)

State City Amount Computed


AZ Tucson 112 112
CA Burbank 240 168.5
CA Glendale 97 168.5
FL Palmetto 70 70
MD Laurel 97 97
MI Detroit 208 208

Scalar Function Examples 8-31


State City Amount Computed
MN Eagan 159 159
NY New York 490 335
NY Rochester 180 335

AvgNonNull The AvgNonNull function returns the average (arithmetic mean) of values in a
number column, excluding null values.
Avg (numbers, break_col, break_value)
where:
numbers references the column that contains the numbers on which the average
is calculated.
break_col is an optional parameter that references a break column.
break_value is an optional parameter that returns the average of non-null
numbers column where value in break_col equals break_value.

✏ Note If constant values in the break_value column are substituted for data items, dates and text
strings must be enclosed in single quotes.

In this example, the AvgNonNull function is used on the numeric column,


break_column, and break_value. The results are shown in the Computed column
AvgNonNull (Amount, State, ‘CA’)

State City Amount Computed


AZ Tucson 112 240
CA Burbank 240 240
CA Glendale NULL 240
FL Palmetto 70 240
MD Laurel 97 240
MI Detroit 208 240
MN Eagan 159 240
NY New York 490 240
NY Rochester 180 240

8-32 Working with Computed Items


ColMax The ColMax function returns the largest value in a column of numbers.
ColMax (numbers, break_col, break_value)
where:
numbers references the column that contains the number on which the
maximum column value is calculated.
break_col is an optional parameter that references a break column.
break_value is an optional parameter that returns the maximum value of
numbers column where value in break_col equals break_value.

✏ Note If constant values in the break_value column are substituted for data items, dates and text
strings must be enclosed in single quotes.

In this example, the ColMax function is used on the numeric column. The
results are shown in the Computed column.
ColMax(Amount)

State City Amount Computed


AZ Tucson 112 490
CA Burbank 240 490
CA Glendale NULL 490
FL Palmetto 70 490
MD Laurel 97 490
MI Detroit 208 490
MN Eagan 159 490
NY New York 490 490
NY Rochester 180 490

Scalar Function Examples 8-33


ColMin The ColMin function returns the smallest value in a column of numbers.
ColMin (numbers, break_col, break_value)
where:
numbers references the column that contains the numbers on which the count
of minimum column value is calculated.
break_col is an optional parameter that references a break column.
break_value is an optional parameter that returns the minimum value of
numbers column where value in break_col equals break_value.

✏ Note If constant values in the break_value column are substituted for data items, dates and text
strings must be enclosed in single quotes.

In this example, the ColMin function is used on the numeric column and
break_column. The results are shown in the Computed column.
ColMin (Amount, State)

State City Amount Computed


AZ Tucson 112 112
CA Burbank 240 240
CA Glendale Null 240
FL Palmetto 70 70
MD Laurel 97 97
MI Detroit 208 208
MN Eagan 159 159
NY New York 490 180
NY Rochester 180 180

8-34 Working with Computed Items


Count The Count function counts the number of rows in a column.
Count (numbers, break_col, break_value)
where:
numbers references the column that contains the numbers on which the count is
calculated.
break_col is an optional parameter that references a break column.
break_value is an optional parameter that returns the count of numbers
column where value in break_col equals break_value.

✏ Note If constant values in the break_value column are substituted for data items, dates and text
strings must be enclosed in single quotes.

In this example, the Count function is used on the numeric column. The results
are shown in the Computed column.
Count (Amount)

State City Amount Computed


AZ Tucson 112 9
CA Burbank 240 9
CA Glendale 97 9
FL Palmetto 70 9
MD Laurel 97 9
MI Detroit 208 9
MN Eagan 159 9
NY New York 490 9
NY Rochester 180 9

Scalar Function Examples 8-35


CountDistinct The CountDistinct function counts the number of values in a column.
CountDistinct (numbers, break_col, break_values)
where:
numbers references the column that contains the numbers on which the count
of distinct (unique) values is calculated.
break_col is an optional parameter that references a break column.
break_value is an optional parameter that returns a distinct (unique) count of
numbers column where value in break_col equals break_value.

✏ Note The CountDistinct function differentiates actual values and not the rows. The
CountDistinct function counts only the actual rows in a column. For example, if
column named “OS Operating Systems” has one hundred rows and shows data by Windows
and UNIX systems, the CountDistinct function counts only the three operating systems
and not the number of rows.

In this example, the CountDistinct function is used on the numeric column


and break_column. The results are shown in the Computed column.
CountDistinct (Amount, State)

State City Amount Computed


AZ Tucson 112 1
CA Burbank 240 1
CA Glendale 240 1
FL Palmetto 70 1
MD Laurel 97 1
MI Detroit 208 1
MN Eagan 159 1
NY New York 490 1
NY Rochester 180 1

8-36 Working with Computed Items


CountNull The CountNull function counts the number of rows in a column that contains
null values.
CountNull (numbers, break_col, break_value)
where:
numbers references the column that contains the numbers on which the count
of null values is calculated.
break_col is an optional parameter that references a break column.
break_value is an optional parameter that returns the count of null numbers
column where value in break_col equals break_value.

✏ Note If constant values in the break_value column are substituted for data items, dates and text
strings must be enclosed in single quotes.

In this example, the CountNull function is used on the numeric column. The
results are shown in the Computed column.
CountNull(Amount)

State City Amount Computed


AZ Tucson 112 1
CA Burbank 240 1
CA Glendale NULL 1
FL Palmetto 70 1
MD Laurel 97 1
MI Detroit 208 1
MN Eagan 159 1
NY New York 490 1
NY Rochester 180 1

Scalar Function Examples 8-37


CountNonNull The CountNonNull function counts the number of rows in a column that do
not contain null values.
CountNonNull (numbers, break_col, break_value)
where:
numbers references the column that contains the numbers on which the count
of non-null values is calculated.
break_col is an optional parameter that references a break column.
break_value is an optional parameter that returns the count of non-null
numbers column where value in break_col equals break_value.

✏ Note If constant values in the break_value column are substituted for data items, dates and text
strings must be enclosed in single quotes.

In this example, the CountNonNull function is used on the numeric column,


break_column, and break_value. The results are shown in the Computed
column.
CountNonNull (Amount, State, ‘CA’)

State City Amount Computed


AZ Tucson 112 1
CA Burbank 240 1
CA Glendale 97 1
FL Palmetto 70 1
MD Laurel 97 1
MI Detroit 208 1
MN Eagan 159 1
NY New York 490 1
NY Rochester 180 1

8-38 Working with Computed Items


Cume The Cume function returns a cumulative running total for each value in a column
of numbers.
Cume (numbers, break_col)
where:
numbers references the column that contains the numbers on which the cume is
calculated.
break_col is an optional parameter that references a break column.

✏ Note If constant values in the break_value column are substituted for data items, dates and text
strings must be enclosed in single quotes.

In this example, the Cume function is used on the numeric column and
break_column. The results are shown in the Computed column.
Cume (Amount, State)

State City Amount Computed


AZ Tucson 112 112
CA Burbank 240 240
CA Glendale 97 337
FL Palmetto 70 70
MD Laurel 97 97
MI Detroit 208 208
MN Eagan 159 159
NY New York 490 490
NY Rochester 180 670

Scalar Function Examples 8-39


Sum The Sum function computes the total for a column of numbers.
Sum (numbers, break_col, break_value)
where:
numbers references the column that contains the numbers on which the sum is
calculated.
break_col is an optional parameter that references a break column.
break_value is an optional parameter that returns the sum of numbers
column where value in break_col equals break_value.

✏ Note If constant values in the break_value column are substituted for data items, dates and text
strings must be enclosed in single quotes.

In this example, the Sum function is used on the numeric column. The results are
shown in the Computed column.
Sum(Amount)

State City Amount Computed


AZ Tucson 112 1556
CA Burbank 240 1556
CA Glendale NULL 1556
FL Palmetto 70 1556
MD Laurel 97 1556
MI Detroit 208 1556
MN Eagan 159 1556
NY New York 490 1556
NY Rochester 180 1556

8-40 Working with Computed Items


Median The Median function returns the median of a column of numbers. The median
is the middle value or number in the middle of a set of numbers (and not the
average).
Median (numbers, break_col)
numbers references the column that contains the numbers on which the
median is calculated.
break_col is an optional parameter that references a break column.
In this example, the Median function is used on a numeric column that has an
odd number of rows:
Median (Amount)
The Median function returns the number in the middle, which in this example
is 30.

State Amount Computed


AZ 10 30
CA 20 30
FL 30 30
MD 40 30
MI 50 30

If the numbers column has an even number of rows, the Median function calcu-
lates the average of the two numbers in the middle.

State Amount Computed


AZ 10 25
CA 20 25
FL 30 25
MD 40 25

Scalar Function Examples 8-41


Mode The Mode function returns the most frequently occurring value in columns of
numbers.
Mode (numbers, break_col)
where:
numbers references the column that contains the numbers on which the mode is
calculated.
break_col is an optional parameter that references a break column.

✏ Note Null values in the numbers column are ignored. Zeroes (0) are included. If the numbers
column has no duplicate data values, the Mode function returns the value of the first cell in the
numbers column.

In this example, the Mode function is used on the numeric column. The results
are shown in the Computed column.
Mode(Amount)

State Amount Computed


AZ 10 10
CA 10 10
FL 0 10
MD 40 10
MI 50 10

8-42 Working with Computed Items


Percentile The Percentile function returns the nth percentile of values in a column of
numbers.
Percentile (numbers, n, break_col)
where:
numbers references the column that contains the numbers on which the per-
centile is calculated.
n is the percentile value 0 to 1 inclusive.
break_col is an optional parameter that references a break column.

✏ Note Percentile can also be used to return quartile values by setting the nth percentile to the
following: 0.25 for first quartile, 0.5 for second quartile, 0.75 for third quartile.

In this example, two computed value columns have been calculated. In the first
computed column, the Percentile function is used on the numeric column
and the nth percentile of values (0 in this case).
Percentile (Units, 0)
In the second computed column, the Percentile function is used on the
numeric column, and the nth percentile of values (.25 in this case).
Percentile (Units,.25)

State Units Computed 1 Computed 2


WI 50 50 96
AZ 70 50 96
CA 96 50 96
CA 98 50 96
CA 101 50 96
FL 112 50 96
MD 159 50 96
NY 241 50 96
NY 490 50 96

Scalar Function Examples 8-43


Rank The Rank function returns the rank of a number in a column of numbers. It
works as if you were to sort the list in descending order.
Rank(numbers, break_col)
where:
numbers references the column that contains the numbers on which the rank is
calculated.
break_col is an optional parameter that references a break column.

✏ Note The Rank function assigns duplicate numbers the same rank. The presence of duplicate
numbers affects the ranks of subsequent numbers.

In this example, the Rank function is used for the numeric column (the column
that contains the numbers to rank). The results are shown in the Computed
column.
Rank(Amount)

State City Amount Computed


AZ Tucson 112 6
CA Burbank 241 2
CA Glendale 97 7
FL Palmetto 70 9
MD Laurel 97 7
MI Detroit 208 3
MN Eagan 159 5
NY New York 490 1
NY Rochester 180 4

8-44 Working with Computed Items


RankAsc The RankAsc function returns the rank of a number in a column of numbers. It
works as if you were to sort the list in ascending order. In this case, the rank of the
number would be its position.
RankAsc (numbers, break_col)
where:
numbers references the column that contains the numbers on which the rank is
calculated.
break_col is an optional parameter that references a break column.

✏ Note The RankAsc function assigns duplicate numbers the same rank. The presence of duplicate
numbers affects the ranks of subsequent numbers.

In this example, the RankAsc function is used on the numeric column and
break_column. The results are shown in the Computed column.
RankAsc (Amount, State)

State City Amount Computed


AZ Tucson 112 3
CA Burbank 240 6
CA Glendale 97 6
FL Palmetto 70 1
MD Laurel 97 2
MI Detroit 208 5
MN Eagan 159 4
NY New York 490 7
NY Rochester 180 7

✏ Note The RankAsc is calculated on the SUM(col_1) and grouped by col_2.

Scalar Function Examples 8-45


StdDev The StdDev function returns a standard deviation based on a sample. It is a
measure of how widely values are dispersed from the average value (the mean).
StdDev (numbers, break_col)
where:
numbers references the column that contains the numbers on which the stan-
dard deviation is calculated.
break_col is an optional parameter that references a break column.

✏ Note StdDev assumes that its arguments are a sample of the population. If you data represents
the entire population, then compute the standard deviation using StdDevp.

The standard deviation is calculated using the nonbiased or n-1 method.

If a result set contains one row of data or less, the StdDev function should return an error.

In this example, the StdDev function is used on the numeric column. The
results are shown in the Computed column.
StdDev (Amount)

State City Amount Computed


AZ Tucson 112 128.11
CA Burbank 240 128.11
CA Glendale 97 128.11
FL Palmetto 70 128.11
MD Laurel 97 128.11
MI Detroit 208 128.11
MN Eagan 159 128.11
NY New York 490 128.11
NY Rochester 180 128.11

8-46 Working with Computed Items


StdDevp The StdDevp function calculates and returns a standard deviation based on the
entire population given as arguments. The standard deviation is a measure of
how widely values are dispersed from the average value (the mean).
StdDevp (numbers, break_col)
where:
numbers references the column that contains the numbers on which the stan-
dard deviation is calculated.
break_col is an optional parameter that references a break column.

✏ Note StdDevp assumes that its arguments are the entire population. If your data represents a
sample of the population, then compute the standard deviation using StdDev.

The standard deviation is calculated using the biased or n method.

In this example, the StdDevp function is used for the numeric column. The
results are shown in the Computed column.
StdDevp (Amount)

State City Amount Computed


AZ Tucson 112 120.79
CA Burbank 240 120.79
CA Glendale 97 120.79
FL Palmetto 70 120.79
MD Laurel 97 120.79
MI Detroit 208 120.79
MN Eagan 159 120.79
NY New York 490 120.79
NY Rochester 180 120.79

Scalar Function Examples 8-47


Var The Var function estimates variance based on a sample.
Var (numbers, break_col)
where:
numbers references the column that contains the numbers on which the vari-
ance is calculated.
break_col is an optional parameter that references a break column.

✏ Note Var assumes that its arguments are a sample of the population. If your data represents the
entire population, then compute the variance usingVarp.

In this example, the Var function is used on the numeric column and
break_column. The results are shown in the Computed column.
Var (Amount, State)

State City Amount Computed


AZ Tucson 112 0
CA Burbank 240 10,224.50
CA Glendale 97 10,224.50
FL Palmetto 70 0
MD Laurel 97 0
MI Detroit 208 0
MN Eagan 159 0
NY New York 490 48,050.00
NY Rochester 180 48,050.00

8-48 Working with Computed Items


Varp The Varp function estimates variance based on the entire population.
Varp (numbers, break_col)
where:
numbers references the column that contains the numbers on which the vari-
ance is calculated.
break_col is an optional parameter that references a break column.

✏ Note Varp assumes that its arguments are the entire population. If your data represents a sample
of the population, then compute the variance using Var.

In this example, the Varp function is used on the numeric column. The results
are shown in the Computed column.
Varp (Amount)

State City Amount Computed


AZ Tucson 112 14,589.56
CA Burbank 240 14,589.56
CA Glendale 97 14,589.56
FL Palmetto 70 14,589.56
MD Laurel 97 14,589.56
MI Detroit 208 14,589.56
MN Eagan 159 14,589.56
NY New York 490 14,589.56
NY Rochester 180 14,589.56

Scalar Function Examples 8-49


Trend Functions
Both the Pivot and Results sections offer trend functions, which allow you to
perform statistical analysis within a sample data set of variable size.Trend
functions are useful for removing data irregularities/fluctuations, analyzing
data trends, and smoothing a set of data points. They are often used to reduce
noise that exists when visualizing large data sets by providing aggregation
capabilities at configurable window sizes.
Review the following sections for information on:
■ General Moving Average and Moving Function Functionality
■ Simple Moving Averages
■ Positioning of Moving Average Results - Trailing and Centered Averages
■ Weighted Moving Averages
■ Exponential Moving Averages
■ Moving Difference
■ Moving Maximum
■ Moving Median
■ Moving Sum
■ Moving Minimum
■ Direction Of Moving Function Calculation

8-50 Working with Computed Items


General Moving Average and Moving Function Functionality
The term "Moving" when used with functions such as Moving Averages usually
refers to a fixed window or "sub-range" of analysis that moves over a larger
range of numeric data values. For each window, a calculation such as an
average (mean) is performed. As the window moves over the larger range, one
number value is dropped from the window and a new value is added.
To illustrate the effect of Moving Averages as opposed to a simple average
(mean) consider the following list of arbitrary "Sales" values over a period of
twelve months as shown in a Table or Results Section:

The simple mean value of all of the above twelve Sales values is:
Sum of all twelve values divided by 12 = 296 / 12 = 24.67

While having some virtue, this simple mean value does not offer any insight
into analyzing the variation trend of the original values or to provide a more
accurate mean value at varying points of the range. Moving Averages, on the
other hand, do offer the ability to understand the trend of data by calculating
many average (mean) values over the entire range of original data values.
There are several variations to Moving Average calculation, the most common
of these are: Simple Moving Averages, Weighted Moving Averages and
Exponential Moving Averages. All of these variations are described in detail in
the following sections. Additionally, other "Moving Functions": Moving
Maximum, Moving Minimum, Moving Median, Moving Sum and Moving
Difference whose functionality closely resembles that of Moving Averages are
discussed.

Trend Functions 8-51


Simple Moving Averages
In a Simple Moving Average calculation, the original range of data values is
split into smaller "windows" and a simple mean value of each window is
calculated. An example of the calculation involved for such Simple Moving
Averages is shown below.

If the first three Sales values were summed and then this sum was divided by 3
to give a mean value, this value would be:
(10 + 15 + 17) / 3 = 42 / 3 = 14

Next, consider the mean of the sum of the second, third and fourth original
values i.e.:
(15 + 17 + 20) / 3 = 52 / 3 = 17.33

This pattern could be repeated to reveal the mean values of the third, fourth
and fifth values; fifth, sixth and seventh values and so on until all subsequent
windows of three numbers are summed and their mean values obtained.
The Simple Moving Averages of the original range of values for a window of 3
(i.e. in this case, a 3-Month Simple Moving Average) could be evaluated to be:

Tab le 8 - 23 Simple Moving Average

Month Original Sales Values 3-Month Simple Moving Average

Jan 10

Feb 15

Mar 17 14

8-52 Working with Computed Items


Tab le 8 - 23 Simple Moving Average

Month Original Sales Values 3-Month Simple Moving Average


Apr 20 17.33

May 22 19.66

Jun 20 20.66

Jul 25 22.33

Aug 27 24

Sep 30 27.33

Oct 35 30.66

Nov 37 34

Dec 40 37.33

Positioning of Moving Average Results - Trailing and Centered


Averages
Note that in Simple Moving Average table, the aveerage of numbers n, n+1 and
n+2 in the "Original Values" column (where "n" refers to the row position) is
placed in row position n+2 of the "3-Month Simple Moving Average" column.
This Moving Average display technique is known as "Trailing Averages". An
alternative display technique is known as "Centered Averages" which instead
positions the Moving Average in the center row of the window. The table
following illustrates the difference in these display techniques using the first
three values from above:

Tab le 8 - 24 Centered and Trailing Averages

Month Centered Averages Trailing Averages

Jan

Feb 14

Mar 14

Trend Functions 8-53


"Centered Averages" display requires further calculations when the window is
an even number and it is not available for Simple Moving Averages and other
Moving Functions at this time.
All "Moving Functions" in this particular implementation will display data
according to the "Trailing Averages" principle.
Note also that from the above two tables, "Trailing Averages" display causes the
initial n-1 (where n = window size) rows of result data to have no value (rows 1
and 2 are blank in the above examples). This is the generally accepted standard
for the initial "n-1" terms and is the standard adopted for the implementation
of most Moving Functions.
Table 8-25 illustrates the above monthly Sales data Simple Moving Average
calculation using "Trailing Averages" display:
The Simple Moving Averages of the original range of values for a window of 3
(i.e. in this case, a 3-Month Simple Moving Average) could be evaluated to be:

Tab le 8 - 25 3-Month Simple Moving Average

Month Original Sales Values 3-Month Simple Moving Average

Jan 10

Feb 15

Mar 17 14

Apr 20 17.33

May 22 19.66

Jun 20 20.66

Jul 25 22.33

Aug 27 24

Sep 30 27.33

Oct 35 30.66

Nov 37 34

Dec 40 37.33

8-54 Working with Computed Items


Weighted Moving Averages
With Simple Moving Averages, each data value in the "window" in which the
calculation is performed is given an equal significance or weight. It is often the
case, especially in financial price data analysis, that more chronologically
recent data should carry a greater weight. In these cases, Weighted Moving
Average (or Exponential Moving Average - see the following topic)
functionality is often preferred.
Consider the same table of Sales data values for twelve months:

To calculate a Weighted Moving Average:

1 Calculate how many intervals of data are participating in the Moving Average calculation
(i.e. the size of the calculation "window").
If the calculation window is said to be n, then the most recent data value in the
window is multiplied by n, the next most recent multiplied by n-1, the value
prior to that multiplied by n-2 and so on for all values in the Window.

2 Divide the sum of all of the multiplied values by the sum of the weights to give the
Weighted Moving Average over that window.

3 Place the Weighted Moving Average value in a new column according to the trailing
averages positioning described above.
To illustrate these steps, consider if a 3-month Weighted Moving Average of
Sales in December is required (using the above table of Sales values).

Trend Functions 8-55


The term "3-month" implies that the calculation "window" is 3, therefore the
Weighted Moving Average calculation algorithm for this case should be:
{(Dec Sales value * 3) + (Nov Sales value * 2) + (Oct Sales value
* 1)} divided by (3 + 2 + 1)
= {(40 * 3) + (37 * 2) + (35 * 1)} / 6
= (120 + 74 + 35) / 6
= 229 / 6
= 38.17

Or, if a 3-month Weighted Moving Average were evaluated over the entire
original range of data, the results would be:

Tab le 8 - 26 3-month Weighted Moving Average

Month Orignal Sales Values 3-Month Simple Moving Average

Jan 10

Feb 15

Mar 17 15.12

Apr 20 18.17

May 22 20.5

Jun 20 20.67

Jul 25 22.83

Aug 27 25.17

Sep 30 28.17

Oct 35 32

Nov 37 35.17

Dec 40 38.17

8-56 Working with Computed Items


Exponential Moving Averages
Exponential Moving Averages, similar to Weighted Moving Averages, also
assign a greater weight to more recent data values. Unlike Weighted Moving
Averages, however, they use the previously calculated Exponential Moving
Average value as a basis for calculation rather than the original (non-Averaged)
data values. In this way, the calculation method used by Exponential Moving
Averages is cumulative, meaning that (unlike Simple Moving Averages or
Weighted Moving Averages) all previous data values have some effect on the
Exponential Moving Average to be calculated, although this effect diminishes
greatly with time.
Exponential Moving Averages tend to be more accurate than the other types of
Moving Average when the original data values show a more rapid degree of
variation over time (or other variable).
The formula for calculating an Exponential Moving Average (EMA) is:
X = (K * (C - P)) + P

Where:
X = Current EMA (i.e. EMA to be calculated)
C = Current original data value
K = Smoothing Constant
P = Previous EMA
(The first EMA in the range to be calculated is arbitrary and can be the
corresponding original data value or, often, a Simple Moving Average value.
Where:
K = Smoothing Constant = 2 / (1 + n)
n = number of periods for EMA i.e. the Window to calculate.
This rather complex calculation is, perhaps, best illustrated by example.

Trend Functions 8-57


Consider the table of monthly Sales values as shown previously:

If we calculated the Exponential Moving Average in a similar fashion to the 3-


Month Simple Moving Average, we would perform the following steps:

1 Calculate the Smoothing Constant according to the 2 / (1 + n) formula.


N = window of values = 3, therefore the Smoothing Constant is:
2 / (1 + 3) = 0.5

2 For the first Exponential Moving Average, use the first original data value (in this case,
that for the Month of "Jan").

3 For subsequent values, follow the calculation according to the above formula
X = (K * (C - P)) + P as indicated below:

Calculation (K * (C Exponential
Month Sales - P)) + P Moving Average
Jan 10 = Original value 10

Feb 15 (0.5 * (15 - 10)) + 12.5


10

Mar 17 (0.5 * (17 - 12.5)) 14.75


+ 12.5

Apr 20 (0.5 * (20 - 14.75)) 17.375


+ 14.75

8-58 Working with Computed Items


Calculation (K * (C Exponential
Month Sales - P)) + P Moving Average
May 22 (0.5 * (22 - 19.688
17.375)) + 17.375

Jun 20 (0.5 * (20 - 19.844


19.6875)) +
19.6875

Jul 25 (0.5 * (25 - 22.422


19.844)) + 19.844

Aug 27 (0.5 * (27 - 24.711


22.422)) + 22.422

Sep 30 (0.5 * (30 - 27.355


24.711)) + 24.711

Oct 35 (0.5 * (35 - 31.178


27.355)) + 27.355

Nov 37 (0.5 * (37 - 34.089


31.178)) + 31.178

Dec 40 (0.5 * (40 - 37.044


34.089)) + 34.089

Moving Difference
The MovingDiff function operates over a moving window of values, and
returns the difference between the current value and the value at the beginning
of the window. This function is similar to the MovingMax function. No
“Weighted” or “Exponential” can be calculated for this function.
The MovingDiff function takes the following arguments:
MovingDiff (column, window, break_col)

where:
■ column (required) – Specify the column that contains the numeric fact on
which the Moving Function column value is calculated. If you are applying
the function from the Pivot section, you can only use a column that has
already been added to the Facts pane of the Outliner.

Trend Functions 8-59


■ window (optional) – Specify a moving “window” of values from the
Column on which the Moving Function gets calculated The window value
must be a positive integer of value equal to or less than the total number of
rows in the Column (within any Break Column value).
If the window value is an interger of greater value than the number of
values in the Column, then the window value defaults to the number of
rows in the Column (within any Break Column value). If no window value is
specified, then the window value defaults to 3.
■ break column (optional) – Specify the name of the column on which to
perform the Moving Function calculation. The break column refers to the
rows of similar valued data cell within the Pivot or Results section.

The following results would occur if you used the Moving Maximum function
with a Window of 3 (MovingDiff(Sales,3).

Tab le 8 - 27 MovingDiff Function

Month Orignal Sales Values 3-Month MovingDiff Average

Jan 10

Feb 15

Mar 17 7

Apr 20 5

May 22 5

Jun 20 0

Jul 25 3

Aug 27 7

Sep 30 5

Oct 35 5

Nov 37 7

Dec 40 5

8-60 Working with Computed Items


Moving Maximum
The MovingMax (Moving Maximum) function operates over a moving
window of values. For each Window, the MovingMax returns the maximum
value found in the Window. This function is similar to the Simple Moving
Average, No “Weighted” or “Exponential” can be calculated for this function.
The MovingMax function takes the following arguments:
MovingMax (column, window, break_col)

where:
■ column (required) – Specify the column that contains the numeric fact
on which the Moving Function column value is calculated. If you are
applying the function from the Pivot section, you can only use a column
that has already been added to the Facts pane of the Outliner.
■ window (optional) – Specify a moving “window” of values from the
Column on which the Moving Function gets calculated The window value
must be a positive integer of value equal to or less than the total number of
rows in the Column (within any Break Column value).
If the window value is an interger of greater value than the number of
values in the Column, then the window value defaults to the number of
rows in the Column (within any Break Column value). If no window value is
specified, then the window value defaults to 3.
■ break column (optional) – Specify the name of the column on which to
perform the Moving Function calculation. The break column refers to the
rows of similar valued data cell within the Pivot or Results section.

The following results would occur if you used the MovingMax function with a
Window of 3 (MovingMax(Sales,3).

Tab le 8 - 28 MovingMax Function

Month Orignal Sales Values 3-Month MovingMax

Jan 10

Feb 15

Mar 17 17

Apr 20 20

Trend Functions 8-61


Tab le 8 - 28 MovingMax Function

Month Orignal Sales Values 3-Month MovingMax


May 22 22

Jun 20 22

Jul 25 25

Aug 27 27

Sep 30 30

Oct 35 35

Nov 37 37

Dec 40 40

Moving Median
The MovingMed function operates over a moving window of values. For each
Window, the MovingMed returns the middle value (in terms of rank) found in
the Window. If the Window value is an even number, the simple mean value of
the two middle ranking values should be used. No “Weighted” or
“Exponential” can be calculated for this function.
The MovingMed function takes the following arguments:
MovingMed (column, window, break_col)

where:
■ column (required) – Specify the column that contains the numeric fact
on which the Moving Function column value is calculated. If you are
applying the function from the Pivot section, you can only use a column
that has already been added to the Facts pane of the Outliner.
■ window (optional) – Specify a moving “window” of values from the
Column on which the Moving Function gets calculated The window value
must be a positive integer of value equal to or less than the total number of
rows in the Column (within any Break Column value).

8-62 Working with Computed Items


If the window value is an interger of greater value than the number of
values in the Column, then the window value defaults to the number of
rows in the Column (within any Break Column value). If no window value is
specified, then the window value defaults to 3.
■ break column (optional) – Specify the name of the column on which
to perform the Moving Function calculation. The break column refers to
the rows of similar valued data cell within the Pivot or Results section.

The following results would occur if you used the MovingMed function with a
Window of 3 (MovingMed(Sales,3).

Tab le 8 - 29 MovingMed Function

Month Orignal Sales Values 3-Month MovingMed Average

Jan 10

Feb 15

Mar 17 15

Apr 20 17

May 22 20

Jun 20 20

Jul 25 22

Aug 27 25

Sep 30 27

Oct 35 30

Nov 37 35

Dec 40 37

Trend Functions 8-63


Moving Sum
MovingSum (Moving Sum) function operates over a moving window of
values. For each Window, the MovingSum returns the sum of values found in
the window. No “Weighted” or “Exponential” can be calculated for this
function.
The MovingSum function takes the following arguments:
MovingSum (column, window, break_col)

where:
■ column (required) – Specify the column that contains the numeric fact
on which the Moving Function column value is calculated. If you are
applying the function from the Pivot section, you can only use a column
that has already been added to the Facts pane of the Outliner.
■ window (optional) – Specify a moving “window” of values from the
Column on which the Moving Function gets calculated The window value
must be a positive integer of value equal to or less than the total number of
rows in the Column (within any Break Column value). If the window value
is an interger of greater value than the number of values in the Column,
then the window value defaults to the number of rows in the Column
(within any Break Column value). If no window value is specified, then the
window value defaults to 3.
■ break column (optional) – Specify the name of the column on which
to perform the Moving Function calculation. The break column refers to
the rows of similar valued data cell within the Pivot or Results section.

The following results would occur if you used the Moving Sum function with a
Window value of 3.

Tab le 8 - 30 MovingSum Function

Month Orignal Sales Values 3-Month MovingSum Average

Jan 10

Feb 15

Mar 17 42

Apr 20 52

8-64 Working with Computed Items


Tab le 8 - 30 MovingSum Function

Month Orignal Sales Values 3-Month MovingSum Average


May 22 59

Jun 20 62

Jul 25 72

Aug 27 72

Sep 30 82

Oct 35 92

Nov 37 102

Dec 40 112

Moving Minimum
The MovingMin function operates over a moving window of values. For each
Window, the Moving Minimum returns the minimum value found in the
Window. This function is similar to the Simple Moving Average. No
“Weighted” or “Exponential” can be calculated for this function.
The MovingMin function takes the following arguments:
MovingMin (column, window, break_col)

where:
■ column (required) – Specify the column that contains the numeric fact
on which the Moving Function column value is calculated. If you are
applying the function from the Pivot section, you can only use a column
that has already been added to the Facts pane of the Outliner.
■ window (optional) – Specify a moving “window” of values from the
Column on which the Moving Function gets calculated The window value
must be a positive integer of value equal to or less than the total number of
rows in the Column (within any Break Column value).
If the window value is an interger of greater value than the number of
values in the Column, then the window value defaults to the number of
rows in the Column (within any Break Column value). If no window value is
specified, then the window value defaults to 3.

Trend Functions 8-65


■ break column (optional) – Specify the name of the column on which
to perform the Moving Function calculation. The break column refers to
the rows of similar valued data cell within the Pivot or Results section.

The following results would occur if you used the Moving Minimum function
with a Window value of 3.
Similar to Simple Moving Averages above, note that the values in the "3-Month
Moving Minimum" column are positioned according to the trailing averages.

Tab le 8 - 31 MovingMin Function

Month Orignal Sales Values 3-Month Moving Minimum

Jan 10

Feb 15

Mar 17 10

Apr 20 15

May 22 17

Jun 20 20

Jul 25 20

Aug 27 20

Sep 30 25

Oct 35 27

Nov 37 30

Dec 40 35

8-66 Working with Computed Items


Direction Of Moving Function Calculation
In all of the Moving Function calculation examples, it is assumed that the
Moving Function calculation proceeds in a downward direction for each
Computed Item column. That is to say, the Moving Function calculation
window progresses downward, one row at a time, for each subsequent row of
displayed fact data. This downward movement is evident in the Table Section
data (which has been used in the examples shown above) since, in a Table
Section, each new instance of fact data can only be represented as a new row.
Other sections, however, such as Pivot and Chart allow the possibility for fact
data to be represented in more than one directional axis. In the case of Pivot
and Chart Sections, therefore, you can specify the direction of Moving
Function calculation. To illustrate the effect of changing the direction of
Moving Function calculation, consider the previously shown Table data:

Tab le 8 - 32 Direction of Moving Function Calculation

Month Sales

Jan 10

Feb 15

Mar 17

Apr 20

May 22

Jun 20

Jul 25

Aug 27

Sep 30

Oct 35

Nov 37

Dec 40

Trend Functions 8-67


Adding a new Computed Item column to display a 3-Month Moving
Difference would yield:

Tab le 8 - 33 Adding a New Computed Item Column

Month Sales 3-Month Moving Difference

Jan 10

Feb 15

Mar 17 7

Apr 20 5

May 22 5

Jun 20 0

Jul 25 3

Aug 27 7

Sep 30 5

Oct 35 5

Nov 37 7

Consider, however, if the "Month" and "Sales" data were oriented as follows (as
could be done in a Pivot Section):

Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Sales 10 15 17 20 22 20 25 27 30 35 37 40

8-68 Working with Computed Items


If a new Computed Item were added, to represent a 3-Month Moving
Difference, and the Moving Function calculation direction was still down each
column, this would result in null values being represented for the Computed
Item (as below) since there would only be one fact value per column (this
would not be enough fact occurrences to satisfy a 3-term Moving Difference).

Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Sales 10 15 17 20 22 20 25 27 30 35 37 40

3-Month
Moving
Difference

If, instead, the Moving Function calculation direction were specified to be


along each row (i.e. horizontally from right to left) the Moving Difference
Computed Item would yield the "expected" results since the source "Sales" Fact
data cells would be examined in their "correct" left-to-right sequence. That is,
the following display would result:

Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Sales 10 15 17 20 22 20 25 27 30 35 37 40

3-Month 7 5 5 0 3 7 5 5 7 5
Moving
Difference

Trend Functions 8-69


8-70 Working with Computed Items
9 Applying Sorts

This chapter discusses features that enable you to sort data in various
Hyperion Intelligence Client sections, including sort lines, single and nested
sorts in the Query and Results section, and complex sorting by values and by
labels in the Hyperion Intelligence Client report sections.

In This Chapter Sorting Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-2


Simple Sorts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-2
Sort Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-3
Complex Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-4
Sorting Data
Sorting simplifies the process of data analysis. After data is sorted, the answers
to questions are often readily at your fingertips. Sorting is also very useful for
ranking data to reveal business trends and margins.

Unsorted Results Sorted Results

You can perform simple and complex sorts depending on your requirements.
You can sort individual data items or use the Sort line to sort items in reference
to associated data values. These complex sorts can be nested, so that the sorted
data reflects the hierarchical relationships between data items.

Simple Sorts
If you only want to sort a single Request item, report row, or column, you can
use the Sort buttons on the toolbar to quickly order the data.
If you apply simple sort conditions in the Query section, the database server
sorts the data while processing the query before it is retrieved to your desktop.
Or you can sort data on your desktop in Results or report sections. The data
associated with a selected item is sorted in ascending or descending order as
you wish.

To select items to sort:

1 Select the data item to sort.


In the Query section, select a topic item on the Request line. In other sections,
select a corresponding report element in the Content pane.

2 On the Standard toolbar, click the ascending or descending Sort icon.


The data is sorted in the Content pane.
If the Sort line is visible, the item appears on the Sort line. The item name is
followed by an up or down arrow to indicate the sort order.

9-2 Applying Sorts


Sort Lines
Hyperion Intelligence Client Sort lines have two functions:
■ To maintain a record of sort conditions that you have applied to the data
set.
■ To enable you to specify compound and nested sorts.

Sort lines take on a different appearance in each section depending on the data
presentation and the types of sorts available.
■ In the Query, Results, Table, and Report Designer sections, sort lines are
drag and drop command lines similar to Request and Limit lines.

■ In the Chart, Pivot, and OLAPQuery sections, sort lines are list driven and
include provisions for sorting by aggregate calculations, such as averages
and counts.

✰ Tip You can move, size, dock, or hide the Sort line. To toggle the Sort line, click the
Sort button on the Section title bar.

Sort Lines 9-3


Complex Sorting
In addition to performing simple sorts, you can use Hyperion Intelligence
Clients to perform complex sorting. Review the following sections for
information on:
■ Complex Sorting in the Query, Results, and Table Sections
■ Complex Sorting in Chart, Pivot, and OLAPQuery Reports

Complex Sorting in the Query, Results, and Table Sections

✏ Note The information discussed here also applies to sorting in the Report Designer section.

The appearance and functionality of the Sort line is nearly identical in the
Query, Results, and Table sections. In each section, the Sort line uses a drag-
and-drop interface similar to the Request and Limit lines.

Using this feature, you can drag items to the sort line and request them to be
sorted in sequence to yield nested sort results. When you sort more than one
data item at a time, the left to right order of data on the Sort line dictates the
sort order and creates a nested effect. Data is sorted in the order you specify.
The leftmost item on the Sort line is the primary sort. Items to the right are
sorted in progression, each within the categories of the preceding item.
For example, if the first item is State, the second item City, and the third item
Store, States are sorted alphabetically by name. Within each state, cities are
sorted by name. Within each city, stores are sorted.
Nested effects are based solely on the placement of items on the Sort line. If the
item order on the Request line differs from the order in the Content pane, the
sort is still nested, but the visual impact is not as pronounced.

9-4 Applying Sorts


The key difference between the sections lies in where the sorting is performed:
■ In the Query section, the database server sorts items placed on the Sort line
as the query is processed. The data is returned already presorted to the
Results section.
■ In the Results and Table sections, items placed on the Sort line are sorted on
your desktop.

The bottom line effect is the same whether you apply sort conditions locally in
the Results or Table section or on the database server in the Query Section.
Depending on the situation and the needs of your business, one method or the
other may be preferable.

Complex Sorting in Chart, Pivot, and OLAPQuery Reports

✏ Note The information discussed here does not apply to sorting in the Report Designer section.

In Chart, Pivot, and OLAPQuery reports, you generally want to override the
default sort order and sort dimensional data with reference to other data. In
these sections, you can use the Sort line to impose a sort condition for each
dimensional data item in your report, and to nest your sort conditions at each
hierarchical level of the report from the outside in.
The Sort line includes three drop-down menus used to define the sort
conditions. The contents of the menus vary depending on the data items in
query.

Sort Items Functions


Reference Items

✰ Tip Data in Chart, Pivot, and OLAPQuery sections is sorted alphabetically by


default. You can use the sort buttons on the Standard toolbar to perform
simple sorts on selected report items and reverse the sort order. (See “Simple
Sorts” on page 9-2 for more information.)

Complex Sorting 9-5


Sort Items
The Sort drop-down menu lists the data items that can be sorted. Each
dimensional item included in the report (name and date) is listed in this menu.

Reference Items
The By drop-down menu lists items used as a basis for a complex sort
condition (for example, sorting Cities by the revenue generated in each). The
drop-down menu includes each numerical data item in the report as well as the
keyword entry "label." These choices provide two ways to sort the dimensional
item specified in the Sort menu:
■ Sorting by Label – By default, Hyperion Intelligence Clients sort
dimensional data items alphabetically by name when you create your report
– this is equivalent to sorting by labels. When selected, label indicates that
the item chosen from the Sort list is sorted by label or name, rather than by
reference to corresponding numeric data values in the report.
■ Sorting by Value – Sorting by a numeric data item orders each value of the
target item chosen from the Sort list by its corresponding numeric value in
the Value list.
Sorting by values produces an entirely different sort order. For example,
your chart may list each state in which your company has made sales
revenue and the total cost-of-sales for each. The states are initially listed in
alphabetical order. When you sort by cost-of-goods, the states are ranked in
order by each corresponding cost-of-sales figure.

9-6 Applying Sorts


Functions
The Using drop-down menu contains aggregate statistical functions that are
available when you sort by values. The functions generally duplicate the data
functions available in the active section.
The default function for sorting is Sum. When you sort by values, Hyperion
Intelligence Clients initially sort dimensional data by the corresponding
numeric values of the referenced item (for example, sorting states by the sum
total of the cost of goods sold in each state).

To specify a sort using the features of the Sort line:

1 If the Sort line is not already displayed, click Sort on the Section title bar.
2 Select an item to sort from the Sort drop-down list.
3 Select a value from the By drop-down list as a sort reference, or select Label to sort the
item alphabetically.

4 If desired, select an aggregate function from the Using drop-down list when sorting by
values.
The Using drop-down menu is not available when you sort by labels.

5 If desired, click the or Sort button on the Sort line.


The Sort line stores a sort condition for each dimensional item included in the
report.

Complex Sorting 9-7


9-8 Applying Sorts
Glossary

Adaptive Report Level The level of privilege that a automatic distributed refresh The process of
user can interact with a Hyperion Intelligence Client synchronizing locally saved documents and the
document. The adaptive report levels are View Only; version in the repository.
View and Process; Analyze; Analyze and Process;
auto-join An administrator can configure a
Query and Analyze; and Data Model, Query, and
connection file to cause joins to occur automatically
Analyze. When a document is published, groups of
for users using the Auto-Join feature. Auto-Join can
users are granted access to it with specific Adaptive
be configured one of three ways: Best Guess,
Report level privileges.
Custom, and Server-Defined.
ADR (also called as sync) See automatic distributed
auto-process The automatic processing of a query.
refresh.
axes Straight lines on a chart used for measurement
aggregate limit Limits placed on aggregated request
and categorization. Typically the X-axis and the Z-
line items or aggregated meta topic items.
axis are both used for categories while the Y-axis is
API Application Programmer Interface used for quantification (for example, Facts/Values).
Pie charts only use the X-axis for its categories and
API Socket (DaAPISock) The API (such as ODBC,
the Y-axis for its Facts/Values.
SQL Net, and so on) or protocol level information
used when connecting to a database that has been catalog A collection of database tables and local
abstracted in an API Socket. Hyperion has one API results. This is the information the user can use in a
socket for each supported API/communication data model or query.
protocols.
Catalog pane Shows a list of elements available to
application server A framework for developing the active section. For example, if Query is the active
applications that provides fundamental capabilities section, the Catalog pane displays a list of database
required by many applications such as session and tables. If Pivot is the active section, the Catalog pane
resource management, and security. displays a list of results columns. If Dashboard is the
active section, the Catalog pane displays a list of
auditing The monitoring of Hyperion Intelligence
embeddable sections, graphic tools, and control
Client Repository objects to determine usage
tools.
patterns.
categories Groupings by which the data is organized Controls folder Contains prebuilt items that can be
(for example, month). added to your Dashboard section, such as list boxes,
radio buttons, and command buttons. You can then
chart A graphical representation of data. Users
attach scripts to the controls embedded in the
create charts to convert raw data into eloquent,
Dashboard section to execute actions.
visual information.
correlated subqueries Subqueries that are evaluated
Chart section With a varied selection of chart types,
once for every row in the parent query. A correlated
and a complete arsenal of OLAP tools like group and
subquery is created by joining a topic item in the
drill-down, the Chart section is built to support
subquery with one of the topic items in the parent
simultaneous graphic reporting and ad-hoc analysis.
query.
client/server A network architecture in which each
cross join Creates a query where none of the tables
computer or process on the network is either a client
is joined. Every row in one table is joined to every
(requests information) or a server (delivers
row in another table.
requested information).
cube The data in OLAP databases (MS Plato,
clustered bar charts Occurs when the categories are
Essbase) is stored in 3-dimensional cubes, which is
viewed side by side within a given category, useful for
different from standard relational databases (2-
side by side category analysis. Clustering is only done
dimensional). Cubes are made up of dimensions and
with vertical bar charts.
measures. A cube may have dozens of dimensions.
Common Facilities One of the four categories of
DaConnect (aka DaConn) An Hyperion
objects defined by the Object Management
Intelligence Clients’s main connectivity class.
Architecture (OMA). The Common Facilities is a
Contains all the connectivity specific information.
collection of services that many applications may
Instance of a connection class is made whenever
share, but the services are not as fundamental as
Hyperion Intelligence Clients needs to connect to
Object Services. For example, Print Facility and
any database.
Mobile Agent Facility.
Daemon-mode BQ The Hyperion client/server
computed item A virtual column (as opposed to a
executable. It is spawned in daemon mode by node
column that is physically stored in the database or
JREs. The role of the daemon-mode BQ is simply to
cube) that can be calculated by the database during a
execute database queries and return results.
query, or by an Hyperion Intelligence Client in the
Results section. They are calculations of new data DaSession When a client needs to perform an
based on functions, data items, and operators operation such as select, insert, update on a database,
provided in the dialog box. They can be included in a session is created. The life time of a session
reports or reused to calculate other data. synchronizes with the operation’s duration. Sessions
are created when a client needs to perform
connection file See Open Catalog Extension files.
operations on the database and are destroyed when
the operation is considered complete.

2 Glossary
Dashboard Allows you to build and deploy analytic Data models can be distributed through the
applications. Analytical applications focus on Hyperion repository and used by end users to create
delivering significant prepackaged business content their own queries.
that is encapsulated within an application. With
database function A predefined formula in a
Hyperion Intelligence Clients, customers and
database.
independent software vendors can leverage their
knowledge of industry specific best practices and database server A computer that stores database
assemble their own analytical applications for management system software (DBMS, for example,
deployment to end users using the web. Combining Oracle, Sybase, Essbase), and a database shared by a
embeddable Report sections with enhanced network of computer clients. Most databases are
Dashboard controls into a visual workspace, an used in a client/server environment.
application designer can quickly create a variety of By storing data on a single, powerful machine on a
robust applications. network, the data is centralized and accessible to
Dashboard Home A button that returns you to the many users. The server ensures that the data is
Dashboard section designated as the Dashboard maintained correctly and serves as a traffic cop to
Home section. If you have only one Dashboard regulate client machine access to the data. The
section, Dashboard Home returns to that section. If server’s computing power is also useful in
you have several Dashboard sections, the default computing and filtering data from the database
Dashboard Home is the top Dashboard section in before it reaches your workstation. For small or
the Catalog pane. In Design mode you can specify localized databases, your own computer can act as
another Dashboard section to be the Dashboard both database server and client.
Home section. datatype The type of data stored in a specific
data function Computes aggregate values, including column in a database. For example, data can be
averages, maximums, counts and other statistics, stored as a numeric datatype.
which summarize groupings of data. You can use date group A feature in the Results and Table
data functions to aggregate and compute data from sections that separates a date into Year, Quarter and
the server before it reaches the Results section, or Month columns. The display format for the new
compute different statistics for aggregated totals and Month column is automatically set to mmm so that
items in the other analysis sections. the month names sort chronologically (as opposed
data model A representation of a subset of actual to alphabetically) in the report sections. Quarters are
database tables that acts as a menu for the query- based on the calendar year, beginning January 1.
builder. Data models are the sources for building the Designer A client/server-based tool that delivers
Request, Limit, and Sort lines in a query section. You query, analysis, and reporting capabilities and
create a data model by dragging database tables from centralized solution administration for developers,
the Catalog pane Table Catalog into the Content database administrators, and system administrators.
pane. The data model displays database tables
graphically as topics when they are in the Content
pane.

Glossary 3
design guide Design guides are similar to grids in dimension tab In the Pivot section, the tab that
that objects automatically snap to line up with the enables you to pivot data between rows and
design guides. Design guides are placed at user- columns.
specified locations in the work area. There are
dimension table Consists of numerous attributes
horizontal and vertical design guides. The design
about a specific business process. Each row in a
guides will draw as a blue line across the work area,
dimension table is unique.
with the ability to drag the guide to any new location.
drill anywhere Allows you to drill into and add
design mode A toggled environment used to build
items to pivot reports residing in the Results section,
and modify Dashboard sections. In Design mode,
without having to return to the Query section or
you build Dashboard sections with an array of
trying to locate the item in the Catalog pane. Drill
prebuilt control items and graphic items.
Anywhere items are broken out as new pivot label
Designers can switch out of design mode to test items.
Dashboard features and deploy them to end users.
drill to detail Allows you to retrieve items from a
Design mode is only available in Dashboard sections.
data model that are not in the Results section,
detail view Displays a topic as a database table. without having to rerun the original query. This
When you select Detail view, the database returns feature provides the ability to interactively query the
ten sample rows from the associated table. Each database and filter the data that is returned. Drill to
topic item displays as a database field. Detail view Detail sets a limit on the query based on the user’s
enables users to browse a sample of the raw data, selection and adds the returned value as a new pivot
which is useful when unfamiliar with the data model label item automatically.
or the underlying data. Users cannot view a meta
drilldown Allows you to progressively narrow your
topic in Detail view.
focus on a selected chart category. Very useful when
dimension In an OLAP database cube, categories of you have too many categories on a particular axis.
information are called dimensions. Examples of
embedded section A Hyperion Intelligence Client
dimensions may be Location, Products, Stores, and
section that is embedded in a Smart report or other
Time. In an Hyperion Intelligence Client, related,
Hyperion Intelligence Client section. All embedded
nonquantifiable items in a topic are also referred to
sections maintain live data content and formatting
as dimensions, such as Contact or Store Name.
from the original section. Reprocessing the query, or
dimension (legend dimension) The current axis modifying the original section automatically updates
categorization or grouping method. This can be set the embedded section display.
to the X, Y, or Z-axis for most chart types. For line
Explorer A client/server-based tool that delivers
and area charts it can only be set to the Y or Z-axis.
query, analysis, and reporting capabilities for power
For pie charts it is always set to the X-axis. When you
users who need to directly access data sources—or to
change the Legend Dimension the color is
explore the information organized in prebuilt data
distributed along the new axis you change to.
models stored in the repository.

4 Glossary
Expression Line Displays the JavaScript syntax for Filters can be made of members of one of the
each item displayed in a report. Use this line to build dimensions or selected by a measure. OLE DB for
equations in the Report section. For ease of use, it OLAP has other filter operator types (Top N, Top
can be undocked and resized. Sum, Top N %, Bottom N, Bottom N %, Bottom
Sum.) Essbase has its own operator types. In Essbase,
extranet An intranet that is partially accessible to
filters can be done on measures. In OLE DB for
authorized outsiders. Extranets are secured by user
OLAP, filters cannot be placed on measures.
names and passwords.
foreign key A database column or set of columns
fact table A table that stores business activity
included in the definition of a referential integrity
measures. Most fact tables are extremely large. Each
constraint.
row in a fact table contains numeric measures (fully
additive measures, nonadditive measures and/or fully additive measure Attributes in a table that can
semiadditive measures) and foreign keys to each have their values added together across any
dimension table. dimension.

facts The numeric values that are broken up in the grain The level of detail at which measures in a
body of the Pivot section. To add facts to the Pivot, table are recorded is referred to as the grain.
put Results columns from the Catalog pane into the
grouping columns This feature, in the Results and
Outliner’s Facts pane. Facts are the numeric values in
Table sections, creates a new column in a dataset by
a relational database that are available to analyze. In
grouping data from an already existing column.
an OLAP Query, they are called measures.
Grouping columns consolidate nonnumeric data
facts/values The data that is being visually values into more general group values and map the
represented, usually a numeric amount (for example, group values to a new column in the dataset.
$15,000)
hardwire mode In hardwire mode whenever the
file server A computer and storage device dedicated OLAP Query is changed, the database is queried to
to storing files. fetch new cube data. In contrast, process mode is
manually controlled. You add or remove several
filters In the OLAPQuery section, filters enable you
items to the Outliner, and then press Process to
to define and apply limits to the query once Top or
query the database. When determining whether to
Side Labels have been added to the query. You set a
use hardwire mode or process mode, consider the
filter by applying comparison operators on the
size of the cube in which you are working.
values for a specific member. Additional server-
specific functions are available based on the selected hierarchy In an OLAP database cube, a hierarchy
OLAP database cube. Filters are built to include or organizes a dimension’s levels and corresponding
exclude data according to specific criteria. Filters can members into parent and child relationships. For the
be set on any level in a dimension. However, they levels in a Location dimension, the hierarchy would
must be one of the labels in the Outliner. have Country as the parent of the child City and City
as the parent of the child Address.

Glossary 5
home Abstract base interface that some Lightning indexes Indexes are created in a database to increase
interfaces derive from. Provides basic methods to the performance of data retrieval. Just as book
manipulate and create Bean objects. indexes help to locate specific information faster,
database indexes provide a faster access path to table
HTML See Hypertext Markup Language.
data. Indexes are created on one or more columns of
Hyperion Intelligence Client Repository A specific a table.
group of tables created using Hyperion Intelligence
integrity constraints Constraints on tables that
Clients on a database server and used to store
guarantee the data adheres to certain business rules.
Hyperion Intelligence Client document objects,
Integrity constraints are defined with a table and are
including data models and standard queries.
stored as part of the table definition, central to the
Administrators can use the Designer client to upload
database data dictionary, so that all database
these objects to the repository for end-users to
applications adhere to the same set of rules.
download, providing a template for query and report
building. Documents built from repository objects internal function Built-in formulas, defined in the
can be version-controlled or audited through a link Hyperion application.
to the repository.
internet A global network connecting millions of
Hypertext Markup Language A programming computers. Unlike online services, which are
language used to create World Wide Web pages, with centrally controlled, the Internet is decentralized by
hyperlinks and tags that explain how to format the design. Each Internet computer, called a host, is
information on the screen. independent.

icon view Shrinks a selected topic to an icon in the interval Equal subdivisions within a given scale. The
Content pane. The topic remains part of the data interval can be set manually or to best fit.
model, but is deactivated and can not be accessed by
intranet A network belonging to an organization,
the query. Associated items are removed from the
usually a corporation, accessible only by
Request line when a topic is made into an icon, and
organization members, employees or other
the topic is not recognized as joined to other topics.
authorization users. Intranet web sites look and act
Icon view is helpful in restricting the use of server
just like any other web site, but the firewall
time when a topic is infrequently used, and does not
surrounding an intranet fends off unauthorized
have to be active at all times.
access.
imported files Excel, Text, or CSV files imported
ISAPI This is a shared library that implements
into Hyperion Intelligence Clients. The information
HTTP using Microsoft’s web server plug-in API
in the file goes into a table or a results object.
(ISAPI). Thus it is appropriate for customers with
Imported results can be used in other queries (like
Microsoft web servers. Functionally it is equivalent
regular results) for local join purposes.
to our CGI. Its advantage is that it is far more
scalable than a CGI executable.

6 Glossary
item A visual representation of a database column join path A predetermined join configuration for a
that is a member of a topic in the Query section. data model. Administrators create join paths for
Items are used to create queries and reports. For users to select the type of data model needed in a
example, the Customer Topic may have items user-friendly prompt upon processing a query. Join
including Name, Address, and Phone. You select paths ensure that the correct tables in a complex data
items from data model topics to build the Request, model are used in a query.
Limit, and Sort lines in the query section.
JRE (Java Runtime Environment) This is the Java
JavaScript The scripting language for Hyperion interpreter used to run the Java Server.
Intelligence Clients products. Hyperion Intelligence
legend box An informative box containing color-
Clients 8.0 include the Netscape JavaScript
keyed labels to identify the data categories of a given
interpreter (version 1.4). JavaScript and Hyperion’s
dimension.
Object Model allow application developers to use the
full functionality of the industry-standard scripting layer Stacks a single object in relative position
language to control Hyperion Intelligence Clients (sends back and front, or brings forward or
applications. backward) to other objects.

job repository A set of database tables that store a level Similar types of members in an OLAP database
queue of scheduled jobs. There can be multiple job cube are grouped at the same level. For example,
repositories in an organization. using the members listed in a Location dimension,
France, the USA, and Japan belong to the Country
join A relational database concept indicating a link
level. Paris, Palo Alto, and Tokyo belong to the City
between two topics. A join typically occurs between
level. 35 Main Street belongs to the Address level.
identical or similar items within different topics.
Joins allow row records in different tables to be limit Constraints placed on topic items or request
linked on the basis of shared information in a line items to limit them to a certain set of values.
column field. For example, a row record in the Limits appear on the limit line in Hyperion
Customer table is joined to a related record in the Intelligence Clients. For example, although the
Orders table when the Customer ID value for the database may display worldwide sales figures for all
record is the same in each table. This allows the order stores, you may only want to see sales for stores in
record to be linked with the record of the customer Germany. Limits make data sets retrieved through a
who placed the order. If you request items from query more efficient and manageable by filtering out
unjoined topics, the database server has no way to unnecessary information.
correlate the information between the two tables and limit joins Joins between a database table and a
leads to awkward datasets and run-on queries. local results object. The topic item being joined is
Hyperion Intelligence Clients display joins visually limited by the values of the column being joined in
in the workspace between topics to indicate joins of the local results object. A limit join is one of the
between database tables. Users can also create new options that you can choose in a Modify Join
joins that are not already specified in the database. operation between a topic item and a local results
item.

Glossary 7
linked data model Documents that are linked to a MDX (Multi Dimensional eXpression) The
master copy in a repository. When changes are made language used to give instructions to OLE DB for
to the master, users are automatically updated with OLAP- compliant databases (MS Plato), as SQL is
the changes when they connect their duplicate copy the language used for relational databases. When you
to the database. build the OLAPQuery section’s Outliner, Hyperion
Intelligence Clients translate your requests into
local computed meta topic items Computed item
MDX instructions. When you process the query,
definitions evaluated by the Hyperion Intelligence
MDX is sent to the database server. The server
Client results engine. Local computed items are
returns a collection of records to your desktop that
created to be meta topic items. They can be dragged
answer your query.
to the request line like regular topic items. The only
difference is that the results engine evaluates these measures Numeric values in an OLAP database
items as opposed to the database. cube that are available for analysis. Measures may be
margin, cost of goods sold, unit sales, budget
local joins A join between a local results object and
amount, and so on. See facts.
a database table or another local results object.
Hyperion Intelligence Clients perform the actual join members In an OLAP database cube, members are
in this case. the content values for a dimension. In the location
dimension, they could be Palo Alto, Paris, Tokyo, 35
local limits Limits placed on the local dataset in the
Main Street, USA, France, Japan, and so on. These
Results section, as opposed to the Query section.
are all member values for the location dimension.
Limits in the Query section restrict the data retrieved
by the query to the desktop. Local limits screen data metatopic A customized, virtual topic, built from
from view in the Results set; although it is still there, regular topics that reflects the exact topic and item
you cannot see the data that has been excluded or use structure of database tables. Metatopics allow items
it in reports unless the limit is removed. from disparate topics to be consolidated in a single
topic, simplifying its appearance and reducing its
local results Results of other queries within the
conceptual resemblance to the underlying database
same data model. These results can be dragged into
structure. You can choose to view a data model in
the data model to be used in local joins. Local results
terms of its original topics, metatopics, or a
are displayed in the catalog when requested.
combination of both.
locked data model Data Models that are locked
metadata Data about data. Stored in database tables,
cannot be modified by a user.
metadata describes the history, content, and
master data model A Data Model that exists function of database tables, columns and joins in
independently and has multiple queries that understandable business terms. Metadata can
reference it as a source. When using a master data overcome the awkward names or ambiguous
model, the text “Locked Data Model” appears in the abbreviations often used in a database. For example,
Content pane of the Query section. This means that in a table named CUST_OLD, metadata may use a
the data model is linked to the master data model descriptive business name, such as Inactive
displayed in the Data Model section, which may be Customers.
hidden by an administrator.

8 Glossary
mime type A browser mapping of a file type to nesting Nesting means that one set of data values
either a helper application or a plug-in. When a appears as a sub-division within each of the data
browser attempts to open a file of a particular mime values at a higher level of data. For example in the
type, it either loads the associated plug-in or Pivot section, if you place more than one data label
launches the associated helper application. A file’s in an Outliner panel, the Pivot report displays the
mime type is determined either by a) the file second set of labels inside each of the labels of the
extension or b) the HTTP header. Plug-ins tell first data items. The second labels are nested within
browsers what mime types they support and what the first. This means they represent sub-divisions
file extensions correspond to that mime type. with another "higher level" category.

Hyperion web clients support the following mime null value A null value is absent of data. Null values
types: application/x-brioquery mime type (for .bqy are not equal to zero.
files). This is the default mime type our web clients
OCE See Open Catalog Extension files.
support and are ordinary Hyperion files.
application/x-brioquerydata (for .bqd files). These OCE Wizard Wizard or set of screens used to create
are data files in text or Excel format, whose extension a new OCE or modify an existing OCE.
has been changed to .bqd. When a Hyperion web OLAP database A database that stores its
client is launched to open a BQD file, it imports the information in cubes. Cubes contain dimensions and
data and executes any Hyperion Script or JavaScript measures. A cube can have dozens of dimensions.
the file contains. Cubes are built to hold aggregated data, which
morphing Mechanism by which Hyperion web anticipate how users think about business models.
clients provide document security. See Adaptive Cubes deliver this information efficiently and
Report Level. quickly.

multidimensional database A database that stores OLAPQuery section Analyzes and interacts with
data in a format often referred to as a cube, such data stored in an OLAP cube. When you use
Essbase, MS OLAP, and so on. See also Relational Hyperion Intelligence Clients to connect to an OLAP
database and OLAP database. cube, the document immediately opens an
OLAPQuery section. The OLAPQuery section
nonadditive measure Attributes in a table that
displays the structure of the cube as a hierarchical
cannot be added across any dimension, such as a
tree in the Catalog pane. Queries are built by
percentage value (for example, margin rate).
dragging measures and dimension levels or members
NSAPI A shared library that implements HTTP directly into the Outliner panes.
using Netscape’s web server plug-in API (NSAPI). It
is equivalent to our CGI. Its advantage is that it is far
more scalable than a CGI executable.

Glossary 9
OOA Object Oriented Analysis. pivot table Analytical tools that resemble
spreadsheets or crosstabular reports. A pivot table
OOA&D Object-Oriented Analysis & Design.
overlays a dynamic datacube, which allows data to be
Open Catalog Extension files Encapsulate and store sliced and diced for ad-hoc, interactive, and
connection information used to connect Hyperion multidimensional analysis.
applications to a database. OCE files specify the
pivoting In the Pivot section, the ability to change a
database API (ODBC, SQL*Net, etc.), database
label from a top to a side (or a side to a top)
software, the network address of the database server,
orientation with a simple click and swing of the
and your database user name. Once created, a user
label’s Dimension tab.
can specify the OCE file and database password and
logon. An OCE file is required for a Hyperion plot area The area bounded by the X-, Y-, and
Intelligence Clients document to use a database. the Z-axis. For pie charts, it is the rectangular area
file extension is .oce. immediately surrounding the pie.

Open Client DBLib API to connect to Sybase, predefined drill paths Enables a user to drill
Redbrick, SQL Server, and so on. directly to the next level of detail, as defined in the
data model.
Open Metadata Interpreter The Tables, Columns,
Joins, Lookups and Remarks tabs available in the primary key A database column or set of columns
connection wizard when you edit a custom metadata included in the table definition of the PRIMARY
source. These tabs allow Hyperion administrators to KEY constraint. Primary key values uniquely identify
specify a customer source of metadata that can be the rows in a table. Only one primary key is defined
accessed through SQL statements, and provided to per table.
end users with data models.
query A set of database instructions to return an
Outliners Drag-and-drop command lines used in answer set to a specific question. Each row returned
the Pivot, Chart, OLAPQuery and Report sections. in the Results section of a document is an answer to
Each Outliner pane corresponds to a specific layout the question posed in the Query section.
element of the report. When an item is dragged to an
query computed items Item definitions created by
Outliner pane, the item assumes the layout attributes
the user. This can include other request line items or
of the respective report element. Data appears
topic items and or database functions. The definition
simultaneously in the Content pane with the
is sent to the database and the database evaluates
appropriate formatting.
them.
pivot dimension A row or column of labels that
Query Log Log of all SQL statements sent to the
corresponds to an item in the Catalog pane.
database (also referred to as SQL Log).
Pivot section The section used to create crosstab
reports and analyze data.

10 Glossary
relational database A database that stores its Request Line Holds the list of items requested from
information in tables related or joined to each other the database server and that will appear in the user’s
by common pieces of information called keys. Tables results.
are subdivided into column fields that contain
Request Line items Columns listed in the request
related information. Column fields have parents and
line.
children. For example, the Customer table may have
columns including Name, Address, and ID number. Results section A section in an Hyperion
Each table contains row records that describe Intelligence Client document that contains the
information about a singular entity, object, or event, dataset derived from a query. Data is massaged in the
such as a person, product, or transaction. Row Results section for use in the report sections.
records are segmented by column fields. Rows run mode A toggled environment used to test
contain the data that you retrieve from the database. Dashboard sections. It simulates a user’s view of the
Database tables are linked by Joins. (See also join) section. In Run mode, you can not add any features,
report group In the Report section, embedded but you can use features that are part of the deployed
reports and tables are grouped by other data items. Dashboard sections.
Items placed in the Groups Outliner break scalar function Scalar functions (in contrast to data
information into these dimensional groupings. For functions) do not aggregate data or compute
example, your table may include the name, contact aggregate statistics. Instead, scalar functions
information, and sales for each of your distributors. compute and substitute a new data value for each
This table gains in clarity when broken into value associated with a data item.
groupings that classify the stores by geographical
region, year, or both. scale The range of values that allow you to gauge
how much each category represents. This range can
Report section A dynamic, analytical report writer, be either at equal intervals or at logarithmic interval.
that provides users with complex report layouts and The scale can be set manually or to best fit.
easy to use report building tools. Pivot tables and
charts can be embedded in a report. The report script A series of instructions for a computer.
structure is divided into group headers and body Scripts are activated when an event occurs, such as
areas, with each body area containing a table of data. clicking a button or selecting an item from a drop
Tables are created with dimension columns and fact down list. Hyperion Intelligence Clients’s scripting
columns. These tables are elastic structures. Multiple language is JavaScript.
tables can be ported into each band, each originating Section pane Lists all the sections that are available
from the same or different result sets. in the current Hyperion Intelligence Client
repository Central location used to store data document.
models, queries and queries with reports. Repository Section Title Bar A navigational aid under the
is usually a database chosen by the user. toolbars that provides a means of moving between
sections and toggling section-specific tools and
gadgets, such as the outliner.

Glossary 11
semiadditive measure Attributes in a table that can stacked charts A chart where the categories are
be summarized across some dimensions, but not all. viewed on top of one another for visual comparison.
This type of chart is useful for subcategorizing within
server computed meta topic items Metatopic item
the current category. Stacking can be used from the
definitions created by the user. These items can use
Y- and Z-axis in all chart types except pie and line.
any of the database functions available, or any of the
When stacking charts the Z-axis is used as the
other topic items in the data model. These items are
Fact/Values axis.
evaluated by the database.
stored procedure Precoded queries in languages
Session Socket (DaSessionSocket) Abstracts
other than SQL. This is a feature available in some
session information specific to each database or API.
database software. Hyperion Intelligence Clients can
simple join Retrieves rows to create a query where run stored procedures and retrieve the Results.
the values in joined columns match.
Structure View A view that displays a topic as a list
slicer An axis that filters the data in an OLAPQuery. of component items allowing users to see and
Only individual members can be used in a slicer. A quickly select individual data items. Structure view is
slicer can be thought of as a third axis in a OLAP the default view setting.
Query. The other axis are the Side Labels and the
Structured Query Language The language used to
Top Labels. Every dimension folder contains a
give instructions to relational databases. When you
members subfolder named “Values for…” that
build the query section’s Request, Limit, and Sort
dimension. This subfolder contains the members
lines, Hyperion Intelligence Clients translate your
that are eligible for the slicer.
requests into SQL instructions. When you process
snapshot A a local (readonly) copy of table data the query, the SQL instructions are sent to the
that originates from one or more remote master database server. The server returns a collection of
tables. records to your desktop that answers your query.
spring A tool that allows you to maintain relative This reply is displayed as the Results section. You can
vertical spacing between dynamic objects. That is, look at the SQL generated by a query in the Query
you can “spring” one object to another so that if the Log, or code a query directly in SQL using the
first object is moved, increased, or diminished, the Custom SQL window.
second object moves in the same flow. subquery A query embedded within another query.
sort Conditions placed on request line items to sort surface values A setting in the Pivot section to base
the results in ascending or descending order. These aggregate calculations on the values in the report,
are displayed in the sort line in an Hyperion rather than the values in the Results section.
Intelligence Client.
synonym An alias for a database table or view. It is a
SQL See Structured Query Language. direct reference to a table view.
SQL Net Oracle’s native API to connect to an table The basic unit of data storage in a database.
Oracle database. Database tables hold all of the user-accessible data.
Table data is stored in rows and columns.

12 Glossary
Table catalog Displays tables, views, and synonyms view A custom-tailored presentation of the data in
to which users have access. Users drag tables from one or more database tables. Views do not actually
the Table catalog to the Content pane to create data contain or store data; rather, they derive their data
models in the Query section. from the tables on which they are based, referred to
as the base tables of the views.
Table section Used to create tabular-style reports. It
is identical in functionality to the Results section, web clients The web-enabled counterparts of our
including grain level (table reports are not client/server applications (Designer and Explorer).
aggregated). Other reports can stem from a Table
weighted averages Weighted averages can also be
section.
used to apply different levels of importance to a
top and side labels In the Pivot section, labels are given item. To calculate a weight you take the
the column and row headings on the top and sides of expected amount divided by the actual amount.
the pivot. These define categories by which the
World Wide Web (WWW) A system of Internet
numeric values are organized.
servers that support specially formatted documents.
topic A a visual representation of a database table in The documents are formatted in a language called
the Content pane. Topics are part of data models HTML (HyperText Markup Language) that supports
displayed in the Query section and can contain one links to other documents, as well as graphics, audio,
or more items. and video files.

topic items Individual items in a topic or zero administration Installs Hyperion Intelligence
metatopic. web applications (web client viewer, web client
dynamic viewer, and web client analyzer)
topics Visual representation of tables in the
automatically without the help of an administrator
database, related by joins that link certain items in
when a user publishes a document.
each topic. Each topic title bar displays the topic’s
name. The topic shows a list of items, one for each zoom Sets the magnification of a report. The report
column in the database table. can be magnified to fit the whole page, page width or
a percentage of magnification based on 100%.
underlying values Another name for Results values.
When Use Surface Values is disabled in a Pivot
section, aggregate calculations are based on values in
the Results section.

Union/Intersection/Minus Queries Queries


created to perform set operations such as Union,
Intersection, and Minus. These queries are created
by the Append Query option.

variable limits Limits that prompt users to enter or


select limit values before the queries are processed on
the database.

Glossary 13
14 Glossary
Index

Symbols Add Request Item(s) command, 4-32


Add Side Label command, 6-40
(), 7-3
Add Sort(s) command, 4-32
.bqtools.ini, 3-63
Add Top Label command, 6-40
.bqy, 3-38
adding
.css, 3-31
computed items, 8-8
.csv, 3-18, 3-30
footers, 3-51
.gif, 3-31
headers, 3-51
.htm, 3-30 – 3-31
sections, 3-49
.jpg, 3-30 – 3-31
.sql, 3-34
AddMonths function, 8-14
.txt, 3-18, 3-30 Administer Repository command, 3-64
.wks, 3-30 aggregation, 1-13, 4-23
analyzing data based on day of week data, 8-26
.xls, 3-18, 3-30
<, 7-8 AND, 7-3
<=, 7-8 Append Query command, 4-32
arithmetic operators, 8-10
<>, 7-8
=, 7-8 Ascii function, 8-18
>, 7-8
Atn function, 8-15
>=, 7-8 audience for this guide, 2-xv
AutoAdd Columns command, 5-14
Automatic data type, 8-4
A automatically adding columns (Results section), 5-9
Abs function, 8-15 automatically processing OLAP queries, 6-23
Add Computed Item command, 4-32, 5-14 Auto-Size Width command, 3-43
Add Date Group command, 5-14 Average Numeric functions, 8-28
Add Fact/Measure command, 6-40 Avg function, 8-16, 8-31
Add Grouping Column command, 5-14 AvgNonNull function, 8-16
Add Limit(s) command, 4-32
B Query menu, 4-32
Results menu, 5-14
BEGINS WITH, 7-9
Tools menu, 3-64
BETWEEN, 7-9
View menu, 3-41
Border and Background command, 3-44
complex sorting
bqtbls5.ini, 4-22
in OLAPQuery section, 9-5
bqtools.ini, 3-63
in Query, Results, and Table sections, 9-4
BQY files, 3-38
compressing documents, 3-13
Break Total command, 5-14
computed items
break totals, 5-6
adding, 8-8
browser restrictions and limitations, 3-33
compared to data functions, 8-7
Byte data type, 8-4
data types and specifications, 8-4
examples, 8-27
C in Intelligence Client sections, 8-3
cascading style sheets, 3-31 in OLAP queries, 6-17
Catalog pane, 3-8 in Query section, 8-3
Ceil function, 8-15 in Results and report sections, 8-4
charts computing new data, 8-2
See also Data Analysis and Reporting with Concat function, 8-18
Intelligence Clients. conditional scalar functions, 8-14
sorting, 2-16 Connection commands, 3-64
chr function, 8-16 connection files, 1-9
Clear command, 3-40 Connections Manager command, 3-64
client/server-based tools, 1-3 Console Window command, 3-41
clipboard, using, 3-30 consulting services, 2-xix
ColMax function, 8-16, 8-33 CONTAINS, 7-9
ColMin function, 8-16, 8-34 Content pane, 3-9
color, adding, 2-13 contents, document, 1-8
Column command, 3-43 Copy command, 3-40
Column Titles command, 3-43 correlated subqueries, 4-11
columns, 2-8 – 5-10 Cos function, 8-15
comma-delimited files, 3-18, 3-30 Cosh function, 8-15
Command lines, 3-6 Count function, 8-15 – 8-16, 8-35
commands CountDistinct function, 8-16, 8-36
Edit menu, 3-40 CountNonNull function, 8-17, 8-38
File menu, 3-39 CountNull function, 8-17, 8-37
Format menu, 3-43 creating documents, 3-11, 3-38
formatting, 5-10 CSS files, 3-31
OLAP menu, 6-40 CSum (Cumulative Sum) function, 8-19

2 Index
CSV files, 3-18, 3-30 database
Cume function definition, 1-7
definition, 8-17 displaying remarks, 4-23
example, 8-39 viewing tables, 2-5
Cumulative Sum function , 8-19 Date command, 3-55
Current_Timestamp function , 8-22 Date data type, 8-4
custom menu items, 3-62 date handling, 3-59
Custom SQL command, 3-42 date scalar functions, 8-14
custom totals, inserting, 5-5 dates, breakout columns, 5-9
custom values, 7-7 day of week, returning, 8-25
Customize command, 3-64 DayOfMonth function, 8-14
Customize Limit command, 4-32 Decode function, 8-14
customizing limit options, 7-15 default formats, 3-54
Cut command, 3-40 Delete Section command, 3-40
deleting sections, 3-53
D dimensions, definition, 5-3
display options
data
Essbase, 6-7
calculating, 2-9
Document Scripts command, 3-39
charting, 2-14
document sections. See sections.
exporting, 3-30
documents
hiding, 2-13
compressing, 3-13
importing, 3-18
contents of, 1-8
limiting, 2-8
conventions used, 2-xviii
pivoting, 2-10
creating, 3-11
pre-aggregating, 4-23
definition, 3-11
refining in OLAPQuery, 6-14
exporting as Web pages, 3-32
data functions
feedback, 2-xx
compared to computed items, 8-7
mailing, 3-11
in OLAP queries, 6-35
opening, 3-11
in queries, 4-24
ordering print documents, 2-xviii
Data Functions command, 4-32, 6-41
password protecting, 3-13
data models, 1-10
saving, 3-12
data operators, OLE DB, 6-30
structure of, 2-xvi
data source connections, 1-9
documents, accessing
data sources, working with, 3-15
Hyperion Download Center, 2-xvii – 2-xviii
data types, 5-3
Hyperion Solutions Web site, 2-xvii
data types and specifications , 8-4
Information Map, 2-xvii
data, computing, 8-2
online help, 2-xvii

Index 3
Download To Results command, 6-40 Export commands, 3-39
drill down, 2-12, 6-15 export file formats, 3-30
Drill Down command, 6-40 Export Properties command, 3-44
drill up, 6-16
Drill Up command, 6-40 F
drilling through, multi-dimensional to relational,
6-36 facts, definition, 5-3
Duplicatable command, 3-40 features, of Intelligence Client tools, 1-3
Duplicate Section command, 3-40, 3-50 field definitions, number, 3-56
file formats, export, 3-30
file locations, 3-60
E
File menu commands, 3-39
editing footers, 3-51 files, exporting, 3-30
editing headers, 3-51 filters, applying in OLAPQuery, 6-25
education services, 2-xix Font command, 3-43
empty rows, suppressing, 6-9 fonts,default, 3-54
ENDS WITH, 7-9 footers, 3-51
EQUAL, 7-8 Format menu commands, 3-43
Essbase formats
applying measure limits, 6-26 default
attribute dimensions, 6-4 fonts, 3-54
command language, 1-11 number, 3-56
display options, 6-7 specifying, 3-54
operator types , 6-31 export file, 3-30
query language, 1-11 formatting commands, 5-10
substitution variables, 6-29 formatting day of week data, 8-25
Estimate Query Size command, 4-32 functions
Excel files, 3-18, 3-30 data, 6-35
Execution Window command, 3-41 in sorts, 9-7
Exit command, 3-39 MDX, 6-19
Exp function, 8-15
export
G
documents as Web pages, 3-31
HTML Wizard, 3-34 GIF files, 3-31
properites, 3-21 – 3-22 Go To Section command, 3-41
properties, 3-44 Grand Total command, 5-14
query logs, 3-35 grand totals, inserting, 5-5
script to text file, 3-36 GREATER OR EQUAL, 7-8
sections, 3-30 GREATER THAN, 7-8
SQL, 3-34 Grid Lines command, 3-44
with PasteLink, 3-30

4 Index
H starting, 2-2
tools, 1-4
headers, 3-51
workspace, 3-2
Hide Column command, 5-14
Intelligence Clients documents, definition, 1-8
Hide Request Item command, 3-41
IS NULL, 7-9
Hide Section command, 3-41
hiding Request items, 4-5
hiding sections, 3-49 J
HTM/HTML files, 3-30 JPEG/JPG files, 3-30 – 3-31
HTML Justify commands, 3-43
export wizard, 3-34
restrictions and limitations, 3-33
L
Hyperion Consulting Services, 2-xix
Hyperion Download Center label reference, in sorts, 9-6
accessing documents, 2-xviii LastDay function, 8-14
Hyperion Education Services, 2-xix Length function, 8-18
Hyperion product information, 2-xix LESS OR EQUAL, 7-8
Hyperion Solutions Web Site LESS THAN, 7-8
accessing documents, 2-xvii level rules, OLAPQuery member and, 6-13
Hyperion support, 2-xix LIKE, 7-9
Hyperion Technical Support, 2-xx Limit command, 5-14
limit dialog box, 7-5
limit line, 7-3
I
limit line functionality, 7-4
import limit line syntax, 7-4
data files, 3-18 limit options, customizing, 7-15
SQL, 3-19 limit, operators, 7-8
Import Data File commands, 3-39 limiting queries, 7-10
INI file, 3-63 limiting results, 7-11
Initcap function, 8-18 limits
Insert menu commands, 3-42 applying
inserting sections, 3-42 in OLAPQuery, 6-25
Instr function, 8-18 member selection, 6-25
Integer command, 3-56 measure
Integer data type, 8-4 applying, 6-26
Intelligence Client documents See documents variable, 6-27
Intelligence Client sections See sections. member variable, 6-27
Intelligence Clients variable, 6-26
analysis and reporting, 1-12 applying, 6-26
options, 3-45 in OLAP Query, 6-26
quitting, 3-38 slicer, 6-28

Index 5
local limits, Results section, 7-3 Query, 4-32
Local Results Results, 5-14
limitations, 4-28 Tools, 3-64
processing order, 4-29 menus and menu items, customizing, 3-62
using, 4-28 meta topics, 1-10
logical operators, 7-8 metadata, definition, 1-7
logon, auto, 3-58 methods for returning the day of the week, 8-25
Lotus files, 3-30 Min function, 8-16
Lower function, 8-18 MLingreg (Multiple Linear Regression) function,
Ltrim function, 8-18 8-21
Mod function, 8-16
Mode function, 8-17, 8-42
M
Modify Column command, 5-14
mailing documents, 3-11 Month (for Add Date Groups) command, 3-56
Main menu, 3-3 MonthsBetween function, 8-15
master data models, 1-10 moving between sections, 3-50
math functions, example, 8-27 Moving Difference Function, 8-59
math scalar functions, 8-15 Moving Difference function , 8-20
MAvg (Moving Average) function, 8-19 Moving Sum function , 8-21
MAvg (Moving Average) Function , 8-19 MovingDiff, 8-59
Max function, 8-16 MovingMax, 8-61
MaxL (Multidimensional Access Language), 1-11 MSum (Moving Sum) function, 8-21
MDiff (Moving Difference) function, 8-20 Multidimensional Access Language (MaxL), 1-11
MDSQL (Multidimensional Query Language), 1-11 multidimensional databases
MDX (Multidimensional Expression Language), components, 6-3
1-11
definition, 1-7
MDX functions, 6-19
querying, 6-1
measure limits, applying, 6-26
supported, 1-7
Measure of Central Tendency function,
Multidimensional Expression Language (MDX),
8-27
1-11
measure variable limits, 6-27
Multidimensional Query Language (MDSQL), 1-11
measures, 6-15
Multiple Linear Regression function, 8-21
Median function, 8-17, 8-41
member and level rules, OLAPQuery, 6-13
member, OLAP, 1-9 N
members, drilling down, 6-15 nested sorts, 9-4
menu commands Next function, 8-17
Edit, 3-40 NextDay function, 8-15
File, 3-39 NM function, 8-14
Format, 3-43 NOT (with operator), 7-9
OLAP, 6-40 NOT EQUAL, 7-8

6 Index
Null command, 3-56 options
Number command, 3-43 program, 3-57
number field definitions , 3-56 query, 4-31
number formats, default, 3-55 Options command, 3-64
numeric scalar functions, 8-16 OR, 7-3
Outliners, 3-6
O
OCE (Open Catalog Extension) P
definition, 1-9 Packed Real data type, 8-4
See also connection file. page breaks, inserting, 3-42
ODBC, stored procedures and, 4-29 Page Setup command, 3-36, 3-39
OLAP menu commands, 6-40 pages, setting up in reports, 2-21
OLAP queries password protect designer mode, 3-14
adding totals to, 6-35 password protect document, 3-13
automatically processing, 6-23 Paste command, 3-40
building, 6-5 Percentile function, 8-17, 8-29, 8-43
results of, 6-13 Pivot Options, 8-7
OLAP, member, 1-9 Power function, 8-16
OLAPQuery items, formatting, 6-36 prerequisites for using this guide, 2-xv
OLAPQuery member and level rules, 6-13 primary sort, 9-4
OLAPQuery section, 1-11 Print command, 3-37, 3-39
accessing offline, 6-24 Print Preview command, 3-37, 3-39
data functions, 6-35 Prior function, 8-17
diagram, 6-2 process
functions, 6-19 in OLAPQuery, 6-22
showing as a chart, 6-36 in Query, 4-6
working offline, 6-24 Process Query command, 3-64
OLE DB for OLAP query language, 1-11 Process Results To Table command, 4-32
OLE DB operator types and data operators, 6-30 program options, selecting, 3-57
Open Catalog Extension (OCE), 1-9 Projected Sales, example, 8-30
Open From Repository command, 3-16, 3-39 Properties command, 3-42
opening documents, 3-11 properties, export, 3-21 – 3-22, 3-44
operator types, OLE DB, 6-30 publish, 5-13
operators
arithmetic , 8-10 Q
at the local meta-topic level , 8-11 – 8-13
Qualify function, 8-23
logical, 7-8
Qualify function , 8-23
used to define limits , 7-8
Quantile function, 8-22

Index 7
Quantile function , 8-22 Remove Total command, 6-40
queries removing Request items, 4-5
adding topics to, 2-6 removing Request line items, 4-5
appending, 4-26 – 4-27 Rename Section command, 3-40
building OLAP, 6-5 renaming sections, 3-51
cancelling, 4-9 reordering Request items, 4-4
estimating size, 4-22 reordering Request line items, 4-4
example, 2-4 Replace function, 8-18
multiple, 4-2 reporting, 1-12
processing, 4-6, 6-22 reports
sizing, 4-22 creating, 2-19
troubleshooting, 4-22 designing, 2-17
Query Log command, 3-41 setting up, 2-21
query logs, exporting, 3-35 repository, saving documents to, 3-17
query options, 4-31 Request items, hiding, 4-5
Query Options command, 4-32 results
Query Processing Order, 4-7 automatically adding columns, 5-9
query properties, 4-31 enhancing, 5-4
Query section exporting, 5-13
data functions , 4-24 limiting, 5-4
diagram, 4-2 processing to a database table, 4-20
types of, 1-11 save options, 5-12
working with data, 4-20 saving, 3-12, 5-11
query size, estimating, 4-22 viewing, 2-7
query, definition, 1-11, 4-22 working with, 5-1, 5-10
Results menu commands, 5-14
R Results section
automatically creating, 6-24
Rank function
data functions, 5-5
scalar, 8-17, 8-30, 8-44
diagram, 5-2
Teradata, 8-22
exporting, 3-30
RankAsc function, 8-17, 8-45
Retrieve Dimensions command, 6-40
Real command, 3-56
returning day of week, 8-25
Real data type, 8-4
Round function, 8-16
Redo command, 3-40
Row command, 3-43
reference items, in sorts, 9-6
Row Numbers command, 3-44
relational databases
rows, selecting, 5-10
definition, 1-7
Rtrim function, 8-18
querying, 4-1
remarks, displaying, 4-23
Remove command, 5-14

8 Index
S setting variable limits, 7-13
Show As Chart command, 6-40
Sample function, 8-23
Show Remarks command, 4-32
SampleID function, 8-24
show values, 7-6
Save As command, 3-39
Save command, 3-39
Sign function, 8-16
Save Connection command, 3-64 simple sorts, 9-2
Save Options commands, 3-39 Sin function, 8-16
Save To Repository command, 3-17, 3-39
Sinh function, 8-16
saving documents, 3-12 slicers
scalar functions, 8-14 setting, 6-14
variable limits, 6-28
conditional, 8-14
date, 8-14 smart reports, creating, 2-19
examples, 8-31 Sort Ascending command, 5-14
Sort Descending command, 5-14
math, 8-15
numeric, 8-16 sort items, 9-6
statistical, 8-17 sort line features, 9-5
sort lines, 9-3
string, 8-18
scripts, running from menu items, 3-62 sort order, 9-4
Section pane, 3-7 sorting data, 9-2
sorting, in OLAPQuery section, 9-5
Section title bar, 3-6
Section Title Bar command, 3-41 sorting, in Query, Results, and Table sections, 9-4
Section/Catalog command, 3-41 sorts, nested, 9-4
Spotlighter command, 3-44
sections
adding, 3-49 SQL
deleting, 3-53 definition, 1-11
exporting, 3-34
duplicating, 3-49 – 3-50
exporting, 3-30 importing, 3-19
SQL files, 3-34
hiding, 3-49
inserting, 3-42 Sqrt function, 8-16
moving between, 3-50 standard query languages, 1-11
Standard Width command, 3-43
renaming, 3-51
viewing, 3-49 statistical scalar functions, 8-17
Select A Formatting Locale command, 3-55 Status bar, 3-9
Status Bar command, 3-41
Select All command, 3-40
Send command, 3-39 StdDev function, 8-17, 8-46
server limits in the Query section, 7-2 StdDevp function, 8-18, 8-47
stored procedures
server versus local limit processing, 7-2
setting compound limits, 7-12 opening, 4-30
setting simple limits, 7-10 processing, 4-30
using, 4-29

Index 9
Stored Procedures command, 4-32 inserting in Results section, 5-5
String data type, 8-4 ToYear function, 8-15
string scalar functions, 8-18 Translate function, 8-19
Structured Query Language (SQL), 1-11 Trend Functions, 8-50
Style commands, 3-43 Trunc function, 8-16
subqueries, building, 4-9 TXT files, 3-18, 3-30
Substr function, 8-18
subtotals, calculating, 2-11 U
Sum function, 8-17, 8-40
underlying values, 8-6 – 8-7
Suppress Duplicates command, 3-44
Undo command, 3-40
surface values, 8-6 – 8-7
Unhide Column command, 5-14
Sysdate function, 8-15
Unhide Request Item command, 3-41
Unhide Section command, 3-41
T Upper function, 8-19
tab-delimited files, 3-18, 3-30 user interface, 3-2
tables using functions, 8-14
in bqtbls5.ini file, 4-22 using surface values, 8-7
processing results to, 4-20
Tan function, 8-16 V
Tanh function, 8-16
value reference, in sorts, 9-6
technical support, 2-xx
Var function, 8-18, 8-48
Teradata Version 3 OLAP functions, 8-19
Var limit indicator, 7-3
Text Wrap command, 3-44
Variable Limit command, 4-32
text, formatting, 3-42
variable limits, in OLAPQuery, 6-26
Time command, 3-55
Varp function, 8-18, 8-49
Time datatype, 8-4
View Job List command, 3-64
Timestamp command, 3-55
TimeStamp data type, 8-4
ToCha function, 8-15 W
ToDate function, 8-15 Web browser restrictions and limitations, 3-33
ToMonth function, 8-15 WKS files, 3-30
toolbars, 3-3 workspace views, changing, 3-41
Toolbars command, 3-41
Tools menu commands, 3-64
X
topics, adding to query, 2-6
ToQtr function, 8-15 XLS files, 3-18, 3-30
totals
adding to OLAPQuery, 6-35 Z
break, 5-6 Zoom command, 3-41
calculating, 2-11

10 Index

You might also like