GARANTIR DESCONTO

Fórum WHERE funciona em um campo e no outro não !!! #40853

11/12/2003

0

Olá galera!!

O que faço ??

No código abaixo, a consulta para Cod_Processo funciona prefeitamente, mas para Cod_Cliente não. Aparece uma mensagem dizendo coluna desconhecida. E o mais curioso é que o nome da coluna que aparece é sempre o que eu digitar no Edit1. Por que isso acontece? Alguém sabe?

procedure TFormLocalizarProcesso.RadioGroup1Click(Sender: TObject);
var
R : string;
begin
R := Edit1.Text;
case RadioGroup1.ItemIndex of
0: begin
IBQueryLocalizaProcesso.Close;
IBQueryLocalizaProcesso.SQL.Clear;
IBQueryLocalizaProcesso.SQL.Add(´Select * From Processos´);
IBQueryLocalizaProcesso.SQL.Add(´Where Cod_Cliente =´ + R );
IBQueryLocalizaProcesso.Open;
end;
1: begin
IBQueryLocalizaProcesso.Close;
IBQueryLocalizaProcesso.SQL.Clear;
IBQueryLocalizaProcesso.SQL.Add(´Select * From Processos´);
IBQueryLocalizaProcesso.SQL.Add(´Where Cod_Processo =´ + R );
IBQueryLocalizaProcesso.Open;
end;
end;
RadioGroup1.ItemIndex := -1;
end;


Se alguém puder me ajudar, ficarei grato

:(


Ricardo.vano

Ricardo.vano

Responder

Posts

11/12/2003

Ricardo.vano

Alguns detalhes:

Estou usando banco de dados Interbase 6.5

Os campos Cod_Processo e Cod_Cliente pertencem a mesma tabela.

O nome da tabela: Processos

Cod_Processo é do tipo Integer
Cod_Cliente é do tipo Char (apesar do campo chamar Cod_Cliente, ele armazena nomes).

:?:


Responder

Gostei + 0

11/12/2003

Fabio-ps

Tente assim:

IBQueryLocalizaProcesso.SQL.Add(´Select * From Processos´);
IBQueryLocalizaProcesso.SQL.Add(´Where Cod_Processo =´ + ´´´´+R+´´´´ );

O que mudou foi apenas as aspas anteriores e posteriores a variavel R( ´´´´+R+´´´´ ) por se tratar de um campo varchar.
O outro não preciosou pois e inteiro.

Espero ter ajudado, so lembrando q esta é minha primeira participacao !!!


Responder

Gostei + 0

13/12/2003

Ricardo.vano

Obrigado!!

Ajudou mesmo!!

Valeu! :D


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar