Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2003, 09:48 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
Т.е. конечно же "редактирование - откат/сохранение" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2003, 09:50 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
Я добавляю специальную (отдельную) форму для редактирования записи. При этом в событии init или load для таблицы делаю буферизацию строк. При выходе из формы редактирования - две кнопки "СОХРАНИТЬ ИЗМЕНЕНИЯ" и "ОТКАЗАТЬСЯ". Для не очень больших таблиц - можно сделать буферизацию всей таблицы и в конце - общую кнопку сохранить (надо будет жать по ходу работы, чтоб запомнить изменения)... Можно еще применять и транзакции (именно в момент сохранения только, но я не применяю их по причине того, что у меня обычно отдельные таблицы, а не база данных FoxPro) В общем все зависит от Вашей фантазии... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2003, 01:35 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
Для редактировния используются переменные памяти (SCATTER MEMVAR), а что может быть проше очистить переменные памяти или занести из значения в таблицу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2003, 07:48 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
Я с таблами работаю через вьюхи. Ну, а в оных есть буферизация, которую в зависимости от задачи можно распостранять либо на текущую запись, либо на всю вьюху. Проблемов пока не было. К тому ж код не придется сильно модифицировать при переходе на удаленные источники данных (СиКуЭль, к примеру). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2003, 11:42 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
Я при редактировани, добавлении создаю новую временную таблицу с одной строкой - такой же как и у источника. Если добавление то с пустой, если редактирование то с той записью которая нужна. И сидит мой Юзверь и лепит эту строку потихоньку. А как сохранять соберется, то тут уж я иэ этой таблички...в оригинальную. Причем так это все класно работает еще с Досовских времен....Поэтому долго тупил с переходом на VFP. Да и перешел похоже не весь... Не знаю ничего о буферизации... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.08.2003, 11:39 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
Я тоже делаю почти как и MaestroEv. Отличие в том, что временую(ые) таблицы делаю не с одной строкой, а сколько нужно по ходу работы. Т.е. работа, фактически идет с временной таблицей: новые записи добавляются, а существующие копируются для редактирования (ID записи, естественно, редактированию не подлежит). Затем, если пользователь нажал кнопочку "Сохранить" все из временной добавляет/обновляет в основной, временная от записей очищается. Если забыл сохранить и пытается закрыть приложение то получает предложение о сохранении изменений. При этом есть возможность делать пошаговую отмену изменений. Вот "отмену отмены" - "Вернуть" пока не реализовал, особой необходимости нет хотя было бы неплохо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2003, 07:13 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
Ребята, а как лучше реализовать эту вещь, в том случае, если для редактирования вызвана одна записью опорной таблицы, но работа с этой записью вовлекает в редактирование целую кучу сопутствующих дочерних таблиц, которые в свою очередь тоже могут редактироваться и т.д... Т.е. у меня на 1 запись опорной таблицы вызывается 9 вьюшек на связанные таблички, каждая из которых может содержать несколько записей... Т.е. никак не соображу чего было бы лучше... В свое время пользовался обрамлением процесса редактирования в транзакцию - но внутри нее нельзя делать requery() еще какие-то ограничения, и меня чего-то это остановило... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2003, 09:59 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
Т.е. у меня на 1 запись опорной таблицы вызывается 9 вьюшек на связанные таблички, каждая из которых может содержать несколько записей... Серьезно... А прикладной смысл этого какой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2003, 10:35 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
Дык ежели ты редактируешь некий набор записей по разным таблицам, тебе надо создавать вьюхи на весь набор. Например, в "опорной" ты редактируешь 1 запись, в связанной таблице у тебя 2 записи, которым в свою очередь соответствуют еще по две записи в третьей. Тогда тебе надо во вьюху на 2-ю таблицу выбирать 2 записи, на 3-ю - 2*2=4. Естессвенно это дело надо предусомтреть в условиях select"а вьюх. Эти вьюхи можно связать рилэйшном (либо фильтр прикрутить), чтоб в экранной форме отображались только соответсвия. Сохраняешь изменения tableupdate"ом. Единственная проблема, как организовать откат изменений по всем вьхам, если в одной из них при сохранении возникли какие-то проблемы. Для этого используются транзакции. Хотя я лично ими не пользуюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2003, 10:36 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
Да, похоже надо разбираться с буферизацией... И работать через tableupdate Про это на родном форуме было до фига всего....((( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2003, 11:50 |
|
||
|
Кто как организует связку "редактировать" - "откатить"/"
|
|||
|---|---|---|---|
|
#18+
для таких случаев был ОффЛайн :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2003, 12:02 |
|
||
|
|

start [/forum/topic.php?fid=41&tid=1597987]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
133ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 486ms |

| 0 / 0 |
