Создание подчинённых форм (Лабораторная работа № 6), страница 4

Форма “План”

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

Форма содержит три свободных управляющих поля со списком КодОтделения, КодСпециальности, Семестр основанные на таблицах Отделения, Специальности, Семестры соответственно.

При открытии формы значения управляющих полей считываются с главной формы за счёт установки значений по умолчанию: [Forms]![Главная]![КодОтделения], [Forms]![Главная]![КодСпециальности], [Forms]![Главная]![Семестр].

Простая форма План основана на запросе ПланСпециальности и содержит подчинённую ленточную форму ПланСпециальности, основанную на запросе ПланСпециальности. Формы связаны по значению полей КодОтделения, КодСпециальности, Семестр.

Ленточная форма ПланСпециальности содержит поле со списком КодПредмета, которое основано на SQL-запросе:

SELECT [Предметы].[КодПредмета], [Предметы].[Предмет] FROM Предметы ORDER BY [Предметы].[Предмет];

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

В примечании форма ПланСпециальности расположены поля, отображающие итоговые значения плана текущего семестра: Дисциплин, Экзаменов, Часов, для которых значения свойства Данные установлено равным = Count([КодПредмета]), = - Sum([КодКонтроля]), = Sum([Часы]) соответственно. Значения других свойств приведены в таблице.

Свойство

Значение

Доступ

Нет

Блокировка

Да

Тип фона

Прозрачный

Оформление

обычное

Шрифт

Arial

Размер шрифта

11

Насыщенность

плотный

Тип границы

Отсутствует

Запросы формы “План”

Запрос ПланСпециальности

На базе таблиц План и Предметы создайте запрос ПланСпециальности, содержащий поля: КодПредмета, Предмет, КодКонтроля, КодОтделения, КодСпециальности и Часы. Записи в запросе должны быть отсортированы по названию предмета.

Поле

Таблица

Сортировка

КодПредмета

План

Предмет

Предметы

по возрастанию

КодКонтроля

План

КодСпециальности

План

КодОтделения

План

Семестр

План

Часы

План

КодГода

План

КодСпециальности

План

Модуль формы “План”

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

Private Sub КодОтделения_Change()

Forms.Главная.КодОтделения = Me.КодОтделения

End Sub

Private Sub КодСпециальности_Change()

Forms.Главная.КодСпециальности = Me.КодСпециальности

End Sub

Private Sub Семестр_Change()

Forms.Главная.Семестр = Me.Семестр

End Sub

Private Sub КнопкаПредметы_Click()

DoCmd.Close

DoCmd.OpenForm "Предметы"

End Sub

Private Sub КнопкаЗакрыть_Click()

DoCmd.Close

End Sub

Private Sub КнопкаДисциплины_Click()

DoCmd.Close

DoCmd.OpenForm "Дисциплины"

End Sub

Контрольные  вопросы

1.  Создание подчинённой формы.

2.  Основные и подчинённые поля.

3.  Условия, необходимые для связывания основной и подчинённой форм