Delphi and Firebird....после запросов приложение...
От: kost21  
Дата: 10.08.05 06:02
Оценка:
Здравствуйте! Столкнулся с проблемой. Вот код
:

procedure Twork.BitBtn1Click(Sender: TObject);
begin
sql:=sql.Create(nil);
sql.Transaction:=work.IBTransaction1;
if not work.IBTransaction1.Active then work.IBTransaction1.Active:=true;
sql.SQL.Text:='select a.parent, b.name,b.pricecost,b.pricecost*(0.95) as bs from barcodelist a, tovarlist b where a.NAME='+BAR.Text+ 'AND A.parent=B.code';
try
begin
sql.ExecQuery;
edit1.Text:=sql.fieldbyname('parent').AsString;
edit2.Text:=sql.fieldbyname('name').AsString;
edit3.Text:=sql.fieldbyname('pricecost').AsString;
edit4.Text:=sql.fieldbyname('bs').AsString;
end;
sql.close;
work.IBTransaction1.Commit;
except
begin
showmessage('Íå âîçìîæíî ïîëó÷èòü äàííûå! Ââåäèòå ïðàâèëüíûé øòðèõ-êîä!');
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
end

end
end;

После того, как закрываю приложение,
код
:
procedure Twork.BitBtn3Click(Sender: TObject);
begin
if work.IBTransaction1.Active then
work.IBTransaction1.Commit;
if connectform.basetel.Connected then
connectform.basetel.Connected:=false;
application.Terminate;

end;

Приложение остаётся в памяти...т.е. приходится вручную докомпилировать.
Блин, не могу разобраться.....
Может, я не пишу в конце транзакции sql.free?
Но когда я вставляю эту строчку, то я могу выполнить только один единственный запрос...

10.08.05 11:28: Перенесено модератором из 'Базы данных' — Merle
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.