On this page
edit
Обновление контакта
Пример PHP-кода для обновления существующего контакта в Битрикс24.
Обновление существующего контакта
Этот PHP-код позволяет обновить существующий контакт в Битрикс24 по его ID.
use Bitrix\Crm\ContactTable;
// ID контакта, который нужно обновить
$contactId = $this->GetRootActivity()->GetVariable("ContactID"); // Например, ID контакта
// Поля для обновления
$fields = [
'NAME' => $this->GetRootActivity()->GetVariable("ContactName"), // Новое имя контакта
'LAST_NAME' => $this->GetRootActivity()->GetVariable("ContactLastName"), // Новая фамилия контакта
'PHONE' => [['VALUE' => $this->GetRootActivity()->GetVariable("ContactPhone"), 'VALUE_TYPE' => 'WORK']], // Новый телефон
'EMAIL' => [['VALUE' => $this->GetRootActivity()->GetVariable("ContactEmail"), 'VALUE_TYPE' => 'WORK']], // Новый email
];
$updateStatus = false;
$errorMessage = '';
if (!$contactId) {
$errorMessage = "КРИТИЧНО: Не указан ID контакта для обновления.";
$this->WriteToTrackingService($errorMessage);
} else {
$result = ContactTable::update($contactId, $fields);
if ($result->isSuccess()) {
$updateStatus = true;
} else {
$errorMessage = "ОШИБКА: Не удалось обновить контакт ID: " . $contactId . ". " . implode(', ', $result->getErrorMessages());
$this->WriteToTrackingService($errorMessage);
}
}
$rootActivity = $this->GetRootActivity();
$rootActivity->SetVariable("UpdateContactStatus", $updateStatus);
$rootActivity->SetVariable("UpdatedContactID", $contactId);
$rootActivity->SetVariable("UpdateContactErrorMessage", $errorMessage);
Параметры
ContactID
(int): ID контакта, который необходимо обновить.ContactName
(string): Новое имя контакта.ContactLastName
(string): Новая фамилия контакта.ContactPhone
(string): Новый номер телефона контакта.ContactEmail
(string): Новый адрес электронной почты контакта.
Возвращаемые значения
UpdateContactStatus
(bool): Статус операции обновления (true - успешно, false - ошибка).UpdatedContactID
(int): ID обновленного контакта.UpdateContactErrorMessage
(string): Сообщение об ошибке, если операция не удалась.
Рекомендации по использованию
- Используйте этот скрипт для изменения данных существующих контактов.
- Передавайте только те поля, которые необходимо обновить; остальные поля останутся без изменений.
- Всегда проверяйте
UpdateContactStatus
для определения успешности операции.