УТ 10.0.58.2 и БП 3.0.75.70. Обе базы проверены, ошибок нет. Обмен работает давно, после обновления появилась ошибка. При загрузке любых данных выходит ошибка:
При загрузке сообщения обмена возникли ошибки: Недопустимое значение параметра (параметр номер '1')
{Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(8160)}: СсылкаНаОбъект = СтруктураСвойств.Менеджер.ПолучитьСсылку(Новый УникальныйИдентификатор(СвойствоУникальныйИдентификатор));
Отладчиком нашел ошибку. Передается пустой параметр СвойствоУникальныйИдентификатор , а значение НайденоСоответствиеОбъекта ИСТИНА. Не получается исправить ошибку.
В 75.70 явно что то намудрили, у меня отраслевая УТ10.5.2.17 с БП 3.0.75.70 рухнул обмен.
"ОписаниеОшибки = Слишком много фактических параметров."
Ругается на КД давно созданные.
Специально загрузил эти данные в копию БП с релизом 74.76 - все без проблем.
Пока надежды на свежий релиз БП.
Та же ошибка появилась после обновления бухгалтерии 3.0 на новый релиз и платформу!
Начал копать и выяснил что база БУХ 3.0 в момент синхронизации с другой базой при поиске объекта по ссылке GUID обращается в первую очередь у себя к регистру сведений "Соответствия объектов информационных баз" и ищет GUID объекта из базы источника в колонке "Уникальный идентификатор источника строкой"
Если там будет пусто появится та самая ошибка о несоответствии параметров!
Как решил проблему - восстановил регистр сведений из бекапа БУХ3.0 до обновления (там колонка "Уникальный идентификатор источника строкой" была еще заполнена).
На сколько я понял данный регистр сведений служит для предотвращения создания дублей при синхронизации. Например если в двух базах создали два одинаковых контрагента с разными GUID ссылками но одинаковым наименованием. При синхронизации с БУХ 3.0 такой контрагент попадёт в список предупреждений и если пользователь подтвердит что это дубль то далее этот контрагент будет занесен в регистр "Соответствия объектов информационных баз".
Теоретически данный регистр можно вообще очистить и данная ошибка тоже пропадёт, но потом при синхронизации придётся пройти процедуру сопоставления похожих объектов.
Почему колонка "Уникальный идентификатор источника строкой" очистилась единственное что понять не могу
//Выгрузка
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| СоответствияОбъектовИнформационныхБаз.УникальныйИдентификаторПриемника КАК УникальныйИдентификаторПриемника,
| СоответствияОбъектовИнформационныхБаз.УникальныйИдентификаторИсточника КАК УникальныйИдентификаторИсточника,
| СоответствияОбъектовИнформационныхБаз.ТипПриемника КАК ТипПриемника,
| СоответствияОбъектовИнформационныхБаз.ТипИсточника КАК ТипИсточника,
| СоответствияОбъектовИнформационныхБаз.УзелИнформационнойБазы КАК УзелИнформационнойБазы,
| СоответствияОбъектовИнформационныхБаз.УникальныйИдентификаторИсточникаСтрокой КАК УникальныйИдентификаторИсточникаСтрокой,
| СоответствияОбъектовИнформационныхБаз.ОбъектВыгруженПоСсылке КАК ОбъектВыгруженПоСсылке
|ИЗ
| РегистрСведений.СоответствияОбъектовИнформационныхБаз КАК СоответствияОбъектовИнформационныхБаз";
Запрос.УстановитьПараметр("", );
Результат = Запрос.Выполнить().Выгрузить();
ЗначениеВФайл("C:\!\Рег",Результат);
//Загрузка
НаборЗаписей = РегистрыСведений.СоответствияОбъектовИнформационныхБаз.СоздатьНаборЗаписей(); // ИмяРегистра например "УчетнаяПолитика", "ЦеныНоменклатуры" и т.д
НаборЗаписей.Записать();
ТЗ_Значений = ЗначениеИзФайла("C:\!\Рег"); //загрузить
i=0;
Для Каждого Стр Из ТЗ_Значений Цикл
ТекЗапись = РегистрыСведений.СоответствияОбъектовИнформационныхБаз.СоздатьМенеджерЗаписи();
ЗаполнитьЗначенияСвойств(ТекЗапись,Стр);
ТекЗапись.Записать();
i=i+1;
Состояние(""+i+"/"+ТЗ_Значений.Количество());
КонецЦикла;