Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

как работать с ценами

00 голосов
2
как работать с классами добавления цен в битриксе?
по инструкции не работает(добавление и изменение цены).
спросил 01 Май, 14 от Amentet (2,080 баллов)

2 Ответы

00 голосов
Согласно документации. Покажите код, который не работает и результат. И, кстати, инфоблок является торговым каталогом?
ответил 23 Дек, 14 от Pomnep (13,960 баллов)
00 голосов
инфоблок является торговым каталогом

вот код


Код
AddEventHandler("iblock", "OnAfterIBlockElementUpdate", Array("MyClass2", "OnAfterIBlockElementUpdateHandler"));

class MyClass2
{
    // создаем обработчик события "OnAfterIBlockElementUpdate"
    function OnAfterIBlockElementUpdateHandler(&$arFields)
    {
     if (intval($arFields["IBLOCK_ID"]) == 49)
     {

if (CModule::IncludeModule("catalog")
   && CCatalog::GetByID($arFields["IBLOCK_ID"]) && CModule::IncludeModule("iblock") && CModule::IncludeModule("sale"))
{
$db_props = CIBlockElement::GetProperty(49, intval($arFields["ID"]), array("sort" => "asc"), Array("CODE"=>"DISCOUNT"));
if($ar_props = $db_props->Fetch())
     $DISCOUNT = intval($ar_props["VALUE"]);

$db_res = CPrice::GetList(
     array(),
     array(
          "PRODUCT_ID" => intval($arFields["ID"]),
          "CATALOG_GROUP_ID" => 9,
      )
    );
if ($ar_res2 = $db_res->Fetch())
{
    $price=intval($ar_res2["PRICE"]);
}

$price_new=$price-$price*$DISCOUNT/100;

ответил 12 Апр, 15 от Amentet (2,080 баллов)

Похожие вопросы

0 голосов
4 ответов
спросил 13 Янв, 14 от Snezhka (2,240 баллов)
0 голосов
1 ответ
спросил 31 Окт, 13 от Nemesida (240 баллов)
0 голосов
4 ответов
0 голосов
4 ответов