none
Problema ao exportar Rel. para excel com Reporviewer RRS feed

  • Pergunta

  •    Olá pessoal.

       Tenho um relatório e exporto para .pdf sem nenhum problema. Porém ao exportar para excel retorna o erro abaixo:

    "Object reference not set to an instance of an object."

      Não entendo o seguinte: o código que utilizo é uma cópia de outra tela, e nessa outra tela exporta normalmente para excel. Só na minha tela que esta dando erro.

    :-/


    “Caso esta resposta tenha ajudado a solucionar sua dúvida, favor clicar em “Marcar como Resposta” para beneficiar outros membros da comunidade que estejam lendo este thread”.

    quarta-feira, 25 de julho de 2012 14:01

Todas as Respostas

  • vc tem um código que exporta para excel ou usa o do prórprio reportviewer ?

    Junior

    quarta-feira, 25 de julho de 2012 14:33
  •   Olá Junior.

      Utilizo o seguinte código para exportar para excel:

    Dim reportPath As String = AppDomain.CurrentDomain.BaseDirectory & "Rels/Rel.rdlc"
    
    Dim rView As ReportViewer = New ReportViewer()
    
    rView.LocalReport.DataSources.Add(New ReportDataSource("DatasetRel", dtDados))
    rView.LocalReport.ReportPath = reportPath
    
    .
    . 'PAssagem de parâmetros
    .
    
      Dim warn() As Warning = Nothing
      Dim streamids() As String = Nothing
      Dim mimeType As String = "application/excel"
      Dim encoding As String = String.Empty
      Dim extension As String = String.Empty
      Dim byteViewer() As Byte
    
      byteViewer = rView.LocalReport.Render("excel", Nothing, mimeType, encoding, extension, streamids, warn)
      
      Dim pdfPath As String = AppDomain.CurrentDomain.BaseDirectory & "Rels/Rel.xls"
    
      Dim pdfFile As New System.IO.FileStream(pdfPath, System.IO.FileMode.Create)
                pdfFile.Write(byteViewer, 0, byteViewer.Length)
                pdfFile.Close()
                '
                Response.Buffer = True
                Response.Clear()
                Response.ContentType = "application/excel"
                Response.AddHeader("content-disposition", "inline; filename=ReportName.xls")
    
                Response.BinaryWrite(byteViewer)
                Response.Flush()
                Response.End()
    
                Response.Redirect("../Rels/Rel.xls")
    
    

       Agradeço a ajuda.


    “Caso esta resposta tenha ajudado a solucionar sua dúvida, favor clicar em “Marcar como Resposta” para beneficiar outros membros da comunidade que estejam lendo este thread”.

    quarta-feira, 25 de julho de 2012 15:03
  •   O erro esta sendo estampado na hora que ele acessa a função ...Render:

    byteViewer = rView.LocalReport.Render("excel", Nothing, mimeType, encoding, extension, streamids, warn)

       O estranho que pdf funciona normalmente!

    :/


    “Caso esta resposta tenha ajudado a solucionar sua dúvida, favor clicar em “Marcar como Resposta” para beneficiar outros membros da comunidade que estejam lendo este thread”.

    quarta-feira, 25 de julho de 2012 19:45