При работе в конфигурациях, использующих механизм оперативного проведения (например, Управление торговлей, УПП или Комплексная автоматизация), пользователи часто сталкиваются с системным сообщением: «Дата документа не соответствует текущей дате или дате последнего оперативно проведенного документа. Документ не может быть проведен оперативно». Это классическая ситуация для платформы 1С:Предприятие 8. Рассмотрим подробно, почему это происходит и как нам вместе решить эту проблему шаг за шагом.
Для начала проанализируем, что такое оперативное проведение. В 1С существует понятие оперативной отметки времени. Это своего рода «виртуальные часы» системы. Если в базе данных уже есть хотя бы один документ, проведенный оперативно «будущим» временем (даже на несколько секунд позже текущего реального времени), система фиксирует эту точку как новую границу. Все последующие попытки провести документы текущим (реальным) временем будут восприниматься системой как попытка провести их «задним числом» относительно этой границы.
Важный нюанс: в конфигурациях типа 1C:Бухгалтерия такая ошибка встречается редко, так как там чаще всего используется неоперативное проведение. В торговых же системах оперативное проведение критично для контроля остатков «здесь и сейчас».
Выясним причину смещения оперативной отметки. Чаще всего это происходит из-за опечатки пользователя или неправильно установленных часов на одной из рабочих станций. Разберем, как быстро найти виновника:
РеализацияТоваровУслуг или ПоступлениеТоваровУслуг).Иногда документ с «будущей» датой может принадлежать другому типу метаданных. Проанализируем ситуацию через Универсальный отчет или консоль запросов, чтобы найти вообще все документы в системе, дата которых больше текущей.
Рассмотрим ситуацию, когда в списке документов все даты кажутся корректными, но ошибка сохраняется. Это часто случается при работе через Терминальный сервер (RDP). Проанализируем ключевые моменты:
Разница во времени между сервером и клиентом. Если сервер 1С:Предприятия находится в одном часовом поясе (например, Владивосток), а пользователи подключаются из другого (например, Москва), важна настройка проброса часового пояса. В Windows Server 2012r2 и выше неправильная политика перенаправления часового пояса может приводить к тому, что 1С «видит» время сервера как оперативное, а пользователь пытается провести документ по своему локальному времени.
Синхронизация серверов. Если сервер приложений 1С и сервер СУБД (SQL) разнесены на разные машины, проверим их синхронизацию. Даже разница в 5-10 секунд может вызывать сбои в работе механизма оперативных отметок.
Посмотрим на техническую сторону кэширования. Сервер 1С может кэшировать текущую оперативную метку времени для активных сеансов. Даже если вы нашли и исправили документ с будущей датой, ошибка может не исчезнуть мгновенно. В этом случае выполним следующие действия:
1C:Enterprise 8.3 Server Agent. Это гарантированно сбросит кэшированные значения времени.Разберем вопрос пользователя: «На что повлияет, если я проведу документ неоперативно?». Это очень важный момент для управленческого учета. Выясним разницу:
Оперативное проведение: система проверяет остатки товаров на складе именно на текущий момент времени. Если товара нет — документ не проведется. Это защищает базу от «минусов».
Неоперативное проведение: система проводит документ «задним числом». Во многих стандартных конфигурациях при неоперативном проведении контроль остатков либо отключается, либо работает иначе. Если вы проведете реализацию «вчерашним» числом неоперативно, система может позволить списать товар, которого на тот момент не было, что приведет к некорректным данным в отчетах.
Рекомендация: старайтесь всегда добиваться возможности оперативного проведения. Неоперативное проведение — это крайний случай для исправления старых ошибок.
Если визуальный поиск не дает результатов, воспользуемся простым кодом в консоли запросов, чтобы найти документы, которые «забросили» время вперед. Рассмотрим пример запроса к таблице любого подозрительного документа:
ВЫБРАТЬ
Ссылка,
Дата,
Проведен
ИЗ
Документ.РеализацияТоваровУслуг
ГДЕ
Дата > &ТекущаяДата
И Проведен = ИСТИНА
УПОРЯДОЧИТЬ ПО
Дата УБЫВ
Этот запрос поможет мгновенно выявить документы, которые мешают нормальной работе системы.
Чтобы избежать подобных ситуаций в будущем, проанализируем следующие настройки:
Подведем итог: чаще всего проблема кроется в человеческом факторе (опечатка в дате) или в рассинхронизации времени между клиентом и сервером. Последовательное выполнение описанных шагов — от поиска документа до перезапуска службы — позволяет устранить ошибку в кратчайшие сроки.