getAllSetsByProduct
Описание и параметры
public static function getAllSetsByProduct( $intProductID, $intSetType );
Метод получает состав комплекта или набора(ов), принадлежащих товару. Статический метод.
Параметры вызова
| Параметр | Описание |
|---|---|
| ProductID | Код товара. |
| SetType | Тип сущности (комплект/набор). |
Возвращаемые значения
Метод возвращает: false в случае ошибочных параметров, пусто - если ничего не найдено. Если найдено, то возвращает ассоциативный массив параметров с ключами со следующей структурой:
Для комплекта (ключ - идентификатор комплекта):
- TYPE - константа
CCatalogProductSet::TYPE_SET(комплект), - SET_ID - идентификатор комплекта,
- ITEM_ID - идентификатор товара-комплекта,
- ACTIVE - (Y|N) активность,
- QUANTITY - количество,
- MEASURE - идентификатор единицы измерения,
- DISCOUNT_PERCENT - false,
- SORT - индекс сортировки,
- ITEMS - массив (список элементов комплекта.) Для каждого идентификатора записи комплекта массив:
- ITEM_ID - идентификатор товара входящего в комплект,
- QUANTITY - множитель единицы измерения товара,
- MEASURE - идентификатор единицы измерения,
- DISCOUNT_PERCENT - false (не используется),
- SORT - индекс сортировки в комплекте.
Для наборов (ключ - идентификатор набора)
- TYPE - константа
CCatalogProductSet::TYPE_GROUP(набор), - SET_ID - идентификатор набора,
- ITEM_ID - идентификатор товара, которому принадлежит набор,
- ACTIVE'' - (Y|N) активность,
- QUANTITY - количество,
- MEASURE - идентификатор единицы измерения,
- SORT - индекс сортировки,
- ITEMS - массив (список элементов набора). Для каждого идентификатора записи набора массив:
- ITEM_ID - идентификатор товара входящего в набор,
- QUANTITY - множитель единицы измерения товара,
- MEASURE - идентификатор единицы измерения,
- SORT - индекс сортировки в наборе.
Примеры использования
$ownerId = 17; // ID товара-владельца, для которого нужно получить набор(ы)
$result = CCatalogProductSet::getAllSetsByProduct($ownerId, CCatalogProductSet::TYPE_GROUP);
if (!empty($result))
{
foreach ($result as $bundleId => $bundle)
{
echo 'ID набора: '.$bundleId;
print_r($bundle); // описание и состав набора
}
}
$ownerId = 45; // ID товара-комплекта
$result = CCatalogProductSet::getAllSetsByProduct($ownerId, CCatalogProductSet::TYPE_SET);
if (!empty($result))
{
$set = reset($result);
$setId = key($result);
echo 'ID комплекта: '.$setId;
print_r($set); // описание и состав комплекта
}
© «Битрикс», 2001-2025, «1С-Битрикс», 2025