Sorb
Дата: 01.03.2016 06:40:10
Приветствую всех. В Access только начинаю, но уже возникла такая проблема: имеется форма для редактирования записей. При открытии формы(так как граф много) делается запрос и заполняются поля, дабы пользователю все данные не пришлось вновь вносить. Вот только возникла одна проблема: как только заполняется любое поле-сразу же вносятся изменения в бд. Как возможно сделать так, чтобы изменения вносились сразу пачкой и только по нажатию кнопки?
MrShin
Дата: 01.03.2016 07:58:14
Акцесс устроен так, что при любой смене фокуса с текущей строки в форме на базе запроса изменения вносятся в базу. Поэтому решений для сохранения всего сразу только по кнопке не так много:
1. Использовать unbound поля, заполняя их кодом при открытии и затем кодом же разносить по таблице - самое муторное решение
2. Использовать временную таблицу для редактирования и переностить готовые данные в основную по кнопке - пожалуй, самое правильное решение
3. Сохранять копию данных перед началом редактировани и восстанавливать в случае отмены. Иногда это проще, чем №2, но не всегда логика приложения позволяет это сделать, если нужна транзакционная целостность.