Como integrar o Reporting Services ao SharePoint Services
Uma pergunta bastante frequente que eu recebo é sobre a integração do SQL Server Reporting Services com o SharePoint Services (ou SharePoint Server). É possível armazenar seus relatórios .rdl em document libraries do SharePoint e se conectar a um Report Server para que este "renderize" os relatórios. Também é possível utilizar web parts do SharePoint para exibir relatórios armazenados em um Report Server, estando ele integrado ao SharePoint ou não. Esta configuração é bem simples, vamos passar por ela neste artigo.
Passo a Passo
Vou seguir o processo aqui como se não tivesse um Report Server e um SharePoint instalado em seu ambiente. Desta forma, você pode começar a utilizar este recurso imediatamente, mesmo se não utiliza o SharePoint atualmente na sua organização. Os passos para esta configuração se resumem em:
- Instalar e Configurar o SQL Server Reporting Services e aplicar o Service Pack 2
- Instalar o Microsoft .NET Framework 3.0 (requerido pelo SharePoint Services 3.0)
- Instalar o Windows SharePoint Services ou Office SharePoint Server 2007
- Instalar o add-in do Reporting Services para o SharePoint
- Configure a integração.
Por questões de praticidade, não vou entrar nos detalhes passo-a-passo de cada item acima. Ao invés disso, vou dar foco aos pontos chave desta integração. Se você tiver dúvidas em qualquer um dos passos abaixo por favor me avise, eu explico com maiores detalhes.
SQL Server Reporting Services e Service Pack 2
Você não precisa instalar nenhum outro componente do SQL Server 2005 além do Reporting Serivces, nem mesmo o Database Engine, se assim preferir. O banco de dados de configuração do Report Server pode ficar em outro servidor na sua rede. Para isto, basta executar o Reporting Services Configuration para deixar o Report Server no ar. No primeiro instante, configure-o de forma nativa, sem integração com SharePoint.
Após a instalação, aplique o Service Pack 2 do SQL Server 2005. Ele está disponível em https://www.microsoft.com/downloads/details.aspx?FamilyId=d07219b2-1e23-49c8-8f0c-63fa18f26d3a&DisplayLang=en
.NET Framework 3.0
O SharePoint Services 3.0 exige a instalação de componentes do Microsoft .NET Framework 3.0. Basta fazer o download e executar o assistente de instalação. Este pacote tem apenas 2.8 MB e pode ser encontrado em https://www.microsoft.com/downloads/details.aspx?FamilyID=10CC340B-F857-4A14-83F5-25634C3BF043&displaylang=en
Windows SharePoint Services ou Office SharePoint Server 2007
Se você não tiver o Office SharePoint Server 2007 na sua empresa, pode baixar o Windows SharePoint Services gratuitamente. Este segundo não contém todas as funcionalidades do Office SharePoint Server, mas atende aos requisitos de integração com o Reporting Services.
Para fazer o download do SharePoint Services 3.0, visite https://www.microsoft.com/downloads/details.aspx?familyid=D51730B5-48FC-4CA2-B454-8DC2CAF93951&displaylang=en
Add-in do Reporting Services para o SharePoint
Este é o componente de integração entre o Reporting Services e o SharePoint. Ele instala os web parts que são utilizados pelo SharePoint para visualizar relatórios do Reporting Services e a interface de integração. Se você sentir que ao final do assistente de instalação deste componente, em "Removing Temporary Files", o assistente ficar parado por vários minutos, saiba que isto é normal. Esta etapa leva um tempo considerável para concluir.
O add-in está disponível para download em https://www.microsoft.com/downloads/details.aspx?familyid=1E53F882-0C16-4847-B331-132274AE8C84&displaylang=en
Configuração
Tendo instalado todos os componentes necessários, podemos partir para a configuração do ambiente. Vamos aos passos necessários para a configuração
IIS
Quando configuramos o Reporting Services (ou quando o instalamos com opção de configuração padrão), o serviço configura o Report Manager e o Report Server no Default Web Site do IIS, que, por padrão, utiliza a porta 80. Logo depois, quando instalamos o SharePoint Services, o assistente configura o portal do SharePoint em um web site diferente no IIS, porém também configura este web site na porta 80. Como resultado, teremos o Default Web Site parado, já que não podemos ter dois sites configurados na mesma porta TCP. Portanto, o primeiro passo é configurar o Default Web Site (onde o Report Server e o Report Manager são instalados por padrão) com uma porta diferente. Neste exemplo, vamos configurar na porta 8080. A figura abaixo ilustra a configuração dos dois Web Sites.
Para testar a configuração do Report Server, abra um browser e acesse o site https://localhost:8080/ReportServer. A resposta deverá ser como a tela da figura abaixo:
Reporting Services em modo integrado
O próximo passo é configurar o banco de dados do Reporting Services em modo integrado com o SharePoint. Esta configuração cria o banco de dados de metadados do Reporting Services com atributos específicos para a integração e desativa o Report Manager.
- Abra o Reporting Services Configuration tool e clique em Database Setup
- Em Server Mode, clique em Change e depois em Yes
- Em Database Name, digite o nome que preferir para o banco de dados (por exemplo, ReportServer_MOSS). Garanta que o checkbox Create a report server database in SharePoint integrated mode está marcado
- Clique em OK, em Apply e em OK novamente. A janela de configuração deverá estar parecida com a janela da imagem abaixo
Configurar a integração pelo SharePoint
O SharePoint precisa saber qual é o Report Server responsável por "renderizar" relatórios existentes nas document libraries. Para fazer esta configuração, siga os passos abaixo:
Abra o SharePoint 3.0 Central Administration (Start->Administrative Tools)
Clique em Application Management. Aqui você perceberá que tem uma sessão nova chamada Reporting Services, que foi adicionada pelo add-in que já instalamos. Clique em Integration Settings
Em Report Server Web Service URL, digite o endereço para o Report Server, como na figura abaixo. Neste exemplo, utilizei localhost porque o Report Server e o SharePoint estão no mesmo host. No entanto, perceba que esta configuração pode ser feita em servidores diferentes, então aqui você digitaria o hostname do seu Report Server. Selecione também o modo de autenticação e clique em OK
De volta a tela Application Management, clique em Grant Database Access
Clique em OK. O nome do servidor já deve estar configurado nesta tela.
Resultado e conclusão
Após ter concluído esta configuração, vários benefícios e recursos novos ficam disponíveis. Entre eles, você poderá ter arquivos .rdl em uma document libary, por exemplo, e exibir o seu relatório a partir da página onde ele está armazenado. Você pode ainda invocar o Report Builder e editar seus relatórios gerados a partir de modelos (veja a imagem abaixo). Também será possível exibir relatórios presentes em um report server em um dashboard por exemplo.
Comments
Anonymous
June 16, 2008
Opa, Muito bom esse tutorial. Mas infelizmente mesmo depois de instalar o ADD-IN essa nova sessão "Reporting Services" não apareceu no central administration do meu portal. Voce saberia dizer o porque? (Eu to usando WSS3.0 em um servidor (que é o portal) e o Reporting Services está em outro servidor.) Abraços!Anonymous
September 10, 2008
Senhor, nós fizemos a integração exatamente como está no seu tutorial, mas a sua ultima tela ficou diferente da nossa. Aquela tela com as opções do relatorio não aparece as opçoes manager subscription, manager data sources, manager parameters, manager Processing Options, View Report History. Estou procurando como configurar os parametros do usuario nos relatorios. Grato Luis Paulino Nascimento lpaulino@confepar.com.br l.paulino.n@hotmail.comAnonymous
January 05, 2009
The comment has been removedAnonymous
February 04, 2009
The comment has been removedAnonymous
February 19, 2009
Para que apareça as opções da ultima tela, temos que habilitar a integração com o Reporting Service, para isso vá em "Ações do Site", Depois em "Definições do Site", nas opções de "Administração do Conjunto de Sites" selecione "Recursos do Conjunto do Site" e ativar a integração com o Reporting Service.Anonymous
June 17, 2009
Pericles, bom dia! Nesta integração, quais os principais benefícios que iremos ganhar ao invés de utilizarmos o site padrão que o SSRS cria no IIS do próprio servidor de SQL? Você pode detalhar as vantagens? Obrigado. Meu e-mail: mabotega@hotmail.com