Хорошим правилом при работе с API Битрикс перед удалением проверять наличие заданного элемента в заданном инфоблоке, чтобы:
а) не затереть все элементы, так как метод срабатывает при некорректном параметре
б) не затереть элемент из другого инфоблока, если допущена ошибка в коде.
Например, удаление элемента может выглядеть так (в данном случае файл - это сущность, хранящаяся в отдельном инфоблоке):
| Код |
|---|
// проверяем, существует ли такой аттач
$bx_file = CIBlockElement::GetList(
array(),
array(
'IBLOCK_ID' => IB_INSTR_ATTACHED_FILES,
'ID' => $file_id
)
);
if (! $bx_file->SelectedRowsCount()) {
throw new MyException('Не найден аттач, который необходимо удалить.');
}
CIBlockElement::Delete($file_id);
|