Wednesday 5 September 2018

Retrieve Employee Salary History in EBiz

SELECT
  employee_number,
  proposed_salary_n,
  from_date,
  CASE
    WHEN
      to_date IS NULL 
    THEN
      to_date('31-dec-4712') 
    ELSE
      to_date 
  END
  xx 
FROM
  (
    SELECT
      a.employee_number,
      c.proposed_salary_n,
      c.change_date from_date,
      (
        LEAD (c.change_date, 1) OVER (PARTITION BY a.employee_number 
      ORDER BY
        c.change_date)
      )
       - 1 to_date 
    FROM
      per_all_people_f a,
      per_all_assignments_f b,
      per_pay_proposals c 
    WHERE
      1 = 1 
      AND sysdate BETWEEN a.effective_start_date AND a.effective_end_date 
      AND sysdate BETWEEN b.effective_start_date AND b.effective_end_date 
      AND a.person_id = b.person_id    --and a.employee_number = '001'
      AND b.assignment_id = c.assignment_id 
    ORDER BY
      a.employee_number,
      c.change_date
  )
GROUP BY
  employee_number,
  proposed_salary_n,
  from_date,
  to_date 
ORDER BY
  1,
  3;

No comments:

Post a Comment