pimpa 0 Denunciar post Postado Outubro 21, 2007 Boa tarde pessoal, Comecei a pouco tempo mexer com Delphi, e estou tentando fazer um pequeno BD, até agora esta indo bem, mas estou com um pequeno problema. Eu tenho o formulario todo certinho como podem ver Quando eu faço a pesquisa, ele acha o nome, porem se tiver mais que um pessoa com o msm nome, ele nao mostra. Por exemplo: eu digito ali Marcos e clico Pesquisar, ele vai para a pagina no cadastro da pessoa chamada Marcos, mas se tiver mais que um Marcos, simplesmente nao mostra, nem se eu ficar apertando repetidamente o botao Pesquisar. (botao pesquisar eh o BitBtn1). Eu uso Paradox com um Table, e a forma de pesquisa eh Locate: Table1.Locate('Comprador',Edit2.Text,[ loCaseInsensitive, loPartialKey]); Gostaria que me ajudassem da seguinte forma: conforme eu vá clicando no botao, ele vai pulando pros outros 'Marcos'. Obrigado, Pimpa Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Outubro 22, 2007 Tente alterar o Locate para desta forma: Table1.Locate('Comprador',Edit2.Text,[]); Compartilhar este post Link para o post Compartilhar em outros sites
pimpa 0 Denunciar post Postado Outubro 22, 2007 nao deu certo, ele nao acha nada.vlw por enquanto Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Outubro 22, 2007 Esta sua tabela esta aberta ?É a mesma do cadastro ? Compartilhar este post Link para o post Compartilhar em outros sites
pimpa 0 Denunciar post Postado Outubro 23, 2007 sim so tem uma tabela Compartilhar este post Link para o post Compartilhar em outros sites
Rodrigo Miss 1 Denunciar post Postado Outubro 24, 2007 Deveria funcionar certinho ... eu sempre faço assim e funciona: ADOTable1.Open;ADOTable1.Locate('NOMECLIENTE',Edit1.Text, [loPartialKey]); O DataSource ta apontando pra tabela correta ???? Verifique isso ... Compartilhar este post Link para o post Compartilhar em outros sites
pimpa 0 Denunciar post Postado Outubro 24, 2007 @RodrigoSim, o DS esta apontando para a tabela, tentei do jeitinho q ta ai, e nao deu certo =(ele acha um "Marcos", porem se tem mais de um, nao acontece nada ;[obrigado desde ja Compartilhar este post Link para o post Compartilhar em outros sites
pimpa 0 Denunciar post Postado Outubro 26, 2007 poxa eh tao dificil assim? ngm sabe um outro comando em vez de Locate que da certo? Compartilhar este post Link para o post Compartilhar em outros sites
Samth 0 Denunciar post Postado Outubro 27, 2007 Tenta usar FindNearest Se permite sugerir, a interface do seu soft tá meio confusa. Talvez fosse indicado usar um componente de tab (em abas). O componente tabbed notebook (win 3.1) do delphi serve pra isso. Bem, é apenas sugestão, por favor não se sinta ofendido. :) Compartilhar este post Link para o post Compartilhar em outros sites
pimpa 0 Denunciar post Postado Outubro 27, 2007 @Samth Imagina cara, vlw pela sugestao nao sabia qual era o componente que fazia abas, essa sugestao veiu em otima hora, vou refazer essa interface agora! Sobre o topico, com o comando FindNearest da pra escolher em qual campo da tabela ele ira procurar? por exemplo se eu quero pesquisar o nome do Comprador eu uso Table1.Locate('Comprador',Edit2.Text,[ loCaseInsensitive, loPartialKey]); vlw flw Compartilhar este post Link para o post Compartilhar em outros sites
Pantoja 5 Denunciar post Postado Outubro 28, 2007 pq ao invez de locate nao usa um fitro que você vizualiza TUDO que iniciar com uma letra por exemplo... with Table1 do Begin filtered:=false; filter:='''+edit1.text+'*'''; filtered:=false; End; adapte esse exemplo para seu caso onde Table1 é sua tabela e edit1 é o campo de pesquisa. abraços Compartilhar este post Link para o post Compartilhar em outros sites
Caldeira01 0 Denunciar post Postado Novembro 2, 2007 Boa tarde galera o comando que uso é If not DM.TBcadastro.locate('cad_nome',loc_cadastro.edit1.text,[]) then OBS: DM 'seria um data module' cad_nome 'em qual coluna procurar' loc_cadastro.edit1.tex 'onde encontra-se o que vai procurar' Espero ter ajudado Compartilhar este post Link para o post Compartilhar em outros sites
Samth 0 Denunciar post Postado Novembro 14, 2007 @Samth Imagina cara, vlw pela sugestao nao sabia qual era o componente que fazia abas, essa sugestao veiu em otima hora, vou refazer essa interface agora! Sobre o topico, com o comando FindNearest da pra escolher em qual campo da tabela ele ira procurar? por exemplo se eu quero pesquisar o nome do Comprador eu uso Table1.Locate('Comprador',Edit2.Text,[ loCaseInsensitive, loPartialKey]); vlw flw Legal, depois posta aí a interface nova! Infelizmente nesse comando não tem como especificar o campo, ele serve para fazer uma busca geral. Talvez você devesse tentar fazer a busca em sql. Pra falar a verdade não me lembro do locate ter essa função de clicar e ele ir para o próximo encontrado, principalmente se você está procurando em ordem alfabética (numa tabela com índice, pelo campo comprador). Compartilhar este post Link para o post Compartilhar em outros sites