62
Hyperion Querying (a) – The Basics Hyperion IR Reporting 102 By UITS Reporting Services

Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

  • Upload
    vuduong

  • View
    236

  • Download
    4

Embed Size (px)

Citation preview

Page 1: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Hyperion Querying (a) – The BasicsHyperion IR Reporting 102

By UITS Reporting Services

Page 2: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What is a Hyperion Query?

In Hyperion a query is a type of section within a Hyperion document. It is used to send defined query logic to databases and/or other sources for the purpose of retrieving data as rows & columns. Nearly all Hyperion documents that you will work with will contain at least one query section with an associated results section to house the retrieved data.

Page 3: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

DATABASE QUERIES

Use only topics (tables/views/etc.) that represent database objects

Use only topics that represent local results/data sections

LOCAL RESULTS (OR “LOCAL”) QUERIES

What types of Queries are there?

* - One exception is discussed in the next class

It is NEVER* a good idea to mix database topics with local topics on the same datamodel!!!

Page 4: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What does a Hyperion Query Look Like?

Request/Filter/Sort Lines

DatamodelWork Area

Section Catalog

Topic Catalog

Page 5: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

SECTION CATALOG

• Used to rename, duplicate, copy or navigate between sections of the document

• Lists all unhidden sections within the Hyperion document

• Sections can also be navigated using the view menu, the back/forward buttons at the upper right and by clicking the section name in the section title bar at the top left

• Used to store available “topics” for use on the datamodel

• Lists all unhidden database objects (tables/views/etc.) to which you have access

• Lists all available local results sections

• Lists all available derivable queries*

TOPIC CATALOG

What are the Catalogs?

* - Not discussed until next class

Page 6: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

A topic is a database object (table/view/etc.), a local data section (local results) or a derivable query that is available to be added from the topic catalog to the datamodel for utilization in your query

Topic items are the individual fields/columns available on each topic once the topic has been added from the catalog to the datamodelwork area

What are Topics and Topic Items?

Page 7: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Display full names of tables to include table owner names

Refresh table catalog to show changes, etc.

What Else can the Topic Catalog do?

Page 8: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Who Controls the Topic Catalog?

(The Hyperion Server Administrators of the Reporting Services Group as directed by the data owners)

Page 9: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What is the Datamodel Work Area?

The datamodel work area is used for the creation of the datamodel for the query. Topics can be added to it from the catalog or can be removed or altered on it. They can/should also be joined to other topics on the datamodel to present a defined structure and level of detail.

Page 10: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

How do I Build My Datamodel?

• Add topics from the catalog to the datamodel work area by right-clicking or dragging and dropping

• Remove topics if required by selecting the topic and hitting the “Delete” key or by right-clicking

• Join all topics on the datamodel work area based upon your business specifications by dragging one item from a topic and dropping it onto another item in another topic

• Set properties for the datamodel and for all items (topics, topic items, joins, etc.)

• Add extra features (meta topics*, etc.)

*- Not discussed until next class

Page 11: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What are the Topic Properties?Right-click on a topic header and choose “Properties…”

Topic Name Display name for the topic

Physical Name

Name used for the topic when generating SQL

Items to Display

Use the buttons to sort or to show/hide all or double-click individual items to show/hide

Set as Dimension

Enables a drill-down path for the items on the topic

Allow Icon View*

Enables the display of the topic as an icon on the datamodel

Detail View Options*

Controls behavior when topic is displayed as detail

* - Right-click a topic header to see options for alternative views (structure, icon or detail)

Page 12: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What are the Topic Item Properties?Right-click on a topic item and choose “Properties…”

Name (top textbox) Display name for topic item

Set as Fact Removes item from drill-down choices

Length Overrides DB-defined length of text fields

Informational Items Provide useful information about the topic item

Notice the help buttons which take you to the section of the help file that describes the screen at which you are presently looking

Page 13: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What are the Join Properties?Right-click on a join and choose “Properties…” (or double-click)

Join Type Radio buttons to choose between simple joins and the various available types of outer joins

Operator (Dropdown Box) Changes the logical operator of the join

Informational Items Provides useful information about the options that are available

Note that choices made for join type represent graphical representation only and will be implemented in the SQL based solely upon the Topic Priority

Page 14: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What are the Datamodel Properties?Click “DataModel>Data Model Options…” on the menu bar at the top

Auto Alias Tables Enables the automatic use of “friendly” names for topics, specifically using init-cap case and replacing underscores with spaces [recommended]

Auto Join Tables Enables the automatic creation of joins when new topics are added to the datamodel that contain topic items whose name(s) match item(s) found on already utilized topics [not recommended]

Show Icon Joins Enables the display of the joins when using icon view [recommended]

Allow Drill Anywhere Enables drill anywhere functionality* [recommended]

Allow Drill to Detail Enables drill to detail functionality** [not recommended]

* - Not discussed until next class** - Not discussed until later classes

Page 15: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What are the Datamodel Properties?

Show minimum value set Incorporates all other filter and join logic (can become a cumbersome query)

Show values within topic Incorporates only filters on the same topic but no joins or other filters

Show all values Shows all values within the topic while ignoring all joins and other filters

Set this value based upon your specific business needs

Controls the values displayed when clicking “Show Values” in filters

Page 16: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What are the Datamodel Properties?

Use all joined topics

Use all topics that have at least one join

Use the minimum number of topics

Use only topics associated with topic items that are currently on the request line*

Use all referenced topics

Use only topics associated with topic items that are currently on the request or filter line*

Use defined join paths

Uses user-defined join paths as created by clicking the “Configure…” button

Use automatic join path generation

Rely on the application’s best guess for creating join paths

Set this value based upon your specific business needs

Controls the behavior of join and join path generation

* - Discussed in upcoming slides

Page 17: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What are the Datamodel Properties?

Arrow Buttons & List Box Select one or more items in the list box then use the arrows to promote or demote

Auto-Order Button Click this to allow the application to sort solely based upon the topic row counts (highest to lowest)

Best practices are to designate larger tables (facts) as higher priorities than smaller tables

Controls the order in which the topics will be specified/evaluated

Note that the “Save as Default” button is used to apply the chosen settings to additional queries inserted into the document

Page 18: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Let’s Play Jeopardy!!!First to raise hand will be chosen to answer

Correct answers win points towards your scoreHighest score at end of season wins a prizeMust phrase answers in the form of a question

Page 19: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

$200

Page 20: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

These are the 2 types of Queries available

in Hyperion

Page 21: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

$400

Page 22: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

It’s what we call a single field or column

that is found on an available topic

Page 23: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

$600

Page 24: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

The name of the group that controls topic catalogs and handles Hyperion

administration

Page 25: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

$800

Page 26: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

It’s where the length of text fields can be over-ridden on the

datamodel

Page 27: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

$1000

Page 28: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

It’s the join usage option that builds joins based upon

items found in the request or limit lines

Page 29: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

End of Round

Page 30: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

How do I Build My Query?• Add topics items from the utilized topics on the datamodel to the

request line by dragging and dropping (or right-clicking)• Set properties and/or add aggregation to the request items• Add request items from the request line to the sort line by dragging

and dropping and set ascending/descending by right-clicking (or double-clicking)

• Add topic items from the utilized topics on the datamodel to the filter line by dragging and dropping (or double-clicking)

• Set filter groupings with parenthesis and variable filters with the “Var” button (enabled by clicking the arrow to the right of the word “Filter” on the filter line)

• Set query properties and add extra features(appends*, etc.)

* - Not discussed until next class

Page 31: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

How does the Request Line Work?

Double-click for query properties

Double-click for item properties, drag and drop to re-order, right-

click for more options

Drag topic items from the datamodel and drop here to add as request items

Remove items by selecting then using the delete key or right-clicking

Page 32: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What are the Request Item Properties?Right-click on a request item and choose “Properties…” (or double-click)

Name Display name for the request item

Definition Physical definition of the field using Topic_Display_Name.Field_Name (note the underscores) for topic item reference in conjunction with any valid SQL functions or logic

Functions Button

Displays a partial list of functions available based on database type along with shortcuts for implementing them

References Button

Displays a full list of topic items grouped by topic as a shortcut for creating references

Options Enables the display of the Datatype control

Operator Buttons

Inserts commonly used operators into the Definition box

Datatype Sets the data type for the request item’s returned values

You can use any valid SQL in a request item definition if it would be allowed within the SELECT clause of a SQL query

Page 33: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What are the other Request Item Options?Highlight then right-click on a request item

Process the current query

Shortcut to aggregate functions

Create new request item via empty /default item properties

Conceal item from display

Remove item from request line

Access item properties

Adjust display font for item

Page 34: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What does a Filter Dialog Look Like?Double-click on a topic item for new filters or on an existing filter item to

change it (or right-click)

Name Display name for item

Include Nulls Toggles exclusion of null values in the filtered item

Negation (“Not” checkbox) Negates the chosen operator

Operator (dropdown box) Specifies the required relationship between the filtered item and the chosen filter value(s)

Ignore Button Leaves filter on the filter line as ignored (counter-acted by re-opening and clicking “OK” instead)

Custom Values and Show Values Buttons

Toggles between filter types (custom values must be typed in whereas show values displays all possible values based upon the datamodel options)

Selections (list box) Highlighted items in this box represent the applied filter values

Select All Button Selects all items in the List box

Remove Button* Removes selected item(s) from the List box

Advanced Button Toggles the display of the advanced filter dialog options

“X” and Check Buttons* Used to affect items in Textbox (“X” clears the box and Check enters the value into the List box as selected)

Textbox (below Operator)* Used for entering custom filter values

* - Used only in Custom Values filters

Page 35: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What does a Filter Dialog Look Like?

Transfer Button Changes to a Custom Values filter while copying the currently selected values from the List box of Show Values to the Listbox of the now Cusom Values filter

Loaded Values Settings

Allows for values to be loaded from a specified file rather than based upon the available database values

Create SubQuery Creates a SubQuery section*

* - Not discussed until next class

Page 36: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What Else can the Filter Line do?Click to toggle

advanced options

Click to enable parenthesis around selected filters

Filters grouped by parenthesis

Click to make selected filter(s) variable

Variable filter Standard filter

AND operator

OR operator

• Variable filters prompt the user with the filter dialog box whenever the query is processed

• Click an operator to toggle between AND/OR

- Remove items by selecting then using the delete key or right-clicking- Re-order by dragging & dropping

Page 37: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

What are the Query Properties?Double-click the word “Request” on the request line or use the Query menu on

the menu bar at the top to view the query properties

Return Unique Rows Return distinct rows only

Return First X Rows Governor for row-count

Time Limit Y Minutes Governor for time

Auto-Process Causes section to be auto-processed if auto-processing script is included in the OnStartup event handler

Custom Group By Exclude specific items from the GROUP BY clause of an aggregate query

URL Path Specified by Hyperion Administration only

Page 38: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Store Week Sales

London 1 $45

London 3 $62

Cardiff 1 $25

Cardiff 2 $32

Cardiff 3 $38

How is Aggregation Used?Right-click on a request item and choose “Data Function” or use the request

item properties to apply aggregation

Week Sales

1 $35

2 $32

3 $50

Store Sales

London $107

Cardiff $95

Page 39: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

How are Aggregate Filters Created?Drag aggregate request items to the filter line to create aggregate filters

StandardFilter

AggregateFilter

Don’t forget the custom GROUP BY options in the query properties whenever using aggregate functions

Page 40: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

• Right-click menus• Menu bar at the top• Double-clicking• Shortcut keys (delete, etc.)

What Common Shortcuts are Available?

Process queries using the “Process” button or the tools menu from the menu bar at the top

Page 41: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Let’s Play Double Jeopardy!!!

Page 42: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

$400

Page 43: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

The button in the Request Item

Properties that displays the Datatype

control

Page 44: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

$800

Page 45: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

These are the two primary options for

types of filters

Page 46: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

$1200

Page 47: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

This type of filter will prompt a user with the limit dialog box whenever the query

is processed

Page 48: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

$1600

Page 49: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

This is what we do to an “AND” or to an “OR” operator to

toggle between “AND” & “OR”

Page 50: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

$2000

Page 51: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

It’s where we double-click to see the query properties dialog for

things like the “Custom Group By”

Page 52: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

End of Round

Page 53: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Let’s Play Final Jeopardy!!!

Page 54: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Category:

Aggregation

Page 55: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Write your name and your wager on a scrap of paper and fold it (bet up to $1000 or up to your total score)

Page 56: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Pass your wagers to the front without looking at others and get ready to

write down your answer

Page 57: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Ready?

Page 58: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

TIME IS UP!!!This is the type of

dialog box that provides a button for “Create SubQuery”

Page 59: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Pass your answers to the front

Page 60: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

And today’s winner is???

Page 61: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send
Page 62: Hyperion Querying (a) – The Basics IR Querying - Basics.pdf · What is a Hyperion Query? In Hyperion a query is a type of section within a Hyperion document. It is used to send

Is this thing over yet?This concludes this presentation of…

Hyperion IR Reporting 102