Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Макет_методички_p2.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
1.21 Mб
Скачать

5.5. Создание формы, содержащей подчиненную форму (форма с отношением один-ко-многим)

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

5.5.1. Сведения о подчиненных формах

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

Подчиненные формы особенно удобны для отображения данных из таблиц или запросов, имеющих отношение один-ко-многим. Например, можно создать форму с подчиненной формой для отображения данных из таблиц «Категории» и «Товары». Данные в таблице «Категории» являются стороной отношения «один». Данные в таблице «Товары» являются стороной отношения «многие» — каждая категория может содержать несколько товаров.

Рис. 5.8

  1. В главной форме отображаются данные на стороне отношения один.

  2. В подчиненной форме отображаются данные на стороне отношения многие.

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

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

Табл. 5.1

Термин

Определение

Элемент управления подчиненной формы

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

Свойство Объект-источник (Source Object)

Свойство элемента управления подчиненной формы, которое определяет, какой объект отображается в элементе управления.

Таблица

Простое отображение данных в строках и столбцах, как в электронной таблице. В элементе управления подчиненной формы отображается таблица, когда объектом-источником является таблица или запрос, либо форма, для свойства Режим по умолчанию (Default View) которой задано значение Таблица. В этих случаях подчиненную форму иногда называют таблицей, а не подчиненной формой.

Свойство Подчиненные поля (Link Child Fields)

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

Свойство Основные поля (Link Master Fields)

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

Для достижения наилучшего результата рекомендуется сначала установить все связи. Это позволит Access автоматически создать связи между главными и подчиненными формами. Для просмотра, добавления или изменения связей между таблицами в базе данных на вкладке Дополнительные инструменты в группе Анализ щелкните Связи.

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

Ленточная форма - форма, в которой на экран в режиме формы выводятся несколько записей.

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

Можно также добавить в форму таблицу путем создания элемента управления подчиненной формы, объектом-источником для которого служит таблица или запрос. У таблицы меньше возможностей настройки, чем у подчиненной формы; например, в таблицу нельзя добавить вычисляемое поле. Однако можно создать подчиненную форму, основанную на форме, которая содержит вычисляемое поле, а затем для свойства Представление по умолчанию (Default View) формы задать значение Таблица. В результате подчиненная форма будет иметь вид таблицы и содержать вычисляемое поле.