MS ACCESS: заполнить подчиненную форму данными из другой таблицы - PullRequest
0 голосов
/ 15 ноября 2011

В моей базе данных Access есть три таблицы.

**Table: Participants** 
ParticipantID   
FirstName   
LastName    
Address
Phone
SiteNameLookup  
YearLookup

**Table: DailyWorkshops**   
WkshpID 
WkshpDate   
AorB    
SiteStaff   
Artists 
Activities

**Table:  ParticipantAttendance**   
ParticipantID   Participants.ParticipantID
FirstName   Participants.FirstName
LastName    Participants.LastName
WkshpID DailyWorkshops.WkshpID
Level   *(here I have a lookup to fill in HALF/PARTIAL/FULL, not just yes/no)*

Я успешно создал форму DailyWorkshopsForm, в которой есть подчиненная форма ParticipantAttendance.Эта подчиненная форма полностью пуста.

Как теперь я могу заполнить подчиненную форму ParticipantAttendance из формы Участников, так что все, что мне нужно сделать, это проверить уровень посещаемости для каждого участника?Я могу выяснить, как искать только Participant.ParticipantID или просто Participant.FirstName или просто Participant.LastName - но поиск одного не заполняет автоматически другие ... так что я мог бы в конечном итоге найти идентификатор #но не получить имя, которое идет с ним.


Редактировать: Разъяснение вопроса и проблемы.

Спасибо ... как я смотрю на это больше яПоймите, что ParticipantAttendance - это не то, чем должна быть подчиненная форма ... это просто таблица, в которой в конечном итоге должны находиться данные о посещаемости.То, что мне нужно для подчиненной формы, выглядит примерно так:

WkshpID ParticipantID   FirstName  Lastname  Level

6   10-45   Bart    Simpson     Full

6   10-47   Ned Flanders    Half

6   10-49   George  Washington  None

6   10-50   Michelle Obama          Full

7   10-45   Bart    Simpson         Full

7   10-47   Ned Flanders    Full

7   10-49   George  Washington  Half

7   10-50   Michelle Obama          None

8   10-45   Bart    Simpson          Full

8   10-47   Ned Flanders    None

8   10-49   George  Washington  Half

8   10-50   Michelle  Obama     Half`

1 Ответ

0 голосов
/ 15 ноября 2011

Если вы посмотрите на свойства подчиненной формы, вы увидите, что есть способ указать отношение «внешнего ключа» между родительской формой и подчиненной формой (см. «Данные», «Поля главной ссылки»).«Связать дочерние поля»).В вашем случае вам нужно связать поле WkshpID обеих таблиц.

Затем просто используйте обычный запрос SQL как SELECT * FROM ParticipantAttendance в вашей подчиненной форме, условие WHERE будет автоматически навязано MS Access с использованием отношения внешнего ключаиз родительской формы и должным образом обновляется при переходе к другой строке данных в родительской форме.

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