Функция CountDistinct (службы Reporting Services)
Возвращает количество всех уникальных значений, отличных от NULL, указанных в выражении и вычисленных в контексте заданной области.
Синтаксис
CountDistinct(expression, scope, recursive)
Параметры
expression
(Variant) Выражение для выполнения статистической обработки. Выражение не может содержать статистические функции.scope
(String) Необязательный. Имя набора данных, группы или области данных, содержащих элементы отчета, к которым применяется статистическая функция. Если аргумент scope не указан, используется текущая область. Дополнительные сведения см. в разделах Использование встроенных функций отчета и статистических функций в выражениях (службы Reporting Services) и Работа с выражениями отчетов.recursive
(Перечислимый тип) Необязательный. Simple (по умолчанию) или RdlRecursive. Указывает, следует ли выполнять статистическую обработку рекурсивно. Дополнительные сведения см. в разделе Создание групп рекурсивной иерархии (службы Reporting Services).
Тип возвращаемых данных
Возвращает тип Integer.
Замечания
Значение параметра scope не может быть выражением и должно ссылаться на текущую или вмещающую область.
Пример
В приведенном ниже примере кода показано выражение, вычисляющее количество уникальных значений Size, отличных от NULL, для области по умолчанию и области родительской группы. Выражение добавляется в ячейку строки, принадлежащей дочерней группе GroupbySubcategory. Родительской группой является GroupbyCategory. Выражение отображает результаты для группы GroupbySubcategory (область по умолчанию) и затем для группы GroupbyCategory (область родительской группы).
Примечание |
---|
Выражения не должны содержать действительные возвраты каретки и разрывы строк; они включаются в пример кода для поддержки модулей подготовки отчетов. При копировании следующего примера удалите возвраты каретки изо всех строк. |
="Distinct count (Subcategory): " & CountDistinct(Fields!Size.Value) &
"Distinct count (Category): " & CountDistinct(Fields!Size.Value,"GroupbyCategory")