none
SQL em Formula no Crystal Report ? RRS feed

  • Pergunta

  • Olá pessoal,
    temos 1 página que lê os parâmetros do relatório (Crystal) e exibe na tela.
    Basta o usuário selecionar os parametros (combo ou text) box que após clicar no botão, o relatório é exibido conforme os parâmetros.
    Há uns 3 dias 1 relatório que exibia 3 combos, parou de exibir os dados.
    Analisando o relatório percebi que existes parametros: query_origem, etc
    E existe também uma formula: query_origem

    Olhando o código da formula (query_origem) encontrei código SQL conforme abaixo:
    "SELECT 0 VALOR, '(Todos)' TEXTO FROM DUAL UNION ALL SELECT CODIGO VALOR, REPLACE(DESCRICAO,'''',' ') TEXTO FROM RAI_ORIGEM WHERE FL_LISTA = 'S'"

    Ou seja, dá a entender que o parâmetro executaria a formula com o mesmo nome e com isso o combo seria preenchido com as informações vindas do banco de dados.
    Acontece que isso não está funcionando e o combo está em branco.

    Detalho: Revirei a internet e não encontrei nenhum exemplo de utilização de Query diretamente na Formula.
    Percebam que a formula inclusive está entre aspas. Ou seja, é uma string.

    Alguém já teve que construir parâmetro com lista onde os dados viessem do banco de dados ?
    Estamos utilizando Crystal 8.5

    []s
    Carlos Araujo
    Carlos Araujo
    quarta-feira, 11 de fevereiro de 2009 15:04

Respostas

  • Olá Carlos,


            Se eu preciso passar um valor para um relatório que seja um resultado de um SQL, a melhor forma que eu encontrei foi adicionar um parâmetro no relatório (Crystal Reports ou ReportViewer) passando o resultado do SQL do Banco de Dados.
           


            Um dos motivos é que um relatório faz parte apenas da camada de apresentação de uma aplicação e neste caso não é uma boa prática adicionar um SQL ou a própria conexão do banco de dados dentro do relatório.



    [ ]'s

     Laércio.


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


    MCSD .NET
    quinta-feira, 12 de fevereiro de 2009 19:00
    Moderador