0% found this document useful (0 votes)
211 views

Probation Query

This SQL query selects employee data such as name, hire date, job, department, manager, and probation details from various HR tables. It includes the employee's current job assignment, manager, and whether their probation period has ended. It filters for active employees hired after a certain date where the probation review task status is not complete.
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
211 views

Probation Query

This SQL query selects employee data such as name, hire date, job, department, manager, and probation details from various HR tables. It includes the employee's current job assignment, manager, and whether their probation period has ended. It filters for active employees hired after a certain date where the probation review task status is not complete.
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

select Distinct papf.person_number,pn.person_id,hr_org.

name
department,pj.name job,pn.DISPLAY_NAME Employee_Name,TO_CHAR (ppos.date_start,
'DD/MM/YYYY') hire_date,
(
SELECT
MAX(customary_name) DOC_NAME
FROM HRA_EVAL_STEPS es
JOIN HRA_EVALUATIONS ev ON es.EVALUATION_ID=ev.EVALUATION_ID
JOIN HRA_TMPL_DEFNS_B td ON ev.TEMPLATE_DEFN_ID=td.TEMPLATE_DEFN_ID
JOIN HRA_PF_TASK_ROLES_B tr ON td.PROCESS_FLOW_ID=tr.PROCESS_FLOW_ID AND
tr.TASK_CODE=es.STEP_CODE
JOIN HRA_PF_TASK_ROLES_TL trl ON
tr.PROCESS_TASK_ROLE_ID=trl.PROCESS_TASK_ROLE_ID
JOIN HRA_TMPL_PERIODS_TL tp ON ev.TMPL_PERIOD_ID=tp.TMPL_PERIOD_ID
WHERE
es.PARENT_STEP_ID IS NULL
AND trl.LANGUAGE='US'
AND tp.LANGUAGE='US' AND customary_name like '%Probation%'
AND ev.WORKER_ID=pn.person_id
)TASKNAME,
(
SELECT
Max(STEP_STATUS) Task_Status
FROM HRA_EVAL_STEPS es
JOIN HRA_EVALUATIONS ev ON es.EVALUATION_ID=ev.EVALUATION_ID
JOIN HRA_TMPL_DEFNS_B td ON ev.TEMPLATE_DEFN_ID=td.TEMPLATE_DEFN_ID
JOIN HRA_PF_TASK_ROLES_B tr ON td.PROCESS_FLOW_ID=tr.PROCESS_FLOW_ID AND
tr.TASK_CODE=es.STEP_CODE
JOIN HRA_PF_TASK_ROLES_TL trl ON
tr.PROCESS_TASK_ROLE_ID=trl.PROCESS_TASK_ROLE_ID
JOIN HRA_TMPL_PERIODS_TL tp ON ev.TMPL_PERIOD_ID=tp.TMPL_PERIOD_ID
WHERE
es.PARENT_STEP_ID IS NULL
AND trl.LANGUAGE='US'
AND tp.LANGUAGE='US' AND customary_name = '2022 - AHD Probation Review
Document'
AND ev.WORKER_ID=pn.person_id)Task_Status,
MGR.manager_name ln_mgr_name,
PROB.probation_period ProbationPeriod,
PROB.date_probation_end ProbEndDate
from per_person_names_f pn Inner Join per_all_assignments_f asg_act on
asg_act.person_id = pn.person_id
inner Join hr_organization_units hr_org on hr_org.organization_id =
asg_act.organization_id
Inner JOIN per_jobs pj ON pj.job_id = asg_act.job_id Inner Join
per_all_people_f papf on papf.PERSON_ID=pn.person_id
Inner Join per_periods_of_service ppos on ppos.period_of_service_id =
asg_act.period_of_service_id and ppos.person_id = pn.person_id
Left Join (SELECT ppnf.display_name manager_name,
papf.person_number,
mgr_papf.person_number mgr_pn,
papf.person_id,
sup.assignment_id
FROM per_person_names_f ppnf,
per_assignment_supervisors_f sup,
per_all_people_f papf,
per_all_people_f mgr_papf,
per_all_assignments_f paaf
WHERE ppnf.person_id = sup.manager_id
AND papf.person_id = sup.person_id
AND Paaf.assignment_id = sup.assignment_id
AND TRUNC (SYSDATE) BETWEEN TRUNC
(sup.effective_start_date)
AND TRUNC
(sup.effective_end_date)
AND TRUNC (SYSDATE) BETWEEN TRUNC
(papf.effective_start_date)
AND TRUNC
(papf.effective_end_date)
AND TRUNC (SYSDATE) BETWEEN TRUNC
(ppnf.effective_start_date)
AND TRUNC
(ppnf.effective_end_date)
AND PAAF.ASSIGNMENT_STATUS_TYPE = 'ACTIVE'
AND PAAF.primary_flag= UPPER ('Y')
AND TRUNC (SYSDATE) BETWEEN TRUNC
(PAAF.effective_start_date) AND TRUNC (PAAF.effective_end_date)
AND UPPER (sup.primary_flag) = 'Y'
AND UPPER (ppnf.name_type) = 'GLOBAL'
AND sup.manager_type = 'LINE_MANAGER'
AND mgr_papf.person_id = sup.manager_id
AND TRUNC (SYSDATE) BETWEEN TRUNC
(mgr_papf.effective_start_date) AND TRUNC (mgr_papf.effective_end_date))MGR on
MGR.person_id=pn.person_id
Left Join (select probation_period, TO_CHAR (date_probation_end,
'DD/MM/YYYY') date_probation_end,PERSON_ID from PER_ALL_ASSIGNMENTS_M where
trunc(sysdate) BETWEEN trunc(effective_start_date) AND
trunc(effective_end_date)
AND system_person_type = 'EMP'
AND assignment_type = 'E'
AND assignment_status_type = 'ACTIVE' )PROB on
PROB.PERSON_ID=pn.person_id
where pn.NAME_TYPE='GLOBAL' and TRUNC(sysdate) BETWEEN
pn.effective_start_date AND pn.effective_end_date and UPPER
(asg_act.primary_flag) = UPPER ('Y')
AND TRUNC (SYSDATE) BETWEEN TRUNC (asg_act.effective_start_date)
AND TRUNC (asg_act.effective_end_date)
and TRUNC (SYSDATE) BETWEEN NVL (TRUNC
(pj.effective_start_date),
TRUNC (SYSDATE))
AND NVL (TRUNC
(pj.effective_end_date),
TRUNC (SYSDATE))

AND TRUNC (SYSDATE) BETWEEN TRUNC (papf.effective_start_date)


AND TRUNC
(papf.effective_end_date)
AND ((ppos.date_start = (SELECT MAX (pps.date_start)
FROM per_periods_of_service
pps
WHERE pps.person_id =
pn.person_id)) )
AND asg_act.assignment_status_type = 'ACTIVE'
AND Trunc(sysdate)>= to_date(PROB.date_probation_end,'yyyy-MM-DD')
and TO_CHAR (ppos.date_start, 'YYYY-MM-DD')>= to_date('2021-08-01','YYYY-MM-
DD')
AND Task_Status NOT IN ('COMP')
--and papf.person_number in('104678')

You might also like