При настройке регулярного обмена между конфигурациями 1С:Управление торговлей (УТ) и 1С:Бухгалтерия предприятия (БП) через универсальный формат (EnterpriseData) пользователи и администраторы нередко сталкиваются с ошибкой при попытке отредактировать, провести или отменить проведение документов в базе-приемнике. Рассмотрим подробно, почему возникает эта ошибка и как восстановить корректную работу базы данных.
При попытке провести документ РеализацияТоваровУслуг или изменить элемент справочника Номенклатура в «1С:Бухгалтерии предприятия» система выдает сообщение об ошибке следующего вида:
{ОбщийМодуль.ОбменДаннымиСобытия.Модуль}: Ошибка выполнения правил регистрации объектов для плана обмена СинхронизацияДанныхЧерезУниверсальныйФормат.
Описание ошибки:
Ошибка алгоритма вычисления значения константы:
План обмена: СинхронизацияДанныхЧерезУниверсальныйФормат
Объект метаданных: Документ.РеализацияТоваровУслуг
Описание ошибки: Поле объекта не обнаружено (СтатусыРеализацийТоваровУслуг)
Алгоритм:
// {Начало алгоритма}
Значение = Перечисления.СтатусыРеализацийТоваровУслуг.КПредоплате;
// {Окончание алгоритма}
Выясним причину такого поведения системы. В конфигурации «1С:Бухгалтерия предприятия» отсутствует объект метаданных Перечисления.СтатусыРеализацийТоваровУслуг, так как механизм статусов документов оптовой продажи реализован исключительно в «1С:Управление торговлей».
При записи или проведении документа в 1С срабатывает подписка на события, отвечающая за регистрацию изменений для планов обмена. В этот момент запускаются Правила регистрации объектов (ПРО). Если при настройке прямого подключения (COM-соединение) произошел сбой, в информационную базу БП были ошибочно загружены правила регистрации, предназначенные для конфигурации УТ. В результате подписка пытается обратиться к реквизитам и перечислениям, которых физически нет в метаданных бухгалтерии.
Вторая сопутствующая причина проблемы — несовпадение поддерживаемых версий формата EnterpriseData (например, попытка связать конфигурации по неподдерживаемой версии формата 1.0 или 1.3 вместо актуальной согласованной версии 1.2).
Для исправления ошибки необходимо вернуть в конфигурацию «Бухгалтерия предприятия» оригинальные правила регистрации из встроенных макетов конфигурации. Разберем по шагам, как это сделать:
После применения этой настройки система перезапишет записи в служебном регистре сведений Правила для обмена данными (или Правила регистрации объектов) корректными правилами для плана обмена СинхронизацияДанныхЧерезУниверсальныйФормат. После этого перепроведение реализации пройдет без ошибок.
Проанализируем требования к версиям программ. Универсальный формат обмена опирается на Библиотеку стандартных подсистем (БСП). Если релизы УТ и БП имеют существенную разницу во времени выпуска, версии поддерживаемого формата EnterpriseData будут различаться.
Прямое подключение через COM-соединение (Automation) часто приводит к подмене служебных данных и правил, а также требует совпадения разрядности платформ и регистрации библиотеки comcntr.dll. Чтобы избежать подобных сбоев в будущем, рекомендуется использовать альтернативные каналы транспорта:
Таким образом, для быстрого решения возникшей проблемы достаточно переключить правила регистрации объектов в 1С:Бухгалтерии на типовые из конфигурации, а для стабильной долговременной работы — своевременно обновлять конфигурации и использовать обмен через каталог или веб-сервисы.