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

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

Как поменять текущую дату в 1С

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

Текущая дата в 1С — это дата сеанса, от которой программа подставляет значения в новые документы, отчёты и движения по регистрам. Иногда требуется ввести документ «задним числом» или проверить поведение отчёта на другую дату, и тогда возникает вопрос: можно ли поменять текущую дату прямо в программе, не меняя системное время компьютера.

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

Ниже разобраны все рабочие способы: от простого изменения даты в документе до программной установки даты сеанса через встроенный язык. Для каждого варианта указаны условия, ограничения по правам и признаки того, что всё сработало корректно.

Что такое текущая дата сеанса и зачем её менять

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

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

Способ 1: изменить дату в самом документе

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

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

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

Способ 2: изменить дату сеанса через меню «Параметры»

В тонком и толстом клиенте 1С:Предприятия 8.3 есть штатная возможность задать дату сеанса вручную. Откройте главное меню (кнопка с логотипом или круглой стрелкой в левом верхнем углу), выберите пункт «Сервис → Параметры». В открывшемся окне найдите группу настроек, связанную с датой сеанса: снимите или установите флажок использования текущей даты и укажите нужное значение в поле даты.

После подтверждения все новые документы будут создаваться с этой датой, а функция ТекущаяДатаСеанса() станет возвращать установленное значение. Настройка действует только в рамках текущего сеанса — после перезапуска программы дата снова синхронизируется с системной.

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

Порядок действий
  1. 1
    Откройте главное меню приложения (кнопка в левом верхнем углу окна 1С).
  2. 2
    Перейдите в «Сервис → Параметры».
  3. 3
    Найдите настройку даты сеанса и снимите флажок использования системной даты, если он установлен.
  4. 4
    Введите нужную дату в поле и нажмите «ОК».
  5. 5
    Создайте тестовый документ и проверьте, какая дата подставилась в поле «Дата».

Способ 3: программная установка даты сеанса

Для разработчиков и администраторов доступен метод встроенного языка УстановитьДатуСеанса(). Он задаёт дату для текущего сеанса программно — например, из внешней обработки или консоли кода. Это удобно при тестировании, когда нужно быстро переключаться между датами.

bsl
УстановитьДатуСеанса(Дата(2026, 12, 31));
Сообщить(ТекущаяДатаСеанса());

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

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

Сравнение способов: что выбрать в вашей ситуации

Выбор зависит от задачи и объёма работы. Разовый документ задним числом — правка даты в документе. Пакетный ввод за прошлый период — смена даты сеанса через «Параметры». Автоматизированное тестирование — программная установка через код.

Сравнение вариантов

Дата в документе

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

Параметры сеанса

Подходит для массового ввода документов за один период. Действует до перезапуска программы, может быть недоступна по правам.

УстановитьДатуСеанса()

Подходит для тестирования и обработок. Требует права на выполнение кода, действует только в текущем сеансе.

Системная дата Windows

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

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

Как выбрать действие

Нужно провести один-два документа прошлым числомПоменяйте дату в шапке документа, дату сеанса не трогайте
Нужно ввести пакет документов за прошлый месяцУстановите дату сеанса через «Сервис → Параметры»
Период закрыт датой запретаОбратитесь к администратору для снятия запрета — смена даты сеанса не поможет
Нужно протестировать отчёт на конкретную датуЗадайте период в настройках отчёта или используйте УстановитьДатуСеанса()

Проверка результата и типичные ошибки

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

Контрольные точки

Как проверить результат

Дата в новом документе
Норма

Подставляется установленная дата сеанса

Тревожный признак

Подставляется системная дата — настройка не применилась

Проведение документа
Норма

Документ проводится без сообщений о запрете

Тревожный признак

Ошибка «Редактирование данных этого периода запрещено»

Перезапуск программы
Норма

Дата вернулась к системной — это нормальное поведение

Тревожный признак

Дата сеанса сохранилась после перезапуска — проверьте настройки

Типичные ошибки
01
Перевод системных часов Windows вместо настройки в 1С — ломает другие программы, лицензии и время в журналах событий.
02
Попытка обойти дату запрета редактирования сменой даты сеанса — запрет проверяется по данным, а не по дате сеанса, документ всё равно не проведётся.
03
Ожидание, что дата сеанса сохранится после перезапуска — настройка сбрасывается при каждом новом подключении.
04
Игнорирование нумерации при вводе задним числом — в журнале появляются документы с нарушенной хронологией номеров.

Ограничения и риски

Главный риск при работе с датами — нарушение последовательности проведения. Документы, введённые задним числом после того, как были проведены более поздние операции, могут потребовать восстановления последовательности или перепроведения. В конфигурациях с оперативным учётом это влияет на остатки и взаиморасчёты.

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

Итог

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

Для разового документа задним числом меняйте дату прямо в документе. Для пакетного ввода используйте «Сервис → Параметры» или УстановитьДатуСеанса(). Настройка действует до конца сеанса и не отменяет дату запрета редактирования. Системное время Windows трогать не нужно.

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

Почему в меню «Сервис → Параметры» нет настройки даты сеанса?

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

Сохранится ли установленная дата после перезапуска 1С?

Нет. Дата сеанса действует только в рамках текущего подключения. После закрытия и повторного запуска программы она снова будет соответствовать системной дате компьютера или сервера.

Можно ли сменой даты сеанса обойти запрет редактирования закрытого периода?

Нет. Дата запрета изменения данных проверяется по дате самого документа на уровне механизмов конфигурации. Какую бы дату сеанса вы ни установили, документ в закрытом периоде не проведётся, пока администратор не снимет или не сдвинет запрет.

Влияет ли дата сеанса на уже созданные документы?

Нет. Настройка влияет только на значения, подставляемые по умолчанию в новые объекты, и на результат функции ТекущаяДатаСеанса(). Ранее записанные документы и движения по регистрам остаются без изменений.

Чем опасен перевод системного времени Windows для работы в 1С?

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

Как провести документ задним числом, если остатки уже рассчитаны на более позднюю дату?

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