• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/search/result/provider/indexsupportedprovider.php
  • Класс: Bitrix\Crm\Search\Result\Provider\IndexSupportedProvider
  • Вызов: IndexSupportedProvider::fetchColumnValuesFromIndex
protected function fetchColumnValuesFromIndex(
	Query $query,
	string $columnName,
	string $searchContent
): array
{
	$result = [];

	if (Content::canUseFulltextSearch($searchContent, Content::TYPE_MIXED))
	{
		$searchContent = Helper::matchAgainstWildcard($searchContent);

		$permissionSql = $this->getPermissionSql();
		if ($permissionSql === false)
		{
			return [];
		}

		$query
			->setSelect([$columnName])
			->whereMatch('SEARCH_CONTENT', $searchContent)
		;

		if ($permissionSql !== '')
		{
			$query->addFilter('@' . $columnName, new SqlExpression($permissionSql));
		}

		$items = $query->exec();
		while ($item = $items->fetch())
		{
			$result[] = $item[$columnName];
		}
	}

	return $result;
}