SQL generation for PEL functions
The PerformancePoint Expression Language (PEL) compiler generates SQL code for many PEL functions. There are four distinct categories of SQL code-generation support:
Full support - compiler can always generate SQL
Varied support - compiler can always generate SQL for some forms of these functions, but can never generate SQL for other forms of the functions
Absolute support - compiler can generate SQL for functions as part of an absolute reference, but not as part of a relative reference
No support - compiler can never generate SQL
Full Support
The following table lists functions for which the compiler can always generate SQL code.
. |
Varied Support
The compiler can always generate SQL code for some forms of these functions, and provides no support for other forms.
That is, each of these functions supports two argument forms, such as Avg(Scope_Expression [, Numeric_Expression]).
When the function is used with a single argument, the compiler can always generate SQL code. When the function is used with two arguments, the compiler cannot generate SQL code.
The following table shows the functions that have varied support.
Count (PEL) See table footnote |
|
. |
Note
Count without a second argument or with INCLUDEEMPTY for its second argument is category Full Support. Otherwise, it is category Absolute Support.
Absolute Support
The compiler can generate SQL code for these functions when the function is part of an absolute reference. The compiler cannot generate SQL code when the function is part of a relative reference.
For example, the compiler can generate SQL code for the following use of the Lag (PEL) function, because all the modifier expressions are absolute references:[Time].[Fiscal].[January 2006].Lag(1)
In contrast, the compiler cannot generate SQL code for the next use of the same Lag function. In the following statement, the CurrentMember (PEL) expression is a relative reference: [Time].[Fiscal].CurrentMember.Lag(1)
The following table lists functions for which the compiler can generate SQL code when the function is part of an absolute reference.
Descendants (PEL) See table footnote. |
|
Note
Descendants with an integer argument is category Absolute Support, unless the call is equivalent to Children (member.Descendants(1, SELF))
. In this case, the function is category Full Support.
No Support
The following table lists functions for which the compiler cannot generate SQL code.
. |