• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/reservequantitycollection.php
  • Класс: BitrixSaleReserveQuantityCollection
  • Вызов: ReserveQuantityCollection::save
public function save()
{
	$result = new Result();

	if (!$this->isChanged())
	{
		return $result;
	}

	$basketItem = $this->getEntityParent();

	if ($basketItem->getId() > 0)
	{
		$itemsFromDbList = static::getList([
			'filter' => ["BASKET_ID" => $basketItem->getId()],
		]);
		while ($item = $itemsFromDbList->fetch())
		{
			if (!$this->getItemById($item['ID']))
			{
				static::deleteInternal($item['ID']);
			}
		}
	}

	/** @var ReserveQuantity $entity */
	foreach ($this->collection as $entity)
	{
		$r = $entity->save();
		if (!$r->isSuccess())
		{
			$result->addErrors($r->getErrors());
		}
	}

	$this->clearChanged();

	return $result;
}