MS Access: Как добавить ранее существующий дочерний элемент в коллекцию в родительской форме - PullRequest
0 голосов
/ 10 февраля 2012

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

Возможно ли это в MS Access 2010?

Спасибо ...

1 Ответ

1 голос
/ 10 февраля 2012

Один из способов - создать форму и подчиненную форму и установить для свойства Allow Additions подчиненной формы значение No, это предотвратит создание дочерних элементов. Затем добавьте кнопку в строку с именем, скажем, Assign, событие Click этой кнопки затем обновит FK для детей до PK для родителей, скажем:

Me.txtParentID = Me.Parent.txtID

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

Вы можете исключить назначенных детей из вашей формы.

Есть, конечно, несколько других способов сделать это.

Редактировать

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

SELECT ID, Something FROM Children WHERE ParentID Is Null

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

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

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

...