Use Functions in Formulas

Essbase functions are predefined calc routines available in block storage cubes. They perform specialized calculations and return sets of members or data values.

You can use the following types of functions in outline formulas:

Table 18-2 List of Function Types

Function Type Description

Boolean

Provide a conditional test by returning a TRUE (1) or FALSE (0) value.

For example, you can use the @ISMBR function to determine whether the current member matches any members specified.

See Conditional Tests.

Mathematical

Perform specialized mathematical calculations.

For example, you can use the @AVG function to return the average value of a list of members.

See Mathematical Operations.

Relationship

Look up data values within a database during a calculation.

For example, you can use the @ANCESTVAL function to return the ancestor values of a specified member combination.

See Member Relationship Functions.

Range

Declare a range of members as an argument to another function or command.

For example, you can use the @SUMRANGE function to return the sum of all members within a specified range.

See Range Functions.

Financial

Perform specialized financial calculations.

For example, you can use the @INTEREST function to calculate simple interest or the @PTD function to calculate period-to-date values.

See Financial Functions.

Specifying member lists and ranges

Specify multiple members or a range of members.

For example, the @ISMBR function tests to see if a member that is currently being calculated matches any of a list or range of specified members.

See Specify Member Lists and Ranges.

Generating member lists

Generate a list of members that is based on a specified member.

For example, you can use the @ICHILDREN function to return a specified member and its children.

See Generate Member Lists.

Character string manipulation

Manipulate character strings for member and dimension names.

For example, you can generate member names by adding a character prefix to a name or removing a suffix from a name, or by passing the name as a string.

See Manipulate Member Names.

Member combinations across dimensions

Point to data values of specific member combinations by using the cross-dimensional operator (->).

See Work with Member Combinations Across Dimensions.

Interdependent values

For formulas that require values from members of the same dimension, but for which the required values have not yet been calculated.

See Interdependent Values.

Variances and variance percentages

Calculate a variance or percentage variance between budget and actual values.

See Variances Between Actual and Budget Values.

Allocation

Allocate values that are input at a parent level across child members. You can allocate values within the same dimension or across multiple dimensions.

For example, you can use the @ALLOCATE function to allocate sales values that are input at a parent level to the children of the parent; the allocation of each child is determined by its share of the sales of the previous year.

See Functions that Allocate Values.

Forecasting

Manipulate data for the purposes of smoothing or interpolating data, or calculating future values.

For example, you can use the @TREND function to calculate future values that are based on curve-fitting to historical values.

See Forecasting Functions.

Statistical

Calculate advanced statistics. For example, you can use the @RANK function to calculate the rank of a specified member or a specified value in a data set.

See Statistical Functions.

Date and time

Use date and time characteristics in calculation formulas.

For example, you can use the @TODATE function to convert date strings to numbers that can be used in calculation formulas.

See Date and Time Function.

Calculation mode

Specify calculation modes that Essbase is to use to calculate a formula—cell, block, bottom-up, and top-down.

See Calculation Mode Function.

Custom-defined

This type enables you to perform functions that you develop for calculation operations. These custom-developed functions are written in the Java programming language and are called by the calculator framework as external functions.

Note:

Abbreviations of functions are not supported. Some commands may work in an abbreviated form, but if another function has a similar name, Essbase may use the wrong function. Use the complete function name to ensure correct results.