1C-Битрикс: Управление сайтом

CIBlockElement::SetPropertyValueCode

bool
    
CIBlockElement::SetPropertyValueCode(

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

Параметры функции

ПараметрОписание
ELEMENT_ID Код элемента, значение свойства которого изменяется.
PROPERTY_CODE Мнемонический или числовой код свойства, которое изменяется.
PROPERTY_VALUE Значение свойства (одиночное или множественное в виде массива значений).

См. также

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

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

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

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

Добавлять комментарии могут только зарегистрированные пользователи. Сообщения для просмотра появляются после модерации.
0
Рамиль Юналиев
Думаю стоит указать что при успешном изменении вернет true, при неудаче false.
0
Evgeniy Kobzar
Рассмотрим примеры для задач обновления, добавления и удаления определённого значения свойства для множественного свойства типа файл.

68 это id свойства, 2033 это id значения свойства, FILES символьный код множественного свойства типа файл

Обновление

Код
$ELEMENT_ID = 392;
$arFile = CFile::MakeFileArray($_SERVER["DOCUMENT_ROOT"]."/images/help.gif");
$arFile["MODULE_ID"] = "iblock";
$arFile["del"] = "Y";

$PROPERTY_VALUE["68"]["2033"] = $arFile;  
CIBlockElement::SetPropertyValueCode($ELEMENT_ID, "FILES", Array ("2033" => Array("VALUE"=>$arFile) ) );


Добавление

Код
$ELEMENT_ID = 392;
$arFile = CFile::MakeFileArray($_SERVER["DOCUMENT_ROOT"]."/images/help.gif");
$arFile["MODULE_ID"] = "iblock";

$PROPERTY_VALUE["68"][n0] = $arFile;  
CIBlockElement::SetPropertyValueCode($ELEMENT_ID, "FILES", Array("VALUE"=>$arFile) ) );


Удаление

Код
$ELEMENT_ID = 392;
$arFile["MODULE_ID"] = "iblock";
$arFile["del"] = "Y";

$PROPERTY_VALUE["68"]["2033"] = $arFile; 
CIBlockElement::SetPropertyValueCode($ELEMENT_ID, "FILES", Array ("2033" => Array("VALUE"=>$arFile) ) );
0
Evgeniy Kobzar
Рассмотрим пример для задачи установить значение свойства типа "список".

При вызове метода SetPropertyValueCode в качестве 3-го параметра необходимо указывать массив, где значение по ключу VALUE является ID варианта значения списка.
Код
CIBlockElement::SetPropertyValueCode("IDE", "CODEP", array("VALUE"=>'ID_ENUM'))
1
Maxim Smirnov
После MakeFileArray можно добавить "description" который уйдет и в DESCRIPTION b_file'а и в DESCRIPTION значения свойства.
Т.о. можно к обновлению, добавлению и удалению "добавить" операцию: установить описание.
© «Битрикс», 2001-2012, «1C-Битрикс», 2012