retailcrm / opencart-module

OpenCart integration plugin
http://www.retailcrm.pro
MIT License
22 stars 43 forks source link

Передача артикула #72

Closed aleksandrx closed 6 years ago

aleksandrx commented 6 years ago

Добрый день, подскажите пожалуйста, почему при создании заказа не передается артикул заказанного товара в crm и не синхронизируется товар с каталогом в crm? Спасибо

iyzoer commented 6 years ago

Артикул выгружается в icml каталоге, он вместе с заказом не передается, товар привязывается по externalId. Проверьте, что генерация каталога и его выгрузка произведены корректно.

aleksandrx commented 6 years ago

Не правильно спросил. У меня каталог выгружается из другого файла. Как можно сделать, чтобы при создании заказа на сайте в crm товары в заказе были найдены? Это можно сделать, если добавить артикул товара? Crm определит товар в каталоге? Спасибо)

iyzoer commented 6 years ago

Привязка товара в RetailCRM происходит по внешнему или внутреннему идентификатору, либо по xmlId. Вы можете записывать артикул товара в RetailCRM как xmlId, и в коде модуля сделать доработку для передачи артикула в поле xmlId.

aleksandrx commented 6 years ago

Не подскажите, с чего начать? externalId нужно заменить на xmlId? Или можно оставить два параметра? И в каком файле код отвечает за передачу данных о заказе? Спасибо)

iyzoer commented 6 years ago

Здесь можно оставить два параметра. В этом файле доработать аналогично. Информация по кастомизации модуля здесь

aleksandrx commented 6 years ago

Добавил 'xmlId' => $product['sku'],

Но появляется ошибка: PHP Notice: Undefined index: sku in

iyzoer commented 6 years ago

У товара в заказе нет информации об артикуле. Вам нужно получать артикул другим способом.

iyzoer commented 6 years ago

Проверьте корректность передачи данных и убедитесь, что в RetailCRM в каталоге у товаров присутствуют корректные xmlId.

aleksandrx commented 6 years ago

Да, точно. в RetailCRM в каталоге у товаров не было xmlId. Добавил и все заработало. Спасибо)

aleksandrx commented 6 years ago

Обнаружил, что в строке 105: $offerOptions = array('select', 'radio'); файла icml.php не было checkbox в списке. Поэтому не формировались предложения по размерам. Зря потратил два дня на изобретение велосипеда.