Esse é um problema que se tornou recorrente comigo na utilização do report services com SQL Server 2008. No inicio não há causa aparente, mas perdendo algum tempo de investigação, você consegue descobrir o motivo. Mas essa dica rápida é para que você não perca esse tempo de pesquisa, que geralmente te leva a dezenas de paginas inúteis antes de achar a solução.

Se você produz relatórios para serem exibidos através do report viewer, usando o report services, você pode se deparar com um erro 404 de pagina não encontrada, dentro do frame do relatório. O sintoma clássico desse problema é que ele não acontece enquanto você estiver rodando a solução em modo debug na sua maquina. Esse problema só ocorre quando a pagina é colocada no IIS 7.
Antes de começar a descrever a solução, verifique se existe essa entrada no seu web.config, na seção de handler:
<add name=”Reserved-ReportViewerWebControl-axd” path=”Reserved.ReportViewerWebControl.axd” verb=”*” type=”Microsoft.Reporting.WebForms.HttpHandler” resourceType=”Unspecified” />
Toda vez que você adiciona o controle report viewer em alguma pagina do seu projeto, essa entrada deve ser preenchida automaticamente no web.config.
O restante da solução é bem simples.
Selecione o Website com problema no gerenciador do IIS 7, clique no icone Handler Mappings
- No painel da lateral direita clique em “Add Managed Handler”
- Preencha o box com os seguintes valores:
- Request path: Reserved.ReportViewerWebControl.axd
- Type: Microsoft.Reporting.WebForms.HttpHandler
- Name: Reserved-ReportViewerWebControl-axd
Então basta clicar OK e rodar o relatório novamente



