"Power is gained by Sharing Knowledge, not hoarding it.....!"
Thursday, 7 December 2017
Wednesday, 6 December 2017
Sunday, 3 December 2017
Query to get Pending Leave Request in Oracle Self Service
/*****Open Leave Requests In - Progress Workflows Oracle SSHR*****/
select papf.employee_number "Emp No.",
papf.full_name "Employee Name",
wf.status,
paat.name "Leave Type",
hrs.information1 "Start Date",
hrs.information2 "End Date",
DECODE(hrs.information5,80,hrs.information7 ||' Hrs',hrs.information8 || ' Days') "Duration",
wf.begin_date "Applied on",
wf.due_date "Due Date",
wf.from_user "Last Approver",
fnd.user_name,
wf.to_user "Pending With",
wf.subject,
wf.from_role,
wf.recipient_role,
wf.original_recipient,
hra.item_key
from wf_notifications wf,
hr_api_transactions hra,
hr_api_transaction_steps hrs,
per_absence_attendance_types paat,
fnd_user fnd,
per_people_x papf
where wf.item_key = hra.item_key
and hrs.transaction_id = hra.transaction_id
and paat.absence_attendance_type_id = hrs.information5
AND fnd.employee_id = hra.creator_person_id
AND papf.PERSON_ID = fnd.employee_id
AND WF.MESSAGE_TYPE = 'HRSSA'
AND WF.MESSAGE_TYPE = 'HRSSA'
AND WF.STATUS IN ('OPEN', 'CANCELLED')
AND Wf.subject like '%Leave%'
AND wf.subject not like 'Application%Error%'
AND wf.from_user not like 'SYSADMIN'
order by wf.begin_date
select papf.employee_number "Emp No.",
papf.full_name "Employee Name",
wf.status,
paat.name "Leave Type",
hrs.information1 "Start Date",
hrs.information2 "End Date",
DECODE(hrs.information5,80,hrs.information7 ||' Hrs',hrs.information8 || ' Days') "Duration",
wf.begin_date "Applied on",
wf.due_date "Due Date",
wf.from_user "Last Approver",
fnd.user_name,
wf.to_user "Pending With",
wf.subject,
wf.from_role,
wf.recipient_role,
wf.original_recipient,
hra.item_key
from wf_notifications wf,
hr_api_transactions hra,
hr_api_transaction_steps hrs,
per_absence_attendance_types paat,
fnd_user fnd,
per_people_x papf
where wf.item_key = hra.item_key
and hrs.transaction_id = hra.transaction_id
and paat.absence_attendance_type_id = hrs.information5
AND fnd.employee_id = hra.creator_person_id
AND papf.PERSON_ID = fnd.employee_id
AND WF.MESSAGE_TYPE = 'HRSSA'
AND WF.MESSAGE_TYPE = 'HRSSA'
AND WF.STATUS IN ('OPEN', 'CANCELLED')
AND Wf.subject like '%Leave%'
AND wf.subject not like 'Application%Error%'
AND wf.from_user not like 'SYSADMIN'
order by wf.begin_date
Query to get employee payment method in oracle hrms
SELECT pap.employee_number, pap.full_name, pap.person_id, paf.assignment_id,
pam.org_payment_method_name, pay.percentage, pay.priority,
pea.segment1 bank_name, pea.segment2 branch, pea.segment3 account_type,
pea.segment4 iban, pea.segment5 ACCOUNT
FROM pay_personal_payment_methods_f pay,
pay_org_payment_methods_f pam,
pay_external_accounts pea,
per_all_assignments_f paf,
per_all_people_f pap
-- Hr_lookups hrl
WHERE pay.org_payment_method_id = pam.org_payment_method_id
AND paf.assignment_id = pay.assignment_id
AND paf.person_id = pap.person_id
AND TRUNC (SYSDATE) BETWEEN pap.effective_start_date AND pap.effective_end_date
AND TRUNC (SYSDATE) BETWEEN paf.effective_start_date AND paf.effective_end_date
AND TRUNC (SYSDATE) BETWEEN pay.effective_start_date AND pay.effective_end_date
AND TRUNC (SYSDATE) BETWEEN pam.effective_start_date AND pam.effective_end_date
AND paf.primary_flag = 'Y'
AND pea.external_account_id = pay.external_account_id
pam.org_payment_method_name, pay.percentage, pay.priority,
pea.segment1 bank_name, pea.segment2 branch, pea.segment3 account_type,
pea.segment4 iban, pea.segment5 ACCOUNT
FROM pay_personal_payment_methods_f pay,
pay_org_payment_methods_f pam,
pay_external_accounts pea,
per_all_assignments_f paf,
per_all_people_f pap
-- Hr_lookups hrl
WHERE pay.org_payment_method_id = pam.org_payment_method_id
AND paf.assignment_id = pay.assignment_id
AND paf.person_id = pap.person_id
AND TRUNC (SYSDATE) BETWEEN pap.effective_start_date AND pap.effective_end_date
AND TRUNC (SYSDATE) BETWEEN paf.effective_start_date AND paf.effective_end_date
AND TRUNC (SYSDATE) BETWEEN pay.effective_start_date AND pay.effective_end_date
AND TRUNC (SYSDATE) BETWEEN pam.effective_start_date AND pam.effective_end_date
AND paf.primary_flag = 'Y'
AND pea.external_account_id = pay.external_account_id
Query to get Employee Payroll Cost
SELECT per.employee_number,
per.full_name,
petf.element_name,
DECODE (pc.debit_or_credit, 'D', 'Debit', 'C', 'Credit', NULL)
debit_or_credit,
pc.costed_value amount,
pcak.segment4 account,
ffvt.description account_description,
ppa.effective_date
FROM pay_costs pc,
pay_assignment_actions pac,
pay_payroll_actions ppa,
per_all_assignments_f paaf,
per_all_people_f per,
pay_run_results prr,
pay_element_types_f petf,
pay_cost_allocation_keyflex pcak,
fnd_flex_value_sets ffvs,
fnd_flex_values ffv,
fnd_flex_values_tl ffvt
WHERE pac.assignment_action_id = pc.assignment_action_id
AND paaf.assignment_id = pac.assignment_id
AND pac.payroll_action_id = ppa.payroll_action_id
AND paaf.person_id = per.person_id
AND paaf.assignment_type = 'E'
AND paaf.assignment_status_type_id = 1
AND paaf.primary_flag = 'Y'
AND ppa.effective_date BETWEEN per.effective_start_date
AND per.effective_end_date
AND ppa.effective_date BETWEEN paaf.effective_start_date
AND paaf.effective_end_date
AND ppa.effective_date BETWEEN :l_date_from AND :l_date_to
AND pc.run_result_id = prr.run_result_id
AND petf.element_type_id = prr.element_type_id
AND per.employee_number = nvl(:l_employee_number,per.employee_number)
AND pcak.cost_allocation_keyflex_id = pc.cost_allocation_keyflex_id
AND flex_value_set_name = 'XXX_FIN_ACC_VS' ---enter your value set name
AND ffv.flex_value_set_id = ffvs.flex_value_set_id
AND ffvt.flex_value_id = ffv.flex_value_id
AND ffvs.flex_value_set_id = ffv.flex_value_set_id
AND ffvt.language = 'US'
AND ffv.enabled_flag = 'Y'
AND pcak.segment4 = ffv.flex_value
per.full_name,
petf.element_name,
DECODE (pc.debit_or_credit, 'D', 'Debit', 'C', 'Credit', NULL)
debit_or_credit,
pc.costed_value amount,
pcak.segment4 account,
ffvt.description account_description,
ppa.effective_date
FROM pay_costs pc,
pay_assignment_actions pac,
pay_payroll_actions ppa,
per_all_assignments_f paaf,
per_all_people_f per,
pay_run_results prr,
pay_element_types_f petf,
pay_cost_allocation_keyflex pcak,
fnd_flex_value_sets ffvs,
fnd_flex_values ffv,
fnd_flex_values_tl ffvt
WHERE pac.assignment_action_id = pc.assignment_action_id
AND paaf.assignment_id = pac.assignment_id
AND pac.payroll_action_id = ppa.payroll_action_id
AND paaf.person_id = per.person_id
AND paaf.assignment_type = 'E'
AND paaf.assignment_status_type_id = 1
AND paaf.primary_flag = 'Y'
AND ppa.effective_date BETWEEN per.effective_start_date
AND per.effective_end_date
AND ppa.effective_date BETWEEN paaf.effective_start_date
AND paaf.effective_end_date
AND ppa.effective_date BETWEEN :l_date_from AND :l_date_to
AND pc.run_result_id = prr.run_result_id
AND petf.element_type_id = prr.element_type_id
AND per.employee_number = nvl(:l_employee_number,per.employee_number)
AND pcak.cost_allocation_keyflex_id = pc.cost_allocation_keyflex_id
AND flex_value_set_name = 'XXX_FIN_ACC_VS' ---enter your value set name
AND ffv.flex_value_set_id = ffvs.flex_value_set_id
AND ffvt.flex_value_id = ffv.flex_value_id
AND ffvs.flex_value_set_id = ffv.flex_value_set_id
AND ffvt.language = 'US'
AND ffv.enabled_flag = 'Y'
AND pcak.segment4 = ffv.flex_value
Employee Termination Query
SELECT pap.employee_number, pap.full_name, pap.start_date hire_date,
ps.actual_termination_date, ps.leaving_reason
FROM per_all_assignments_f paf,
per_periods_of_service ps,
per_all_people_f pap,
per_person_types ppt
WHERE paf.period_of_service_id = ps.period_of_service_id
AND ps.actual_termination_date IS NOT NULL
AND pap.person_id = paf.person_id
AND pap.person_type_id = ppt.person_type_id
AND ps.actual_termination_date BETWEEN pap.effective_start_date
AND pap.effective_end_date
AND ps.actual_termination_date BETWEEN paf.effective_start_date
AND paf.effective_end_date
AND ps.actual_termination_date >= &Termination_date
AND ps.leaving_reason = &reason
ORDER BY pap.employee_number, ps.actual_termination_date
ps.actual_termination_date, ps.leaving_reason
FROM per_all_assignments_f paf,
per_periods_of_service ps,
per_all_people_f pap,
per_person_types ppt
WHERE paf.period_of_service_id = ps.period_of_service_id
AND ps.actual_termination_date IS NOT NULL
AND pap.person_id = paf.person_id
AND pap.person_type_id = ppt.person_type_id
AND ps.actual_termination_date BETWEEN pap.effective_start_date
AND pap.effective_end_date
AND ps.actual_termination_date BETWEEN paf.effective_start_date
AND paf.effective_end_date
AND ps.actual_termination_date >= &Termination_date
AND ps.leaving_reason = &reason
ORDER BY pap.employee_number, ps.actual_termination_date
Employee Wise HR Query for Saudi
SELECT pap.employee_number "Employee No.", pap.full_name "Full Name",
NVL (pap.national_identifier,
ppe.pei_information1) "Iqama/Id Number",
hlk.meaning "Nationality", hsc.segment2 "GOSI Number",
ppa.proposed_salary_n "Basic Salary",
TO_CHAR (pap.start_date, 'DD-MON-YYYY') "Hire Date",
TO_CHAR (pap.date_of_birth, 'DD-MON-YYYY') "Date Of Birth",
pap.per_information8 "AR Date of Birth",
pap.per_information9 "AR Hire Date", pj.NAME "Job",
pp.NAME "Position", pj.NAME "Grade", hao.NAME "Department",
ppg.group_name "People Group",
ppe.pei_information2 "Iqama Profession",
ppe.pei_information4 "AR Iqama Exp Date",
ppe.pei_information7 "ENG Iqama Exp Date",
ppe1.pei_information1 "Passport No",
ppe1.pei_information4 "Passport Exp Date",
ppe1.pei_information5 "Passport Issue Place"
FROM hr.per_all_people_f pap,
hr.per_all_assignments_f paf,
hr.hr_all_organization_units hao,
per_pay_proposals ppa,
hr.per_jobs pj,
per_positions pp,
hr.per_grades pg,
pay_people_groups ppg,
hr.hr_locations_all hla,
hr_soft_coding_keyflex hsc,
apps.hr_lookups hlk,
per_people_extra_info ppe,
per_people_extra_info ppe1
WHERE paf.organization_id = hao.organization_id
AND paf.job_id = pj.job_id
AND pap.person_id = paf.person_id
AND paf.location_id = hla.location_id
AND pap.person_id = ppe.person_id(+)
AND ppe.information_type(+) = 'SA_IQAMA'
AND pap.person_id = ppe1.person_id(+)
AND ppe1.information_type(+) = 'SA_PASSPORT'
AND paf.people_group_id = ppg.people_group_id(+)
AND hsc.segment1 = hao.business_group_id
AND hsc.soft_coding_keyflex_id(+) = paf.soft_coding_keyflex_id
AND paf.grade_id = pg.grade_id(+)
AND paf.assignment_id = ppa.assignment_id
AND paf.position_id = pp.position_id(+)
AND TRUNC (SYSDATE) BETWEEN pap.effective_start_date
AND pap.effective_end_date
AND TRUNC (SYSDATE) BETWEEN paf.effective_start_date
AND paf.effective_end_date
AND hlk.lookup_type = 'NATIONALITY'
AND hlk.lookup_code(+) = pap.nationality
ORDER BY TO_NUMBER (pap.employee_number)
NVL (pap.national_identifier,
ppe.pei_information1) "Iqama/Id Number",
hlk.meaning "Nationality", hsc.segment2 "GOSI Number",
ppa.proposed_salary_n "Basic Salary",
TO_CHAR (pap.start_date, 'DD-MON-YYYY') "Hire Date",
TO_CHAR (pap.date_of_birth, 'DD-MON-YYYY') "Date Of Birth",
pap.per_information8 "AR Date of Birth",
pap.per_information9 "AR Hire Date", pj.NAME "Job",
pp.NAME "Position", pj.NAME "Grade", hao.NAME "Department",
ppg.group_name "People Group",
ppe.pei_information2 "Iqama Profession",
ppe.pei_information4 "AR Iqama Exp Date",
ppe.pei_information7 "ENG Iqama Exp Date",
ppe1.pei_information1 "Passport No",
ppe1.pei_information4 "Passport Exp Date",
ppe1.pei_information5 "Passport Issue Place"
FROM hr.per_all_people_f pap,
hr.per_all_assignments_f paf,
hr.hr_all_organization_units hao,
per_pay_proposals ppa,
hr.per_jobs pj,
per_positions pp,
hr.per_grades pg,
pay_people_groups ppg,
hr.hr_locations_all hla,
hr_soft_coding_keyflex hsc,
apps.hr_lookups hlk,
per_people_extra_info ppe,
per_people_extra_info ppe1
WHERE paf.organization_id = hao.organization_id
AND paf.job_id = pj.job_id
AND pap.person_id = paf.person_id
AND paf.location_id = hla.location_id
AND pap.person_id = ppe.person_id(+)
AND ppe.information_type(+) = 'SA_IQAMA'
AND pap.person_id = ppe1.person_id(+)
AND ppe1.information_type(+) = 'SA_PASSPORT'
AND paf.people_group_id = ppg.people_group_id(+)
AND hsc.segment1 = hao.business_group_id
AND hsc.soft_coding_keyflex_id(+) = paf.soft_coding_keyflex_id
AND paf.grade_id = pg.grade_id(+)
AND paf.assignment_id = ppa.assignment_id
AND paf.position_id = pp.position_id(+)
AND TRUNC (SYSDATE) BETWEEN pap.effective_start_date
AND pap.effective_end_date
AND TRUNC (SYSDATE) BETWEEN paf.effective_start_date
AND paf.effective_end_date
AND hlk.lookup_type = 'NATIONALITY'
AND hlk.lookup_code(+) = pap.nationality
ORDER BY TO_NUMBER (pap.employee_number)
Subscribe to:
Posts (Atom)