Службы Reporting Services и элементы управления ReportViewer в среде Visual Studio

Элемент управления ReportViewer — это элемент управления среды Visual Studio, который можно добавить на веб-страницу в проекте приложения ASP.NET или в форму приложения Windows на языке Visual Basic. Этот элемент управления включает возможности обработки и просмотра отчетов непосредственно в приложении. Он также предоставляет интегрированную область конструктора, позволяющую создавать определения клиентских отчетов (RDLC) из любого объекта данных ADO.NET. Полнофункциональный API-интерфейс обеспечивает программный доступ к элементу управления и отчетам, что позволяет настраивать функциональность отчетов во время выполнения.

Хотя элемент управления ReportViewer построен на основе той же технологии отчетов Майкрософт, что и службы Reporting Services, он распространяется, как элемент управление данными среды Visual Studio. Этот элемент управления можно использовать со службами Reporting Services, или как элемент управления внедренными данными, обеспечивающий богатую функциональность отчетов.

Дополнительные сведения об элементе управления ReportViewer см. в разделе «Элементы управления ReportViewer» в документации по среде Visual Studio.

Сводка возможностей

В следующей таблице показано сравнение возможностей элемента управления ReportViewer и служб Reporting Services по обработке отчетов, получению данных, развертыванию и проектированию отчетов. С помощью этих сведений можно выбрать технологию Майкрософт по работе с отчетами, наиболее подходящую для разрабатываемого приложения.

Функциональная возможность

Элементы управления ReportViewer

Службы SQL Server Reporting Services

Обработка отчетов

Обрабатывают отчеты в клиентском приложении (локальный режим) или содержат серверные отчеты, выполняемые на удаленном сервере отчетов служб SQL ServerReporting Services (удаленный режим).

Обрабатывают отчеты на сервере отчетов — веб-службе среднего уровня, выполняемой в службах Internet Information Services (IIS).

Выходные форматы отчетов

GDI для отчетов, выполняемых в приложениях Windows. HTML для отчетов, выполняемых в веб-страницах ASP.NET.

Форматы экспорта включают Microsoft Excel и PDF.

HTML, MHTML, TIFF, PDF, Excel, CSV и XML.

Имеется возможность написания пользовательских выходных форматов.

Функциональные возможности отчетов

Интерактивные и статические отчеты для многомерных, реляционных и визуальных данных.

Можно определять пользовательские сборки, выполняемые в отчете.

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

Функциональные возможности отчетов включают все возможности, включенные в отчеты, выполняемые с помощью элемента управления ReportViewer, плюс поддержку пользовательских элементов управления отчетами, которые можно создавать и выполнять в отчете.

Типы источников данных и получение данных

Обработка на стороне клиента:

привязка непосредственно к таблицам данных ADO.NET и использование экземпляров DataTable, предоставляемых элементу управления. Можно также осуществлять непосредственную привязку к бизнес-объектам. Обработка данных отделена от обработки отчетов. Приложение предоставляет отчету набор строк. Элемент управления выполняет слияние набора строк с отчетом и выводит его в выходном формате.

Обработка на стороне сервера:

Отчет содержит данные из поддерживаемых типов источников данных. Обработка и вывод данных выполняются на сервере отчетов, после чего отчет загружается в элемент управления ReportViewer.

Интегрированная обработка данных и отчетов на сервере отчетов и на удаленных серверах данных.

Модули обработки данных на сервере отчетов определяют поддерживаемые типы источников данных. По умолчанию источники данных включают SQL Server, службы Analysis Services, службы SQL ServerIntegration Services, Oracle, XML и OLE DB.

Имеется возможность создания пользовательских модулей обработки данных для поддержки других типов источников данных.

Параметризация отчетов

Обработка на стороне клиента:

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

Если нужно принимать ввод пользователем параметров запроса или отчета во время выполнения, необходимо в приложении написать код для поддержки этой возможности.

В отличие от отчетов служб Reporting Services, элемент управления ReportViewer, запущенный в локальном режиме, не имеет области ввода параметров, с помощью которой можно передавать параметры для использования в процессе обработки данных. В локальном режиме элементов управления ReportViewer не существует интеграции между обработкой данных и отчетов.

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

Разработка отчетов и интеграция со средой Visual Studio

Создание клиентских файлов определений отчетов (RDLC) в среде Visual Studio. При добавлении шаблона отчета в проект создается файл определения отчета, который добавляется в проект и открывается с помощью интегрированного конструктора отчетов в рабочей области среды Visual Studio.

С помощью мастеров источников данных среды Visual Studio можно предоставлять данные приложению для последующего использования в отчете.

Конструктор отчетов среды Visual Studio не имеет вкладки Предварительный просмотр. Для предварительного просмотра отчета запустите приложение и откройте внедренный в него отчет для предварительного просмотра.

Конструктор отчетов среды Visual Studio интегрирован с окном «Источники данных». При перетаскивании пользователем поля из окна «Источники данных» в отчет конструктор отчетов копирует метаданные об источнике данных в файл определения отчета. Эти метаданные используются элементом управления ReportViewer для автоматического формирования кода привязки данных.

Создание определений отчетов в среде Visual Studio с помощью среды Business Intelligence Development Studio. Среда Business Intelligence Development Studio добавляет шаблоны проекта, характерные для компонентов SQL Server. Для создания отчетов выберите шаблоны «Проект сервера отчетов» или «Мастер проектов сервера отчетов».

Вкладки Данные, Макет и Предварительный просмотр позволяют определить данные, создать макет отчета и открыть отчет для предварительного просмотра в том же рабочем пространстве.

Развертывание и распространение

В приложение можно включать распространяемые элементы управления и файлы RDLC. Определение отчета можно также передавать в виде потока.

Элемент управления ReportViewer в создаваемом и развертываемом приложении содержит отчет в форме веб-страницы.

С помощью панели инструментов ReportViewer можно осуществлять навигацию по странице, печать, поиск и экспортирование содержимого в различные форматы во время выполнения.

Развертывание сервера отчетов служб SQL ServerReporting Services. Определения отчетов хранятся в базе данных сервера отчетов, обрабатываемой на сервере, а просматриваются в приложении на основе обозревателя или в пользовательском приложении.

С помощью панели инструментов отчета можно осуществлять навигацию по странице, печать, поиск и экспортирование содержимого в различные форматы.

Для просмотра отчетов по запросу используются средства просмотра и веб-компоненты SharePoint.

Функции распространения включают доставку отчетов по подписке на адреса электронной почты и в общие папки.

Доступ к сети Интернет

Рекомендуется использовать элемент управления ReportViewer, размещенный на веб-странице, если планируется делать отчеты доступными из веб-приложения, работающего с сетью Интернет.

Элемент управления и отчеты можно встроить в существующее веб-приложение, используя поддерживаемую этим приложением инфраструктуру безопасности.

Сервер отчетов служб Reporting Services можно настроить для доступа через Интернет. В зависимости от требований приложения и пользователей может потребоваться создание нестандартного модуля проверки подлинности, изменение файлов конфигурации и настройка сервера для использования протокола SSL. Дополнительные сведения см. в разделе Планирование развертывания в экстрасети или Интернете.

Функциональные возможности выпуска Enterprise

В элементе управления отсутствуют. Однако элемент управления можно использовать в других приложениях, обеспечивающих функциональные возможности уровня Enterprise.

Элементы управления ReportViewer — идеальное средство внедрения стандартных отчетов в приложения Windows Forms и веб-страницы ASP.NET.

Элементы управления ReportViewer могут содержать отчеты с масштабным развертыванием (развертывание сервера отчетов прозрачно для элемента управления).

Элемент управления можно использовать в пользовательских приложениях, выполняемых в модели развертывания высокого уровня доступности.

Службы Reporting Services поддерживают перечисленные далее функциональные возможности уровня Enterprise.

  • Масштабное развертывание.

  • Обработка отчетов по расписанию и по запросу.

  • Нерегламентированные отчеты, создаваемые по запросу для однократного использования или сохраняемые на сервере.

  • Управляемые данными подписки, направляющие настраиваемый вывод отчета динамическому списку получателей.

  • Средства управления и настройки.

Пользовательская настройка

Пользовательская настройка поддерживается посредством API-интерфейса.

Также можно задавать свойства в отчетах и на панели управления ReportViewer для определения видимости и доступности функциональных возможностей.

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

Свойства можно задавать в отчете, на панели инструментов отчета и на сервере отчетов.

Дополнительная пользовательская настройка поддерживается посредством расширенного API-интерфейса.

Образцы и пошаговые руководства

Выполните поиск фразы Образцы и пошаговые руководства в среде Visual Studio в документации по среде Visual Studio или MSDN.

Сведения об образцах и пошаговых руководствах для служб Reporting Services см. в разделе Инструкции по поиску учебников.

Документация

См. раздел Элементы управления ReportViewer (Visual Studio) в документации по среде Visual Studio или MSDN.

Службы Reporting Services документированы в электронной документации по SQL Server