Как избежать предупреждения "Вы не сможете отменить изменения, которые этот запрос действия собирается внести в данные в связанной таблице или таблицах"
Я написал код для вызова модуля при нажатии кнопки в форме доступа, и когда я нажимаю кнопку 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