Время в документах 1С: откуда оно берётся и как его поправить
Содержание
Чтобы установить время
документа в 1С, откройте документ и впишите нужное значение прямо в поле даты в шапке (рядом с номером, подпись «от») в формате дд.мм.гггг чч:мм:сс, например 31.03.2026 23:59:59. Затем нажмите «Провести и закрыть»: документ встанет на новое место в хронологии и перепроведётся с новым временем.
Типичная ситуация: бухгалтер вводит поступление вечером, а в журнале оно оказывается раньше реализации, сделанной утром, и списание по FIFO уходит не по той партии. Или в новых документах стоит время на три часа меньше реального. В первом случае хватит правки поля, во втором придётся настроить время на компьютере, на сервере 1С или часовой пояс базы. Ниже разобраны оба случая.
Откуда 1С берёт дату и время нового документа
Когда вы создаёте документ, программа подставляет «текущую дату». Чьи часы при этом считаются текущими, зависит от варианта работы базы:
| Вариант работы | Чьи часы | Что ещё влияет |
|---|---|---|
| Файловая база на своём компьютере | Часы вашего компьютера | Часовой пояс Windows |
| Файловая база в сетевой папке | Часы компьютера пользователя, который создаёт документ | У каждого пользователя свои часы |
| Клиент-серверная база | Часы сервера 1С | Часовой пояс сеанса или информационной базы |
| Терминальный сервер (RDP) | Часы терминального сервера или сервера 1С | Перенаправление часового пояса клиента |
В типовых конфигурациях на платформе 8.3 (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) для подстановки даты используется время сеанса: время сервера, пересчитанное в часовой пояс, заданный для базы. Если пояс не задан, берётся пояс самого сервера.
Отсюда простое правило диагностики:
- 🕐 время «уехало» только у одного сотрудника в файловой базе — проблема в его компьютере;
- 🕑 время неверное у всех пользователей клиент-серверной базы — смотрите сервер 1С и часовой пояс базы;
- 🕒 расхождение ровно на целое число часов — почти всегда часовой пояс, а не сбитые часы;
- 🕓 расхождение на минуты — часы не синхронизируются с сервером точного времени.
Часы и часовой пояс на компьютере пользователя
Для файловой базы начните с компьютера, на котором сидит пользователь.
- Откройте
Параметры Windows → Время и язык → Дата и время. - Проверьте поле «Часовой пояс». Для Москвы —
(UTC+03:00) Москва, Санкт-Петербург. - Включите «Установить время автоматически» и нажмите «Синхронизировать».
- Перезапустите 1С: открытый сеанс может продолжать работать со старым поясом.
Быстрее всё проверить из командной строки:
:: текущий часовой пояс
tzutil /g
:: состояние синхронизации времени
w32tm /query /status
:: принудительная синхронизация
w32tm /resync
Если компьютер в домене, время он получает от контроллера домена. Тогда править часы руками бесполезно: через несколько минут они вернутся к доменному времени. Неверное время на всех машинах домена — повод разбираться с контроллером домена, а не с 1С.
Сбитые часы ломают не только даты документов. С ними перестают работать защищённые соединения: обмен с ЭДО, отправка отчётности, интернет-поддержка. Сертификаты проверяются по текущей дате, и при ошибке в несколько часов или дней соединение может отклоняться.
Время в клиент-серверной базе и на терминальном сервере
В клиент-серверном варианте часы компьютера пользователя на дату нового документа почти не влияют. Работает сервер 1С и часовой пояс, который задан для информационной базы.
Часовой пояс информационной базы
Это главный приём, если пользователи и сервер находятся в разных поясах. Например, сервер стоит в Москве, а филиал работает в Новосибирске (UTC+7): без настройки все документы филиала будут получать московское время.
В конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) пояс выбирают в разделе Администрирование → Общие настройки, в группе региональных настроек. После смены пояса пользователям нужно перезайти в программу.
💡 Если в одной базе работают подразделения из разных поясов, единого «правильного» времени не будет. Договоритесь, по какому поясу ведётся учёт (обычно по головной организации), и задайте его для базы.
Терминальный сервер
На терминальном сервере все пользователи по умолчанию видят пояс сервера. Чтобы сеанс получал часовой пояс компьютера пользователя, на сервере включают групповую политику перенаправления часового пояса: Конфигурация компьютера → Административные шаблоны → Компоненты Windows → Службы удалённых рабочих столов → Узел сеансов удалённых рабочих столов → Перенаправление устройств и ресурсов → Разрешить перенаправление часового пояса.
Учтите: в клиент-серверной базе это поменяет только время на экране сеанса Windows. Дату документа всё равно определяет сервер 1С и пояс базы.
Как вручную изменить время в форме документа
Это самый частый сценарий: документ уже есть, нужно поставить ему другое время.
Пошагово
- Откройте документ двойным щелчком в журнале.
- Щёлкните в поле даты в шапке (подпись «от»).
- Выделите время и впишите новое значение: часы, минуты и секунды через двоеточие.
- Нажмите «Провести и закрыть». Если документ не проводится, нажмите «Записать».
- Проверьте место документа в журнале: отсортируйте список по колонке «Дата».
Кнопка календаря справа от поля меняет только число, время остаётся прежним. Поэтому время правьте с клавиатуры.
Какое время ставить
Порядок документов внутри одного дня определяется временем. Если время совпадает до секунды, 1С ставит такие документы в произвольном, но постоянном порядке. Отсюда практические приёмы:
| Задача | Какое время поставить |
|---|---|
| Документ должен быть первым за день (ввод остатков, перемещение утром) | 00:00:00 или раннее утро |
| Поступление должно пройти раньше продажи | На минуту раньше реализации |
| Документ должен быть последним за день (корректировки, инвентаризация) | 23:59:59 или ближе к концу дня |
| Несколько документов в строгом порядке | С шагом в одну секунду или минуту |
Документ задним числом: откуда берётся время
Когда вы создаёте документ сегодня в 15:42 и меняете в календаре только число на 31 марта, время останется 15:42. Документ встанет в середину дня 31 марта, хотя по смыслу часто должен быть в конце или в начале.
Пример. 31 марта утром проведена реализация на 10 единиц товара в 10:15. Сегодня вы вводите задним числом поступление этого товара за 31 марта, и оно получает время 15:42. В результате реализация оказывается раньше поступления, а программа фиксирует нехватку остатка. Решение: поставить поступлению время, например, 10:14:00, и перепровести реализацию.
Похожая история с документами из обмена и загрузки из файлов. Время в них приходит из источника. Если источник передаёт только дату, документ получает 00:00:00 и встаёт в начало дня, раньше всех документов, введённых вручную.
Перед изменением даты проведённого документа в закрытом периоде согласуйте это с главным бухгалтером. Новое время меняет движения по регистрам, и итоги уже сданной отчётности могут разойтись с базой.
Если поле даты не редактируется
- 🔒 Установлена дата запрета изменения данных, и документ попадает в закрытый период. Запрет настраивает администратор в разделе
Администрирование; снимать его лучше на время правки и возвращать сразу после. - 👤 У пользователя нет права на изменение документов этого вида. Нужна другая группа доступа.
- 📄 Документ создан автоматически (например, регламентной операцией закрытия месяца). Такие документы часто перезаполняются целиком, ручная правка времени для них не имеет смысла.
Групповое изменение даты
Если нужно сдвинуть время у десятков документов, откройте обработку «Групповое изменение реквизитов» (в конфигурациях на БСП она находится в разделе Администрирование → Обслуживание). Выберите вид документа, отберите нужные, укажите новое значение реквизита «Дата».
Обработка записывает документы, но не всегда перепроводит их. После массовой смены даты запустите перепроведение документов за затронутый период. Без этого движения в регистрах останутся со старым временем.
Как проверить время платформы в режиме отладки
Когда непонятно, чьё время подставляется — клиента или сервера, помогает отладчик. Это задача для администратора или программиста с доступом к Конфигуратору, и делать её лучше на копии базы.
- Откройте базу в Конфигураторе.
- Выберите в меню
Отладка → Начать отладку → Тонкий клиент. - В Конфигураторе поставьте точку останова в модуле формы любого документа, например в обработчике создания формы на сервере.
- Создайте документ в запущенном сеансе. Выполнение остановится на точке.
- Нажмите
Shift+F9и вычислите выражения:
ТекущаяДата()
ТекущаяДатаСеанса()
ЧасовойПоясСеанса()
ЧасовойПояс()
Как читать результат:
- ✅
ТекущаяДатаСеанса()совпадает с реальным временем пользователя — механизм настроен верно; - ⏱
ТекущаяДата()на сервере отличается от времени сеанса на целое число часов — сработал пояс базы, это нормально; - ❌ оба значения неверны — сбиты часы самого сервера.
Если вы дорабатываете конфигурацию, для даты документов используйте ТекущаяДатаСеанса(), а не ТекущаяДата(). Первая учитывает пояс базы, вторая отдаёт голые часы того компьютера, где выполняется код.
💡 Для тестов «задним числом» не нужно переводить часы. Создайте документ и впишите нужную дату вручную. Перевод системных часов на сервере затронет всех пользователей и регламентные задания.
Время сервера 1С и расписание регламентных заданий
Синхронизация часов сервера
На сервере 1С под Windows настройте синхронизацию с надёжным источником. Если сервер не в домене, задайте пул NTP:
w32tm /config /manualpeerlist:"pool.ntp.org" /syncfromflags:manual /reliable:yes /update
net stop w32time && net start w32time
w32tm /resync
На Linux проверьте пояс и синхронизацию командами:
timedatectl
sudo timedatectl set-timezone Europe/Moscow
sudo timedatectl set-ntp true
Синхронизация меняет часы плавно или небольшим рывком, перезапуск 1С для неё не нужен. Смена часового пояса сервера — другое дело.
После смены часового пояса операционной системы сервер 1С может продолжать работать со старым значением до перезапуска службы. Перезапуск службы «Агент сервера 1С:Предприятия» оборвёт сеансы всех пользователей. Делайте это вне рабочего времени и предупредите людей заранее.
Регламентные задания
Расписание регламентных заданий в клиент-серверной базе отсчитывается по часам сервера 1С. Если задание «Загрузка курсов валют» стоит на 08:00, а сервер живёт по UTC, оно выполнится в 11:00 по Москве.
Где смотреть и править расписание в типовых конфигурациях:
| Конфигурация | Где найти регламентные задания |
|---|---|
| Бухгалтерия 3.0 | Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания |
| ЗУП 3.1 | Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания |
| УТ 11 | НСИ и администрирование → Администрирование → Обслуживание → Регламентные операции |
В файловой базе регламентные задания выполняет один из запущенных клиентов по своим часам. Если на этом компьютере неверное время, задания будут срабатывать не тогда, когда вы ожидаете.