Функции построителя отчетов — функция Sum в отчете с разбивкой на страницы (построитель отчетов)

Применимо: Microsoft построитель отчетов (SSRS) Power BI построитель отчетов конструктор отчетов в SQL Server Data Tools

Возвращает сумму всех числовых значений, отличных от NULL, заданных выражением, вычисляемым для данной области, в отчете с разбивкой на страницы.

Примечание.

Создать и изменить определение для отчета на страницу (RDL-файл) можно с помощью построителя отчетов (Майкрософт), построителя отчетов Power BI и конструктора отчетов в SQL Server Data Tools.

Синтаксис

  
Sum(expression, scope, recursive)  

Параметры

выражение
(Integer или Float) Выражение, к которому применяется статистическая обработка.

область
(String) необязательно. Имя набора данных, группы или области данных, содержащих элементы отчета, к которым применяется агрегатная функция. Если аргумент scope не задан, используется текущая область.

рекурсивные
(Перечислимый тип) Необязательно. Simple (по умолчанию) или RdlRecursive. Указывает, нужно ли выполнять статистическую обработку рекурсивно.

Тип возвращаемых данных

Возвращает значение типа Decimal для десятичных выражений и Double — для всех остальных выражений.

Замечания

Данные в наборе, указанном в выражении, должны иметь один и тот же тип. Чтобы преобразовать данные, имеющие разные числовые типы, к одному и тому же типу, используйте функции преобразования, такие как CInt, CDbl или CDec. Дополнительные сведения см. в разделе Функции преобразования типов.

Значение scope должно быть строковой константой и не может быть выражением. Для внешних агрегатов и агрегатов, в которых не задаются другие агрегаты, параметр scope должен ссылаться не текущую область или включающую область. Для агрегатов, содержащих агрегаты, во вложенных агрегатах может указываться дочерняя область.

Expression может содержать вызовы вложенных агрегатных функций со следующими условиями и исключениями.

  • ПараметрScope для вложенных агрегатов должен совпадать с областью внешнего агрегата или входить в нее. Одна область из всех уникальных областей в выражении должна быть дочерней относительно всех других областей.

  • ПараметрScope для вложенных агрегатов не может быть именем набора данных.

  • Expression не может содержать функции First, Last, Previousи RunningValue .

  • Expression не может содержать вложенные агрегаты, в которых указан параметр recursive.

Дополнительные сведения см. в разделах Справочник по агрегатным функциям (построитель отчетов и SSRS) и Область выражения для суммирования, агрегатных функций и встроенных коллекций (построитель отчетов и SSRS).

Дополнительные сведения о рекурсивных статистических выражениях см. в разделе Создание групп рекурсивной иерархии (построитель отчетов и SSRS).

Примеры

А. Сумма итогов по элементам строк

Следующие 2 примера кода определяют общую сумму итогов элементов строки в группе Order или области данных.

=Sum(Fields!LineTotal.Value, "Order")  
' or   
=Sum(CDbl(Fields!LineTotal.Value), "Order")  

B. Максимальное значение из всех вложенных регионов

В матричной области данных с вложенными группами строк «Категория» и «Подкатегория» и вложенными группами столбцов «Год» и «Квартал» в ячейке, входящей в самую внутреннюю группу строк или столбцов, следующее выражение используется для вычисления максимального значения для всех кварталов для всех подкатегорий.

=Max(Sum(Fields!Sales.Value))  

См. также

Использование выражений в отчетах (построитель отчетов и SSRS)
Примеры выражений (построитель отчетов и службы SSRS)
Типы данных в выражениях (построитель отчетов и службы SSRS)
Область выражений для итогов, агрегатов и встроенных коллекций (построитель отчетов и SSRS)