Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Marostegan

[Resolvido] filtro em pesquisa

Recommended Posts

olá pessoal,

 

eu to fazendo um sisteminha onde vai ter cadastro de clientes e busca por eles... (estou usando banco de dados em ACCESS)

 

na busca eu fiz da seguinte forma:

 

begin

if not f_lista_clientes.ADOTable1.Locate('empresa',Edit1.Text,[loCaseInsensitive, loPartialKey]) then

begin

ShowMessage('Cliente não encontrado!');

end

else begin

edit1.Clear;

f_lista_clientes.show;

 

até ai beleza, está encontrado o cliente... mas ele vai no primeiro cadastrado... o que eu queria é o seguinte:

 

vamos supor que eu tenha cadastrado o cliente: TERRA, TETRA e ALCON.

 

quando eu digitar TE ele abra uma outra janela só com os clientes que começa com TE os outro não devem aparecer nessa busca.

 

 

como que eu faço isso?

 

 

obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá pessoal,

 

eu to fazendo um sisteminha onde vai ter cadastro de clientes e busca por eles... (estou usando banco de dados em ACCESS)

 

na busca eu fiz da seguinte forma:

 

begin

if not f_lista_clientes.ADOTable1.Locate('empresa',Edit1.Text,[loCaseInsensitive, loPartialKey]) then

begin

ShowMessage('Cliente não encontrado!');

end

else begin

edit1.Clear;

f_lista_clientes.show;

 

até ai beleza, está encontrado o cliente... mas ele vai no primeiro cadastrado... o que eu queria é o seguinte:

 

vamos supor que eu tenha cadastrado o cliente: TERRA, TETRA e ALCON.

 

quando eu digitar TE ele abra uma outra janela só com os clientes que começa com TE os outro não devem aparecer nessa busca.

 

 

como que eu faço isso?

 

 

obrigado.

Dai você tem que usar comandos like do SQL

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá pessoal,

 

eu to fazendo um sisteminha onde vai ter cadastro de clientes e busca por eles... (estou usando banco de dados em ACCESS)

 

na busca eu fiz da seguinte forma:

 

begin

if not f_lista_clientes.ADOTable1.Locate('empresa',Edit1.Text,[loCaseInsensitive, loPartialKey]) then

begin

ShowMessage('Cliente não encontrado!');

end

else begin

edit1.Clear;

f_lista_clientes.show;

 

até ai beleza, está encontrado o cliente... mas ele vai no primeiro cadastrado... o que eu queria é o seguinte:

 

vamos supor que eu tenha cadastrado o cliente: TERRA, TETRA e ALCON.

 

quando eu digitar TE ele abra uma outra janela só com os clientes que começa com TE os outro não devem aparecer nessa busca.

 

 

como que eu faço isso?

 

 

obrigado.

Dai você tem que usar comandos like do SQL

 

e ai amigão... vamos ver se posso te ajudar... aqui eu uso query, não sei oq você usa pra comunicar, mesmo assim, a idéia é a mesma... tente isso aqui:

 

query.close;

query.SQL.Clear;

query.SQL.Add('select * from TABELA where CAMPO like '''+ EDIT.TXT+'%''');

query.open;

 

espero ter ajudado... http://forum.imasters.com.br/public/style_emoticons/default/grin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

oii amigo..

 

entao, fiz isso e rodei o programa... mas quando tento fazer a pesquisa nada acontece...

 

usei um ADOQuery e na propriedade SQL coloquei select * from tbl_cliente

 

usei junto com o ADOQuery um DataSource...

 

pq será q naum funfa? o0''

Compartilhar este post


Link para o post
Compartilhar em outros sites

ooii..

 

aeeee.... agora funcionou!!!

 

nao sei se tem alguma coisa a ver

mas eu coloquei mais um comando:

 

adoquery1.Prepared;

 

e dai funcionou normal.... o0''

 

 

brigadaooo pela ajudaa!!!

 

=DDDDD http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá pessoal,

 

eu to fazendo um sisteminha onde vai ter cadastro de clientes e busca por eles... (estou usando banco de dados em ACCESS)

 

na busca eu fiz da seguinte forma:

 

begin

if not f_lista_clientes.ADOTable1.Locate('empresa',Edit1.Text,[loCaseInsensitive, loPartialKey]) then

begin

ShowMessage('Cliente não encontrado!');

end

else begin

edit1.Clear;

f_lista_clientes.show;

 

até ai beleza, está encontrado o cliente... mas ele vai no primeiro cadastrado... o que eu queria é o seguinte:

 

vamos supor que eu tenha cadastrado o cliente: TERRA, TETRA e ALCON.

 

quando eu digitar TE ele abra uma outra janela só com os clientes que começa com TE os outro não devem aparecer nessa busca.

 

 

como que eu faço isso?

 

 

obrigado.

Dai você tem que usar comandos like do SQL

 

e ai amigão... vamos ver se posso te ajudar... aqui eu uso query, não sei oq você usa pra comunicar, mesmo assim, a idéia é a mesma... tente isso aqui:

 

query.close;

query.SQL.Clear;

query.SQL.Add('select * from TABELA where CAMPO like '''+ EDIT.TXT+'%''');

query.open;

 

espero ter ajudado... http://forum.imasters.com.br/public/style_emoticons/default/grin.gif

 

 

------------

 

 

 

amigoo... agora só tenho mais uma duvida...

 

como faço pra se a pesquisa num achar nada aparecer uma msg que não foi possível localizar

 

 

e como faço para se a pessoa nao digitar nada e clicar em pesquisar aparecer o dbrig em branco ou uma msg pra mandar a pessoa digitar alguma cosa no edit1 ?

 

 

obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

valew.... funcionou certinho!!!

 

ultima duvida...

 

depois que foi feito a pesquisa os dados sao exibidos no DBGrid...

 

tem como eu dar 2 cliques na linha do DBGrid e abrir um determinado form (que é aonde está o cadastro com todas as informações do meu cliente)

 

 

obrigado pela ajuda galera!!!

 

http://forum.imasters.com.br/public/style_emoticons/default/grin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim.

No Duplo clique do DBGrid, você verifica se tem registros, caso positivo, voce cria o form que desejar. Neste form, basta instanciar os DBEdit ligados com o mesmo dataset do DBGrid ...

 

if (ADOQuery1.REcordCount >0) then
begin
	frmDadosCliente:= TfrmDadosCliente.Create(Application);
	frmDadosCliente.ShowModal(); //Este é o suposto form que tem os DBEdits ligados com o dataset do dbgrid....
end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

os dados estao aparecendo tudo certinho aqui na DBgrid...

 

mas para eu dar 2 cliques em cima da linha de uma das informações q apareceram a programação é:

 

 

frmDadosCliente:= TfrmDadosCliente.Create(Application);

 

??

 

 

não entendi!

 

o0´´

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso mesmo ...

Coloca o codigo que lhe enviei no evento onClick do DBGrid ...

Isto quer dizer que, quando o elemento clicar no DbGrid, vai ser executado o codigo que vai criar o formulario pra exibir os dados ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.