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

CachedUpdates и отмена дейтсвий   Найти похожие ветки 

 
Opilki_Inside ©   (2006-08-07 15:45) [0]

CachedUpdates штука конечно хорошая. Но вот чего явно ей не достает - так это нормальная отмена последнего действия.
Чисто теоретически ее можно реализовать с помощью обработки соответствующих событий, может кто делал нечто подобное?


 
Desdechado ©   (2006-08-07 15:57) [1]

Dataset.Cancel


 
Opilki_Inside ©   (2006-08-07 16:40) [2]

Хех... Я наверно непонятно объяснил...

Если я вызову процедуру Cancel, то отменятся все записи, которые пользователь отредактировал/удалил, ну и конечно которые находились в локальном кэше.
Я хочу, что бы когда пользователь нажимал "Отмена" - отменялось только последнее действие пользователя (хотя бы отменялись изменения в конкретной записи, кстати там есть функция отменающая изменения в текущей записи...), и эта процедура не затрагивала всех записей (если их > 1 ест-но) в кэше. И что бы была возможность отменять изменения, пока кэш не станет пустым... Теперь понятно?


 
Romkin ©   (2006-08-07 16:41) [3]

Используй TClientDataset


 
evvcom ©   (2006-08-07 16:44) [4]

> [2] Opilki_Inside ©   (07.08.06 16:40)

Cancel отменяет только изменения текущей редактируемой записи, т.е. тех, которые не зафиксированы методом Post. А все изменения отменяются методом CancelUpdates.

> И что бы была возможность отменять изменения, пока кэш не
> станет пустым...

А уж это извините-с не реализовано. Напиши свой датасет и реализуй.


 
Opilki_Inside ©   (2006-08-07 17:14) [5]


> Используй TClientDataset

Была такая мысль, но я не понимаю почему разработчики не сделали этого в датасете, кэш-то все равно хранит все изменения...


> А уж это извините-с не реализовано. Напиши свой датасет
> и реализуй.

Ну так я и спрашивал - кто-нибудь писал что-то подобное? А что этого нет я и так знаю.


 
Desdechado ©   (2006-08-07 17:23) [6]

> почему разработчики не сделали этого в датасете, кэш-то
> все равно хранит все изменения.
Он хранит изменения, а не их последовательность.

Встречный вопрос - почему в MS Paint сделан откат всего одной операции? Несложно ведь...


 
Opilki_Inside ©   (2006-08-07 17:32) [7]


> Встречный вопрос - почему в MS Paint сделан откат всего
> одной операции? Несложно ведь...


А почему в WordPad"е сделан откат нескольких операций?


 
Медведъ   (2006-08-07 17:57) [8]

веди лог изменений в отдельном датасете - значения полей до их изменения
при откате извлекай последнюю и пост их в рабочий датасет



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

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



Память: 0.47 MB
Время: 0.025 c
1-1156455983
DevilDevil
2006-08-25 01:46
2006.10.08
Безопасное аварийное завершение приложения


15-1158341679
DillerXX
2006-09-15 21:34
2006.10.08
Дневной по СТС идёт....


15-1158217608
QuickFinder
2006-09-14 11:06
2006.10.08
Терминатор и батарейка для ноутбука


15-1158332236
Deqww
2006-09-15 18:57
2006.10.08
Рекурсия - непонятная штука!


15-1158157573
oldman
2006-09-13 18:26
2006.10.08
Надо купить комп. Все новые камни уже 64.




   Наверх