Thank you Ben J. Boyle your comment is the base that helped me
I've solved it
I'll not say that is the best way to do it but I've Got My Results well if any one has a best way please provide us with
its done in tow views the first
CREATE VIEW [dbo].[View_EMP_LEV]
AS
select lr.EMP_NO, em.FIRST_NAME + ' ' + em.LAST_NAME AS EMPLOYEE, ld.LEAV_DESCRIPTIONS,
WO.DAY_LENGTH, lr.START_DATE,lr.DAYS_NUMBER, lr.START_TIME, lr.TIME_LENGTH,
ld.IS_HOURS, ld.IS_DAYS, ld.IS_FORMAL_MISSION,
lr.IS_APPROVED, lr.IS_EMERGENCY, ld.UNJUSTIFIED, ld.IS_SICK
from LEAVS_REQUESTS lr, LEAVS_DEF ld, EMPLOYEES em, WORKING_HOURS WO
where lr.LEEAV_DEF=ld.Id and lr.EMP_NO= em.EMP_NUMBER and lr.IS_APPROVED=1
AND WO.Id= (SELECT WorkingHoursID FROM [dbo].[GetWorkingHoursID](lr.EMP_NO,lr.START_DATE))
and the second
CREATE VIEW [dbo].[View_lEAVS_MONTHLY_SUMMARY]
AS
SELECT VEL.EMP_NO, VEL.EMPLOYEE, format(VEL.START_DATE,'MM-yyyy') as Work_month,
sum(case when IS_SICK = 1 then (DATEDIFF(MINUTE,0,VEL.DAY_LENGTH) * VEL.DAYS_NUMBER) + DATEDIFF(MINUTE,0,VEL.TIME_LENGTH) else 0 end) as SICK_LEAVS,
sum(case when IS_FORMAL_MISSION = 1 then (DATEDIFF(MINUTE,0,VEL.DAY_LENGTH) * VEL.DAYS_NUMBER) + DATEDIFF(MINUTE,0,VEL.TIME_LENGTH) else 0 end) as FORMAL_LEAVS,
sum(case when UNJUSTIFIED =1 then (DATEDIFF(MINUTE,0,VEL.DAY_LENGTH) * VEL.DAYS_NUMBER) + DATEDIFF(MINUTE,0,VEL.TIME_LENGTH) else 0 end) as UNJUSTIFIED_LEAVS,
sum(case when UNJUSTIFIED =0 AND IS_FORMAL_MISSION = 0 AND IS_SICK = 0 then (DATEDIFF(MINUTE,0,VEL.DAY_LENGTH) * VEL.DAYS_NUMBER) + DATEDIFF(MINUTE,0,VEL.TIME_LENGTH) else 0 end) as JUSTIFIED_LEAVS
FROM View_EMP_LEV VEL
GROUP BY VEL.EMP_NO, VEL.EMPLOYEE, format(VEL.START_DATE,'MM-yyyy')