Ir para conteúdo
Fórum Script Brasil
  • 0

Preciso De Ajuda! (Resolvido)


Halan Lopes

Pergunta

criei uma pesquisa com esse codigo

procedure TForm1.Button6Click(Sender: TObject);

begin

Table1.Filtered := False;

    if RadioGroup1.ItemIndex = 0 then

    Table1.Filter := 'Nome ='+ ''''+ Edit1.Text + '''';

      if RadioGroup1.ItemIndex = 1 then

        Table1.Filter := 'Endereco ='+ ''''+ Edit1.Text + '''';

          if RadioGroup1.ItemIndex = 2 then

            Table1.Filter := 'Cidade ='+ ''''+ Edit1.Text + '''';

              if RadioGroup1.ItemIndex = 3 then

                Table1.Filter := 'Uf ='+ ''''+ Edit1.Text + '''';

                  if Edit1.Text <> 'Todos' then Table1.Filtered := True;

               

Table1.Open;

  if Table1.IsEmpty then

    ShowMessage ('Não Encontrado!!!');

end;

Mas se o nome miturar letras maiusculas e minusculas ele só encontra da forma que foi registrada, por exemplo se registrar "Script Brasil" ele só encontra se digitar o nome completo e da forma que esta, se digitar apenas "script brasil" letras minusculas ele não encontra e se digitar apenas parte tipo "Script" ele também não encontra!

Como faço pra realizar a busca sem diferenciar maiuscula e minuscula, e por parte da informação?

Link para o comentário
Compartilhar em outros sites

14 respostass a esta questão

Posts Recomendados

  • 0

Olá Halan,

você pode usar '%'.

Ex:

Busca pelo começo da frase. ex: Hal - mostral Hall, Halan...etc

Table1.Filter := 'Nome ='+ ''''+ Edit1.Text + ''' +'%'';

Abs.

Kiko

cara pode ser a aspas la cara...tentar colocar aspas simples

pra ver se dar certo

Link para o comentário
Compartilhar em outros sites

  • 0

onde tem tres aspas, coloque quatro.

de:

Table1.Filter := 'Nome ='+ ''''+ Edit1.Text + ''' +'%'';

para:

Table1.Filter := 'Nome ='+ ''''+ Edit1.Text + '''' +'%'';

Abs. Progr'amador.

Já tentei dessas formas

Table1.Filter := 'Nome ='+ ''''+ Edit1.Text + '''' +'%'';

Table1.Filter := 'Nome ='+ ''''+ Edit1.Text + '''' +'%''';

Table1.Filter := 'Nome ='+ ''''+ Edit1.Text + '''' +''%';

Table1.Filter := 'Nome ='+ ''''+ Edit1.Text + '''' +''%'';

Table1.Filter := 'Nome ='+ ''''+ Edit1.Text + '''' +''%''';

tudo da erro alguns compilam e outros não!

Link para o comentário
Compartilhar em outros sites

  • 0

Deu o seguinte erro

[Error] Unit1.pas(113): Constant expression expected

Ops!!! unsure.gif

Foi mal, tira esse # deixe assim:

Table1.Filter := 'NOME = '+''''+Edit1.Text+'*'+'''';
Table1.Filtered := True;
ou assim:
Table1.Filter := 'NOME = '+#39+Edit1.Text+'*'+#39;
Table1.Filtered := True;

Abs. Progr'amador. wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

valeu Progr'amador, Vivendo&Aprendendo me passou esse codigo ultilizando Query que é muito bom também e faz uma busca por qualquer parte do registro!

begin

    if RadioGroup1.ItemIndex = 0 then

    begin

      Query1.Close;

      Query1.SQL.Clear;

      Query1.SQL.Add('Select * From Banco');

      Query1.SQL.Add('Where Nome Like :Nome ');

      Query1.SQL.Add('Order By Nome');

      Query1.Params[0].Value := '%'+Edit1.Text + '%';

      Query1.Open;

    end;

    if RadioGroup1.ItemIndex = 1 then

    begin

      Query1.Close;

      Query1.SQL.Clear;

      Query1.SQL.Add('Select * From Banco');

      Query1.SQL.Add('Where Endereço Like :Endereço ');

      Query1.SQL.Add('Order By Endereço');

      Query1.Params[0].Value := '%'+Edit1.Text + '%';

      Query1.Open;

    end;

    if RadioGroup1.ItemIndex = 2 then

    begin

      Query1.Close;

      Query1.SQL.Clear;

      Query1.SQL.Add('Select * From Banco');

      Query1.SQL.Add('Where Cidade Like :Cidade ');

      Query1.SQL.Add('Order By Cidade');

      Query1.Params[0].Value := '%'+Edit1.Text + '%';

      Query1.Open;

    end;

    if RadioGroup1.ItemIndex = 3 then

    begin

      Query1.Close;

      Query1.SQL.Clear;

      Query1.SQL.Add('Select * From Banco');

      Query1.SQL.Add('Where Estado Like :Estado ');

      Query1.SQL.Add('Order By Estado');

      Query1.Params[0].Value := '%'+Edit1.Text + '%';

      Query1.Open;

    end;

Query1.Open;

  if Query1.IsEmpty then

    ShowMessage ('Não Encontrado!!!');

end;

Obrigado há todos vocês!

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...