Как избежать предупреждения "Вы не сможете отменить изменения, которые этот запрос действия собирается внести в данные в связанной таблице или таблицах"

Я написал код для вызова модуля при нажатии кнопки в форме доступа, и когда я нажимаю кнопку d, я получаю d следующих предупреждений:

"Вы не сможете отменить изменения, которые этот запрос действия собирается внести в данные в связанной таблице или таблицах"

а также

Msgstr "Вы собираетесь обновить строку (и) X".

Код за кнопкой:

Private Sub UpdateRS_Click()
    Call UpdateModul.Update
End Sub

И модуль это:

Public Function Update()
DoCmd.RunSQL "Update tbl03 INNER JOIN tblMaster " & _
 "ON tbl03.KW = tblOnd_RS.KW " & _
 "SET tbl03.CAp = [tblMaster].[CAp] "
End Function

Как избежать этих предупреждений? Я ценю любую помощь.

1 ответ

Решение

См. http://www.fmsinc.com/microsoftaccess/query/action-queries/SuppressWarningMessages.htm и http://www.utteraccess.com/wiki/index.php/RunSQL_vs_Execute.

Вы могли бы использовать

DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE ..."
DoCmd.SetWarnings True

но это имеет несколько проблем, например, ошибка может предотвратить DoCmd.SetWarnings True от бега, что может привести к катастрофе.

Намного лучше это:

Dim db As DAO.Database
Set db = CurrentDb  
db.Execute "UPDATE ...", dbFailOnError
Другие вопросы по тегам