Тип «Время»
Тип Время позволяет работать только со временем. Например, если нам надо указать время выполнения какой-то ежедневной операции, то для указания этого значения достаточно указать только значение времени. Время учитывается с точностью до миллисекунд.
Значение типа Время может быть задано следующими способами:
- С помощью литерала вида
Время{\<время\>}
, где\<время\>
имеет вид:ЧЧ:мм(:cc(.ССС)?)?
. Например:Время{23:30:40}
Встроенные строковые литералы:
Время{}
— значение по умолчанию: 00:00:00.000.Время{Минимум}
— минимальное значение: 00:00:00.000.Время{Максимум}
— максимальное значение: 23:59:59.999.
Примечание: Встроенные строковые литералы также можно использовать в языке запросов. Например, для того чтобы проверить наличие следующего периода у записи в таблице периодического регистра сведений, можно сравнить значение поля СледующийПериод с максимальным значением типа поля Период (Пример). Если они равны — значит значение следующего периода отсутствует для данной записи. - С помощью конструктора типа, в котором время указывается в виде строки:
Время(Представление: Строка)
. В общем случае формат строки совпадает с выражением литерала из примера выше. В примере ниже в переменную из примера выше помещается новый объект типаВремя
, как аргумент для которого передается строка соответствующего формата:Время("23:30:40")
- С помощью конструктора типа, в котором составляющие даты вводятся отдельными
параметрами конструктора:
Время(Час: Число, Минута: Число, Секунда: Число, Миллисекунда: Число = 0)
. Пример:Время(23,30,40)
- С помощью метода Сейчас(), который принимает как аргумент
ЧасовойПояс
и возвращает текущее время на компьютере с точностью до миллисекунд.
Тип Время является потомком типа Форматируемое, а значит для значений этого типа поддерживается возможность указывать форматную строку для получения нужного представления значения данного типа. Форматная строка может состоять только из тех описателей формата, которые в этой таблице относятся ко времени.
метод Скрипт()
пер НачалоРаботы = новый Время(9, 15, 0, 0)
пер ОкончаниеРаботы = Время{18:00}
пер ВремяОбеда = новый Время("13:00:00.500")
пер ТекущееВремя = Время.Сейчас()
пер ДлительностьРабочегоДня = ОкончаниеРаботы-НачалоРаботы
;
Описание элементов строковых литералов и форматных строк приведено здесь.