УНФ 3.0.13.210: не работает синхронизация (обмен) через COM после перехода на платформу 8.5
Проблема
После обновления платформы 1С:Предприятие до версии 8.5 в конфигурации УНФ 3.0.13.210 перестаёт работать синхронизация данных через COM-соединение.
При попытке выполнить обмен возникает ошибка:
Не задан CLSID для класса v85.COMConnector
или аналогичная ошибка, связанная с отсутствием идентификатора COM-компоненты.
Причина
В типовой конфигурации УНФ 3.0.13.210 в функции ИдентификаторCOMСоединителя общего модуля ОбщегоНазначения не добавлен CLSID для нового COM-коннектора платформы 8.5 (v85.COMConnector).
Функция используется системой контроля безопасности для проверки разрешённых COM-компонент. Поскольку v85.COMConnector отсутствует в списке — платформа блокирует подключение.
Решение для специалистов
Необходимо дополнить функцию ИдентификаторCOMСоединителя в общем модуле ОбщегоНазначения.
Исходный код:
Функция ИдентификаторCOMСоединителя(Знач ИмяCOMСоединителя)
Если ИмяCOMСоединителя = "v83.COMConnector" Тогда
Возврат "181E893D-73A4-4722-B61D-D604B3D67D47";
КонецЕсли;
ВызватьИсключение(СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Неверное значение параметра %1 функции %2. Не задан CLSID для класса %3.'"),
"ИмяCOMСоединителя", "ОбщегоНазначения.ИдентификаторCOMСоединителя", ИмяCOMСоединителя),
КатегорияОшибки.ОшибкаКонфигурации);
КонецФункции
Исправленный код:
Функция ИдентификаторCOMСоединителя(Знач ИмяCOMСоединителя)
Если ИмяCOMСоединителя = "v83.COMConnector" Тогда
Возврат "181E893D-73A4-4722-B61D-D604B3D67D47";
ИначеЕсли ИмяCOMСоединителя = "v85.COMConnector" Тогда
Возврат "BBAB44B3-6C80-43B1-AFEC-3094B12122BE";
КонецЕсли;
ВызватьИсключение(СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Неверное значение параметра %1 функции %2. Не задан CLSID для класса %3.'"),
"ИмяCOMСоединителя", "ОбщегоНазначения.ИдентификаторCOMСоединителя", ИмяCOMСоединителя),
КатегорияОшибки.ОшибкаКонфигурации);
КонецФункции
Добавленный блок:
ИначеЕсли ИмяCOMСоединителя = "v85.COMConnector" Тогда
Возврат "BBAB44B3-6C80-43B1-AFEC-3094B12122BE";
Варианты внесения изменений
- Расширение конфигурации (рекомендуется) — не требует снятия с поддержки, легко устанавливается и удаляется
- Правка конфигурации — требует снятия модуля с поддержки
Готовое решение
Для тех, кто не хочет вносить изменения самостоятельно, доступно готовое расширение, которое устанавливает исправление без снятия конфигурации с поддержки.
Расширение использует аннотацию &Вместо для перехвата функции ИдентификаторCOMСоединителя и добавляет поддержку v85.COMConnector.
Применимость
- Конфигурация: УНФ (Управление нашей фирмой) 3.0.13.210
- Платформа: 1С:Предприятие 8.5
- Область: Синхронизация данных, обмен через COM-соединение
Вступайте в нашу телеграмм-группу Инфостарт
