none
Report Viewer deixando site lento. RRS feed

  • Pergunta

  • Olá,

    Meu problema é o seguinte: Estou utilizando o report viewer para gerar os relatorios no meu site asp net. Está tudo certo até que eu abra qualquer relatório... ele até mostra este relatorio perfeitamente, mas quando fecho o relatório o site fica muito lento não abre mais nada, nem páginas normais. Alguém sabe o que pode ser?

    segunda-feira, 3 de novembro de 2014 18:48

Respostas

  • Eu faço parecido

    Está em C#

    List<ReportParameter> parametros = new List<ReportParameter>(); parametros.Add(new ReportParameter("usuario", usuario)); parametros.Add(new ReportParameter("ano", ano)); parametros.Add(new ReportParameter("mes", mes)); parametros.Add(new ReportParameter("nomemes", nomemes));

    reportViewer1.LocalReport.SetParameters(parametros);



    Junior

    • Sugerido como Resposta Ricardo Barbosa Cortes terça-feira, 4 de novembro de 2014 15:50
    • Marcado como Resposta Ricardo Barbosa Cortes terça-feira, 4 de novembro de 2014 17:27
    • Não Marcado como Resposta Deco Rosa sexta-feira, 7 de novembro de 2014 18:55
    • Marcado como Resposta Deco Rosa sexta-feira, 7 de novembro de 2014 18:55
    terça-feira, 4 de novembro de 2014 14:42
  • Provavelmente deve estar entrando em loop quando você coloca um parâmetro, veja esse artigo:

    http://www.oficinadanet.com.br/artigo/asp.net/incluir-imagem-no-report-viewer-com-caminho-gravado-no-banco

    Especificamente essa parte:
    "Como estamos alterando os valores de parâmetro, o ReportViewer é avisado que tem de reiniciar o processamento do relatório. Efetivamente, ele informa ao visualizador para retornar à etapa “a”(colocar o indicador “Loading” no navegador e reiniciar o processamento do relatório). Se o relatório fizer isso durante cada postback, o Report nunca chegará à etapa “b”. Ele só vai ficar em um loop infinito."

    veja aqui uma solução:

    https://social.msdn.microsoft.com/Forums/pt-BR/b73040e6-d88a-40e7-9245-51652ab4a090/reportviewer-no-carrega
    • Editado Mr. GMSOFT terça-feira, 4 de novembro de 2014 14:43
    • Sugerido como Resposta Mr. GMSOFT terça-feira, 4 de novembro de 2014 14:59
    • Marcado como Resposta Ricardo Barbosa Cortes terça-feira, 4 de novembro de 2014 17:27
    terça-feira, 4 de novembro de 2014 14:41
  • Acho que em vb.net é assim

    Dim parametros As List(Of ReportParameter) = New List(Of ReportParameter)
    parametros.Add(New ReportParameter("usuario", usuario))
    parametros.Add(New ReportParameter("ano", ano))
    parametros.Add(New ReportParameter("mes", mes))
    parametros.Add(New ReportParameter("nomemes", nomemes))
    reportViewer1.LocalReport.SetParameters(parametros)


    Junior

    terça-feira, 4 de novembro de 2014 15:00
  • Fala Júnior!!!

    Cara descobri o problema e vou repassar para quem precisar. Pesquisando ainda mais, descobri que o problema só acontecia se tivesse Debug=false no meu web.config. Quando o Debug estava setado para true não acontecia problema algum. Estranho não é? Então falei com meu amigo Google e ele me passou este link:

    http://stackoverflow.com/questions/20253857/compilation-debug-false-is-killing-my-asp-net-site

    Abraço obrigado pela ajuda!

    Deco Rosa



    • Marcado como Resposta Deco Rosa sexta-feira, 7 de novembro de 2014 18:53
    • Não Marcado como Resposta Deco Rosa sexta-feira, 7 de novembro de 2014 18:53
    • Marcado como Resposta Deco Rosa sexta-feira, 7 de novembro de 2014 18:54
    • Editado Deco Rosa sexta-feira, 7 de novembro de 2014 18:56
    sexta-feira, 7 de novembro de 2014 18:53

Todas as Respostas

  • Vc já debugou para ver o que está sendo feito depois qdo vc fecha o relatorio ?

    Deco eu faço o seguinte, todos meus relatórios eu abro em um pop-up e sempre mostro em pdf, tive alguns problemas nos navegadores qdo eu exibia pelo report viewer por isso sempre exibo em pdf, não tive mais problemas.


    Junior

    segunda-feira, 3 de novembro de 2014 19:02
  • Olá Júnior

    Os relatórios estão sendo exibidos em PDF já. Percebi que isso acontece só com relatórios com datasets. Criei um relatório simples com texto estático e aí o problema não ocorre, já se form um relatório real com dados do banco de dados (Mysql) acontece o problema. Será que pode ser algum conflito com as DLLs do Mysql?

    segunda-feira, 3 de novembro de 2014 23:33
  • Deco qdo vc finaliza sua consulta vc dá um dispose na conexão com o banco e no Dataset ?

    Pode ser isso, infelizmente nunca usei o mysql uso sempre sql server e nunca tive problemas.


    Junior

    terça-feira, 4 de novembro de 2014 12:35
  • Junior,

    Fiz novos teste agora pela manhã e constatei que na verdade o problema só ocorre quando o relatório possui parâmetros. Se eu setar algum parâmetro para o relatório acontece o problema e o site fica muito lento, caso contrário não dá problema.  Veja como seto o parâmetro:

    Dim par As ReportParameter = New ReportParameter("nome_camp", CStr(Session("nome_camp")))
            ReportViewer1.LocalReport.SetParameters(par)
    Uso o Report Viewer 11. Será que há algum bug?

    terça-feira, 4 de novembro de 2014 14:22
  • Provavelmente deve estar entrando em loop quando você coloca um parâmetro, veja esse artigo:

    http://www.oficinadanet.com.br/artigo/asp.net/incluir-imagem-no-report-viewer-com-caminho-gravado-no-banco

    Especificamente essa parte:
    "Como estamos alterando os valores de parâmetro, o ReportViewer é avisado que tem de reiniciar o processamento do relatório. Efetivamente, ele informa ao visualizador para retornar à etapa “a”(colocar o indicador “Loading” no navegador e reiniciar o processamento do relatório). Se o relatório fizer isso durante cada postback, o Report nunca chegará à etapa “b”. Ele só vai ficar em um loop infinito."

    veja aqui uma solução:

    https://social.msdn.microsoft.com/Forums/pt-BR/b73040e6-d88a-40e7-9245-51652ab4a090/reportviewer-no-carrega
    • Editado Mr. GMSOFT terça-feira, 4 de novembro de 2014 14:43
    • Sugerido como Resposta Mr. GMSOFT terça-feira, 4 de novembro de 2014 14:59
    • Marcado como Resposta Ricardo Barbosa Cortes terça-feira, 4 de novembro de 2014 17:27
    terça-feira, 4 de novembro de 2014 14:41
  • Eu faço parecido

    Está em C#

    List<ReportParameter> parametros = new List<ReportParameter>(); parametros.Add(new ReportParameter("usuario", usuario)); parametros.Add(new ReportParameter("ano", ano)); parametros.Add(new ReportParameter("mes", mes)); parametros.Add(new ReportParameter("nomemes", nomemes));

    reportViewer1.LocalReport.SetParameters(parametros);



    Junior

    • Sugerido como Resposta Ricardo Barbosa Cortes terça-feira, 4 de novembro de 2014 15:50
    • Marcado como Resposta Ricardo Barbosa Cortes terça-feira, 4 de novembro de 2014 17:27
    • Não Marcado como Resposta Deco Rosa sexta-feira, 7 de novembro de 2014 18:55
    • Marcado como Resposta Deco Rosa sexta-feira, 7 de novembro de 2014 18:55
    terça-feira, 4 de novembro de 2014 14:42
  • Acho que em vb.net é assim

    Dim parametros As List(Of ReportParameter) = New List(Of ReportParameter)
    parametros.Add(New ReportParameter("usuario", usuario))
    parametros.Add(New ReportParameter("ano", ano))
    parametros.Add(New ReportParameter("mes", mes))
    parametros.Add(New ReportParameter("nomemes", nomemes))
    reportViewer1.LocalReport.SetParameters(parametros)


    Junior

    terça-feira, 4 de novembro de 2014 15:00
  • Cara, nada adianta! Setei o parâmetro como você disse e não adianta, depois que fecho o relatório o site trava. Não sei mais o que fazer.
    terça-feira, 4 de novembro de 2014 17:37
  • Você leu o artigo que postei? é o mesmo problema que o seu, como falei anteriormente quando esta passando o parâmetro o Crystal entra em loop, vê ai acima
    terça-feira, 4 de novembro de 2014 17:40
  • Deixa eu explicar certinho, tenho uma página que mostra dados para o cliente, nesta página tem um botão "imprimir" que chama o report viewer, aí eu passo alguns parâmetros para este relatório. O relatório abre em PDF em uma nova guia do navegador, até aí tudo certo. Quando eu fecho este relatório qualquer requisição que eu faça ao site demora uma eternidade. Percebi que isso só acontece se algum desses parâmetros forem "usados" no relatório ou seja, se houver alguma caixa de texto que exiba este parâmetro. Isso não é estranho?
    terça-feira, 4 de novembro de 2014 18:15
  • O Crystal entrou em loop eu entendi sua situação, veja na parte em negrito:

    "Como estamos alterando os valores de parâmetro, o ReportViewer é avisado que tem de reiniciar o processamento do relatório. Efetivamente, ele informa ao visualizador para retornar à etapa “a”(colocar o indicador “Loading” no navegador e reiniciar o processamento do relatório). Se o relatório fizer isso durante cada postback, o Report nunca chegará à etapa “b”. Ele só vai ficar em um loop infinito."


    https://social.msdn.microsoft.com/Forums/pt-BR/b73040e6-d88a-40e7-9245-51652ab4a090/reportviewer-no-carrega
    • Editado Mr. GMSOFT terça-feira, 4 de novembro de 2014 18:34
    terça-feira, 4 de novembro de 2014 18:29
  • Fala Júnior!!!

    Cara descobri o problema e vou repassar para quem precisar. Pesquisando ainda mais, descobri que o problema só acontecia se tivesse Debug=false no meu web.config. Quando o Debug estava setado para true não acontecia problema algum. Estranho não é? Então falei com meu amigo Google e ele me passou este link:

    http://stackoverflow.com/questions/20253857/compilation-debug-false-is-killing-my-asp-net-site

    Abraço obrigado pela ajuda!

    Deco Rosa



    • Marcado como Resposta Deco Rosa sexta-feira, 7 de novembro de 2014 18:53
    • Não Marcado como Resposta Deco Rosa sexta-feira, 7 de novembro de 2014 18:53
    • Marcado como Resposta Deco Rosa sexta-feira, 7 de novembro de 2014 18:54
    • Editado Deco Rosa sexta-feira, 7 de novembro de 2014 18:56
    sexta-feira, 7 de novembro de 2014 18:53