И снова "Конфигурация узла распределенной ИБ не соответствует ожидаемой"

05.11.19

Интеграция - Обмен между базами 1C

Конфигурация узла распределенной ИБ не соответствует ожидаемой. Приведен очередной способ устранения этой ошибки, возникший не в результате сбоев в работе оборудования или при обмене, а в результате обновления платформы 1С.

Затеял я переход своей РИБ (самописная конфигурация на базе одной из старых версий Управления Торговлей 10.3) на новую платформу 1С с 8.3.12.1685 на 8.3.15.1565. Новая платформа была установлена во всех узлах, базы нормально и без ошибок загрузились и все казалось бы закончилось удачно. Но при попытке произвести обмен с одной из периферийных баз выскочила ошибка "Конфигурация узла распределенной ИБ не соответствует ожидаемой". Ошибка встречалась мне и ранее и решалась выгрузкой конфигурации из главного узла с последующей загрузкой в периферийную. Эта же процедура была проделана и в этот раз, однако к восстановлению обмена не привела. Был произведен для проверки обмен и с другими узлами. Результат - обмен не идет ни с одним из периферийных узлов РИБ. После отката на старую версию платформы я приступил к решению возникшей проблемы.

Поиски решения на просторах интернета в целом ничего не дали. Основной способ был известен мне и уже опробован. Подмена содержимого тега v8de:Digest2, как и ожидалось работает только один раз для измененного файла с данными. Внесение незначительных изменений в конфигурацию главного узла и последующий перенос изменений в периферийный узел тоже ни к чему не привели. Некоторым помогла выгрузка конфигурации из периферийной базы с последующей загрузкой в главную, но тут возник вопрос, а из какой периферийной базы выгружать? Ключики то везде разные...

Выгрузка из главной базы платформа 8.3.12.1685:

<v8de:Config xmlns:v8md="http://v8.1c.ru/metadata/2005/08">

<v8de:Version>216.0</v8de:Version>

<v8de:Digest1>00000000000000000000000000000000</v8de:Digest1>

<v8de:Digest2 Extensions="0000000000000000000000000000000000000000" v2="0acf333b4a9b71e12b7a700523f78324">d41d8cd98f00b204e9800998ecf8427e</v8de:Digest2>

</v8de:Config>

 

Выгрузка из периферийной базы 1 платформа 8.3.12.1685:

<v8de:Config xmlns:v8md="http://v8.1c.ru/metadata/2005/08">

<v8de:Version>216.0</v8de:Version>

<v8de:Digest1>00000000000000000000000000000000</v8de:Digest1>

<v8de:Digest2 Extensions="0000000000000000000000000000000000000000" v2="f031ca95ff7c7c605797876924a6756e">d41d8cd98f00b204e9800998ecf8427e</v8de:Digest2>

</v8de:Config>

 

Выгрузка из периферийной базы 2 платформа 8.3.12.1685:

<v8de:Config xmlns:v8md="http://v8.1c.ru/metadata/2005/08">

<v8de:Version>216.0</v8de:Version>

<v8de:Digest1>00000000000000000000000000000000</v8de:Digest1>

<v8de:Digest2 Extensions="0000000000000000000000000000000000000000" v2="b4de455a6868c21ac38b1df13cb1e01f">d41d8cd98f00b204e9800998ecf8427e</v8de:Digest2>

</v8de:Config>

 

Остальные периферийные базы не приведены, однако там ситуация такая же: Атрибут V2 в ключе v8de:Digest2 отличается во всех базах, само же значение ключа на платформе 8.3.12.1685 одинаково. Обмен на платформе 8.3.12.1685 идет нормально. Вывод: для нормального обмена на 8.3.12.1685 требуется равенство значения ключа v8de:Digest2, равенство значения атрибута V2 необязательно. При попытке сделать обмен на под управлением платформы 8.3.15.1565 ситуация следующая:

Выгрузка из главной базы платформа 8.3.15.1565:

<v8de:Config xmlns:v8md="http://v8.1c.ru/metadata/2005/08">

<v8de:Version>216.0</v8de:Version>

<v8de:Digest1>00000000000000000000000000000000</v8de:Digest1>

<v8de:Digest2 Extensions="0000000000000000000000000000000000000000" v2="a95fe017232e121ab1ba6ea487df1159">9e53a3505803f5c8d6308556676851bb</v8de:Digest2>

</v8de:Config>

 

Выгрузка из периферийной базы 1 платформа 8.3.15.1565:

<v8de:Config xmlns:v8md="http://v8.1c.ru/metadata/2005/08">

<v8de:Version>216.0</v8de:Version>

<v8de:Digest1>00000000000000000000000000000000</v8de:Digest1>

<v8de:Digest2 Extensions="0000000000000000000000000000000000000000" v2="f7a858d651be406f8db57105a0fe8226">f80d570770ddb1c186e70e4bd5266c41</v8de:Digest2>

</v8de:Config>

 

Выгрузка из периферийной базы 2 платформа 8.3.15.1565:

<v8de:Config xmlns:v8md="http://v8.1c.ru/metadata/2005/08">

<v8de:Version>216.0</v8de:Version>

<v8de:Digest1>00000000000000000000000000000000</v8de:Digest1>

<v8de:Digest2 Extensions="0000000000000000000000000000000000000000" v2="07b705fe58126f57d4a5f3cec00a9f2d">9e53a3505803f5c8d6308556676851bb</v8de:Digest2>

</v8de:Config>

 

Из проведенного эксперимента следует сразу несколько выводов: Первое, ключи для сравнения в базе приемнике формируются динамически либо при открытии базы под той или иной платформой, либо перед процедурой загрузки выгрузки. Второе, для нормального обмена данными под управлением платформы 8.3.15.1565 требуется равенство не только значения ключа v8de:Digest2, но и атрибута V2, так как обмен не шел как с периферийной базой 1, так и с периферийной базой 2. Заметим, что именно в периферийной базе 1 была произведена загрузка конфигурации, выгруженной из главной базы, однако там отличаются оба ключа.

Так как ключи формируются динамически, условием восстановления обмена может быть только приведение в полное соответствие конфигураций главной и периферийных баз данных. Почему же загрузка конфигурации из главного узла и загрузка в периферийный узел не помогает? Базы у меня работают в режиме совместимости 8.2. В этом режиме многие возможности современной платформы 1С отключаются и доступа к ним нет. Было сделано предположение, что в файл конфигурации cf не попадают эти отключенные области, однако они участвуют в расчете ключей при обмене. Тут я вспомнил про возможность выгрузить конфигурацию в файлы и потом загрузить ее из этого набора файлов обратно. Понятно, что для обычных форм это бинарные файлы, но сравнить то мы их можем, и подменить отличающиеся. После выгрузки в файлы конфигураций главной и периферийной базы 1 и попытке сравнения файлов результат обескуражил: отличались по содержимому не только многие бинарные файлы, но и содержимое такого вполне читаемого файла как ConfigDumpInfo.xml.

Периферийная база 1 была "отвязана" от главного узла и в неё были загружены файлы конфигурации из главной базы (конфигурация - Загрузить конфигурацию из файлов). Проведенное затем сравнение конфигурации периферийной базы и файла конфигурации, выгруженного из главной базы показало различие в некоторых элементах метаданных (некоторые картинки, макеты, помощь и т.п.).

 

Причины непонятны, скорее всего зарытые ошибки в конфигурации главной базы некорректно были выгружены в файлы. Для устранения этого в периферийную базу была опять загружена конфигурация из главного узла. После проведенных манипуляций обмен не восстановился:

Выгрузка из главной базы не изменилась и приведена выше.

Выгрузка из периферийной базы 1 платформа 8.3.15.1565:

<v8de:Config xmlns:v8md="http://v8.1c.ru/metadata/2005/08">

<v8de:Version>216.0</v8de:Version>

<v8de:Digest1>00000000000000000000000000000000</v8de:Digest1>

<v8de:Digest2 Extensions="0000000000000000000000000000000000000000" v2="b4de455a6868c21ac38b1df13cb1e01f">2ddd865649c831a87a4853bdad69bb3f</v8de:Digest2>

</v8de:Config>

 

Вспомнив о том, что многим помогала операция загрузки файла конфигурации из периферийной базы в главную, проделал абсолютно идиотскую операцию: загрузил в главную базу файл конфигурации, который был из нее же выгружен (ведь этот файл был только что загружен в периферийную базу). При анализе файла выгрузки из главной базы я с удивлением увидел появившийся блок с метаданными, т.е. произошло реальное изменение метаданных конфигурации (могу только предположить, что это наслоения багов старых динамических обновлений).

 

 

Этот файл выгрузки был уже нормально принят моей периферийной базой, причем обновления конфигурации периферийной базы не потребовалось, блок метаданных был молча принят периферийной базой.

После этого двухсторонний обмен восстановился:

Выгрузка из главной базы платформа 8.3.15.1565:

<v8de:Config xmlns:v8md="http://v8.1c.ru/metadata/2005/08">

<v8de:Version>216.0</v8de:Version>

<v8de:Digest1>00000000000000000000000000000000</v8de:Digest1>

<v8de:Digest2 Extensions="0000000000000000000000000000000000000000" v2="b4de455a6868c21ac38b1df13cb1e01f">2ddd865649c831a87a4853bdad69bb3f</v8de:Digest2>

</v8de:Config>

 

Выгрузка из периферийной базы 1 платформа 8.3.15.1565:

<v8de:Config xmlns:v8md="http://v8.1c.ru/metadata/2005/08">

<v8de:Version>216.0</v8de:Version>

<v8de:Digest1>00000000000000000000000000000000</v8de:Digest1>

<v8de:Digest2 Extensions="0000000000000000000000000000000000000000" v2="b4de455a6868c21ac38b1df13cb1e01f">2ddd865649c831a87a4853bdad69bb3f</v8de:Digest2>

</v8de:Config>

 

При восстановлении обмена с другими периферийными базами ( с теми у которых один ключ совпадал) я сделал попытку избавиться от этапа загрузки конфигурации из файлов, решив, что это лишнее. К сожалению ничего не получилось. Очевидно, первоначальная идея, что в этом наборе файлов содержится информация, не попадающая в файл конфигурации cf оказалась верной. На просторах интернета предлагается для восстановления обмена в РИБ вносить изменения в конфигурацию, приводящие к реконфигурации базы данных. Реконфигурация, конечно, очень полезна, а иногда даже необходима при смене платформы, но в данном случае она оказалась абсолютно бесполезной, на генерацию ключей и восстановление обмена она никакого влияния не оказала, это было проверено.

Итак окончательная последовательность действий при возникновении ошибки обмена данными в РИБ при переходе на другую, более свежую платформу 1С следующая:

  1. Снимаем резервные копии всех баз данных
  2. Устанавливаем новую платформу и далее все манипуляции производим, загружая базы данных под новой платформой
  3. Из главной базы РИБ выгружаем файл конфигурации cf. Это у нас будет эталонный файл конфигурации.
  4. Из главной базы выгружаем файлы конфигурации. Так как в системе есть ограничения на длину наименования файлов, папку для выгрузки выбираем как можно с коротким именем (у меня было C:\1). Эта папочка тоже будет эталонной.
  5. Отвязываем периферийную базу от главной базы. Обработку не привожу, она тривиальна и содержит 5 строк кода. Кто не сможет написать на коленке, в интернете полно предложений по этому вопросу.
  6. В режиме конфигуратора в периферийную базу загружаются файлы конфигурации из главного узла (конфигурация - загрузить конфигурацию из файлов). Конфигурацию НЕ сохраняем, конфигурацию базы данных НЕ обновляем.
  7. Загружаем конфигурацию (cf файл) в периферийную базу (конфигурация - загрузить конфигурацию из файла).
  8. Сохраняем основную конфигурацию и обновляем конфигурацию базы данных периферийной базы данных.
  9. Привязываем периферийную базу к главной базе данных, предварительно закрыв конфигуратор.
  10. Повторяем пункты 5 - 9 для всех периферийных баз.
  11. Загружаем файл конфигурации главного узла в главный узел, ДА ВОТ ТАК ВОТ.
  12. Сохраняем основную конфигурацию и обновляем конфигурацию базы данных главной базы данных.

Далее, скрестив на всякий случай пальцы (с продуктами от 1С возможно все), пробуем сделать обмен в РИБ.

Конфигурация узла распределенной ИБ не соответствует ожидаемой РИБ Digest2 v2

См. также

SALE! 20%

Перенос данных из УПП 1.3 в ERP 2 / УТ 11 / КА 2. Переносятся документы, справочная информация и остатки

Обмен между базами 1C Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) в продаже с 2015 года, постоянно работаем над их развитием | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

45650 36520 руб.

04.08.2015    159688    363    267    

345

SALE! 15%

[ED3] Обмен для ERP 2.5, КА 2.5, УТ 11.5 БП 3.0, Розница, УНФ и других с EnterpriseData (универсальный формат обмена), правила обмена

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

25080 22572 руб.

12.06.2017    134938    723    291    

388

SALE! 20%

Перенос данных из ERP 2 / КА 2 / УТ 11 в БП 3.0. Переносятся документы, начальные остатки и справочники

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | В продаже с 2019г. | Воспользовались более 176 предприятий! | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой, обращайтесь!

34650 27720 руб.

15.04.2019    68418    178    138    

111

SALE! 20%

Перенос данных из ERP 2 / КА 2 в ЗУП 3. Переносятся остатки, документы и справочники

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Воспользовались более 79 предприятий! | Предлагаем приобрести готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | В продаже с 2020г. | Оперативно обновляем правила до актуальных релизов 1С | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

43450 34760 руб.

03.12.2020    34169    80    58    

78

SALE! 10%

Перенос данных из УТ 10.3 в УТ 11.5. Переносятся документы (обороты за период), справочная информация и остатки

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 1С:Управление торговлей 11 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.87.x) и УТ 11.5 (11.5.16.x).

28000 25200 руб.

23.07.2020    46301    196    64    

158

SALE! 10%

Перенос данных из БП 3.0 в УТ 11 / КА 2 / ERP 2. Переносятся начальные остатки, документы и справочники

Обмен между базами 1C Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

В продаже с 2014г. | Воспользовались более 122 предприятий! | Перенос данных из БП 3.0 в УТ 11 | из БП 3.0 в КА 2 | из БП 3.0 в ERP | Сэкономьте свое время - используйте готовое решение для перехода! | Постоянно работаем над развитием переноса данных | Обновляем на новые релизы 1С | Есть фильтр выгрузки по организациям | Переносятся начальные остатки на выбранную дату, документы за период времени и вся возможная справочная информация | Перенос сделан на технологии КД 2 (правила конвертации данных)

50722 45650 руб.

31.10.2014    231408    124    327    

296

Перенос данных из Парус 10 в ЗГУ ред.3

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    9208    9    8    

10

SALE! 10%

Перенос данных из УПП 1.3 в БП 3.0. Переносятся документы (обороты за период), справочная информация и остатки

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.223.x) и БП 3.0 (3.0.149.x). Правила подходят для версии ПРОФ и КОРП.

28000 25200 руб.

15.12.2021    20252    132    38    

90
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Senator_I 166 05.11.19 15:23 Сейчас в теме
Плюсанул из-за знакомой ситуации. Один месяц ну прям хронически было на базе.
2. rusmil 262 05.11.19 16:02 Сейчас в теме
Может это какая-то ошибка баг платформы? Не обращались в техническую поддержку 1С?
4. Kobra_RU 243 05.11.19 16:53 Сейчас в теме
(2) С самописной конфигурацией? на базе старой УТ 10.3? Вы определенно шутите... :))
3. jamirza 05.11.19 16:19 Сейчас в теме
Плюсанул за компанию с Кучмой.
5. petrov_2015 06.11.19 11:24 Сейчас в теме
Мы так же "влетели" с переводом дописанной УПП с 8.3.12.1685 на 8.3.13.1690. Помогла загрузка cf из периферийной в головную.
Спасибо за глубокое исследование Очень не типового случая и за краткие 12 пунктов "Что делать"!
adhocprog; Алексей_mir2mb; +2 Ответить
6. CERBER 20.11.19 01:50 Сейчас в теме
У меня сейчас как раз такая же ситуация.
Решил сервак обновить. Была версия платформы 8.3.9.2033, думаю, дай ка я обновлю ее до 8.3.15.1700.
Ну вот, напоролся на проблему, моя новая платформа не очень-то захотела дружить с PostgreSQL 9.5
Протрахался пол ночи, пока вспомнил, как под CentOS обновить 1С.
И утром меня ждал сюрприз.
После того как, зашли более 7-10 чел на сервак, база тупа стала подвисать на каждом тычке мыши в программе.
В итоге еще пол дня, что бы откатиться назад на платформу 8.3.9.2033
Но при этом, в одном магазине я успел обновить на компе клиента так же на 8.3.15.1700.

И вот из 11 РИБ узлов, этот как раз обновленный клиент не принимает файл выгрузки обмена.
Все ему не так.
А вот обратно обмен идет от клиента в ЦБ нормально.
База ЦБ затягивает файл как родной.

Спасибо за статью, буду пробовать ваши танцы с бубном.
7. CERBER 20.11.19 01:58 Сейчас в теме
Ха, прочитав, вашу статью, подумал, что бы ло бы неплохо, на клиентском компе в списке баз, для базы указать загрузку ее под платформой 8.3.9.2033.
И о боги, обмен завелся.
Я второй день голову ломаю, дайжесты в файле подмениваю, пытаюсь что-то сделать. Конфигурацию перезагружал в РИБ узел из центра.
Ничего не помогало.

Это жесть. Издевательство со стороны Москвы.

Не навижу, получать опыт через такие сложности. Опыт появился, а толку от него в жизни НОЛЬ.
В общем завелось.
Что будет, когда я все же обновлю везде платформу, пока не знаю.
Но однозначно, моя база Управление торговлей 10.3 к этому не готова.
8. ivanek 39 04.12.19 13:40 Сейчас в теме
9. ivanek 39 04.12.19 14:10 Сейчас в теме
В структуре БД 1с есть служебная таблица "Config" - где хранятся изменения конфигурации (когда нажимаем на кнопку применить изменения), по-видимому она принимает участие в расчете ключа, это объясняет пункт "11. Загружаем файл конфигурации главного узла в главный узел, ДА ВОТ ТАК ВОТ." Чтобы последние записи были идентичны в узлах.
Прикрепленные файлы:
10. Mr Roudyk 27.12.19 09:23 Сейчас в теме
Спасибо за статью! После двух дней танцев с бубном всё получилось именно по Вашей инструкции.
adhocprog; +1 Ответить
11. Sandmansss 24 18.06.20 11:08 Сейчас в теме
Спаситель!
Спасибо за рецепт! Две недели бился с обменами...
Оставьте свое сообщение