0% found this document useful (0 votes)
20 views2 pages

Payroll SQL

This document contains a long SQL query that is selecting data from various tables to compare employee data between Oracle and Alight systems. It is joining data from mismatch and OHR tables based on the batch ID and employee ID. The query contains logic to return the correct GPS value for different field names being compared.

Uploaded by

Yuvaraj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views2 pages

Payroll SQL

This document contains a long SQL query that is selecting data from various tables to compare employee data between Oracle and Alight systems. It is joining data from mismatch and OHR tables based on the batch ID and employee ID. The query contains logic to return the correct GPS value for different field names being compared.

Uploaded by

Yuvaraj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

-- Payroll Mismatch - With GPS data Column

select
mis.employee_id,
ohr.last_name||', '||ohr.first_name employee_name,
mis.field_name,
mis.oracle_value,
mis.alight_value,
--(select --gps.assignment_status
case mis.field_name
when 'ADDRESS_LINE_2' then (select gps.ADDRESS_LINE2 from XXHR_GSI_INTF_PERSON_V
gps where gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'LATEST_START_DATE' then (select to_char(gps.HIRE_DATE, 'YYYYMMDD') from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'WORK_LOCATION ' then (select gps.LOCATION_CODE from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'COMPANY_CODE' then (select gps.COMPANY_CODE from XXHR_GSI_INTF_PERSON_V gps
where gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'ASSIGNMENT_STATUS' then (select gps.ASSIGNMENT_STATUS from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'ADDRESS_LINE_1' then (select gps.ADDRESS_LINE1 from XXHR_GSI_INTF_PERSON_V
gps where gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'CITY' then (select gps.CITY from XXHR_GSI_INTF_PERSON_V gps where
gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'ZIP_CODE' then (select gps.ZIP from XXHR_GSI_INTF_PERSON_V gps where
gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'ADDRESS_LINE_3' then (select gps.ADDRESS_LINE3 from XXHR_GSI_INTF_PERSON_V
gps where gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'COUNTRY_CODE' then (select gps.COUNTRY from XXHR_GSI_INTF_PERSON_V gps where
gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'PAY_GROUP' then (select gps.PS_PAY_GROUP_CODE from XXHR_GSI_INTF_PERSON_V
gps where gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'SALARY_ADMINISTRATION_PLAN' then (select gps.PAY_BASIS from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'SOCIAL_SECURITY_NUMBER' then (select gps.NATIONAL_IDENTIFIER from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'STATE' then (select gps.REGION_2 from XXHR_GSI_INTF_PERSON_V gps where
gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'TAX_LOCATION_CODE' then (select gps.US_TAX_LOCATION_CODE from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'ASSIGNMENT_HOME_DEPT' then (select substr(gps.ORG_COST_SEGMENTS, 1, 5) ||
substr(gps.ORG_COST_SEGMENTS, 7, 5) from XXHR_GSI_INTF_PERSON_V gps where
gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
--when 'ADDRESS_EFFECTIVE_DATE' then (select gps. from XXHR_GSI_INTF_PERSON_V gps
where gps.employee_number(+) = mis.employee_id)
when 'JOB_GRADE' then (select gps.SALARIED_HOURLY_GRADE from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'HIRE_DATE' then (select to_char(gps.DATE_FIRST_HIRED, 'YYYMMDD') from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'LBC_DEPARTMENT_ID_2' then (select gps.JED_COST_ALLOC2 from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'PERCENT_OF_DISTRIBUTION_2' then (select gps.JED_PERCENT2 from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'FIRST_NAME' then (select gps.FIRST_NAME from XXHR_GSI_INTF_PERSON_V gps
where gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'LBC_DEPARTMENT_ID_1' then (select gps.JED_COST_ALLOC1 from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'LBC_DEPARTMENT_ID_3' then (select gps.JED_COST_ALLOC3 from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'PERCENT_OF_DISTRIBUTION_1' then (select gps.JED_PERCENT1 from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'PERCENT_OF_DISTRIBUTION_3' then (select gps.JED_PERCENT3 from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'SUFFIX' then (select gps.SUFFIX from XXHR_GSI_INTF_PERSON_V gps where
gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'HOURLY_SALARY_INDICATOR' then (select gps.HOURLY_SALARIED_EXEMPT_CODE from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'MIDDLE_NAME' then (select gps.MIDDLE_NAME from XXHR_GSI_INTF_PERSON_V gps
where gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'UNION_CODE' then (select gps.UNION_CODE from XXHR_GSI_INTF_PERSON_V gps
where gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'LAST_NAME' then (select gps.LAST_NAME from XXHR_GSI_INTF_PERSON_V gps where
gps.employee_number(+) = mis.employee_id AND ROWNUM < 2)
when 'VACATION_BENEFIT_DATE' then (select gps.VACATION_BENEFIT_DATE from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'JOB_CODE' then (select substr(gps.HOURLY_JOB, length(gps.HOURLY_JOB) - 5, 5)
from XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'LEAVING_REASON' then (select gps.SECONDARY_LEAVING_REASON from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
when 'CORPORATE_EMAIL_ADDRESS' then (select gps.EMAIL_ADDRESS from
XXHR_GSI_INTF_PERSON_V gps where gps.employee_number(+) = mis.employee_id AND
ROWNUM < 2)
else 'NA_Not Available'
END as GPS_Value,
' ' Arconic_comments,
' ' Alight_Comments,
ohr.host_country,
mis.comments,
mis.record_key,
mis.batch_id,
mis.compare_date
from ARC_PSINTFC.xxhr_ushr_compare_mismatch mis, ARC_PSINTFC.xxhr_ushr_compare_ohr
ohr
where mis.batch_id = :batch_id --20190325010137337
and mis.record_key ='PR'
and ohr.batch_id(+) = mis.batch_id
and ohr.employee_id(+) = mis.employee_id
--order by mis.record_key, mis.employee_id, mis.field_name, mis.oracle_value,
mis.alight_value DO NOT SORT IN SQL. SORT IN EXCEL.

You might also like