Hi guys I need your help
I have 1 table VIEW with 4 field there are YEAR, PEOPLE, REMAINING, CF
the logic like this :
IF people A in 2014 have remaining value 25 and CF values 0 THEN people A in 2015 will have CF values 6.
IF Remaining > 6 THEN CF Values only 6, IF Remaining between 0 to 6 THEN CF Values = Remaining, IF Remaining < 0 THEN CF Values 0
CF values in Current Year will always take from Remaining in Last Year so if People A didn't have remaining in last year, the CF in current year become 0
here my code :
SELECT A.FiscalYear, C.EmployeeName, CASE WHEN A.FiscalYear < 2015 THEN A.Remaining WHEN B_1.daystaken < 0 THEN A.Remaining + ISNULL(B_1.DaysTaken, 0) ELSE A.Entitlement END AS Remaining, CASE WHEN A.remaining > 6 THEN 6 WHEN A.remaining BETWEEN 0 AND 6 THEN A.remaining WHEN A.remaining < 0 THEN 0 ELSE ISNULL(A.remaining,0) END AS CF FROM dbo.DataLeaveBalance AS A LEFT OUTER JOIN dbo.VWLeave_takens AS B_1 ON A.FiscalYear = B_1.AffectFY AND A.EmpCode = B_1.EmpCode LEFT OUTER JOIN dbo.MasterEmployee AS C ON A.EmpCode = C.EmpCode
This the result from my code: year people remain cf ----------- ------- ----------- ----------- 2014 Jackson 14 6 2014 Eva 5 5 2014 Akson 0 0 2015 Jackson 10 6 2015 Eva 10 6 2015 Akson 13 6 I want the result like this: year people remain cf ----------- ------- ----------- ----------- 2014 Jackson 14 0 2014 Eva 5 0 2014 Akson 0 0 2015 Jackson 10 6 2015 Eva 10 5 2015 Akson 13 0 2016 Jackson 10 6 2016 Eva 10 6 2016 Akson 13 6
can anyone help me to solve this?