- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/counter/counterquerybuilder/deadlinebased/countablebased.php
- Класс: Bitrix\Crm\Counter\CounterQueryBuilder\DeadlineBased\CountableBased
- Вызов: CountableBased::joinCountableActivity
private function joinCountableActivity(QueryParams $params, Query $query): void
{
$referenceFilter = (new ConditionTree())
->whereColumn('ref.ENTITY_ID', 'this.ID')
->where('ref.ENTITY_TYPE_ID', new SqlExpression($params->entityTypeId()));
$referenceFilter->where('ref.ACTIVITY_IS_INCOMING_CHANNEL', new SqlExpression('?', 'N'));
$this->applyDeadlineReferenceFilter($referenceFilter, $params);
if ($params->useActivityResponsible())
{
$this->qpResponsibleFilter->apply($referenceFilter, $params->userParams(), 'ref.ACTIVITY_RESPONSIBLE_ID');
}
$query->registerRuntimeField(
'',
new ReferenceField('A',
EntityCountableActivityTable::getEntity(),
$referenceFilter,
['join_type' => Join::TYPE_INNER]
)
);
}