Смекни!
smekni.com

Проектирование и реализация базы данных средствами Access (стр. 2 из 3)


Рисунок 5 – Структура создания формы Описание работ

Для более привлекательного вида формы вставим в нее рисунок, для этого в свойствах выберем Макет - Рисунок, а затем вставим нужный рисунок. Чтобы изменить цвет формы, щелкнем в любом пустом месте формы и в свойствах выберем подходящий цвет фона. Также изменим размер шрифта и способ его начертания. Для удобства пользования формой добавим следующие кнопки: первая запись, последняя запись, следующая запись, предыдущая запись, найти запись, добавить запись, сохранить запись, удалить запись, а также кнопку закрыть форму. Кнопки создаются с помощью перетаскивания пиктограммы Кнопка с Панели инструментов в любое место формы. При этом появляется диалоговое окно Создание кнопок, с помощью которого и задаются все параметры создаваемой кнопки. Чтобы избежать дублирования действий, в свойствах формы уберем кнопки перехода и кнопку закрытия.

Вид созданной формы показан на рисунке 8.

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


Рисунок 6 – Форма Описание работ

В рамках данной базы данных существует возможность того, что на одном объекте может выполняться несколько работ, поэтому целесообразно будет создать такую форму, которая позволит просматривать данные о работах, выполняемых на каждом объекте, не создавая при этом каждый раз отдельный запрос. Прежде всего, создадим две формы: Объекты, которая будет являться главной, и Подчиненную, создав для нее предварительно запрос, содержащий таблицы Работы и Заказы. Для добавления Подчиненной формы в главную нужно сделать следующее: перетащить Подчиненную форму из окна базы данных в форму Объекты, открытую в режиме Конструктора. Вид главной формы Объекты и вид этой же формы со вставленной Подчиненной формой представлен на рисунках 9 и 10 соответственно.

Рисунок 7 – Структура формы Объекты


Рисунок 8 – Структура формы Объекты после вставки Подчиненной формы

Чтобы форма выглядела более привлекательной, изменим шрифт (стиль, начертание, цвет и размер) и вставим рисунок (в свойствах выберем Тип рисунка – внедренный, Масштабы рисунка – Вписать в рамку). Окончательный вид созданной формы представлен на рисунке 9.

Рисунок 11 – Окончательный вид формы Объекты

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

· Главная и подчиненная формы созданы на основе таблиц, отношение между которыми указано в окне схемы данных.

· В главной и подчиненной формах содержатся поля с одинаковыми типами и именами, и некоторое поле главной формы является ключевым полем базовой таблицы.

После этого главная форма Объекты будет отображать все работы для каждого объекта.

Далее создадим запрос, который будет выводить нам все объекты, заказавшие определенный вид работ. Для этого создадим запрос, содержащий три таблицы: Объекты, Заказы и Работы. В область запроса перетащим нужные поля и сделаем так, чтобы поле Наименование работы не выводилось на экран, а также укажем условие отбора (к примеру, покраска), как это показано на рисунке 12. При выполнении данного запроса выводятся все объекты, заказавшие покраску (рисунок 13). Чтобы выводились объекты-заказчики других работ, нужно изменить условие отбора.

Рисунок 10 – Создание запроса Заказы на работу


Рисунок 11 – Выполнение запроса Заказы на работу

Переходим к созданию отчета. Отчеты используются для представления данных в удобном для пользователя виде. Отчет можно вывести на экран или распечатать на принтере. В отчете можно группировать и сортировать данные в любом порядке.

Отчет создадим в режиме Конструктора.

В данной базе данных необходимо получить сведения о всех работах на каждом объекте и общей стоимости работ на объекте. Для начала создадим запрос (Общий запрос), состоящий из следующих таблиц: Объекты, Заказы и Работы. В область запроса вытащим все поля из этих таблиц. При совпадении некоторых полей в таблицах вытаскиваем то поле, которое является ключевым. Структура запроса представлена на рисунке 14.

Рисунок 14 – Структура Общего запроса


Далее в свойствах отчета укажем Источник записей – Общий запрос. Выбрав его, перетащим в область данных отчета нужные поля, а именно: код работы, наименование работы и расценка работы.

В данном случае у нас будет группировка по полю Наименование объекта. При нажатии пиктограммы Сортировка и группировка появляется диалоговое окно (рисунок 15), в котором нужно указать поле, по которому будет производиться группировка (Наименование объекта), порядок сортировки и в свойствах группы добавить заголовок группы и примечание группы.

Рисунок 15 – Группировка по полю Наименование объекта

Затем перетащим в область заголовка группы из списка полей Общего запроса поле Наименование объекта и Код объекта (чтобы он не повторялся и выводился каждый раз вместе с наименованием объекта).

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

Для получения данных об общей стоимости работ на объекте, добавим в область примечаний группы поле. Далее, зайдя в свойства свободной области поля (рисунок 16), в полосе Данные запишем выражение =Sum([расценка работы]), а затем выполним: Формат поля – Денежный, для того, чтобы стоимость работ выводилась в денежных единицах.


Рисунок 16 – Создание поля Общая стоимость работ

Теперь в отчете будет выводится общая стоимость работ на каждом объекте. В область верхнего колонтитула добавим рисунок (эмблему предприятия) и надпись, содержащую название предприятия. Эти два объекта будут выводится в начале каждой страницы. В область нижнего колонтитула добавим еще одно поле, в котором будет выводится номер страницы. Для этого в свойствах поля в полосе Данные с помощью построителя выражений (Общие выражения – Страница N из M - Вставить) введем выражение ="Страница " &[Page]&" из "&[Pages] (рисунок 17).

Рисунок 17 – Построение выражения Страница N из M


Общая структура отчета представлена на рисунке 18.

Рисунок 18 – Общая структура Отчета

Окончательный вид отчета представлен на рисунке 19.

Рисунок 19 – Окончательный вид Отчета


Для придания базе данных законченного вида создадим кнопочную форму. Она представляет собой созданную пользователем форму с кнопками. С их помощью можно, например, запускать макросы открытия форм, отчетов, таблиц и т.д. В основном кнопочная форма используется в качестве главного меню приложения. Создадим новую форму и вставим в нее рисунок (в свойствах выберем Тип рисунка – внедренный, Масштабы рисунка – Вписать в рамку). Создадим кнопку закрыть форму и в свойствах формы уберем кнопки перехода и кнопку закрытия (чтобы избежать дублирования).

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

Создадим кнопку Открыть таблицу "Объекты".

В свойствах выберем Подпись и введем текстовое выражение (название кнопки), а также оформим кнопку: изменим цвет текста, шрифт, размер, насыщенность и способ начертания. Затем создадим макрос Открытие таблицы "Объекты" (рисунок 20). Для этого создадим новый макрос в режиме Конструктора, в поле Макрокоманда выберем ОткрытьТаблицу, в Аргументах макрокоманды выберем Имя таблицы – Объекты, Режим данных – только чтение.

Рисунок 20 – Структура макроса Открытие таблицы "Объекты"


После этого в свойствах кнопки выберем События – Нажатие кнопки – открытие таблицы "Объекты" (рисунок 21).

Рисунок 21 – Присоединение макроса

Открытие таблицы "Объекты" к кнопке

Аналогично создаются кнопки и присоединяемые к ним макросы для других элементов базы данных. Структура макросов для кнопок Изменить таблицу "Объекты", Добавить записи в таблицу "Работы", Открыть форму "Описание работ", Открыть запрос "Заказы", Открыть "Отчет по работам" представлена на рисунках 22, 23, 24, 25 и 26 соответственно.

Рисунок 22 – Структура макроса Рисунок 23 – Структура макроса