Краткая инструкция по фичам с датами.
Пример кода условного потока, который проверяет, что «дата изменения средства связи» меньше или равно 90 дн.
(DateTime.Now.Subtract([#Читать средство связи Физ.лица.Первый элемент результирующей коллекции.Дата изменения#])).TotalDays <= 90
DateTime.Now = это эквивалент [#Системная переменная.Текущее значение даты и времени#]
То есть, запись может быть и:
(([#Системная переменная.Текущее значение даты и времени#]).Subtract([#Читать средство связи Физ.лица.Первый элемент результирующей коллекции.Дата изменения#])).TotalDays <= 90
Пояснения
Метод Subtract работает так: ДатаВремя1. Subtract(ДатаВремя2) возвращает временной интервал равный ДатаВремя1 - ДатаВремя2.
Временной интервал содержит следующие свойства, доступные через точку ((предположим интервал составляет 1 день 12 часов 15 минут 20 секунд)):
2.1.
ДатаВремя1. Subtract(ДатаВремя2).Days – целое количество дней = 1
2.2.
ДатаВремя1. Subtract(ДатаВремя2).TotalDays – дробное количество дней ~ 1.5…
2.3.
ДатаВремя1. Subtract(ДатаВремя2).Hours – количество часов = 12
2.4.
ДатаВремя1. Subtract(ДатаВремя2).TotalHours – общее дробное количество часов ~ 36.25…
2.5.
ДатаВремя1. Subtract(ДатаВремя2).Minutes – количество минут = 15
2.6.
ДатаВремя1. Subtract(ДатаВремя2).TotalMinutes – общее дробное количество минут ~ 2160.33
2.7.
Аналогично для Seconds и Milliseconds
Проверка дня недели:
ДатаВремя1.DayOfWeek.
Например: проверим четверг сегодня или нет:
[#Системная переменная.Текущее значение даты#]).DayOfWeek == DayOfWeek.Thursday
Добавить (вычесть) время
ДатаВремя1.AddDays(2).
Возвращает ДатаВремя1 + 2 дня.
(Аналогично Add.Seconds(N)/Minutes(N)/Hours()/Months()/Years().
Если указать отрицательное число, то ДатаВремя1 уменьшится на заданное значение (ДатаВремя1.AddHours(-5) = отнять 5 часов).
Другие возможности типа данных DateTime:
https://msdn.microsoft.com/ru-ru/library/system.datetime(v=vs.110).aspx
Подскажите. Почему выдает ошибку этот код?
[#System variable.Current Date#].DayOfWeek == DayOfWeek.Thursday