getAvailableQuantity
\Bitrix\Sale\Result public \Bitrix\Catalog\Product\CatalogProvider::getAvailableQuantity( array $products );
Метод вызывает getAvailableQuantityByStore и возвращает первое значение из массива складских количеств каждого товара. Он не суммирует количества по складам. Нестатический метод.
Параметры
| Параметр | Описание |
|---|---|
$products |
Массив товаров с идентификаторами товаров в ключах. Количество задают через QUANTITY или QUANTITY_LIST. При передаче QUANTITY_LIST_BY_STORE дополнительно задают согласованный QUANTITY_LIST для внутреннего расчета данных каталога |
Возвращаемое значение
Метод возвращает объект \Bitrix\Sale\Result. Ключ AVAILABLE_QUANTITY_LIST содержит доступное количество по идентификатору товара. Если складской массив товара пуст, значение равно false. Товары без данных каталога могут отсутствовать в результате. Если складских данных нет для всех товаров, ключ AVAILABLE_QUANTITY_LIST не добавляется.
Пример
<?php
use Bitrix\Catalog\Product\CatalogProvider;
use Bitrix\Main\Loader;
if (!Loader::includeModule('catalog') || !Loader::includeModule('sale'))
{
throw new RuntimeException('Не удалось подключить модули catalog и sale');
}
// Идентификатор существующего товара
$productId = 123;
$provider = new CatalogProvider(['SITE_ID' => SITE_ID]);
$result = $provider->getAvailableQuantity([
$productId => [
'PRODUCT_ID' => $productId,
'QUANTITY' => 1,
],
]);
if (!$result->isSuccess())
{
echo implode(PHP_EOL, $result->getErrorMessages());
return;
}
print_r($result->getData()['AVAILABLE_QUANTITY_LIST'][$productId] ?? null);
© «Битрикс», 2001-2026, «1С-Битрикс», 2026