Даты и времени: различия между версиями
Внешний вид
Sidminik (обсуждение | вклад) |
Sidminik (обсуждение | вклад) м Sidminik переименовал страницу Дата и время в Даты и времени |
||
| (не показаны 4 промежуточные версии этого же участника) | |||
| Строка 1: | Строка 1: | ||
Инструменты VB.NET для работы с датой и временем позволяют: | |||
*выполнять арифметические операции и извлекать компоненты периодов; | |||
*привести отображение даты к необходимому системному или пользовательскому виду за счет стандартных шаблонов форматирования. | |||
==Функции по работе с датой и временем== | ==Функции по работе с датой и временем== | ||
{|class="wikitable" style="margin:auto; background-color: #fff;" | {|class="wikitable" style="margin:auto; background-color: #fff;" | ||
| Строка 7: | Строка 11: | ||
|- | |- | ||
|DateAdd | |DateAdd | ||
|Возвращает значение даты и времени, которое является результатом прибавления интервала к полю даты\времени указанной единицы измерения. DateAdd(<DateInterval>,<Number>,<DateTime>) | |Возвращает значение даты и времени, которое является результатом прибавления интервала к полю даты\времени указанной единицы измерения. | ||
|<code>DateAdd(<DateInterval>,<Number>,<DateTime>)</code><br><code>=DateAdd("d", 5, Fields!SaleDate.Value);</code><br><code>=DateAdd(DateInterval.Day, 5, Fields!SaleDate.Value)</code> | |||
|- | |- | ||
|DateDiff | |DateDiff | ||
|Возвращает разницу между начальной датой и временем и конечной датой и временем заданной единицы измерения. | |Возвращает разницу между начальной датой и временем и конечной датой и временем заданной единицы измерения. | ||
|DateDiff(<DateInterval>,<DateTime1>,<DateTime2>[,<DayOfWeek>[,WeekOfYear]])) | |<code>DateDiff(<DateInterval>,<DateTime1>,<DateTime2>[,<DayOfWeek>[,WeekOfYear]]))</code><br><code>=DateDiff("yyyy"),Fields!SaleDate.Value,"1/1/2015");</code><br><code>=DateDiff(DateInterval.Year,Fields!SaleDate.Value,"1/1/2015")</code> | ||
=DateDiff("yyyy"),Fields!SaleDate.Value,"1/1/2015"); | |||
=DateDiff(DateInterval.Year,Fields!SaleDate.Value,"1/1/2015") | |||
|- | |- | ||
|DatePart | |DatePart | ||
|Возвращает дату в числовом представлении (номер даты) | |Возвращает дату в числовом представлении (номер даты) | ||
|DatePart(<DateInterval>,<DateTime1>[,<FirstDayOfWeek>[,FirstWeekOfYear]])) | |<code>DatePart(<DateInterval>,<DateTime1>[,<FirstDayOfWeek>[,FirstWeekOfYear]]))</code><br><code>=DatePart("m", Fields!SaleDate.Value)</code> | ||
=DatePart("m", Fields!SaleDate.Value) | |||
|- | |- | ||
|DateSerial | |DateSerial | ||
|Возвращает дату, сложенную из года+месяца+дня | |Возвращает дату, сложенную из года+месяца+дня | ||
|DateSerial(<Year Number>,<Month Number>,<Day Number>) | |<code>DateSerial(<Year Number>,<Month Number>,<Day Number>)</code><br><code>=DateSerial(DatePart("yyyy", Fields!SaleDate.Value)-10, DatePart("m", Fields!SaleDate.Value)+5, DatePart("d", Fields!SaleDate.Value)-1)</code> | ||
=DateSerial(DatePart("yyyy", Fields!SaleDate.Value)-10, DatePart("m", Fields!SaleDate.Value)+5, | |||
DatePart("d", Fields!SaleDate.Value)-1) | |||
|- | |- | ||
|DateString | |DateString | ||
|Возвращает дату в строковом представлении, из настроек ОС | |Возвращает дату в строковом представлении, из настроек ОС | ||
|DateString() | |<code>DateString()</code><br><code>=DateString()</code> | ||
=DateString() | |||
|- | |- | ||
|DateValue | |DateValue | ||
|Возвращает дату, полученную из строки | |Возвращает дату, полученную из строки | ||
|DateValue(<StringDate>) | |<code>DateValue(<StringDate>)</code><br><code>=DateValue("December 12, 2015")</code> | ||
=DateValue("December 12, 2015") | |||
|- | |- | ||
|Now | |Now | ||
|Возвращает текущую дату и время | |Возвращает текущую дату и время | ||
|Now() | |<code>Now()</code><br><code>=Now()</code> | ||
=Now() | |||
|- | |- | ||
|Today | |Today | ||
|Возвращает текущую системную дату | |Возвращает текущую системную дату | ||
|Today() | |<code>Today()</code><br><code>=Today()</code> | ||
=Today() | |||
|- | |- | ||
|Day | |Day | ||
|Возвращает текущий день месяца (0..31) | |Возвращает текущий день месяца (0..31) | ||
|Day(<DateTime>) | |<code>Day(<DateTime>)</code><br><code>=Day(Fields!SaleDate.Value)</code> | ||
=Day(Fields!SaleDate.Value) | |||
|- | |- | ||
|Hour | |Hour | ||
|Возвращает текущий час дня (0..24) | |Возвращает текущий час дня (0..24) | ||
|Hour(<DateTime>) | |<code>Hour(<DateTime>)</code><br><code>=Hour(Fields!SaleDate.Value)</code> | ||
=Hour(Fields!SaleDate.Value) | |||
|- | |- | ||
|Minute | |Minute | ||
|Возвращает текущую минуту часа (0..59) | |Возвращает текущую минуту часа (0..59) | ||
|Minute(<DateTime>) | |<code>Minute(<DateTime>)</code><br><code>=Minute(Fields!SaleDate.Value)</code> | ||
=Minute(Fields!SaleDate.Value) | |||
|- | |- | ||
|Month | |Month | ||
|Возвращает текущий номер месяца (0..12) | |Возвращает текущий номер месяца (0..12) | ||
|Month(<DateTime>) | |<code>Month(<DateTime>)</code><br><code>=Month(Fields!SaleDate.Value)</code> | ||
=Month(Fields!SaleDate.Value) | |||
|- | |- | ||
|MonthName | |MonthName | ||
|Возвращает имя месяца по номеру или аббревиатуре | |Возвращает имя месяца по номеру или аббревиатуре | ||
|MonthName(<Month Number>[,<Abbreviate>]) | |<code>MonthName(<Month Number>[,<Abbreviate>])</code><br><code>=MonthName(Fields!SaleDate.Value)</code> | ||
=MonthName(Fields!SaleDate.Value) | |||
|- | |- | ||
|Second | |Second | ||
|Возвращает текущую секунду минуты (0..59) | |Возвращает текущую секунду минуты (0..59) | ||
|Second(<DateTime>) | |<code>Second(<DateTime>)</code><br><code>=Second(Fields!SaleDate.Value)</code> | ||
=Second(Fields!SaleDate.Value) | |||
|- | |- | ||
|TimeSerial | |TimeSerial | ||
|Возвращает время, сложенное из часов+минут+секунд | |Возвращает время, сложенное из часов+минут+секунд<br>См. так же DateSerial | ||
См. так же DateSerial | |<code>TimeSerial(<Hour Number>, <Minute Number>, <Second Number>)</code><br><code>=TimeSerial(DatePart("h", Fields!SaleDate.Value), DatePart("n", Fields!SaleDate.Value), DatePart("s", Fields!SalesDate.Value))</code> | ||
|TimeSerial(<Hour Number>, <Minute Number>, <Second Number>) | |||
=TimeSerial(DatePart("h", Fields!SaleDate.Value), DatePart("n", Fields!SaleDate.Value), DatePart("s", Fields!SalesDate.Value)) | |||
|- | |- | ||
|TimeValue | |TimeValue | ||
|Возвращает время в формате даты, полученное из строки. | |Возвращает время в формате даты, полученное из строки. | ||
|TimeValue(<StringTime>) | |<code>TimeValue(<StringTime>)</code><br><code>=TimeValue("15:25:45"); TimeValue(Fields!SaleDate.Value)</code> | ||
=TimeValue("15:25:45"); TimeValue(Fields!SaleDate.Value) | |||
|- | |- | ||
|TimeOfDay | |TimeOfDay | ||
|Возвращает текущее время в системе | |Возвращает текущее время в системе | ||
|TimeOfDay() | |<code>TimeOfDay()</code><br><code>=TimeOfDay()</code> | ||
=TimeOfDay() | |||
|- | |- | ||
|Timer | |Timer | ||
|Возвращает число с ПЗ - количество секунд, начиная с 00:00 | |Возвращает число с ПЗ - количество секунд, начиная с 00:00<br>Используется как счетчик производительности | ||
Используется как счетчик производительности | |<code>Timer()</code><br><code>=Timer()</code> | ||
|Timer() | |||
=Timer() | |||
|- | |- | ||
|TimeString | |TimeString | ||
|Возвращает строкой текущее время системы | |Возвращает строкой текущее время системы | ||
|TimeString() | |<code>TimeString()</code><br><code>=TimeString()</code> | ||
=TimeString() | |||
|- | |- | ||
|Weekday | |Weekday | ||
|Возвращает числом номер текущего дня недели (1..7) | |Возвращает числом номер текущего дня недели (1..7) | ||
|Weekday(<DateTime[,<DayOfWeek>]) | |<code>Weekday(<DateTime[,<DayOfWeek>])</code><br><code>=Weekday(Fields!SaleDate.Value,0)</code> | ||
=Weekday(Fields!SaleDate.Value,0) | |||
|- | |- | ||
|WeekdayName | |WeekdayName | ||
|Возвращает строкой название текущего дня недели. Работает с аббревиатурами, например, «пнд.», «вт.» | |Возвращает строкой название текущего дня недели. Работает с аббревиатурами, например, «пнд.», «вт.» | ||
|WeekdayName(<WeekDay>[,<Abbreviate[, <FirstDayOfWeek>]]) | |<code>WeekdayName(<WeekDay>[,<Abbreviate[, <FirstDayOfWeek>]])</code><br><code>=WeekdayName(3, True, 0); =WeekDayName("w", Fields!SaleDate.Value), True, 0)</code> | ||
=WeekdayName(3, True, 0); =WeekDayName("w", Fields!SaleDate.Value), True, 0) | |||
|- | |- | ||
|Year | |Year | ||
|Возвращает числом номер текущего года | |Возвращает числом номер текущего года | ||
|Year(<DateTime>) | |<code>Year(<DateTime>)</code><br><code>=Year(Fields!SaleDate.Value)</code> | ||
=Year(Fields!SaleDate.Value) | |||
|- | |- | ||
|Quarter | |Quarter | ||
|Возвращает числом номер текущего квартала (1..4) | |Возвращает числом номер текущего квартала (1..4) | ||
|Quarter(<DateTime>) | |<code>Quarter(<DateTime>)</code><br><code>=Quarter(Fields!SaleDate.Value)</code> | ||
=Quarter(Fields!SaleDate.Value) | |||
|- | |- | ||
|QuarterName | |QuarterName | ||
|Возвращает строкой номер текущего квартала (1..4) | |Возвращает строкой номер текущего квартала (1..4) | ||
|QuarterName(<DateTime>) | |<code>QuarterName(<DateTime>)</code><br><code>=QuarterName(Fields!SaleDate.Value)</code> | ||
=QuarterName(Fields!SaleDate.Value) | |||
|- | |- | ||
|} | |} | ||
Текущая версия от 09:06, 20 февраля 2026
Инструменты VB.NET для работы с датой и временем позволяют:
- выполнять арифметические операции и извлекать компоненты периодов;
- привести отображение даты к необходимому системному или пользовательскому виду за счет стандартных шаблонов форматирования.
Функции по работе с датой и временем
| Имя функции | Описание | Пример |
|---|---|---|
| DateAdd | Возвращает значение даты и времени, которое является результатом прибавления интервала к полю даты\времени указанной единицы измерения. | DateAdd(<DateInterval>,<Number>,<DateTime>)=DateAdd("d", 5, Fields!SaleDate.Value);=DateAdd(DateInterval.Day, 5, Fields!SaleDate.Value)
|
| DateDiff | Возвращает разницу между начальной датой и временем и конечной датой и временем заданной единицы измерения. | DateDiff(<DateInterval>,<DateTime1>,<DateTime2>[,<DayOfWeek>[,WeekOfYear]]))=DateDiff("yyyy"),Fields!SaleDate.Value,"1/1/2015");=DateDiff(DateInterval.Year,Fields!SaleDate.Value,"1/1/2015")
|
| DatePart | Возвращает дату в числовом представлении (номер даты) | DatePart(<DateInterval>,<DateTime1>[,<FirstDayOfWeek>[,FirstWeekOfYear]]))=DatePart("m", Fields!SaleDate.Value)
|
| DateSerial | Возвращает дату, сложенную из года+месяца+дня | DateSerial(<Year Number>,<Month Number>,<Day Number>)=DateSerial(DatePart("yyyy", Fields!SaleDate.Value)-10, DatePart("m", Fields!SaleDate.Value)+5, DatePart("d", Fields!SaleDate.Value)-1)
|
| DateString | Возвращает дату в строковом представлении, из настроек ОС | DateString()=DateString()
|
| DateValue | Возвращает дату, полученную из строки | DateValue(<StringDate>)=DateValue("December 12, 2015")
|
| Now | Возвращает текущую дату и время | Now()=Now()
|
| Today | Возвращает текущую системную дату | Today()=Today()
|
| Day | Возвращает текущий день месяца (0..31) | Day(<DateTime>)=Day(Fields!SaleDate.Value)
|
| Hour | Возвращает текущий час дня (0..24) | Hour(<DateTime>)=Hour(Fields!SaleDate.Value)
|
| Minute | Возвращает текущую минуту часа (0..59) | Minute(<DateTime>)=Minute(Fields!SaleDate.Value)
|
| Month | Возвращает текущий номер месяца (0..12) | Month(<DateTime>)=Month(Fields!SaleDate.Value)
|
| MonthName | Возвращает имя месяца по номеру или аббревиатуре | MonthName(<Month Number>[,<Abbreviate>])=MonthName(Fields!SaleDate.Value)
|
| Second | Возвращает текущую секунду минуты (0..59) | Second(<DateTime>)=Second(Fields!SaleDate.Value)
|
| TimeSerial | Возвращает время, сложенное из часов+минут+секунд См. так же DateSerial |
TimeSerial(<Hour Number>, <Minute Number>, <Second Number>)=TimeSerial(DatePart("h", Fields!SaleDate.Value), DatePart("n", Fields!SaleDate.Value), DatePart("s", Fields!SalesDate.Value))
|
| TimeValue | Возвращает время в формате даты, полученное из строки. | TimeValue(<StringTime>)=TimeValue("15:25:45"); TimeValue(Fields!SaleDate.Value)
|
| TimeOfDay | Возвращает текущее время в системе | TimeOfDay()=TimeOfDay()
|
| Timer | Возвращает число с ПЗ - количество секунд, начиная с 00:00 Используется как счетчик производительности |
Timer()=Timer()
|
| TimeString | Возвращает строкой текущее время системы | TimeString()=TimeString()
|
| Weekday | Возвращает числом номер текущего дня недели (1..7) | Weekday(<DateTime[,<DayOfWeek>])=Weekday(Fields!SaleDate.Value,0)
|
| WeekdayName | Возвращает строкой название текущего дня недели. Работает с аббревиатурами, например, «пнд.», «вт.» | WeekdayName(<WeekDay>[,<Abbreviate[, <FirstDayOfWeek>]])=WeekdayName(3, True, 0); =WeekDayName("w", Fields!SaleDate.Value), True, 0)
|
| Year | Возвращает числом номер текущего года | Year(<DateTime>)=Year(Fields!SaleDate.Value)
|
| Quarter | Возвращает числом номер текущего квартала (1..4) | Quarter(<DateTime>)=Quarter(Fields!SaleDate.Value)
|
| QuarterName | Возвращает строкой номер текущего квартала (1..4) | QuarterName(<DateTime>)=QuarterName(Fields!SaleDate.Value)
|
Стандартные шаблоны форматирования даты и времени
| Шаблон | Описание | Пример |
|---|---|---|
| "d" | Короткая дата | 17.10.2025 10/17/2025 |
| "D" | Длинная дата | пятница, 17 октября 2025 г. Friday, October 17, 2025 |
| "f" | Полный формат (дата и короткое время) | пятница, 17 октября 2025 г. 00:00 Friday, October 17, 2025 12:00 AM |
| "F" | Полный формат (дата и длинное время) | пятница, 17 октября 2025 г. 00:00:00 Friday, October 17, 2025 12:00:00 AM |
| "g" | Общий формат (дата и короткое время) | 17.10.2025 00:00 10/17/2025 12:00 AM |
| "G" | Общий формат (дата и длинное время) | 17.10.2025 00:00:00 10/17/2025 12:00:00 AM |
| "M", "m" | Месяц и день | 17 октября October 17 |
| "O", "o" | Дата и время в формате round-trip (ISO 8601) | 2025-10-17T00:00:00.0000000+07:00 2025-10-17T00:00:00.0000000+07:00 |
| "R", "r" | Дата и время в формате RFC1123 | Fri, 17 Oct 2025 00:00:00 GMT Fri, 17 Oct 2025 00:00:00 GMT |
| "s" | Сортируемые дата и время | 2025-10-17T00:00:00 2025-10-17T00:00:00 |
| "t" | Короткое время | 00:00 12:00 AM |
| "T" | Длинное время | 00:00:00 12:00:00 AM |
| "u" | Универсальные сортируемые дата и время | 2025-10-17 00:00:00Z 2025-10-17 00:00:00Z |
| "U" | Универсальные полные дата и время | четверг, 16 октября 2025 г. 17:00:00 Thursday, October 16, 2025 5:00:00 PM |
| "Y", "y" | Год и месяц | октябрь 2025 г. October 2025 |
Примеры использования
Выражение =Format(Fields!input.Value, <Шаблон форматирования>) форматирует значение даты из поля Fields!input.Value по вышеуказанным правилам форматирования (указываются в кавычках вместо Шаблон форматирования):
«dddd, d MMMM, yyyy»= четверг, 18 декабрь, 2025«dd.MM.yyyy»= 18.12.2025«d»или«dd»= день месяца в числовом формате (например, «18»)«ddd»= день недели в коротком строковом формате (например, «чт» для четверга)«dddd»= день недели в полном строковом формате (например, «четверг»)«MM»= месяц в числовом формате (например, «12»)«MMM»= месяц в коротком строковом формате (например, «дек.»)«MMMM»= месяц в коротком строковом формате (например, «декабрь»)«y»или«yy»= год в двузначном формате (например, «25» для 2025)«yyyy»= год в четырехзначном формате (например, «2025»)«hh:mm»= время в 12-часовом формате (например, «01:00» для 13:00)«HH:mm»= время в 24-часовом формате (например, «13:00» для 13:00)«hh»= часы в 12-часовом формате«HH»= часы в 24-часовом формате«mm»= минуты«ss»= секунды