я понимаю до сих пор габариты товара не передаются из 1С в Битрикс ?
// установка параметров геометрии товара в торговом каталоге static public function setGeometry($ID, $params) { global $DB; $sql = 'SELECT ID FROM b_catalog_product WHERE ID="' . (int)$ID . '"'; $res = $DB->Query($sql); $sql = ''; if ($res->SelectedRowsCount() == 1) { // update $sql = 'UPDATE b_catalog_product SET WIDTH="' . (float)$params[2] . '", HEIGHT="' . (float)$params[3] . '", LENGTH="' . (float)$params[1] . '", WEIGHT="' . (float)$params[0] . '" WHERE ID="' . $ID . '"'; } if ($sql) { if ($DB->Query($sql)) { } } } // Обновление параметров геометрии товара из свойств в тороговый каталог static public function updateGeometry($ID) { $res = CIBlockElement::GetList(false, ['IBLOCK_ID' => 11, 'ID' => $ID], 0, 0, ['ID', 'PROPERTY_VES', 'PROPERTY_DLINA', 'PROPERTY_SHIRINA', 'PROPERTY_VYSOTA',]); $row = $res->GetNext(); $res = CIBlockElement::GetList(false, ['IBLOCK_ID' => 12, 'PROPERTY_CML2_LINK' => $row['ID']]); if ($res->SelectedRowsCount() > 0) { // offers while ($offer = $res->GetNext()) { self::setGeometry($offer['ID'], [$row['PROPERTY_VES_VALUE'], $row['PROPERTY_DLINA_VALUE'], $row['PROPERTY_SHIRINA_VALUE'], $row['PROPERTY_VYSOTA_VALUE']]); } self::setGeometry($row['ID'], [$row['PROPERTY_VES_VALUE'], $row['PROPERTY_DLINA_VALUE'], $row['PROPERTY_SHIRINA_VALUE'], $row['PROPERTY_VYSOTA_VALUE']]); } else { // product self::setGeometry($row['ID'], [$row['PROPERTY_VES_VALUE'], $row['PROPERTY_DLINA_VALUE'], $row['PROPERTY_SHIRINA_VALUE'], $row['PROPERTY_VYSOTA_VALUE']]); } }
Обсуждают сегодня