Под-формы MS Access - PullRequest
       27

Под-формы MS Access

0 голосов
/ 22 октября 2011

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

Пока что я настроил ее так, чтобы я мог редактировать информацию о домохозяйстве, просматривать / редактировать всех людей, связанных с ней, и расширять данные о человеке, чтобы просмотреть 1 (из 3) связанных таблиц объединенияс этим человеком записи.Я не могу понять, как сделать так, чтобы все 3 таблицы были видны, кто-нибудь знает, как это сделать?

One join table shown in the expansion.

Ответы [ 2 ]

2 голосов
/ 23 октября 2011

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

Затем вы создаете форму 4 и добавляете вышеуказанные 3 формы.

В мастереформа (которая теперь является подчиненной), в текущем событии вы помещаете следующую команду, чтобы дочерние формы следовали этой форме.

me.Parent.Child1.Requery me.Parent.Child2.Requery.

В настройках ссылки дочерний / основной для дочернего элемента 1 вы размещаете:

linkChildFields main_id (каково бы ни было имя поля в этой подформе, которое используется для связи с родителемтаблица) LinkMasterFields [MasterForm]. [form]. [ID]

В настройках ссылки дочерний / основной для дочерней формы 2 вы помещаете

linkChildFields main_id (каково бы ни было имя поля вэта подформа, которая используется для связи с родительской таблицей) LinkMasterFields [MasterForm]. [form]. [ID] («masterForm» - это имя элемента управления, которое вы использовали для хранения главной формы).

Экран «многие» для многих выглядит следующим образом:

enter image description here

Выше приведен классический учет или распределение средств, при котором мы берем сумму, равную 50 долларам, и распределяем сумму по многим счетам.

0 голосов
/ 22 октября 2011

Звучит как структурная проблема, на самом деле.Разве не было бы более эффективно основывать свои таблицы вспомогательных свойств (диетические ограничения, занятия и т. Д.) - свойства, которыми один человек может обладать рядом - на вашей личной информационной таблице, возможно, привязанной к какому-то индивидуальному идентификатору (работодатели)часто используют SSN, поскольку они уникальны - хотя в вашем случае вы можете просто сделать их автоматически генерирующими).Такие элементы, как этническая принадлежность и положение в домашнем хозяйстве, - это то, чем обладает индивид, и что вы действительно могли бы поместить в свою личную информационную таблицу.

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

...