• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/classes/general/crm_external_sale.php
  • Класс: \CCrmExternalSale
  • Вызов: CCrmExternalSale::Update
static function Update($ID, $arFields)
{
	global $DB;

	$ID = intval($ID);

	if (isset($arFields['ID']))
		unset($arFields['ID']);
	if (isset($arFields['DATE_CREATE']))
		unset($arFields['DATE_CREATE']);
	if (isset($arFields['DATE_UPDATE']))
		unset($arFields['DATE_UPDATE']);

	$arFields['~DATE_UPDATE'] = $DB->CurrentTimeFunction();

	if (!self::CheckFields($arFields, $ID))
		return false;

	if (is_set($arFields, "SYNC_DATA"))
	{
		$arFields["SYNC_DATA"] = is_array($arFields["SYNC_DATA"]) && !empty($arFields["SYNC_DATA"])
			? serialize($arFields["SYNC_DATA"]) : "";
	}

	$strSql = $DB->PrepareUpdate('b_crm_external_sale', $arFields, "crm");

	$arBinds = array();
	if (is_set($arFields, "COOKIE"))
		$arBinds["COOKIE"] = $arFields["COOKIE"];
	if (is_set($arFields, "LAST_STATUS"))
		$arBinds["LAST_STATUS"] = $arFields["LAST_STATUS"];
	if (is_set($arFields, "SYNC_DATA"))
	{
		$arBinds["SYNC_DATA"] = $arFields["SYNC_DATA"];
	}

	$DB->QueryBind(
		"UPDATE b_crm_external_sale SET ".$strSql." WHERE ID = ".$ID,
		$arBinds,
		false
	);

	return $ID;
}