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

как правильно пользовать OnBeforeUpdateRecord   Найти похожие ветки 

← →
hva   (2004-02-11 17:20) [0]

procedure TObjects.dspDataBeforeUpdateRecord(Sender: TObject;
SourceDS: TDataSet; DeltaDS: TCustomClientDataSet;
UpdateKind: TUpdateKind; var Applied: Boolean);
...
if UpdateKind=ukModify
then begin
//в obj1 изменено значение
tmp := DeltaDS.FieldByName("obj1").AsInteger;
//obj2 не менялось поэтому следующее не работает
//возвращает null
tmp1 := DeltaDS.FieldByName("obj2").AsInteger;
//а так вообще молча отваливается
//tmp1 := SourceDS.FieldByName("obj2").AsInteger;
end

все работает если принудительно изменять значение obj2
например: на клиенте obj2 := obj2 + 1
а на сервере obj2 := obj2 - 1 результат не меняется но зато obj2 попадает в пакет.
Вопрос как принудительно засунуть поле в пакет для обновления либо надо как-то использовать SourceDS? А может что еще там?


← →
Academic ©   (2004-02-11 17:40) [1]

Проверка
If Not VarIsNull(DeltaDS.FieldByName("obj2").NewValue)
// - Значение изменено


← →
Sandman25 ©   (2004-02-11 17:45) [2]

Intervening as updates are applied
в Developing Database Applications содержит хорошее описание и пример


← →
hva   (2004-02-12 09:39) [3]

DeltaDS.FieldByName("obj2").OldValue содержит значение

Спасибо, все получилось



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

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



Память: 0.45 MB
Время: 0.017 c
14-43862
Style
2004-02-21 15:52
2004.03.14
Люди, а как крякнуть Norton Antivirus 2004?


14-43782
Карелин Артем
2004-02-17 17:11
2004.03.14
Как установить длинный пароль на асю?


6-43739
St!ff
2004-01-04 05:44
2004.03.14
Вопрос: Ошибка при рекурсивном переборе файлов на фтп...


3-43258
Masha Streltsova
2004-02-17 16:29
2004.03.14
Как при поиске в DBGRID выделять цветом найденные значения


7-43912
Retro
2003-12-23 22:16
2004.03.14
Присоедениния exe к фаилу *.doc или excel




   Наверх