Тип «ДатаВремя»

Тип для работы с датой и временем. Значение типа ДатаВремя может быть задано следующими способами:

  • С помощью литерала вида ДатаВремя{\<дата\>\<разделитель_сегментов\>\<время\>}, где
    • \<дата\> имеет формат: гггг-ММ-дд.
    • \<разделитель_сегментов\> — символ неразрывного пробела   или T.
    • \<время\> имеет формат: ЧЧ:мм(:cc(.ССС)?)?.
    Например:
    ДатаВремя{2019-05-01 23:30:40}

    В примере ниже литерал со значениями даты и времени помещается в переменную, после чего для него вызывается метод Представление(), в который как аргумент передается форматная строка:

    метод Скрипт()
        пер ДатаСоздания = ДатаВремя{2019-05-01 23:30:40}
        пер ДатаСозданияФормат = ДатаСоздания.Представление("дд ММММ гггг', 'ЧЧ:мм:сс")
    ;
    Результат:
    01 мая 2019, 23:30:40

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

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