![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
BeforeApplyUpdates
Binardy © (2006-01-17 15:22:00)Люди, объясните популярно, как обработать событие BeforeApplyUpdates компонента TDataSetProvider, чтобы получить информацию о вставляемых (изменяемых) данных?
Как их изменить или убрать лишние записи?
Binardy (2006-01-20 10:32:00) [1]Сервере приложений
Desdechado (2006-01-19 19:16:00) [2]сервере чего?
SQL-сервере или сервере приложений?
Binardy (2006-01-19 18:38:00) [3]Еще один вопрос вдогонку:
Если используется TIBStoredProc, то
как перехватить на сервере параметры, переданные в процедуру?
Конечно, можно на клиенте упаковать их и передать при исполнении через OwnerData, но, наверное, есть способ лучше, да и от клиентского приложения зависеть не хочется.
Desdechado (2006-01-18 18:24:00) [4]приношу свои извинения - я тоже, оказывается, невнимательно читал
прочитал одно название события, а имел ввиду другое, о котором потом и написал
BeforeUpdateRecord, кстати, вызывается для КАЖДОЙ ОТДЕЛЬНОЙ строки датасета
Binardy (2006-01-18 15:32:00) [5]Премного благодарен.
Я просто уперся в событие BeforeApplyUpdates, полагая, что в нем можно обработать весь пакет изменений.
Нужно сгруппировать изменения, сделанные пользователем, например, 1 может вставить 3 записи, а второй только 2. Когда работает много пользователей, анализ по записи усложняется.
Пойду думать.
Desdechado (2006-01-18 13:09:00) [6]учимся читать ВНИМАТЕЛЬНО
procedure TEdAddrTbls.dspBldnBeforeUpdateRecord( Sender: TObject; SourceDS: TDataSet;
DeltaDS: TCustomClientDataSet; UpdateKind: TUpdateKind; var Applied: Boolean );
Binardy (2006-01-18 11:53:00) [7]Я пробовал по аналогии с ClientDataSet, но ничего похожего на дельту не нашел.
Как обратьиться к дельте DataSetProvider`a?
Приведите пожалуйста пример.
Desdechado (2006-01-17 15:48:00) [8]в DeltaDS хранятся внесенные изменения
лишние они или нет, можешь решить сам по разным соображениям, например, сравнив с исходным DS
Applied:=True указывает, что данная строка обработана (а как именно, дело твое)
Sergey13 (2006-01-17 15:25:00) [9]Может проще в BeforePost?