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

SetEnumValues

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

CUserFieldEnum::SetEnumValues(
	int FIELD_ID,
	array values
)

Изменение значений списка пользовательского поля. Нестатический метод.

Параметры

ПараметрОписание
FIELD_IDИдентификатор пользовательского поля.
values
Массив устанавливаемых значений. Ключами массива служат идентификаторы значений списка, а значения ключей определяют новое содержимое списка.

Если ключ начинается с символа "n", то это будет новое значение списка.

Значение ключа в с вою очередь представляет собой массив. Ключи данного массива:
  • VALUE - значение для отображения, если задана пустая строка, то значение будет удалено из списка;
  • DEF - флаг умолчания (Y|N);
  • SORT - сортировка;
  • XML_ID - код внешнего источника, если не задан, то будет вычислен как md5 от VALUE.
  • DEL - если равен Y, то данное значение будет удалено из списка.
Значения ключей задают точное соответствие для фильтрации.

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

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

<?
//Пусть для пользователей определено пользовательское свойство
// типа список с кодом UF_GENDER. 
//0. определим идентификатор поля.
$arFields = $GLOBALS['USER_FIELD_MANAGER']->GetUserFields("USER");
if(array_key_exists("UF_GENDER", $arFields))
{
	$FIELD_ID = $arFields["UF_GENDER"]["ID"];
	//1. Добавим значение выпадающего списка: "не знаю"
	$obEnum = new CUserFieldEnum;
	$obEnum->SetEnumValues($FIELD_ID, array(
		"n0" => array(
			"VALUE" => "не знаю",
		),
	));
	//2. Изменим "не знаю" на "не помню"
	$rsEnum = CUserFieldEnum::GetList(array(), array(
		"VALUE" => "не знаю",
	));
	if($arEnum = $rsEnum->Fetch())
	{
		$obEnum = new CUserFieldEnum;
		$obEnum->SetEnumValues($FIELD_ID, array(
			$arEnum["ID"] => array(
				"VALUE" => "не помню",
			),
		));
	}
	//3. удалим значение "не помню" из списка
	$rsEnum = CUserFieldEnum::GetList(array(), array(
		"VALUE" => "не помню",
	));
	if($arEnum = $rsEnum->Fetch())
	{
		$obEnum = new CUserFieldEnum;
		$obEnum->SetEnumValues($FIELD_ID, array(
			$arEnum["ID"] => array(
				"DEL" => "Y",
			),
		));
	}
}
?>


© «Битрикс», 2001-2024, «1С-Битрикс», 2024