求两个日期之间工作日的天数(除去星期六星期天)
function DayOfWeekCount(ADayOfWeek: Integer; const ABegin, AEnd: TDateTime): Integer;
 var   lBeginDay, lEndDay: Integer;
begin
   lBeginDay := DayOfTheWeek(ABegin);
   lEndDay := DateUtils.DayOfTheWeek(AEnd);
   Result := (DateUtils.DaysBetween(ABegin, AEnd) + 1 + (lBeginDay - 1) + (7 - lEndDay)) div 7;
   if lBeginDay > ADayOfWeek then
      Result := Result - 1;
   if lEndDay < ADayOfWeek then
      Result := Result - 1;
end;
function GetWorkDays(ABeginTime, AFinishTime: TDateTime): Integer;
begin
  Result := DateUtils.DaysBetween(ABeginTime, AFinishTime) + 1;
     { 除去周六周日 }
  Result := Result -
         DayOfWeekCount(DateUtils.DaySaturday, ABeginTime, AFinishTime) -
         DayOfWeekCount(DateUtils.DaySunday, ABeginTime, AFinishTime);
end;
 
                     
                    
                 
                    
                 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号