Fórum Filter errado? #328526

02/09/2006

0

Ola, porque será que o meu filter no meu ClientDataSet nao esta funcionando:

DataSource1.DataSet.Filter := ´SITUACAO = Aberto´;
DataSource1.DataSet.Filtered := True;

...Ele e um ClientDataSet Detalhe....de um Master.

Desde ja muito obrigado a todos....

Luciano Ramos


Luciano.sul

Luciano.sul

Responder

Posts

03/09/2006

Rm

Quando escreve dataset quer dizer a table? Deve ser pois a sintaxe é algo como segue

ZTRemessasP59.filter:= ´FABRICA = ´ + QuotedStr(combobox1.Text)

no caso tabela ZTRemessasP59 é o nome do dataset.

Se falei bobagem,por favor ignore.


Responder

Gostei + 0

03/09/2006

Luciano.sul

RM obrigado pela atenção, realmente o dataset e a table, mas eu acabo de neste momento descobrir o que estava errado.
O certo seria....

DataSource1.DataSet.Filter := ´SITUACAO = [color=red:b073f1d018]´´[/color:b073f1d018]Aberto[color=red:b073f1d018]´´[/color:b073f1d018]´;
DataSource1.DataSet.Filtered := True;

[color=red:b073f1d018]Mas agora a minha duvida é a seguinte. [/color:b073f1d018]
Vamos supor que eu tenha 10 itens na tabela e eu fiz um record cont e o sistema me informou que eu tenho 10 itens, dai eu fiz um filter e a tabela agora me mostra 5 itens em que a situacao esta como aberto. so que se eu fizer um novo record cont o sistema ira continuar me dando 10 itens mesmo aparecendo 5 itens. O que devo fazer para o record cont me mostrar os itens do filter (5) e nao (10) do total sem o filter.
[color=red:b073f1d018]Atencao nao posso fazer via sql tem que ser com o filter.[/color:b073f1d018]

Desde ja muito obrigado a todos.

Luciano Ramos


Responder

Gostei + 0

11/01/2007

Facc

aproveitando o tópico, qual a diferença entre o Filter e o Locate?

tenho esse código

     DMDadosProd.TCadCorte.Filter := ´ REFPROD = ´ + QuotedStr ( FsRefProd ) +
                                     ´ AND ORDEMPROD = ´ + QuotedStr ( FsOP );
     DMDadosProd.TCadCorte.Filtered := true;

     DMDadosProd.TCadCorte.Locate(´REFPROD;ORDEMPROD´, VarArrayOf([FsRefProd, FsOP]), []);



eles estão seguidos um do outro, desse jeito que eu coloquei mesmo... Agora vem a pergunta: Se eu comento o código do Filter, o Locate acha os dados, porém no relatório saem várias páginas em branco, mas se eu comentar o locate o filter não traz os registros procurados, e se eu deixar ambos (como acima) na primeira vez que eu chamo o relatório não traz nada, porém se eu fechar a tela, abrir no mesmo registro, sai correto... já coloquei Open/Close, Refresh, commit... mas não resolveu

Uso D7, FireBird, BDE


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar