Extra Input

This formula type is used to pass an extra value to the payroll element which is linked to the standard rate.

Contexts

The following contexts are available:

  • BUSINESS_GROUP_ID (ENTERPRISE_ID)
  • EFFECTIVE_DATE
  • HR_ASSIGNMENT_ID
  • PGM_ID
  • PL_ID
  • PL_TYP_ID
  • OPT_ID
  • PERSON_ID
  • LER_ID
  • BENEFIT_RELATION_ID
  • ACTY_BASE_RT_ID
  • ORGANIZATION_ID

Database Items

Use only the following database items that are available to formulas of this type:

  • Database items based on person’s assignment: HR_ASSIGNMENT_ID AND PERSON_ID

Input Variables

Input variables are not available to formulas of this type.

Return Variables

The following return variables are available to formulas of this type. Any name can be used for the return variable.

Sample Formula 1:

Out Variable Name Data Type Remarks
L_OUTPUT Number/Character Return a number/character value depending on the data type of the corresponding payroll element’s input value

Sample Formula 1:

FORMULA TYPE : Extra Input

DESCRIPTION : Formula to get the Medical Care Reimbursement Coverage amount

P_ENRLD_BNFT_AMT = 0
l_bnft_amt_char = '0'
l_lf_evt_dt_char = ben_fn_get_char_value('BEN_PER_IN_LER'
,'LF_EVT_OCRD_DT'
,' '
,' '
,'BENEFIT_RELATION_NAME'
,'DFLT')
l_lf_evt_dt = to_date(l_lf_evt_dt_char)
l_pay_perd_end_date = TO_DATE(BEN_FN_GET_CHAR_VALUE( 'PAY_TIME_PERIODS'
,'END_DATE'
,' '
,' '
,'START_DATE'
,l_lf_evt_dt_char
)
)
CHANGE_CONTEXTS (EFFECTIVE_DATE = l_pay_perd_end_date)
(
l_bnft_amt_char = ben_fn_get_char_value('BEN_PRTT_ENRT_RSLT'
,'BNFT_AMT'
,'Medical Care Reimbursement'
,'Coverage'
)
IF (l_bnft_amt_char <> 'N' AND l_bnft_amt_char <> 'NO_DATA_FOUND' AND l_bnft_amt_char <> ' ')
THEN
(
P_ENRLD_BNFT_AMT = TO_NUMBER(l_bnft_amt_char)
)
)
Return P_ENRLD_BNFT_AMT

Sample Formula 2:

FORMULA TYPE: Extra Input

DESCRIPTION : Get HSA Coverage Amount

COVERAGE_AMT = 0
l_eff_dt = GET_CONTEXT(EFFECTIVE_DATE, to_date('1951/01/01 00:00:00'))
CHANGE_CONTEXTS(EFFECTIVE_DATE=l_eff_dt)
(
l_cvg_amt_char = ben_fn_get_char_value('BEN_PRTT_ENRT_RSLT'
, 'BNFT_AMT'
, 'Health Savings Account'
, 'Elect')
) /* end change contexts */
if (l_cvg_amt_char <> 'NO_DATA_FOUND' AND l_cvg_amt_char <> 'N' AND l_cvg_amt_char <> ' ')
then
(
COVERAGE_AMT = to_number(l_cvg_amt_char)
)
else
(
COVERAGE_AMT = 0
)
return COVERAGE_AMT