Вниз
Скачать: CL | DM;

TDataSetProvider.OnUpdateError: в DataSet нет ключевого поля   Найти похожие ветки 

 
AkaSaint ©   (2003-07-15 21:22) [0]

Сабж! Ситуация: 2 клиента изменяют одно и то же поле в одной записи. Хочу в обработчике события сабж сделать в исходной таблице Locate по ключевому полю из DataSet и перечитать запись с жесткого диска, но в DataSet значени ключевого поля - Null! Что думаете по этому поводу?


 
sniknik ©   (2003-07-15 22:12) [1]

неплохо былобы еще раз и по русски. (just my think)


 
AkaSaint ©   (2003-07-16 01:27) [2]

Да, довольно сумбурно получилось... :) Попробую по-русски. Есть 3-звенное приложение. Если 2 клиента изменяют одно и то же поле в одной записи, то при выполнении метода ApplyUpdates вторым клиентом произойдет ошибка обновления - так и должно быть - и будет вызван обработчик TDataSetProvider.OnUpdateError, в который в качестве одного из параметров под именем DataSet передается набор данных, текущая запись которого является той, которую прислал второй клиент и которая вызвала ошибку обновления. Я хочу считать из БД тот вариант записи, который туда записал первый клиент, для этого мне нужно позиционироаться на эту запись (используя Locate и ключ из DataSet - ведь ключ не меняется в моем случае) и перечитать ее с жесткого диска. Но, т.к. почему-то DataSet.FieldByName("ClientNum").Value оказывается Null, Locate не выполняется и запись не перечитывается... :-)



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.018 c
1-20547
TolikM
2003-07-23 16:42
2003.08.07
События StringGrid а


1-20608
alenka
2003-07-24 13:04
2003.08.07
Диаграмма в Excel


14-20681
KSergey
2003-07-23 09:01
2003.08.07
Компоненты с закладки Win3.1


9-20368
Урб
2003-02-07 14:33
2003.08.07
Я один очень глупый вещь спрошу, только вы не сердитесь... :)


14-20703
Феликс
2003-07-22 20:46
2003.08.07
А не украдут?




   Наверх