2014-11-25 3 views
1

У меня есть форма, которая отправляет параметры в запрос, а затем открывает результирующую запись в другой форме. Проблема в том, что всякий раз, когда имеется более одной записи, она автоматически помещает первую в нее без какой-либо опции для выбора записи, которую я хочу. У меня есть макрос, настроенный на кнопку поиска в первой форме, которая отправляет параметры в запрос, а затем отображает его во второй форме, я пытался настроить другой макрос между ними, но я не знаю если возможно создать создателя выражения, чтобы проверить количество строк, полученных в результате запроса. Можно ли изменить запрос, чтобы создать приглашение выбрать, какую запись я хочу? Или мне нужно что-то изменить?Выбор из нескольких результатов запроса для отображения в одной форме

Это запрос: (автоматически создается путем доступа)

SELECT CHILD.CHILD_L_NAME, CHILD.CHILD_F_NAME, CHILD.DOB, CHILD.GENDER, CHILD.DAYS_IN_CARE, 
    CHILD.HOURS_PER_DAY, CHILD.ENROLLMENT_DATE, CHILD.CHILD_ADDRESS, CHILD.CHILD_CITY, 
    CHILD.CHILD_ZIP, CHILD.CHILD_STATE, CHILD.CLASSROOM, CHILD.SNACK, CHILD.LAST_UPDATED, CHILD.CIN 
FROM CHILD 
WHERE (((CHILD.CHILD_L_NAME)=[Forms]![Search]![L_NAME]) AND 
    ((CHILD.CHILD_F_NAME)=[Forms]![Search]![F_NAME])) OR 
    (((CHILD.CHILD_L_NAME)=[Forms]![Search]![L_NAME]) AND 
    ((CHILD.DOB)=[Forms]![Search]![DOB])) OR 
    (((CHILD.DOB)=[Forms]![Search]![DOB])) OR 
    (((CHILD.CHILD_L_NAME)=[Forms]![Search]![L_NAME])); 

ответ

0

Если я хорошо понял вашу проблему и использовать VBA это довольно легко сделать.

Вы можете создать уменьшенный запрос на основе запроса, который вы создаете с помощью кнопки. Этот новый запрос должен включать все и только поля, которые позволяют вам различать записи, отображаемые во второй форме.

Например, это может включать LastName, FirstName и класс для выбора между детьми с таким же полным именем.

Вы можете подсчитать количество записей этого второго запроса, и если оно больше 1, это означает, что у вас есть несколько детей, чтобы показывать.

Таким образом, вы можете использовать этот 2-й запрос для заполнения комбинированного окна или списка для выбора записи, которую вы действительно хотите отобразить.

Когда количество записей равно 1, вы можете просто пропустить популяцию списка, используя оператор if на recordcount.

Следующий шаг открывает форму с выбранной (или уникальной) записью.

До свидания

Смежные вопросы