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 17-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. |
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. |
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. |
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. |
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. |
Member combinations across dimensions |
Point to data values of specific member combinations by using the cross-dimensional operator (->). |
Interdependent values |
For formulas that require values from members of the same dimension, but for which the required values have not yet been calculated. |
Variances and variance percentages |
Calculate a variance or percentage variance between budget and actual 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. |
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. |
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. |
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. |
Calculation mode |
Specify calculation modes that Essbase is to use to calculate a formula—cell, block, bottom-up, and top-down. |
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.