• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/search/result/provider/indexsupportedprovider.php
  • Класс: Bitrix\Crm\Search\Result\Provider\IndexSupportedProvider
  • Вызов: IndexSupportedProvider::searchInShortIndex
protected function searchInShortIndex(string $searchQuery, int $limit = 0, array $excludedIds = []): array
{
	$query = $this->getIndexTableQuery();
	$columnName = $this->getShortIndexColumnName();
	if (!empty($this->additionalFilter))
	{
		$referenceFilter = (new ConditionTree())
			->whereColumn('this.' . $columnName, 'ref.ID')
		;
		$this->addToReferenceFilter($referenceFilter, $this->additionalFilter);
		$query->registerRuntimeField('',
			new \Bitrix\Main\Entity\ReferenceField('ENTITY',
				$this->getEntityTableQuery()->getEntity(),
				$referenceFilter,
				['join_type' => 'INNER'],
			)
		);
	}
	if (!empty($excludedIds))
	{
		$query->whereNotIn($columnName, $excludedIds);
	}
	if ($limit > 0)
	{
		$query->setLimit($limit);
	}

	return $this->fetchColumnValuesFromIndex(
		$query,
		$columnName,
		$searchQuery
	);
}