• Модуль: report
  • Путь к файлу: ~/bitrix/modules/report/classes/general/report.php
  • Класс: CReport
  • Вызов: CReport::isColumnPercentable
static function isColumnPercentable($view, $helperClassName)
{
	/*
	1. any integer
	2. any float
	3. boolean with aggr
	4. any with COUNT_DISTINCT aggr
	*/

	$dataType = call_user_func(array($helperClassName, 'getFieldDataType'), $view['field']);

	/** @var EntityField[] $view */
	if (($dataType === 'integer' || $dataType === 'float')
		&& (!$view['isUF'] || $view['ufInfo']['MULTIPLE'] !== 'Y'))
	{
		return true;
	}
	elseif ($dataType === 'boolean' && $view['aggr'] === 'SUM'
		&& (!$view['isUF'] || $view['ufInfo']['MULTIPLE'] !== 'Y'))
	{
		return true;
	}
	elseif ($view['aggr'] === 'COUNT_DISTINCT')
	{
		return true;
	}

	return false;
}