Пользователь пока ничего не рассказал о себе

Наибольший вклад в теги

Все теги (17)

Лучшие ответы пользователя

Все ответы (9)
  • Как в компоненте bitrix "Список заказов" (bitrix.sale.personal.order.list) выводить сразу и активные заказы и заказы, которые уже выполнены?

    @po4emu4ka2020 Автор вопроса
    Айнур Валиев, Il'ia Kartovitskii, как оказалось, кастомизировать компонент для моей задачи НЕ нужно.

    У него уже все зашито: и показ всех заказов сразу, и навигация.
    Оставалось только правильно это использовать.

    Если кратко, то для вывода сразу всех заказов нужно использовать перед вызовом компонента указания параметра запроса:
    $_REQUEST['show_all'] = "Y";

    С навигацией тоже все относительно просто. Можно указать шаблон навигации в параметрах вызова, только указывается параметр "NAV_TEMPLATE", а не "PAGER_TEMPLATE", как у других компонентов.

    И в самом шаблоне навигация выводится не с помощью объекта $arResult['NAV_RESULT'], а с помощью обычного вывода переменной, содержащей пагинацию echo($arResult['NAV_STRING']);
    Ответ написан
    Комментировать
  • Как изменить коэффициент единицы измерения у товара в обработчике события OnAfterIBlockElementUpdate?

    @po4emu4ka2020 Автор вопроса
    Как я предполагал, результат действия обработчика события OnAfterIBlockElementUpdate затирается.
    В итоге, решением стал обработчик события изменения цены OnPriceUpdate (так как это событие срабатывает в самом конце).

    AddEventHandler("catalog", "OnPriceUpdate", "HandlerOnPriceUpdate");
    function HandlerOnPriceUpdate($ID,&$arFields)
    {
        $element = $arFields['PRODUCT_ID'];    //ID товара
        $iblockId = 4;
        $coeff= 100; //например
            $curElementRatio = CCatalogMeasureRatio::getList(
            Array(),
            array('IBLOCK_ID' => $iblockId, 'PRODUCT_ID' => $element ),
            false, false);
    
        while ($arRatio = $curElementRatio->GetNext()) {
            $ratioId = $arRatio['ID'];
            $arFieldsNew = Array(
                'RATIO' => $coeff,
            );
    
            CCatalogMeasureRatio::update($ratioId, $arFieldsNew);
        }
    }
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (48)