Добавить элемент из запроса в форму - PullRequest
0 голосов
/ 24 ноября 2011

Я нахожусь на Access 2010.

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

У меня есть таблица с именем ParticipantMaster, в которую входят такие поля, как ParticipantID, FirstName, LastName, Address, Phone и т. Д., И форма записи, построенная на этой таблице.

У меня есть набор форм / таблиц, которые собирают данные о посещаемости (с уровнями, чтобы показать, посещали ли они сеанс ЧАСТИЧНЫЙ, ПОЛОВИННЫЙ или ПОЛНЫЙ) ... поля, относящиеся к моему вопросу, здесь включают ParticipantID (от участника-участника) , WorkshopID, Level.

На основании данных о посещаемости я создал запрос под названием Attendance_FullorHalf, который подсчитывает, сколько полугодовых или полных сессий посетил каждый участник. Поля включают ParticipantID, CountStatus, FirstName, LastName. Этот запрос работает правильно.

Помимо посещаемости, у меня есть таблица и форма под названием Interviews, которые регистрируются каждый раз, когда я звоню Участнику. Они получают право на собеседование только после того, как их количество посещений> 2.

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

Может быть, текстовое поле, которое отображает что-то вроде

SELECT CountStatus from Attendance_FullorHalf 
WHERE ParticipantID (from Attendance_FullorHalf query) = ParticipantID (of the record I'm on in the interview form)

Я знаю, что это не то утверждение, которое мне нужно - я просто написал это, чтобы помочь объяснить мой вопрос.

Так что, если я нахожусь в форме собеседования, вводя информацию об участнике, чей ID 20-563, я хочу, чтобы в этой форме отображалось количество участников сессий с номером 20-563.

Надеюсь, мой вопрос ясен - большое спасибо !!

1 Ответ

1 голос
/ 24 ноября 2011

Конечно, в событии oncurrent форм вы можете написать запрос, который извлекает цифры посещаемости для этого идентификатора участника, а затем обновить текстовое поле с результатом запроса.

Я что-то здесь упустил?

РЕДАКТИРОВАТЬ СЛЕДУЮЩИЙ ИЗ КОММЕНТАРИИ НИЖЕ:

создать текстовое поле в форме регистрации интервью

создать событие onCurrent для формы и выбрать построитель кода, у вас должно появиться окно, которое выглядит ниже

Private Sub Form_Current()

End Sub

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

Private Sub Form_Current()
    Dim rs as DAO.Recordset 'recordset object to hold the results of the sql query
    set rs = CurrentDB.OpenRecordset("INSERT YOUR SQL HERE")
    If rs.RecordCount > 0 Then 'we have a value for this participant
        txtBox.Text = rs![FIELDNAME] 'update the textboxes text value
    Else
        txtBox.Text = "0" 'else no value means 0
    End If
    set rs = nothing ' clean up the recordset after we've finished with it
End Sub

теперь вышеприведенное ОЧЕНЬ ОЧЕНЬ грубои грязный, но принцип довольно здравый.откройте набор записей, запустите свой SQL против него, если набор записей теперь имеет результаты, обновите текстовое поле с этими результатами.

надеюсь, что это поможет вам начать

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