• Модуль: 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]
		)
	);
}