Cоздайте форму, которая для каждого читателя выводит информацию о нем и список книг, которые у него на руках, с указанием Автора книги, Названия книги, Даты выдачи, даты возврата и поля Пеня, которое создано и вычисляется в запросе Начисление пени. Пеня начисляется в размере одного процента от стоимости книги за каждый просроченный день. Подсчитайте также общую сумму пени для каждого читателя. Форма должна иметь подчиненную форму со списком книг читателя. Данные в подчиненную форму должны браться из запроса Начисление пени. Вставьте на форму кнопки: Создание списка должников, Просмотр списка должников, Статистика по кафедрам. Начальный макет формы создайте с помощью Мастера форм, а потом улучшите его с помощью Конструктора.
113. На ленте выберите вкладку Создание в группе Формы выберите Другие формы/Мастер форм.
114. В окне окно Создание форм в раскрывающемся списке Таблицы и запросы выберите таблицу Читатели. Из списка Доступные поля перенесите в список Выбранные поля поля Номер, Фамилия, Кафедра и Телефон. Потом в раскрывающемся списке Таблицы и запросы выберите запрос Начисление пени. Его поля появятся в списке Доступные поля, перенесите в список Выбранные поля все поля запроса.
115. В следующем окне необходимо выбрать тип изображения данных. Выберите вид представления данных: Читатели, так как главной формой будет форма, которая показывает сведения о читателях. Отметьте переключатель Подчиненные формы, чтобы другие данные были вставлены в подчиненную форму.
116. В следующем окне диалога выберите вид подчиненной формы. Отметьте переключатель «ленточный».
117. Далее выберите стиль для главной формы. Стиль показывается в окне выбора сразу же, как только вы отметите один из них.
118. В следующем окне необходимо задать имена форм – главной и подчиненной. Дайте главной форме имя Читатели, а подчиненной – Начисление пени. Access создал две связанные формы. Их можно корректировать в режиме конструктора независимо, а также пользоваться подчиненной формой не зависимо от главной.
119. Улучшите созданную форму с помощью Конструктора форм. Для этого выберите Конструктор в кнопке Режим в группе Режимы на вкладке Главная.
Рисунок 42. Форма для таблицы Читатели, с подчиненной на основе запроса Начисление пени в формате конструктора
120. Добавьте в форму Начисление пени поле, в котором вычисляется общая сумма пени для каждого читателя. Откройте подчиненную форму Начисление пени в режиме конструктора, для этого выберите эту форму в Области переходов и выберите Конструктор в кнопке Режим в группе Режимы на вкладке Главная.
Рисунок 43. подчиненная форма Начисление пени в режиме конструктора
121. Удалите поле Номер. Уменьшите ширину формы, так, чтобы она лишь слегка выступала за поля.
122. В области Примечание формы создайте новое поле, которое вычисляется, используя инструмент Поле на вкладке Инструменты конструктора форм/Конструктор в группе Элементы управления. Дайте ему имя Всего пени, и на панели Окно свойств для свойства Данные задайте формулу: =Sum([Пеня]), по которой будет вычисляться сумма пени. Введите подпись перед этим полем, и новая форма готова. Сохраните сделанные изменения и откройте форму для просмотра. Увидите в форме записи обо всех выданных книгах и внизу в поле общую сумму пени по всем читателям.
123. Улучшим теперь вид формы Читатели. Для этого откройте форму Читатели в режиме конструктора. Растяните мышью область Заголовок формы, вставьте элемент управления Надпись в группе Элементы управления на вкладке Инструменты конструктора форм/Конструктор и напишите текст Информация о читателях и выданных книгах. Измените шрифт и его размер для лучшего вида.
124. Переместите поля Кафедра и Телефон вправо, чтобы освободить больше места для подчиненной формы. Для того чтобы получить возможность изменять положения элементов управления нужно убрать макет, выберите кнопку Удалить на вкладке Инструменты конструктора форм/Упорядочить в группе Макет элемента управления.
126. Внизу формы вставьте кнопку, используя инструмент Кнопка в группе Элементы управления на вкладке Инструменты конструктора форм/Конструктор.В диалоговом окне Создание кнопок в списке Категории выберите Разное, а в списке Действия выберите Выполнить запрос. В следующем диалоговом окне Создание кнопок в списке выберите запрос Должники. В следующем окне выберите переключателем Текст и введите Создание списка должников.
127. Внизу формы вставьте еще одну кнопку, используя инструмент Кнопка в группе Элементы управления на вкладке Инструменты конструктора форм/Конструктор.В диалоговом окне Создание кнопок в списке Категории выберите Работа с формой, а в списке Действия выберите Открыть форму. В следующем диалоговом окне Создание кнопок в списке выберите форму Должники. В следующем окне выберите переключателем Текст и введите Просмотр списка должников.
128. Вставьте кнопку, используя инструмент Кнопка в группе Элементы управления на вкладке Инструменты конструктора форм/Конструктор.В диалоговом окне Создание кнопок в списке Категории выберите Разное, а в списке Действия выберите Выполнить запрос. В следующем диалоговом окне Создание кнопок в списке выберите запрос Статистика по кафедрам. В следующем окне выберите переключателем Текст и введите Статистика по кафедрам.
129. Внизу формы вставьте еще одну кнопку, используя инструмент Кнопка в группе Элементы управления на вкладке Инструменты конструктора форм/Конструктор.В диалоговом окне Создание кнопок в списке Категории выберите Работа с формой, а в списке Действия выберите Открыть форму. В следующем диалоговом окне Создание кнопок в списке выберите форму Взять книгу. В следующем окне выберите переключателем Текст и введите Взять книгу.
130. Вставьте кнопку, используя инструмент Кнопка в группе Элементы управления на вкладке Инструменты конструктора форм/Конструктор.В диалоговом окне Создание кнопок в списке Категории выберите Разное, а в списке Действия выберите Выполнить запрос. В следующем диалоговом окне Создание кнопок в списке выберите запрос Сдать книгу. В следующем окне выберите переключателем Текст и введите Сдать книгу.
131. Измените запрос Сдать книгу, для этого выберите его в Области переходов и откройте в режиме конструктора, используя контекстное меню. В строке Условие отбора для поля Номер, используя Построитель, введите [Forms]![Читатели]![Номер].
Рисунок 44. Форма с подчиненной в режиме конструктора
132. Откройте форму для просмотра. Внизу каждой формы расположен элемент управления, который называется “Кнопки перехода”. Они разрешают перемещаться по записям, создавать новые пустые записи и заполнять их. Этот элемент управления появляется в форме, если свойство формы Кнопки перехода имеет значение Да. Если изменить значения этого свойства на Нет, то этого элемента не будет в форме. В подчиненной форме этот элемент не нужен. Поэтому, снова откройте форму Начисление пени в режиме конструктора, на панели Окно свойств для формы, найдите свойство Кнопки перехода, измените на Нет значение.
Рисунок 45. Форма Читатели в рабочем режиме
После выполнения операций Сдать книгу и Взять книгу необходимо обновить отображаемые данные, для этого выберите Обновить все в группе Записи на вкладке Главная.