• Модуль: report
  • Путь к файлу: ~/bitrix/modules/report/lib/visualconstructor/internal/model.php
  • Класс: BitrixReportVisualConstructorInternaldeveloped
  • Вызов: developed::saveManyToManyReferences
private function saveManyToManyReferences($references, $assoc, $ownerEntityId)
{
	foreach ($references as $key => $reference)
	{
		if ($reference instanceof $assoc['targetEntity'])
		{
			$isReferenceNew = !(boolean)$reference->getId();
			$referenceId = $reference->save();
			if ($isReferenceNew)
			{
				$column = array_values($assoc['join']['column']);
				$column = $column[0];
				$inverseColumn = array_values($assoc['join']['inverseColumn']);
				$inverseColumn = $inverseColumn[0];
				$connectData = array(
					$column[1] => $ownerEntityId,
					$inverseColumn[1] => $referenceId,
				);
				/** @var BitrixMainEntityDataManager $ormTableClassName */
				$ormTableClassName = $assoc['join']['tableClassName'];
				$ormTableClassName::add($connectData);
			}
		}
	}
}