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

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

← →
clocker   (2011-10-09 11:23) [0]

Я не могу определить какое поле было изменено. Пробовал делать так:
void __fastcall TfrmMain::ADOQuery2AfterEdit(TDataSet *DataSet)
{
...
frmInformer.ADOQuery1.FieldByName("Измененное поле")->AsString = DataSet.FieldName;


Structure required on left side of . or .*
Пожалуйста расскажите как можно решить эту проблему?


← →
clocker   (2011-10-09 11:25) [1]

Извиняюсь не то написал
frmInformer.ADOQuery1.FieldByName("Измененное поле").AsString

Проблема там где я отметил жирным шрифтом в первом сообщении


← →
Игорь Шевченко ©   (2011-10-09 12:15) [2]

у TdataSet нет свойства FieldName, это свойство есть у TField


← →
clocker   (2011-10-09 12:53) [3]

Спасибо, побробую там


← →
clocker   (2011-10-09 12:53) [4]

Удалено модератором


← →
clocker   (2011-10-09 13:52) [5]

Пробовал так:
1. DataSet.DataSetField.FieldName
2. ADOQuery2.IndexFields[DataSet.DataSetField.FieldNo].FieldName
Результат - Access Violation
Если кто нибудь, узнает или вспомнит как это делается, напишите сюда пожалуйста.


← →
Cobalt ©   (2011-10-10 14:12) [6]

А с чего ты взял, что датасет запоминает, какое поле было изменено?
Ты нашел это где-то в справке?


← →
Cobalt ©   (2011-10-10 14:13) [7]

и потом,
> Write an AfterEdit event handler to take specific action
> immediately after dataset enters edit mode. AfterEdit is
> called by Edit after it enables editing of a record, recalculates
> calculated fields, and calls the data event handler to process
> a record change.


← →
OW ©   (2011-10-10 15:18) [8]

точно не помню, в oracle писал как-то, для анализа, работало
DataSet.Fields[i].CurValue);
DataSet.Fields[i].OldValue);
DataSet.Fields[i].NewValue);
там режим кэширующий должен быть, естественно


> Cobalt ©   (10.10.11 14:12) [6]

может, в зависимости от режима? а зачем такие св-ва тогда?

автору
в BeforeEdit(DataSet: TDataSet); можно все поля прочитать, потом сравнить..



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

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



Память: 0.46 MB
Время: 0.005 c
1-1282232239
DrAndriy
2010-08-19 19:37
2012.01.29
Проблема с модулями с модулями DesignIntf и DesignEditors. Где на


15-1318144980
clocker
2011-10-09 11:23
2012.01.29
Определить измененое поле


2-1318580783
igorium
2011-10-14 12:26
2012.01.29
Как сделать кроп картинки как в Фотошопе?


15-1318365002
Юрий
2011-10-12 00:30
2012.01.29
С днем рождения ! 12 октября 2011 среда


15-1318278603
Юрий
2011-10-11 00:30
2012.01.29
С днем рождения ! 11 октября 2011 вторник




   Наверх