Выбрать курс
92  /  96

onAfterXmlParseParamsToProperties

функция-обработчик(
    object node,
    array &node_data
);

Обработчик события вызывается при обработке ноды объекта для XML импорта, если включена опция "Автоматически сопоставлять param со свойствами". Может возвращать false или массив значений с ключами NAME, VALUE, UNIT.

array(1) {
  [0]=>
  array(2) {
    ["NAME"]=>
    string(39) "Гарантия"
    ["VALUE"]=>
    string(1) "12 мес"
  }
}

Параметры

Параметр Описание
node нода
node_data массив значений ноды

Пример функции-обработчика

AddEventHandler("webprostor.import", "onAfterXmlParseParamsToProperties", Array("WebprostorImport", "ChangeImportParams"));
class WebprostorImport { public static function ChangeImportParams($node, &$node_data) { global $DEBUG_PLAN_ID; $param_array = false;
if(is_array($node_data["outlets"]["outlet"]) && count($node_data["outlets"]["outlet"])>0) { foreach($node_data["outlets"]["outlet"] as $c => $param) { $param_data = json_decode( json_encode( $node->outlets->outlet[$c]->attributes(), JSON_OBJECT_AS_ARRAY ), 1 ); if(isset($param_data["@attributes"]["warehouse_name"]) && isset($param)) { $param_array[] = Array( "NAME" => 'Остатки '.$param_data["@attributes"]["warehouse_name"], "VALUE" => $param_data["@attributes"]["instock"], ); } } } $node_data["param_array"] = $param_array; //начиная с версии модуля 3.3.0 return $param_array; //до версии 3.3.0 } }

Начиная с версии модуля 3.3.0 не обязательно в функции обработчике возвращать переменную $param_array, можно сразу переназначить значение $node_data["param_array"]

Прежде, чем обращаться в техподдержку, обязательно сделайте следующее:
  1. Версия PHP должна быть не ниже 8.2.
  2. У вас должна быть активная лицензия 1С-Битрикс.
  3. На сайте должны быть установлены последние стабильные обновления для всех модулей 1С-Битрикс!
  4. Проверьте свой сайт на наличие ошибок "Настройки / Инструменты / Проверка системы". Все тесты должны быть пройдены успешно!
  5. Проведите проверку "Настройки / Производительность / Панель производительности". Производительность сайта должна соответствовать эталону 30 или больше. Не должно быть ошибок.
  6. Выполните проверку с помощью сканера безопасности. Не должно быть критических угроз.
  7. Работа агентов должна быть переведена на cron, если в решении используются агенты.
  8. Должна быть установлена последняя стабильная версия модуля.
  9. Изучите имеющуюся инструкцию к решению.
Для бесплатных решений:
  1. Поддержать разработку бесплатных решений.
  2. Предложения по улучшениям можете оставить в отзывах или обсуждении к решению.
  3. На сайтах пользователей, проверка работы модулей не осуществляется.
Для платных решений:
  1. Техподдержка https://sp.webprostor.ru/tickets/
  2. У вас должна быть активная лицензия на платное решение.
Внедрение платных решений:
  1. Для установки и настройки приобретенных решений (купон должен быть уже активирован) необходимо предоставить данные от сайта (Админ-панель, FTP) в службу техподдержки на странице https://sp.webprostor.ru/tickets/
  2. Предоставьте краткое техническое задание, как именно вы хотите использовать выбранное решение.
  3. Стоимость внедрения зависит от затраченного времени. Действующий тариф вы можете уточнить у сотрудников. Минимальное учитываемое время - 1 час.
Установка готовых сайтов:
  1. Стоимость установки и первоначальной настройки готового сайта - бесплатно.
  2. Стоимость наполнения сайта текстовой и графической информацией, не входящей в перечень настраиваемых на этапе установки параметров - рассчитывается отдельно.
  3. Для установки и настройки приобретенных решений (купон должен быть уже активирован) необходимо предоставить данные от сайта (Админ-панель, FTP) в службу техподдержки на странице https://sp.webprostor.ru/tickets/
  4. Предоставьте контактную информацию о вашей фирме и материалы брендбука.