• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/v2/BaseIblockElementRepository.php
  • Класс: BitrixCatalogv2BaseIblockElementRepository
  • Вызов: BaseIblockElementRepository::updateInternal
protected function updateInternal(int $id, array $fields): Result
{
	$result = new Result();

	$elementFields = $this->prepareElementFields($fields);

	if (!empty($elementFields))
	{
		$element = new CIBlockElement();
		$res = $element->update($id, $elementFields);

		if (!$res)
		{
			$result->addError(new Error($element->LAST_ERROR));
		}
	}

	if ($result->isSuccess())
	{
		$productFields = $this->prepareProductFields($fields);

		if (!empty($productFields))
		{
			$res = Product::update($id, $productFields);

			if (!$res->isSuccess())
			{
				$result->addErrors($res->getErrors());
			}
		}
	}

	return $result;
}