Intermediate rounding allows an intermediate result to be rounded by the amount n.n before it is used further in a formula.

Scenario

Pay Element 1350 holds a Weekly Full Time Shift amount, for example, £123.45 a week

This can be converted to a monthly amount using the following formula:

123.45 * a / b * c where:

a=53.142, b=ADT (12), c=FTE (0.5)

This can also be converted to a monthly amount by firstly calculating the weekly FTE amount (which is then rounded to the nearest penny):

123.45 * c * a / b

The resulting amount using the second calculation gives a difference of 0.5p a week or over 2p a month before final rounding; with final rounding, this can become as much as 3p a month.

Solution

Use the rounding mnemonic Ax[n.n] where:

Ax can be AN for natural rounding, AU for rounding up or AD for rounding down and n.n is the nearest pound or pence to round to, for example, 1.0 (nearest £1), 0.1 (nearest 10p) or 0.01 (nearest 1p).

In this example, we have defined the following additional components for use in our formula (a, b and c are as above in the first example):

d = AN[0.01] (natural rounding to nearest pence)

e = FA[1350] (fixed pay element amount for pay element 1350)

And then used the new formula:

((e * c) :d) * a / b

Note: The rounding is applied by using a colon (:) after the expression that is to be rounded and the expression to be rounded should be contained in brackets.

You can include multiple roundings if required; therefore, you could round the final result up to the nearest penny as follows:

define f = AU[0.01]

and use formula:

((((e * c) :d) * a / b) :f)