![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TDataLink - распознать Insert и Edit [D7, MSSQL]
Ega23 © (2007-10-04 13:41:00)Как на уровне TDataLink распознать, была ли добавлена новая запись в НД, или было редактирование существующей?
Поясню ситуацию: есть самописный TDBTree, перестроение дерева делать на каждое событие TdataLink.UpdateData делать - накладно. Тем более, что поток событий по изменению значения поля в НД и добавлении/удалении записи из НД будет соотноситься как 99:1
Jeer (2007-10-04 18:34:00) [1]
> А если вклинивание в "ветку"?
>
Что есть вклинивание ?
Вставка в ветке между соседними ?
Это вопрос к сортировке.
Ega23 (2007-10-04 18:32:00) [2]
> Почему нельзя просто добавлять child если было добавление
> или изменять связанные параметры node - если редактирование.
Там не всё так просто. Хорошо, если добавление "листа". А если вклинивание в "ветку"?
> Кстати есть еще и удаление и перенос веток:)
Есть, но в данной задаче, как бы нет. В оперативной работе если и меняется что-то, так только (с точки зрения дерева) StateIndex у нода.
Jeer (2007-10-04 18:22:00) [3]
> Ega23 © (04.10.07 14:43) [2]
Почему нельзя просто добавлять child если было добавление или изменять связанные параметры node - если редактирование.
Ты же ведь знаешь какая операция была.
Кстати есть еще и удаление и перенос веток:)
Ega23 (2007-10-04 14:43:00) [4]
> а DataLink.DataSet.State не подойдет?
Т.е. получается, что мне нужно ловить TDataLink.EditingChanged, запоминать DataSet.State, а потом в UpdateData его анализировать?
clickmaker (2007-10-04 14:25:00) [5]а DataLink.DataSet.State не подойдет?