Функции отчета

Службы Microsoft Reporting Services предлагают специальные встроенные агрегатные функции, которые можно использовать в выражениях вместо того, чтобы определять агрегаты в диалоговом окне «Поля сводки» SunSystems Reporting Services. К этим функциям относятся:

  • стандартные агрегатные функции, например Sum, Min, Max и Count
  • агрегатные функции выполнения, например RowNumber и RunningValue.

Стандартные агрегатные функции

Ниже приведены стандартные агрегатные функции служб Microsoft Reporting Services:
Функция Microsoft Reporting Services Описание
Avg Возвращает среднее всех значений для указанного выражения, отличных от NULL.
Count Возвращает количество значений для указанного выражения.
CountDistinct Возвращает количество различных значений для указанного выражения.
CountRows Возвращает количество строк в указанной области.
First Возвращает первое значение для указанного выражения.
Last Возвращает последнее значение для указанного выражения.
Max Возвращает максимальное значение из всех значений для указанного выражения, отличных от NULL.
Min Возвращает минимальное значение из всех значений для указанного выражения, отличных от NULL.
StDev Возвращает стандартное отклонение для всех значений указанного выражения, отличных от NULL.
StDevP Возвращает среднеквадратичное отклонение генеральной совокупности значений для указанного выражения, отличных от NULL.
Sum Возвращает сумму значений для указанного выражения.
Var Возвращает дисперсию для всех значений указанного выражения, отличных от NULL.
VarP Возвращает дисперсию генеральной совокупности для всех значений указанного выражения, отличных от NULL.

Агрегатные функции выполнения

Можно использовать в выражениях любую из перечисленных ниже агрегатных функций выполнения:

  • RowNumber;
  • RunningValue;
  • Предыдущая;
  • InScope;
  • Level.

Агрегатные функции выполнения, например RowNumber и RunningValue, используют показанный ниже синтаксис:

=AggregateFunction(Fields!fieldname.Value[, Scope])

Параметр Scope (область) является необязательным. Если его не задавать, то будет использоваться текущая область.

Пример 1.

=Avg(Fields!LedgerLine_baseAmount_amount.Value,"LedgerLine_accountCode")

Пример 2.

=Avg(Fields!LedgerLine_baseAmount_amount.Value)
Агрегатная функция выполнения Описание
RowNumber(Scope) Возвращает текущий номер строки в указанной области.
RunningValue(Expression, Function, Scope) Возвращает текущее статистическое значение для выражения, определенного функцией и указанной областью.
Previous(Field Expression) Текущее значение сбрасывается для каждого нового экземпляра области данных, задаваемой параметром Scope.
InScope(Scope) Возвращает логическое значение.
Level(Scope) Возвращает значение уровня группы в рекурсивной иерархии. Параметр Scope можно опустить.