Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BBD_Shpory.doc
Скачиваний:
11
Добавлен:
26.09.2019
Размер:
13.1 Mб
Скачать

24. Создание и использование подчинённых форм (с помощью мастера и без него). Связывание главной и подчинённой форм. Создание итогов в подчинённых формах.

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

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

Главная форма может быть выведена только как простая. Подчиненная - как таблица, ленточная, простая.

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

В диалоге «Новая форма» выбрать «Мастер». В окне источника данных- таблицу главной формы. Выбираются поля для главной формы. Затем выбирается вторая таблица (для подчиненной формы) и из нее выбираются поля и добавляются в список выбранных по-лей. Следующее диалоговое окно предлагает выбрать тип представления данных: «Подчиненные формы», «Связанные формы». Access на основе анализа типа связи сам устанавливает «Подчиненные формы» и можно пройти «Далее».

Остается уточнить вид (ленточный или табличный). По умолчанию принимается табличный. И указать имена форм (лучше дать похожие, чтобы легче ориентироваться в окне БД).

Есть другой способ - без использования мастера.

Вставка подчиненной формы в главную

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

Шаги:

1. отобразить главную форму в режиме конструктора и установить размер окна в среднее положение так, чтобы было видно окно БД.

2. В окне БД обеспечить вкладку «Формы» и перетащить подчиненную форму.

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

4. Вызвать окно свойств подчиненной формы для проверки или установления связи.

Связывание главной и подчиненной форм

Access устанавливает связь автоматически при соблюдении следующих условий:

• Главная и подчиненная формы созданы на основе таблиц, между которыми указана связь в Схеме БД.

SELECT

Выбрать

Выбрать данные из БД

INSERT

Добавить

Добавить данные в БД

UPDATE

Обновить

Обновить данные в БД

DELETE

Удалить

Удалить данные из БД

GRANT

Разрешить

Предоставить привилегию пользователю

REVOKE

Отменить

Отменить привилегию пользователя

COMMIT

ЗАФИКСИРОВАТЬ

Зафиксировать текущую транзакцию

ROLLBACK

ПРЕРВАТЬ

Прервать текущую транзакцию

• Главная форма базируется на таблице с ключом, а подчиненная форма базируется на таблице, содержащей поле с тем же именем, что и ключевое поле и с тем же или совместимым типом данных. Например: Счетчик и Числовой - длинное целое.

Если Access обнаружил связь, то в строках свойств будут показаны имена полей связи и нужно убедиться в правильности. Если главная таблица базируется на запросе (или не выполнено одно из условий), Access не выполнит автосвязывание.

Создание итогов в подчиненных формах

Часто для вложенных форм необходимо показать итоговое значение по одному из полей. Например, в форме Заказ с вложенным перечнем Товаров необходимо показать итоговую сумму заказа. Выражение для вычисления суммы должно относиться к объекту вложенной формы, но разместить это поле возможно только вне поля таблицы. Для этого может быть использована область Примечания вложенной формы. Однако, поле, расположенное в примечании табличной формы – невидимо. Для визуализации содержимого итогового поля создаётся вычисляемое поле на форме-контейнере в соответствующей позиции (под суммируемым столбцом) и в качестве выражения указывается ссылка на итоговое поле. Пример ссылки для формы Заказы БД «Борей»:

=[Подчиненная форма заказов].Form!ПромежуточнаяСумма

Для освоения описанной технологии нужно просмотреть в режиме конструктора формы Подчинённая форма заказов и Заказы. Выражения можно прочитать во вкладке Данные свойств поля.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]