Fórum Preciso fazer (FindNearest) no IB? #228411

27/04/2004

0

Estou passando um programa que fiz em Delphi3 com Paradox para Delphi7 com Interbase. No programa antigo em um form de pesquisa eu tenho o seguinte:
DM_Nordeste.Cliente.FindNearest([Edit1.Text]);

A medida que vou digitando um nome no Edit1 o ponteiro vai se posicionando no registro (Cliente) correspondente que está em um grid.

Não estou conseguindo fazer o mesmo no Interbase, alguem pode me ajudar?

Desde agradeço.


Ronylee

Ronylee

Responder

Posts

28/04/2004

Dopi

Esqueça isso....

Em Banco de Dados, você deve filtrar ao máximo o trafego de informação do banco de dados ao usuário.... Lembre-se que o banco de dados poderá estar separado da aplicação por uma linha discada (lenta) e trazer 1000 registros demorará um bocado.... Ou seja, você nunca terá acesso ´fisico´ a tabela.

Voce deve fazer algo do tipo: Digite as iniciais do cliente:

E nesse caso efetuar uma consulta SQL que retorne somente os clientes que correspondam a condiçao:

Ex: No commandtext do seu DataSet....
select * from CLIENTES where NOMECLIENTE starting with :PNOME order by NOMECLIENTE ;

SeuDataset.Params.ParamByName(´PNOME´).AsString := Edit1.Text ;


Responder

Gostei + 0

28/04/2004

Paulo Trajano

Mas se o seu banco estiver local e não tenha tanto registros assim que chegue a ficar lento, vc pode usar o [b:e0a542686e]Locate[/b:e0a542686e] do IB que funciona como o FindKey do Piradox.

Tabela.Locate(´Nome´, Edit1.Text, [loPartilKey])


Onde [color=green:e0a542686e][b:e0a542686e]´Nome´[/b:e0a542686e][/color:e0a542686e] é o campo a ser pesquisado, claro;
Nem precisa dizer que ele vai pesquisar o que está no [color=green:e0a542686e][b:e0a542686e]Edit1.Text[/b:e0a542686e];[/color:e0a542686e]
[color=green:e0a542686e][b:e0a542686e][lopartialKey][/b:e0a542686e][/color:e0a542686e] não faz diferença entre maiúsculas e minúsculas;


Responder

Gostei + 0

28/04/2004

Dopi

hehe... Piradox.... gostei. Relamente, como já ouvi por ai, quem usa Paradox em sistemas comerciais de grande porte morre louco.... :-)


Responder

Gostei + 0

28/04/2004

Paulo Trajano

quem usa Paradox em sistemas comerciais de grande porte morre louco.... :-)


Acho que esse BD suja o nome da Borland, já que é nativo do Delphi. Deveriam tirá-lo do programa e deixar como nativo somente o IB.
Quanto a morrer louco, isso é pura verdade... depois de uma experiência horrível que tive com esse tal De Piradox aí, nunca mais quero vê-lo na minha frente :x


Responder

Gostei + 0

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

Aceitar