Различие между значениями Момент и ДатаВремя
Момент удобно использовать для программных целей, но не очень удобно использовать для представления информации пользователю. Пользователь привык воспринимать дату и время в таком виде, чтобы сразу понимать, какие дата и время там, где человек сейчас находится (в своей временной зоне).
Такие дату и время мы будем называть локальными датой и временем. Локальные дата и время — это абсолютный момент времени, приведенный к конкретной временной зоне. Для того, чтобы использовать локальные дату и время, предназначен тип ДатаВремя. Нужно понимать, что локальные дата и время не имеют смысла без указания конкретной временной зоны.
- Временная зона UTC-3 (Дания, Бразилия): 2020-03-01 07:00:00.000
- Временная зона UTC-1 (Азорские острова): 2020-03-01 09:00:00.000
- Временная зона UTC+1 (Австрия, Германия): 2020-03-01 11:00:00.000
- Временная зона UTC+3 (Россия (Москва), Белоруссия): 2020-03-01 13:00:00.000
В этом примере видна разница между локальными датой и временем и абсолютным моментом времени. Таким образом, можно сделать следующий вывод: если нужно сравнить различные моменты времени в некоторой совпадающей системе координат, следует использовать значение типа Момент (абсолютный момент времени). Если нужно отображать значение момента времени пользователю, следует использовать значение типа ДатаВремя (локальные дату и время). При этом нужно иметь в виду, что тип ДатаВремя не хранит временную зону, для которой сформировано это значение. Поэтому сравнивать значения типа ДатаВремя имеет смысл только в том случае, когда оба сравниваемых значения заданы для одной временной зоне.