Use the PROFILE function to multiply values over any dimension, based on a series of numbers, or a profile.

For example, you can use the PROFILE function to calculate the value of an item based on estimated depreciation.

PROFILE(Numbers to change, Profile [, List])

ArgumentData typeDescription
Numbers to changeNumberThe numbers to change.
ProfileNumber

The values that changes to the Numbers to change argument are based on. The Numbers to change argument is multiplied by the values of this argument.

Must be of a different dimension to that of the Numbers to change argument.

List (Polaris-only)List

The list over which the function should operate.

See Calculation engine functionality differences.

The PROFILE function returns a number.

  • In Polaris, the lookup dimension can't be related to any dimension of the line item to which the formula is applied.
  • In Polaris, you can't use the PROFILE function for line items that have the Formula summary method. In the Classic Engine, you can.
  • In Polaris, you can use the PROFILE function over any dimension, by including an additional argument. In the Classic Engine, you can't. Where, if the additional argument isn't included, the function defaults to Time as the dimension.

The Profile argument should contain a sequence of several values dimensioned by a list.

Each value in the Numbers to change line item is multiplied by each value in the Profile line item. The first value is multiplied by the first value in the Profile within the same target item. Then in the next target item, it is multiplied by the second value in the Profile, and so on.

The Numbers to change line item can contain multiple values. In this case, the PROFILE function applies the behavior described above to each value independently and sums the results.

As the values in the Numbers to change are multiplied by the values in the Profile, it can be useful to use the Percentage "Number" format for your profile.

The Numbers to change argument must have a valid line item reference from the Numbers to change argument to the resulting line item.

The time range used for the Value to compare argument must match the time range for the result line item.

This example uses two modules. The first module, Profile, contains a list with 5 list items that represent months, and a single line item, Depreciation. The module is below:


Depreciation
This month100.0%
Next month75.0%
Month+255.0%
Month+330.0%
Month+415.0%

The second module shows the PROFILE function used in another module with the Depreciation above.


Jan 22Feb 22Mar 22Apr 22May 22Jun 22Jul 22
Single asset value10,000000000
Multiple asset values10,0000010,0000010,000
PROFILE(Single asset value, Profile.Depreciation)10,0007,5005,5003,0001,50000
PROFILE(Multiple asset values, Profile.Depreciation)10,0007,5005,50013,0009,0005,50013,000

As in the Multiple asset values depreciation line item, the PROFILE function can be used with multiple values. In this case, the function applies the profile to each value independently and then sums them.