Global Absence FastFormula User Guide 201804130 PDF
Global Absence FastFormula User Guide 201804130 PDF
Global Absence FastFormula User Guide 201804130 PDF
Introduction 1
GET_PLAN_BALANCE 101
GET_ACCRUAL_BALANCE 101
GET_ABSENCE_COUNTS 102
GET_ABS_MIN_MAX_DATES 103
GET_BAL_COMP_VAL 103
GET_BAL_HDR_VAL 104
GET_ENRT_DTLS 104
GET_ENTITLEMENTS 105
GET_ABSENCE_DAYS_PER_TYPE 105
In such scenarios, Fusion Absence Management leverages the flexibility of fast formulas to help
implementers customize existing functionality without spending application development effort.
This document serves as a reference guide providing information on fast formulas available within
Fusion Absence Management. The fast formulas available within Absence Management can be
categorized into:
Example: An organization might have a vacation plan in which workers enrolled into the plan can accrue days every
year based on their grade. At the end of the year, the workers can carry over a certain amount of the balance o the
next year, which if remains unused would expire at the end of a certain period of time. You can configure such rules
using a fast formula of this type.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab Accrual Attributes section, select Formula in the Accrual
Definition field.
6. Select the defined formula from the Accrual Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
accrual Number Amount of accrual that the worker accrues in the specific period.
ceiling Number Maximum time that a worker can accrue including balance adjustments
carryover Number Maximum unused time that a worker can transfer to the next accrual term
prorationFactor Number Multiplying factor that the accrual is multiplied.
vestingUnits Number Period for which time-off is accrued, but cannot be used by worker.
vestingUOM Text Unit of measure for the vesting period duration. UoM can be Calendar Days (‘C’),
Weeks (‘W’), Months (‘M’) or Years (‘Y)
carryOverProration Number Multiplication factor for carryover
ceilingProration Number Multiplication factor for ceiling
adjustmentvalues Number_Number Array of balance adjustments that when returned by the formula is applied against
the accrual plan enrollment.
adjustmentdates Date_Number Array of dates associated with the array of balance adjustment values to specify
the dates on which each of the balance adjustments need to be applied
adjustmenttypes Text_Number Array of adjustment reasons used for the balance adjustments
absvalues Number_Number Array of absence accrual usages that can be applied against an accrual plan
enrollment. Useful for cases where the absence entry itself is not captured in
Global Absence Management, but rather via other modules (such as payroll
element entries) or even third party systems and the absence deduction against the
accrual plan needs to happen in Fusion. When using this, it should be noted that
absence entries should not be made for the same dates.
absdates Date_Number Array of dates associated with the absence accrual usages on which the deduction
is applied.
accrualCeiling Number Maximum time that a worker can accrue
accrualCeilingProration Number Proration factor for accrual ceiling limit
Sample Formula
Requirement: The organization has a vacation accrual plan where workers can accrue a set number of days every
year depending on their grade level. The organization allows workers to carry over o a maximum of 5 days of
vacation to the next year. The carryover and the accrual amount have to be prorated based on the worker’s FTE.
/******************************************************************************
FORMULA NAME: ANC_ACRL
FORMULA TYPE: Global Absence Accrual
DESCRIPTION: This formula returns the accrual and carryover limit for workers enrolled into Vacation plan differentiated based on their
assignment grades
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 30-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
accrual = 0
carryover = 5
prorationFactor = 1
carryOverProration = 1
IF (PER_ASG_GRADE_NAME = 'Associate')
THEN
(accrual = 12)
IF (PER_ASG_GRADE_NAME = 'Staff')
THEN
(accrual = 25)
IF (PER_ASG_GRADE_NAME = 'Senior')
THEN
(accrual = 20)
IF (PER_ASG_GRADE_NAME = 'Principal')
THEN
(accrual = 25)
IF (PER_ASG_GRADE_NAME = 'Director' OR PER_ASG_GRADE_NAME = 'Vice President' OR PER_ASG_GRADE_NAME = 'President'
OR PER_ASG_GRADE_NAME = 'Executive')
THEN
(accrual = 30)
Example: An organization might have a vacation plan in which enrolled workers can accrue a certain number of
days every year based on their grade. When the grade of a worker changes in the middle of the calendar year, the
organization might want to prorate their total accrual balance. You can configure this pro-ration rule using the
accrual event formula to capture the dates when such changes occur.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
START_DATE Date
Return Variables
Variable Name Data Type Description
IV_EVENT_DATES Date_Number Array of dates that feeds into the accrual matrix which can be used for band
change pro-ration. Corresponding accrual values derived from the matrix also
feeds into the matrix formula
Sample Formula
Requirement: The organization has an accrual plan for Vacation where-in workers accrue a set number of days
every year depending on the grade level that they are in. The organization requires band change pro-ration to be
applied for this accrual plan.
Solution: A Global Absence Accrual Event formula such as the one below can be used to feed the date of grade
change into the accrual matrix formula.
/******************************************************************************
FORMULA NAME: ANC_ACREVENT
FORMULA TYPE: Global Absence Accrual Event
DESCRIPTION: This formula returns the dates on which assignment changes have occurred
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 23-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
i=1
m=2
mn = 1
IV_EVENT_DATES[1] = IV_CALEDARSTARTDATE
WHILE PER_HIST_ASG_EFFECTIVE_START_DATE.EXISTS(i)
LOOP
(
IV_EVENT_DATES[m] = IV_CALEDARENDDATE
RETURN IV_EVENT_DATES
For example, an organization might have a vacation plan in which workers enrolled into the plan can accrue days
every year based on their grade. If the grade changes mid-period, then the total accrual needs to be pro-rated based
on the amount of time that the worker spends in each band. This can be achieved by defining an accrual matrix that
is based on grades and using a combination of accrual event formula and accrual matrix formula.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab there is a table in the Accrual Matrix section.
6. Select the defined formula in the Accrual Formula column in the table.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
accrual Number Amount of accrual that the worker accrues in the specific period.
ceiling Number Maximum time that a worker can accrue
carryover Number Maximum unused time that a worker can transfer to the next accrual term
adjustmentvalues Number_Number Array of balance adjustments that when returned by the formula is applied against
the accrual plan enrollment.
adjustmentdates Date_Number Array of dates associated with the array of balance adjustment values to specify
the dates on which each of the balance adjustments need to be applied
adjustmenttypes Text_Number Array of adjustment reasons used for the balance adjustments
absvalues Number_Number Array of absence accrual usages that can be applied against an accrual plan
enrollment. Useful for cases where the absence entry itself is not captured in
Global Absence Management, but rather via other modules (such as payroll
element entries) or even third party systems and the absence deduction against the
accrual plan needs to happen in Fusion. When using this, it should be noted that
absence entries should not be made for the same dates.
absdates Date_Number Array of dates associated with the absence accrual usages on which the deduction
is applied.
accrualCeiling Number Maximum time that a worker can accrue
Solution: A Global Absence Accrual Matrix formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_ACCMAT
FORMULA TYPE: Global Absence Accrual Matrix Formula
DESCRIPTION: This formula returns the pro-rated accrual value for Vacation plan with band change pro-ration
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 20-Aug-2015 DRAFT 1A Initial Version
*******************************************************************************/
DEFAULT FOR IV_CALEDARSTARTDATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR IV_CALEDARENDDATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR IV_EVENT_DATES IS EMPTY_DATE_NUMBER
DEFAULT FOR IV_ACCRUAL_VALUES IS EMPTY_NUMBER_NUMBER
DEFAULT FOR PER_ASG_FTE_VALUE IS 1
i=1
j=2
ln_accrual_total = 0
WHILE IV_EVENT_DATES.EXISTS(j)
LOOP
(
ln_accrual_total = ln_accrual_total + ( (DAYS_BETWEEN(IV_EVENT_DATES[j], IV_EVENT_DATES[i]) + 1) *
IV_ACCRUAL_VALUES[i] )
i = i+1
j = j+1
)
accrual = ROUND(ln_accrual, 2)
RETURN accrual
For example, an organization might have an annual accrual limit rule that generally allows a worker in an accrual
plan to accrue a maximum of 30 days. However, the workers in a particular department accrue an additional 5 days
due to the nature of their work. In such cases, this logic can be composed into the fast formula so that when the
accrual process determines the annual accrual limit, the application dynamically allocates different limits to different
workers depending on their department.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab Plan Limits section, select Formula in the Annual Accrual
Limit Rule field.
6. Select the defined formula from the Limit Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
Input Values
Variable Name Data Type Description
IV_ACCRUAL Number Accrual value received from the accrual matrix
IV_CARRYOVER Number Carryover limit received from accrual matrix
IV_CEILING Number Ceiling limit received from the accrual matrix
IV_ACCRUAL_CEILING Number Annual accrual limit received from the accrual matrix
IV_ACCRUALPERIODSTARTDATE Date Start date of accrual period
IV_ACCRUALPERIODENDDATE Date End date of accrual period
IV_CALEDARSTARTDATE Date Start date of accrual calendar year
IV_CALEDARENDDATE Date End date of accrual calendar year
IV_PLANENROLLMENTSTARTDATE Date Start date of enrollment
IV_PLANENROLLMENTENDDATE Date End date of enrollment
Return Variables
Variable Name Data Type Description
ACCRUALCEILING Number Maximum time that a worker can accrue in annual year
Sample Formula
Requirement: The organization has an annual accrual limit rule, which allows workers to accrue up to a maximum
of 30 days in Annual year. However, workers belonging to business unit ‘OBU1’ accrue up to a maximum of 40 days
in Annual year.
Solution: A Global Absence Annual Accrual Limit formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_ANNUALCEIL
FORMULA TYPE: Global Absences Annual Accrual Limit
DESCRIPTION: This formula returns the annual accrual limit for workers enrolled into Vacation plan differentiated based on their business
unit
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 1-Jan-2018 DRAFT 1A Initial Version
*******************************************************************************/
accrualceiling = 30
IF (PER_ASG_BUSINESS_UNIT_NAME = 'OBU1')
THEN
(ACCRUALCEILING = 40)
RETURN accrualceiling
For example, an organization has a rule that asks for the annual accrual limit to be pro-rated based on FTE value of
the worker. In such a case, after defining the annual accrual limit rule, the annual accrual limit proration rule can be
specified using this formula to return a proration factor, which is multiplied onto the annual accrual limit before
returning the final value against the worker’s enrollment data.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab Plan Limits section, select a value other than None in the
Annual Accrual Limit Rule field.
6. After defining the Annual Accrual Limit Rule as desired, select Formula in the Limit Proration Rule field.
7. Select the defined formula from the Limit Proration Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
Input Values
Variable Name Data Type Description
IV_ACCRUAL Number Accrual value received from the accrual matrix
IV_CARRYOVER Number Carryover limit received from accrual matrix
IV_CEILING Number Ceiling limit received from the accrual matrix
IV_ACCRUAL_CEILING Number Annual accrual limit received from the accrual matrix
IV_ACCRUALPERIODSTARTDATE Date Start date of accrual period
IV_ACCRUALPERIODENDDATE Date End date of accrual period
IV_CALEDARSTARTDATE Date Start date of accrual calendar year
IV_CALEDARENDDATE Date End date of accrual calendar year
IV_PLANENROLLMENTSTARTDATE Date Start date of enrollment
IV_PLANENROLLMENTENDDATE Date End date of enrollment
Return Variables
Variable Name Data Type Description
PRORATIONFACTOR Number Multiplication factor for annual accrual ceiling limit
Sample Formula
Requirement: The organization has an annual accrual limit rule, which allows workers to accrue up to a maximum
of 35 days. This Annual year accrual limit needs to be pro-rated by FTE of workers who have the jobs ‘Wealth
Management’ or ‘Trade Associate’ assigned against their assignment record.
Solution: A Global Absences Annual Accrual Limit Proration fast formula such as the one below can be used.
/***************************************************************************
FORMULA NAME: ANC_ANNUALCEILPRORAT
PRORATIONFACTOR = 1
RETURN PRORATIONFACTOR
For example, an organization might have a carryover rule that generally allows a maximum of 5 days to be carried
over. However, the workers in a particular department are allowed to carryover an additional 2 days due to the
nature of their work. In such cases, this logic can be composed into the fast formula so that when carryover is
calculated, the application dynamically allocates different carryover limits to different workers depending on their
department.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab Plan Limits section, select Formula in the Carryover Rule
field.
6. Select the defined formula from the Carryover Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
carryover Number Maximum unused time that a worker can transfer to the next accrual term
Sample Formula
Requirement: The organization has a carryover rule which allows workers to carry forward only 5 days of their
vacation balance into the next year. Workers belonging to business unit ‘OBU1’ work in shifts and projects which
prevent them from being able to utilize all their annual vacation days on time. Hence, as an exception, workers in
this BU are allowed to carry forward an additional 2 days on top of the 5 days.
Solution: A Global Absence Carryover formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_CRRYOVR
FORMULA TYPE: Global Absence Carryover
DESCRIPTION: This formula returns the carryover limit for workers enrolled into Vacation plan differentiated based on their business unit
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 23-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
carryover = 5
IF (PER_ASG_BUSINESS_UNIT_NAME = 'OBU1')
RETURN carryover
For example, an organization might have a rule which asks for the carryover to be pro-rated based on FTE or even
their job. In such a case, after the carryover rule is defined, the carryover proration rule can be composed to return a
proration factor which will be multiplied onto the carryover amount before returning the final value against the
worker’s enrollment data.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab Plan Limits section, select a value other than None in the
Carryover Rule field.
6. After defining the carryover rule as desired, select Formula in the Carryover Proration field.
7. Select the defined formula from the Carryover Proration Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has a carryover rule which allows workers to carry forward only 5 days of their
vacation balance into the next year. This carryover needs to be pro-rated by FTE for workers who have the jobs
‘Wealth Management’ or ‘Trade Associate’ assigned against their assignment record.
Solution: A Global Absence Carryover Proration formula such as the one below can be used.
/***************************************************************************
FORMULA NAME: ANC_CRRYOVRPRORAT
FORMULA TYPE: Global Absence Carryover Proration
DESCRIPTION: This formula returns the pro-ration factor for the carryover limit for the absence plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 21-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
prorationFactor = 1
RETURN prorationFactor
For example, an organization might have a ceiling rule that generally allows a maximum of 30 days to be accrued by
an worker in a plan. However, the workers in a particular department are allowed to accrue an additional 5 days due
to the nature of their work. In such cases, this logic can be composed into the fast formula so that when ceiling limit
is determined, the application dynamically allocates different limits to different workers depending on their
department.
Navigation:
7. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
8. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
9. In the Plan Type field, select Accrual
10. Click Continue.
11. On the Edit Absence Plan page Accruals tab Plan Limits section, select Formula in the Ceiling Rule field.
12. Select the defined formula from the Ceiling Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has a ceiling rule which allows workers to accrue up to a maximum of 30 days.
Workers belonging to business unit ‘OBU1’ work in shifts and projects which prevent them from always being able to
utilize all their annual vacation days on time. Hence, as an exception, workers in this BU are allowed to accrue up to
a maximum of 40 days in total.
Solution: A Global Absence Ceiling formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_CEIL
FORMULA TYPE: Global Absence Ceiling
DESCRIPTION: This formula returns the ceiling limit for workers enrolled into Vacation plan differentiated based on their business unit
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 23-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
ceiling = 35
IF (PER_ASG_BUSINESS_UNIT_NAME = 'OBU1')
THEN
RETURN ceiling
For example, an organization might have a rule which asks for the ceiling limit to be pro-rated based on FTE or even
their job. In such a case, after the ceiling rule is defined, the ceiling proration rule can be composed to return a
proration factor which will be multiplied onto the ceiling limit before returning the final value against the worker’s
enrollment data.
Navigation:
8. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
9. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
10. In the Plan Type field, select Accrual
11. Click Continue.
12. On the Edit Absence Plan page Accruals tab Plan Limits section, select a value other than None in the
Ceiling Rule field.
13. After defining the ceiling rule as desired, select Formula in the Ceiling Proration field.
14. Select the defined formula from the Ceiling Proration Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has a ceiling rule which allows workers to accrue upto a maximum of 35 days. This
ceiling limit needs to be pro-rated by FTE for workers who have the jobs ‘Wealth Management’ or ‘Trade Associate’
assigned against their assignment record.
Solution: A Global Absence Ceiling Proration formula such as the one below can be used.
/***************************************************************************
FORMULA NAME: ANC_CEILPRORAT
FORMULA TYPE: Global Absence Ceiling Proration
DESCRIPTION: This formula returns the pro-ration factor for the ceiling limit for the absence plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 23-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
prorationFactor = 1
RETURN prorationFactor
For example, if the annual accrual that a worker is eligible for every year is 20 days and the worker has enrolled into
the plan mid-year, the organization would like to grant the worker on 10 days for the year of enrollment since he was
participating in the plan only for half the year. Similarly, if a worker un-enrols from a plan mid-year, the total accrual
for that year would need to be reduced from 20 to 10 – again because the worker was enrolled into the plan for only
half the year.
This formula is invoked when enrollment or un-enrollment dates fall within the repeating period for which the accrual
is being processed.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab Accrual Attributes section, select the desired formula in the
Partial Accrual Period Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
accrual Number Partial period pro-rated accrual value returned for the particular partial repeating
period. Value is returned gets added as an accrual line. For processing termination
of enrollment for front loaded plans, the variable should return a negative value, to
deduct pro-rated amount from the existing annual accrual value.
Sample Formula
Requirement: The organization has a partial period rule where accruals are pro-rated based on months spent in
plan.
Solution: A Global Absence Partial Period Accrual Rate formula such as the one below can be used.
/***************************************************************************
FORMULA NAME: ANC_PARACC
FORMULA TYPE: Global Absence Partial Period Accrual Rate Formula
DESCRIPTION: This formula returns the accrual for mid-period enrollments and un-enrollments for Vacation absence plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
ln_same_year_duration = 0
lc_first_month_flag = 'N'
ln_first_month_accrual = 0
ln_participation_duration = 0
ln_term_duration = 1 + (TO_NUMBER(TO_CHAR(IV_CALEDARENDDATE, 'yy')) - TO_NUMBER(TO_CHAR(IV_CALEDARSTARTDATE,
'yy'))) * 12 + (TO_NUMBER(TO_CHAR(IV_CALEDARENDDATE, 'mm')) - TO_NUMBER(TO_CHAR(IV_CALEDARSTARTDATE, 'mm')))
/*Capturing this in case un-enrollment occurred in the same month as calendar start month*/
ln_first_month_accrual = IV_ACCRUAL * (ln_participation_duration / ln_term_duration)
accrual = ROUND(prorated_accrual,2)
RETURN accrual
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Plan Attributes tab General Attributes section, select the defined formula
from the Conversion Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
START_DATE Date
IV_START_DATE Date This is the start date of the absence being entered
IV_END_DATE Date This is the end date of the absence being entered
IV_START_DURATION Number This is the start date duration for the absence being entered. This is applicable
when absence entry is being recorded against an Elapsed based work schedule
IV_END_DURATION Number This is the end date duration for the absence being entered. This is applicable
when absence entry is being recorded against an Elapsed based work schedule
IV_START_TIME Text This is the start time on the start date for the absence being entered. This is
applicable when absence entry is being recorded against a Time based work
schedule. For elapsed work schedules it will be 00:00.
IV_END_TIME Text This is the end time on the end date for the absence being entered. This is
applicable when absence entry is being recorded against a Time based work
schedule. For elapsed work schedules it will be 23:59.
IV_UOM Text Unit of measure of the current absence entry
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has an accrual plan where the accrual usage is only 50% for workers who work in
an office whose location is in California, whereas the rest of the workers the accrual usage is same as the absence
duration.
Solution: A Global Absence Plan Duration formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_PLN_DUR
FORMULA TYPE: Global Absence Plan Duration
DESCRIPTION: This formula evaluates the entitlement usage based on worker location
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 02-Sep-2015 DRAFT 1A Initial Version
*******************************************************************************/
DEFAULT FOR IV_START_DATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR IV_END_DATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR IV_START_TIME IS '00:00'
DEFAULT FOR IV_END_TIME IS '23:59'
DEFAULT FOR PER_ASG_LOC_REGION2 IS ' XXXXXXXXXX'
INPUTS ARE IV_START_DATE (date), IV_END_DATE (date), IV_START_TIME(text),IV_END_TIME(text)
ln_entry_duration_d = 0
ln_unrounded_duration_d = 0
IF (PER_ASG_LOC_REGION2 = 'CA')
THEN
(
ln_entry_duration_d = ln_entry_duration_d * 0.5
)
DURATION = ROUND(ln_entry_duration_d,2)
RETURN DURATION
For example, in an organization the absence plan un-enrollment rule could be such that for termination, workers
have to serve a notice period of one month during which time the worker should not be enrolled into any absence
plan. In such a case a Global Absence Plan Enrollment End formula can be composed to derive this alternate
enrollment end date.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Participation tab, Termination Rules section, select Formula in the
Enrollment End Rule field.
6. Select the defined formula from the End Date Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: Upon entering of termination information, the worker needs to be un-enrolled from the plan, one
month before the actual termination date (in this case, the event date).
Solution: A Global Absence Plan Enrollment End formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_ENRMNTEND
FORMULA TYPE: Global Absence Plan Enrollment End
DESCRIPTION: This formula returns the Enrollment End Date for absence plan enrollments by subtracting 1 month from the termination
date
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 23-Jul-2015 DRAFT 1A Initial Version
******************************************************************************/
RETURN enrollmentEndDate
For example, in an organization the absence plan enrollment rule could be such that only Workers are allowed to
enroll into the plan from the hire date, whereas Interns and Graduates have to complete a waiting period of 1 month
before being enrolled into the plan. In such cases, the Plan Enrollment Start formula can be used to derive the
alternate enrollment date (one that is different from the hire date or the date passed into the parameter when
submitting the Update Accrual Plan Enrollments batch job).
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Participation tab, Enrollment Rules section, select Formula in the
Enrollment Start Rule field.
6. Select the defined formula from the Start Date Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: All new Interns and Graduates who are hired into the organization should get enrolled into the plan
only after one month of employment. All other workers should get enrolled into the plan as of hire date.
Solution: A Global Absence Plan Enrollment Start formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_ENRMNTSTART
FORMULA TYPE: Global Absence Plan Enrollment Start
DESCRIPTION: This formula returns the Enrollment Start Date for absence plan enrollments by adding 1 month to the event date for
Interns and Graduates
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 23-Jul-2015 DRAFT 1A Initial Version
******************************************************************************/
IF (PER_ASG_USER_PERSON_TYPE != 'Worker')
THEN (enrollmentStartDate = ADD_MONTHS(enrollmentStartDate, 1))
RETURN enrollmentStartDate
For example, if the calendar leave year for a vacation plan in an organization is based on the original hire date of an
Worker, then a formula of this type can be composed to return the required date to the plan calculations.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Plan Attributes tab, Plan Term section, select Anniversary year in the
Type field.
6. Then select Formula in the Anniversary Event Rule field.
7. Select the defined formula from the Anniversary Event Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
START_DATE Date
anniversaryDate Date Date used to determine the leave year start date for anniversary based accrual
plan term
Sample Formula
Requirement: The organization has an accrual plan term that is based on the anniversary of the Worker. If the
person is a regular Worker, then the leave year is to be based on the earliest start date of the Worker. If the person
is an Intern or Graduate, then the leave year is to be based on the latest legal employer hire date.
Solution: A Global Absence Plan Period Anniversary Event Date formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_PLN_PRD_ANNIV_DATE
FORMULA TYPE: Global Absence Plan Period Anniversary Event Date
DESCRIPTION: This formula returns the calendar leave year start date for Anniversary year based on the person type
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 10-Aug-2015 DRAFT 1A Initial Version
*******************************************************************************/
IF (PER_ASG_USER_PERSON_TYPE = 'Worker')
THEN
(
anniversaryDate = PER_PERSON_ENTERPRISE_HIRE_DATE
)
ELSE
(
anniversaryDate = PER_ASG_REL_DATE_START
)
RETURN anniversaryDate
For example, if the Absence Payment rate definition associated with the same accrual plan varies depending on the
location of the Worker being evaluated, a Global Absence Plan Use Rate can be composed to associate the
corresponding rate definition to the Worker.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Entries and Balances tab, Rates section, select Formula in the required
rate rule field (Absence Payment Rate Rule, Discretionary Disbursement Rate Rule, Final Disbursement
Rate Rule or Liability Rate Rule).
6. Select the defined formula from the Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_CATEGORY_ID Number
ABSENCE_ENTRY_ID Number
ABSENCE_MATERNITY_ID Number
ABSENCE_REASON_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
Input Values
Variable Name Data Type Description
IV_ATTRIBUTE_CATEGORY Text Context of the DFF row for Absence Recordings DFF
IV_ATTRIBUTE_1* Text First text segment of the Absence Recordings DFF
IV_ATTRIBUTE_NUMBER1* Number First number segment of the Absence Recordings DFF
IV_ATTRIBUTE_DATE1* Date First date segment of the Absence Recordings DFF
IV_ATTRIBUTE_ARR Text_Number Array of text segments of the Absence Recordings DFF. The index indicates the
segment number. Eg: IV_ATTRIBUTE_ARR[1] holds the value of segment
ATTRIBUTE1 in ANC_PER_ABS_ENTRIES table. The index begins at 1 and ends
at 30. If a particular index is used and data does not exist, the application would
throw an error. Hence it is a good practice to first check if data exists before using
the input value. This can be done using the “exists” command. Eg:
if(IV_ATTRIBUTE_ARR.exists(1))
IV_ATTRIBUTE_NUMBER_ARR Number_Num Array of number segments of the Absence Recordings DFF. The index indicates
ber the segment number. Eg: IV_ATTRIBUTE_NUMBER_ARR[1] holds the value of
segment ATTRIBUTE_NUMBER1 in ANC_PER_ABS_ENTRIES table. The index
begins at 1 and ends at 30. If a particular index is used and data does not exist, the
application would throw an error. Hence it is a good practice to first check if data
exists before using the input value. This can be done using the “exists” command.
Eg: if(IV_ATTRIBUTE_NUMBER_ARR.exists(1))
IV_ATTRIBUTE_DATE_ARR Date_Number Array of date segments of the Absence Recordings DFF. The index indicates the
segment number. Eg: IV_ATTRIBUTE_DATE_ARR[1] holds the value of segment
ATTRIBUTE_DATE1 in ANC_PER_ABS_ENTRIES table. The index begins at 1
and ends at 30. If a particular index is used and data does not exist, the application
would throw an error. Hence it is a good practice to first check if data exists before
using the input value. This can be done using the “exists” command. Eg:
if(IV_ATTRIBUTE_DATE_ARR.exists(1))
IV_INFORMATION_CATEGORY Text Context of the DDF row for ANC_PER_ABS_ENTRIES DDF
IV_INFORMATION_1* Text First text segment of the ANC_PER_ABS_ENTRIES DDF
IV_INFORMATION_NUMBER1* Number First number segment of the ANC_PER_ABS_ENTRIES DDF
IV_INFORMATION_DATE1* Date First date segment of the ANC_PER_ABS_ENTRIES DDF
IV_INFORMATION_ARR Text_Number Array of text segments of the ANC_PER_ABS_ENTRIES DDF. The index indicates
the segment number. Eg: IV_INFORMATION_ARR[1] holds the value of segment
INFORMATION1 in ANC_PER_ABS_ENTRIES table. The index begins at 1 and
ends at 30. If a particular index is used and data does not exist, the application
would throw an error. Hence it is a good practice to first check if data exists before
using the input value. This can be done using the “exists” command. Eg:
if(IV_INFORMATION_ARR.exists(1))
IV_INFORMATION_NUMBER_ARR Number_Num Array of number segments of the ANC_PER_ABS_ENTRIES DDF. The index
ber indicates the segment number. Eg: IV_INFORMATION_NUMBER_ARR[1] holds
the value of segment INFORMATION_NUMBER1 in ANC_PER_ABS_ENTRIES
table. The index begins at 1 and ends at 30. If a particular index is used and data
does not exist, the application would throw an error. Hence it is a good practice to
first check if data exists before using the input value. This can be done using the
“exists” command. Eg: if(IV_INFORMATION_NUMBER_ARR.exists(1))
IV_INFORMATION_DATE_ARR Date_Number Array of date segments of the ANC_PER_ABS_ENTRIES DDF. The index
indicates the segment number. Eg: IV_INFORMATION_DATE_ARR[1] holds the
value of segment INFORMATION_DATE1 in ANC_PER_ABS_ENTRIES table. The
Return Variables
Variable Name Data Type Description
rateCode Text Rate code associate with the accrual rate rule
Sample Formula
Requirement: The organization has an absence payment rate rule for the accrual plan that depends on the
hourly/salaried nature of the Worker. Separate rate definition rules exist for each category of Workers.
Solution: A Global Absence Plan Use Rate formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_PLN_RATE
FORMULA TYPE: Global Absence Plan Use Rate
DESCRIPTION: This formula returns the rate code for the rate definition that needs to be associated with the accrual plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 10-Aug-2015 DRAFT 1A Initial Version
*******************************************************************************/
IF (PER_ASG_HOURLY_SALARIED_CODE = 'H')
THEN
(
rateCode = 'HOURLY_RATE'
)
ELSE
(
rateCode = 'ANNUAL_RATE'
)
RETURN rateCode
For example, if an organization has an accrual plan where the accrual rate varies based on Worker grades, and on
top of that if a multiplication factor such as 0.75 needs to be applied depending on the Worker work location, then
the band based on grades can be defined in the accrual matrix and the multiplication factor of 0.75 based on work
location can be defined in the Global Absence Proration formula.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab, Accrual Attributes section, select Formula in the Accrual
Proration Rule field.
6. Select the defined formula from the Accrual Proration Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has an accrual matrix based on grade of Workers. On top of the values defined by
the matrix, Workers who belong to jobs ‘Wealth Management’ or ‘Trade Associate’ should have their annual accrual
amount pro-rated by a factor of 0.75 as they have flexible working arrangements and do not fall under the standard
absence accrual benefit policy of the organization.
Solution: Once the accrual rules are defined in the accrual matrix, a Global Absence Proration formula such as the
one below can be used.
/***************************************************************************
FORMULA NAME: ANC_PRORAT
FORMULA TYPE: Global Absence Proration
DESCRIPTION: This formula returns the pro-ration factor accrual absence plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 22-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
prorationFactor = 1
RETURN prorationFactor
For example, an organization might have a rollover rule that generally allows a maximum of 30 days to be rolled
over to another plan at the end of plan year. However, the workers in a particular department are allowed to rollover
an additional 10 day. In such cases, this logic can be composed into the fast formula so that when rollover limit is
determined, the application dynamically allocates different limits to different workers depending on their department.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab Year End Processing section, select Limited by formula in
the Rollover Rule field.
6. Select the defined formula from the Limit Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
Input Values
Return Variables
Variable Name Data Type Description
ROLLOVER Number Maximum amount that a worker can rollover at the end of year
Sample Formula
Requirement: The organization has a rollover limit rule, which allows workers to rollover up to a maximum of 30
days to another plan at the end of year. However, workers belonging to business unit ‘OBU1’ are allowed to rollover
up to a maximum of 40 days at the end of year.
Solution: A Global Absence Rollover formula such as the one below can be used.
/***************************************************************************
FORMULA NAME: ANC_ROLLOVER
FORMULA TYPE: Global Absence Rollover
DESCRIPTION: This formula calculates and returns the rollover limit amount for the vacation plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 23-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
DEFAULT FOR PER_ASG_BUSINESS_UNIT_NAME IS ' '
ROLLOVER=30
IF (PER_ASG_BUSINESS_UNIT_NAME = 'OBU1')
THEN
(ROLLOVER = 40)
RETURN ROLLOVER
For example, an organization might have a rule that requires the rollover limit to be pro-rated based on FTE of a
worker. In such a case, after the rollover rule is defined, the rollover proration rule can be composed to return a
proration factor, which will be multiplied onto the rollover limit before returning the final value against the worker’s
enrollment data.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab Year End Processing section, select a value other than Not
Applicable in the Rollover Rule field.
6. After defining the ceiling rule as desired, select Formula in the Limit Proration Rule field.
7. Select the defined formula from the Limit Proration Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
Input Values
Variable Name Data Type Description
IV_ACCRUAL Number Accrual value received from the accrual matrix
IV_CARRYOVER Number Carryover limit received from accrual matrix
IV_CEILING Number Ceiling limit received from the accrual matrix
IV_ACCRUAL_CEILING Number Annual accrual limit received from the accrual matrix
IV_ACCRUALPERIODSTARTDATE Date Start date of accrual period
IV_ACCRUALPERIODENDDATE Date End date of accrual period
IV_CALEDARSTARTDATE Date Start date of accrual calendar year
IV_CALEDARENDDATE Date End date of accrual calendar year
IV_PLANENROLLMENTSTARTDATE Date Start date of enrollment
IV_PLANENROLLMENTENDDATE Date End date of enrollment
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has a rollover limit rule at the end of year, which allows workers to rollover to a
maximum of 30 days to another plan. This rollover limit needs to be pro-rated by FTE for workers who have the jobs
‘Wealth Management’ or ‘Trade Associate’ assigned against their assignment record.
Solution: A Global Absence Rollover formula such as the one below can be used.
/***************************************************************************
FORMULA NAME: ANC_ROLLOVER_PRORATION
FORMULA TYPE: Global Absence Rollover Proration
DESCRIPTION: This formula calculates and returns the rollover amount proration for the vacation plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 23-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
DEFAULT FOR PER_ASG_FTE_VALUE IS 1
DEFAULT FOR PER_ASG_JOB_NAME IS ' '
ROLLOVERPRORATIONFACTOR = 1
IF (PER_ASG_JOB_NAME = 'Wealth Management Consultant' OR PER_ASG_JOB_NAME = 'Trade Associate')
THEN
(ROLLOVERPRORATIONFACTOR = ROUND(PER_ASG_FTE_VALUE,2))
RETURN ROLLOVERPRORATIONFACTOR
For example, there are 3 plans – Plan A, Plan B and Plan C. These 3 plans belong to same plan category (Category
One). Now employee is about to lose eligibility of Plan A, meanwhile Plan B and Plan C will be enrolled to this
employee. If transfer rule is defined, system will not transfer any balance without this particular Absence Target Plan
fast formula, because it doesn’t know which one to transfer to (Plan B or Plan C).
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Participation tab Transfer Rules section, check the box ‘Transfer positive
balance’, then select a non-blank value in the Limit Rule field , it is required.
6. Select the defined formula from the Target Plan Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
Input Values
Variable Name Data Type Description
IV_ACCRUAL Number Accrual value received from the accrual matrix
IV_CARRYOVER Number Carryover limit received from accrual matrix
IV_CEILING Number Ceiling limit received from the accrual matrix
IV_ACCRUAL_CEILING Number Annual accrual limit received from the accrual matrix
IV_ACCRUALPERIODSTARTDATE Date Start date of accrual period
IV_ACCRUALPERIODENDDATE Date End date of accrual period
IV_CALEDARSTARTDATE Date Start date of accrual calendar year
IV_CALEDARENDDATE Date End date of accrual calendar year
IV_PLANENROLLMENTSTARTDATE Date Start date of enrollment
IV_PLANENROLLMENTENDDATE Date End date of enrollment
Return Variables
Variable Name Data Description
Type
TARGET_PLAN_NAME Text Target plan name which a worker can transfer to when loss of plan eligibility happens
Sample Formula
Requirement: The organization has an enrollment transfer rule, and there are multiple plans using same plan
category. If employee is about to lose eligibility of Plan_A, meanwhile Plan_B and Plan_C will be enrolled and they
share same plan category. Now we want to choose different target plan based on different business unit.
Solution: A Global Absence Target Plan formula such as the one below can be used.
/***************************************************************************
FORMULA NAME: ANC_ENRT_TARGET_FF
FORMULA TYPE: Global Absence Rollover
DESCRIPTION: This formula calculates and returns the rollover limit amount for the vacation plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 01-Jan-2018 DRAFT 1A Initial Version
*******************************************************************************/
TARGET_PLAN_NAME=’Plan_B’
IF (PER_ASG_BUSINESS_UNIT_NAME = 'OBU1')
THEN
TARGET_PLAN_NAME=’Plan_C’
For example, an organization might have an enrollment transfer rule that generally allows a maximum of 30 days to
be transferred to another plan when current plan loses eligibility. However, the workers in a particular department
are allowed to transfer an additional 10 days due to the nature of their work. In such cases, this logic can be
composed into the fast formula so that when enrollment transfer limit is determined, the application dynamically
allocates different limits to different workers depending on their department.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Participation tab Transfer Rules section, check the box ‘Transfer positive
balance’, then select Limited by Formula in the Limit Rule field.
6. Select the defined formula from the Limit Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
Input Values
Variable Name Data Type Description
IV_ACCRUAL Number Accrual value received from the accrual matrix
IV_CARRYOVER Number Carryover limit received from accrual matrix
IV_CEILING Number Ceiling limit received from the accrual matrix
IV_ACCRUAL_CEILING Number Annual accrual limit received from the accrual matrix
IV_ACCRUALPERIODSTARTDATE Date Start date of accrual period
IV_ACCRUALPERIODENDDATE Date End date of accrual period
IV_CALEDARSTARTDATE Date Start date of accrual calendar year
IV_CALEDARENDDATE Date End date of accrual calendar year
IV_PLANENROLLMENTSTARTDATE Date Start date of enrollment
IV_PLANENROLLMENTENDDATE Date End date of enrollment
Return Variables
Variable Name Data Type Description
TRANSFER Number Maximum amount that a worker can transfer when loss of plan eligibility happens
Sample Formula
Requirement: The organization has an enrollment transfer limit rule, which allows workers to transfer up to a
maximum of 30 days when loss of plan eligibility happens. But workers belonging to business unit ‘OBU1’ are
allowed to transfer up to a maximum of 40 days when loss of plan eligibility happens.
Solution: A Global Absence Transfer formula such as the one below can be used.
/***************************************************************************
FORMULA NAME: ANC_ENRT_TRANSFER
FORMULA TYPE: Global Absence Transfer
DESCRIPTION: This formula calculates and returns the rollover limit amount for the vacation plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 23-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
DEFAULT FOR PER_ASG_BUSINESS_UNIT_NAME IS ' '
TRANSFER=30
IF (PER_ASG_BUSINESS_UNIT_NAME = 'OBU1')
THEN
(TRANSFER = 40)
RETURN TRANSFER
For example, an organization might have a rule which asks for the enrollment transfer limit to be pro-rated based on
FTE or even their job. In such a case, after the enrollment transfer rule is defined, the transfer proration rule can be
composed to return a proration factor which will be multiplied onto the enrollment transfer limit before returning the
final value against the worker’s enrollment data.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Participation tab Transfer Rules section, check the box ‘Transfer positive
balance’, then select a value other than Unlimited in the Limit Rule field.
6. After defining the limit rule as desired, select Formula in the Limit Proration Rule field.
7. Select the defined formula from the Limit Proration Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
Input Values
Variable Name Data Type Description
IV_ACCRUAL Number Accrual value received from the accrual matrix
IV_CARRYOVER Number Carryover limit received from accrual matrix
IV_CEILING Number Ceiling limit received from the accrual matrix
IV_ACCRUAL_CEILING Number Annual accrual limit received from the accrual matrix
IV_ACCRUALPERIODSTARTDATE Date Start date of accrual period
IV_ACCRUALPERIODENDDATE Date End date of accrual period
IV_CALEDARSTARTDATE Date Start date of accrual calendar year
IV_CALEDARENDDATE Date End date of accrual calendar year
IV_PLANENROLLMENTSTARTDATE Date Start date of enrollment
IV_PLANENROLLMENTENDDATE Date End date of enrollment
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has an enrollment transfer limit proration rule when loss of plan eligibility happens,
which allows workers to transfer to a maximum of 30 days. This transfer limit needs to be pro-rated by FTE for
workers who have the jobs ‘Wealth Management’ or ‘Trade Associate’ assigned against their assignment record.
Solution: A Global Absence Transfer Proration formula such as the one below can be used.
/***************************************************************************
FORMULA NAME: ANC_ENRT_TRANSFERPRO
FORMULA TYPE: Global Absence Transfer Proration
DESCRIPTION: This formula returns the pro-ration factor for the rollover limit for the absence plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 01-Jan-2018 DRAFT 1A Initial Version
*******************************************************************************/
DEFAULT FOR PER_ASG_FTE_VALUE IS 1
DEFAULT FOR PER_ASG_JOB_NAME IS ' '
TRANSFERPRORATIONFACTOR = 1
RETURN TRANSFERPRORATIONFACTOR
For example, an organization might have a vesting period rule for new joiners where-in Workers who are hired as
Interns or Graduates should complete 30 days of employment before they can use their vacation balance. Here the
vesting period formula can be composed to look at the person type to determine the period applicable for the
particular enrollment.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Accrual
4. Click Continue.
5. On the Edit Absence Plan page Accruals tab, Accrual Attributes section, select Formula in the Accrual
Vesting Rule field.
6. Select the defined formula from the Vesting Period Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
vestingUOM Text Unit of measure for the vesting period duration. UoM can be Calendar Days (‘C’),
Weeks (‘W’), Months (‘M’) or Years (‘Y)
vestingUnits Number Period for which time-off is accrued, but cannot be used by worker.
Sample Formula
Requirement: The organization has a vesting rule which allows newly joined interns and graduates to avail their
vacation balance only after 30 days from enrollment into the plan.
Solution: A Global Absence Vesting Periodformula such as the one below can be used.
/***************************************************************************
FORMULA NAME: ANC_VESTPRD
FORMULA TYPE: Global Absence Vesting Period
DESCRIPTION: This formula calculates and returns the vesting period duration for the vacation plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 21-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
vestingUOM = 'C'
vestingUnits = 0
IF (PER_ASG_USER_PERSON_TYPE != 'Worker')
THEN
RETURN vestingUOM,vestingUnits
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Qualification
4. Click Continue.
5. On the Edit Absence Plan page Plan Attributes tab, General Attributes section, select the defined formula
in the Conversion Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
START_DATE Date
Input Values
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has a qualification plan where the entitlement usage is only 50% for Workers who
work in an office whose location is in California, whereas the rest of the Workers the entitlement usage is same as
the absence duration.
Solution: A Global Absence Plan Duration formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_PLN_DUR
FORMULA TYPE: Global Absence Plan Duration
DESCRIPTION: This formula evaluates the entitlement usage based on Worker location
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 02-Sep-2015 DRAFT 1A Initial Version
*******************************************************************************/
DEFAULT FOR IV_START_DATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR IV_END_DATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR IV_START_TIME IS '00:00'
DEFAULT FOR IV_END_TIME IS '23:59'
DEFAULT FOR PER_ASG_LOC_REGION2 IS ' XXXXXXXXXX'
INPUTS ARE IV_START_DATE (date), IV_END_DATE (date), IV_START_TIME(text),IV_END_TIME(text)
IF (PER_ASG_LOC_REGION2 = 'CA')
THEN
(
ln_entry_duration_d = ln_entry_duration_d * 0.5
)
DURATION = ROUND(ln_entry_duration_d,2)
RETURN DURATION
For example, an organization might have a rule that gives Workers in a certain location additional fully paid days of
Maternity entitlement when compared to Workers working in any other location.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Qualification
4. Click Continue.
5. On the Edit Absence Plan page Entitlements tab, Qualification Band Matrix table, create a matrix line by
clicking on the Add button.
6. With the matrix line selected, in the Qualification Details table, click on the Add button.
7. Choose the defined formula in the Entitlement Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_CATEGORY_ID Number
ABSENCE_ENTRY_ID Number
ABSENCE_MATERNITY_ID Number
ABSENCE_REASON_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has an entitlement payment band that is based on the location. Workers belonging
to a location that is in California receive an additional 10 days of fully paid entitlement for Maternity Leave.
Solution: A Global Absence Band Entitlement formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_BND_ENTLMNT
FORMULA TYPE: Global Absence Band Entitlement
DESCRIPTION: This formula evaluates the entitlement band based on location of Worker
Change History:
IF (PER_ASG_LOC_REGION2 = 'CA')
THEN
(
BANDPAYFACTOR = 100
BANDENTITLEMENT = 130
)
ELSE
(
BANDPAYFACTOR = 100
BANDENTITLEMENT = 120
)
For example, an organization might have a rule for Maternity entitlements according to which the qualification date is
on the absence start date if actual dates are entered or if it is not entered, then the qualification date needs to be the
event date (actual if available, or else, the planned date). For including such conditional logic to determine the
qualification date, formulas of this type can be used.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Qualification
4. Click Continue.
5. On the Edit Absence Plan page Participations tab, Enrollment Rules section, choose Formula in the
Qualification Date Rule field.
6. Select the defined formula in the Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has a rule for Maternity entitlements according to which the qualification date is on
the absence start date if actual dates are entered. If this is not provided, then the qualification date needs to be the
event date (actual if available, or else, the planned date).
Solution: A Global Absence Enrollment Start Date formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_ENROLMNT_START
FORMULA TYPE: Global Absence Plan Enrollment Start Date
DESCRIPTION: This formula returns the qualification date as of which participation to qualification plan needs to be terminated
Change History:
Name Date Version Comments
RETURN ENROLLMENTSTARTDATE
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Qualification
4. Click Continue.
5. On the Edit Absence Plan page Entitlements tab, Entitlement Attributes section, choose Formula in the
Entitlement Definition Type choice button field.
6. Select the defined formula in the Entitlement Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_CATEGORY_ID Number
ABSENCE_ENTRY_ID Number
ABSENCE_MATERNITY_ID Number
ABSENCE_REASON_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_ID Number
START_DATE Date
Sample Formula
Requirement: The organization has an entitlement payment band structures that is based on the location that the
Worker works out of. Workers belonging to a location that is in California follow a different band structure as
compared to Workers in the rest of the country.
Solution: A Global Absence Plan Entitlement formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_PLN_ENTLMNT
FORMULA TYPE: Global Absence Plan Entitlement
DESCRIPTION: This formula evaluates the entitlement band based on location of Worker
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
IF (PER_ASG_LOC_REGION2 = 'CA')
THEN
(
BAND1PAYFACTOR = 100
BAND1ENTITLEMENT = 50
BAND2PAYFACTOR = 75
BAND2ENTITLEMENT = 50
BAND3PAYFACTOR = 50
BAND3ENTITLEMENT = 50
)
ELSE
(
BAND1PAYFACTOR = 100
BAND1ENTITLEMENT = 40
BAND2PAYFACTOR = 75
BAND2ENTITLEMENT = 40
BAND3PAYFACTOR = 50
BAND3ENTITLEMENT = 40
)
For example, if the start date for plan term in a roll backward period needs to be 365 days prior to the absence end
date, required logic can be composed into this formula and the reference date returned.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Qualification
4. Click Continue.
5. On the Edit Absence Plan page Plan Attributes tab, Plan Term section, choose Rolling backward in the
Type field.
6. Select Formula in the Start Rule field.
7. Choose the defined formula in the Start Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_CATEGORY_ID Number
ABSENCE_ENTRY_ID Number
ABSENCE_MATERNITY_ID Number
ABSENCE_REASON_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
REFERENCEDATE Date Start date for the Rolling Backward plan term.
DEBUG_MESSAGE Text Text passed into this output variable would get logged if application logging is
enabled. Useful for debugging.
Sample Formula
Requirement: The organization has a qualification plan with a rolling backward plan term which starts 365 days
prior to the absence end date of the absence entry.
Solution: A Global Absence Plan Roll Backward End formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_PLN_ROLL_BKWRD_END
FORMULA TYPE: Global Absence Plan Roll Backward End
DESCRIPTION: This formula returns the end date for a Rolling Backward qualification plan term
Change History:
Name Date Version Comments
RETURN REFERENCE_DATE
For example, if a rolling forward term needs to be searched for 365 days prior to the absence start date, required
logic can be composed into this formula and the reference date returned.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Qualification
4. Click Continue.
5. On the Edit Absence Plan page Plan Attributes tab, Plan Term section, choose Rolling forward in the
Type field.
6. Select Formula in the Start Rule field.
7. Choose the defined formula in the Start Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_CATEGORY_ID Number
ABSENCE_ENTRY_ID Number
ABSENCE_MATERNITY_ID Number
ABSENCE_REASON_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization has a qualification plan with a rolling forward plan term which needs to be searched
for 365 days prior to the start date of the absence entry.
Solution: A Global Absence Plan Roll Forward Start formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_PLN_ROLL_FWD_END
FORMULA TYPE: Global Absence Plan Roll Forward Start
DESCRIPTION: This formula returns the reference date to which a Rolling Forward term is searched for
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 23-Sep-2016 DRAFT 1A Initial Version
RETURN REFERENCE_DATE
For example, if the rate definition associated with the same qualification plan varies depending on the location of the
Worker being evaluated, a Global Absence Plan Use Rate can be composed to associate the corresponding rate
definition to the Worker.
Navigation:
1. In the Absence Administration work area, click Manage Absence Plans to open the Manage Absence
Plans page.
2. On the Search Results section toolbar, click Create to open the Create Absence Plan dialog box.
3. In the Plan Type field, select Qualification
4. Click Continue.
5. On the Edit Absence Plan page Entries and Balances tab, Rates section, choose Formula in the Absence
Payment Rule field.
6. Select the defined formula in the Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_CATEGORY_ID Number
ABSENCE_ENTRY_ID Number
ABSENCE_MATERNITY_ID Number
ABSENCE_REASON_ID Number
ABSENCE_TYPE_ID Number
ACCRUAL_PLAN_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
Input Values
Variable Name Data Type Description
IV_ATTRIBUTE_CATEGORY Text Context of the DFF row for Absence Recordings DFF
IV_ATTRIBUTE_1* Text First text segment of the Absence Recordings DFF
IV_ATTRIBUTE_NUMBER1* Number First number segment of the Absence Recordings DFF
IV_ATTRIBUTE_DATE1* Date First date segment of the Absence Recordings DFF
IV_ATTRIBUTE_ARR Text_Number Array of text segments of the Absence Recordings DFF. The index indicates the
segment number. Eg: IV_ATTRIBUTE_ARR[1] holds the value of segment
ATTRIBUTE1 in ANC_PER_ABS_ENTRIES table. The index begins at 1 and ends
at 30. If a particular index is used and data does not exist, the application would
throw an error. Hence it is a good practice to first check if data exists before using
the input value. This can be done using the “exists” command. Eg:
if(IV_ATTRIBUTE_ARR.exists(1))
IV_ATTRIBUTE_NUMBER_ARR Number_Num Array of number segments of the Absence Recordings DFF. The index indicates
ber the segment number. Eg: IV_ATTRIBUTE_NUMBER_ARR[1] holds the value of
segment ATTRIBUTE_NUMBER1 in ANC_PER_ABS_ENTRIES table. The index
begins at 1 and ends at 30. If a particular index is used and data does not exist, the
application would throw an error. Hence it is a good practice to first check if data
exists before using the input value. This can be done using the “exists” command.
Eg: if(IV_ATTRIBUTE_NUMBER_ARR.exists(1))
IV_ATTRIBUTE_DATE_ARR Date_Number Array of date segments of the Absence Recordings DFF. The index indicates the
segment number. Eg: IV_ATTRIBUTE_DATE_ARR[1] holds the value of segment
ATTRIBUTE_DATE1 in ANC_PER_ABS_ENTRIES table. The index begins at 1
and ends at 30. If a particular index is used and data does not exist, the application
would throw an error. Hence it is a good practice to first check if data exists before
using the input value. This can be done using the “exists” command. Eg:
if(IV_ATTRIBUTE_DATE_ARR.exists(1))
IV_INFORMATION_CATEGORY Text Context of the DDF row for ANC_PER_ABS_ENTRIES DDF
IV_INFORMATION_1* Text First text segment of the ANC_PER_ABS_ENTRIES DDF
IV_INFORMATION_NUMBER1* Number First number segment of the ANC_PER_ABS_ENTRIES DDF
IV_INFORMATION_DATE1* Date First date segment of the ANC_PER_ABS_ENTRIES DDF
IV_INFORMATION_ARR Text_Number Array of text segments of the ANC_PER_ABS_ENTRIES DDF. The index indicates
the segment number. Eg: IV_INFORMATION_ARR[1] holds the value of segment
INFORMATION1 in ANC_PER_ABS_ENTRIES table. The index begins at 1 and
ends at 30. If a particular index is used and data does not exist, the application
would throw an error. Hence it is a good practice to first check if data exists before
using the input value. This can be done using the “exists” command. Eg:
if(IV_INFORMATION_ARR.exists(1))
IV_INFORMATION_NUMBER_ARR Number_Num Array of number segments of the ANC_PER_ABS_ENTRIES DDF. The index
ber indicates the segment number. Eg: IV_INFORMATION_NUMBER_ARR[1] holds
the value of segment INFORMATION_NUMBER1 in ANC_PER_ABS_ENTRIES
table. The index begins at 1 and ends at 30. If a particular index is used and data
does not exist, the application would throw an error. Hence it is a good practice to
first check if data exists before using the input value. This can be done using the
“exists” command. Eg: if(IV_INFORMATION_NUMBER_ARR.exists(1))
IV_INFORMATION_DATE_ARR Date_Number Array of date segments of the ANC_PER_ABS_ENTRIES DDF. The index
indicates the segment number. Eg: IV_INFORMATION_DATE_ARR[1] holds the
value of segment INFORMATION_DATE1 in ANC_PER_ABS_ENTRIES table. The
index begins at 1 and ends at 30. If a particular index is used and data does not
exist, the application would throw an error. Hence it is a good practice to first check
if data exists before using the input value. This can be done using the “exists”
Return Variables
Variable Name Data Type Description
RATECODE Text Rate code for rate associated with qualification plan
DEBUG_MESSAGE Text Text passed into this output variable would get logged if application logging is
enabled. Useful for debugging.
Sample Formula
Requirement: The organization has an absence payment rate rule for the qualification plan that depends on the
hourly/salaried nature of the Worker. Separate rate definition rules exist for each category of Workers.
Solution: A Global Absence Plan Use Rate formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_PLN_RATE
FORMULA TYPE: Global Absence Plan Use Rate
DESCRIPTION: This formula returns the rate code for the rate definition that needs to be associated with the qualification plan
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 10-Aug-2015 DRAFT 1A Initial Version
*******************************************************************************/
IF (PER_ASG_HOURLY_SALARIED_CODE = 'H')
THEN
(
RATECODE = 'HOURLY_RATE'
)
ELSE
(
RATECODE = 'ANNUAL_RATE'
)
RETURN RATECODE
For example, an organization might have a rule that allows an Worker to record an absence entry of type Maternity
Leave – Unpaid, only in sequence with a regular Maternity Leave absence entry. In such a case, a validation
formula can be composed which looks at the Workers absence history to identify if there is a Maternity Leave that is
ending on the day just before the absence entry being made of Maternity Leave - Unpaid.
Navigation:
1. In the Absence Administration work area, click Manage Absence Types to open the Manage Absence
Types page.
2. On the Search Results section toolbar, click Create to open the Create Absence Type dialog box.
3. Click Continue.
4. On the Create Absence Type page Type Attributes tab, General Attributes section, select the defined
formula in the Validation Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_AGREEMENT_ID Number
ABSENCE_CERTIFICATION_ID Number
ABSENCE_ENTRY_ID Number
ABSENCE_REASON_ID Number
ABSENCE_TYPE_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_AGREEMENT_ID Number
PERSON_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
VALID Text Determines validity of absence entry. ‘N’ throws an error message and stops the
transaction from being submitted
ERROR_MESSAGE Text Custom error message for invalid absence entry. Error message can either be
written into the formula or defined via Manage Messages and invoked here.
ERROR_CODE Text Identifies if the message is Error or Warning.. Valid values are ‘E’ for Error and ‘W’
for Warning.
TOKEN_NAME Text_Number Array of token names, if any, in the message configured via Manage Messages
TOKEN_VALUE Text_Number Array of values passed to each token name in the message
DEBUG_MESSAGE Text Text passed into this output variable would get logged if application logging is
enabled. Useful for debugging.
Sample Formula
Requirement: The organization has a Sickness absence entitlement policy according to which an Worker can
record a regular Sickness absence entry only after the completion of 365 days from their last Unpaid Sickness entry.
Solution: A Global Absence Entry Validation formula such as the one below can be used.
/******************************************************************************
i=1
CHANGE_CONTEXTS(START_DATE=ld_start_date, END_DATE=IV_END_DATE)
(
WHILE ANC_PER_ABS_ENTRS_ABSENCE_ENTRY_ID_ARR.exists(i)
LOOP
(
CHANGE_CONTEXTS (ABSENCE_ENTRY_ID = ANC_PER_ABS_ENTRS_ABSENCE_ENTRY_ID_ARR[i])
(
CHANGE_CONTEXTS (ABSENCE_TYPE_ID = ANC_ABS_ENTRS_ABSENCE_TYPE_ID)
(
IF (lc_sickness_unpaid_name = ANC_ABS_TYP_NAME AND ANC_ABS_ENTRS_ABSENCE_STATUS_CD = 'SUBMITTED')
THEN
(
IF (365 > DAYS_BETWEEN(TRUNC(IV_START_DATE), ANC_ABS_ENTRS_END_DATE) + 1)
THEN
(
VALID = 'N'
ERROR_MESSAGE = 'ORA_CUSTOM_ERROR_MESSAGE'
RETURN VALID, ERROR_MESSAGE
)
)
)
)
i=i+1
)
)
For example, an organization might have a linkage rule that links together Sickness absences. However, if the
Sickness absence entry is only of a single day duration, the business might wish to exclude the specific absence
entry from being linked. In such a case, a linkage exclusion formula can be composed which checks the duration of
the entered absence and informs the application whether to exclude the absence entry from a potential linkage.
Navigation:
1. In the Absence Administration work area, click Manage Absence Types to open the Manage Absence
Types page.
2. On the Search Results section toolbar, click Create to open the Create Absence Type dialog box.
3. Choose Illness or injury in the Pattern field and click Continue.
4. On the Create Absence Type page Type Attributes tab, Linkage section, choose Duration or Chained in
the Linkage Rule field.
5. Select the defined formula in the Exclusion Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_REASON_ID Number
ABSENCE_TYPE_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
PERSON_AGREEMENT_ID Number
PERSON_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
EXCLUDE Text Determines whether the absence entry needs to excluded from a linkage. Valid
values are ‘Y’ or ‘N’
DEBUG_MESSAGE Text Text passed into this output variable would get logged if application logging is
enabled. Useful for debugging.
Sample Formula
Requirement: The organization has a linkage rule setup for Sickness absence entries. However, the Sickness
absence entry needs to be excluded from linkages if the absence reason entered is a specific value.
Solution: A Global Absence Linkage Exclusion formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_LNKG_EXCL
FORMULA TYPE: Global Absence Linkage Exclusion
DESCRIPTION: This formula determines if the absence entry needs to be excluded from a linkage
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
For example, in an organization when an Worker makes an absence entry for an absence type that is measured in
Days, there might be a need to have the total duration pro-rated based on the scheduled work hours of the Worker
for those days of absence. In such a case, a type duration formula can be composed with the required logic of
calculating the pro-rated duration so that it replaces the default duration calculation rules in the application.
The same formula needs to return the required duration when the entry is processed as a single unit (between start
date and end date), as well as when processed for each day between the start and end dates.
Navigation:
1. In the Absence Administration work area, click Manage Absence Types to open the Manage Absence
Types page.
2. On the Search Results section toolbar, click Create to open the Create Absence Type dialog box.
3. Click Continue.
4. On the Create Absence Type page Type Attributes tab, General Attributes section, select the defined
formula in the Conversion Formula field.
Contexts
The following contexts are available in this formula type:
ABSENCE_ENTRY_ID Number
ABSENCE_TYPE_ID Number
DATE_EARNED Date
EFFECTIVE_DATE Date
END_DATE Date
ENTERPRISE_ID Number
HR_ASSIGNMENT_ID Number
HR_RELATIONSHIP_ID Number
HR_TERM_ID Number
JOB_ID Number
LEGAL_EMPLOYER_ID Number
LEGISLATIVE_DATA_GROUP_ID Number
ORGANIZATION_ID Number
PAYROLL_ASSIGNMENT_ID Number
PAYROLL_ID Number
PAYROLL_RELATIONSHIP_ID Number
PAYROLL_TERM_ID Number
Input Values
Variable Name Data Type Description
Return Variables
Variable Name Data Type Description
Sample Formula
Requirement: The organization requires that for a particular absence type for which partial day absence recording
is not allowed, and the duration is measured in Days, the total duration needs to be pro-rated by multiplying with the
FTE value of the Worker .
Solution: A Global Absence Type duration formula such as the one below can be used.
/******************************************************************************
FORMULA NAME: ANC_DURCAL
FORMULA TYPE: Global Absence Type Duration Formula
DESCRIPTION: This formula returns the pro-rated duration for absence entries based on FTE
Change History:
Name Date Version Comments
-------------------------------------------------------------------------------
Oracle 28-Jul-2015 DRAFT 1A Initial Version
*******************************************************************************/
ln_entry_duration_d = 0
ln_unrounded_duration_d = 0
DURATION = ROUND(ln_unrounded_duration_d,2)
RETURN DURATION
The most frequently used formula functions in Absence Management are discussed below.
GET_PLAN_BALANCE
This formula function can be used to return the accrual balance of an absence plan calculated up until the latest
‘Last Balance Calculation Date’ which is lesser than or earlier than effective date.
Mandatory Contexts:
• HR_ASSIGNMENT_ID
• PERSON_ID
• EFFECTIVE_DATE
• LEGISLATIVE_DATA_GROUP
Parameters:
GET_ACCRUAL_BALANCE
This formula function can be used to return the accrual balance of an absence plan calculated up until the latest
‘Last Balance Calculation Date’ for an enrollment which is active as of the effective date.
Mandatory Contexts:
• HR_ASSIGNMENT_ID
• EFFECTIVE_DATE
• ACCRUAL_PLAN_ID
GET_ABSENCE_COUNTS
This formula function can be used to calculate the number of absence entries against a person and return the total
durations between a start date and end date passed as parameters.
Mandatory Contexts:
This formula function does not require any contexts to return values.
Parameters:
p_person_id Number Person id for whom absence entries durations and occurrences need to
be fetched
p_include_type_id Number Absence type id to be included
p_exclude_type_id Number Absence type id to be excluded
p_include_categor_id Number Absence category id to be included
p_exclude_category_id Number Absence category id to be excluded
p_include_reason_id Number Absence reason to be included
p_exclude_reason_id Number Absence reason to be excluded
p_start_date_from Date Absences that end on or after this date are included in the calculations
p_start_date_to Date Absences that end on or before this date are included in the calculations
p_duration_days Number Out parameter – sum of durations of absence entries that were recorded
in Days
p_duration_hours Number Out parameter – sum of durations of absence entries that were recorded
in Hours
p_duration_cal Number Out parameter – sum of durations of absence entries that were recorded
in Calendar Days
p_duration_weeks Number Out parameter – sum of durations of absence entries that were recorded
in Weeks
p_duration_months Number Out parameter – sum of durations of absence entries that were recorded
in Months
p_duration_years Number Out parameter – sum of durations of absence entries that were recorded
in Years
p_occurances Number Out parameter – count of absence entries
Data returned: Apart from the out parameters returned above, the return data for the formula function is a Number
value of 0 in all cases.
This formula function can be used to look at the absence entries against a person and return the earliest start date
and the latest end date in a period.
Mandatory Contexts:
This formula function does not require any contexts to return values.
Parameters:
p_person_id Number Person id for whom absence entries durations and occurrences need to
be fetched
p_include_type_id Number Absence type id to be included
p_exclude_type_id Number Absence type id to be excluded
p_include_categor_id Number Absence category id to be included
p_exclude_category_id Number Absence category id to be excluded
p_include_reason_id Number Absence reason to be included
p_exclude_reason_id Number Absence reason to be excluded
p_start_date_from Date Absences that end on or after this date are included in the calculations
p_start_date_to Date Absences that end on or before this date are included in the calculations
p_min_date Date Out parameter - Earliest absence start date in the period
p_max_date Date Out parameter – Latest absence end date in the period
Data returned: Apart from the out parameters returned above, the return data for the formula function is a Number
value of 0 in all cases.
GET_BAL_COMP_VAL
This formula function would return the sum of accrual entries of a particular type within a period.
Mandatory Contexts:
• PERSON_ID
• HR_ASSIGNMENT_ID
• EFFECTIVE_DATE
• LEGISLATIVE_DATA_GROUP_ID
Parameters:
Data returned: The sum accrual entries of the particular type between within the period
GET_BAL_HDR_VAL
This formula function fetches summary level accrual information for the first accrual period after effective date for
which accrual has been run.
Mandatory Contexts:
• PERSON_ID
• HR_ASSIGNMENT_ID
• EFFECTIVE_DATE
• LEGISLATIVE_DATA_GROUP_ID
Parameters:
p_pl_name Character The name of the accrual plan for which accrual and balance information is
required
p_begin_bal Number Out parameter - The accrual balance at the start of the repeating period
p_accrued Number Out parameter - The amount of time accrued in the repeating period
p_used Number Out parameter - The amount of time used during the repeating period
p_end_bal Number Out parameter - The final balance as of the end of the repeating period
p_accrual_period Date Out parameter - The effective date of the repeating period
Data returned: The function returns a value ‘1’ if data is found and ‘0’ if no data is found.
GET_ENRT_DTLS
This formula function can be used to fetch information regarding key dates relevant for an accrual plan enrollment
whose start date is earlier than the effective date.
Mandatory Contexts:
• PERSON_ID
• EFFECTIVE_DATE
• LEGISLATIVE_DATA_GROUP_ID
Parameters:
p_plan_name Character The name of the accrual plan for which enrollment information is required
p_enrt_st_dt Date Out parameter – Start date of enrollment
p_enrt_end_dt Date Out parameter – End date of enrollment
p_last_accrual_run Date Out parameter – Last date as of which accrual has been calculated.
Data returned: The function returns a value ‘1’ if data is found and ‘0’ if no data is found.
GET_ENTITLEMENTS
This formula function returns the number of plan entitlements of a particular band or payment factor consumed by
absence entries in a period.
Mandatory Contexts:
• PERSON_ID
• LEGISLATIVE_DATA_GROUP_ID
Parameters:
p_pl_name Character The name of the qualification plan for which the entitlement usage needs
to be fetched
p_band_name Character The entitlement payment band name for within the qualification plan
p_band_percentage Number Instead of the entitlement band name, the payment percentage can also
be passed. Payment factor takes precedence over band name.
p_start_date Date Start of the period for which entitlement usage data needs to be fetched
p_end_date Date End of the period for which entitlement usage data needs to be fetched
Data returned: The entitlement units against the band or pay factor consumed during the specified period.
GET_ABSENCE_DAYS_PER_TYPE
This formula function returns the sum of absence days of a particular type in a period.
Mandatory Contexts:
Parameters:
p_absence_type_name Character The name of the absence type for which the number of days need to be
summed
p_start_date Date Start of the period for which absence days need to be summed
p_end_date Date End of the period for which absence days need to be summed
To find all DBIs based on ANC tables use the following query.
In order to print any custom messages or values of variables into the log, the following formula function
can be invoked - ESS_LOG_WRITE(). The format for using the particular formula function is:
Assuming the value of HR_ASSIGNMENT_NUMBER in the formula is ‘123456’, the output of the
above statements in the log would be:
When submitting the Calculate Accruals and Balances job, be sure to enable the ‘Include trace
statements in audit log’ option.
In order to print any custom messages or values of variables into the log, the following formula function
can be called - ESS_LOG_WRITE(). The format for using the particular formula function is:
Assuming the value of HR_ASSIGNMENT_NUMBER in the formula is ‘123456’, the output of the
above statements in the log would be:
You can add the following statement to the required entry validation formula attached to the absence
type:
VALID = ‘N’
ERROR_MESSAGE = ‘The assignment number is : ’||HR_ASSIGNMENT_NUMBER
RETURN VALID, ERROR_MESSAGE
Assuming the value of HR_ASSIGNMENT_NUMBER in the formula is ‘123456’, the system would try
to search in FND_MESSAGES (accessed via task Manage Messages), for the message ‘The
assignment number is: 123456’. When the formula does not find a message defined as such, it would
print the following error message.
Cause: The message The assignment number is : 123456, can not be accessed.
CONNECT W ITH US
blogs.oracle.com/oracle Copyright © 2015, Oracle and/or its affiliates. All rights reserved. This document is provided for information purposes only, and the
contents hereof are subject to change without notice. This document is not warranted to be error-free, nor subject to any other
warranties or conditions, whether expressed orally or implied in law, including implied warranties and conditions of merchantability or
facebook.com/oracle fitness for a particular purpose. We specifically disclaim any liability with respect to this document, and no contractual obligations are
formed either directly or indirectly by this document. This document may not be reproduced or transmitted in any form or by any
twitter.com/oracle means, electronic or mechanical, for any purpose, without our prior written permission.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
oracle.com
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and
are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are
trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.0115