Oracle HCM Cloud: Fast Formula 5 - 2
Oracle HCM Cloud: Fast Formula 5 - 3
Oracle HCM Cloud: Fast Formula 5 - 4
Oracle HCM Cloud: Fast Formula 5 - 5
Oracle HCM Cloud: Fast Formula 5 - 6
Oracle HCM Cloud: Fast Formula 5 - 7
Oracle HCM Cloud: Fast Formula 5 - 9
Oracle HCM Cloud: Fast Formula 5 - 10
Oracle HCM Cloud: Fast Formula 5 - 11
Oracle HCM Cloud: Fast Formula 5 - 12
Calling a Formula from a Formula
• Formula inputs set using SET_INPUT persist as long as no EXECUTE or
GET_OUTPUT calls are made
• Output values from a called formula persist as long as no SET_INPUT or new
EXECUTE calls are made
• Any saved input or output values are also removed when the calling formula exits
Oracle HCM Cloud: Fast Formula 5 - 13
Oracle HCM Cloud: Fast Formula 5 - 14
• In both cases, formula RATE_FORMULA is called to get a value for HOURLY_RATE
• RATE_FORMULA has a text input, UNIT, that is set to ‘Hourly’ in the formula call
• RATE_FORMULA returns the rate in output variable RATE
• The GET_OUTPUT call returns 0.0 if RATE_FORMULA did not return RATE
Oracle HCM Cloud: Fast Formula 5 - 15
Oracle HCM Cloud: Fast Formula 5 - 16
To put multiple statements within the scope of a CHANGE_CONTEXTS block you must
enclose them in brackets.
In the following, the CHANGE_CONTEXTS only applies to the first statement, statement1:
CHANGE_CONTEXTS(AREA2 = county)
statement1
statement2
statement3
In the following, the CHANGE_CONTEXTS applies to statement1, statement2, and
statement3, but not statement4:
CHANGE_CONTEXTS(AREA2 = county)
( statement1
statement2
statement3 )
statement4
Oracle HCM Cloud: Fast Formula 5 - 17
Oracle HCM Cloud: Fast Formula 5 - 19
Oracle HCM Cloud: Fast Formula 5 - 20
These are payroll-specific examples. Payroll processing has the most complex use of
formulas, but other products’ formulas can use CHANGE_CONTEXTS too.
The payroll process is written by the core payroll team. This sets up a load of contexts related
to payroll processing, for example PAYROLL_ID, PAYROLL_ACTION_ID, DATE_EARNED,
and PAYROLL_RELATIONSHIP_ID. These contexts should not be changed from within a
formula.
Payroll processing is localization-specific and complex. A load of localization contexts are
necessary for payroll localizations that the payroll process code is not particularly interested in
and does not bother to set. Things would get quite complicated if it had to keep track of each
localization's context values.
Oracle HCM Cloud: Fast Formula 5 - 21
Oracle HCM Cloud: Fast Formula 5 - 24
Oracle HCM Cloud: Fast Formula 5 - 25
Oracle HCM Cloud: Fast Formula 5 - 26
Oracle HCM Cloud: Fast Formula 5 - 27
Answer: c
Oracle HCM Cloud: Fast Formula 5 - 28
Answer: a
Oracle HCM Cloud: Fast Formula 5 - 29
Oracle HCM Cloud: Fast Formula 5 - 30