Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Обработать отмену удаления. [D7]


Duce ©   (2003-10-28 14:12:00) 

Мое почтение!

Имеем D7+ODAC. TOraQuery, SQLDelete содержит вызов процедуры.
После вызова в AfterUpdateExecute содержится проверка на
RowsProcessed>1, и если больше, то
OraQuerySelf.Session.Rollback. Проблема в том,
что все равно происходит визуальное удаление в сетке.
Попробовал отвязывать\привязывать по новой DataSet - хрень,
что-то некорректно работает в случае, если кол-во записей
запроса больше видимого в Grid. Визуально удаляет, причем не
ту запись.Еще хуже, что удаляет и в курсоре OraQuery - при
пересчете записей действительно становиться меньше.
Как бы это обойти? Чтобы не было такого побочного эффекта.
Open\Close делать очень не хочется, это вызывает связанные
трудоемкие операции. Дурацкую процедуру удаления
переписать нельзя.


Johnmen   (2003-10-28 14:39:00) [1]

Стандартный, я подчеркиваю, стандартный подход - использовать всё по прямому назначению. SQLDelete должен обеспечить удаление одной и только одной записи.


Наверх

Титульная страница Поиск, карта сайта Написать письмо