• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/classes/general/crm_field_multi.php
  • Класс: \CCrmFieldMulti
  • Вызов: CCrmFieldMulti::DeleteByElement
public function DeleteByElement($entityId, $elementId)
{
	$err_mess = (self::err_mess()).'
Function: DeleteByElement
Line: '; $elementId = intval($elementId); if ($entityId == '' || $elementId == 0) { return false; } $idsToRemove = []; $dbResult = $this->cdb->Query( "SELECT ID FROM b_crm_field_multi WHERE ENTITY_ID='" . $this->cdb->ForSql($entityId) . "' AND ELEMENT_ID=" . $elementId, false, $err_mess . __LINE__ ); while ($row = $dbResult->Fetch()) { $idsToRemove[] = (int)$row['ID']; } $res = $this->cdb->Query( "DELETE FROM b_crm_field_multi " . "WHERE ENTITY_ID = '" . $this->cdb->ForSql($entityId) . "' AND ELEMENT_ID = '" . $elementId . "'", false, $err_mess . __LINE__ ); $entityTypeId = CCrmOwnerType::ResolveID($entityId); //region Register volatile duplicate criterion fields DuplicateCommunicationCriterion::processMultifieldsChange($entityTypeId, $elementId); DuplicateVolatileCriterion::register($entityTypeId, $elementId, [FieldCategory::MULTI]); //endregion Register volatile duplicate criterion fields if (!empty($idsToRemove)) { foreach ($idsToRemove as $id) { FieldMultiPhoneCountryTable::deleteByByMultiFieldId($id); } } return $res; }