Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.18;
Скачать: CL | DM;

Вниз

Выполнение запроса с помощью TOracleQuery (DOA) в потоке.   Найти похожие ветки 

 
Plt   (2004-07-01 16:12) [0]

Запускается приложение, конектюсь к базе. У TOracleSession свойство ThreadSafe = true. Передаю сессию в поток. Но пока не выполнится поток невозможно открыть новую форму!! В форму тоже передается сессия. Делаю так:

 TSAMSesThread = class(TThread)
 private
   ExecQry: TOracleQuery;
   HotSAM : string;
   Ses : TOracleSession;
 protected
   procedure Execute; override;
   procedure SaveAction;
 public
   procedure InitSAMSes(aSes : TOracleSession);
 end;

procedure TSAMSesThread.InitSAMSes(aSes: TOracleSession);
begin
 FreeOnTerminate := True;
 Ses := aSes;
 ExecQry := TOracleQuery.Create(nil);
 ExecQry.Session := Ses;
 with ExecQry do
 begin
   SQL.Clear;
   SQL.Add(".....");
 end;
 Resume;
end;

procedure TSAMSesThread.Execute;
begin
 try
   ExecQry.Execute;
   with ExecQry do
   begin
     while not Eof do
     begin
       HotSAM := HotSAM + Format("%s [¹%d Îïèñàíèå: %s]",[FieldAsString("sam"),FieldAsInteger("dev_id"),FieldAsString("dev_dsc")]) + ",";
       Next;
     end;
     if RowCount > 0 then
       Synchronize(SaveAction);
   end;    
 finally
   ExecQry.Free;
 end;
end;


 
Erik1   (2004-07-01 17:06) [1]

Поставь ExecQry.ThreadSafe := False; и Synchro... := False;



Страницы: 1 вся ветка

Текущий архив: 2004.07.18;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.044 c
3-1087464074
souLLamer
2004-06-17 13:21
2004.07.18
Помогите преобразовать Date -> Integer и обратно.


4-1086505717
SPeller
2004-06-06 11:08
2004.07.18
Исправить дамп РЕ чтоб запускался


14-1088692226
pasha_golub
2004-07-01 18:30
2004.07.18
Программа нужна


10-1023351431
comwad
2002-06-06 12:17
2004.07.18
Глюк при переходе с Visibroker 3 (D 6) на Visibroker 4.1 (D6)


14-1088657607
Vlad Oshin
2004-07-01 08:53
2004.07.18
длинные повторяющиеся сигналы в Award Biose v6?