[Overview][Constants][Procedures and functions][Index] | Reference for unit 'dateutils' (#rtl)

# CompareDateTime

Compare 2 dates, taking into account the time of day

## Declaration

Source position: dateutil.inc line 360

`function CompareDateTime(`
`const A: TDateTime;`
`const B: TDateTime`
`):TValueRelationship;`

## Arguments

`A` |  | First date-time to compare
`B` |  | First date-time to compare

## Function result

A negative number if A is earlier than B, zero if they are equal, or positive if A is later than B.

## Description

CompareDateTime compares two timestamps A and B and returns the following results:

< 0
  if A is earlier in date/time than B.
0
  if A and B are the same date/time .
> 0
  if A is later in date/time than B.

## See also

CompareTime |  | Compares two times of the day, disregarding the date part.
CompareDate |  | Compare 2 dates, disregarding the time of day
SameDate |  | Check whether two TDateTime values have the same date part.
SameTime |  | Check whether two TDateTime values have the same time part.
SameDateTime |  | Check whether two TDateTime values have the same date and time parts.

## Example

    Program Example98;

    { This program demonstrates the CompareDateTime function }

    Uses SysUtils,DateUtils;

    Const
      Fmt = 'dddd dd mmmm yyyy hh:nn:ss.zzz';

    Procedure Test(D1,D2 : TDateTime);

    Var
      Cmp : Integer;

    begin
      Write(FormatDateTime(Fmt,D1),' is ');
      Cmp:=CompareDateTime(D1,D2);
      If Cmp<0 then
        write('earlier than ')
      else if Cmp>0 then
        Write('later than ')
      else
        Write('equal to ');
      Writeln(FormatDateTime(Fmt,D2));
    end;

    Var
      D,N : TDateTime;

    Begin
      D:=Today;
      N:=Now;
      Test(D,D);
      Test(N,N);
      Test(D+1,D);
      Test(D-1,D);
      Test(D+OneSecond,D);
      Test(D-OneSecond,D);
      Test(N+OneSecond,N);
      Test(N-OneSecond,N);
    End.

Documentation generated on: Feb 26 2014