Ir para conteúdo

POWERED BY:

Arquivado

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

Terry

[Resolvido] Problema com Radiogroup

Recommended Posts

Eu tenho uma tela de consulta em um banco de dados(paradox) mas eu precisaria fazer a pesquisa em varios campos da tabela ex. Nome e Empresa, estou usando um radiogroup com 2 opções segue o codigo abaixo:

O programa roda normal mas na hora q eu clico no botão para fazer a pesquisa aparece a seguinte mensagem de erro:

Não sei oq fazer para resolver isso.

 

 

Debugger Exception Notification

Project Project1.exe raised exception class EDBDngineError with message 'Invalid use of keyword.

Token: WHERE

Line Number: 1'. Process Stopped. Use Step or Run to continue.

 

 

 

begin

query1.Close;

query1.SQL.Clear;

 

if radiogroup1.ItemIndex = 0 then

query1.SQL.Add('select * from table1');

query1.SQL.Add('WHERE Nome LIKE '+#39+'%'+edit1.Text+'%'+#39);

query1.Open;

if radiogroup1.ItemIndex = 1 then

query1.SQL.Add('select * from table1');

query1.SQL.Add('WHERE Empresa LIKE '+#39+'%'+edit1.Text+'%'+#39);

query1.Open;

 

if query1.IsEmpty then

begin

showmessage('Não encontrado!');

edit1.Clear;

end

 

 

 

Obrigado!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

if radiogroup1.ItemIndex = 0 then

query1.SQL.Add('select * from table1');

query1.SQL.Add('WHERE Nome LIKE '+#39+'%'+edit1.Text+'%'+#39);

query1.Open;

if radiogroup1.ItemIndex = 1 then

query1.SQL.Add('select * from table1');

query1.SQL.Add('WHERE Empresa LIKE '+#39+'%'+edit1.Text+'%'+#39);

query1.Open;

Veja bem, você esqueceu um begin. Se o item selecionado for o segundo, ele não insere o "select * from tabela", mas insere o "where nome...". O código deveria ser esse:

 

if Radiogroup1.ItemIndex = 0 then
   begin
	  Query1.SQL.Add('select * from table1');
	  Query1.SQL.Add('WHERE Nome LIKE '+#39+'%'+edit1.Text+'%'+#39);
	  Query1.Open;
   end
   else
   if Radiogroup1.ItemIndex = 1 then
   begin
	  Query1.SQL.Add('select * from table1');
	  Query1.SQL.Add('WHERE Empresa LIKE '+#39+'%'+edit1.Text+'%'+#39);
	  Query1.Open;
   end;

t+!

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.