$addressTypeID = \Bitrix\Crm\EntityAddress::Primary; foreach ($arSort as $k => $v) { if (strncmp($k, 'address', 7) === 0) { $addressSort[strtoupper($k)] = $v; } } if (empty($addressSort)) { $addressTypeID = \Bitrix\Crm\EntityAddress::Registered; foreach ($arSort as $k => $v) { if (strncmp($k, 'registered_address', 18) === 0) { $addressSort[strtoupper($k)] = $v; } } } if (!empty($addressSort)) { $navDbResult = \Bitrix\Crm\CompanyAddress::getEntityList($addressTypeID, $addressSort, $arFilter, !$isInExportMode ? $arNavParams : false); $arResult['ROWS_COUNT'] = $navDbResult->SelectedRowsCount(); $arResult['DB_LIST'] = $navDbResult; $arResult['DB_FILTER'] = $arFilter; while ($arCompany = $navDbResult->Fetch()) { $arResult['COMPANY'][$arCompany['ID']] = $arCompany; $arResult['COMPANY_ID'][$arCompany['ID']] = $arCompany['ID']; $arResult['COMPANY_UF'][$arCompany['ID']] = array(); } $arFilter['@ID'] = array_keys($arResult['COMPANY']); $arSort['ID'] = array_shift(array_slice($addressSort, 0, 1)); $dbResult = CCrmCompany::GetListEx($arSort, $arFilter, false, false, $arSelect, $arOptions); while ($arCompany = $dbResult->GetNext()) { $arResult['COMPANY'][$arCompany['ID']] = $arCompany; } } else {