Delphi справочник - Форум программистов - Навигация  
 A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z      По первой букве  
System     SysUtils     StrUtils     DateUtils     FileCtrl     ConvUtils     StdConvs     Math     Classes     Dialogs     Types     Variants    ПО Unit   Compiler directives     Directives     Keywords     Types     Variables     Constants     Functions     Procedures    По категории  


Основы Delphi
IncMonth
Функция
Увеличивает TDateTime переменную на некоторое число месяцев SysUtils unit
  function IncMonth ( const StartDate : TDateTime {; NumberOfMonths : Integer = 1} ) : TDateTime;
Описание
Функция IncMonth возвращает значение TDateTime, которое на NumberOfMonths больше, чем переданное значение StartDate.

Элемент времени значения StartDate передаётся неизменным в результат.

Значение года увеличивается соответственно.

Значение приращения является произвольным (по умолчанию 1).

После приращения месяца, если значение дня слишком велико для полученного месяца/года, то оно уменьшается до самого высокого значения полученного месяца/года.
Примечания
Функции DecMonth нет.

Вместо этого, используйте IncMinute с отрицательным приращением.
Похожие команды
IncDay  Приращивает переменную типа TDateTime на + или - число дней

IncMinute  Приращивает переменную типа TDateTime на + или - число минут.

IncYear  Увеличивает TDateTime переменную на количество лет

IncSecond  Приращивает переменную типа TDateTime на + или - число секунд

IncMillisecond  Приращивает переменную типа TDateTime на + или - число миллисекунд

 
Пример кода : Добавляем значения к дате
var
  myDate : TDateTime;
begin
  myDate := StrToDate('31/01/2000');   // Конец января в високосном годе
  ShowMessage('myDate = '+DateToStr(myDate));

  // Приращение на 1 (значение по умолчанию)
  // 31-е января 2000 ==> 31-е февраля 2000 (неправильно) ==> 29-е февраля 2000
  myDate := IncMonth(myDate);
  ShowMessage('myDate + 1 month = '+DateToStr(myDate));

  // Приращиваем на 12 месяцев
  // 29-е февраля 2000 ==> 29-е февраля 2000 (неправильно) ==> 28-е февраля 2001
  myDate := IncMonth(myDate, 12);      // Приращение на 12 месяцев
  ShowMessage('myDate + 12 months = '+DateToStr(myDate));
end;
myDate = 31/01/2000
myDate + 1 months = 29/02/2000
myDate + 12 months = 28/02/2001
 



© Форум Delphi   |  Блог программистов   |  Создание и продвижение сайтов - "Веб сателлит"  |  Ссылки   |  Английская версия