Документация для разработчиков
Темная тема

Add

Описание и параметры

mixed
CCatalogDiscountCoupon::Add(
	array arFields
	boolean $bAffectDataFile = True
);

Метод добавляет купон для выбранной скидки. Нестатический метод.

Параметры вызова

Параметр ОписаниеС версииДо версии
arFields Ассоциативный массив параметров нового купона, ключами в котором являются названия параметров, а значениями - соответствующие значения:
  • DISCOUNT_ID - код (ID) скидки (обязательный)
  • ACTIVE - активность купона (Y|N) (необязательный), по умолчанию - Y
  • ONE_TIME - флаг одноразовости купона (необязательный). Может принимать одно из трёх значений: Y - на одну позицию заказа, O - на весь заказ, N - многоразовый, по умолчанию - Y.
  • COUPON - код купона (обязательный)
  • DATE_APPLY - дата применения купона (необязательный), если указать - одноразовый купон будет считаться использованным
  • DESCRIPTION - комментарий (необязательный)
Необязательные ключи, отсутствующие в массиве, получат значения по умолчанию.
bAffectDataFile Необязательный параметр, указывающий на необходимость перегенерировать файл скидок и купонов. Эти действия осуществляет метод CCatalogDiscount::GenerateDataFile().

Примечание: начиная с версии 12.0 параметр не требуется, т.к. с этой версии больше не используется файловый кеш скидок.
5.1.112.0.0

Возвращаемое значение

Метод возвращает код (ID) купона в случае успешного создания и false, если произошла ошибка. Для получения детальной информации об ошибке следует вызвать $APPLICATION->GetException().

Перед добавлением записи в таблицу осуществляется проверка параметров привязки методом CCatalogDiscountCoupon::CheckFields. Если проверка прошла успешно, производится запись в базу.

Смотрите также

Перед использованием метода необходимо сгенерировать код купона функцией CatalogGenerateCoupon().

Примеры использования

if (CModule::IncludeModule("catalog"))
{
	$COUPON = CatalogGenerateCoupon();

	$arCouponFields = array(
		"DISCOUNT_ID" => "4",
		"ACTIVE" => "Y",
		"ONE_TIME" => "Y",
		"COUPON" => $COUPON,
		"DATE_APPLY" => false
	);

	$CID = CCatalogDiscountCoupon::Add($arCouponFields);
	$CID = IntVal($CID);
	if ($CID <= 0)
	{
		$ex = $APPLICATION->GetException();
		$errorMessage = $ex->GetString();
		echo $errorMessage;
	}
}

Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх