Usuário com melhor resposta
Uso de dois relatórios dentro de outro usando subreport

Pergunta
-
Fiz alguns testes onde tenho 2 relatórios dentro de outro, principal e os exibo usando parâmetros do relatório.
Notei atraves do SQL profiler que ambos os relatórios são executados independente de qual opção eu seleciono no combo, se é o relatório A ou B.
Existe alguma forma de evitar que o dataset do relatório ou ainda melhor, todo o relatório contido dentro de um subreport em um principal seja executado apenas quando eu fizer alguma ação ?
Respostas
-
Spitzmann,
Se não estou enganado, o Reporting Services funciona de acordo com a maioria dos geradores de relatório, quando o relatório principal é carregado todos os elementos e componentes existentes neste relatório são carregados também.
Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA- Marcado como Resposta spitzmann terça-feira, 31 de março de 2009 01:04
-
Bom dia Spitzman,
Como Junior falou, todos os 'top level' subrelatorios serão processados. Imagino que você está escondendo seu relatório através da expressão hidden. Uma forma de evitar que a query do subrelatorio nao seja executada é criar um query parameter no seu subreport que seria passado pelo report pai indicando se esse será executado ou não.
Outra forma seria adicionar um dataregion dummy para cada subreport no seu master report, e filtrar esse dataregion que contem os subeports. Ao fazer isso a instancia que contem o subreport nao sera criada e portanto o relatorio nao sera executado, dessa forma voce nao precisaria alterar os subreports.
Att
Boreki
http://www.boreki.eng.br- Sugerido como Resposta Boreki [MSFT]Microsoft employee quinta-feira, 26 de março de 2009 01:03
- Marcado como Resposta spitzmann terça-feira, 31 de março de 2009 01:04
Todas as Respostas
-
Spitzmann,
Se não estou enganado, o Reporting Services funciona de acordo com a maioria dos geradores de relatório, quando o relatório principal é carregado todos os elementos e componentes existentes neste relatório são carregados também.
Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA- Marcado como Resposta spitzmann terça-feira, 31 de março de 2009 01:04
-
Bom dia Spitzman,
Como Junior falou, todos os 'top level' subrelatorios serão processados. Imagino que você está escondendo seu relatório através da expressão hidden. Uma forma de evitar que a query do subrelatorio nao seja executada é criar um query parameter no seu subreport que seria passado pelo report pai indicando se esse será executado ou não.
Outra forma seria adicionar um dataregion dummy para cada subreport no seu master report, e filtrar esse dataregion que contem os subeports. Ao fazer isso a instancia que contem o subreport nao sera criada e portanto o relatorio nao sera executado, dessa forma voce nao precisaria alterar os subreports.
Att
Boreki
http://www.boreki.eng.br- Sugerido como Resposta Boreki [MSFT]Microsoft employee quinta-feira, 26 de março de 2009 01:03
- Marcado como Resposta spitzmann terça-feira, 31 de março de 2009 01:04