Обмен заказами с сайтом Bitrix

Ситуевина:
Было решение из которого был создан каталог товаров на сайте.
Позже было принято решение перейти на УТ 11. Переход был через мастер импорта товаров с сайта. Успешно.
Товары выгружаются, все отл! Но заказы через модуль сайта не идут — xml не распознан, типа сайт старый.
Сделали загрузку заказов через встроенный модуль обмена с сайтом. Заказы пришли, но вот товары из заказа на сайте пропали.
Дело оказалось в том, что при обмене заказами из 1С идут другие xml_id. а почему??! и как исправить??? никто не в курсе?

Ответы были одни: удали и сделай все с чистого листа. Но что-то не хотелось еще пол дня грузить товары, но и результат был бы тот же, т.к. у 1с и модуля обмена битрикс ид товара могут быть разными.

Решением стало изменение функции ПолучитьУникальныйИдентификаторОбъекта модуля ОбменССайтомПовтИсп

Функция ПолучитьУникальныйИдентификаторОбъекта(Объект, Характеристика = Неопределено) Экспорт 
//Ид = Строка(Объект.УникальныйИдентификатор()); 
Ид = Строка(Объект.Б_Идентификатор); 
Если ТипЗнч(Объект) = Тип("СправочникСсылка.Номенклатура" И (НЕ Объект.ЭтоГруппа) И (НЕ Объект.ВидНоменклатуры.ИспользованиеХарактеристик = Перечисления.ВариантыИспользованияХарактеристикНоменклатуры.НеИспользовать) И ЗначениеЗаполнено(Характеристика) Тогда 
Ид = Ид + "#" + Строка(Характеристика.УникальныйИдентификатор()); 
КонецЕсли; 
Возврат Ид; 
КонецФункции

И все! Товары синхронятся великолепно в заказах!
П.С. критикам — характеристики не используются.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *