Перейти к содержанию

Дата и время

Материал из Химсофт Вики

Установка конкретной даты

Для установки конкретной даты можно использовать:

  • конструкторы структуры DateTime;
new DateTime(год, месяц, день, часы, минуты, секунды);
  • функцию ToDateTime (подробнее в разделе Конвертирование);
  • функцию DateSerial (рассматривается ниже).

Информация о времени

  • при использовании функций для преобразования даты из данного раздела по умолчанию сохраняется и информация о времени;
  • для удаления времени из даты можно воспользоваться функциями Format или FormatDateTime (более подробная информация об этих функциях представлена в разделе Форматирование).

Примечание

В качестве примера использования поля из базы данных в функциях будет использоваться условное поле [Employees.BirthDate]:

[Employees.BirthDate] = 27.01.1986

AddDays

Функция Параметры Возвращаемое значение
AddDays DateTime date, double value DateTime

Добавляет к дате date количество дней value и возвращает новую дату.

Пример:

AddDays(new DateTime(2024,4,2), 2) = 04.04.2024 0:00:00
AddDays(ToDateTime("2.4.2024"), 2) = 04.04.2024 0:00:00
AddDays([Employees.BirthDate], 2) = 29.01.1986 0:00:00

AddHours

Функция Параметры Возвращаемое значение
AddHours DateTime date, double value DateTime

Добавляет к дате date количество часов value и возвращает новую дату.

Пример:

AddHours(new DateTime(2024,4,2,5,30,5), 1) = 02.04.2024 6:30:05
AddHours(ToDateTime("2.4.2024 5:30:05"), 1) = 02.04.2024 6:30:05
AddHours([Employees.BirthDate], 1) = 27.01.1986 1:00:00

AddMinutes

Функция Параметры Возвращаемое значение
AddMinutes DateTime date, double value DateTime

Добавляет к дате date количество минут value и возвращает новую дату.

Пример:

AddMinutes(new DateTime(2024,4,2,5,30,5), 10) = 02.04.2024 5:40:05
AddMinutes(ToDateTime("2.4.2024 5:30:05"), 10) = 02.04.2024 5:40:05
AddMinutes([Employees.BirthDate], 10) = 27.01.1986 0:10:00

AddMonths

Функция Параметры Возвращаемое значение
AddMonths DateTime date, int value DateTime

Добавляет к дате date количество месяцев value и возвращает новую дату.

Пример:

AddMonths(new DateTime(2024,4,2,5,30,5), 2) = 02.06.2024 5:30:05
AddMonths(ToDateTime("2.4.2024 5:30:05"), 2) = 02.06.2024 5:30:05
AddMonths([Employees.BirthDate], 2) = 27.03.1986 0:00:00

AddSeconds

Функция Параметры Возвращаемое значение
AddSeconds DateTime date, double value DateTime

Добавляет к дате date количество секунд value и возвращает новую дату.

Пример:

AddSeconds(new DateTime(2024,4,2,5,30,5), 10) = 02.04.2024 5:30:15
AddSeconds(ToDateTime("2.4.2024 5:30:05"), 10) = 02.04.2024 5:30:15
AddSeconds([Employees.BirthDate], 10) = 27.01.1986 0:00:10

AddYears

Функция Параметры Возвращаемое значение
AddYears DateTime date, int value DateTime

Добавляет к дате date количество лет value и возвращает новую дату.

Пример:

AddYears(new DateTime(2024,4,2,5,30,5), 3) = 02.04.2027 5:30:05
AddYears(ToDateTime("2.4.2024 5:30:05"), 3) = 02.04.2027 5:30:05
AddYears([Employees.BirthDate], 3) = 27.01.1989 0:00:00

DateDiff

Функция Параметры Возвращаемое значение
DateDiff DateTime date1, DateTime date2 TimeSpan

Возвращает интервал — количество дней, часов, минут, секунд между двумя датами.

Пример:

DateDiff(new DateTime(2024,4,2,5,0,0), new DateTime(2025,1,2,5,30,5)) = -275.00:30:05
DateDiff(ToDateTime("2.1.2025 5:30:05"), ToDateTime("2.4.2024 5:00:00")) = 275.00:30:05
DateDiff(ToDateTime("2.4.2024 5:00:00"), [Employees.BirthDate]) = 13945.05:00:00

DateSerial

Функция Параметры Возвращаемое значение
DateSerial int year, int month, int day DateTime

Создает новое значение DateTime из указанных года (year), месяца (month) и дня (day).

Еще один доступный способ для установки конкретной даты.

Пример:

DateSerial(2024,4,2) = 02.04.2024 0:00:00

Day

Функция Параметры Возвращаемое значение
Day DateTime date int

Извлекает день месяца (1-31) из указанной даты.

Пример:

Day(new DateTime(2024,4,2)) = 2
Day(ToDateTime("2.4.2024")) = 2
Day([Employees.BirthDate]) = 27

DayOfWeek

Функция Параметры Возвращаемое значение
DayOfWeek DateTime date string

Возвращает название дня недели (понедельник..воскресенье) указанной даты.

Пример:

DayOfWeek(new DateTime(2024,4,2)) = "вторник"
DayOfWeek(ToDateTime("2.4.2024")) = "вторник"
DayOfWeek([Employees.BirthDate]) = "понедельник"

DayOfYear

Функция Параметры Возвращаемое значение
DayOfYear DateTime date int

Возвращает порядковый номер дня в году (1-365) в указанной дате.

Пример:

DayOfYear(new DateTime(2024,4,2)) = 93
DayOfYear(ToDateTime("2.4.2024")) = 93
DayOfYear([Employees.BirthDate]) = 27

DaysInMonth

Функция Параметры Возвращаемое значение
DaysInMonth int year, int month int

Возвращает количество дней в месяце month указанного года year.

Пример:

DaysInMonth(2024, 4) = 30

Hour

Функция Параметры Возвращаемое значение
Hour DateTime date int

Извлекает час (0-23) из указанной даты.

Пример:

Hour(new DateTime(2024,4,2,5,30,5)) = 5
Hour(ToDateTime("2.4.2024 5:30:05")) = 5
Hour([Employees.BirthDate]) = 0

Minute

Функция Параметры Возвращаемое значение
Minute DateTime date int

Извлекает минуты (0-59) из указанной даты.

Пример:

Minute(new DateTime(2024,4,2,5,30,5)) = 30
Minute(ToDateTime("2.4.2024 5:30:05")) = 30
Minute([Employees.BirthDate]) = 0

Month

Функция Параметры Возвращаемое значение
Month DateTime date int

Извлекает месяц (1-12) из указанной даты.

Пример:

Month(new DateTime(2024,4,2)) = 4
Month(ToDateTime("2.4.2024")) = 4
Month([Employees.BirthDate]) = 1

MonthName

Функция Параметры Возвращаемое значение
MonthName int month string

Возвращает локализованное название месяца (Январь..Декабрь) с номером month.

Пример:

MonthName(1) = "Январь"

Second

Функция Параметры Возвращаемое значение
Second DateTime date int

Извлекает секунды (0-59) из указанной даты.

Пример:

Second(new DateTime(2024,4,2,5,30,5)) = 5
Second(ToDateTime("2.4.2024 5:30:05")) = 5
Second([Employees.BirthDate]) = 0

Year

Функция Параметры Возвращаемое значение
Year DateTime date int

Извлекает год из указанной даты.

Пример:

Year(new DateTime(2024,4,2)) = 2024
Year(ToDateTime("2.4.2024")) = 2024
Year([Employees.BirthDate]) = 1986