-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4


Передать cancel=true обратно в событие формы

Среда, 06 Февраля 2019 г. 11:21 + в цитатник
Всем добрый день. Решил на форму на before_update поставить обычное предупреждение для пользователя, о том нужно ли сохранять или нет данные если они изменились при переходе на другую запись

Private Sub Form_BeforeUpdate(Cancel As Integer)
On Error GoTo Error_Handler 'обработчик ошибок
'====================================

If MsgBox("В форму внесены изменения, сохранить?", vbYesNo + vbExclamation + vbDefaultButton1, "Предупреждение") = vbNo Then
     Cancel = True
     Me.Undo
End If

'======================
Exit_Sub: 'обработчик ошибок
     On Error Resume Next
     Exit Sub
Error_Handler:
     If Err.Number = 0 Then
          Resume Next
     Else
          Call prcОбработкаОшибок(Err.Number, Err.Description, Err.Source, Erl)
     End If
     Resume Exit_Sub
     Resume
End Sub


Чтобы не "лепить" то же самое для каждой формы решил что надо вынести в публичную процедуру в модуль, а из события просто вызывать процедуру

Public Sub prcКонтрольИзмененийФормы(frmName As String)
Dim frm As Form

Set frm = Forms(frmName)


If MsgBox("В форму внесеные измнения, сохранить?", vbYesNo + vbExclamation + vbDefaultButton1, "Предупреждение") = vbNo Then
   'Cancel = True КАК ВОТ ЭТУ СТРОКУ ПЕРЕДАТЬ ОБРАТНО В СОБЫТИЕ ФОРМЫ, чтобы отменить UPDATE
   frm.Undo
End If

End Sub


Не пойму как Cancel = True передать обратно в событие формы, чтобы отменить UPDATE. Заранее благодарю за подсказку

https://www.sql.ru/forum/1308724/peredat-cancel-true-obratno-v-sobytie-formy


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку