![]() |
|
|
![]()
|
|
| AriX |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 16.6.2003 Репутация: нет Всего: 19 |
База - Access, метод доступа - ADO.
Версия EhLib - 4.0.7, DBGridEh - 4.0.21. Связка ADODataDriver + MemTableEh + DBGridEh. Свойство ADODataDriver.DeleteSQL заполнено правильно. Включен режим CachedUpdates. Работа по изменению данных ведется в DBGridEh, потом вызывается метод ApplyUpdates. Все работает, кроме Delete. При удалении данных из таблицы после вызова ApplyUpdates вылетает ошибка: "Can not delete Record if it present in DeletedList" и данные не удаляются из базы... Голову сломал, но разобраться не могу :( Заранее спасибо! |
|||
|
||||
| AriX |
|
||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 16.6.2003 Репутация: нет Всего: 19 |
Чтож, сам и отвечу.
Лезем в модуль MemTableDataEh.pas. Ищем процедуру FreeDeletedRecords. Если она такого вида:
Меняем на это:
Т.е. запись Rec в списке на удаление DeletedList нужно выставить в nil, т.к. при Rec.Free вызывается:
где проверяется, есть ли запись в списке, и если есть - вызываем эксепшн. Может кому-то пригодится. ЗЫ: В версии EhLib 4.1 (MemTableDataEh.pas 4.1.28) эта ошибка исправлена. Это сообщение отредактировал(а) AriX - 14.5.2007, 17:03 |
||||||
|
|||||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |