Поскреби новое ядро D7 найдешь старое

Поскреби новое ядро D7 найдешь старое

18.12.2019 В обновлении элемента на D7 совсем не D7. При попытке использовать новое ядро выяснилось, что метод обновления остался старый. ElementTable::update ошибка нужно использовать вызов CIBlockElement::Update

Изменить элемент инфорблока через таблет нельзя. Нужно использовать CIBlockElement::Update():  https://dev.1c-bitrix.ru/api_help/iblock/classes/ciblockelement/update.php
Также можно использовать объектный ORM инфоблоков:  https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&CHAPTER_ID=012864&LESSON_PATH=3913.5062.5748.12864
Плюс для этого АПИ на данный момент не реализована поддержка некоторых функциональных блоков. Их необходимо будет реализовывать самостоятельно.


Пример кода
use Bitrix\Iblock;
$primary = 394;
$data = Array(
  "DETAIL_PICTURE" => CFile::MakeFileArray($_SERVER["DOCUMENT_ROOT"]."/user.png")
  );
$result = \Bitrix\Iblock\ElementTable::update($primary, $data);
if($result->isSuccess())
{
    echo "Элемент обновлен!";
}
else
{
    $error = $result->getErrorMessages();
    echo "Ошибка обновления элемента: <pre>".var_export($error, true)."</pre>";  

Получаю ошибку
Ошибка обновления элемента:
array (
  0 => 'Для изменения элементов инфоблоков используйте вызов CIBlockElement::Update()',
)

Ещё статьи:

15.02.2024 История о жадности или как клиент свободное место искал на сервере
Случилась у меня одна история с клиентом, который свободное место искал на сервере, но на самом деле это больше о жадности, но в итоге всё равно пришл... ID: 466

08.11.2023 Хроники БУС упадка
На днях произошли очередные изменения в БУС битрикс. Полезный модуль bitrix.xscan включили в состав проактивной защиты и убрали из бесплатного сегмента... ID: 465

26.07.2023 Kwork.com закрыл доступ для резидентов РФ
Доступ к выставлению услуг теперь ограничен "К сожалению, вынуждены сообщить, что резиденты РФ в настоящее время не могут использовать сайт Kwork... ID: 463

Новые статьи в блоге:

08.11.2023 Прощай bitrix.xscan, не стало битрикс скан модуля
Сегодня увидел, что полезного модуля bitrix.xscan не стало на маркетплейсе. ID: 464

26.07.2023 Сохренение ютм меток в сессию
Вариант сохренения ютм меток в сессию в афйле init.php ID: 462

29.06.2023 Почему DNS есть, но ошибка "Не удалось получить записи с DNS серверов"
Проверка на VPS показывает, что DNS есть, но по факту ошибка "Не удалось получить записи с DNS серверов" ID: 461

Возврат к списку

© 2015-2024 Web админ
Связаться по WhatsApp