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
Re: Delphi and Firebird....после запросов приложение...
От: kavlad Россия http://www.wavesoft.ru
Дата: 10.08.05 06:44
Оценка:
Здравствуйте, kost21, Вы писали:

Вы не совсем корректно закрываете приложение.
Приложение у вас содержит форму, значит есть главная форма. Достаточно закрыть главную форму методом Close и завершение произойдет корректно.
Распознавание изображений на Delphi — http://dfreader.sourceforge.net
Re: Delphi and Firebird....после запросов приложение...
От: Alex.Che  
Дата: 10.08.05 07:32
Оценка:
Привет, kost21!
Вы пишешь 10 августа 2005:

k> Здравствуйте! Столкнулся с проблемой. Вот код

k>
 sql:=sql.Create(nil);


Что за класс такой?

--
With best regards, Alex Cherednichenko.
Posted via RSDN NNTP Server 1.9
Re: Delphi and Firebird....после запросов приложение...
От: Disa Россия  
Дата: 10.08.05 12:17
Оценка:
Здравствуйте, kost21, Вы писали:


K>if not work.IBTransaction1.Active then work.IBTransaction1.Active:=true;

K>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';

А сом код корректный получается
тут ('AND A.parent=B.code') нужет пробел и должно получиться так
' AND A.parent=B.code'
а в место этого(BAR.Text) должно быть это (QuotedStr(BAR.Text))
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.