Опубликован: 19.11.2012 | Уровень: для всех | Доступ: платный | ВУЗ: Национальный исследовательский университет "Высшая Школа Экономики"
Лекция 8:

Системы управления базами данных

Конструирование экранных форм для работы с данными

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

Использование экранных форм для ввода данных обуславливается в первую очередь тем, что количество полей в таблице может оказаться достаточно большим и вводить информацию в подобную таблицу будет технически неудобно. При вводе данных непосредственно в таблицу базы данных возможны ошибки, связанные с внесением данных не в те поля или не в те записи таблицы. Может случиться так, что пользователь должен вводить данные одновременно в несколько таблиц, т. к. таблицы связаны в базе, и отсутствие данных в главной таблице приведет к невозможности ввода данных в подчиненную таблицу. Более того, система ввода/вывода должна быть организована в виде, максимально приближенном к традиционным формам представления информации для конкретной задачи. Часто требуется обеспечить разделение доступа или ограничить доступ к некоторым данным для различных категорий пользователей. Все перечисленное можно реализовать при помощи экранных форм.

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

Для создания формы можно воспользоваться возможностями построения простых форм (табличная или форма "в столбец") или мастером форм либо разработать форму в режиме конструктора. Выбор способа создания формы зависит от квалификации пользователя и сложности разрабатываемой формы. Весьма плодотворным также оказывается комбинированный подход: сначала используется мастер формы, а затем полученная форма дорабатывается в режиме конструктора. Режим макета позволяет модифицировать структуру формы и одновременно видеть измененное представление данных. При любом способе создания формы для нее, прежде всего, определяется источник данных – таблица или запрос. Если форма основана на запросе, то он автоматически выполняется при открытии формы.

К числу важных достоинств MS Access относится то, что работа с экранными формами универсальна и подобна работе с отчетами. Режим конструирования экранной формы аналогичен режиму конструктора отчета. Структура формы ориентирована на возможности представления табличных данных. Форма состоит из разделов, основные из которых – заголовок, примечание формы и область данных. Именно в области данных отображается информация, отличающая одну запись от другой, т. е. различные значения свойств объектов реального мира. Процесс проектирования формы в среде MS Access сводится к добавлению управляющих элементов и изменению их свойств. Можно добавить такие элементы управления, как надпись, поле, кнопка, флажок, переключатель, список, набор вкладок и др. (элементы управления показаны на рис.8.21). Помимо этого к форме можно подключать дополнительные элементы управления ActiveX, что значительно расширяет возможности представления данных. Каждый элемент управления обладает своим набором свойств, изменение которых приводит к изменению его вида и поведения, например, можно менять цвет, шрифт, изменять размеры элемента и т.п. Сама форма и ее разделы также рассматриваются как элементы управления и обладают настраиваемыми наборами свойств. Источником вычисляемого элемента, размещаемого в форме, является расчетная формула, построенная по правилам формирования выражений. Для упрощения записи выражений можно воспользоваться Построителем выражений.

Панель элементов управления формы

Рис. 8.21. Панель элементов управления формы

На рис.8.22 показана составная форма Абоненты, которая содержит командные кнопки для вызова двух других форм. Основная форма Абоненты построена на многотабличном запросе, и данные, высвечиваемые в этой форме, организованы в соответствии с главной таблицей Абоненты. Верхняя часть формы показывает информацию о некотором абоненте. Подчиненная форма Звонки отображает в табличном виде информацию о звонках выбранного абонента. Перемещение в форме Абоненты возможно по абонентам или по звонкам. При переходе к следующему абоненту изменяются строки формы Звонки, в которые выводится информация, относящаяся уже к другому абоненту.

Нажатие на кнопку Новый звонок вызывает загрузку формы, которая высвечивает данные только по выбранному абоненту, на что указывает выполняемая в форме фильтрация (рис.8.22). Это достигается за счет того, что MS Access позволяет отображать в объекте базы, вновь загружаемом при помощи командной кнопки, или все отобранные в запросе записи, или записи, которые относятся к субъекту, выбранному в основной форме. По сути, из единой формы Абоненты реализовано управление данными, находящимися в системе взаимосвязанных таблиц. Структура формы Новый звонок соответствует структуре таблицы Звонки. Но можно построить форму, в которой поля таблицы будут расположены в любом порядке.

Составная форма

Рис. 8.22. Составная форма

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

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

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

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

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

Создание пользовательского приложения

Экранные формы часто применяются для создания приложения, работа с которым предполагает различные способы работы с базой. Диспетчер кнопочных форм обеспечивает быструю и гибкую разработку внешнего интерфейса системы (по сути, разработку приложения) определяющего перечень основных режимов работы с созданной базой данных и их иерархию. При этом создается основная форма (рис.8.23), которая в MS Access носит название Главная кнопочная форма. Она содержит командные кнопки, нажатие на которые открывает формы или отчеты для просмотра информации в разных разрезах, фильтрует выводимые на экран данные и прочее. Во время загрузки очередного объекта происходит передача данных между объектами базы, например, очередная вызванная форма может использовать данные, отобранные во время работы вызвавшей ее формы.

Диспетчер кнопочных форм можно вызвать нажатием одноименной кнопки Диспетчер кнопочных форм, расположенной на вкладке Работа с базами данных. Этот инструмент помогает сконструировать кнопочные формы различных уровней, т.е. помогает создать приложение базы данных, с которым впоследствии может работать любой человек. Кроме того, разработчик приложения может указать системе, какую форму следует загрузить при открытии базы данных, и тем самым полностью скрыть интерфейс СУБД.

На рис.8.23 отображена главная кнопочная форма, имеющая первый уровень иерархии. Нажатие на кнопки Просмотр форм или Просмотр отчетов высвечивает кнопочные формы второго уровня, которые содержат названия вызываемых форм или отчетов соответственно (рис.8.24). Нажатие на каждую из кнопок высвечивает выбранную форму или отчет. Возможен возврат на предыдущий уровень иерархии и выход из формы с закрытием приложения. MS Access.

Главная кнопочная форма

Рис. 8.23. Главная кнопочная форма
Страница кнопочной формы

Рис. 8.24. Страница кнопочной формы

Кнопочная форма состоит из страниц, каждая из которых имеет название и, в свою очередь, является формой. Одна страница кнопочной формы считается основной или главной: именно она высвечивается при открытии кнопочной формы. На каждой странице кнопочной формы располагаются кнопки и их обозначения. Для каждой кнопки определены некоторые действия, с нею связанные. Это может быть высвечивание следующей страницы кнопочной формы, отображение формы или отчета, выход из приложения и т.д. Для управления кнопочной формой в базе данных автоматически создается таблица Switchboard Items (рис.8.25), каждая строка которой описывает страницу формы или открываемые формы, отчеты и т.д.

Таблица элементов кнопочных форм

Рис. 8.25. Таблица элементов кнопочных форм
Аннна Миллер
Аннна Миллер
Екатерина Дмитриева
Екатерина Дмитриева
Марина Сафонова
Марина Сафонова
Россия
Лидия Белова
Лидия Белова
Россия