...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/integrity/duplicaterequisitecriterion.php
- Класс: Bitrix\Crm\Integrity\DuplicateRequisiteCriterion
- Вызов: DuplicateRequisiteCriterion::loadEntitiesMatches
static function loadEntitiesMatches($entityTypeID, array $entityIDs, $countryId, $fieldName) { if(!is_int($countryId)) { throw new Main\ArgumentTypeException('countryId', 'integer'); } if(!is_string($fieldName)) { throw new Main\ArgumentTypeException('fieldName', 'string'); } $query = new Main\Entity\Query(DuplicateRequisiteMatchCodeTable::getEntity()); $query->addFilter('=ENTITY_TYPE_ID', $entityTypeID); $query->addFilter('@ENTITY_ID', $entityIDs); if ($countryId > 0) $query->addFilter('=RQ_COUNTRY_ID', $countryId); $query->addFilter('=RQ_FIELD_NAME', $fieldName); $query->addSelect('VALUE'); $query->addSelect('RQ_COUNTRY_ID'); $dbResult = $query->exec(); $results = array(); while($fields = $dbResult->fetch()) { $entityID = isset($fields['ENTITY_ID']) ? (int)$fields['ENTITY_ID'] : 0; if($entityID <= 0) { continue; } if(!isset($results[$entityID])) { $results[$entityID] = array(); } $results[$entityID][] = array( 'RQ_COUNTRY_ID' => $fields['RQ_COUNTRY_ID'], 'RQ_FIELD_NAME' => $fieldName, 'VALUE' => isset($fields['VALUE']) ? $fields['VALUE'] : '' ); } return $results; }