Artigo: 875447 - Última revisão: terça-feira, 3 de Abril de 2007 - Revisão: 2.3

Como criar uma aplicação de exemplo que utiliza as APIs de SOAP de serviços de relatório para apresentar um relatório para um formato de ficheiro seleccionado numa página Web

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Reduzir tudo

INTRODUÇÃO

Este artigo passo a passo descreve como criar uma aplicação de Microsoft ASP.NET Web de exemplo que utiliza o Microsoft SQL Server 2000 Reporting Services SOAP API de e Microsoft SQL Server 2005 Reporting Services SOAP API de para efectuar os seguintes procedimentos:
  • Compor um relatório que é implementado num servidor de relatório para um formato de ficheiro suportado, tal como o formato de ficheiro .PDF.
  • Abra o relatório processado numa página Web sem guardar o ficheiro que corresponde ao relatório processado no seu computador.
Nota Para compor o relatório para o formato de ficheiro pedida utilizando a aplicação Web do ASP.NET, o programa que suporte o formato de ficheiro tem de ser instalado no computador. Por exemplo, para ver um relatório que é apresentado para o formato de ficheiro .pdf, o Adobe Acrobat Reader deve ser instalado no computador.

Mais Informação

Pode gerar um relatório utilizando o Reporting Services e pode visualizar o relatório utilizando o Gestor de relatórios. Gestor de relatórios está incluído no Reporting Services. Utilizando o Gestor de relatórios, pode apresentar o relatório de diferentes formatos de ficheiro suportados pelo Reporting Services. Para compor um relatório para um formato de ficheiro específico, siga estes passos:
  1. Inicie o Gestor de relatório.
  2. Localize o relatório no Gestor de relatórios e, em seguida, faça clique sobre o relatório para pré-visualizar o relatório.
  3. Na lista Seleccione um formato , clique no formato que pretende utilizar para compor o relatório e, em seguida, clique em Exportar .
Depois clique em Exportar no Gestor de relatórios, é aberta a caixa de diálogo Transferência de ficheiros . A caixa de diálogo Transferência de ficheiros fornece uma opção para guardar o relatório processado no computador. Mesmo que abra o relatório sem guardar o relatório, é criado um ficheiro que corresponde ao relatório processado no computador.

Se pretender compor um relatório para o formato de ficheiro pedido sem criar o ficheiro que corresponde ao relatório processado no computador, pode utilizar o método Compor na API de SOAP dos serviços de relatório. Para mais informações sobre o método Gerar para SQL Server 2000 Reporting Services, visite o seguinte Web site da Microsoft:
http://msdn2.microsoft.com/en-us/library/aa225827(SQL.80).aspx (http://msdn2.microsoft.com/en-us/library/aa225827(SQL.80).aspx)
Para mais informações sobre o método Gerar para SQL Server 2005 Reporting Services, visite o seguinte Web site da Microsoft:
http://msdn2.microsoft.com/en-us/library/microsoft.wssux.reportingserviceswebservice.rsexecutionservice2005.reportexecutionservice.render.aspx (http://msdn2.microsoft.com/en-us/library/microsoft.wssux.reportingserviceswebservice.rsexecutionservice2005.reportexecutionservice.render.aspx)
Para criar uma aplicação Web do ASP.NET para compor um relatório que é implementado num servidor de relatório para o formato de ficheiro pedido e para abrir o relatório processado numa página Web utilizando as API de SOAP dos serviços de relatório de amostra, siga estes passos.

Nota Esta aplicação de exemplo compõe o relatório de exemplo de vendas da empresa para o formato de ficheiro .PDF. Por este motivo, deve certificar-se de que as vendas da empresa de exemplo relatório é implementado no servidor de relatório na pasta SampleReports. É também pode tornar-se de que um programa como o Adobe Acrobat Reader está instalado no computador antes de executar esta aplicação.

Utilizar o Microsoft Visual Studio .NET 2003 para compor o relatório de exemplo de vendas da empresa que é incluído no SQL Server 2000 Reporting Services ou SQL Server 2005 Reporting Services

  1. Inicie o Microsoft Visual Studio .NET 2003.
  2. No menu ficheiro , clique em Novo e, em seguida, clique em projecto .
  3. Na caixa de diálogo Novo projecto , em Project Types , clique em Visual C# Projects .
  4. Na caixa de diálogo Novo projecto , em modelos , clique em ASP.NET Web Application .
  5. Na caixa localização , escreva http:// ReportServerName / RenderCompanySales e, em seguida, clique em OK para criar o projecto.
  6. Adicione uma referência Web ao serviço ReportService Web. Para o fazer, siga estes passos:
    1. No menu projecto , clique em Adicionar referência Web .
    2. Na caixa de diálogo Adicionar referência Web , escreva http:// ReportServerName /ReportServer/ReportService.asmx na caixa URL e, em seguida, clique em Ir .
    3. Na caixa nome de referência da Web , escreva RSWebReference e, em seguida, clique em Add Reference .
  7. No painel esquerdo, em caixa de ferramentas , clique em Formulários Web e, em seguida, faça duplo clique em botão para adicionar um controlo de botão ao formulário Web.
  8. Defina as propriedades do controlo de botão, utilizando as seguintes informações:
    • (ID) : RenderTest
    • texto : Gerar relatório em PDF Formatar
  9. No menu Ver , clique em código .
  10. Adicione o seguinte código na parte superior da janela de código:
    using RenderCompanySales.RSWebReference;
  11. Adicione o seguinte método como o processador de eventos do evento clique do botão RenderTest no código:
    		private void RenderTest_Click(object sender, System.EventArgs e)
    		{
    			RSWebReference.ReportingService rs = new RSWebReference.ReportingService(); 
    			rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
    
    			Byte[] result; 
    
    			string encoding;
    			string mimetype;
    			ParameterValue[] parametersUsed;
    			Warning[] warnings;
    			string[] streamids;
    
    			result = rs.Render("/SampleReports/Company Sales","PDF",null,null,null,null,null,out encoding,out mimetype,out parametersUsed,out warnings,out streamids); 
    						
    			Response.ClearContent();
    			Response.AppendHeader("content-length", result.Length.ToString());
    			Response.ContentType = "application/pdf";
    			Response.BinaryWrite(result);
    			Response.Flush();
    			Response.Close();
    		}
    
  12. No menu Debug , clique em Iniciar para executar o código.
  13. Na página Web WebForm1 , clique em Gerar o relatório no formato PDF .

Utilizar o Microsoft Visual Studio 2005 para compor o relatório de exemplo de vendas da empresa que está incluído no SQL Server 2005 Reporting Services

  1. Inicie o Microsoft Visual Studio 2005.
  2. No menu ficheiro , clique em Novo e, em seguida, clique em Web Site .
  3. Na caixa de diálogo novo Web Site , clique em ASP.NET Web Site em Visual Studio instalada modelos ,
  4. Clique em HTTP na lista de localização e, em seguida, escreva http:// ReportServerName / RenderCompanySales na caixa junto à lista de localização
  5. Na lista idioma , clique em Visual C# e, em seguida, clique em OK .
  6. Adicione uma referência Web ao serviço ReportService Web. Para o fazer, siga estes passos:
    1. No menu de Web site , clique em Adicionar referência Web .
    2. Na caixa de diálogo Adicionar referência Web , escreva http:// ReportServerName /ReportServer/ReportExecution2005.asmx na caixa URL e, em seguida, clique em Ir .
    3. Na caixa nome de referência da Web , escreva RSWebReference e, em seguida, clique em Add Reference .
  7. No menu Ver , clique em Designer e, em seguida, adicione um controlo de botão ao formulário Web.
  8. Defina as propriedades do botão de controlo, utilizando as seguintes informações:
    • (ID) : RenderTest
    • texto : Gerar relatório em PDF Formatar
  9. No menu Ver , clique em código .
  10. Adicionar a seguinte linha de código na parte superior da janela de código:
    using RSWebReference;
  11. Add the following method as the event handler of the click event for the RenderTest button in your code.
    protected void RenderTest_Click(object sender, EventArgs e)
        {
            ReportExecutionService rs = new ReportExecutionService();
            rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
    
            // Render arguments
            byte[] result = null;
            string reportPath = "/AdventureWorks Sample Reports/Company Sales";
            string format = "PDF";
            string historyID = null;
    
            string encoding;
            string mimeType;
            string extension;
            Warning[] warnings = null;
            string[] streamIDs = null;
    
            ExecutionInfo execInfo = new ExecutionInfo();
            ExecutionHeader execHeader = new ExecutionHeader();
    
            rs.ExecutionHeaderValue = execHeader;
    
            execInfo = rs.LoadReport(reportPath, historyID);
    
            String SessionId = rs.ExecutionHeaderValue.ExecutionID;
    
            result = rs.Render(format, null, out extension, out encoding, out mimeType, out warnings, out streamIDs);
    
            Response.ClearContent();
            Response.AppendHeader("content-length", result.Length.ToString());
            Response.ContentType = "application/pdf";
            Response.BinaryWrite(result);
            Response.Flush();
            Response.Close();
    
        }
  12. No menu Debug , clique em Iniciar a depuração para executar o código.
  13. Na página Web que abre o Visual Studio 2005, clique em Gerar o relatório no formato PDF .

Referências

Para obter mais informações, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
842854  (http://support.microsoft.com/kb/842854/ ) Erros de documentação no tópico ReportingService.Render método, o tópico ReportingService.CreateDataDrivenSubscription método e o tópico ReportingService.CreateReportHistorySnapshot método no Reporting Services Books Online

A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Reporting Services
  • Microsoft SQL Server 2005 Reporting Services
Palavras-chave: 
kbmt kbsql2005rs kbreport kbwebforms kbwebservices kbprogramming kbappdev kbinfo kbhowto KB875447 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 875447  (http://support.microsoft.com/kb/875447/en-us/ )