42
Using EVDRE

Using Evdre

Embed Size (px)

Citation preview

Page 1: Using Evdre

Using EVDRE

Page 2: Using Evdre

Session Objectives

EVDRE Overview

The Basics

Complex Reporting with EVDRE

Filtering and Suppression with EVDRE

Page 3: Using Evdre

EVDRE Overview

EVDRE = Data Range Exchange

What is the main difference between EVGET & EVDRE?

Range based send and retrieve vs. cell based send and retrieve with other functions

Page 4: Using Evdre

Why Do We Use EVDRE?

Scalability & Performance: The Shared Query Engine (SQE) evaluates EVDRE as 1 query EVGTS (and the like) pass the SQE 1 query per function (so if you have a 10x10

report, this is 100 queries!) and it combines them in the best way it can Can read data directly from SQL Even greater performance enhancement with Nested Rows/Columns

EVDRE will eventually replace many other functions EVDRE is the ONLY way to develop reports on the Oracle/UNIX platform Development has stated that all future enhancements to send/retrieve functionality

will ONLY be for EVDRE (no enhancements to EVGET, EVSND, etc.)

Page 5: Using Evdre

Other EVDRE Benefits

One function to both send & retrieve

Supports “any number” of nesting on the rows/columns and performs much more efficiently than EVNXP

Smaller Workbook Size – One function vs. a function in every cell

Complex Suppression

Multiple Expansions – It is easier to build reports that require multiple expansions on a single worksheet

Page 6: Using Evdre

Need a little more motivation?

EVDRE is the basis for nearly ALL of the reports templates in the demo application set

In order to customize these templates for implementation/proof of concept, you will need a deep understanding of how to work with EVDRE

Page 7: Using Evdre

The Basics

EVDRE function:

EVDRE(Application, KeyRange, Expand Range) Application: Application Name Key Range: Range defining Page Keys, Row Keys, Column Keys, and other options Expand Range (OPTIONAL): Range including Expansion definitions

Page 8: Using Evdre

The Basics

EVRNG function:

EVRNG(Range1, Range2, Range3…) Range 1: The first range of cells Range 2 (OPTIONAL): A second range of cells Range 3 (OPTIONAL): A third range of cells

Page 9: Using Evdre

The Key Range

Defines where the EVDRE can find important information

Uses the EVRNG function to define the ranges

You can define multiple key ranges, separated by commas

Page 10: Using Evdre

Page Key Range

Defines the members that apply to the report / input schedule

All dimensions in your application are automatically created in the Page Key when a new EVDRE is used

The member for each dimension is tied to the Current View, unless you choose to override

For dimensions not defined in either the PageKeyRange or the Row/Column Keys, the member for that dimension will be based on the Current View

You can define comma-delimited members as page keys This is critical, this means that you can aggregate

members together on the fly!!!

Page 11: Using Evdre

Col Key Range & Row Key Range

Defines the members to use in the columns/rows

Overrides the Page Key for selected dimensions

Can include multiple rows/columns or a single row/column

The members in the Col/Row Key Range do NOT have to be part of an expansion

Page 12: Using Evdre

Cell Key Range

Can be used to overwrite a member ID in the ColKey/RowKey Range for a SPECIFIC cell

Can ONLY be used in reports with NO Expansion

For more specific info, see OutlookSoft for Excel Help

Page 13: Using Evdre

Get Only Range

Used to define read-only data ranges in EVDRE input schedules

The Get Only Range can be a subset of the full data range

Page 14: Using Evdre

Format Range

Used to define the format for the report

Can be a single cell to format the data range or a range using advanced formatting options

Formatting is applied during expansion. If you aren’t using expansion, the FormatRange is irrelevant.

More to come in a later workshop…

Page 15: Using Evdre

Key Range Options

Used to apply advanced settings to reports: AutoFitCol: dynamically sizes column widths so everything fits ExpandOnly: only expands the report, does not retrieve/send data ShowComments: adds a comment to cells in the data range with a formula, if the

value retrieved from the database is different than the formula result SuppressNoData: only missing (null) values will be suppressed. Zero values will still

appear. SumParent: inserts a SUM formula for parents instead of retrieving the value from the

database. NoRefresh/NoSend: Prevents Send/Refresh HideRowKeys/HideColKeys: Hide row/col keys SuppressDataRow/SuppressDataCol: allows removal of entire rows/columns with no

data values. Requires 2 EVDREs, one to retrieve and one to suppress.

Page 16: Using Evdre

ExpandRange

Defines expansions for both columns and rows

Is the optional parameter in the EVDRE function

References 3 required parameters and 4 optional parameters

Can include multiple row/column expansions

Page 17: Using Evdre

Expand Range Parameters

Required Parameters ExpandIn –axis (COL or ROW) Dimension – dimension name for expansion MemberSet – defines “expansion rules”

Similar to the IncludeFlag in EVEXP

Optional Parameters BeforeRange – dynamically inserts specified rows/columns

before member set AfterRange – dynamically inserts specified rows/columns after

member set Suppress – zero suppression for rows and/or columns Insert – allows users to right click to insert a new row/column

by selecting the member(s)

Page 18: Using Evdre

Multiple Expansions

The same expansion can be repeated within the row or column axis by creating the expansion and defining multiple key ranges in the ColKeyRange or RowKeyRange

Page 19: Using Evdre

Using Different MemberSets in Multiple Expansions

You can apply different MemberSets to multiple expansions

Separate the MemberSets with a pipe ( | )

Page 20: Using Evdre

MemberSet Options

SELF – Current member

ALL – All descendants of current member

BAS – All base level members below current member

DEP – All dependents of current member

BASMEMBERS – All base level members in dimension (regardless of current member)

MEMBERS – All members in dimension

NOEXPAND – Do not expand for this dimension

Page 21: Using Evdre

Other MemberSet Options

Hard-coded, comma-separated member IDs

Comma-separated MemberSet Options

PARENTAFTER – Used with ALL and MEMBERS to place parent members after children

Page 22: Using Evdre

Relative MemberSet Options

Relative MemberSet

Complex Relative MemberSet

Page 23: Using Evdre

MemberSet Filtering with Properties

Right-click MemberSet cell in expansion:

Update Filter dialog

Automatically generates filter for MemberSet:

Page 24: Using Evdre

Combining MemberSet Flags and Properties

MemberSet flags can be combined with member properties for more complex expansion filtering

Flag AND/OR Property=“Value”

This example returns all base-level members below Current View Account that are also expense accounts

Page 25: Using Evdre

Suppression in Expansions

To suppress rows/columns across the entire report or input schedule, use a Y in the Suppress option

SuppressNoData – Only suppresses rows/columns that contain no data (null); still displays zeros (NOTE: This is not the default)

To suppress on rows/columns based on data not found in the report, use a comma delimited member set in the suppress option

Page 26: Using Evdre

Combining multiple EVDRE

Sometimes multiple EVDREs are needed in a report/schedule Need different row/col keys for the expansion than for the send/retrieve Need more than one expansion in the rows/columns (not nested) The send/retrieve is based on a property or other attribute derived from the members in the

expansion

Page 27: Using Evdre

Combining Multiple EVDREs: An Example

Let’s say I want to develop an input schedule for entering HR information. I want to select a position, and based on this selection, automatically determine whether the salary information should be sent to Salaries_Exempt or Salaries_NonExempt.

I will need one EVDRE to expand employees & positions and a second EVDRE to send the data to the appropriate account. Why? I need account to be a row key, but I can’t generate this correctly as part of the expansion, because I don’t know what position a user may select.

Page 28: Using Evdre

Advanced Formatting Options

Can use a single cell to format data range

Can leave blank, so report will format based on first row/column format

Can reference a 6 column table for complex formatting options

Page 29: Using Evdre

The Format Range: Using the 6 column table

Defines specific parameters for each formatting instruction

Each row represents a separate formatting instruction to be applied to your report/schedule

Formats are applied from top down so you can define priority in case a cell meets more than one criteria

Page 30: Using Evdre

Format Range Columns

The 6 columns represent 6 separate parameters that define formatting instructions CRITERIA EVALUATE IN FORMAT USE PARAMETERS APPLY TO

The columns are all required and must be found in the correct order

Note: The column titles are never included in the FormatRange

Page 31: Using Evdre

CRITERIA Column

Defines what triggers the formatting instruction

Currently supported values: DEFAULT CALC – Calculated members INPUT – Base-level, non-calculated members DIMENSION.PROPERTY=“Value” – Members that contain specified member property

values

Page 32: Using Evdre

EVALUATE IN Column

Restricts the area for which the CRITERIA is evaluated

Currently Supported Values ALL (or blank) PAGE COL ROW

Page 33: Using Evdre

FORMAT Column

Contains the format that will be applied

Defined by using Excel formats

Format the cell in the format column exactly the way you would in Excel

Page 34: Using Evdre

USE Column

Specifies which components of the defined format should be applied ALL (or blank) NUMBERFORMAT FONT FONTSTYLE BORDER PATTERN LOCK

Page 35: Using Evdre

PARAMETERS Column

Used to dynamically set various formatting options, such as NUMBERFORMAT

Examples: NUMBERFORMAT=ACCOUNT.FORMAT

The number format is taken from what is defined in the FORMAT property of the Account dimension

Note: To activate this feature the CRITERIA must be set to ACCOUNT.SCALING=”1”

Page 36: Using Evdre

APPLY TO Column

Defines which sections to apply the specified format

Currently supported values ALL (or blank) KEY – ID field DATA – Data Fields HEADING – Description Fields

Page 37: Using Evdre

General Formatting Tips

Formats are applied when you perform an expansion in the report (can’t be applied in static reports)

Multiple instructions are applied to the report in sequence top to bottom

Take advantage of the EVRNG function to reference the formatting table

Be careful applying formats: Cover all scenarios If you have a format on the Row Heading for a calculated member, make sure to

have a default row heading for non calculated members

Page 38: Using Evdre

Before and After Range

Optional parameter that you can use to dynamically insert rows and columns of data

Same functionality for both, but one puts range before your expansion range and one puts range after

Can be used for: Inserting comments Advanced Formatting (Section Breaks) Summing sections (use EVSUM command) Replicating Repeat Block functionality

Page 39: Using Evdre

Example – After Range and EVSUM

Page 40: Using Evdre

Before and After Range Tips

Make sure your EVRNG function includes the appropriate columns or rows

If nesting dimensions, changing which dimension contains the before or after range will affect the result

Page 41: Using Evdre

Additional Tips

To use scaling, use Excel’s custom number format to display numbers in thousands, millions, etc.

If the format table suddenly stops formatting the way you expect, sometimes hitting F2 then enter through the format range fixes the problem

F2 then enter on the whole EVDRE range has proven to fix EVDRE errors on occasion

Sometimes copying the range with EVDRE to another workbook will resolve pesky EVDRE errors

Using EVCGT is a good way to retrieve comments into an EVDRE report/schedule

Page 42: Using Evdre

Questions