Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.23;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.053 c
2-1144234255
Id
2006-04-05 14:50
2006.04.23
DBComboBox1.Style:=csDropDownList


15-1143677066
San1
2006-03-30 04:04
2006.04.23
декомпиляция


2-1144201437
rosl
2006-04-05 05:43
2006.04.23
запрос sql


3-1141126943
gamar
2006-02-28 14:42
2006.04.23
Добавление поля в runtime


4-1138725955
Matrex
2006-01-31 19:45
2006.04.23
Handle и PID