Вы находитесь на странице: 1из 21

/*****************************************************************

FORMULA NAME: XXX Absence Accrual


FORMULA TYPE: Global Absence Accrual
DESCRIPTION: This formula applies the Accrual, Ceiling, CarryOver, Proration Factor
based on Grade and Accrual Plan the person enrolled into.
XXX Accrual Plan Details :
Grade Level - Leaves Earned per Month
1-3 30
4-7 40
8-10 45
CEO 60
Change History:
Name Date Comments
-----------------------------------------------------------------------------------
-------------------------
Dhinakaran 7-Jun-2018 Absence Accruals, Proration for Grade,Hire,Resignation,
Termination
-----------------------------------------------------------------------------------
-------------------------
*****************************************************************/
/*=========== DATABASE ITEM DEFAULTS BEGIN =====================*/
DEFAULT for PER_ASG_REL_ORIGINAL_DATE_OF_HIRE is '4712/12/31 00:00:00' (date)
DEFAULT for ACP_CONTINUOUS_SERVICE_DATE is '4712/12/31 00:00:00' (date)
DEFAULT for ACP_ENROLLMENT_START_DATE is '4712/12/31 00:00:00' (date)
DEFAULT for ANC_ABS_PLN_NAME is 'A'
DEFAULT for ANC_ABS_PLN_PLAN_UOM is 'H'
DEFAULT for PER_ASG_ACTION_CODE is ' '
DEFAULT FOR PER_ASG_REL_DATE_START IS '1951/01/01 00:00:00' (date)
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_DATA_VALUE for ANC_PER_ABS_ENTRS_ABSENCE_ENTRY_ID_ARR is 0
DEFAULT for PER_ASG_SYSTEM_PERSON_TYPE is ' '
DEFAULT FOR ANC_ABS_ENTRS_ABSENCE_TYPE_ID is 0
DEFAULT FOR ANC_ABS_ENTRS_APPROVAL_STATUS_CD IS ' '
DEFAULT FOR ANC_ABS_ENTRS_ABSENCE_STATUS_CD IS ' '
DEFAULT FOR ANC_ABS_TYP_NAME IS ' '
DEFAULT FOR ANC_ABS_ENTRS_DURATION IS 0
Default for IV_ACCRUAL is 0
DEFAULT FOR ANC_ABS_ENTRS_START_DATE IS '0001/01/01 00:00:00' (date)
DEFAULT FOR ANC_ABS_ENTRS_END_DATE IS '4712/12/31 00:00:00'(date)
DEFAULT FOR IV_ACCRUALPERIODSTARTDATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR IV_ACCRUALPERIODENDDATE IS '4712/12/31 00:00:00' (date)
DEFAULT FOR PER_ASG_REL_ACTUAL_TERMINATION_DATE IS '4712/12/31 00:00:00' (date)
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 PER_ASG_GRADE_NAME is 'XX'
DEFAULT FOR PER_ASG_EFFECTIVE_START_DATE is '1951/01/01 00:00:00' (date)
/*=========== INPUTS======================*/
INPUTS ARE IV_ACCRUAL, IV_ACCRUALPERIODSTARTDATE (date), IV_ACCRUALPERIODENDDATE
(date),IV_START_DATE(date), IV_END_DATE(date),IV_CALEDARSTARTDATE (date),
IV_CALEDARENDDATE (date)
/*================ FORMULA SECTION BEGIN =======================*/
l_eff_date = GET_CONTEXT(EFFECTIVE_DATE,'4712/12/31 00:00:00'(date))
l_asg_id = GET_CONTEXT(HR_ASSIGNMENT_ID,1)
ln_person_id = GET_CONTEXT(PERSON_ID,0)
l_hire_date = PER_ASG_REL_DATE_START
l_no_of_days = DAYS_BETWEEN(GET_CONTEXT(EFFECTIVE_DATE,'4712/12/31 00:00:00'
(date)),l_hire_date)
l_length_of_service=round((l_no_of_days/365),3)
HIRE_ACCRUAL_SD =
GREATEST(PER_ASG_REL_ORIGINAL_DATE_OF_HIRE,IV_ACCRUALPERIODSTARTDATE)
TERMIN_ACCRUAL_ED =
LEAST(PER_ASG_REL_ACTUAL_TERMINATION_DATE,IV_ACCRUALPERIODENDDATE)
l_log_data = ESS_LOG_WRITE(' Hire Start Date '||to_char(l_length_of_service))
l_log_data = ESS_LOG_WRITE(' Termination Date '||to_char(l_length_of_service))
/* Getting the Grade Name */
CHANGE_CONTEXTS (HR_ASSIGNMENT_ID = l_asg_id, EFFECTIVE_DATE = l_eff_date)
( l_grade_name = PER_ASG_GRADE_NAME )
l_log_data = ESS_LOG_WRITE(' Length of Service '||to_char(l_length_of_service))
l_log_data = ESS_LOG_WRITE(' No OF Days 1 '||to_char(l_no_of_days))
if((l_length_of_service >= 0.5) AND (ANC_ABS_PLN_NAME='Annual Leave FL'))then (
ld_period_start_date = to_date(to_char(IV_START_DATE,'DD/MM/RRRR'))
ld_period_end_date = to_date(to_char(IV_END_DATE,'DD/MM/RRRR'))
L_ACTION_CODE = PER_ASG_ACTION_CODE
LD_ASG_DATE = PER_ASG_EFFECTIVE_START_DATE
ASG_MONTH_YEAR = TO_CHAR (LD_ASG_DATE,'MM-YYYY')
PERIOD_MONTH_YEAR = TO_CHAR (IV_END_DATE,'MM-YYYY')
MONTH_DAYS = DAYS_BETWEEN(ld_period_end_date, ld_period_start_date) + 1
l_log_data = ESS_LOG_WRITE(' Assignment month & Year '||(ASG_MONTH_YEAR))
l_log_data = ESS_LOG_WRITE(' Period month & Year '||(PERIOD_MONTH_YEAR))
l_log_data = ESS_LOG_WRITE(' No of days in month '||to_char(MONTH_DAYS))
if(ANC_ABS_PLN_PLAN_UOM ='C') then(
L_ACTION_CODE = PER_ASG_ACTION_CODE
LD_ASG_DATE = PER_ASG_EFFECTIVE_START_DATE
L_ASG = TO_NUMBER(TO_CHAR (LD_ASG_DATE,'DD')) LD_EFF_DATE =
GET_CONTEXT(EFFECTIVE_DATE,'4712/12/31 00:00:00'(date))
L_ASG_BFR = 0 L_ASG_AFT = 0 LD_EFF_LAST_DATE = LAST_DAY(LD_ASG_DATE) L_EFF_LAST =
TO_NUMBER(TO_CHAR (LD_EFF_LAST_DATE,'DD'))
L_GRADE_NAMES = PER_ASG_GRADE_NAME Current_period = TO_CHAR (LD_EFF_DATE,'MM-YYYY')
ASG_GRADE_SD = TO_CHAR (LD_ASG_DATE,'MM-YYYY')
PM_Accural = 0 ACC_BAL = 0 Jan_ACC = 0 Feb_ACC = 0 Mar_ACC = 0 Apr_ACC = 0 May_ACC
= 0 Jun_ACC = 0 Jul_ACC = 0 Aug_ACC = 0 Sep_ACC = 0 Oct_ACC = 0 Nov_ACC = 0 Dec_ACC
= 0
ACCRUAL_DAYS = 0 Jan1_ACC = 0 Feb1_ACC = 0 Mar1_ACC = 0 Apr1_ACC = 0 May1_ACC = 0
Jun1_ACC = 0 Jul1_ACC = 0 Aug1_ACC = 0 Sep1_ACC = 0 Oct1_ACC = 0 Nov1_ACC = 0
Dec1_ACC = 0
ACCRUAL_MONTH = to_char(IV_ACCRUALPERIODSTARTDATE, 'MM') HIRE_MONTH =
to_char(PER_ASG_REL_ORIGINAL_DATE_OF_HIRE,'MM-YYYY')
CHANGE_CONTEXTS (HR_ASSIGNMENT_ID = l_asg_id, EFFECTIVE_DATE = l_eff_date)(
if( ACCRUAL_MONTH = '01') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Jan_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 l_log_data =
ESS_LOG_WRITE(' Loop for grade '||to_char(Jan_ACC)) )
if ((l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7'))then
( Jan_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ((l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10'))then
( Jan_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then ( Jan_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if(ACCRUAL_MONTH = 'FEB') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Feb_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ((l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7'))then
( Feb_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ((l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10'))then
( Feb_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then (Feb_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if( ACCRUAL_MONTH = 'MAR') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Mar_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ((l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7'))then
( Mar_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ((l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10'))then
( Mar_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then( Mar_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if( ACCRUAL_MONTH = 'APR') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Apr_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ((l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7'))then
( Apr_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ((l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10'))then
( Apr_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then ( Apr_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if( ACCRUAL_MONTH = 'MAY') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( May_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7') )then
( May_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10') )then
( May_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then ( May_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if( ACCRUAL_MONTH = 'JUN') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Jun_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7') )then
( Jun_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10') )then
( Jun_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then ( Jun_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if( ACCRUAL_MONTH = 'JUL') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Jul_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7') )then
( Jul_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10') )then
( Jul_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then ( Jul_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if( ACCRUAL_MONTH = 'AUG') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Aug_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7') )then
( Aug_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10') )then
( Aug_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then ( Aug_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if( ACCRUAL_MONTH = 'SEP') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Sep_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7') )then
( Sep_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10') )then
( Sep_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then ( Sep_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if( ACCRUAL_MONTH = 'OCT') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Oct_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7') )then
( Oct_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10') )then
( Oct_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then ( Oct_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if( ACCRUAL_MONTH = 'NOV') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Nov_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7') )then
( Nov_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10') )then
( Nov_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then ( Nov_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
if( ACCRUAL_MONTH = 'DEC') then (
if ((l_grade_name = 'Grade 1') OR (l_grade_name = 'Grade 2') OR (l_grade_name =
'Grade 3'))then
( Dec_ACC = 30 ceiling = 360 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 4') OR (l_grade_name = 'Grade 5') OR (l_grade_name =
'Grade 6') OR (l_grade_name = 'Grade 7') )then
( Dec_ACC = 40 ceiling = 480 carryover = 30 prorationFactor = 1 )
if ( (l_grade_name = 'Grade 8') OR (l_grade_name = 'Grade 9') OR (l_grade_name =
'Grade 10') )then
( Dec_ACC = 45 ceiling = 540 carryover = 30 prorationFactor = 1 )
if (l_grade_name = 'CEO') then ( Dec_ACC = 60 ceiling = 720 carryover = 30
prorationFactor = 1 ))
/* Proration Changes */
IF((ACCRUAL_MONTH = 'JAN') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Jan_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Jan_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Jan_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Jan_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Jan_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Jan_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Jan_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Jan_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Jan_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Jan_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Jan_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'FEB') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Feb_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Feb_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Feb_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Feb_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Feb_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Feb_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Feb_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Feb_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Feb_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Feb_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Feb_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'MAR') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Mar_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Mar_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Mar_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Mar_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Mar_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Mar_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Mar_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Mar_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Mar_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Mar_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Mar_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'APR') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Apr_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Apr_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Apr_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Apr_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Apr_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Apr_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Apr_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Apr_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Apr_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Apr_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Apr_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'MAY') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
May_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
May_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
May_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
May_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
May_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
May_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
May_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
May_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
May_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
May_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
May_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'JUN') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Jun_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Jun_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Jun_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Jun_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Jun_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Jun_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Jun_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Jun_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Jun_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Jun_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Jun_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'JUL') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Jul_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Jul_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Jul_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Jul_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Jul_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Jul_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Jul_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Jul_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Jul_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Jul_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Jul_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'AUG') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Aug_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Aug_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Aug_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Aug_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Aug_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Aug_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Aug_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Aug_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Aug_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Aug_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Aug_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'SEP') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Sep_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Sep_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Sep_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Sep_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Sep_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Sep_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Sep_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Sep_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Sep_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Sep_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Sep_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'OCT') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Oct_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Oct_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Oct_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Oct_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Oct_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Oct_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Oct_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Oct_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Oct_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Oct_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Oct_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'NOV') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Nov_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Nov_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Nov_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Nov_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Nov_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Nov_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Nov_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Nov_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Nov_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Nov_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Nov_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
IF((ACCRUAL_MONTH = 'DEC') and (L_ACTION_CODE = 'PROMOTION') and (LD_ASG_DATE >
IV_ACCRUALPERIODSTARTDATE))THEN (
L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST -
L_ASG) + 1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Dec_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Dec_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Dec_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((30/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Dec_ACC = (((30/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Dec_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Dec_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Dec_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((40/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Dec_ACC = (((40/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Dec_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN(
Dec_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((45/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Dec_ACC = (((45/L_EFF_LAST) * L_ASG_BFR ) + ((60/L_EFF_LAST) * L_ASG_AFT )) ceiling
= 720 carryover = 30 prorationFactor = 1 ))
/* HIRE TERMINATION RESIGNATION */

IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =


'RESIGNATION') and (ACCRUAL_MONTH = 'JAN') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Jan_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Jan_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Jan_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Jan_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Jan_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Jan_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Jan_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Jan_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Jan_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Jan_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Jan_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'FEB') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Feb_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Feb_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Feb_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Feb_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Feb_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Feb_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Feb_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Feb_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Feb_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Feb_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Feb_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'MAR') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Mar_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Mar_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Mar_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Mar_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Mar_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Mar_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Mar_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Mar_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Mar_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Mar_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Mar_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'APR') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Apr_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Apr_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Apr_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Apr_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Apr_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Apr_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Apr_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Apr_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Apr_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Apr_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Apr_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'MAY') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
May_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
May_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
May_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
May_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
May_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
May_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
May_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
May_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
May_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
May_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
May_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'JUN') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Jun_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Jun_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Jun_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Jun_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Jun_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Jun_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Jun_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Jun_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Jun_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Jun_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Jun_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'JUL') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Jul_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Jul_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Jul_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Jul_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Jul_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Jul_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Jul_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Jul_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Jul_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Jul_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Jul_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'AUG') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Aug_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Aug_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Aug_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Aug_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Aug_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Aug_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Aug_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Aug_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Aug_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Aug_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Aug_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'SEP') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Sep_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Sep_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Sep_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Sep_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Sep_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Sep_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Sep_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Sep_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Sep_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Sep_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Sep_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'OCT') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Oct_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Oct_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Oct_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Oct_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Oct_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Oct_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Oct_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Oct_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Oct_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Oct_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Oct_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'NOV') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Nov_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Nov_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Nov_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Nov_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Nov_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Nov_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Nov_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Nov_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Nov_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Nov_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Nov_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
IF(( L_ACTION_CODE = 'HIRE') OR (L_ACTION_CODE = 'TERMINATION') OR (L_ACTION_CODE =
'RESIGNATION') and (ACCRUAL_MONTH = 'DEC') and (Current_period = HIRE_MONTH)) THEN
( L_GRADE_NAMES = PER_ASG_GRADE_NAME L_ASG_BFR = L_ASG - 1 L_ASG_AFT = (L_EFF_LAST
- L_ASG) + 1 ACCRUAL_DAYS = days_between (TERMIN_ACCRUAL_ED,HIRE_ACCRUAL_SD)+1
l_log_data = ESS_LOG_WRITE(' Assignment Before date '||to_char(L_ASG_BFR))
l_log_data = ESS_LOG_WRITE(' Assignment After date '||to_char(L_ASG_AFT))
IF (L_GRADE_NAMES = 'Grade 1') THEN (
Dec_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 2') THEN (
Dec_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 3') THEN (
Dec_ACC = (((30/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 4') THEN (
Dec_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 5') THEN (
Dec_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 6') THEN (
Dec_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 7') THEN (
Dec_ACC = (((40/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 8') THEN (
Dec_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 9') THEN (
Dec_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'Grade 10') THEN (
Dec_ACC = (((45/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 )
IF (L_GRADE_NAMES = 'CEO') THEN (
Dec_ACC = (((60/L_EFF_LAST) * ACCRUAL_DAYS )) ceiling = 720 carryover = 30
prorationFactor = 1 ))
Jan1_ACC = Jan_ACC
l_log_data = ESS_LOG_WRITE(' Jan accrual '||to_char(Jan1_ACC))
Feb1_ACC = Feb_ACC - Jan1_ACC
Mar1_ACC = Mar_ACC - Feb1_ACC
Apr1_ACC = Apr_ACC - Mar1_ACC
May1_ACC = May_ACC - Apr1_ACC
Jun1_ACC = Jun_ACC - May1_ACC
Jul1_ACC = Jul_ACC - Jun1_ACC
Aug1_ACC = Aug_ACC - Jul1_ACC
Sep1_ACC = Sep_ACC - Aug1_ACC
Oct1_ACC = Oct_ACC - Sep1_ACC
Nov1_ACC = Nov_ACC - Oct1_ACC
Dec1_ACC = Dec_ACC - Nov1_ACC
accrual = Jan1_ACC + Feb1_ACC + Mar1_ACC + Apr1_ACC + May1_ACC + Jun1_ACC +
Jul1_ACC + Aug1_ACC + Sep1_ACC + Oct1_ACC + Nov1_ACC + Dec1_ACC
l_log_data = ESS_LOG_WRITE(' overall jan accrual '||to_char(accrual))
)
)
)
return accrual,ceiling,carryover,prorationFactor
l_log_data = ESS_LOG_WRITE(' Hire Start Date '||to_char(l_length_of_service))

Вам также может понравиться