Fórum RecorCount erro #227438

22/04/2004

0

Uso a seguinte instrução para checar se existe o operador cadastrado no banco:

query.close
query.clear;
query.sql.add(´select * from operadores where´);
query.sql.add(´(login =:login)and´);
query.sql.add(´(senha =:senha)´);
query.parambyname(´LOGIN´).Asstring:=edt_usuario.text;
query.parambyname(´SENHA´).Asstring:=edt_senha.text;
query.open
if query.recordcount > 0 then begin
aqui estou passando o codigo do operador
formulariosenhas.free;
query.close;
para uma variável global que está no formulário principal
usuario:=query.fieldbyname(´codigo_operador´).asinteger;
formularioprincipal.showmodal;
end else
volto o formulário de senha;

O que está acontecendo é que o código do operador sempre aparece zero e não o código do operador. O que fazer. Alguém tem uma dica melhor.


Oziasl

Oziasl

Responder

Posts

22/04/2004

Motta

leia o help a respeito de tquery.recordcount

verifique possível erro na montagem da query

troque query.reocordcount > 0 por
not (query.eof)


Responder

Gostei + 0

22/04/2004

Lucas Silva

troque query.reocordcount > 0 por not (query.eof)


pode usar também o comando [b:94972afcf2]query1.IsEmpty[/b:94972afcf2]


Responder

Gostei + 0

22/04/2004

Marco Salles

Analisei rapidamente o seu código e acho que voce esta fechando a query antes de passar o codigo do operador para a sua variável
query.close 
query.clear; 
query.sql.add(´select * from operadores where´); 
query.sql.add(´(login =:login)and´); 
query.sql.add(´(senha =:senha)´); 
query.parambyname(´LOGIN´).Asstring:=edt_usuario.text; 
query.parambyname(´SENHA´).Asstring:=edt_senha.text; 
query.open 
if query.recordcount > 0 then 
  begin 
     //aqui estou passando o codigo do operador 
     formulariosenhas.free; 
     usuario:=query.fieldbyname(´codigo_operador´).asinteger; 
     query.close; 
     //para uma variável global que está no formulário principal 
     formularioprincipal.showmodal; 
  end 
else 
volto o formulário de senha; 



Responder

Gostei + 0

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

Aceitar