none
ssrs - Parametro independente - nao executar outras querys ao renderizar a tela. RRS feed

  • Pergunta

  •  

    Prezados;

     

    Possuo dois parametros de data (inicial e final), e um outro parametro multi-valorado, ambos independentes.

    O problema é que, quando altero este parametro de data, a query do parametro multi-valorado é sempre executada.

     

    Generalizando...,  qualquer mudança em algum parametro, faz com que todas as querys sejam executadas, isto deixa o relatorio uma carroça.

     

    Como isolo um parametro? sem o relatorio ter que rodar todas as querys quando um parametro é alterado?

     

    Obrigado;

     

    segunda-feira, 12 de janeiro de 2009 16:00

Respostas

  • Santanera,

     

    Agora eu consegui entender um pouco mais, realmente esta é um procedimento padrão do Reporting Services, é como se fosse uma atualização da uma página Web, dependendo da forma que a página foi desenvolvida, quando realizamos a atualização, a página todo é reprocessada.

     

     

    • Marcado como Resposta Richard Juhasz quarta-feira, 27 de fevereiro de 2013 17:42
    quarta-feira, 14 de janeiro de 2009 11:44

Todas as Respostas

  • Santanera,

     

    Nas propriedades do seu parâmetro, deixa configurado para que ele aceite valores nulos.

     

    segunda-feira, 12 de janeiro de 2009 18:08
  •  

    Obrigado pela resposta Galvao;

     

    Fiz o teste marcando o "allow null value", mesmo assim, é verificado no profile do sqlsever que o report roda todas as querys, ao invés de se limitar somente na query do parametro acessado. 

     

     

     

    segunda-feira, 12 de janeiro de 2009 19:14
  • Santanera,

     

    Todas estas querys estão no mesmo dataset?

    terça-feira, 13 de janeiro de 2009 10:08
  • Bom dia Galvão;

     

    Não.

    Cada query é um dataset diferente.

     

    terça-feira, 13 de janeiro de 2009 14:18
  • Santanera,

     

    Certo, cada query em um dataset!!!

     

    Cada query possuiu um parâmetro?

    terça-feira, 13 de janeiro de 2009 15:40
  • Galvão;

     

    Tenho os seguintes filtros:

    ===================

    * Data inicial da venda

    * Data Final da venda

    * Regiao (multi-valorado)

    * Clientes (multi-valorado)

     

    Tenho as seguintes query's:

    ====================

    * ds_regioes(nao tem parametro),

    * ds_Clientes(parametro que filtra a regiao)

    * ds_Principal(query principal que possui o parametro de data, regioes e clientes)

     

    PROBLEMA: Ao mudar o filtro de data, as outras querys são executadas, sendo que não existe nenhuma relação entre o parametro de data e as querys ds_regioes e ds_clientes.

     

     

    Obrigado,

    terça-feira, 13 de janeiro de 2009 17:27
  • Santanera,

     

    Estas querys podem não ter relação, mas estão sendo utilizadas no relatório?

     

    terça-feira, 13 de janeiro de 2009 18:20
  • Galvao;

     

    Somente o dataset ds_princial é utilizado no relatorio.

     

    Obrigado;

    terça-feira, 13 de janeiro de 2009 18:39
  • Santanera,

     

    Se somente o Dataset principal é executado, e as outras querys não estão relacionadas a esta dataset, meu amigo não consigo entender o que pode estar acontecendo.

     

    terça-feira, 13 de janeiro de 2009 19:14
  • Galvao;

     

    De qualquer forma, valeu pela força !

     

     

     

     

    terça-feira, 13 de janeiro de 2009 19:26
  • Minha Dúvida é a seguinte:

     

    Cada uma das queries que é executada traz as opções de cada um dos filtros. Assim, toda vez que eu mudo algum parâmertro, todas essas queries são executadas novamente. Se isso fosse uma aplicação asp.net pura, o problema seria algo parecido com preencher o dataset sem verificar se é postback ou não. O que eu queria é que ao se alterar algum parâmetro, que o Reporting Services não precisasse preencher todas as opções de cada filtro novamente. Seria algo parecido como utilizar o ViewState dos dados já recuperados.

     

    Pense em um relatorio que tem 2 filtros, que são 2 combo-box. o conteudo dos combo-box é retornado atraves de queries distintas. No relatorio, toda vez que eu seleciono um item de um dos combos, o reporting services dá postback e executa as queries que preenchem ambos os combos, deixando a aplicação lenta e não utilizando o viewstate.

     

     

    Será que isso é possível mudar isso?

    terça-feira, 13 de janeiro de 2009 21:31
  • Santanera,

     

    Agora eu consegui entender um pouco mais, realmente esta é um procedimento padrão do Reporting Services, é como se fosse uma atualização da uma página Web, dependendo da forma que a página foi desenvolvida, quando realizamos a atualização, a página todo é reprocessada.

     

     

    • Marcado como Resposta Richard Juhasz quarta-feira, 27 de fevereiro de 2013 17:42
    quarta-feira, 14 de janeiro de 2009 11:44