Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диго С.М. Базы данных проектирование и использование.doc
Скачиваний:
720
Добавлен:
14.05.2016
Размер:
12.04 Mб
Скачать

Создание многотабличной формы с помощью Мастера

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

Внимание! Порядок, в котором выбираются таблицы при создании «многотабличной формы», имеет большое значение.

Предположим, что мы хотим создать экранную форму, содержа­щую сведения из таблиц «Сотрудник» и «Дети». Если выберем снача­ла таблицу «Сотрудник» и из нее - поле «ФИО», а затем таблицу «Дети» и из нее - все поля, то создастся составная форма, которую удобно использовать для ввода данных в таблицу «Дети». Создание многотабличной формы начинается так же, как и создание однотабличной формы. На первом шаге выбираем способ создания формы -«Мастер форм» и таблицу-источник - «Сотрудник». На втором шаге из таблицы «Сотрудник» выберем поле «ФИО». После этого вернем­ся к окошку «Таблицы и запросы» и выберем в нем вторую, соподчи­ненную таблицу - «Дети» (рис. 8.7). Перенесем все поля из этой таб­лицы в форму.

Дальнейшая последовательность шагов создания составной фор­ мы представлена на рис. 8.8 - 8.10. ,

Сначала выбирается вид представления данных - подчиненная или связанная форма (рис. 8.8). Для наших целей подходит подчи­ненная форма.

Затем выбирается вид подчиненной формы (рис. 8.9).

Следующий шаг (рис. 8.10 - выбор стиля) совпадает с аналогичным шагом при создании однотабличной формы.

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

На рис. 8.11 представлен вид составной формы в режиме формы.

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

При использовании составных экранных форм можно легко пе­ремещаться по записям как подчиненной формы, так и главной фор­мы. Для этого используется соответствующий набор кнопок перехо­да. Кроме того, для быстрого позиционирования на нужную запись можно воспользоваться возможностью поиска в БД. Для этого можно выбрать позицию меню Правка/Найти (или воспользоваться соот­ветствующей кнопкой инструментального меню) и в появившемся окне ввести условие поиска.

Если при построении многотабличной формы сначала выбрать таблицу, находящуюся на стороне «многие» в отношении «1:М» (в нашем примере это таблица «Дети»), а потом таблицу, находящуюся на стороне «1» (в нашем примере это таблица «Сотрудник»), то многотабличная экранная форма также будет создана, но это будет со­всем иная форма, чем та, что изображена на рис. 8.11. Это будет фор­ма, в которой отображаются записи подчиненной таблицы (т.е. таб­лицы «Дети»), к которым присоединены поля из соответствующей записи основной таблицы. Никакой соподчиненности форм при этом не наблюдается. Создается только одно описание формы, а не два, как в предыдущем случае.

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