Payroll Reconciliation Emp Details DS
Payroll Reconciliation Emp Details DS
--PERSON_ID,
ELEMENT_TYPE_ID,
REPORTING_NAME,
EFFECTIVE_END_DATE,
ASSIGNMENT_NUMBER,
ORACLE_PN,
LAST_NAME,
FIRST_NAME,
FULL_NAME,
LAWSON_NUM,
JOB_CODE,
EXP_ACCOUNT,
JOB_NAME,
COST_CENTER,
COMPANY_NUM,
DEPT_NAME,
LEGAL_EMPLOYER,
SUM(AMOUNT) AS Amount,
SUM(HOURS) AS Hours,
BALANCE_CATEGORY,
DESCRIPTION,
COSTING_DEPARTMENT_COMPANY,
COSTING_DEPARTMENT_COST,
COSTING_DEPARTMENT_NAME,
COSTING_LEGAL_ENTITY,
FROM_DATE,
"To_Date",
WCC_D,
WCC
--,
--CHECKDATE
FROM (
WITH SEG1
AS (
SELECT DISTINCT (Substr(dept.name, 1, Instr(dept.name, '_', 1, 1) - 1)) S1
FROM hr_all_organization_units_f_vl dept
,hr_org_unit_classifications_f class
WHERE dept.ORGANIZATION_ID = class.ORGANIZATION_ID
AND class.CLASSIFICATION_CODE = 'DEPARTMENT'
AND (
dept.name IN (:p_Dept_Name)
-- OR Coalesce(:p_Dept_Name, '') IS NULL
)
AND :p_to_date BETWEEN dept.effective_start_date
AND dept.effective_end_date
UNION
SELECT ''
FROM dual
WHERE NOT EXISTS (
SELECT DISTINCT (Substr(dept.name, 1, Instr(dept.name, '_', 1, 1)
- 1)) S1
FROM hr_all_organization_units_f_vl dept
,hr_org_unit_classifications_f class
WHERE dept.ORGANIZATION_ID = class.ORGANIZATION_ID
AND class.CLASSIFICATION_CODE = 'DEPARTMENT'
AND (
dept.name IN (:p_Dept_Name)
-- OR Coalesce(:p_Dept_Name, '') IS NULL
)
AND :p_to_date BETWEEN dept.effective_start_date
AND dept.effective_end_date
)
)
,SEG2
AS (
SELECT DISTINCT (Substr(dept.name, 5, Instr(dept.name, '_', 1, 2) - 5)) S2
FROM hr_all_organization_units_f_vl dept
,hr_org_unit_classifications_f class
WHERE dept.ORGANIZATION_ID = class.ORGANIZATION_ID
AND class.CLASSIFICATION_CODE = 'DEPARTMENT'
AND (
dept.name IN (:p_Dept_Name)
-- OR Coalesce(:p_Dept_Name, '') IS NULL
)
AND :p_to_date BETWEEN dept.effective_start_date
AND dept.effective_end_date
UNION
SELECT ''
FROM dual
WHERE NOT EXISTS (
SELECT DISTINCT (Substr(dept.name, 1, Instr(dept.name, '_', 1, 1)
- 1)) S1
FROM hr_all_organization_units_f_vl dept
,hr_org_unit_classifications_f class
WHERE dept.ORGANIZATION_ID = class.ORGANIZATION_ID
AND class.CLASSIFICATION_CODE = 'DEPARTMENT'
AND (
dept.name IN (:p_Dept_Name)
-- OR Coalesce(:p_Dept_Name, '') IS NULL
)
AND :p_to_date BETWEEN dept.effective_start_date
AND dept.effective_end_date
)
)
SELECT
paam.person_id
,pcak.COST_ALLOCATION_ID
,paam.ASSIGNMENT_NUMBER
,paam.effective_end_date
---pprd.payroll_relationship_number
,papf.person_number AS Oracle_PN
,ppnf.last_name AS Last_Name
,ppnf.first_name AS First_Name
,ppnf.last_name || ', ' || ppnf.first_name AS Full_Name
,NVL(peai.ext_identifier_number, papf.person_number) AS Lawson_Num
,pjfv.job_code AS Job_Code
-- ,CASE WHEN REC1.REPORTING_NAME='Paid Time Off' and
rec1.classification_name='Absences' then '600202'
--else pjfv.attribute5
--end AS Exp_Account
,pjfv.name AS Job_Name
,Substr(dept.name, 5, Instr(dept.name, '_', 1, 2) - 5) AS Cost_Center
,Substr(dept.name, 1, Instr(dept.name, '_', 1, 1) - 1) AS Company_Num
,Substr(dept.name, Instr(dept.name, '_', 1, 2) + 1) AS Dept_Name
,le.name AS Legal_Employer
,CASE
WHEN (instr(rec1.SUM, 'H1', 1, 1) = 0)
THEN REPLACE((SUBSTR(rec1.SUM, instr(rec1.SUM, 'E1', 1, 1) + 3,
LENGTH(rec1.SUM) - 1)), '|', '')
WHEN (instr(rec1.SUM, 'E1', 1, 1) = 0)
THEN '0'
ELSE SUBSTR(rec1.SUM, instr(rec1.SUM, 'E1', 1, 1) + 3, (instr(rec1.SUM,
'|', 1, 1)) - (instr(rec1.SUM, 'E1', 1, 1) + 3))
END Amount
,CASE
WHEN (instr(rec1.SUM, 'H1', 1, 1) = 0)
THEN '0'
WHEN (instr(rec1.SUM, 'E1', 1, 1) = 0)
THEN REPLACE((SUBSTR(rec1.SUM, instr(rec1.SUM, 'H1', 1, 1) + 3,
LENGTH(rec1.SUM) - 1)), '|', '')
ELSE REPLACE((SUBSTR(rec1.SUM, instr(rec1.SUM, 'H1', 1, 1) + 3,
instr(rec1.SUM, '|', 1, 2) - instr(rec1.SUM, 'H1', 1, 1) + 3)), '|', '')
END Hours
,rec1.element_Type_id
--,REC1.effective_date CHECKDATE
,REC1.classification_name Balance_Category
--,(
-- SELECT pet1.DESCRIPTION
-- FROM pay_element_types_vl pet1
-- WHERE pet1.element_Type_id = rec1.element_Type_id
-- ) AS Description
,REC1.REPORTING_NAME AS DESCRIPTION
,REC1.REPORTING_NAME
--,(
-- SELECT pet1.description
-- FROM pay_element_types_vl pet1
-- WHERE pet1.element_Type_id = rec1.element_Type_id
-- ) AS Reporting_Name
---,pjfv.attribute5
,
NVL((SELECT DISTINCT
PCAK.SEGMENT3
FROM pay_cost_alloc_keyflex pcak,
pay_costs pc
WHERE 1=1
AND pc.cost_allocation_keyflex_id = pcak.cost_allocation_keyflex_id
AND pc.RUN_RESULT_ID IN (REC1.RUN_RESULT_ID)
--AND PC.INPUT_VALUE_ID IN (REC1.INPUT_VALUE_ID)
AND PC.BALANCE_OR_COST='C'
) ,pjfv.attribute5 )Exp_Account
--PAYROLL_REL_ACTION_ID='243887898'
,pcaa.segment1 AS costing_department_company
,pcaa.segment2 AS costing_department_cost
,(
SELECT Substr(dept1.name, Instr(dept1.name, '_', 1, 2) + 1)
FROM HR_ALL_ORGANIZATION_UNITS_F_VL dept1
WHERE dept1.name LIKE pcaa.segment1 || '_' || pcaa.segment2 || '_' ||
'%'
AND pcaa.segment1 IS NOT NULL
AND :p_to_date BETWEEN dept1.effective_start_date
AND dept1.effective_end_date
AND rownum = 1
) AS costing_department_name
,(
SELECT xle.name
FROM XLE_ENTITY_PROFILES xle
WHERE xle.legal_entity_identifier = pcaa.segment1
) AS costing_legal_entity
,to_char(:p_from_date,'MM/DD/YYYY') AS From_Date
,to_char(:p_to_date, 'MM/DD/YYYY') AS "To_Date"
,pjfv.attribute3 WCC_d
,(
SELECT fv.description
FROM FND_VS_VALUE_SETS fvvs
,FND_VS_VALUES_vl fv
WHERE value_set_code = 'CCH_COMP_CLASS'
AND fvvs.VALUE_SET_ID = fv.VALUE_SET_ID
AND fv.value = pjfv.attribute3
) WCC
FROM per_all_assignments_m paam
,PER_PERSON_NAMES_F ppnf
,PER_ALL_PEOPLE_F papf
,PER_EXT_APP_IDENTIFIERS peai
,PER_JOBS_F_VL pjfv
,HR_ALL_ORGANIZATION_UNITS_F_VL dept
,HR_LEGAL_ENTITIES le
,pay_payroll_assignments ppasg
,PAY_COST_ALLOCATIONS_F pcak
,PAY_COST_ALLOC_ACCOUNTS pcaa
,(
SELECT
--rec.person_id
rec.element_type_id
,rec.ASS_NUMBER
,REC.REPORTING_NAME
--,REC.DESCRIPTION
,REC.CLASSIFICATION_NAME
,REC.RUN_RESULT_ID
,REC.input_value_id
--,REC.effective_date
,Replace(Replace(Xmlagg(XMLELEMENT("KRULE", rec.Input_Value ||
'-' || rec.Sum_Amount)), '<KRULE>', ''), '</KRULE>', '|') AS SUM
FROM (
and pbff.element_type_id=piv.element_type_id
AND piv.input_value_id IS NOT NULL
AND pbt.input_value_id IS NOT NULL
AND PBTL.LANGUAGE='US'
and pbt.base_balance_name=pbtl.balance_name
AND PBT.balance_type_id=PBTL.balance_type_id
and pbff.balance_type_id=pbt.balance_type_id
and NVL(pbff.legislation_code,'US')='US'
and NVL(PBT.legislation_code,'US')='US'
--AND PBT.INPUT_VALUE_ID=PBFF.INPUT_VALUE_ID--NEW
--and m.assignment_number='E1020853'
--AND PET.REPORTING_NAME='Diff Evening'
--AND PET.REPORTING_NAME in ('Diff Night','Regular')
AND G.RELATIONSHIP_GROUP_ID=(SELECT MAX(G2.RELATIONSHIP_GROUP_ID)
FROM PAY_REL_GROUPS_DN G2
WHERE G.PAYROLL_RELATIONSHIP_ID=G2.PAYROLL_RELATIONSHIP_ID
AND G2.START_DATE <= NVL(:p_to_date, TRUNC(SYSDATE))
--AND G2.PAYROLL_RELATIONSHIP_ID = pprd1.PAYROLL_RELATIONSHIP_ID
--AND G.ASSIGNMENT_ID=G2.ASSIGNMENT_ID
AND G2.GROUP_TYPE='A'
)
GROUP BY
--m.person_id
pr.element_type_id
,piv.name
,G.ASSIGNMENT_NUMBER
,CASE WHEN pbtl.REPORTING_NAME IS NULL THEN
pbtl.BALANCE_NAME ELSE PBTL.REPORTING_NAME END
--,CASE WHEN pbtl.DESCRIPTION IS NULL THEN
pbtl.BALANCE_NAME ELSE PBTL.DESCRIPTION END
--,pbtl.REPORTING_NAME
--,pbtl.REPORTING_NAME
,pec.classification_name
,V.RUN_RESULT_ID
,piv.input_value_id
--,pa.effective_date
ORDER BY piv.name
) rec
GROUP BY
--rec.person_id
rec.element_Type_id
,rec.ASS_NUMBER
,REC.REPORTING_NAME
--,REC.DESCRIPTION
,REC.CLASSIFICATION_NAME
,REC.RUN_RESULT_ID
,REC.input_value_id
--,REC.effective_date
) rec1
,seg1
,seg2
WHERE 1=1 AND
paam.assignment_type = 'E'
--AND papf.person_number = '1029291'
AND paam.effective_latest_change = 'Y'
--AND paam.primary_flag = 'N'
)
--and papf.person_number IN ('1019878','1020698','1024079') ,'1046184'
--)
--AND PAPF.PERSON_NUMBER='1021803'
'1019864',
1017927
1020206
1020206
) */
ORDER BY (
SELECT xle.name
FROM XLE_ENTITY_PROFILES xle
WHERE xle.legal_entity_identifier = pcaa.segment1
)
,pcaa.segment1)
GROUP BY
--PERSON_ID,
ELEMENT_TYPE_ID,
REPORTING_NAME,
EFFECTIVE_END_DATE,
ASSIGNMENT_NUMBER,
ORACLE_PN,
LAST_NAME,
FIRST_NAME,
FULL_NAME,
LAWSON_NUM,
JOB_CODE,
EXP_ACCOUNT,
JOB_NAME,
COST_CENTER,
COMPANY_NUM,
DEPT_NAME,
LEGAL_EMPLOYER,
BALANCE_CATEGORY,
DESCRIPTION,
COSTING_DEPARTMENT_COMPANY,
COSTING_DEPARTMENT_COST,
COSTING_DEPARTMENT_NAME,
COSTING_LEGAL_ENTITY,
FROM_DATE,
"To_Date",
WCC_D,
WCC
--,
--CHECKDATE