SmartPascal
DaysBetween
Function
Gives the whole number of days between 2 dates DateUtils unit
 function DaysBetween ( const ToDate, FromDate : TDateTime ) : Integer;
Description
The DaysBetween function subtracts the FromDate from the ToDate, returning the number whole days difference.
 
The time value of each date is taken account of - only whole 24 hour chunks are counted as whole days.
Notes
A whole day does not have to start at 00:00:00.
Related commands
DaysInAMonth Gives the number of days in a month
DaysInAYear Gives the number of days in a year
DaySpan Gives the fractional number of days between 2 dates
 
Example code : Find the days difference between two date+time values.
// Full Unit code.
// -----------------------------------------------------------
// You must store this code in a unit called Unit1 with a form
// called Form1 that has an OnCreate event called FormCreate.
 
unit Unit1;
 
interface
 
uses
  DateUtils,   // Unit containing the DaysBetween command
  SysUtils,
  Forms, Dialogs;
 
type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  end;
 
var
  
Form1: TForm1;
 
implementation
{$R *.dfm} // Include form definitions
 
procedure TForm1.FormCreate(Sender: TObject);

var
  fromdate, toDate : TDateTime;

begin
  // Set up our date variables
  fromDate := EncodeDateTime(2000, 02, 26, 10, 0, 0, 0);
  toDate   := EncodeDateTime(2000, 02, 29,  9, 0, 0, 0);

  // Display these dates and the days between them
  ShowMessage('From date = '+DateTimeToStr(fromDate));
  ShowMessage('To   date = '+DateTimeToStr(toDate));
  ShowMessage('Whole days difference = '+
              IntToStr(DaysBetween(toDate, fromDate))+' days');
end;
 
end.
Hide full unit code
   From date = 26/02/2000 10:00:00
   To   date = 29/02/2000 09:00:00
   Whole days difference = 2 days