Pre_Salary_Basis "Pre Salary Basis", Pre_Change_Date "Pre Change Date", Pre_Curr "Pre Curr", Last_Value "Last Value", Pre_Bases_Year "Pre Bases/Year", Pre_Annual_Salary "Pre Annual Salary", Conversion_Rate "Conversion Rate", converted_Salary "converted Salary", CHANGE_DATE "Change Date", currency_code "Currency Code", New_Value "New Value", Change_Value "Change Value", --change_factor, --change_divide, (case when change_divide=0 then 0 else round((change_factor/change_divide)*100, 3) end ) "Change %", Annual_Salary "Annual Salary", Salary_Basis "Salary Basis", Pay_Basis "Pay Basis", Bases_Year "Bases/Year", Reason "Reason", Reason2 "Reason2", Performance_Review "Performance Review", Next_Review "Next Review", Approved "Approved", Grade, MIN_SAL "Min Sal", MAX_SAL "Max Sal", (case when cvalue=0 then 0 else round((factor/cvalue),3) end ) "Compare ratio" from(select PER.EMPLOYEE_NUMBER Employee_Number, PER.FULL_NAME Employee_Name, PRE_YEAR.PRE_SALARY_BASIS Pre_Salary_Basis, PRE_YEAR.CHANGE_DATE Pre_Change_Date, PRE_YEAR.PRE_CURR Pre_Curr, PRE_YEAR.PREVIOUS_SAL Last_Value, PRE_YEAR.PRE_ANN Pre_Bases_Year, (PRE_YEAR.PREVIOUS_SAL*PRE_YEAR.PRE_ANN) Pre_Annual_Salary, decode(PRE_YEAR.PREVIOUS_SAL,null,null,1) Conversion_Rate, (PRE_YEAR.PREVIOUS_SAL*PRE_YEAR.PRE_ANN*1) converted_Salary, PPP.CHANGE_DATE, PET.INPUT_CURRENCY_CODE currency_code, PPP.PROPOSED_SALARY_N New_Value, (PPP.PROPOSED_SALARY_N-PRE_YEAR.PREVIOUS_SAL) Change_Value, --(PRE_YEAR.PREVIOUS_SAL*PRE_YEAR.Pre_Ann) zero, (ppp.proposed_salary_N-PRE_YEAR.PREVIOUS_SAL)*PPB.PAY_ANNUALIZATION_FACTOR chang e_factor, PRE_YEAR.PREVIOUS_SAL*PRE_YEAR.Pre_Ann change_divide, --round(((ppp.proposed_salary_N-PRE_YEAR.PREVIOUS_SAL)*PPB.PAY_ANNUALIZATION_FAC TOR/(PRE_YEAR.PREVIOUS_SAL*PRE_YEAR.Pre_Ann)*100),3) "Change %", (PPP.PROPOSED_SALARY_N*PPB.PAY_ANNUALIZATION_FACTOR) Annual_Salary, PPB.name Salary_Basis, PPB.PAY_BASIS Pay_Basis, PPB.PAY_ANNUALIZATION_FACTOR Bases_Year, HL1.MEANING Reason,HL2.MEANING Reason2, PRV.REVIEW_DATE Performance_Review, PPP.NEXT_SAL_REVIEW_DATE Next_Review, PPP.APPROVED Approved, (SELECT distinct GRA.NAME FROM PER_GRADES_VL GRA , PER_ALL_ASSIGNMENTS_F ASG WHERE ASG.ASSIGNMENT_ID=PF.ASSIGNMENT_ID AND ASG.GRADE_ID=GRA.GRADE_ID AND PPP.change_date BETWEEN asg.effective_start_date AND asg.effective_end_date) Grade, ( SELECT PGR.MINIMUM from PER_PAY_BASES PPB , PAY_GRADE_RULES_F PGR , PAY_RATES_V PRV , PER_ALL_ASSIGNMENTS_F ASG WHERE ASG.ASSIGNMENT_ID=PF.ASSIGNMENT_ID AND PPB.PAY_BASIS_ID=ASG.PAY_BASIS_ID AND PPB.RATE_ID=PGR.RATE_ID AND PPB.RATE_ID=PRV.RATE_ID AND ASG.GRADE_ID=PGR.GRADE_OR_SPINAL_POINT_ID AND PPP.change_date BETWEEN asg.effective_start_date AND asg.effective_end_date AND PPP.change_date BETWEEN pgr.effective_start_date AND pgr.effective_end_date)*PPB.GRADE_ANNUALIZATION_FACTOR MIN_SAL, ( SELECT PGR.MAXIMUM from PER_PAY_BASES PPB , PAY_GRADE_RULES_F PGR , PAY_RATES_V PRV , PER_ALL_ASSIGNMENTS_F ASG WHERE ASG.ASSIGNMENT_ID=PF.ASSIGNMENT_ID AND PPB.PAY_BASIS_ID=ASG.PAY_BASIS_ID AND PPB.RATE_ID=PGR.RATE_ID AND PPB.RATE_ID=PRV.RATE_ID AND ASG.GRADE_ID=PGR.GRADE_OR_SPINAL_POINT_ID AND PPP.change_date BETWEEN asg.effective_start_date AND asg.effective_end_date AND PPP.change_date BETWEEN pgr.effective_start_date AND pgr.effective_end_date)*PPB.GRADE_ANNUALIZATION_FACTOR MAX_SAL, (100*PPP.PROPOSED_SALARY_N*PPB.PAY_ANNUALIZATION_FACTOR) factor, ( SELECT PGR.MID_VALUE from PER_PAY_BASES PPB , PAY_GRADE_RULES_F PGR , PAY_RATES_V PRV , PER_ALL_ASSIGNMENTS_F ASG WHERE ASG.ASSIGNMENT_ID=PF.ASSIGNMENT_ID AND PPB.PAY_BASIS_ID=ASG.PAY_BASIS_ID AND PPB.RATE_ID=PGR.RATE_ID AND PPB.RATE_ID=PRV.RATE_ID AND ASG.GRADE_ID=PGR.GRADE_OR_SPINAL_POINT_ID AND PPP.change_date BETWEEN asg.effective_start_date AND asg.effective_end_date AND PPP.change_date BETWEEN pgr.effective_start_date AND pgr.effective_end_date) cvalue from PER_ALL_PEOPLE_F PER, PER_ALL_ASSIGNMENTS_F PF, PER_PAY_PROPOSALS PPP, PER_PAY_BASES ppb, HR_LOOKUPS HL1, HR_LOOKUPS HL2, PER_PERFORMANCE_REVIEWS PRV, PAY_INPUT_VALUES_F PIV, PAY_ELEMENT_TYPES_F PET, ( select PROPOSED_SALARY_N PREVIOUS_SAL,P.ASSIGNMENT_ID,CHANGE_DATE,PPB2.name PRE_ SALARY_BASIS, PPB2.PAY_ANNUALIZATION_FACTOR Pre_Ann,PET2.INPUT_CURRENCY_CODE Pre_curr from PER_PAY_PROPOSALS P,PER_ALL_ASSIGNMENTS_F PF2,PER_PAY_BASES PPB2,PAY_INPUT_ VALUES_F PIV2, PAY_ELEMENT_TYPES_F PET2 where 2=(select COUNT(distinct TRUNC(CHANGE_DATE)) from PER_PAY_PROPOSALS E where trunc(p.change_date)<=trunc(e.change_date) and P.ASSIGNMENT_ID=E.ASSIGNMENT_ID ) and NVL(PF2.EFFECTIVE_END_DATE,sysdate+1)>sysdate and PF2.ASSIGNMENT_ID=P.ASSIGNMENT_ID and PPB2.PAY_BASIS_ID=PF2.PAY_BASIS_ID and PIV2.INPUT_VALUE_ID=PPB2.INPUT_VALUE_ID and PET2.ELEMENT_TYPE_ID=PIV2.ELEMENT_TYPE_ID ) pre_year where PER.PERSON_ID=PF.PERSON_ID and NVL(PER.EFFECTIVE_END_DATE,sysdate+1)>sysdate and NVL(PF.EFFECTIVE_END_DATE,sysdate+1)>sysdate and PF.BUSINESS_GROUP_ID=81 and PPP.ASSIGNMENT_ID=PF.ASSIGNMENT_ID and ppb.PAY_BASIS_ID=pf.PAY_BASIS_ID and PPP.PAY_PROPOSAL_ID =(select max(PAY_PROPOSAL_ID) from PER_PAY_PROPOSALS where ASSIGNMENT_ID=PF.ASSIGNMENT_ID) and PPP.PERFORMANCE_REVIEW_ID=PRV.PERFORMANCE_REVIEW_ID(+) and HL2.LOOKUP_CODE(+)=PRV.PERFORMANCE_RATING and HL2.LOOKUP_TYPE(+)='PERFORMANCE_RATING' and HL1.LOOKUP_CODE(+)=PPP.PROPOSAL_REASON and HL1.LOOKUP_TYPE(+)='PROPOSAL_REASON' and PIV.INPUT_VALUE_ID=PPB.INPUT_VALUE_ID and PET.ELEMENT_TYPE_ID=PIV.ELEMENT_TYPE_ID and PRE_YEAR.ASSIGNMENT_ID(+)=PF.ASSIGNMENT_ID);