Reporting Services e controles ReportViewer no Visual Studio 2010

Os controles ReportViewer são os controles de ASP.NET e Windows Forms no Visual Studio 2010 que você pode adicionar a uma página da Web habilitada para Ajax em um site/aplicativo Web ASP.NET e a um formulário em um aplicativo Windows Forms, respectivamente. O controle insere os recursos de processamento e exibição de relatório diretamente em seu aplicativo. Ele também fornece um ambiente de criação integrado para que você possa criar definições de relatório de cliente (.rdlc) usando dados de qualquer objeto de dados ADO.NET. Uma API com todos os recursos fornece acesso programático ao controle e aos relatórios para que você possa configurar a funcionalidade de relatório em tempo de execução. Além disso, o controle AJAX ASP.NET do Visual Studio 2010 introduz um conjunto de API JavaScript criado na biblioteca Microsoft AJAX que permite ao aplicativo de host interagir com o controle ReportViewer usando programação do cliente.

Para saber mais sobre o controle ReportViewer, pesquisa “Controles ReportViewer” na documentação do produto Visual Studio.

Resumo de recursos

A tabela a seguir mostra como os controles ReportViewer são comparáveis ao Reporting Services no processamento de relatórios, recuperação de dados, implantação e design de relatórios. Você pode usar essas informações para determinar qual tecnologia de geração de relatórios da Microsoft é a melhor opção para seu aplicativo.

ObservaçãoObservação

Em modo de processamento remoto, os controles ReportViewer do Visual Studio 2010 oferecem suporte ao SQL Server 2008 Reporting Services ou ao SQL Server 2008 R2 Reporting Services.

Funcionalidade

controles ReportViewer

SQL Server Reporting Services

Processamento de relatório

Modo de processamento local:

Processa relatórios no aplicativo cliente.

Modo de processamento remoto:

Renderiza relatórios de servidor que são processados em um servidor de relatório SQL Server Reporting Services.

Processa relatórios em um servidor de relatório.

Formatos de saída de relatório

Modo de processamento local:

GDI para relatórios executados em aplicativos do Windows. HTML para relatórios executados em páginas da Web ASP.NET.

Os formatos de exportação incluem Excel, PDF e Word.

Modo de processamento remoto:

Os formatos disponíveis dependem das extensões de renderização configuradas no servidor de relatório do SQL Server Reporting Services.

HTML, MHTML, TIFF, PDF, Excel, Word, CSV e XML.

É possível escrever formatos de saída personalizados.

Recursos de relatório

Modo de processamento local:

Relatórios interativos e estáticos para dados multidimensionais, relacionais e visuais.

Você pode definir assemblies personalizados que sejam executados no relatório.

Você pode usar expressões para fornecer formatação condicional e agregados.

Modo de processamento remoto:

Os recursos disponíveis são determinados pelo servidor de relatório do SQL Server Reporting Services.

Os recursos de relatório incluem todos os que são fornecidos nos relatórios executados em um controle ReportViewer em modo de processamento local, além do suporte a itens de relatório personalizados que você pode criar e executar em um relatório.

O SQL Server 2008 R2 Reporting Services oferece suporte a recursos adicionais, como mapas, minigráficos, agregações de agregações e melhorias de processamento e renderização.

Tipos de fonte de dados e recuperação de dados

Modo de processamento local:

Associa diretamente a tabelas de dados ADO.NET e consome instâncias DataTable fornecidas ao controle. Também é possível associar diretamente a objetos comerciais.

Modo de processamento remoto:

Os formatos de fonte de dados disponíveis dependem das extensões de processamento de dados configuradas no servidor de relatório do SQL Server Reporting Services.

Dados integrados e processamento de relatório em um servidor de relatório e em servidores de dados remotos.

As extensões de processamento de dados no servidor de relatório determinam os tipos de fonte de dados com suporte. As fontes de dados padrão incluem SQL Server, Analysis Services, SQL Server Integration Services, Oracle, XML e OLEDB. No SQL Server 2008 R2 Reporting Services, as seguintes fontes de dados também têm suporte: Lista do SQL Server SharePoint, SQL Azure e SQL Server Parallel Data Warehouse.

Extensões de processamento de dados personalizadas podem ser criadas para oferecer suporte a outros tipos de fonte de dados.

Parametrização de relatório

Modo de processamento local:

O suporte interno a parâmetros de relatório fornece filtragem condicional do conjunto de resultados com base em um valor estático.

Em modo de processamento local, o controle ReportViewer não fornece uma área de entrada de parâmetros que possa ser usada para passar valores usados durante o processamento de dados. Não há nenhuma integração entre processamento de dados e de relatório. Se você quiser aceitar a entrada do usuário para parâmetros de consulta ou de relatório em tempo de execução, deverá escrever o código no seu aplicativo para oferecer esse suporte.

Modo de processamento remoto:

O mesmo que no SQL Server Reporting Services.

Os parâmetros de relatório podem ser mapeados a parâmetros de consulta, fornecendo uma maneira de passar valores de parâmetro de relatório para uma consulta em tempo de execução. Uma área de prompt de parâmetro é fornecida por padrão no relatório. As propriedades de parâmetro podem ser definidas no momento da criação e gerenciadas em tempo de execução.

Criação de relatório e integração com o Visual Studio

Modo de processamento local:

Cria arquivos de definição de relatório de cliente (.rdlc) no Visual Studio. A adição de um modelo Relatório em um projeto cria um arquivo de definição de relatório, adiciona o arquivo ao seu projeto e abre um designer de relatórios integrado no espaço de trabalho do Visual Studio. Alternativamente, a adição do modelo Assistente de Relatório ao seu projeto o ajudará a se orientar nas etapas de criação de relatório.

Os assistentes de Fonte de Dados do Visual Studio podem ser usados para fornecer os dados no seu aplicativo que serão usados posteriormente no relatório.

O Designer de Relatórios do Visual Studio não inclui uma guia Visualização. Para visualizar seu relatório, execute o aplicativo e visualize o relatório inserido nele.

O Designer de Relatórios do Visual Studio é integrado à janela Dados do Relatório. Quando um usuário arrasta um campo da janela Dados do Relatório para o relatório, o Designer de Relatórios copia os metadados sobre o conjunto de dados para o arquivo de definição do relatório. Esses metadados são usados pelo controle ReportViewer para gerar código de associação de dados automaticamente.

Modo de processamento remoto:

O mesmo que no SQL Server Reporting Services.

Cria definições de relatório no Visual Studio por meio do Business Intelligence Development Studio. O Business Intelligence Development Studio adiciona modelos de projeto que são específicos dos componentes do SQL Server. Para criar relatórios, escolha um dos modelos de Projeto do Servidor de Relatório ou Assistente de Projeto do Servidor de Relatório.

Uma guia Dados, Layout e Visualização permitem definir dados, criar um layout de relatório e visualizar o relatório no mesmo espaço de trabalho.

Implantação e distribuição

Controles redistribuíveis e arquivos .rdlc podem ser incluídos em seu aplicativo. Nos modos de processamento local e remoto, você também pode passar a definição de relatório como um fluxo.

O ReportViewer hospeda o relatório em um Windows Form ou página da Web em um aplicativo que você cria e implanta.

A barra de ferramentas ReportViewer fornece navegação de página, impressão, pesquisa e formatos de exportação para oferecer suporte às operações em tempo de execução.

Implanta um servidor de relatório do SQL Server Reporting Services. As definições de relatório são armazenadas em um banco de dados do servidor de relatório, processadas em um servidor e exibidas em um aplicativo baseado em navegador ou um aplicativo personalizado.

Uma barra de ferramentas de relatório fornece navegação de página, impressão, pesquisa e formatos de exportação.

Ferramentas de exibição e Web Parts do SharePoint podem ser usadas para exibir relatórios.

Os recursos de distribuição incluem entrega de relatório com base em assinatura para endereços de e-mail e locais de compartilhamento de arquivos.

Acesso à Internet

Um controle ReportViewer hospedado em uma página da Web é recomendado se você quiser tornar os relatórios disponíveis em um aplicativo Web da Internet.

Você pode ajustar o controle e os relatórios a um aplicativo Web existente, usando a infraestrutura de segurança com suporte no seu aplicativo.

É possível configurar um servidor de relatório do Reporting Services para acesso à Internet. Dependendo do aplicativo e dos requisitos de usuário, talvez seja necessário criar uma extensão de autenticação personalizada, modificar arquivos de configuração e configurar o servidor para o protocolo SSL (Secure Sockets Layer). Para obter mais informações, consulte Planejando a implantação de Extranet ou Internet.

Recursos corporativos

Os controles ReportViewer podem hospedar relatórios que estejam em uma implantação de expansão de servidor (a implantação do servidor de relatório é transparente para o controle).

Você pode usar o controle em aplicativos personalizados executados em qualquer modelo de implantação de alta disponibilidade.

O Reporting Services oferece suporte a estes recursos corporativos:

  • Implantação de expansão.

  • Processamento de relatório agendado e sob demanda.

  • Relatórios ad hoc que podem ser criados sob demanda para uma única utilização ou salvos em um servidor.

  • Assinaturas controladas por dados que roteiam a saída do relatório personalizado para uma lista dinâmica de destinatários.

  • Ferramentas de gerenciamento e configuração.

Personalização

A personalização possui suporte através da API.

Você também pode definir as propriedades em relatórios e na barra de ferramentas ReportViewer para determinar a visibilidade e a disponibilidade de recursos.

Extensões podem ser criadas para adicionar suporte para processamento de dados, entrega de relatório, autenticação personalizada e renderização de relatório.

Você pode definir as propriedades no relatório, na barra de ferramentas e no servidor de relatório.

Há suporte para personalizações adicionais através de uma extensa API.

Exemplos e instruções passo a passo

Pesquise Exemplos e instruções passo a passo no Visual Studio em Visual Studio" na documentação de produto do Visual Studio ou no MSDN.

Para obter informações sobre exemplos e instruções passo a passo no Reporting Services, consulte Como localizar tutoriais.

Documentação

Pesquise Controles ReportViewer (Visual Studio) na documentação de produto do Visual Studio ou no MSDN.

O Reporting Services está documentado nos Manuais Online do SQL Server.