GP: Supporting Element Overrides Not Correctly Retrieved When There Is Element Segmentation (Doc ID 1551411.1)

Last updated on JANUARY 13, 2017

Applies to:

PeopleSoft Enterprise HCM Global Payroll Spain - Version 9.1 and later
Information in this document applies to any platform.

Symptoms

On : 9.1 version, General

ACTUAL BEHAVIOR
---------------
When trying to run an element segmentation payroll with payee variable overrides, the system is taking the wrong value for all slices except the last one.

EXPECTED BEHAVIOR
-----------------------
Takes the correct value for each period.

STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. Go to Global Payroll & Absence Mgmt-> Payee Data-> Create Overrides->Supporting Elements and enter two rows for the variable CLI VR RED JORNADA.
One with date 01/01/1900 to 01/14/2012 with value 4. And other rows with date 01/15/2012 to 01/01/3000 with value 8.
2. Go to Global Payroll & Absence Mgmt-> Absence and Payroll Processing->Absence and Payroll Processing-> Prepare Payroll. Create a trigger:
Country: ESP
Effdt: 01/15/2012
Even ID: COMPRATE
3. Run global payroll process for calendar group GESS1_0112 with the GP trace enabled.
4. Execute the following sql to check the value for the period 01/01/1900 to01/14/2012

var EMPLID VARCHAR2(11)
var CAL_RUN_ID VARCHAR2(14)
var CAL_ID VARCHAR2(16)
exec :EMPLID := 'GESS1_0004';
exec :CAL_RUN_ID := 'GESS1_0112';
exec :CAL_ID := '%M%';

SELECT
 Y.PIN_NM,
A.AUDIT_SORT_KEY, A.PIN_CHAIN_LVL_NUM, A.PIN_CHAIN_SEQ_NUM,
A.PIN_CHAIN_RSLT_NUM,
 CAST(C.PIN_NM AS CHAR(21)) AS PIN_NM,
  CAST(CASE A.CALC_RSLT_VAL WHEN 0 THEN '' ELSE
RTRIM(TO_CHAR(A.CALC_RSLT_VAL)) END ||
  CASE A.CHR_PIN_VAL WHEN ' ' THEN '' ELSE RTRIM(A.CHR_PIN_VAL) END
||
  CASE A.PIN_VAL_NUM WHEN 0 THEN '' ELSE
RTRIM(TO_CHAR(A.PIN_VAL_NUM)) || ' - ' || RTRIM(K.PIN_NM) END ||
  CASE A.DATE_PIN_VAL WHEN NULL THEN 'NULO' ELSE
NVL(CAST(A.DATE_PIN_VAL AS CHAR(20)), '') END AS CHAR(26)) AS ELEMENT_VALUE,

 CAST(A.SLICE_BGN_DT AS CHAR(21)) AS SLICE_BGN_DT, CAST(A.SLICE_END_DT AS
CHAR(21)) AS SLICE_END_DT
FROM PS_GP_PIN C , PS_GP_AUDIT_TBL X, PS_GP_PIN Y , PS_GP_AUDIT_TBL A,
PS_GP_PIN K
WHERE A.EMPLID LIKE :EMPLID AND A.CAL_RUN_ID LIKE :CAL_RUN_ID AND A.CAL_ID
LIKE :CAL_ID AND A.PIN_NUM = C.PIN_NUM

AND ((C.PIN_NM IN ('GEN FM SEGMNTC CMP','GEN FM INICIALIZAR','CLI VR RED
JORNADA') OR C.PIN_NM LIKE '' ))

AND X.PIN_CHAIN_SEQ_NUM = 1 AND A.CAL_RUN_ID = X.CAL_RUN_ID AND A.EMPLID =
X.EMPLID AND X.PIN_NUM = Y.PIN_NUM
AND A.EMPL_RCD = X.EMPL_RCD AND A.GP_PAYGROUP = X.GP_PAYGROUP AND A.CAL_ID =
X.CAL_ID AND A.ORIG_CAL_RUN_ID = X.ORIG_CAL_RUN_ID
AND A.RSLT_SEG_NUM = X.RSLT_SEG_NUM AND A.FICT_CAL_ID = X.FICT_CAL_ID AND
A.FICT_CAL_RUN_ID = X.FICT_CAL_RUN_ID
AND A.FICT_RSLT_SEG_NUM = X.FICT_RSLT_SEG_NUM AND A.AUDIT_SORT_KEY =
X.AUDIT_SORT_KEY AND A.PIN_VAL_NUM = K.PIN_NUM (+)
ORDER BY A.AUDIT_SORT_KEY, A.PIN_CHAIN_SEQ_NUM, A.PIN_CHAIN_RSLT_NUM,
A.SLICE_END_DT;

BUSINESS IMPACT
-----------------------
The issue has the following business impact:
Due to this issue, users cannot run an element segmentation payroll with payee variable overrides.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms