• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/Service/EventHistory/TrackedObject.php
  • Класс: Bitrix\Crm\Service\EventHistory\TrackedObject
  • Вызов: TrackedObject::prepareUpdateEventDataForChangedObjects
protected function prepareUpdateEventDataForChangedObjects(string $fieldName, array $actualCollection, array $currentCollection): array
{
	$eventDataArrays = [];

	/** @var Item|EntityObject $currentEntity */
	foreach ($currentCollection as $currentEntity)
	{
		$actualEntity = $this->findEntityInCollectionByPrimary($actualCollection, $currentEntity);
		if (!$actualEntity)
		{
			continue;
		}

		$dependantTrackedObject = $this->getDependantTrackedObject($fieldName);
		$dependantTrackedObject->objectBeforeSave = $actualEntity;
		$dependantTrackedObject->object = $currentEntity;
		$dependantTrackedObject->bindToEntityType($this->entityType, $this->entityDescription);
		$dependantTrackedObject->ownerId = $this->getEntityId();

		$eventDataArrays[] = $dependantTrackedObject->prepareUpdateEventData();
	}

	return $this->normalizeEventDataArrays($eventDataArrays);
}