Pergunta

Este é no SSRS 2008.
Eu criei um relatório com um tablix, embutido no tablix há um sub-relatório. Esta sub-relatório contém uma série de informações (e eu quero dizer muito - é preciso mais do que 45 segundos para carregá-lo).

Eu não quero mostrá-lo, ou para ser mais preciso - para processo / carregar os dados quando o relatório inicialmente executado. Note que eu não quero simplesmente não exibi-lo -., Porque então todos os dados são ainda processados ??em tempo de carregamento inicial
Em vez disso, eu só quero o sub-relatório para ser processado (e os dados puxado para baixo), individualmente, quando eu exibi-lo (por exemplo, clicando em um sinal de + para alterná-la, ou qualquer outra opção como clicar em uma imagem / link, quando se encontravam no mesmo relatório). Eu também não quero abrir o sub-relatório em uma aba diferente ou algo assim ....

Alguém sabe uma solução? Talvez haja um método onLoad, sub-relatório dinâmico ou algo assim?
Eu tentei olhar para o atributo DataElementOutput, mas isso é readOnly ... qualquer outra coisa?

Foi útil?

Solução 2

Assim, como se vê, o problema era na verdade, porque eu tinha o sub-relatório repetido para cada linha no relatório pai. Assim, o sub-relatório foi chamado várias vezes ...
E de acordo com a MS, não há nenhuma maneira de processar dinamicamente subreports individuais. Teve que resolver esta questão, dividindo o sub-relatório (pelo menos as partes de dados-pesado) para uma página separada. : (

Outras dicas

Antes de saltar através de uma série de aros para implementar uma solução alternativa, você já analisou o plano de execução para a consulta que é fornece os dados para o sub-relatório? Se você não tiver, vale a pena do que para ver se o desempenho pode ser melhorada pela adição de um índice de cobertura que irá ajudar o otimizador de consulta para entregar os dados rapidamente.

Espero que isso ajude,

Bill

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top