Еще раз про импорт каталога из 1С-Битрикс в 1С Предприятие и обратно

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

Итак,
1) В ситуации, когда источником данных о номенклатуре являлся сайт мы оказывались не единожды, и ни разу не было такого, чтобы у товаров на сайте не было каких-то XML_ID Обычно клиенты забивают товары на сайт не вручную, а пользуясь различными импортами, в следствии которых XML_ID – рождается. Так вот, прежде чем импортировать каталог в 1С необходимо убедиться, что все XML_ID товаров и разделов на сайте – уникальны. То есть, если есть раздел с XML_ID, к примеру, “121”, то товара с XML_ID “121” уже быть не должно, потому что, когда они придут на сторону 1С – они будут записываться в справочник, а элемент справочника отличается от группы справочника только флажком, и вот такая неуникальность среди кодов разделов и товаров потом приводит к куче скрытых багов – обмен может не ругнуться.

2) Если мы используем стандартную обработку “Помощник импорта…”, нужно помнить, что если не дай бог, в первый раз номенклатура загрузится как-то не так, то нам ее придется помечать на удаление и удалять перед следующим запуском обработки – что может оказаться на большой базе жутким геморроем, Поэтому сначала нужно пробовать на 1м разделе или на небольшом участке (для этого кастомайзим сторону сайта – об этом в моем предыдущем посте есть). Или дописываем сами апдейт в функции
НайтиСоздатьНоменклатуру на стороне 1С

Например, так:

Иначе
  Номенклатура=НоменклатураСсылка.ПолучитьОбъект();
  УстановитьРодителя(Номенклатура, СтрокаТовара.Группы);
  Номенклатура.Записать();
КонецЕсли;
КонецПроцедуры;

3) Успешно загрузили номенклатуру с сайта в 1С? Радоваться рано. Можно сгенерировать прикольный баг, когда обратный импорт на сайт потрет вам картинки на сайте. Для этого нужно создать узел полного обмена товарами и сделать полную выгрузку сначала в тестовый инфоблок на сайте, обрадоваться, что все хорошо пришло, скопировать его внешний код во внешний код рабочего инфоблока, снести тестовый и снова выполнить полный обмен. Вуаля – картинок нет. Примерно такая последовательность. А чтобы такого не случилось, при первом импорте в рабочий инфоблок нужно делать принудительную полную выгрузку.

Об авторе:

Инженер-программист по образованию, web-программист по призванию, Битрикс-программист по любви и 1с-программист по стечению обстоятельств, руководитель команды web-разработчиков, внедренец 1С-Битрикс и Битрикс24, основатель одноименной студии.

bedrosova3

Подпишитесь на рассылку!

Fields marked with an * are required

Комментарии

 

Комментировать

 

Подписаться на рассылку:

Fields marked with an * are required