Compares two TDateTime values (returns "less", "equal" or "greater"). Ignores the Time part if both values "fall" on the same day.
CompareDateTime function
Compares two TDateTime values (returns "less", "equal" or "greater").
Declaration:
type TValueRelationship = -1..1
function CompareDateTime(const ADate, BDate: TDateTime) : TValueRelationship
Description:
Compares two TDateTime values (returns "less", "equal" or "greater").
TValueRelationship represents the relationship between two values. Each of three TValueRelationship values has a "liked" symbolic constant:
-1 [LessThanValue] The first value is less than the second value.
0 [EqualsValue] The two values are equal.
1 [GreaterThanValue] The first value is greater than the second value.
CompareDate results in:
LessThanValue if ADate is earlier than BDate.
EqualsValue if date and time parts of both ADate and BDate are the same
GreaterThanValue if ADate is later than BDate.
Example:
var ThisMoment, FutureMoment : TDateTime; ThisMoment := Now; FutureMoment := IncDay(ThisMoment, 6); //adds 6 days //CompareDateTime(ThisMoment, FutureMoment) returns LessThanValue (-1) //CompareDateTime(FutureMoment, ThisMoment) returns GreaterThanValue (1)
CompareTime function
Compares two TDateTime values (returns "less", "equal" or "greater"). Ignores the Date part if both values occur at the same time.
Declaration:
type TValueRelationship = -1..1
function CompareDate(const ADate, BDate: TDateTime) : TValueRelationship
Description:
Compares two TDateTime values (returns "less", "equal" or "greater"). Ignores the Time part if both values occur at the same time.
TValueRelationship represents the relationship between two values. Each of three TValueRelationship values has a "liked" symbolic constant:
-1 [LessThanValue] The first value is less than the second value.
0 [EqualsValue] The two values are equal.
1 [GreaterThanValue] The first value is greater than the second value.
CompareDate results in:
LessThanValue if ADate occurs earlier in the day specified by BDate.
EqualsValue if time parts of both ADate and BDate are the same, ignoring the Date part.
GreaterThanValue if ADate occurs later in the day specified by BDate.
Example:
var ThisMoment, AnotherMoment : TDateTime; ThisMoment := Now; AnotherMoment := IncHour(ThisMoment, 6); //adds 6 hours //CompareDate(ThisMoment, AnotherMoment) returns LessThanValue (-1) //CompareDate(AnotherMoment, ThisMoment) returns GreaterThanValue (1
Date function
Returns the current system date.
Declaration:
type TDateTime = type Double;
function date: TDateTime;
Description:
Returns the current system date.
The integral part of a TDateTime value is the number of days that have passed since 12/30/1899. The fractional part of a TDateTime value is fraction of a 24 hour day that has elapsed.
To find the fractional number of days between two dates, simply subtract the two values. Likewise, to increment a date and time value by a certain fractional number of days, simply add the fractional number to the date and time value.
Example: ShowMessage('Today is ' + DateToStr(Date));
DateTimeToStr function
Converts a TDateTime value to a string (date and time).
Declaration:
type TDateTime = type Double;
function DayOfWeek(Date: TDateTime): integer;
Description:
Returns the day of the week for a given date.
DayOfWeek returns an integer between 1 and 7, where Sunday is the first day of the week and Saturday is the seventh.
DayOfTheWeek is not compliant with the ISO 8601 standard.
Example:
const Days: array[1..7] of string = ('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday') ShowMessage('Today is ' + Days[DayOfWeek(Date)]); //Today is Monday
DaysBetween function
Gives the number of whole days between two specified dates.
Declaration:
function DaysBetween(const ANow, AThen: TDateTime): Integer;
Description:
Gives the number of whole days between two specified dates.
Function counts only whole days. What this means is that it will return 0 as the result for difference between 05/01/2003 23:59:59 and 05/01/2003 23:59:58 - where the actual difference is one *whole* day minus 1 second.
Example:
var dtNow, dtBirth : TDateTime; DaysFromBirth : integer; dtNow := Now; dtBirth := EncodeDate(1973, 1, 29); DaysFromBirth := DaysBetween(dtNow, dtBirth); ShowMessage('Zarko Gajic "exists" ' + IntToStr(DaysFromBirth) + ' whole days!');
DateOf function
Returns only the Date portion of the TDateTime value, by setting Time part to 0.
Declaration:
function DateOf(Date: TDateTime) : TDateTime
Description:
Returns only the Date portion of the TDateTime value, by setting Time part to 0.
DateOf sets the time portion to 0, which means midnight.
Example:
var ThisMoment, ThisDay : TDateTime; ThisMoment := Now; // -> 06/27/2003 10:29:16:138 ThisDay := DateOf(ThisMoment); //This Day:= 06/27/2003 00:00:00:000
DecodeDate function
Separates Year, Month, and Day values from a TDateTime value.
Declaration:
procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word);;
Description:
Separates Year, Month, and Day values from a TDateTime value.
If the given TDateTime value is less than or equal to zero, the year, month, and day return parameters are all set to zero.
Example:
var Y, M, D: Word; DecodeDate(Date, Y, M, D); if Y = 2000 then ShowMessage('You''re in a "wrong" century!);
EncodeDate function
Creates a TDateTime value from Year, Month, and Day values.
Declaration:
function EncodeDate(Year, Month, Day: Word): TDateTime
Description:
Creates a TDateTime value from Year, Month, and Day values.
The Year must be between 1 and 9999. Valid Month values are 1 through 12. Valid Day values are 1 through 28, 29, 30, or 31, depending on the Month value.
If the function fails, EncodeDate raises an EConvertError exception.
Example:
var Y, M, D: Word; dt: TDateTime; y:=2001; M:=2; D:=18; dt:=EncodeDate(Y,M,D); ShowMessage('Borna will be one year old on ' + DateToStr(dt))
FormatDateTime function
Formats a TDateTime value to a string.
Declaration:
function FormatDateTime(const Fmt: string; Value: TDateTime): string;
Description:
Formats a TDateTime value to a string.
FormatDateTime uses the format specified by the Fmt parameter. For the supported format specifiers go see Delphi Help files.
Example:
var s: string; d: TDateTime; ... d:=Now; // today + current time s:=FormatDateTime('dddd',d); // s:=Wednesday s:=FormatDateTime('"Today is " dddd " minute " nn',d) // s:=Today is Wednesday minute 24
IncDay function
Adds or substracts a given number of days from a date value.
Declaration:
function IncDay(ADate: TDateTime; Days: Integer = 1) : TDateTime;
Description:
Adds or substracts a given number of days from a date value.
If the Days parameter is negative the date returned is < ADate. The Time part of day specified by the Date parameter is copied to the result.
Example:
var Date: TDateTime; EncodeDate(Date, 2003, 1, 29) //January 29, 2003 IncDay(Date, -1) //January 28, 2003
Now function
Returns the current system date and time.
Declaration:
type TDateTime = type Double;
function Now: TDateTime;
Description:
Returns the current system date and time.
The integral part of a TDateTime value is the number of days that have passed since 12/30/1899. The fractional part of a TDateTime value is fraction of a 24 hour day that has elapsed.
To find the fractional number of days between two dates, simply subtract the two values. Likewise, to increment a date and time value by a certain fractional number of days, simply add the fractional number to the date and time value.
Example: ShowMessage('Now is ' + DateTimeToStr(Now));
YearsBetween function
Gives the number of whole years between two specified dates.
Declaration:
function YearsBetween(const SomeDate, AnotherDate: TDateTime): Integer;
Description:
Gives the number of whole years between two specified dates.
YearsBetween returns an approximation based on an assumption of 365.25 days per year.
Example:
var dtSome, dtAnother : TDateTime; DaysFromBirth : integer; dtSome := EncodeDate(2003, 1, 1); dtAnother := EncodeDate(2003, 12, 31); YearsBetween(dtSome, dtAnother) == 1 //non-leap year dtSome := EncodeDate(2000, 1, 1); dtAnother := EncodeDate(2000, 12, 31); YearsBetween(dtSome, dtAnother) == 0 // leap year