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

Вниз

отследить переоткрытые detail DataSet’а в master/detail   Найти похожие ветки 

 
anton_cor ©   (2004-03-25 09:37) [0]

Использую ADODataSet и EhDBGrid 3.3. Есть два датасета в связке master/detail. Подчиненный, в том числе, отображает вычисляемой (на сервере) поле. Для того что бы оно обновлялось  в случае изменения делаю:

 DM.dRequest.Open; {master}
 DM.dTovar.Open; P{detail}
 DM.dTovar.Properties["Update Resync"].Value := adResyncAutoIncrement + adResyncUpdates + adResyncInserts;  


 Работает. НО. Когда переходим в master датасете на другую строчку то весь эффект пропадает.   Видимо подчиненные ДС переоткрывается и Properties сбрасываются.
 Хорошо, значит решение в том что бы каждый раз когда открывется подчиненный, устанавливать ему нужные свойства. Вот этого у меня и не получается. События типа
AfterOpen не срабатывают при неявном переоткрытые подчиненного ДС.
 Как отследить переоткрытые подчиненного  DataSet’а?


 
stud ©   (2004-03-25 09:46) [1]

попробовать ондадачеинч


 
Johnmen ©   (2004-03-25 09:55) [2]

>AfterOpen не срабатывают при неявном переоткрытые подчиненного ДС.

Срабатывают. А дело в том, что "переоткрытия" не происходит...:)
Кстати, какой CursorLocation ?


 
anton_cor ©   (2004-03-25 10:07) [3]

2stud:
еще раз и на ангельском, если не сложно
OnDataChange у ADODataSet нет.
2Johnmen:
тип курсора у обоих DS clUseClient.

Провожу простой эксперимент: создаем


procedure TDM.dTovarAfterOpen(DataSet: TDataSet);
begin
 ShowMessage("AfterOpen");
end;


И начинаем гулять по обоим гридам.  Не срабатывает. На что вешать то надо – объясни глупому.


 
Johnmen ©   (2004-03-25 10:13) [4]

>anton_cor ©  

AfterScroll мастерного м.б. подойдет...


 
stud ©   (2004-03-25 10:21) [5]

OnRecordsetChangeComplete


 
anton_cor ©   (2004-03-26 09:09) [6]

2stud:
Большое спасибо за ответы! Но и этот вариант тоже не работает. Хотя это меня удивило. Почему так - не знаю. Надо в исходники залазить - не хочу...
2Johnmen:
А вот за эту идею - спасибо! Как сам об этом не подумал?! :)


 
sniknik ©   (2004-03-26 10:17) [7]

> OnDataChange у ADODataSet нет.
TDataSource.OnDataChange



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

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

Наверх




Память: 0.48 MB
Время: 0.043 c
3-1080214290
viktor
2004-03-25 14:31
2004.04.25
SQL


1-1081146956
Comp
2004-04-05 10:35
2004.04.25
Поиск шрифта


14-1080724901
Verg
2004-03-31 13:21
2004.04.25
Кто-то тут спрашивал про то, как может процесс "исчезнуть"


7-1078090769
Duk
2004-03-01 00:39
2004.04.25
Процессор и кулер


7-1077969009
Duk
2004-02-28 14:50
2004.04.25
asm