Query to get the costing information attached to person in Fusion HCM
SELECT PAP.PERSON_NUMBER,
PPN.FULL_NAME,
PAA.ASSIGNMENT_NUMBER,
SUBSTR(PCAF.EFFECTIVE_START_DATE,1,10) AS COSTING_START_DATE,
SUBSTR(PCAF.EFFECTIVE_END_DATE,1,10) AS COSTING_END_DATE,
(PCA.PROPORTION * 100) AS PERCENTAGE,
PCA.SEGMENT1 AS COMPANY,
PCA.SEGMENT2 AS DEPARTMENT_ID,
PCA.SEGMENT3 AS ACCOUNT_NUMBER,
PCA.SEGMENT9 AS PRODUCT,
PCA.SEGMENT10 AS PROJECT,
PCA.SEGMENT11 INTERCO,
PCAF.SOURCE_TYPE,
PAS.USER_STATUS
FROM PER_ALL_PEOPLE_F PAP,
PER_PERSON_NAMES_F PPN,
PER_ALL_ASSIGNMENTS_M PAA,
PAY_PAY_RELATIONSHIPS_DN PPR,
PAY_RELATIONSHIP_TYPES PRT,
PAY_COST_ALLOCATIONS_F PCAF,
PAY_COST_ALLOC_ACCOUNTS PCA,
PER_ASSIGNMENT_STATUS_TYPES_VL PAS
WHERE 1 = 1
AND PAP.PERSON_ID = PPN.PERSON_ID
AND PPN.NAME_TYPE = 'GLOBAL'
AND PPN.PERSON_ID = PAA.PERSON_ID
AND PAA.ASSIGNMENT_TYPE = 'E'
AND PAA.ASSIGNMENT_SEQUENCE = (SELECT MAX(ASSIGNMENT_SEQUENCE)
FROM PER_ALL_ASSIGNMENTS_M
WHERE PERSON_ID = PAP.PERSON_ID
AND ASSIGNMENT_TYPE = 'E'
AND EFFECTIVE_LATEST_CHANGE = 'Y'
AND TRUNC(SYSDATE) BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE)
AND PAA.EFFECTIVE_LATEST_CHANGE = 'Y'
AND PAA.ASSIGNMENT_STATUS_TYPE_ID = PAS.ASSIGNMENT_STATUS_TYPE_ID(+)
AND PAP.PERSON_ID = PPR.PERSON_ID
AND TO_CHAR(PPR.START_DATE,'YYYYMMDD') = (SELECT MAX(TO_CHAR(START_DATE,'YYYYMMDD')) FROM PAY_PAY_RELATIONSHIPS_DN WHERE PERSON_ID = PAP.PERSON_ID)
AND PPR.PAYROLL_RELATIONSHIP_ID = PCAF.PAYROLL_RELATIONSHIP_ID(+)
AND PCAF.COST_ALLOCATION_RECORD_ID = PCA.COST_ALLOCATION_RECORD_ID(+)
AND (PCAF.SOURCE_TYPE IN ('PREL','ASG') OR PCAF.SOURCE_TYPE IS NULL)
AND PCA.SOURCE_SUB_TYPE(+) = 'COST'
AND PPR.RELATIONSHIP_TYPE_ID = PRT.RELATIONSHIP_TYPE_ID
AND PRT.BASE_REL_TYPE_NAME = 'Standard'
AND TRUNC(SYSDATE) BETWEEN PCAF.EFFECTIVE_START_DATE(+) AND PCAF.EFFECTIVE_END_DATE(+)
AND TRUNC(SYSDATE) BETWEEN PPR.START_DATE AND PPR.END_DATE
AND TRUNC(SYSDATE) BETWEEN PAP.EFFECTIVE_START_DATE AND PAP.EFFECTIVE_END_DATE
AND TRUNC(SYSDATE) BETWEEN PPN.EFFECTIVE_START_DATE AND PPN.EFFECTIVE_END_DATE
AND TRUNC(SYSDATE) BETWEEN PAA.EFFECTIVE_START_DATE AND PAA.EFFECTIVE_END_DATE
ORDER BY PAP.PERSON_NUMBER
PPN.FULL_NAME,
PAA.ASSIGNMENT_NUMBER,
SUBSTR(PCAF.EFFECTIVE_START_DATE,1,10) AS COSTING_START_DATE,
SUBSTR(PCAF.EFFECTIVE_END_DATE,1,10) AS COSTING_END_DATE,
(PCA.PROPORTION * 100) AS PERCENTAGE,
PCA.SEGMENT1 AS COMPANY,
PCA.SEGMENT2 AS DEPARTMENT_ID,
PCA.SEGMENT3 AS ACCOUNT_NUMBER,
PCA.SEGMENT9 AS PRODUCT,
PCA.SEGMENT10 AS PROJECT,
PCA.SEGMENT11 INTERCO,
PCAF.SOURCE_TYPE,
PAS.USER_STATUS
FROM PER_ALL_PEOPLE_F PAP,
PER_PERSON_NAMES_F PPN,
PER_ALL_ASSIGNMENTS_M PAA,
PAY_PAY_RELATIONSHIPS_DN PPR,
PAY_RELATIONSHIP_TYPES PRT,
PAY_COST_ALLOCATIONS_F PCAF,
PAY_COST_ALLOC_ACCOUNTS PCA,
PER_ASSIGNMENT_STATUS_TYPES_VL PAS
WHERE 1 = 1
AND PAP.PERSON_ID = PPN.PERSON_ID
AND PPN.NAME_TYPE = 'GLOBAL'
AND PPN.PERSON_ID = PAA.PERSON_ID
AND PAA.ASSIGNMENT_TYPE = 'E'
AND PAA.ASSIGNMENT_SEQUENCE = (SELECT MAX(ASSIGNMENT_SEQUENCE)
FROM PER_ALL_ASSIGNMENTS_M
WHERE PERSON_ID = PAP.PERSON_ID
AND ASSIGNMENT_TYPE = 'E'
AND EFFECTIVE_LATEST_CHANGE = 'Y'
AND TRUNC(SYSDATE) BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE)
AND PAA.EFFECTIVE_LATEST_CHANGE = 'Y'
AND PAA.ASSIGNMENT_STATUS_TYPE_ID = PAS.ASSIGNMENT_STATUS_TYPE_ID(+)
AND PAP.PERSON_ID = PPR.PERSON_ID
AND TO_CHAR(PPR.START_DATE,'YYYYMMDD') = (SELECT MAX(TO_CHAR(START_DATE,'YYYYMMDD')) FROM PAY_PAY_RELATIONSHIPS_DN WHERE PERSON_ID = PAP.PERSON_ID)
AND PPR.PAYROLL_RELATIONSHIP_ID = PCAF.PAYROLL_RELATIONSHIP_ID(+)
AND PCAF.COST_ALLOCATION_RECORD_ID = PCA.COST_ALLOCATION_RECORD_ID(+)
AND (PCAF.SOURCE_TYPE IN ('PREL','ASG') OR PCAF.SOURCE_TYPE IS NULL)
AND PCA.SOURCE_SUB_TYPE(+) = 'COST'
AND PPR.RELATIONSHIP_TYPE_ID = PRT.RELATIONSHIP_TYPE_ID
AND PRT.BASE_REL_TYPE_NAME = 'Standard'
AND TRUNC(SYSDATE) BETWEEN PCAF.EFFECTIVE_START_DATE(+) AND PCAF.EFFECTIVE_END_DATE(+)
AND TRUNC(SYSDATE) BETWEEN PPR.START_DATE AND PPR.END_DATE
AND TRUNC(SYSDATE) BETWEEN PAP.EFFECTIVE_START_DATE AND PAP.EFFECTIVE_END_DATE
AND TRUNC(SYSDATE) BETWEEN PPN.EFFECTIVE_START_DATE AND PPN.EFFECTIVE_END_DATE
AND TRUNC(SYSDATE) BETWEEN PAA.EFFECTIVE_START_DATE AND PAA.EFFECTIVE_END_DATE
ORDER BY PAP.PERSON_NUMBER
Comments
Post a Comment