Получаем все сделки По Компании, За период, Направлению, Стадии сделки, Отдельные суммы по сделкам (в разных валютах)
Результатом выполнения данного кода будет заполнение переменных в бизнес-процессе Битрикс24 следующим образом:
Переменная DealIDs будет содержать массив с идентификаторами сделок.
use Bitrix\Crm\DealTable;
// COMPANY_ID - ID Компании, CATEGORY_ID - ID напралвения сделок, STAGE_ID - код стадии, каждое значение можете заменить на переменную (в двойных кавычках), либо указать конкретное значение (в одинарных - как текст) как это указано ниже
$arFilter =[ 'COMPANY_ID' => "{{ID}}",
'CATEGORY_ID' => 13,
'STAGE_ID' => 'C13:WON'];
$arSelect =[ 'ID',
'OPPORTUNITY',
'CURRENCY_ID'];
$arDeals = DealTable::getList([
'order' =>['ID' => 'DESC'],
'filter' => $arFilter,
'select' => $arSelect,
'cache' =>['ttl' => 3600] ])->fetchAll();
$deals =[];
$rub = 0;
$dollar = 0;
foreach ($arDeals as $deal){
$deals[]= $deal['ID'];
if ($deal['CURRENCY_ID']== 'RUB'){
$rub += $deal['OPPORTUNITY'];}elseif ($deal['CURRENCY_ID']== 'USD'){
$dollar += $deal['OPPORTUNITY'];} }
$rootActivity = $this->GetRootActivity();
// Присваиваем переменным в БП (DealIDs, rub, dollar) значения массива с идентификаторами сделок и сумм сделок в разных валютах
$rootActivity->SetVariable("DealIDs", $deals);
$rootActivity->SetVariable("rub", $rub);
$rootActivity->SetVariable("dollar", $dollar);
Cookie-файлы
Настройка cookie-файлов
Детальная информация о целях обработки данных и поставщиках, которые мы используем на наших сайтах
Аналитические Cookie-файлыОтключить все
Технические Cookie-файлы
Другие Cookie-файлы
Мы используем файлы Cookie для улучшения работы, персонализации и повышения удобства пользования нашим сайтом. Продолжая посещать сайт, вы соглашаетесь на использование нами файлов Cookie.Подробнее о нашей политике в отношении Cookie.