Я пытаюсь найти, если запись уже существует в таблице - PullRequest
0 голосов
/ 14 апреля 2020

Я пытаюсь проверить, существует ли запись для постоянного адреса пациента. Я попробовал следующий код, но он дает мне ошибку, так как несоответствие типов данных в выражении критериев совпадает. AddressType - это текстовое поле, а ClientCategory - это число. Я поместил событие onload кода основной формы:

If Not IsNull(DLookup("ID", "TableAddresses", "ID = '" & Me.PatientID & "' And AddressType = '" & "Permanent" & "' And ClientCategory = '" & Me.ClientCategory & "'")) Then
    Me!FrmClienPatientAddressViewsubform.Form!SameAsLocal.Value = True
Else                 
    Me!FrmClienPatientAddressViewsubform.Form!SameAsLocal.Value = False
End If

Ответы [ 2 ]

0 голосов
/ 20 апреля 2020

Как правило, правило таково: строки в апострофах, целые числа без апострофов.

Если решение Густава не является правильным и вам нужны другие параметры, решение может быть:

Me!FrmClienPatientAddressViewsubform.Form!SameAsLocal.Value = _
    Not IsNull(DLookup("ID", "TableAddresses", "ID = " & Me.PatientID & _
    " And AddressType = 'Permanent' And ClientCategory = " & Me.ClientCategory))
0 голосов
/ 14 апреля 2020

Что-то здесь не так.

ID обычно является уникальным ключом, поэтому это единственное значение, необходимое для поиска записи:

If Not IsNull(DLookup("ID", "TableAddresses", "ID = " & Me.PatientID & "")) Then
    Me!FrmClienPatientAddressViewsubform.Form!SameAsLocal.Value = True
Else                 
    Me!FrmClienPatientAddressViewsubform.Form!SameAsLocal.Value = False
End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...