Проверка поля формы доступа: проверка по таблице - PullRequest
0 голосов
/ 16 июня 2020

Хотя мой вопрос кажется простым, я посмотрел и не нашел ничего подходящего. У меня есть форма, которая отображает таблицу (table1), в которой пользователь может редактировать два поля номера детали (короткий текст), Alt_PN и Master_PN.

Я хочу выполнить следующие проверки полей в table1:

  • Alt_PN: НЕ присутствует в Alt_PN в таблице 2 и НЕ присутствует в Master_PN таблицы 3
  • Master_PN: присутствует в Master_PN в таблице 3

Поведение Я ищу, что если запись редактируется или создается новая запись, появляется сообщение об ошибке, описывающее ошибку, позволяющую пользователю отредактировать или отменить.

Вот код, который я пробовал для AfterUpdate для Master_PN:

Private Sub txtAHW_PN_AfterUpdate()
Dim strSQL As String
strSQL = "SELECT *" & vbCrLf & _
    "FROM tbl_Base_PN_Validation " & vbCrLf & _
    "WHERE (tbl_Base_PN_Validation.Valid_Part_Number= '" & txtAHW_PN & "');"
    Err.Clear
    fnc_g_GLOBAL_DB.Execute strSQL, dbFailOnError
    If Err.Number <> 0 Then
        MsgBox ("Error: part number not a master PN. Pls reeenter.")
    End If
End Sub

Когда я ввожу допустимое значение txtAHW_PN из NS103680-8, переменная strSql имеет значение

SELECT *
FROM tbl_Base_PN_Validation 
WHERE (tbl_Base_PN_Validation.Valid_Part_Number= 'NS103680-8');

При запуске это находится в редакторе запросов Я получаю действительную таблицу результатов. В VBA я получаю dbFailOnError ошибку 128.

Любая помощь приветствуется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...