Описание и параметры
bool
CCatalogProduct::Update(
int ID,
array arFields
);
Метод обновляет параметры товара, относящиеся к товару как к таковому. Статический метод.
Параметры вызова
Параметр | Описание |
ID |
Код товара. |
arFields | Ассоциативный массив, ключами которого являются названия параметров товара, а значениями - новые значения параметров. Допустимые ключи:
ключи, независящие от типа товаров:
- QUANTITY - доступное количество товара;
- QUANTITY_RESERVED - зарезервированное количество;
- QUANTITY_TRACE - флаг (Y/N/D)* "включить количественный учет" (до версии 12.5.0 параметр назывался "уменьшать ли количество при заказе");
ключи для обычных товаров:
- CAN_BUY_ZERO - флаг (Y/N/D)* "разрешить покупку при отсутствии товара";
- NEGATIVE_AMOUNT_TRACE - флаг (Y/N/D)* "разрешить отрицательное количество товара";
- SUBSCRIBE - флаг (Y/N/D)* "разрешить подписку при отсутствии товара";
- PURCHASING_PRICE - закупочная цена;
- PURCHASING_CURRENCY - валюта закупочной цены;
- WEIGHT - вес единицы товара;
- WIDTH - ширина товара (в мм);
- LENGTH - длина товара (в мм);
- HEIGHT - высота товара (в мм);
- MEASURE - ID единицы измерения;
- BARCODE_MULTI - (Y/N) определяет каждый ли экземпляр товара имеет собственный штрихкод;
ключи для продажи контента:
- PRICE_TYPE - тип цены (S - одноразовый платеж, R - регулярные платежи, T - пробная подписка);
- RECUR_SCHEME_TYPE - тип периода подписки ("H" - час, "D" - сутки, "W" - неделя, "M" - месяц, "Q" - квартал, "S" - полугодие, "Y" - год);
- RECUR_SCHEME_LENGTH - длина периода подписки;
- TRIAL_PRICE_ID - код товара, для которого данный товар является пробным;
- WITHOUT_ORDER - флаг "Продление подписки без оформления заказа".
|
*D - значение берется из настроек модуля. |
Возвращаемые значения
Возвращает true в случае успешного обновления параметров и false в противном случае.
Примеры использования
Обновление зарезервированного количества товара
Cmodule::IncludeModule('catalog');
$PRODUCT_ID = 51; // id товара
$arFields = array('QUANTITY_RESERVED' => 11);// зарезервированное количество
CCatalogProduct::Update($PRODUCT_ID, $arFields);