К статье
Практический материал

Быстрый старт · 9 мин

Как пишется дата в 1С: форматы, ввод и настройка

Разбираем, как пишется дата в 1С: форматы ввода в документах, функции работы с датами в коде, настройка отображения и типичные ошибки при вводе.

Дата в 1С — один из самых часто используемых типов данных: она встречается в документах, отчётах, регистрах и справочниках. При этом формат её записи зависит от контекста: в поле ввода документа дату набирают одним способом, во встроенном языке 1С — другим, а в запросах — третьим. Путаница между этими вариантами — частая причина ошибок у начинающих пользователей и разработчиков.

В интерфейсе программы дата обычно отображается в привычном виде «ДД.ММ.ГГГГ», например 15.03.2026. Но внутри системы дата хранится как точное значение, включающее также время с точностью до секунды. Понимание этого помогает правильно вводить даты вручную, настраивать отчёты за период и писать формулы без ошибок преобразования типов.

Ниже разобраны все основные сценарии: ручной ввод даты в документе, выбор через календарь, запись даты в коде на встроенном языке, использование дат в запросах, настройка формата отображения и типичные проблемы, с которыми сталкиваются пользователи.

Как дата хранится и отображается в 1С

Внутри платформы 1С дата — это единый тип, который всегда содержит и календарную дату, и время с точностью до секунды. Даже если в документе вы видите только «15.03.2026», в базе хранится значение вида «15 марта 2026 года, 0 часов 0 минут 0 секунд». Это важно при сравнении дат: два значения одного дня, но с разным временем, для программы не равны.

Отображение даты в интерфейсе зависит от региональных настроек информационной базы и операционной системы. В российских конфигурациях стандартный вид — «ДД.ММ.ГГГГ» или «ДД.ММ.ГГ». Разделитель — точка, порядок: день, месяц, год. Американский формат «ММ/ДД/ГГГГ» в типовых российских базах не используется, и попытка ввести дату в таком виде приведёт к ошибке или неверной интерпретации.

Как ввести дату в документе вручную

Самый быстрый способ — набрать дату с клавиатуры прямо в поле ввода. Полный формат: две цифры дня, точка, две цифры месяца, точка, четыре цифры года — например, 15.03.2026. После нажатия Enter или Tab программа проверит корректность значения: несуществующая дата вроде 31 февраля будет отклонена с сообщением об ошибке.

1С понимает сокращённый ввод без разделителей. Если набрать 150325 и нажать Enter, программа интерпретирует это как 15.03.2026 — текущий век подставляется автоматически. Ввод 1503 будет понят как 15 марта текущего года. Это удобно при массовом вводе документов, но требует внимательности: легко ошибиться в порядке цифр.

Также работают клавиши быстрого сдвига даты: в поле даты нажатие «+» увеличивает день на единицу, «−» уменьшает. Это удобно, когда нужно оформить несколько документов подряд на соседние дни.

Порядок ввода даты в документе
  1. 1
    Установите курсор в поле даты документа
  2. 2
    Наберите дату в формате ДД.ММ.ГГГГ или сокращённо, например 150325
  3. 3
    Нажмите Enter или Tab для подтверждения
  4. 4
    Проверьте, что в поле отобразилась именно та дата, которую вы имели в виду
  5. 5
    При ошибке исправьте значение до записи и проведения документа

Выбор даты через календарь

Альтернатива ручному вводу — кнопка выбора рядом с полем даты, открывающая календарь. В нём можно переключать месяцы и годы стрелками, а нужный день выбирается щелчком мыши. Этот способ медленнее клавиатурного ввода, но исключает ошибки в порядке цифр и удобен, когда нужная дата далеко от текущей.

В календаре обычно доступна кнопка быстрого перехода к сегодняшней дате. Если вы случайно ушли на другой год, не нужно листать месяцы назад — достаточно вернуться к текущей дате и повторить выбор.

Как пишется дата во встроенном языке 1С

Для разработчиков и тех, кто настраивает формулы и обработки, действует другой формат. Литерал даты записывается в одинарных кавычках в виде 'ГГГГММДДччммсс': сначала четыре цифры года, затем месяц, день и при необходимости часы, минуты, секунды. Например, '20260315' — 15 марта 2026 года, начало дня, а '20260315143000' — тот же день, 14:30.

Обратите внимание: порядок здесь обратный привычному — год идёт первым. Это самая частая ошибка начинающих разработчиков: запись '15032026' будет прочитана как год 1503, что приведёт к неверным результатам в отборах и сравнениях.

Для получения дат в коде используются встроенные функции: ТекущаяДата() возвращает текущую дату и время, Дата(год, месяц, день) или Дата("15.03.2026") создаёт значение даты, НачалоДня() и КонецДня() отсекают время. Для вывода даты в нужном виде применяется функция Формат(Значение, "ДЛФ=D").

bsl
ДатаДокумента = '20260315'; // 15.03.2026 00:00:00
НачалоПериода = НачалоДня('20260301');
КонецПериода = КонецДня('20260331');
ТекстДаты = Формат(ТекущаяДата(), "ДЛФ=DD");

Даты в запросах и отборах

В языке запросов 1С литерал даты записывается через функцию ДАТАВРЕМЯ(год, месяц, день) или ДАТАВРЕМЯ(год, месяц, день, час, минута, секунда). Например, условие отбора документов за март выглядит так: дата больше или равна ДАТАВРЕМЯ(2026, 3, 1) и меньше ДАТАВРЕМЯ(2026, 4, 1).

Ключевое правило при работе с периодами: не сравнивайте дату «по конец дня» вручную через 23:59:59 — надёжнее использовать условие «меньше первого числа следующего месяца» или функцию КонецДня() в коде. При передаче дат в запрос через параметры значения передаются как есть, в формате типа «Дата», без преобразования в строку.

Типичные ошибки при работе с датами
01
Запись литерала в коде как '15032026' вместо '20260315' — год и день меняются местами, отборы возвращают пустой результат
02
Сравнение дат без учёта времени: документ за 15.03.2026 14:30 не попадает в условие 'равно 15.03.2026 00:00'
03
Ввод даты в американском формате ММ/ДД/ГГГГ в поле документа — программа либо отклоняет значение, либо трактует его неверно
04
Использование границы 23:59:59 для конца периода вместо условия 'меньше следующего дня' — риск потери документов при нестандартном времени
05
Передача даты в запрос строкой вместо значения типа Дата — ошибка несоответствия типов

Настройка формата отображения даты

Если дата отображается не так, как нужно (например, без ведущих нулей или в сокращённом виде), формат настраивается на нескольких уровнях. Для конкретного поля формы разработчик задаёт строку формата в свойствах элемента. Глобально на отображение влияют региональные настройки информационной базы, которые задаются в конфигураторе.

В печатных формах и отчётах формат даты обычно задаётся в макете или через функцию Формат() с параметрами вида ДЛФ=D (длинный формат: «15 марта 2026 г.») или ДФ=dd.MM.yyyy. Пользователю без доступа к конфигуратору менять системный формат не нужно — достаточно выбрать правильный вариант представления в настройках конкретного отчёта, если он это поддерживает.

Маршрут решения

Как выбрать способ записи даты

Нужно ввести дату в документ или справочникНаберите ДД.ММ.ГГГГ в поле или сокращённо 150325 и нажмите Enter
Нужна дата в коде на встроенном языкеИспользуйте литерал 'ГГГГММДДччммсс' или функции Дата(), ТекущаяДата()
Нужна дата в запросеИспользуйте ДАТАВРЕМЯ(год, месяц, день) или передайте параметр типа Дата
Нужно красивое отображение в отчёте или печатиПримените Формат() с параметром ДЛФ или ДФ

Проверка результата и ограничения

После ввода даты в документ убедитесь, что в поле отображается ожидаемое значение — программа показывает интерпретированную дату после подтверждения, и это лучший способ поймать ошибку сокращённого ввода. Если дата попала не в тот период, документ может оказаться вне журнала за нужный месяц и «потеряться» для отчётов.

Учтите ограничение: запись и проведение документов задним числом может быть запрещена настройками даты запрета изменения данных. Если программа отказывается сохранять документ с прошлой датой, проверьте, не установлен ли запрет редактирования закрытого периода — его снятие относится к полномочиям администратора базы.

Итог

Что важно запомнить

В документах дата пишется как ДД.ММ.ГГГГ, в коде — как 'ГГГГММДДччммсс', в запросах — через ДАТАВРЕМЯ(). Дата в 1С всегда содержит время, поэтому при сравнениях и отборах за период учитывайте начало и конец дня.

Частые вопросы

Можно ли ввести дату без точек, просто цифрами?

Да. В поле даты документа наберите цифры подряд, например 150325, и нажмите Enter — программа поймёт это как 15.03.2026. Подставляется текущий век, поэтому для дат прошлого века вводите год полностью.

Почему документ не попадает в отчёт, хотя дата правильная?

Чаще всего дело во времени: отбор за день может учитывать время документа, а также проверьте, проведён ли документ и не отличается ли период отчёта. Откройте документ и сверьте полные дату и время в его свойствах.

Как в коде получить дату без времени?

Используйте функцию НачалоДня(Дата) — она возвращает ту же дату со временем 00:00:00. Для конца дня применяется КонецДня(Дата), что удобно при отборах за период.

Какой порядок цифр в литерале даты во встроенном языке?

Год, месяц, день, затем часы, минуты, секунды: '20260315143000'. Год всегда идёт первым четырьмя цифрами — это отличается от привычного формата в документах.

Программа не даёт сохранить документ прошлым числом. Что делать?

Скорее всего, установлена дата запрета изменения данных для закрытого периода. Самостоятельно снимать её не стоит — обратитесь к администратору базы, так как изменение закрытого периода влияет на отчётность.