В процессе обмена данными между типовыми конфигурациями 1С часто возникают ситуации, когда после очередного обновления одной из баз обмен перестает функционировать. Ошибка, связанная с тем, что система не может обнаружить поле ТолькоОстатки при выполнении обработчиков конвертации, является классическим примером несовместимости версий конфигураций и правил обмена.
Данная ошибка возникает в процессе выполнения кода МенеджерОбменаЧерезУниверсальныйФормат. Когда система пытается загрузить сообщение, она обращается к структуре данных, которая изменилась в последнем релизе одной из конфигураций. В частности, разработчики 1С могли изменить состав реквизитов в ДополнительныйКритерий или других объектах обмена, а старые правила конвертации, встроенные в конфигурацию-приемник, продолжают искать удаленные или переименованные свойства.
Сообщения об ошибках в модуле ОбменДаннымиXDTOСервер указывают на то, что конфликт происходит именно на этапе сопоставления объектов. Рассмотрим основные методы решения этой проблемы, начиная с самых надежных и правильных.
Самым эффективным и правильным методом исправления является обновление обеих баз до актуальных релизов. Разработчики 1С оперативно реагируют на такие баги. Если вы столкнулись с ошибкой на релизах КА 2.5.8.191 и БП 3.0.113.17, стоит проверить наличие патчей или обновлений. Пользователи подтверждают, что в релизах уровня 2.5.8.221 и аналогичных для УТ 11 данная проблема уже устранена.
Порядок действий:
Если обновление всей конфигурации невозможно по каким-то причинам, попробуйте обновить только правила обмена. Правила конвертации — это сердце любого обмена между базами. Если структура данных в базе-источнике изменилась, а правила остались старыми, система выдаст ошибку Поле объекта не обнаружено.
Как поступить:
Если после обновления ошибка сохраняется или данные все еще не проходят, стоит провести техническую проверку целостности системы:
Очистка кэша: Часто бывает так, что обновление установлено, но система продолжает использовать старые закэшированные алгоритмы выполнения кода XDTO. Очистите кэш 1С на стороне клиента и сервера.
Тестирование конфигурации:
В режиме Конфигуратор запустите проверку конфигурации:
// В Конфигураторе:
// Конфигурация -> Проверка конфигурации...
// Отметьте все пункты, включая проверку метаданных и модулей.
Это позволит выявить, нет ли «битых» ссылок или ошибок в модулях, которые могли возникнуть при накатывании обновления.
В обсуждениях часто встречается совет использовать правила обмена от предыдущих версий. Это крайне рискованная мера. Использование старых правил может привести к тому, что:
Используйте этот метод только в том случае, если вам необходимо срочно «протолкнуть» обмен для продолжения работы, и обязательно выполните полную сверку данных после завершения загрузки. Помните, что основной способ лечения — это всегда приведение версий баз к актуальному состоянию, рекомендованному разработчиком.
Надеемся, эти рекомендации помогут вам устранить ошибку синхронизации и вернуть обмен данными в рабочее состояние!