• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/Service/Factory/Company.php
  • Класс: Bitrix\Crm\Service\Factory\Company
  • Вызов: Company::configureItem
protected function configureItem(Item $item, EntityObject $entityObject): void
{
	parent::configureItem($item, $entityObject);

	$fieldNameMap =
		(new Item\FieldImplementation\Binding\FieldNameMap())
			// it's not a mistake, company has no CONTACT_ID field
			// ->setSingleId(Item::FIELD_NAME_CONTACT_ID)
			->setMultipleIds(Item::FIELD_NAME_CONTACT_IDS)
			->setBindings(Item::FIELD_NAME_CONTACT_BINDINGS)
			->setBoundEntities(Item::FIELD_NAME_CONTACTS)
	;

	$implementation = new Item\FieldImplementation\Binding(
		$entityObject,
		\CCrmOwnerType::Contact,
		$fieldNameMap,
		ContactCompanyTable::getEntity(),
		Container::getInstance()->getContactBroker(),
	);

	$implementation->configureUpdatingRefIdInBoundEntity(ContactTable::getEntity(), 'COMPANY_ID');

	$item->addImplementation($implementation);
}