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

Вниз

Variant or safe array is locked   Найти похожие ветки 

 
SdrCoder ©   (2006-01-25 13:50) [0]

Доброе время суток! Естьо вопрос: при работе приложения на клиентских машинах, на которых не установлен Delphi возникает ошибка: Variant or safe array is locked. На машине, где стоит Delphi работает все отлично, без никаких ошибок. В программе использую DBExpress, и TClientDataSet. Что может быть, может кто посоветует?


 
Johnmen ©   (2006-01-25 13:57) [1]

Могут быть разные версии дбекспрессной dll"ки.
Могут быть разные версии midas dll"ки.


 
SdrCoder ©   (2006-01-25 14:04) [2]

Я со своим программой копирую две библиотеки midas.dll и dbexpmss.dll, со своей машины, на которой все ОК. Искал у себя на компе эти библиотеки только в одном экземпляре.


 
Johnmen ©   (2006-01-25 14:08) [3]

Какая версия Delphi?


 
SdrCoder ©   (2006-01-25 14:13) [4]

Delphi 2005 + upg1 + up2 + upg3. Версии dll 9.0


 
Johnmen ©   (2006-01-25 14:19) [5]

Midas.dll зарегистрирована?


 
SdrCoder ©   (2006-01-25 14:23) [6]

Чесно, говоря, Это первый мое проект с использованием DBExpress и TClientDataSet я не знаю. Если подскажешь как проверить или куда копать, буду очень благодарен.


 
Johnmen ©   (2006-01-25 14:27) [7]

Регистрация regsvr32 midas.dll


 
SdrCoder ©   (2006-01-25 15:38) [8]

Регистрацию проверил, все в порядке, более того заменил TQSLQuery на TSQLDataSet Эту ошибку перестало выдавать, НО в дочернем TSQLDataSet при связи ОДИН КО МНОГИМ, вылазит ошибка "Key Violation". Что это может быть? При связи ОДИН КО ОДНОМУ работает нормально.


 
Johnmen ©   (2006-01-25 15:49) [9]

>вылазит ошибка "Key Violation".

Где именно?


 
SdrCoder ©   (2006-01-25 15:58) [10]

В кратце, тестовый проект.

SQLConnection1: TSQConnection
SQLDataSet1, SQLDataSet2: TSQLDataSet;
DataSetProvider1, DataSetProvider2: TDataSetProvider;
ClientDataSet1, ClientDataSet2: TClientDataSet;
DataSource1, DataSource2: TDataSource;
DBGrid1, DBGrid2: TDBGrid;

Соответственно с 1 - Это одна связка компонентов к мастер таблице,
с 2 - связка к таблице деталей.

SQLDATASet1.CommandText := "SELECT CompID FROM MasterTable"
SQLDATASet2.CommandText := "SELECT CompDetail FROM DetailTable WHERE CompID = :CompID";
SQLDATASet2.DataSource := DataSource1;


Запускаю программу все ОК. Начинаю скролить, там где в дочерней таблице соответствует одна запись, все ОК. Если же в дочерней таблице более одной записи, то вылазит "Key Vialetion"


 
Johnmen ©   (2006-01-25 16:09) [11]

Ничего сказать не могу.
Ошибок нет, по кр.мере принципиальных...

ЗЫ
Посмотри, какие и как у тебя там события обрабатываются.


 
SdrCoder ©   (2006-01-25 16:19) [12]

Какбуд-то разобрался, я помимо

SQLDATASet2.DataSource := DataSource1;

еще и у

ClientDataSet2.DataSource := DataSource1;

Вот поэтому и плющило, еще потестирую, мот все получится...



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

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

Наверх




Память: 0.49 MB
Время: 0.048 c
2-1141049426
dera
2006-02-27 17:10
2006.03.19
как сделать?


3-1138109495
VladRaven
2006-01-24 16:31
2006.03.19
Выборка дублей в таблице SQL


2-1141233776
49 Cent
2006-03-01 20:22
2006.03.19
Можно ли подсвечивать строку в Dbgrid?


11-1121939783
shalex
2005-07-21 13:56
2006.03.19
Есть ли StatusBar для KOL ?


15-1140873496
Музыкант
2006-02-25 16:18
2006.03.19
Кто знает где можно скачать похоронный марш?