Annualized Full Time Salary

You might also like

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 2

NEED_CONTEXT(PAYROLL_STAT_UNIT_ID)

NEED_CONTEXT(LEGISLATIVE_DATA_GROUP_ID)
NEED_CONTEXT(EFFECTIVE_DATE)
NEED_CONTEXT(PAYROLL_ACTION_ID)
INPUTS ARE report_record_name (text),
"EFFECTIVE_DATE" (date),
"START_DATE" (date),
"LEGISLATIVE_DATA_GROUP_ID",
"PAYROLL_ACTION_ID",
"PSU_ID",
"PAYPNT" (text),
"MODE" (text),
"FINAL" (text),
"PACT_BLOCK_ONLY" (text),
report_record_id,
template_record_id
/*[End of Inputs]*/

/* Initialise record flexfield structure code in memory */


l_archive_initialised = ARCHIVE_INIT('HRX_GB_MYCSP_SAL_GRP_FC')
/* Populate parameter value array to pass to nested formula */
P = EMPTY_TEXT_TEXT
IF "MODE" WAS NOT DEFAULTED THEN P['MODE'] = ("MODE")
IF "PAYPNT" WAS NOT DEFAULTED THEN P['PAYPNT'] = ("PAYPNT")
IF "PSU_ID" WAS NOT DEFAULTED THEN P['PSU_ID'] = TO_CHAR("PSU_ID")
IF "PACT_BLOCK_ONLY" WAS NOT DEFAULTED THEN P['PACT_BLOCK_ONLY'] =
("PACT_BLOCK_ONLY")
IF "FINAL" WAS NOT DEFAULTED THEN P['FINAL'] = ("FINAL")
IF "EFFECTIVE_DATE" WAS NOT DEFAULTED THEN P['EFFECTIVE_DATE'] =
TO_CHAR("EFFECTIVE_DATE")
IF "START_DATE" WAS NOT DEFAULTED THEN P['START_DATE'] = TO_CHAR("START_DATE")
IF "PAYROLL_ACTION_ID" WAS NOT DEFAULTED THEN P['PAYROLL_ACTION_ID'] =
TO_CHAR("PAYROLL_ACTION_ID")
IF "LEGISLATIVE_DATA_GROUP_ID" WAS NOT DEFAULTED THEN
P['LEGISLATIVE_DATA_GROUP_ID'] = TO_CHAR("LEGISLATIVE_DATA_GROUP_ID")

/* Keep track of Missing Required Elements in an array */


MRE = EMPTY_TEXT_NUMBER

/* Populate data element value array */


D = EMPTY_TEXT_TEXT

/* Store details of rule formulas in arrays for later nested calls */


FE = EMPTY_TEXT_NUMBER
FN = EMPTY_TEXT_NUMBER
FD = EMPTY_TEXT_NUMBER
FE[100] = 'PROCESS_SAL'
FN[100] = 'HRX_GB_MYCSP_REC_TRIGGER_FF'
FD[100] = '$Sys_Req$'

/* Loop around nested rule formula calls per arrays */


J = FN.FIRST(-1)
WHILE FN.EXISTS(J) LOOP (
IF (NOT IS_EXECUTABLE(FN[J])) THEN (
l_mesg_logged = ARCHIVE_MESSAGE(801,'PAY_REPPR_EXT_RULE_FF_INVALID','E',
'ELEMENT_SHORTCODE',FE[J],
'RECORD_NAME',report_record_name)
) ELSE (
SET_INPUT('DATA_ELEMENTS',D)
SET_INPUT('PARAMS',P)
SET_INPUT('DATA_ELEMENT_CODE',FE[J])
EXECUTE(FN[J])
rule_result = GET_OUTPUT('RULE_VALUE',FD[J])
IF rule_result NOT LIKE '$Sys__e_$' THEN D[FE[J]] = rule_result
ELSE IF rule_result = '$Sys_Req$' THEN MRE[J] = FE[J]
)
J = FN.NEXT(J,-1)
)
/* Completed population of data element value array */

IF MRE.COUNT > 0 THEN (


/* Don't log warnings in case of missing required element; just clear record
J = MRE.FIRST(-1)
WHILE MRE.EXISTS(J) LOOP (
l_mesg_logged = ARCHIVE_MESSAGE(801,'PAY_REPPR_MISSING_REQ_ELEMENT','W',
'ELEMENT_SHORTCODE',MRE[J],
'RECORD_NAME',report_record_name)

You might also like