Description |
The IncMonth function returns a TDateTime value that is NumberOfMonths greater than the passed StartDate value.
The time component of the StartDate value is passed unchanged to the output value.
The year value is incremented as appropriate.
The increment value is optional, being 1 by default.
After incrementing the month, if the day value is too high for that month/year, then it is reduced to the highest value for that month/year.
|
|
Notes |
There is no DecMonth function.
Instead, use IncMonth with a negative increment.
|
|
Related commands |
IncDay |
|
Increments a TDateTime variable by + or - number of days |
IncMinute |
|
Increments a TDateTime variable by + or - number of minutes |
IncYear |
|
Increments a TDateTime variable by a number of years |
IncSecond |
|
Increments a TDateTime variable by + or - number of seconds |
IncMillisecond |
|
Increments a TDateTime variable by + or - number of milliseconds |
|
|
|
Example code : Add values to an example date |
var
myDate : TDateTime;
begin myDate := StrToDate('31/01/2000'); // End of Jan in a leap year
WriteLn('myDate = '+DateToStr(myDate));
// Increment by 1 (default) // 31st Jan 2000 ==> 31st Feb 2000 (illegal) ==> 29th Feb 2000
myDate := IncMonth(myDate);
WriteLn('myDate + 1 month = '+DateToStr(myDate));
// Increment by 12 months // 29th Feb 2000 ==> 29th Feb 2000 (illegal) ==> 28th Feb 2001 myDate := IncMonth(myDate, 12); // Increment by 12 months
WriteLn('myDate + 12 months = '+DateToStr(myDate));
end;
|
Show full unit code |
myDate = 31/01/2000
myDate + 1 month = 29/02/2000
myDate + 12 months = 28/02/2001
|
|