Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];

Вниз

Проблемма   Найти похожие ветки 

 
Turalyon   (2002-03-14 13:23) [0]

Привет всем!
Есть проблемма.
Вот процедура....


procedure TForm1.WriteToBase (CompName : String; LogArr : array of LogStat);
var i, CTime : cardinal;
LogDB : TIBDatabase;
LogTransaction : TIBTransaction;
SelIBQry, CompIBQry, SoftIBQry: TIBQuery;
CompId, SoftId : Cardinal;
begin
Memo1.Lines.Add("Вошли " + IntToStr(length(LogArr)));


try

LogDB := TIBDatabase.Create(self);
LogDB.DatabaseName := "C:\Work\BEHOLDER.GDB";
LogDB.Params.Add("user_name=sysdba");
LogDB.Params.Add("password=masterkey");
LogDB.Params.Add("lc_ctype=WIN1251");
LogDB.LoginPrompt := False;

LogTransaction := TIBTransaction.Create(self);
LogTransaction.DefaultDatabase := LogDB;

LogDB.DefaultTransaction := LogTransaction;

SelIBQry := TIBQuery.Create(self);
SelIBQry.Database := LogDB;
SelIBQry.Transaction := LogTransaction;

CompIBQry := TIBQuery.Create(self);
CompIBQry.Database := LogDB;
CompIBQry.Transaction := LogTransaction;
CompIBQry.SQL.Add("insert into COMPUTER");
CompIBQry.SQL.Add("(C_NAME)");
CompIBQry.SQL.Add("values");
CompIBQry.SQL.Add("(:C_NAME)");

SoftIBQry := TIBQuery.Create(self);
SoftIBQry.Database := LogDB;
SoftIBQry.Transaction := LogTransaction;
SoftIBQry.SQL.Add("insert into SOFTWARE");
SoftIBQry.SQL.Add("(S_NAME, S_DESCRIPTION)");
SoftIBQry.SQL.Add("values");
SoftIBQry.SQL.Add("(:S_NAME, :S_DESCRIPTION)");

LogDB.Connected := True;
Memo1.Lines.Add("Создали компоненты " + IntToStr(length(LogArr)));


Она не заканчивается на этом месте.. но дальше она и не идет...
Ситуация такая - прога работает с Socket eй по сетке приодит информация и она ее обрабатывает. Вот в этой процедуре происходит затык, если информация приходит сразу от нескольуих машин. Создавать компоненты динамически пришлось потому что если опять же придет информация от нескольких машин произойдет затык - статические компоненты уже используются....
Если приходит информация только от одного все работает от двух одновременно просто подвискает.
Второго добавления в Memo не происходит...
Как с этим бороться? Я подумал можетразбить это по птокам, но с ними не работал, по этому не знаю поможет ли....


 
Turalyon   (2002-03-14 13:33) [1]

В догонку.... затык происходит на сточке
LogDB.Connected := True;
Только что посмотрел, до этого места все выводит...


 
Johnmen   (2002-03-14 13:41) [2]

А хоть один раз отрабатывает ?


 
Turalyon   (2002-03-14 13:49) [3]

Если приходит от одной машины то все работает, если же одновременно то на стоке
LogDB.Connected := True
Подвисает. И обе процедуры (в смысле одна процедура) дальше не идут.



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

Форум: "Базы";
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
3-22566
cypher
2002-03-09 16:43
2002.04.08
Access Report


14-22817
Berserker
2002-02-27 03:34
2002.04.08
Помогите с обучением в делфи


1-22704
Ghost12
2002-03-26 14:37
2002.04.08
Ещё раз про HTML форму, люди помогите реально, дайте путный совет.


1-22763
koks
2002-03-27 09:59
2002.04.08
Ламерский вопрос - но в хелпе ничего нет нашел.


3-22598
Val
2002-03-14 14:20
2002.04.08
Еще одно поле в Query





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский