|
ActiveDelphi .: O site do programador Delphi! :.
|
Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
felipe.mello Novato
Registrado: Domingo, 12 de Abril de 2015 Mensagens: 22
|
Enviada: Dom Abr 26, 2015 3:36 pm Assunto: pesquisa por nome [RESOLVIDO] |
|
|
pessoal, ja olhei em varios topicos, inclusive daqui, mais nada me ajudou.
tenho um banco paradox com alguns registros. queria filtrar por nomes, pode ser por um botão ou pelo edit msm. só que gostaria que, ao digitar ou clicar no botão, só aparecesse no dbgrid o que foi pesquisado. tipo, pesquisei 'maria', tudo que nao fosse maria sumisse. pesquisei 'ma', tudo que nao tivesse ma sumisse. e se eu apagasse o que estivesse no edit, que voltassem todos os registros. e assim por diante.
estou tentando agora com esse codigo, ainda sem a opção de, se apagar o que esta no edit, todos os registros voltam:
banco.Table1.locate('NOME',edit1.Text,[lopartialkey,locaseinsensitive]);
ele até serve, consegue procurar, mais todos os dados continuam aparecendo. e fora que se tenho 2 marias no banco, ele só aponta para a primeira. apenas aponta para a 2º se digitar o sobrenome junto. não é mto pratico.
alguem tem alguma ideia? tentei varios outros codigos por botão, mais simplesmente nada é procurado. vc digita algo que esta no banco mais nao aponta. uso um datamodule chamado banco, com um table, um datasource e uma query (essa query uso para mostrar algumas estatisticas de dentro do banco de dados em outro form).
Editado pela última vez por felipe.mello em Sex Mai 15, 2015 11:44 pm, num total de 1 vez |
|
Voltar ao Topo |
|
|
felipe.mello Novato
Registrado: Domingo, 12 de Abril de 2015 Mensagens: 22
|
Enviada: Dom Abr 26, 2015 3:44 pm Assunto: |
|
|
quando digo que tentei outros codigos, nesse caso foi por sql. mais ai ja nao encontrava nada, nao apontava os registros. o unico que conseguiu apontar é esse atual, mais nao é mto pratico pelos motivos ja citados... |
|
Voltar ao Topo |
|
|
anderbelluno Colaborador
Registrado: Quarta-Feira, 23 de Novembro de 2011 Mensagens: 1030 Localização: Cianorte-PR
|
Enviada: Dom Abr 26, 2015 5:46 pm Assunto: |
|
|
Pq vc usa Paradox?? |
|
Voltar ao Topo |
|
|
felipe.mello Novato
Registrado: Domingo, 12 de Abril de 2015 Mensagens: 22
|
Enviada: Dom Abr 26, 2015 6:13 pm Assunto: |
|
|
anderbelluno escreveu: | Pq vc usa Paradox?? |
tentei usar o firebird, mais por varios erros tanto no delphi como no firebird que nunca consegui entender, desisti.
entao comecei a usar o paradox msm. para o projeto final, um programa basico de cadastro, consulta e impressao feito localmente, está de bom tamanho. |
|
Voltar ao Topo |
|
|
anderbelluno Colaborador
Registrado: Quarta-Feira, 23 de Novembro de 2011 Mensagens: 1030 Localização: Cianorte-PR
|
|
Voltar ao Topo |
|
|
carbox Colaborador
Registrado: Quarta-Feira, 3 de Março de 2010 Mensagens: 1471
|
Enviada: Seg Abr 27, 2015 7:54 am Assunto: |
|
|
Bom dia!
Já imaginou se você desistisse diante da primeira dificuldade da vida?
O mesmo conceito de aprendizado aplicado ao PIRADOX cabe ao firebird, mysql, postgres, etc.
Adote um destes e não desista, estude e verás que vale a pena.
felipe.mello escreveu: | anderbelluno escreveu: | Pq vc usa Paradox?? |
tentei usar o firebird, mais por varios erros tanto no delphi como no firebird que nunca consegui entender, desisti.
entao comecei a usar o paradox msm. para o projeto final, um programa basico de cadastro, consulta e impressao feito localmente, está de bom tamanho. |
|
|
Voltar ao Topo |
|
|
rogerioclaro2 Experiente
Registrado: Quinta-Feira, 17 de Outubro de 2013 Mensagens: 404
|
Enviada: Seg Abr 27, 2015 8:28 am Assunto: |
|
|
bom dia.. vc desistiu de usar firebird?? Dificuldade vai ter mesmo cara e normal. Não seu se vc esta iniciando ou migrando de linguagem como eu, mas dificuldades e erros vai ter mesmo heheh
bom sobre a pesquisa, eu faco assim, coloco o edit, e um button e na onclick do button faco assim:
Código: |
DMCidades.qcidade.Close;
DMCidades.qcidade.Sql.Clear;
DMCidades.qcidade.SQL.Add ('SELECT * FROM CIDADE WHERE UPPER(CIDNOME) LIKE ' + QuotedStr('%' + b1.Text + '%'));
DMCidades.qcidade.Prepare;
DMCidades.qcidade.open;
|
no meu caso uso firebird, e esse codigo um dos que uso em meu form.
Espero que te ajude. |
|
Voltar ao Topo |
|
|
swbk Novato
Registrado: Terça-Feira, 6 de Janeiro de 2015 Mensagens: 27
|
Enviada: Seg Abr 27, 2015 8:59 am Assunto: |
|
|
Tente utilizar o filter:
Código: |
DMCidades.qcidade.Filtered := False;
DMCidades.qcidade.Filter := 'CAMPO_NOME = '+''''+seuEdit.Text+'''';
DMCidades.qcidade.Filtered := True;
|
Para voltar todos os registros:
Código: |
DMCidades.qcidade.Filtered := False;
DMCidades.qcidade.Filter := '';
DMCidades.qcidade.Filtered := True;
|
OBS: Se a busca é apenas pelo o que foi digitado utilize igualdade no SQL (=) caso seja tudo que contenha utilize o (LIKE).
Abs. |
|
Voltar ao Topo |
|
|
felipe.mello Novato
Registrado: Domingo, 12 de Abril de 2015 Mensagens: 22
|
Enviada: Seg Abr 27, 2015 1:04 pm Assunto: |
|
|
tentarei mais tarde em casa alguns dos codigos que me passaram com calma. estava fazendo mais ou menos isso. realmente nao consigo entender o pq nao procura. e nao da um erro, simplesmente nao procura.
sei que o paradox nao é a melhor opção. mais para o que estou fazendo, até que me satisfaz. é um projeto simples. e como nao tinha mto tempo para perder, pois ja perdi mto, resolvi usa-lo.
mais tarde testo, estou no trabalho agora. obrigado a todos! |
|
Voltar ao Topo |
|
|
anderbelluno Colaborador
Registrado: Quarta-Feira, 23 de Novembro de 2011 Mensagens: 1030 Localização: Cianorte-PR
|
Enviada: Seg Abr 27, 2015 1:14 pm Assunto: |
|
|
felipe.mello escreveu: | tentarei mais tarde em casa alguns dos codigos que me passaram com calma. estava fazendo mais ou menos isso. realmente nao consigo entender o pq nao procura. e nao da um erro, simplesmente nao procura.
sei que o paradox nao é a melhor opção. mais para o que estou fazendo, até que me satisfaz. é um projeto simples. e como nao tinha mto tempo para perder, pois ja perdi mto, resolvi usa-lo.
mais tarde testo, estou no trabalho agora. obrigado a todos! |
Amigo, não quis por em discussão sua escolha pelo paradox, mas como eu quando comecei a programar(e não sou em expert) delphi tbm tentei usar o paradox e tive problemas com chaves, duplicidade de registro entre outros erros que se continuo iremos até amanhã. Por isso hoje uso 99% Firebird.
Uma vez perguntei a um amigo qual a melhor linguagem de programação e ele me disse:"A melhor linguagem de programação é aquela que você admira, se sente parte, gosta e a conhece o bastante para dizer que você sabe programar!".
Abraços.
Anderson. |
|
Voltar ao Topo |
|
|
felipe.mello Novato
Registrado: Domingo, 12 de Abril de 2015 Mensagens: 22
|
Enviada: Seg Abr 27, 2015 6:57 pm Assunto: |
|
|
consegui galera. nao era erro no meu codigo, nem no codigo que postaram e nos codigos da internet afora. simplesmente era no dbgrid e datasource.
a pesquisa era feita, mais nao mostrava pq o datasource estava apontado para o table1 (mostrando todos os registros) e nao para o query (mostrando a pesquisa), pois quando o programa abre, eu fiz para que ja mostrasse todos os registros na tabela, entao justamente apontando para o table1. a solução foi criar um novo datasource, esse apontado para a query e no botão de pesquisa colocar o dbgrid conectado ao novo datasource da query, só msm para mostrar os resultados pesquisados. ao apagar a pesquisa, o dbgrid volta a conectar ao antigo datasource do table1 mostrando todos os registros.
amigo anderson, esta tranquilo. quando disse desisti, disse apenas por agora, pois realmente nao tinha mto tempo para encontrar uma solução. provavelmente o erro é no delphi, talvez na compatibilidade, nao sei. deu erro até com o banco access. eram tantos erros que ficava inviavel procurar uma solução por agora. ai o paradox ta quebrando o galho. mais nao colocaria nunca o paradox num projeto profissional, sei de seu histórico, rs. obrigado pelas dicas, levo tudo como aprendizagem. e obrigado a todos os outros tbm! |
|
Voltar ao Topo |
|
|
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|