Buscar

Rave - usando select com parâmetros

Código

Com o Delphi 7 veio a necessidade de entender o Rave... tarefa não tão fácil, visto que existem alguns "macetes" para fazer isso!!

Quando comecei a usar o Rave, me deparei com um problema... ele funcionava bem quando tinha que fazer um SELECT da tabela inteira, mais dava erro todas as vezes que eu tentava usar um SELECT com parâmetros... Fiz várias peguntas em vários Fóruns e ninguém soube me dizer como solucionar esse problema...Então resolvi escrever sobre, para ajudar alguém que possa ter o mesmo problema que eu!!

Eu usava a conexão via ADO no Delphi, um RvDataSetConnection e um Rvproject no form, então eu definia o Dataset do RvDataSetConnection e o ProjectFile do Rvproject, eu colocava o código SQL que queria na propriedade SQL do ADOQuery, no prórpio object inspector... então abria o Rave criava um Direct Data View e pronto, lá estavam meus campos e eu podia montar o meu relatório apenas arrastando os campos para os Bands e DataBands...(segurando o CTRL).

Mais o que fazer quando o SELECT era apenas de um certo código e eu precisava usar paraâmetros dentro do SELECT???

Não dava certo por nada... o Rave não reconhecia o parâmetro que era passado via código pelo Delphi...Aliás ele não reconhecia nem mesmo o SELECT se esse fosse passado para a ADOQuery por código (fora da propriedade SQL do object inspector).

A Solução!!

Continuei usando a Conexão ADO no Delphi, um RvDataSetConnection e um Rvproject no form... mais eu coloquei o código SQL em um botão que seria usado para executar o relatório... fiz tudo normal como estava acostumada...

coloquei o código SQL no botão:
depois defini o DataSet do RvDataSetConnection:
dados.ADOQuery1.SQL.Clear;
dados.ADOQuery1.SQL.Add('select * from tabela where codigo=:cod');
dados.ADOQuery1.Parameters[0].Name:='cod';
dados.ADOQuery1.Parameters[0].Value:=edit1.Text;
dados.ADOQuery1.Open;
rvdatasetconnection1.DataSet:=dados.ADOQuery1;

Ai vem o detalhe...

Execute a aplicação e clique no botão que executa o código acima ... então abra o rave e crie a sua Direct Data View e pronto, lá estarão os campos e vc pode montar o relatório apenas arrastando os campos para os Bands e DataBands...(segurando o CTRL). Importante! vc precisa manter a Aplicação executando enquanto monta o Relatório.

Então quando o relatório estiver pronto você define a propriedade ProjectFile do RvProject e inclui o seguinte código no botão:

RvProject1.Execute;

e pronto seu relatório está funcionando...

Giselle Alves
gisaalvesdasilva@hotmail.com
 

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Impressão
Adicionada dia: 06/10/04
Por: Giselle Alves Da Silva
Visualizada: 13043 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009