• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/classes/general/taskreport.php
  • Класс: CTaskReport
  • Вызов: CTaskReport::GetEmployeesCount
static function GetEmployeesCount()
{
	global $DB;

	$obUserFieldsSqlDepartment = new CUserTypeSQL;
	$obUserFieldsSqlDepartment->SetEntity("USER", "U.ID");
	$obUserFieldsSqlDepartment->SetSelect(array("UF_DEPARTMENT"));
	$obUserFieldsSqlDepartment->SetFilter(array("!UF_DEPARTMENT" => false));

	$strFilter = $obUserFieldsSqlDepartment->GetFilter();
	$strJoin = $obUserFieldsSqlDepartment->GetJoin("U.ID");

	$strSql = "
		SELECT
			COUNT(DISTINCT U.ID) AS CNT
		FROM
			b_user U
		LEFT JOIN
			b_utm_user BUF1 ON BUF1.FIELD_ID = ".$obUserFieldsSqlDepartment->user_fields["UF_DEPARTMENT"]["ID"]." AND BUF1.VALUE_ID = U.ID
		WHERE
			U.ACTIVE = 'Y'
		AND
			BUF1.VALUE_INT IS NOT NULL AND BUF1.VALUE_INT <> 0
	";
	$res = $DB->Query($strSql, false, "File: ".__FILE__."
Line: ".__LINE__); if ($arRes = $res->Fetch()) { return $arRes["CNT"]; } return 0; }