Пример обновление коэффициентов MeasureRatio

Пример обновление коэффициентов MeasureRatio

Просмотров: 628
Пример обновления коэффициентов (скачать) в одном проекте

$eventManager->addEventHandler("catalog", "\Bitrix\Catalog\MeasureRatio::OnBeforeUpdate", function (\Bitrix\Main\Event $event) {
    $result = new \Bitrix\Main\Entity\EventResult;
    $data = $event->getParameter("fields");
    $arSelect = Array("ID","IBLOCK_ID", "PROPERTY_KOEFFITSIENT_FASOVKI");
    $arFilter = Array("ID" => $data["PRODUCT_ID"]);
    $res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>50), $arSelect);
    while($ob = $res->GetNextElement())
    {
        $arFields = $ob->GetProperties();
    }
    if ($arFields['KOEFFITSIENT_FASOVKI']['VALUE'] == '0' || empty($arFields['KOEFFITSIENT_FASOVKI']['VALUE'])) {
        $result->modifyFields(array('RATIO' => 1));
        AddMessage2Log('Ноль или пусто  -  Товар ' . $data["PRODUCT_ID"]);
    } else {
        $true_coef = str_replace(',','.',$arFields['KOEFFITSIENT_FASOVKI']['VALUE']);
        $result->modifyFields(array('RATIO' => $true_coef));
        AddMessage2Log($true_coef . ' Товар ' . $data["PRODUCT_ID"]);
    }
    return $result;
});
#MeasureRatio

Ещё статьи:

24.06.2025 Не работает поле Местоположение
Не работает поле "Местоположение" в стандартном оформлении заказа.
При оформлении заказа отсутствует поле Местоположение, не выводится и нет возможности его заполнить, хотя по отдельности компонент местоположения работает ID: 630

24.06.2025 Аспро приколы с версиями 2.0, 3.0 и т.д.
Интересный бизнес лайфхак от Аспро, продаёшь клиенту шаблон, потом через несколько лет вместо поддержки и обновления делаешь новый шаблон с названием 2.0 или 3.0, и продаёшь это клиенту снова вместо обновления за 90к рублей. ID: 629

20.06.2025 Ошибки отправки письма SUCCESS_EXEC
Найдите событие заполнения формы, смотрите в поле SUCCESS_EXEC: ID: 628

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