Example #1
0
 $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 {