После создания элемента добавить привязку

После создания элемента добавить привязку

Для создания события регистрируем обработчик привязки в файле init.php. Скачать пример

AddEventHandler("iblock", "OnAfterIBlockElementAdd", Array("MyClass", "OnAfterIBlockElementAddHandler"));
class MyClass
{

    // создаем обработчик события "OnAfterIBlockElementAdd"

    function OnAfterIBlockElementAddHandler(&$arFields)
    {
     if($arFields["ID"]>0) { 

//AddMessage2Log("Запись с кодом ".$arFields["ID"]." добавлена.");


           If($arFields['IBLOCK_ID'] == 5) {

//инфоблок заявок


//получаем ID привязки


$lot_id=$arFields['PROPERTY_VALUES'];

 //AddMessage2Log($lot_id['54']);


//принтуем получаемый массив $lot_id в котором и будет понятен ключ ['54'] и его содержимое;


CModule::IncludeModule('iblock');
$ELEMENT_ID = $arFields["ID"];

  // код элемента


$IBLOCK_ID=5;
$PROPERTY_CODE = "LOT";

  // код свойства


$PROPERTY_VALUE = $lot_id['54'];

  // заносим ID привязки к лоту


// Установим новое значение для данного свойства данного элемента


  CIBlockElement::SetPropertyValues($ELEMENT_ID, $IBLOCK_ID, $PROPERTY_VALUE, $PROPERTY_CODE);

//получаем ID лота


  $ELEMENT_ID_LOT = $lot_id['54'];

  // ID лота


$IBLOCK_ID_LOT =4;

// ID инфолока лотов куда привязываем


$PROPERTY_CODE_LOT  = "TENDER";

  // код свойства


$PROPERTY_VALUE_LOT  = $arFields["ID"];

  // заносим ID заявки


// Установим новое значение для данного свойства данного элемента


  CIBlockElement::SetPropertyValues($ELEMENT_ID_LOT, $IBLOCK_ID_LOT, $PROPERTY_VALUE_LOT, $PROPERTY_CODE_LOT);
}
}
    }
}

Ещё статьи:

12.10.2020 Три золотых правила перед обновлением битрикс
Довольно часто банальное обновление приводит к ошибкам и потере работоспособности сайта битрикс. Чтобы потом не тратить своё время и нервы следует соблюдать три простых правила: 1. проверка системы, исправление ошибок, Оптимизация и проверка таблиц бд ID: 308

09.10.2020 Операторы сравнения для getList
Полный список операторов сравнения, которые можно использовать в выборке getList в так называемом фильтре ID: 306

22.09.2020 Отладка ошибок битрикс модулей
Часто не понятно с чем связана ошибка модуля и каких ему в реальности не хватает входных параметров, так как в документации об этом может быть не сказано.
Для этого есть два способа. ID: 256

© 2015-2020 Web админ
Связаться по WhatsApp