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

Update

Метод устарел. Используйте методы класса OrderBase.

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

int
CSaleOrderProps::Update( 
	int ID,
	array arFields
);

Метод изменяет параметры свойства с кодом ID заказа на значения из массива arFields. Нестатический метод.

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

ПараметрОписание
ID Код свойства заказа.
arFields Ассоциативный массив новых значений параметров свойства заказа, в котором ключами являются названия параметров свойства, а значениями - значения этих параметров.
Допустимые ключи:
  • PERSON_TYPE_ID - тип плательщика;
  • NAME - название свойства (тип плательщика зависит от сайта, а сайт - от языка; название должно быть на соответствующем языке);
  • TYPE - тип свойства. Допустимые значения:
    • CHECKBOX - флаг;
    • TEXT - строка текста;
    • SELECT - выпадающий список значений;
    • MULTISELECT - список со множественным выбором;
    • TEXTAREA - многострочный текст;
    • LOCATION - местоположение;
    • RADIO - переключатель.
  • REQUIED - (Y/N) флаг обязательности;
  • DEFAULT_VALUE - значение по умолчанию;
  • SORT - индекс сортировки;
  • USER_PROPS - флаг (Y/N) входит ли это свойство в профиль покупателя;
  • IS_LOCATION - флаг (Y/N) использовать ли значение свойства как местоположение покупателя для расчёта стоимости доставки (только для свойств типа LOCATION);
  • PROPS_GROUP_ID - код группы свойств;
  • SIZE1 - ширина поля (размер по горизонтали);
  • SIZE2 - высота поля (размер по вертикали);
  • DESCRIPTION - описание свойства;
  • IS_EMAIL - флаг (Y/N) использовать ли значение свойства как E-Mail покупателя;
  • IS_PROFILE_NAME - флаг (Y/N) использовать ли значение свойства как название профиля покупателя;
  • IS_PAYER - флаг (Y/N) использовать ли значение свойства как имя плательщика;
  • IS_LOCATION4TAX - флаг (Y/N) использовать ли значение свойства как местоположение покупателя для расчёта налогов (только для свойств типа LOCATION);
  • CODE - символьный код свойства.

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

Возвращается числовой id свойства в случае успеха или bool false в случае ошибки, а ошибку следует добывать из $APPLICATION: $APPLICATION->GetException()->GetString()

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

<?
$arFields = array(
	"PERSON_TYPE_ID" => 2,
	"NAME" => "Комплектация",
	"TYPE" => "RADIO",
	"REQUIED" => "Y",
	"DEFAULT_VALUE" => "F",
	"SORT" => 100,
	"CODE" => "COMPLECT",
	"USER_PROPS" => "N",
	"IS_LOCATION" => "N",
	"IS_LOCATION4TAX" => "N",
	"PROPS_GROUP_ID" => 1,
	"SIZE1" => 0,
	"SIZE2" => 0,
	"DESCRIPTION" => "",
	"IS_EMAIL" => "N",
	"IS_PROFILE_NAME" => "N",
	"IS_PAYER" => "N"
);
 
// Если установлен код свойства, то изменяем свойство с этим кодом,
// иначе добавляем новой свойство
if ($ID>0)
{
	if (!CSaleOrderProps::Update($ID, $arFields))
	{
		echo "Ошибка изменения параметров свойства";
	}
	else
	{
		// Обновим символьный код у значений свойства
		// (хранение избыточных данных для оптимизации работы)
		$db_order_props_tmp = 
			CSaleOrderPropsValue::GetList(($b="NAME"), 
				($o="ASC"),
				Array("ORDER_PROPS_ID"=>$ID));
		while ($ar_order_props_tmp = $db_order_props_tmp->Fetch())
		{
			CSaleOrderPropsValue::Update($ar_order_props_tmp["ID"],
				array("CODE" => "COMPLECT"));
		}
	}
}
else
{
	$ID = CSaleOrderProps::Add($arFields);
	if ($ID<=0)
		echo "Ошибка добавления свойства";
}
?>


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

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

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

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

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