Query to get the existing element entries for a person in Fusion

select aaa.person_number,aaa.element_name,aaa.creator_type,aaa.created_by,aaa.creation_Date,aaa.entry_range,aaa.multiple_entry_count,

(select min(date_from)||'~'||max(date_to) from pay_entry_usages where element_entry_id=aaa.element_entry_id) usage_range,

aaa.element_entry_id,

(select --LISTAGG(piv.name, '; ') WITHIN GROUP (ORDER BY piv.display_sequence)

rtrim(xmlserialize(content extract(xmlagg(xmlelement("e", piv.name||'; ') order by piv.display_sequence), '//text()')), ',' )

from PAY_INPUT_VALUES_VL piv

where piv.element_type_id = aaa.element_type_id and aaa.start_Date between piv.effective_start_date and piv.EFFECTIVE_END_DATE) inputs,

(select --LISTAGG(piv.name||'='||peev.screen_entry_value, '; ') WITHIN GROUP (ORDER BY piv.display_sequence)

rtrim(xmlserialize(content extract(xmlagg(xmlelement("e", piv.name||'='||peev.screen_entry_value||'; ') order by piv.display_sequence), '//text()')), ',' )

from PAY_INPUT_VALUES_VL piv,pay_element_entry_values_f peev

where peev.element_entry_id = aaa.element_entry_id and peev.input_value_id = piv.input_value_id

and piv.element_type_id = aaa.element_type_id and aaa.start_Date between piv.effective_start_date and piv.EFFECTIVE_END_DATE

and aaa.start_Date between peev.effective_start_date and peev.EFFECTIVE_END_DATE) input_values,

(select max('PERL:'||prl.payroll_relationship_number||'('||prl.payroll_relationship_id||'); '||'TERM:'||trm.assignment_number||'('||trm.relationship_group_id||'); '||'ASG:'||asg.assignment_number||'('||asg.relationship_group_id||'); ')

from pay_entry_usages peu,

pay_rel_groups_dn asg,

pay_rel_groups_dn trm,

PAY_PAY_RELATIONSHIPS_DN prl

where peu.element_entry_id=aaa.element_entry_id

and peu.payroll_assignment_id=asg.relationship_group_id (+)

and peu.payroll_term_id=trm.relationship_group_id (+)

and peu.payroll_relationship_id = prl.payroll_relationship_id

) Payroll_Employment,

(select max('TERM:'||htrm.assignment_number||'('||htrm.assignment_id||'); '||'ASG:'||hasg.assignment_number||'('||hasg.assignment_id||'); ')

from pay_entry_usages peu,

pay_rel_groups_dn asg,

pay_rel_groups_dn trm,

per_all_assignments_m hasg,

per_all_assignments_m htrm

where peu.element_entry_id=aaa.element_entry_id

and peu.payroll_assignment_id=asg.relationship_group_id (+)

and peu.payroll_assignment_id=trm.relationship_group_id (+)

and hasg.assignment_id (+) = asg.assignment_id

and htrm.assignment_id (+) = trm.term_id

) HR_Employment

from (select peo.person_number,

pet.element_name,

pee.creator_type,

pee.created_by,

pee.creation_Date,

pee.element_entry_id,

pee.element_type_id,

pee.multiple_entry_count,

min(pee.effective_start_date) as start_Date,

min(pee.effective_start_date)||'~'||max(pee.effective_end_date) entry_range

from per_all_people_f peo,

pay_element_entries_f pee,

pay_element_types_vl pet

where peo.person_number = :P_PERSON_NUM

and pee.person_id = peo.person_id

and pee.element_type_id = pet.element_type_id

and pet.element_name = :P_ELE_NAME

group by peo.person_number,

pet.element_name,

pee.element_type_id,

pee.creator_type,

pee.created_by,

pee.creation_Date,

pee.element_entry_id,

pee.multiple_entry_count) aaa

order by aaa.person_number,

aaa.element_name,

aaa.creator_type,

aaa.created_by,

aaa.creation_Date,

aaa.element_entry_id 

Comments

Popular posts from this blog

Query to get Salary Change details in Fusion HCM

Oracle Fusion HCM - Enhancements to Summary of Changes and History Sections in Redwood Workforce Structures Pages

๐Ÿงพ Streamlining Payroll Operations with Oracle Payroll Activity Center