Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
chicowendell Novato

Registrado: Sexta-Feira, 21 de Dezembro de 2012 Mensagens: 88
|
Enviada: Ter Set 27, 2016 3:15 pm Assunto: Trabalhando com Filtros! |
|
|
Olá pessoal!
Será que alguém poderia me ajudar com um código, que sirva para que eu filtre um campo por nome, mas que o usuário pudesse digitar tanto na forma maiúscula como minúscula.
Agradeço a atenção de todos.
Fico no aguardo! |
|
Voltar ao Topo |
|
 |
natanbh1 Colaborador

Registrado: Terça-Feira, 15 de Março de 2011 Mensagens: 3093 Localização: Belo Horizonte - MG
|
Enviada: Ter Set 27, 2016 3:24 pm Assunto: |
|
|
Coloque em maiúscula em ambos os lados, tanto o campo quando o Edit.
Exemplo:
Código: | Query1.Filtered := False;
Query1.Filter := 'Upper(Nome) like ' + QuotedStr('%' + UpperCase(Edit1.Text) + '%');
Query1.Filtered := True; |
_________________ ''A persistência é o caminho para o êxito.''
Charlie Chaplin |
|
Voltar ao Topo |
|
 |
chicowendell Novato

Registrado: Sexta-Feira, 21 de Dezembro de 2012 Mensagens: 88
|
Enviada: Ter Set 27, 2016 4:01 pm Assunto: |
|
|
meu código está assim:
Código: | procedure TConsPrefMapa.Button3Click(Sender: TObject);
begin
QUERY1.Close;
QUERY1.ParamByName('BUSCA').Value := nome.Text + '%';
QUERY1.Open;
TABLE1.IndexName := 'prefmapa';
TABLE1.FindKey([QUERY1.FieldByName('CODIGO').Value]);
end |
como faria a partir deste código |
|
Voltar ao Topo |
|
 |
natanbh1 Colaborador

Registrado: Terça-Feira, 15 de Março de 2011 Mensagens: 3093 Localização: Belo Horizonte - MG
|
Enviada: Ter Set 27, 2016 4:15 pm Assunto: |
|
|
Você está tentando filtrar a Query1 ou o Table1?
Creio que seja o Query1 porque o Table1 está procurando e não filtrando.
Poste a instrução SQL que você está usando no Query1. _________________ ''A persistência é o caminho para o êxito.''
Charlie Chaplin |
|
Voltar ao Topo |
|
 |
chicowendell Novato

Registrado: Sexta-Feira, 21 de Dezembro de 2012 Mensagens: 88
|
Enviada: Ter Set 27, 2016 4:39 pm Assunto: |
|
|
Eis a instrução:
select * from Mapa where prefeitura like :BUSCA |
|
Voltar ao Topo |
|
 |
natanbh1 Colaborador

Registrado: Terça-Feira, 15 de Março de 2011 Mensagens: 3093 Localização: Belo Horizonte - MG
|
Enviada: Ter Set 27, 2016 4:47 pm Assunto: |
|
|
Teste assim:
Código: | procedure TConsPrefMapa.Button3Click(Sender: TObject);
begin
QUERY1.Close;
QUERY1.SQL.Clear;
QUERY1.SQL.Text := 'select * from Mapa where Upper(prefeitura) like :BUSCA';
QUERY1.ParamByName('BUSCA').Value := UpperCase(nome.Text) + '%';
QUERY1.Open;
TABLE1.IndexName := 'prefmapa';
TABLE1.FindKey([QUERY1.FieldByName('CODIGO').Value]);
end; |
_________________ ''A persistência é o caminho para o êxito.''
Charlie Chaplin |
|
Voltar ao Topo |
|
 |
chicowendell Novato

Registrado: Sexta-Feira, 21 de Dezembro de 2012 Mensagens: 88
|
Enviada: Ter Set 27, 2016 4:59 pm Assunto: |
|
|
Deu certo amigo!
Obrigado pela ajuda!!  |
|
Voltar ao Topo |
|
 |
flaviowmf Aprendiz

Registrado: Quarta-Feira, 8 de Dezembro de 2004 Mensagens: 128
|
Enviada: Sex Set 30, 2016 11:58 am Assunto: |
|
|
Uma observação: utilize o AnsiUppeCase pois esse coloca em maiúsculo letras acentuadas e ç o UpperCase não.
Abraço |
|
Voltar ao Topo |
|
 |
|