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

SetPropertyValueCode

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

bool
CIBlockElement::SetPropertyValueCode(
	int ELEMENT_ID,
	string PROPERTY_CODE,
	string PROPERTY_VALUE
);
Метод изменяет значение свойства элемента информационного блока. Выполняет один дополнительный запрос к БД для определения кода информационного блока элемента. Если код инфоблока известен, то лучше воспользоваться функцией SetPropertyValues, задав ей 4-й параметр. Статический метод.

Внимание! Удалять и обновлять несколько значений файлового свойства можно только ОДНИМ вызовом, а не несколькими, так как меняются ID значений свойств.

Отличие метода от SetPropertyValuesEx в том, что он не перезаписывает множественное свойства типа Файл, а дополняет.

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

ПараметрОписание
ELEMENT_ID Код элемента, значение свойства которого изменяется.
PROPERTY_CODE Символьный или числовой код свойства, которое изменяется.

Если передан неверный PROPERTY_CODE метод все равно вернет true.

PROPERTY_VALUE Значение свойства (одиночное или множественное в виде массива значений).

Если для свойства типа список, привязка к элементам или разделам (и их клонам) будет установлено равным переданному значению PROPERTY_VALUE, без проверки, метод вернет true. (Если передавать значение, а не его ENUM_ID, то в БД будет записано само значение, привязки к значению не будет.)

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

При успешном изменении вернет true, иначе - false.

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

Пример 1:

<?
$arFile = CFile::MakeFileArray($_SERVER["DOCUMENT_ROOT"]."/images/add_basket.gif");
CIBlockElement::SetPropertyValueCode($ELEMENT_ID, "picture", $arFile);
?>

При добавлении/изменении значений свойства можно одновременно установить и описание, если после вызова MakeFileArray добавить "description".

Пример 2:

Для обновления значения поля типа html/текст значение TYPE должно быть либо HTML, либо TEXT:

CIBlockElement::SetPropertyValueCode(ELEMENT_ID, NAME_PROPERTY, array(array("TYPE"=>"TEXT", "TEXT"=>"мой текст")));


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