none
Exemplos e maneiras de filtros de relatórios RRS feed

  • Pergunta

  • Ola pessoal gostaria de trocar experiencia no que se refere a relatorios no asp.net. Todo sistema que tem relatorios vc pode filtrar informações selecionar diferentes opcoes enfim o que gostaria de saber o seguinte qual a melhor maneira disto ser feito? No meu caso gosto muito de usar stored procedures para fazer o arroz com feijão do sistema e os relatorios em asp.net precisam de um datasource para ser populado entao qual o melhor lugar para fazer esses filtros e opcoes seria no proprio object ou sql datasource ou fazer  procedures com ifs e elses de acordo com as opcoes selecionadas? Qual e a melhor maneira de fazer isso em asp.net?

    Darei um exemplo tendo um sql ou object data source que me retorne uma tabela de pedidos quero que no sistema tenha as seguintes opcoes de filtrar o pedido por cidade, por cliente por numero de pedido e por ai vai!! acaba sendo um relatorio bem dinamico!!  qual a melhor maneira de montar isso? seria usando o sql atraves de uma string e fazendo ifs e else de acordo com a seleção de filtros? existe outras formas?

    Obrigado!

    terça-feira, 22 de fevereiro de 2011 16:15

Respostas

  • Olá!

    Tenho alguma experiência em Windows Form (Vb.Net) que talvez possa ajudá-lo um pouco:

    Você pode fazer isso passando valores para campos do tipo "parameter" no RPT do Crystal e dentro do RPT você utilizaria esses campos no filtro de registros ou você poderia passar diretamente o "RecordSelectionFormula", ambos via código.

    No meu ponto de vista você deveria levar em consideração a complexidade dos seus relatórios e o tamanho de sua base de dados. Se for utilizar da forma acima, é interessante que os campos envolvidos nas seleções de registros sejam indexados, sob pena de seus relatórios levarem uma eternidade para carregar.

    Na maioria das aplicações que desenvolvo, eu uso uma destas técnicas, mas já fiz como você sugeriu também.

    As vezes é melhor você criar uma stored procedure que cria uma view já da forma como vc deseja do que montar todo o relacionamento entre as tabelas dentro do RPT do Crystal (ou do datasource que vai gerar o relatório). Dependendo do banco você pode ganhar em desempenho, sem falar que se você dominar bem Sql vai conseguir produzir mais e dar manutenção bem mais rapidamente.

    Outra dica legal para quem vai começar a fazer relatórios usando crystal para Asp.Net é tentar deixar o tamanho do arquivo.rpt o menor possível e cuidado com imagens, pois eles podem levar mais tempo para serem apresentadas no browser do cliente do que os dados. rsrsrs

    Bom, isso funciona para mim que gosto de criar os RPTs no Crystal sem usar o Visual Studio. Eu apenas os estancio no código e chamo diretamente.


    Willian Cardoso Santana
    quinta-feira, 14 de abril de 2011 02:26