Получаем список ID Компаний по Пользовательскому полю
- Этот код выполняет поиск компаний по пользовательскому полю и сохраняет их идентификаторы для дальнейшего использования в рамках бизнес-процесса.
use Bitrix\Crm\CompanyTable;
// Значения пользовательского поля, по которым будем фильтровать компании
$customFieldValues =['1375', '1377', '1379'];
$arSelect =[
'ID',
'UF_CRM_1671707294' // Добавляем пользовательское поле в выборку
];
// Создаем фильтр для поиска компаний по значениям пользовательского поля
$arFilter =[
'UF_CRM_1671707294' => $customFieldValues
];
$arCompanies = CompanyTable::getList([
'select' => $arSelect,
'filter' => $arFilter,
'cache' =>['ttl' => 3600]
])->fetchAll();
// Подготовка массивов для хранения ID компаний по значениям пользовательского поля
$companyIDs1375 =[];
$companyIDs1377 =[];
$companyIDs1379 =[];
foreach ($arCompanies as $company){
$customFieldValue = $company['UF_CRM_1671707294'];
if ($customFieldValue == '1375'){
$companyIDs1375[]= $company['ID'];
}elseif ($customFieldValue == '1377'){
$companyIDs1377[]= $company['ID'];
}elseif ($customFieldValue == '1379'){
$companyIDs1379[]= $company['ID'];
}
}
// Подсчет всех полученных элементов по значениям пользовательского поля
$totalCompanies1375 = count($companyIDs1375);
$totalCompanies1377 = count($companyIDs1377);
$totalCompanies1379 = count($companyIDs1379);
// Получаем корневую активность бизнес-процесса
$rootActivity = $this->GetRootActivity();
// Присваиваем переменным значения массивов с идентификаторами компаний
$rootActivity->SetVariable("CompanyIDs1375", $companyIDs1375);
$rootActivity->SetVariable("CompanyIDs1377", $companyIDs1377);
$rootActivity->SetVariable("CompanyIDs1379", $companyIDs1379);
// Присваиваем переменным значения общего количества компаний
$rootActivity->SetVariable("TotalCompanies1375", $totalCompanies1375);
$rootActivity->SetVariable("TotalCompanies1377", $totalCompanies1377);
$rootActivity->SetVariable("TotalCompanies1379", $totalCompanies1379);
Cookie-файлы
Настройка cookie-файлов
Детальная информация о целях обработки данных и поставщиках, которые мы используем на наших сайтах
Аналитические Cookie-файлы
Отключить все
Технические Cookie-файлы
Другие Cookie-файлы
Мы используем файлы Cookie для улучшения работы, персонализации и повышения удобства пользования нашим сайтом. Продолжая посещать сайт, вы соглашаетесь на использование нами файлов Cookie.
Подробнее о нашей политике в отношении Cookie.
Принять все
Отказаться от всех
Настроить