В 1С основной склад разбит на несколько мелких
на сайт надо вывести один склад и остатки на нем сумма всех мелких складов
в init.php добавил объединение складов
со всех складов все остатки переложить на склад 1
Но где то ошибка. В логах пишет что поменял остаток. А по факту заходишь в карточку товара - остаток не изменен
на сайт надо вывести один склад и остатки на нем сумма всех мелких складов
в init.php добавил объединение складов
со всех складов все остатки переложить на склад 1
Код |
---|
// Склады---------------------------------- $elementID = $ELEMENT_ID; $storeRes = CCatalogStoreProduct::GetList( array("SORT" => "ASC"), # сортировка array("PRODUCT_ID" => $elementID), # отбор по фильтру false, # группировка по полям false, # параметры выборки array("*") # поля для выборки ); $sklad=0; //Сюда будем суммировать остатки while($arStoreParam = $storeRes->Fetch()) { switch ($arStoreParam["STORE_ID"]) //перебираем склады которые надо объединить { CASE 68: CASE 69: CASE 70: CASE 71: CASE 72: CASE 73: CASE 74: CASE 75: CASE 76: CASE 77: CASE 78: CASE 79: CASE 80: CASE 82: $sklad += $arStoreParam["AMOUNT"]; break; } } if ($sklad >0) // Если остатки есть, то записываем их в склад №1 { $arFields = Array( "PRODUCT_ID" => $ELEMENT_ID, "STORE_ID" => 1, "AMOUNT" => $sklad, ); $ID=CCatalogStoreProduct::Update(1, $arFields); if ($ID != false) { echo "Эл ".$ELEMENT_ID." С - ".$ID." кол = ".$sklad; // выводим в лог для контроля } } //------------------------------------- |
Но где то ошибка. В логах пишет что поменял остаток. А по факту заходишь в карточку товара - остаток не изменен