MS Access. ADO набор записей для подчиненной формы. Детские отношения устанавливаются программно. Не заполняется автоматически - PullRequest
1 голос
/ 11 ноября 2009

У меня есть форма / подчиненная форма для ввода данных в таблицу ado. Основной набор записей формы - это локальная таблица виджетов и информация о виджетах (WidgetID, WidgetName, размер, цвет, местоположение и т. Д.). Я вводю тестовые данные (несколько тестов на виджет, все с уникальными датами) через подчиненную форму, которая связана с набором записей ADO, с таблицей, называемой Тестами. У меня есть поле со списком findWidget в главной форме, где пользователь может выбрать WidgetID, и он обновляет некоторую информацию в главной форме. Я также написал код VBA, чтобы выполнить работу отношения родитель / потомок, чтобы изменить набор записей подчиненной формы, чтобы показывать только те тесты, которые соответствуют этому WidgetID. Однако в подчиненной форме есть поле для WidgetID, которое я хотел бы заполнить автоматически при выборе WidgetID в основной форме. Это просто работало, прежде чем я применил набор записей ADO (я использовал две локальные таблицы), и я установил отношения родитель / потомок. Тем не менее, с ADO кажется, что родитель / ребенок не работает, поэтому я должен VBA его. Вот код, который я пробовал, это когда загружается подчиненная форма:
Private Sub Form_Load()<br> Me.UCI = Forms!InputMainForm.findWidget<br> End Sub
Код выполняется без ошибок, но элемент управления в подчиненной форме не обновляется. Это просто пусто при загрузке формы. Может быть, код должен быть в после обновления комманды findWidget? Я не знаю. Если я положу его туда, я не совсем уверен, как обращаться к элементам управления подчиненной формы. Есть идеи?
Спасибо.

1 Ответ

2 голосов
/ 11 ноября 2009

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

...