[firebase-br] RELATORIO COM FILTRO

Andrei Luís compuvale.software em gmail.com
Qui Jul 21 08:17:32 -03 2005


Lúcio,

Não utilizo dbExpress, mas creio que o seu erro está no SQL. Você deve
especificar na cláusula where do SQL por qual campo você quer filtrar
o parâmetro que você está passando... O seu SQL deveria ser assim:
select * from SP_FIL where nome = :param

O resto a princípio está correto.

[]s
Andrei

Em 21/07/05, Lúcio Mendes Ribeiro<luucio_fb em pop.com.br> escreveu:
> Desenvolvi uma pequena agenda telefônica utilizando
> Delphi7+DbExpres+Rave. Estou tentando fazer um relatório
> com filtro, ou seja, o usuário digita um nome em um
> Edit1 e o relatório deverá trazer os dados apenas os
> dados do registro que possua aquele nome.
> 
> ESTRUTURA:
> BANCO DE DADOS: Agenda.fb
> TABELA: Fones
> STORED PROCEDURE: SP_FIL
>  OBS: a procedure possui todos os campos da tabela FONES.
> 
> COMPONENTES DO FORMULARIO:
>  -SQLConnection1
>    -DataBase: agenda.fb
>  -SQLDataSet1
>    -CommandText: select * from SP_FIL(:param)
>    -SQLConnection: SQLConnection1
>  -DataSetProvider1
>    -DataSet: SQLDataSet1
>  -ClientDataSet1
>    -ProviderName: DataSetProvider1
>  -DataSource1
>    -DataSet: ClientDataSet1
>  -Edit1
> 
>  -Button1
>   Código do Botão:
>      SQLDataSet1.Active:=False;
>      ClientDataSet1.Active:=False;
>      SQLDataSet1.Params[0].AsString:=Edit1.Text;
>      SQLDataSet1.Active:=True;
>      ClientDataSet1.Active:=True;
> 
>      RvProject1.SelectReport('Report1',False);
>      RvProject1.Execute;
> 
> 
>  -RvProject1
>  -RvDataSetConnection1
>     -DataSet: ClientDataSet1
> 
> Quando clico no botão para gerar o relatório ele me traz
> apenas o cabeçalho, sem nenhum registro, mesmo que o nome
> que eu coloque no edit1, tenha registro correspondente no
> banco.
> 
> Por favor, me ajudem a resolver este problema...
> Lúcio.




Mais detalhes sobre a lista de discussão lista