none
Fazer Sub-relatório ou Função no SQL? RRS feed

  • Pergunta

  •  

    Olá Pessoal, gostaria de saber a melhor forma de concretizar meu relatório, que está em Crystal 2008 em uma solução windows form.

     

    Tenho um relatório que mostra o pedido e seus respectivos itens, logo agrupei o pedido e mostro os itens na section de detalhes. No entanto existe um terceira informação que é a forma de pagamento, que geralmente mais de uma parcela.

     

    Tenho que mostrar ao lado do código do pedido, ou seja, na section do cabeçalho do grupo o pedido a forma de pgamento do pedido da seguinte forma: 30 / 60 / 90 / 120.

     

    Aí que nasce minha dúvida.

     

    O melhor é:

     

    --> Criar um sobrelatório? Se sim, é possível colocá-lo na section do cabeça do grupo?

    --> Ou é melhor ccriar um função no SQL na qual eu crie um while pegando como parâmetro o pedido e retornando a forma de pagamento concatenada?

     

    A questão performance está contanto muito nesta implementação.

     

    O que sugerem?

     

    Aceito exemplos.

     

    Maxwel Barbosa.

     

    terça-feira, 6 de janeiro de 2009 16:05

Respostas

  • Maxwel,

     

         A forma mais simples de resolver é criando uma função para retornar em uma única linha as possíveis formas de pagamento.

     

    Se o banco de dados for SQL-Server, no próprio fórum MSDN vc vai encontrar exemplos de como implementar:

     

    https://forums.microsoft.com/MSDN-BR/ShowPost.aspx?PostID=1986202&SiteID=21

     

    Quanto a performance eu tenho alguns relatórios onde precisei definir uma função e não tenho nenhum problema.

     

     

    []'s

     Laércio.

     


    Ajude a melhorar o nosso Fórum!
    Não esqueça de marca a mensagem como "útil", caso tenha ajudado.

     

     

    terça-feira, 6 de janeiro de 2009 16:44
    Moderador

Todas as Respostas

  • Maxwel,

     

         A forma mais simples de resolver é criando uma função para retornar em uma única linha as possíveis formas de pagamento.

     

    Se o banco de dados for SQL-Server, no próprio fórum MSDN vc vai encontrar exemplos de como implementar:

     

    https://forums.microsoft.com/MSDN-BR/ShowPost.aspx?PostID=1986202&SiteID=21

     

    Quanto a performance eu tenho alguns relatórios onde precisei definir uma função e não tenho nenhum problema.

     

     

    []'s

     Laércio.

     


    Ajude a melhorar o nosso Fórum!
    Não esqueça de marca a mensagem como "útil", caso tenha ajudado.

     

     

    terça-feira, 6 de janeiro de 2009 16:44
    Moderador
  • Eu apostava que com o sib-relatória seria mais rápido.

     

    A propósito com o Crystal não gera detalhe na Horizontal, certo?

    COm o report view a Microsoft será que implementou geração de dados na selection detalhe tanto na horizontal quanto na vertical?

     

    Lembro que o Fast Report, lá no Delphi 5 fazia isso. Incrível né. Até hj não achei essa opção no Crystal.

     

    O banco é sql server mesmo, já tinha até criado a função, mas pintou a dúvida da melhor forma de fazer.

     

    Obrigado.

     

     

    terça-feira, 6 de janeiro de 2009 16:59
  • Maxwel,

     

       Com o report view a Microsoft será que implementou geração de dados na selection detalhe tanto na horizontal quanto na vertical?

     

        Você deve está se referindo a opção de Cross Table e essa opção existe em ambos os componentes. Neste caso, a solução do ReportViewer é bem mais fácil de implementar.

     

        Inclusive eu tenho um exemplo de Cross Table no 3 vídeo que eu disponibilizei para a comunidade MSDN.

     

     

    [ ]'s

     Laércio.


    Ajude a melhorar o nosso Fórum!
    Não esqueça de marca a mensagem como "útil", caso tenha ajudado.

    quinta-feira, 8 de janeiro de 2009 12:46
    Moderador