Подтверждение изменения записи

Довольно часто пользователи, просматривая информацию, могут вносить изменения в данные, которые забывают "откатить", поскольку подобные просмотры часто заканчиваются нажатием кнопки "ОК". Подобная невнимательность приводит к некорректности существующей информации.

Ниже описана не "защита от дурака", а очень простой пример вопроса, который будет уточнять необходимость сохранения изменений.

В обработчик нажатия "ОК" добавлен следующий код:

         if (Dataset.State == dstEdit){
                   var AreYouSureYouWantToSaveChanges = "Сохранить внесенные изменения?";
                   
                   if (Dataset.Values('ContractNumber') !=
                   Dataset.DataFields.ItemsByName('ContractNumber').OldValue) {
                           
                                      if (ShowConfirmationDialog(AreYouSureYouWantToSaveChanges) != mrYes){
                                               return;
                                      }                
                   }
         }

В данном случае происходит проверка на изменение поля «номер договора». Если он отличается от старого значения, система задаст вопрос пользователю, в случае утвердительного ответа изменения будут сохранены.

/system/files/03-07-2012_22-57-56.png

Нравится

Поделиться

1 комментарий

Хорошо бы этот скрипт дополнить процедурой на изменение данных, т.е. если данные поменялись, то задать вопрос о сохранении изменений, в противном случае просто закрыть без сохранения изменений. И этот скрипт поместить в scr_BaseDBEdit.

Показать все комментарии