Тема 10. Создание форм

Цель изучения темы: освоить приёмы создания независимых форм, которыми должны воспользоваться пользователи базы данных, научиться вносить исправления в форы и редактировать их содержание в режиме Конструктор и в режиме Мастер.

 

10.1. Общее представление о формах

            База данных разрабатывается для того, чтобы её содержимым и возможностями пользовались представители различных подразделений организации. Их интересует удобный интерфейс, который позволяет осуществлять просмотр данных, их актуализацию, находить определённые фрагменты с помощью типовых запросов или более интеллектуальных средств. В Access 2010 форма является самостоятельным объектом, который хранится внутри базы. При разработке базы данных следует воспользоваться различными способами создания формы, которые предлагаются на вкладке «Создание» панели Access (Рис. 116).

Рис. 116. Средства для работы с формами на панели Access

 

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

 

10.2. Использование Мастера форм

            Работа с любым мастером в MS Windows построена по единому сценарию, когда разработчику предлагается выполнить ряд шагов по выбору и размещению необходимых данных, а затем ввести определённые правки в созданный элемент. Поэтому в Access предлагается разнообразие выбора для разработчика. Вспомните задачу, которую решали для канцелярии предприятия (раздел 7.3.) - Запрос «Телефоны и должность», который можно превратить в удобный интерфейс.

1.        На вкладке «Создание» панели базы данных щёлкните левой кнопкой мыши по пиктограмме .

2.        В открывшемся окне перенесите те поля в правое окно, которые потребуются канцелярии для работы (Рис. 117).

Рис. 117. Создание макета формы с помощью Мастера

 

3.        На следующем шаге выберите форму (Рис. 118.) представления данных (попробуйте переключать названия видов), перейдя на следующий шаг, задайте имя форме, например, , которое отобразится в области переходов.

4.        Запустите форму на исполнение, вы увидите, что сначала появится диалоговое окно, как в запросе, с просьбой ввести должность, а затем все данные будут переданы на форму (Рис. 119). На форме отображаются данные только одной записи, внизу находится окно навигатора, в котором указано количество отобранных записей и номер просматриваемой записи.

Рис. 119. Форма, созданная с помощью Мастера

 

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

            Часто сотруднику, который пользуется интерфейсом базы данных, выполненного в виде формы, требуются дополнительные средства для быстрого поиска необходимых сведений, такие как: сортировка данных по полям, фильтрация данных, тогда на экран можно вывести форму вместе с таблицей запроса. В таблице запроса можно выполнять, перечисленные ранее операции. Чтобы выдавать на экран одновременно форму вместе с таблицей запроса, на вкладке «Создание» раскройте пиктограмму  , в списке выберите строку  .  Фантазия разработчика позволяет создавать разнообразные формы с помощью Мастера, но следует помнить, что не всегда удаётся правильно подобрать источники (Рис. 120).

Рис. 120. Сообщение системы с неудачно подобранными таблицами

 

10.3. Редактирование формы, созданной в режиме Мастер

            Форма, созданная в режиме Мастера, может быть видоизменена, это связано с тем, что разработчика или заказчика не удовлетворяют дизайн, размер шрифта, расположение отдельных элементов, отсутствие гиперссылок или кнопок для управления. Осуществить редактирования формы можно несколькими способами. Во-первых, на этапе разработки, во-вторых, в режиме Конструктора, в третьих в режиме макета. Рассмотрим вариант редактирования формы, созданной в разделе 10.2, в режиме макета.

            Щёлкните правой кнопкой мыши по наименованию формы в области переходов базы данных, выберите из меню строку с командой  или раскройте список в пиктограмме «Режимы» (на ленте слева), выберите «Режим макета». Сначала придётся выполнить условия запроса (в диалоговое окно ввести наименование должности), а затем будет открыта форма в режиме макета. Обратите внимание, на панели появилась новая вкладка «Работа с макетами форм», в которой отображены дополнительные элементы управления и пиктограмма «Страница свойств» (в правом углу), как показано на рисунке 121.

Рис. 121. Панель базы данных с вкладкой «Работа с макетами форм»

 

            Возможности редактирования формы в режиме макета очень обширные, освоить все приёмы можно только тогда, когда самостоятельно начнёте пробовать варианты, предлагаемые системой. Наша цель – изучить технологию редактирования некоторых фрагментов формы. В следующем  разделе будет идти речь о создании формы в режиме Конструктора, где будут даны рекомендации по редактированию представления данных на форме. Вкладка  «работа с макетами формы» имеет три ярлыка: Конструктор, Упорядочить, Формат. Например, для выделения полей на форме, можно щёлкнуть левой кнопкой мыши по полю, а можно открыть ярлык «Формат», в левой стороне раскрыть список , с помощью которого можно выделять поля на форме, а затем использовать все возможности форматирования для изменения, выделенного элемента (Шрифт, Фон, Цвет заливки и т.п.). Ярлык «Упорядочить» содержит ряд функций, которые относятся как ко всей форме, так и к отдельному элементу формы. Ярлык «Конструктор» удобно использовать для изменения свойств форме, группе элементов или отдельному элементу. Для открытия окна свойств, щёлкните по значку  - Страница свойств. На рисунке 122 показан пример форматирования формы в режиме «Работа с макетами форм», слева показано окно свойств, относящееся к  элементу «Надпись» - наименование формы.

Рис. 122. Отредактированный вариант формы

 

            Мастер форм создаёт на форме наименования полей и содержимое этих поле, например, Фамилия – это наименование поля, Петров – это содержимое поля для записи под номером 4. Вероятно, совсем не обязательно иметь наименования полей, например, фотография не нуждается в заголовке. Удалять с формы элементы очень просто, выделите поле и нажмите на клавишу Delete. Обратите внимание, если на форме по элементу, с данными щёлкнуть правой кнопкой мыши, то в появившемся меню можно найти много полезных функций для редактирования этого элемента.

 

10.4. Разработка формы в режиме Конструктор

            Режим Конструктора форм используется для усовершенствования  внешнего вида, созданной с помощью Мастера или при создании формы с нуля. Для запуска Конструктора форм можно воспользоваться пиктограммой «Режимы» (слева на панели), а затем в меню выбрать , или на вкладке «Создание» нажать на пиктограмму  - Конструктор форм. Будет открыто окно (Рис. 123), содержащее заготовку формы.

Рис. 123.  Заготовка формы, открытая в режиме Конструктор

 

            Структура формы представляет собой набор компонентов:

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

§   Область данных – центральная часть формы, на которую выводятся данные из таблиц или запросов, пояснительные тексты, элементы управления.

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

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

            Технология создание формы с помощью Конструктора весьма разнообразна, поэтому, остановимся на нескольких моментах выбора источников записей для формы. На панели щёлкните по пиктограмме  - Добавить поля, слева от формы появится список полей (Рис. 124).

Рис. 124. Окно с доступным списком таблиц и полей для переноса на форму

 

            Перенос необходимых наименований полей на форму осуществляется захватом левой кнопкой мыши имени поля в окне «Список полей», с последующей буксировкой его на форму. Обратите внимание, что одновременно с именем поля на форме будет появляться текстовое окно для вывода содержимого поля. Научитесь правильно перемещать наименование поля и это окно по форме. Есть вариант перемещения автономно и вариант одновременного перемещения элементов. Размеры, стиль представления информации, цветовая гамма, положение и другие свойства, можно изменять, используя ярлык «Формат» или окно свойств. На рисунке 125 представлен вариант формы, создаваемой в режиме Конструктор, на основе таблицы «Личные сведения», а так же открытая форма, после того, как её сохранили под именем «Список для отд кадров».

Рис. 125. Макет формы в Конструкторе и её отображение после запуска

 

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

Рис. 126. Инструменты на форме для пролистывания записей и осуществления поиска информации

 

            Созданная форма в режиме Конструктор, позволяет дополнять исходную таблицу данными только в том случае, если на ней присутствуют поля, контролируемые в таблице источнике. В приведённом примере, источником является таблица «Личные сведения», в ней находится поле «Год поступления», на которое наложен контроль, поэтому, попытка пополнить эту таблицу данными через форму «Список для отд кадров» закончится неудачей, система выдаст сообщение (Рис. 127). Кроме того, если в свойствах поля исходной таблицы против свойства «Обязательное поле» стоит «Да», то это поле надо вводить в форму.

Рис. 127. Сообщение системы о необходимости ввода данных в обязательное поле (контролируемое)

 

10.5. Использование пустой формы

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

1.        Создайте пустую форму, из окна «Список полей» перенесите на форму все поля таблицы «Доплаты» (порядок переноса полей неважен).

2.        Измените дизайн созданной формы, это можно выполнить разными способами, например, открыть вкладку «Главная» и воспользоваться панелью «Форматирование текста», выделяя необходимое поле. Другой способ форматирования – воспользоваться режимом Конструктор, для этого перейдите в этот режим, нажав на значок , который находится внизу формы (справа), как показано на рисунке 128. Можно воспользоваться и третьим способом, остаться в режиме макета (пиктограмма ), и открыть окно свойств, в котором изменить параметры формы и элементов на ней.

Рис. 128. Расположение полей из таблицы на пустой форме

 

3.        Сохраните форму, например, задайте имя формы «Доплаты-для канцелярии». Запустите эту форму, пролистайте в ней все виды доплат, а затем внесите новый вид доплат, например, «Двое и более детей». Посмотрите, как изменится основная таблица «Доплаты».

Вопросы для самоконтроля

1.        Какие задачи можно решить, используя типы запросов на изменение?

2.        Как с помощью Мастера можно создать новую таблицу?

3.        Можно ли для создания новой таблицы использовать данные из разных таблиц?

4.        В чём смысл обновления записей в таблицах?

5.        Для обновления записи в таблице при создании запроса обязательно вводить все поля обновляемой таблицы, или нет?

6.        Как правильно удалять записи из таблиц?

7.        Можно ли восстановить удалённую запись из таблицы, какими способами этого можно добиться?

 

 

Hosted by uCoz