- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/invoice/compatible/helper.php
- Класс: Bitrix\Crm\Invoice\Compatible\Helper
- Вызов: Helper::update
static function update($id, $fields, $changeDateUpdate = true)
{
global $APPLICATION;
$id = (int)$id;
$fields1 = array();
foreach ($fields as $key => $value)
{
if (mb_substr($key, 0, 1) == "=")
{
$fields1[mb_substr($key, 1)] = $value;
unset($fields[$key]);
}
}
if (!self::checkFields("UPDATE", $fields, $id))
return false;
if (!empty($fields1))
{
$fields1 = Invoice::backRawField(Invoice::ENTITY_ORDER, $fields1);
}
$result = Invoice::update($id, array_merge($fields, $fields1), $changeDateUpdate);
if (!$result->isSuccess())
{
foreach($result->getErrorMessages() as $error)
{
$APPLICATION->ThrowException($error);
}
return false;
}
// TODO: ... [ORDER_CHANGE_001] - delete or replace
/*$arOrderOldFields = array();
$resultFields = $result->getData();
if (!empty($resultFields['OLD_FIELDS']) && is_array($resultFields['OLD_FIELDS']))
{
$arOrderOldFields = $resultFields['OLD_FIELDS'];
}
\CSaleOrderChange::AddRecordsByFields($id, $arOrderOldFields, $fields);*/
return $id;
}