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

BeforeUpdateRecord компоненты DataSetProvider   Найти похожие ветки 

← →
DimonNew   (2006-02-27 14:20) [0]

Как в случае модификации данных определить какие изменялись поля в этом событии?
Если поле не изменялась, то NewValue возвращает unassigned, который в случае, если поле integer, то unassigned равносилен 0. А если поле поменялось на ноль, то проверка

if field.NewValue=unassigned then
 begin
 end;
if field.NewValue=0 then
 begin
 end;

зайдет в обе ветки.
Так как же тогда првильно прверить, какие поля были изменены?


← →
DimonNew   (2006-02-27 14:29) [1]

In the BeforeUpdateRecord event, you can see if a field has changed by using the
following code:
if not VarIsEmpty(DeltaDS.FieldByName("FieldName").NewValue) then
 FieldHasChanged;


← →
Desdechado ©   (2006-02-27 15:49) [2]

сравнить данные в SourceDS и DeltaDS
или IsNull, IsEmpty, IsClear


← →
Desdechado ©   (2006-02-27 15:49) [3]

сорри
VarIsNull, VarIsEmpty, VarIsClear


← →
DimonNew   (2006-02-28 15:09) [4]

А что содержиться в sourceDS? Весь набор данных или обновляемая строчка, как в DeltaDS?


← →
Desdechado ©   (2006-02-28 17:25) [5]

F1



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

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



Память: 0.45 MB
Время: 0.025 c
15-1143721344
Mike Kouzmine
2006-03-30 16:22
2006.04.23
Не успели запустить бразильца в космос, как


2-1143271095
Delphi5.01
2006-03-25 10:18
2006.04.23
Обновить значение реестра программно


2-1144259430
md
2006-04-05 21:50
2006.04.23
как...


3-1141040160
Alinghi
2006-02-27 14:36
2006.04.23
key violation


2-1144395175
pavlov
2006-04-07 11:32
2006.04.23
макросы




   Наверх