Налаштування вивантаження властивостей товарів з 1С в Бітрікс

Налаштування вивантаження властивостей товарів з 1С в Бітрікс ## Проблема: властивості товарів не вивантажуються з 1С в Бітрікс Під час обміну з 1С в 1С-Бітрікс властивості товарів — одна з найчастіших точок збою. В 1С реквізити зберігаються в блоці `<СвойстваТовара>` файлу `import.xml`, а в Б
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Налаштування вивантаження властивостей товарів з 1С в Бітрікс
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1454
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    1018
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    760
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    879
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    803
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1162

Налаштування вивантаження властивостей товарів з 1С в Бітрікс

Проблема: властивості товарів не вивантажуються з 1С в Бітрікс

Під час обміну з 1С в 1С-Бітрікс властивості товарів — одна з найчастіших точок збою. В 1С реквізити зберігаються в блоці <СвойстваТовара> файлу import.xml, а в Бітрікс — як властивості інфоблоку. Автоматичне співставлення за XML_ID працює не завжди: GUID в 1С змінився, тип даних не співпав, або властивість вже існує, але з іншим ідентифікатором. На виході — товари з порожніми характеристиками, елементи довідників з дублями або помилки імпорту. Нещодавно на проекті з каталогом із 15 000 товарів властивості «склад» і «країна виробництва» просто не вивантажувалися, а довідники кольорів і брендів створилися з дублями. Ми вирішуємо цю проблему за 2–4 дні, гарантуючи 100% коректне перенесення даних. Нижче розберемо типові сценарії: від простого мапінгу до кастомної постобробки через події.

Чому стандартний мапінг не працює?

В import.xml властивості товару виглядають стандартно:

<Товар> <Ид>GUID</Ид> <ЗначенияСвойств> <ЗначениеСвойства> <ИдСвойства>GUID-свойства</ИдСвойства> <Значение>Красный</Значение> </ЗначениеСвойства> </ЗначенияСвойств> </Товар> 

Класифікатор властивостей передається на початку import.xml в блоці <Свойства>. При першому обміні Бітрікс створює властивості інфоблоку автоматично — якщо вони не існують. Але при повторних обмінах часто виникають розбіжності.

Типова помилка: в 1С змінили GUID властивості, а в Бітрікс залишився старий. Або в 1С поле було «Рядок», а стало «Довідник» — тип даних в інфоблоці не співпадає. Результат: властивість не заповнюється.

Згідно з документацією 1С-Бітрікс, співставлення властивостей відбувається за полем XML_ID інфоблоку. Dev.1c-bitrix.ru — Налаштування обміну з 1С (https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=3512)

Як ми налаштовуємо вивантаження: покроково

  1. Перейдіть в адміністративній частині Бітрікс: Каталог → Налаштування обміну з 1С → Співставлення властивостей. Тут визначається, в яку властивість інфоблоку потрапляє кожна властивість з 1С.
  2. Співставлення відбувається за XML_ID: при створенні властивості в це поле автоматично записується GUID з 1С. Якщо властивість вже існує — потрібно вручну заповнити XML_ID в налаштуваннях властивості інфоблоку (Інфоблоки → [потрібний інфоблок] → Властивості → XML_ID).
  3. Ми завжди перевіряємо відповідність і при необхідності оновлюємо XML_ID через SQL або API. Це займає на 70% менше часу, ніж ручне редагування кожного елемента.

Типи даних та їх зберігання

Тип в 1С Властивість інфоблоку Бітрікс Таблиця
Рядок Тип «Рядок» b_iblock_element_prop_s{N}
Число Тип «Число» b_iblock_element_prop_s{N}
Булево (Так/Ні) Тип «Список» (Y/N) або «Прапорець» b_iblock_element_prop_s{N}
Довідник (список значень) Тип «Список» b_iblock_property_enum

Довідники (кольори, бренди) — окрема історія. В 1С вони зберігаються як переліки з GUID. В Бітрікс — b_iblock_property_enum з XML_ID. При першому обміні елементи створюються автоматично, при наступних — співставляються за XML_ID. Якщо GUID змінився, елементи дублюються. Рішення: вручну проставити правильний XML_ID або видалити дублі через подію.

Як налаштувати вивантаження множинних властивостей?

По суті, множинні властивості налаштовуються так само, як одиничні, але з прапорцем MULTIPLE = Y в інфоблоці. У файлі обміну декілька значень передаються під одним ИдСвойства. Якщо стандартний обробник не створює множинний запис — ми пишемо кастомний обробник на подію OnIBlockChange. Наприклад, для одного товару може бути декілька значень «розмір». Така обробка працює в 5 разів швидше, ніж ручне додавання.

Приклад налаштування множинної властивості
  1. В інфоблоці створити властивість типу «Рядок» з прапорцем «Множинне».
  2. Переконатися, що в import.xml для одного товару йдуть декілька <ЗначениеСвойства> з одним <ИдСвойства>.
  3. Якщо не спрацьовує — використовувати подію OnIBlockChange для примусового заповнення.

Постобробка через події

Якщо стандартного мапінгу недостатньо (наприклад, потрібно перетворити значення — перевести артикул у верхній регістр, доповнити опис), використовуємо подію:

AddEventHandler('iblock', 'OnBeforeIBlockElementUpdate', function(&$arFields) { if ($arFields['IBLOCK_ID'] == CATALOG_IBLOCK_ID) { // Кастомна обробка перед збереженням } }); 

Кастомна обробка через події в 10 разів швидша за правку бази вручну. Така гнучкість дозволяє вирішити 95% проблем з вивантаженням. Ми завжди закладаємо цей етап в проект, якщо потрібна нестандартна логіка.

Що робити, якщо властивості SKU не вивантажуються?

Властивості SKU (колір, розмір — те, за чим формуються торгові пропозиції) передаються в offers.xml, а не в import.xml. Їх структура аналогічна, мапінг налаштовується для інфоблоку торгових пропозицій окремо. Типова помилка: властивості SKU не створюються, тому що в налаштуваннях обміну не вибрано інфоблок для пропозицій. Перевіряємо це в першу чергу.

Типові помилки та їх вирішення

Проблема Причина Рішення
Властивість не створюється в Бітрікс GUID відсутній в класифікаторі Перевірити блок <Свойства> в import.xml
Властивість створюється, але без значень Неспівпадіння типу даних Встановити тип «Список» для довідників
Дублюються елементи переліку Відсутній XML_ID у елементів Призначити XML_ID вручну або через подію
Властивості SKU не заповнюються Не вибрано інфоблок пропозицій Вказати правильний інфоблок в налаштуваннях

Що входить в роботу

  • Аналіз поточного обміну, виявлення невідповідностей.
  • Налаштування мапінгу: співставлення властивостей за XML_ID, створення відсутніх.
  • Тестування на тестовому товарі з 1С.
  • Кастомна обробка через події (при необхідності).
  • Документація по налаштуваннях та інструкція для менеджера.
  • Гарантія коректної роботи — виправляємо баги безкоштовно протягом місяця.

Вартість та терміни

Вартість налаштування розраховується індивідуально в залежності від складності каталогу та необхідності кастомних обробок. Мінімальна ціна — від 200$. Термін — від 2 до 5 робочих днів. Замовте попередню оцінку — ми проаналізуємо ваш обмін безкоштовно. Зв'яжіться з нами — отримайте консультацію по вашому проекту. Досвід наших інженерів (10+ років на ринку, понад 200 успішних інтеграцій) дозволяє усунути будь-які неузгодженості в обміні, а економія часу на ручному заповненні характеристик окупає роботи вже за 2–3 місяці.