Incentive Compensation Predefined Functions

Predefined functions are PL/SQL functions that give more freedom in expression building. Here are the predefined functions including use case examples. Add predefined functions to an expression using the expression builder in the Compensation Plans work area.

Predefined Function

Description

Use Case Example

Credit Category Name

Name associated with the credit category identifier.

Use the result for a rate table lookup.

Determine the commission rate based on the credit category.

Date Difference

Difference between two dates in terms of days, weeks, months, or quarters.

The return value could be days, weeks, months, quarters, and so on, based on the Period Type input parameter.

None

Previous Interval Attainment

Measure the attainment for the previous time interval.

The calculation doesn't round or truncate results. Also, if the previous interval has no attainment record for the measure, then the return value is zero.

Pay participant based on growth, defined as current interval attainment over previous interval attainment.

Product Name

Name associated with the product identifier.

The calculation returns the results in upper case. Use the result for a rate table lookup.

Determine commission rate based on the product.

Prorated Measure Participation

Proportion of the number of participated days in the performance measure interval.

The actual calculation is (Number of Participation Days in Performance Measure) divided by (Number of Days in Calendar Interval).

  • The calendar interval is the formula interval for the period ID.

  • The calculation assumes that the proration is based on calendar days and not on workdays.

  • The calculation doesn't round or truncate results.

Adjust the measure attainment based on plan participation. Typical in quota-based calculations.

Prorated Plan Component Participation

Proportion of the number of participated days in the plan component interval.

The actual calculation is (Number of Participation Days in Plan Component) divided by (Number of Days in Calendar Interval).

  • The calendar interval is the formula interval for the period ID.

  • The calculation assumes that the proration is based on calendar days and not on workdays.

  • The calculation doesn't round or truncate results.

Adjust earnings based on plan participation. Typical in bonus and MBO plans.

Rank Participant Metrics

The ranking function ranks measures and earnings data in the cn_srp_per_form_metrics_all table and accepts these inputs:

  • Rank type (required): Indicates whether it's a regular rank (RANK) or Dense Rank (DENSE_RANK)

  • Participant ID (required)

  • Period ID (required)

  • Attribute to be ranked (required): Attribute of the measure of a component that you want to rank. For example, OUTPUT_ACHIEVED_PTD, OUTPUT_ACHIEVED_ITD, INPUT_ACHIEVED_PTD, INPUT_ACHIEVED_ITD.

  • Performance Measure ID or Formula ID (conditionally required): Either Formula ID or Plan Component ID is required.

  • Plan Component ID (conditionally required): Either Formula ID or Plan Component ID is required.

If you're ranking an attribute of a performance measure, you only need to pass plan component ID or salesperson compensation plan ID if you want to restrict the ranking within a component or plan.

If you're ranking an attribute of a plan component, you only need to pass a salesperson compensation plan ID if you want to restrict the ranking within a plan.

Employees get a bonus based on the ranking of their quota attainment with a plan.

Accumulate by Any Interval

The Accumulate by Any Interval function will accumulate any metric of a performance measure or plan component by any interval irrespective of the measure's or component's own interval. It accumulates the metrics from the CN_SRP_PER_FORM_METRICS_ALL table and takes the following as inputs:

  • Participant Plan ID (required)

  • Plan Component ID (required)

  • Formula ID (required)

  • Interval Type (required): This could be any of the interval types defined for the business unit, such as Quarter or Period.

  • Period ID (required)

  • Metric to be accumulated (optional): The metric of the measure of a component that you want to accumulate. Examples: OUTPUT_ACHIEVED_PTD, INPUT_ACHIEVED_PTD, COMMISSION_PAID_PTD

If you're accumulating a metric of a performance measure and don't pass the final metric parameter, the default metric accumulated is OUTPUT_ACHIEVED_PTD.

If you're accumulating a metric of a plan component and don't pass the final metric parameter, the default metric accumulated is COMMISSION_PAID_PTD.

A measure M1 has an interval of period. Another measure M2 with an interval of Quarter depends on M1, but needs the accumulated output value of M1 for the entire quarter.

Rolling Average Attainment

Average attainment for the measure for a specified number of time intervals.

The calculation starts from the current interval.

Example: Assume that the interval is monthly, the period passed is May, and the number of intervals passed is 4. The calculation returns average attainment for February, March, April, and May (the current period).

If previous intervals have no or insufficient attainment records for the measure, then the average attainment calculation:

  1. Sums the attainment for the available intervals

  2. Divides the sum by the number of available intervals

For example. if only two records are available and three month rolling is required, then the calculation sums the two months and divides by two.

Pay participant based on rolling average attainment.

YTD Target Incentive

Year-to-date target incentive for the plan component.

The actual calculation is (Target Incentive of Plan Component) multiplied by (Ratio of Current Interval Number to Number of Intervals Passed).

  • The returned value is in the calculation currency.

  • The calculation assumes that the plan component is for the calendar year.

Support true-up for bonuses.

Caution: You can't import plans with expressions containing one or more predefined functions or user-defined queries that use the participant plan, plan component, formula, and measure IDs because the IDs don't exist yet in the destination environment. Or, if they do exist, then they don't reference the same attributes as the source environment. The import will fail.

For details about enabling attributes to pass to incentive compensation predefined functions, see the Enable Attributes to Pass as Input Parameters for Predefined Functions topic.