Показать сообщение отдельно
  #16  
Старый 05.12.2012, 14:52
masterhex masterhex вне форума
Прохожий
 
Регистрация: 05.12.2012
Сообщения: 19
Репутация: 10
По умолчанию

Еще раз здрасьте! решил запилить, условие при котором вообще должно выполняться вся процедура.
Т.е. если мы уже вбивали номер предмета, и он внесся в таблицу devicerev, и мы еще раз сканируем - должно вывести сообщение что мы уже сканировали.

Но он выводит сообщение при любом действии)

Код:
procedure TfMain.Edit1Change(Sender: TObject);
begin
fdm.ADOQuery3.SQL.Clear;
fdm.ADOQuery3.SQL.Text:=('SELECT * FROM devicerev WHERE sn = '''+Edit1.Text+'''');
fdm.ADOQuery3.Active:=True;
s:=0;
s:= fdm.ADOQuery3.RecordCount;
if s>0 then
begin
fdm.ADOQuery1.SQL.Clear;
fdm.ADOQuery1.SQL.Add('INSERT INTO devicerev SELECT * FROM device AS d WHERE d.sn = '''+Edit1.Text+'''');
fdm.ADOQuery1.ExecSQL;
fdm.ADOQuery2.SQL.Clear;
fdm.ADOQuery2.SQL.Add('SELECT * FROM devicerev');
fdm.ADOQuery2.Active:=True;
end
else
ShowMessage('Вы уже это сканировали');
end;

Подскажите в каком месте я облажался с построением условия?



Извините, разобрался :
вместо
Код:
if s>0 then

надо

Код:
if s=0 then