• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/internals/catalog/provider.php
  • Класс: BitrixSaleInternalsCatalogProvider
  • Вызов: Provider::tryReserveShipment
static function tryReserveShipment(SaleShipment $shipment)
{
	$context = self::prepareContext($shipment->getOrder());
	$r = self::checkContext($context);
	if (!$r->isSuccess())
	{
		return $r;
	}

	$shipmentItemList = [];
	/** @var SaleShipmentItem $item */
	foreach ($shipment->getShipmentItemCollection() as $item)
	{
		$basketItem = $item->getBasketItem();
		if ($basketItem->isReservableItem())
		{
			$shipmentItemList[] = $item;
		}
	}

	return self::tryReserveShipmentItemArray($shipmentItemList, $context);
}