1

Тема: Расширение функционала обмена данными с 1С

В данной реализации невозможно расширить функционал обмена данными с 1с. Для того чтобы добавить новые данные нестандартные в интернет магазин (например артикул производителя, или еще какие то кастомные поля из 1с) - необходимо либо сделать оверрайд xxx.my.inc.php, либо написать свой модуль на основе стандартного. Какого то способа повесить например загрузку дополнительного поля 1с (ветки xml файла) на какое то событие нет (((((

2

Re: Расширение функционала обмена данными с 1С

Ну почему же. На данный момент это не документировано, но в системе есть событие exchange.catalogproduct.after. Оно срабатывает сразу после импорта одного товара. В аргументе Можно поймать массив.

/**
* Расширяет импорт товара при обмене с 1С
* @param array $data - массив данных
*/
public static function exchange.catalogproduct.after($data)
{
    /**
    * @var \Catalog\Model\Orm\Product $product
    */
    $product  = $data['product'];
    /**
    * @var \Exchange\Model\Importers\Catalog\Product $importer
    */ 
    $importer = $data['importer'];
    var_dump($importer->getSimpleXML()->Наименование);
} 

getSimpleXML - возвращает SimleXML одного товара

3

Re: Расширение функционала обмена данными с 1С

Спасибо, будем пытаться внедрять.