Как воспроизвести:
Используется автоматизация "Сущность - выполнить php скрипт", с триггерами - редактирование и добавление записи.
Внутри используется код, чтобы обойти ограничение, описанное тут
[245] - поле текущей записи с типом "Многоуровневый список сущностей"
[246] - поле текущей записи с типом "Многоуровневый список сущностей"
У обоих сущностей один родитель
field_289 - поле текущей записи с типом "Сущность"
field_290 - поле текущей записи с типом "Сущность"
field_295 - поле текущей записи с типом "Выпадающий список"
Сам код:
Код: Выделить всё
$db = db_query("SELECT field_256 FROM app_entity_26 WHERE id = ".[245]);
$db = db_fetch_array($db);
$data = array(
'field_289' => [245],
'field_290' => [246],
'field_295' => $db['field_256']
);
$params = array(
'key' => '***',
'username' => '***',
'password' => '***',
'action' => 'update',
'entity_id' => 28,
'data' => $data,
'update_by_field' => ['id'=>[id]],
);
$ch = curl_init('https://***/api/rest.php');
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$result = curl_exec($ch);
curl_close($ch);
UPD: Решил проблему заменив вызов API на конструкцию items::update_by_id($entity_id, $item_id, $data) с этим исправлением