Отчетность ASP.NET, что, как и когда использовать RDLC

Я новичок в составлении отчетов на asp.net и не могу заставить все наладиться. По сути, я сделал демонстрацию того, что было сказано здесь. Все работало нормально, и он генерировал отчет в моей локальной системе. Но не работал на веб-сервере.

Теперь у меня путаница: в asp.net [VS 2010 - .NET 4.0] есть 2 режима создания отчетов: локальный режим и режим сервера. Локальный режим имеет расширение RDLC, а серверный режим имеет RDL в качестве расширения для файла дизайна отчета, и для поддержки он требует отчетов Sql Server, для которых, с другой стороны, RDLC создается на клиентской машине [это может показаться глупым вопросом, но , это моя машина или мой компьютер, а не веб-сервер, означает, что я не могу развернуть и использовать его на веб-сервере].

Причина путаницы в том, что я загрузил тот же демонстрационный проект на свой веб-хостинг и запустил его. Элемент управления средства просмотра отчетов отображался отлично, и все выглядело нормально, но фактический отчет, который должен был быть отображен, отсутствовал внизу на панели инструментов средства просмотра отчетов. Но в то же время я смог полностью загрузить отчет в форматах PDF, XLS и DOC с фактическими сгенерированными строками и столбцами, что показывает, что отчет был создан (гистограмма также была включена в дизайн rdlc, и он также сгенерирован). Я предполагаю, что это произошло потому, что на веб-сервере не были установлены библиотеки Report Viewer, и он не знал, как визуализировать файл RDLC.

Итак, вот актуальные вопросы:

Правильно ли я полагаю, что отчет можно создать на веб-сервере, если в качестве формата файла отчета используется RDLC? Или мне следует использовать вместо этого RDL?

Если я разверну свое приложение с помощью RDLC (локальный отчет), конечно, на веб-сервере, оно будет работать нормально? Можно ли установить или получить установленную программу просмотра отчетов на веб-сервере

И когда мне следует использовать RDLC и RDL, а когда нет. Предыдущий вопрос Когда использовать RDLC вместо отчетов RDL?., Но Я ищу более простое объяснение в своем сценарии.


person Cyberpks    schedule 29.07.2013    source источник


Ответы (2)


RDLC


  1. Отчеты на стороне клиента поставляются с такими приложениями, как приложение Windows или веб-приложение.
  2. Ограниченная функциональность с точки зрения форматов, в которых может быть экспортирован Отчет.
  3. Обработка и рендеринг данных отчета использует адресное пространство приложения, в котором размещены отчеты, это может быть Windows или Интернет. Это может вызвать проблемы с производительностью, если вы часто будете извлекать огромные отчеты.
  4. Это не требует отдельного экземпляра SQL или лицензии.

RDL


  1. Это отчеты на стороне сервера, отчеты обрабатываются в выделенном серверном процессе, называемом службой SQL Reporting Services, а выходные данные передаются приложениям или конечным пользователям.
  2. Серверная отчетность предназначена для выполнения и масштабирования.
  3. Работает как отдельный процесс / служба и требует лицензии SQL.
  4. Обеспечивает экспорт в несколько форматов, недоступных в RDLC
  5. Серверная отчетность - это расширяемый продукт. Вы можете включить собственные расширения для обработки данных, безопасности или доставки.
  6. Он поддерживает автоматическую доставку по электронной почте и файловую доставку отчетов с использованием подписок из коробки.

Резюме


  1. Рассмотрите возможность создания отчетов на стороне клиента (rdlc), если вы не очень часто собираетесь использовать простые и небольшие отчеты.
  2. Рассмотрите вариант (rdl), если вы хотите настроить выделенную и центральную службу для удовлетворения ваших требований к отчетности для различных пользователей приложений. Его можно расширять, отслеживать, оптимизировать и масштабировать по запросу.
person Ron5504    schedule 29.07.2013

Форматы RDL и RDLC имеют одинаковую схему XML. Однако в файлах RDLC некоторые значения (например, текст запроса) могут быть пустыми, что означает, что они не готовы к немедленной публикации на сервере отчетов. Отсутствующие значения можно ввести, открыв файл RDLC с помощью версии конструктора отчетов SQL Server 2008. (Сначала необходимо переименовать .rdlc в .rdl.)

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

Примечание: элемент управления ReportViewer не содержит никакой логики для подключения к базам данных или выполнения запросов. За счет выделения такой логики ReportViewer стал совместимым со всеми источниками данных, включая источники данных, не относящиеся к базе данных. Однако это означает, что когда файл RDL используется элементом управления ReportViewer, связанная с SQL информация в файле RDL просто игнорируется элементом управления. Основное приложение отвечает за подключение к базам данных, выполнение запросов и предоставление данных элементу управления ReportViewer в форме таблиц данных ADO.NET.

Ссылка: http://forums.asp.net/t/1173578.aspx/1

Также проверьте: http://dinesql.blogspot.com/2010/11/reporting-services-difference-between.html.

person StackTrace    schedule 29.07.2013