Тип «Момент»

Значение типа Момент хранит абсолютный момент времени. Говоря более простым языком, это дата и время, указанные для часового пояса UTC. Это позволяет располагать на одной шкале времени события, которые происходят в различных часовых поясах, т. к. дата и время в конкретном часовом поясе всегда имеют прямое отображение в UTC путем корректировки на время смещения конкретного часового пояса.

Значение типа Момент может быть создано следующими способами:

  • С помощью литерала вида Момент{\<дата\>\<разделитель_сегментов\>\<время\>\<часовой_пояс\>}, где
    • \<дата\> имеет вид: гггг-ММ-дд.
    • \<разделитель_сегментов\> — символ неразрывного пробела   или T.
    • \<время\> имеет вид: ЧЧ:мм(:cc(.ССС)?)?.
    • \<часовой_пояс\> — имя часового пояса или смещение в виде [+-]ЧЧ:мм.
    Например:
    Момент{2019-05-01 23:30:40.345 UTC+3}

    Встроенные строковые литералы:

    • Момент{} — значение по умолчанию: 0001-01-01 00:00:00.000 Z.
    • Момент{Минимум} — минимальное значение: 0000-12-31 06:00:00.000 Z.
    • Момент{Максимум} — максимальное значение: 4000-01-01 17:59:59.999 Z.
  • С помощью конструктора типа, в котором дата и время указывается в виде строки: Момент(Представление: Строка). При указании в виде строки момент времени должен указываться приведенным к UTC. Пример:
    Момент("2019-05-01 23:30:40.345 UTC+3")
  • С помощью конструктора типа, в котором составляющие даты и времени вводятся отдельными параметрами конструктора: Момент(Год: Число, Месяц: Число, День: Число, Час: Число, Минута: Число, Секунда: Число, Миллисекунда: Число, ЧасовойПояс: ЧасовойПояс). Также в конструкторе следует указать используемый часовой пояс. Пример:
    Момент(2019,05,01,23,30,40,345,ЧасовойПояс{UTC+3})
  • С помощью конструктора типа, в который передаются значения типов Дата и Время, а также часовой пояс: Момент(Дата: Дата, Время: Время, ЧасовойПояс: ЧасовойПояс). Пример:
    Момент(Дата{2019-05-01},Время{23:30:40},ЧасовойПояс{UTC+3})
  • Из значения типа ДатаВремя с помощью метода ВМомент(). При этом необходимо указать, для какого часового пояса было сформировано значение типа ДатаВремя. Пример:
    метод Скрипт()
        пер МоментСоздания = новый ДатаВремя(2019, 05, 01, 23, 30, 40, 345)
        пер МоментСозданияФормат = МоментСоздания.ВМомент(ЧасовойПояс{UTC})
        Консоль.Записать(МоментСозданияФормат)
    ;
Описание элементов строковых литералов и форматных строк приведено здесь.