Data: LOAD *, rangesum(Business_Hrs_Without_Overtime,Overtime) as Business_Hrs_With_Overtime; LOAD *, rangesum(round(rangesum( NetWorkDays(START_TIME+1,END_TIME-1,$(vHolidays)) * MakeTime($(vWorkingHourPerDay)), // In between hours if(NetWorkDays(END_TIME,END_TIME,$(vHolidays)), Rangemin(rangemax(frac(END_TIME),maketime($(vStartHour))),maketime($(vEndHour)))- Rangemax(rangemin(frac(END_TIME),maketime($(vStartHour))),maketime($(vStartHour))),0), // working hours last day if(NetWorkDays(START_TIME,START_TIME,$(vHolidays)), Rangemin(rangemax(frac(START_TIME),maketime($(vEndHour))),maketime($(vEndHour)))- Rangemax(rangemin(frac(START_TIME),maketime($(vEndHour))),maketime($(vStartHour))),0), // working hours first day if(NetWorkDays(START_TIME,START_TIME,$(vHolidays)) and floor(START_TIME)=floor(END_TIME),-MakeTime($(vWorkingHourPerDay))) // If same day then correct the hours )*24,0.01)) AS Business_Hrs_Without_Overtime,
rangesum(if(NetWorkDays(START_TIME,START_TIME,$(vHolidays)) , round(rangesum(if(frac(START_TIME)<maketime($(vStartHour)),maketime($(vStartHour))-frac(START_TIME),0), if(frac(END_TIME)>maketime($(vEndHour)),frac(END_TIME)-maketime($(vEndHour)),0))*24,0.01))) as Overtime ; // Overtime