Unit 'DateUtils' Package
[Overview][Constants][Classes][Procedures and functions][Index] [#rtl]

MonthsBetween

Calculate the number of whole months between two TDateTime values.

Declaration

Source position: dateutil.inc line 272

function MonthsBetween(

  const ANow: TDateTime;

  const AThen: TDateTime;

  AExact: Boolean = False

):Integer;

Arguments

ANow

  

First moment in time.

AThen

  

Second moment in time.

Function result

Number of whole months between ANow and AThen.

Description

MonthsBetween returns the number of whole months between ANow and AThen. This number is an approximation, based on an average number of days of 30.4375 per month (average over 4 years). This means the fractional part of a month is dropped.

See also

YearsBetween

  

Calculate the number of whole years between two TDateTime values.

WeeksBetween

  

Calculate the number of whole weeks between two TDateTime values.

DaysBetween

  

Number of whole days between two TDateTime values.

HoursBetween

  

Calculate the number of whole hours between two TDateTime values.

MinutesBetween

  

Calculate the number of whole minutes between two TDateTime values.

SecondsBetween

  

Calculate the number of whole seconds between two TDateTime values.

MilliSecondsBetween

  

Calculate the number of whole milliseconds between two TDateTime values.

Example

Program Example56;

{ This program demonstrates the MonthsBetween function }

Uses SysUtils,DateUtils;

Procedure Test(ANow,AThen : TDateTime);

begin
 Write('Number of months between ');
 Write(DateToStr(AThen),' and ',DateToStr(ANow));
 Writeln(' : ',MonthsBetween(ANow,AThen));
end;

Var
  D1,D2 : TDateTime;

Begin
  D1:=Today;
  D2:=Today-364;
  Test(D1,D2);
  D2:=Today-365;
  Test(D1,D2);
  D2:=Today-366;
  Test(D1,D2);
  D2:=Today-390;
  Test(D1,D2);
  D2:=Today-368;
  Test(D1,D2);
  D2:=Today-1000;
  Test(D1,D2);
End.

Documentation generated on: Jul 24 2023