31
МИНИСТЕРСТВО ТРАНСПОРТА РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ УЛЬЯНОВСКОЕ ВЫСШЕЕ АВИАЦИОННОЕ УЧИЛИЩЕ ГРАЖДАНСКОЙ АВИАЦИИ (ИНСТИТУТ) РАЗРАБОТКА ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ БАЗЫ ДАННЫХ Методические указания по выполнению лабораторной работы 2 по дисциплине «Современные информационные технологии» Ульяновск 2008

Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

МИНИСТЕРСТВО ТРАНСПОРТА РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

УЛЬЯНОВСКОЕ ВЫСШЕЕ АВИАЦИОННОЕ УЧИЛИЩЕ ГРАЖДАНСКОЙ АВИАЦИИ (ИНСТИТУТ)

РАЗРАБОТКА ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ

БАЗЫ ДАННЫХ

Методические указания по выполнению

лабораторной работы № 2 по дисциплине

«Современные информационные технологии»

Ульяновск 2008

Page 2: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

ББК З 973.26-018.2я7

С 58

Разработка интерфейса пользователя базы данных: метод. указания по выпол-

нению лабораторной работы № 2 по дисциплине «Современные информационные

технологии» / Сост. А.И. Пятаков. – Ульяновск : УВАУ ГА, 2008. – 30 с.

Содержат порядок выполнения лабораторной работы, варианты заданий,

контрольные вопросы, список рекомендуемой литературы для самостоятельной

работы. Рассмотрено назначение и основные понятия интерфейса пользователя

базы данных, описаны стандартные действия по разработке и созданию интер-

фейса доступа к объектам базы данных Microsoft Access.

Разработаны в соответствии с учебной программой по дисциплине «Совре-

менные информационные технологии».

Предназначены для курсантов УВАУ ГА специализаций 160503.65.01,

160505.65.01 и 330502, изучающих данную дисциплину, а также могут быть

полезны курсантам других специальностей.

Печатаются по решению Редсовета училища.

СОДЕРЖАНИЕ

Общие сведения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1. Порядок выполнения работы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

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

3. Варианты заданий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26

Рекомендуемая литература . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28

Приложение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29

© Ульяновск, УВАУ ГА, 2008.

Разработка интерфейса пользователя базы данных Содержание

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

2

Page 3: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

ОБЩИЕ СВЕДЕНИЯ

В современных системах программирования каждую программу сопровож-

дают пользовательским интерфейсом, который является неотъемлемой частью

выполняемой программы.

Пользовательский интерфейс базы данных – это комплекс программ (неви-

димых для пользователя), который организует диалог пользователя с базой

данных и реализует сопряжение пользователя с информацией, хранящейся в ба-

зе данных.

Пользовательский интерфейс создает для пользователя «приятную» среду

общения, позволяет выбирать информацию из списков, представленных на эк-

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

какой-либо кнопки или клавиши, осуществляет быстрый поиск в меню требуе-

мой информации и т.п.

Пользовательский интерфейс – неотъемлемая и важная часть программы, ее

внешний вид и методы взаимодействия с пользователем влияют на эффектив-

ность использования программы. Интерфейс пользователя – один из важней-

ших факторов, влияющих на диапазон и массовость применения конкретной

программы.

Цель лабораторной работы № 2 – исследовать возможности системы

управления базой данных Microsoft Access по созданию интерфейса доступа

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

практические навыки по разработке и созданию адаптивных к требованию

пользователя форм и отчетов базы данных Microsoft Access.

Задание к работе:

1. Провести анализ структуры и состава Отчета (как объекта базы данных),

в соответствии со своим вариантом задания, а также источников, информация

которых будет включена в Отчет.

2. Разработать структуру доступа к данным, представленным в Отчете.

3. Создать нижний уровень кнопочной формы на основе исходных данных.

4. Сформировать запросы, содержащие исходную информацию.

Разработка интерфейса пользователя базы данных Общие сведения

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

3

Page 4: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

5. Разработать главную кнопочную форму, формирующую Отчет.

6. Сформировать Отчет и связать его как с исходными данными, так и с

главной кнопочной формой.

7. Создать главное меню.

8. Оформить отчет о проделанной работе.

Отчет о выполнении работы представляется в электронном виде и должен

содержать:

– таблицы с исходными данными, позволяющими демонстрировать возмож-

ности созданной базы данных;

– схему данных со связями, обеспечивающими целостность данных;

– запросы, позволяющие выводить информацию в соответствии с условиями

отбора;

– Отчеты и Выходные формы, в соответствии с заданием;

– главную форму и форму, формирующую Отчет.

Структура формы (одной или нескольких) должна включать следующие

элементы управления:

– поясняющие надписи;

– поля со списком, позволяющие выбирать значение из набора записей;

– флажок, выбирающий форму отчета;

– группу переключателей для несовместимых событий;

– кнопки управления визуализацией полей;

– кнопки переходов между формами;

– кнопку закрытия приложения.

Структура Отчета (как объекта базы данных) должна включать следующие

элементы:

– наименование учебного заведения;

– эмблему или иной встроенный рисунок;

– поле, выводящее текущую дату;

– поля, отображающие данные таблиц или запросов;

– поля, выводящие информацию о курсантах, в соответствии с заданием;

Разработка интерфейса пользователя базы данных Общие сведения

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

4

Page 5: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

– поля, созданные путем вычисления;

– встроенный объект Microsoft Word с выводами о проделанной работе.

К выполнению лабораторной работы допускаются курсанты, успешно защи-

тившие отчет по лабораторной работе № 1 и получившие зачет по теоретиче-

скому материалу изучаемой темы.

При подготовке к лабораторной работе курсантам необходимо изучить:

– назначение и основные возможности Microsoft Access;

– интерфейс программы Microsoft Access;

– структуру базы данных;

– объекты базы данных;

– порядок создания запросов, форм, отчетов и макросов;

– правила работы с панелью инструментов;

– правила использования построителя выражений;

– правила написания процедур и функций на языке VBA.

Защита результатов лабораторной работы проводится устно или в виде

письменной контрольной работы по вариантам.

Разработка интерфейса пользователя базы данных Общие сведения

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

5

Page 6: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

1. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ

1.1. Постановка задачи

Задача – взяв за основу спроектированную в лабораторной работе № 1 ре-

ляционную модель данных Session (рис.1), разработать адаптивный интерфейс

пользователя, позволяющий выводить требуемую информацию в виде Отчета

(Приложение). В образце требуется вывести оценки:

– по номеру группы;

– по группе и дисциплине;

– по группе и курсанту.

1.2. Анализ структуры Отчета и выбор источников информации

Содержание Отчета об успеваемости курсантов изменяется в зависимости

от группы, курсанта и дисциплины. Таким образом, можно выделить три разно-

видности Отчета:

– сведения об оценках курсантов одной группы по всем дисциплинам;

Рис. 1. Реляционная модель данных Session

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

6

Page 7: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

– сведения об оценках курсантов одной группы по одной дисциплине;

– сведения об оценках одного курсанта по всем дисциплинам.

Каждый из этих Отчетов содержит следующие данные:

– дату заполнения ведомости – текущая;

– фамилии курсантов;

– оценки курсантов по конкретной дисциплине;

– средний балл и количество оценок, вычисляемые программно.

Исходными данными для формирования Отчета будут: номер группы, фа-

милии курсантов и дисциплина. Перечень этих категорий представлен в табли-

цах ListGroup, MainDataKursant и ListSubject.

Сведения об оценках сосредоточены в таблице MainVedomost.

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

7

Page 8: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

1.3. Разработка структуры доступа к данным

Перед созданием интерфейса пользователя необходимо детально прорабо-

тать структуру базы данных (рис. 2). Определить состав Главной и Подчинен-

ных форм. Главной называется форма, используемая для открытия других форм

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

ненной. Рекомендуется сначала создать Подчиненную форму, а затем Главную

и через кнопку связать ее с Подчиненной. Если вложенность подчиненных

форм многоуровневая, то начинать создание форм необходимо с самого нижне-

го уровня, постепенно приближаясь к главной форме.

По завершению формирования Отчетов необходимо связать соответст-

вующий пункт Главного меню с Формой, вызывающей Отчет об успеваемо-

сти курсантов.

Таблица MainDataKursant

Таблица ListGroup

Таблица ListSubject

Форма на формирование экзаменационной ведомости ViborObekta

Таблица MainVedomost

Запрос ZaprosGroup

Запрос ZaprosSubject

Запрос ZaprosKursant

Форма FormaGroup

Форма FormaSubject

Форма FormaKursant

Отчет OtchetGroup

ОтчетOtchetSubject

Отчет OtchetKursant

Главное меню

Рис. 2. Структура восходящего программирования интерфейса базы данных Session

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

8

Page 9: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

1.4. Создание формы ViborObekta

Вызвать форму в режиме Конструктор.

Используя панель инструментов, создать поле со списком, связанное с таб-

лицей ListGroup, для этого:

– выбрать пиктограмму Поле со списком ( ) и развернуть ее в Области

данных создаваемой формы;

– в открывшемся окне Создание полей со списком выбрать способ получе-

ния значений – объект Поле со списком будет использовать значения из табли-

цы или запроса;

– выбрать таблицу ListGroup, из которой отобрать только два поля:

GroupCode и GroupText. В дальнейшем, следуя указаниям Мастера, создать

Поле со списком с именем Группа;

– выделить Поле со списком с надписью Свободный, открыть Свойства

объекта и на закладке Другие вписать имя Поля со списком – SpisokGroup;

– разместить кнопки, как показано на рис. 3, и сохранить форму с именем

ViborObekta;

– открыть форму ViborObekta и произвести выбор группы.

Аналогично создать Поля со списком для Дисциплины и Курсанта.

Рис. 3. Создание Полей со списком

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

9

Page 10: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

1.5. Создание запросов

1. Создать в режиме Конструктор запрос ZaprosGroup на основе таблицы ListGroup, включающий в себя следующие поля: PIN, Familiy, GroupCode, GroupText, SubjCode, SubjText, MarkNumber.

2. Сохранить созданный запрос с именем ZaprosGroup. 3. Дважды повторить пункт 1, сохраняя запрос с именами соответственно:

ZaprosSubject и ZaprosKursant. Все три созданные запроса являются «заготовкой», содержащей информа-

цию, требуемую для Отчета.

1.6. Связывание поля со списком с запросом

Несмотря на то, что в окне Поле со списком отображается текстовая ин-формация, связывание Запроса с Формой должно выполняться в следующем порядке по ключевому полю – GroupCode:

1. Связать созданное Поле со списком SpisokGroup с запросом Zap-

rosGroup (рис. 3), для этого нужно: – открыть ZaprosGroup в режиме Конструктор; – поставить курсор в строку Условия отбора для поля GroupCode и вызвать

Построитель выражений; – в открывшемся окне выбрать: Forms-Все формы-ViborObekta-Spisok

Group, и нажать кнопку Вставить, а затем ОК; – проследить за появлением в окне Условия отбора следующей информа-

ции: [Forms]![ViborObekta]![SpisokGroup]. Данная запись означает, что условие отбора находится в форме ViborObekta в окне SpisokGroup;

– сохранить изменения. 2. Открыть последовательно форму ViborObekta и выбрать группу, не за-

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

3. По аналогии второй запрос ZaprosSubject связать с формой ViborObekta, но уже по двум полям: GroupCode и SubjCode

Третий запрос связать с формой ViborObekta по полям: PIN и GroupCode.

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

10

Page 11: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

1.7. Создание итоговых форм

1. В режиме Мастер создать формы FormaGroup, FormaSubject, FormaKursant, используя в качестве источника созданные одноименные запросы.

2. Просмотреть полученные результаты.

1.8. Создание кнопки

1. Создать в форме ViborObekta кнопку Просмотр результата (рис. 4), вызы-вающую открытие одной из форм: FormaGroup, FormaSubject, FormaKursant.

Для этого нужно связать кнопку Просмотр результата с формой FormaGroup:

1. Вызвать форму ViborObekta в режиме Конструктор. 2. Используя панель инструментов, создать кнопку Просмотр результата,

связанную с формой FormaGroup, для этого: – щелкнуть левой клавишей мыши на пиктограмме Кнопка; – переместить указатель мыши в область данных Формы и развернуть кнопку; – в раскрывшемся окне Создание кнопок выбрать категорию Работа с

формой, действие Открыть форму и перейти Далее; – выбрать форму FormaGroup, затем Открыть форму и показать все записи; – в образец кнопки вписать текст Просмотр результата; – не изменяя имя кнопки, завершить ее создание. 3. Сохранить изменения в форме. 4. Открыть форму ViborObekta, выбрать группу и нажать кнопку Просмотр

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

Рис. 4. Создание кнопки Просмотр результата

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

11

Page 12: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

5. Используя панель управления, отформатировать внешний вид кнопки по способу оформления, толщине линии и заливке цветом на свое усмотрение и просмотреть результат.

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

1.9. Создание контрольного индикатора-флажка

Индикатор-флажок принимает одно из двух значений Включено/Выключено (True/False) и применяется для выбора одного или нескольких независимых со-бытий.

Создадим индикаторы, позволяющие выбрать вид отчетности об успеваемости: по номеру группы, по группе и дисциплине, по группе и фамилии курсанта (рис. 5).

Для создания индикатора по номеру группы необходимо:

1. Открыть форму ViborObekta в режиме Конструктор. 2. Выбрать пиктограмму Флажок и развернуть ее в Области данных формы

ViborObekta над областью Поле со списком. 3. В окне флажок ( ) выбрать Свойства и в закладке Другие изменить имя

на FlagGroup. 4. В окне Надпись заменить надпись Флажок7 на По номеру группы. 5. Разместить флажки, как показано на рис. 5, и закрыть форму.

Рис. 5. Создание индикатора-флажка

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

12

Page 13: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

1.10. Связывание одной кнопки с несколькими формами

При создании кнопки (см. п. 3.9), Мастер самостоятельно прописывает про-грамму связывания кнопки с Формой FormaGroup на языке VBA. Просмотреть программу можно следующим образом:

– открыть форму ViborObekta в режиме Конструктор; – выбрать кнопку Просмотр результата и в контекстном меню раскрыть

Свойства; – открыть закладку События и в строке Нажатие кнопки за пределами таб-

лицы щелкнуть на значке . Откроется программа нажатия кнопки, написан-ная Мастером на языке VBA:

В программе жирным шрифтом выделены операторы, открывающие форму FormaGroup. Если имя формы FormaGroup заменить на имя другой формы (на-пример FormaSubject), то Кнопка6 откроет форму FormaSubject. Этим свойст-вом можно воспользоваться для связи индикаторов с нужной формой:

– если замаркирован флажок FlagGroup (по номеру группы), то Кнопку6 не-обходимо связать с формой FormaGroup;

– если замаркирован флажок FlagSubject (по группе и дисциплине), то Кноп-ку6 необходимо связать с формой FormaSubject;

– если замаркирован флажок FlagKursant (по группе и курсанту), то Кнопку6 необходимо связать с формой FormaKursant.

Доработанная программа будет выглядеть следующим образом:

Private Sub Кнопка6_Click() Имя процедуры

On Error GoTo Err_Кнопка6_Click Вызов подпрограммы Err обработки ошиб-

ки

Dim stDocName As String Dim stLinkCriteria As String

Объявление двух строковых переменных

stDocName = "FormaGroup” DoCmd.OpenForm stDocName, , , stLinkCriteria

Связывание Кнопки6 с формой FormaGroup

Exit_Кнопка6_Click: Exit Sub Завершение подпрограммы нажатия кнопки

Err_Кнопка6_Click: MsgBox Err.Description Resume Exit_Кнопка6_Click Подпрограмма обработки ошибки Err

End Sub Конец процедуры

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

13

Page 14: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

5. Внести изменения в программу, сохранить ее и откомпилировать. 6. Открыть форму ViborObekta и проверить работу кнопочной формы.

1.11. Связывание Поля со списком с индикатором

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

Private Sub Кнопка6_Click()

On Error GoTo Err_Кнопка6_Click

Dim stDocName As String Dim stLinkCriteria As String

If Forms![ViborObekta]![FlagGroup] = True Then stDocName = "FormaGroup" DoCmd.OpenForm stDocName, , , stLinkCri-teria End If

Если в форме ViborObekta принимает значе-

ние «истина», то открываем форму – Forma-

Group

If Forms![ViborObekta]![FlagSubject] = True Then stDocName = "FormaSubject" DoCmd.OpenForm stDocName, , , stLinkCri-teria FormaSubject End If

Связывание флажка FlagSubject с формой FormaSubject

If Forms![ViborObekta]![FlagKursant] = True Then stDocName = "FormaKursant" DoCmd.OpenForm stDocName, , , stLinkCri-teria FormaKursant End If

Связывание флажка FlagKursant с формой FormaKursant

Exit_Кнопка6_Click: Exit Sub

Err_Кнопка6_Click: MsgBox Err.Description Resume Exit_Кнопка6_Click

End Sub

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

14

Page 15: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

полнительно введенную кнопку Выбрать объект, открыть нужное окно Поля со списком (рис. 6).

Из рисунка видно, что в исходный момент Полей со списком в форме не-видно. Для скрытия или визуализации окон в форме применятся оператор Visible.

– если Visible = True, то требуемое окно отображается; – если Visible = False, то требуемое окно скрыто. Последовательность работы: 1. Открыть форму ViborObekta в режиме Конструктор и создать кнопку Вы-

брать объект, связанную с формой ViborObekta. (Пусть созданная кнопка имеет имя Кнопка17).

2. Над процедурой нажатия Кнопки17 написать еще одну процедуру – Исход-ные данные, предусматривающую, что в исходный момент все окна Полей со списком (SpisokGrupp – группа, SpisokDisciplin – дисциплина, SpisokKursant – курсант) скрыты:

Private Sub Form_Activate() Текущее_окно = " ViborObekta " Forms![ViborObekta]![SpisokGrupp].Visible = False Forms![ViborObekta]![SpisokDisciplin].Visible = False Forms![ViborObekta]![SpisokKursant].Visible = False End Sub

Рис. 6. Отключение окон Полей со списками

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

15

Page 16: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

3. Убедиться в том, что Поля со списком не отображаются и снова войти в программу.

4. Связать состояние индикаторов с Полями со списком, добавив в програм-му нажатия кнопки Выбор объекта следующие условия:

Private Sub Кнопка17_Click() On Error GoTo Err_Кнопка17_Click

Dim stDocName As String Dim stLinkCriteria As String

If Forms![ViborObekta]![FlagGroup] = True Then Forms![ViborObekta]![SpisokGrupp].Visible = True Forms![ViborObekta]![SpisokDisciplin].Visible = False Forms![ViborObekta]![SpisokKursant].Visible = False End If

If Forms![ViborObekta]![FlagSubject] = True Then Forms![ViborObekta]![SpisokGrupp].Visible = True Forms![ViborObekta]![SpisokDisciplin].Visible = True Forms![ViborObekta]![SpisokKursant].Visible = False End If

If Forms![ViborObekta]![FlagKursant] = True Then Forms![ViborObekta]![SpisokGrupp].Visible = True Forms![ViborObekta]![SpisokDisciplin].Visible = False Forms![ViborObekta]![SpisokKursant].Visible = True End If

Err_Кнопка17_Click: MsgBox Err.Description Resume Exit_Кнопка17_Click End Sub

5. Откомпилировать и сохранить программу. Проверить работу формы ViborObekta.

'stDocName = "ViborObekta" 'DoCmd.OpenForm stDocName, , , stLink Criteria

Эти две строки можно удалить, так как в предыдущей процедуре окно ViborObekta объявлено текущим

Exit_Кнопка17_Click: Exit Sub

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

16

Page 17: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

1.12. Создание Отчета по запросу

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

Для создания Отчета требуется: 1. Открыть панель Отчеты и щелкнуть на кнопке Создать. 2. В открывшемся диалоговом окне выбрать Мастер отчетов, а в качестве

источника запрос – ZaprosSubject. 3. Следуя указаниям Мастера, выбрать следующие поля запроса: Familiy,

SubjText и MarkNumber, а в качестве уровня группировки – Фамилия, вид маке-та – Блок. Решения по остальным формам представления и оформления прини-мать самостоятельно.

4. Сохранить Отчет под именем OtchetSubject и открыть его. 5. Перейти в режим Конструктор и открыть контекстное окно Области дан-

ных. Выбрать режим Сортировка и группировка. В качестве поля для группи-рования выбрать Дисциплина.

6. Для поля SubjText установить параметр Примечание группы – ДА, (рис. 7). 7. Пользуясь манипулятором Мышь расширить рабочую область поля Приме-

чание группы SubjText и создать на ней поле Средний балл. Для этого нужно: – замаркировать кнопку ab| панели инструментов, переместить курсор в об-

ласть Примечание группы и развернуть в данной области дополнительное поле; – в поле с номером вписать заголовок Средний балл; – выделить поле с именем Свободный и в контекстном меню открыть функ-

цию Свойства; – открыть закладку Данные. В строке Данные вызвать Построитель выра-

жений и вписать выражение, позволяющее вычислять среднее значение оценки по данной дисциплине:

Avg([ZaprosSubject]![MarkNumber]), где Avg – функция вычисления среднего значения в поле MarkNumber;

ZaprosSubject – наименование запроса.

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

17

Page 18: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

Примечания. 1. Во избежание ошибок ссылки на запрос и поле обязательно делать через По-

строитель; 2. Формат поля Средний балл – фиксированный, число десятичных знаков – 2. – сохранить внесенные изменения; – открыть Отчет в режиме просмотра и проследить наличие созданного поля.

Пользуясь панелью инструментов, создать поле, подсчитывающее число от-

личных оценок в группе по данной дисциплине, – Отлично. Для этого:

– замаркировать кнопку ab|, переместить курсор в область Примечание

группы и развернуть в данной области дополнительное поле;

– в поле с номером вписать заголовок: Отлично;

Рис. 7. Форматирование Отчета

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

18

Page 19: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

– выделить поле с именем Свободный и в контекстном меню открыть функ-

цию Свойства;

– открыть закладку Данные и вызвать Построитель выражений и вписать

выражение, позволяющее вычислять количество отличных оценок по данной

дисциплине:

=Count(IIf([ZaprosSubject]![MarkNumber]=5;[ZaprosSubject]![SubjText])),

где Count – функция подсчитывающая число выбранных строк для поля Оценка;

IIf(«условие»; «если «да», то – истина»; «иначе» – ложь») – функция приня-

тия решения;

ZaprosSubject!MarkNumber=5 – условие в функции IIf;

ZaprosSubject!SubjText – указывает в каком поле необходимо подсчитать

строки, в которых оценка равна 5.

– сохранить внесенные изменения;

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

Аналогично п. 8, создать поля Хорошо, Удовлетворительно, Неудовлетвори-

тельно, Всего оценено и отформатировать Отчет в соответствии с рисунком (рис. 8).

Примечание: наименование УВАУ ГА и наименование Отчета (ОТЧЕТ ОБ УС-ПЕВАЕМОСТИ КУРСАНТОВ) вписать в поле Заголовок отчета, предварительно удалив заголовок OtchetSubjec. Для записи заголовка использовать на панели инстру-ментов кнопку Aa.

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

19

Page 20: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

– размер эмблемы можно изменять, если в Свойствах объекта на закладке

Все параметр Установка размеров перевести в состояние Вписать в рамку;

– наименование группы будет меняться автоматически, если поле Группа в

Отчете будет создано с использованием кнопки ab| на панели инструментов.

При этом в Свойствах поля с именем Свободный сделать ссылку Данные на по-

ле GroupText (рис. 9).

Рис. 8. Содержание отчета

Рис. 9. Организация ссылки на номер группы

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

20

Page 21: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

1.13. Создание контрольного индикатора «Группа переключателей»

Индикаторы «Группа переключателей» применяются для выбора одного из

нескольких зависимых событий. Они принимают значения 1, 2, …, n в зависи-

мости от того, какой переключатель замаркирован.

К двум взаимоисключающим событиям следует отнести вывод результатов

либо в виде Формы, либо в виде Отчета.

Для создания контрольного индикатора нужно:

1. Открыть форму ViborObekta в режиме Конструктор.

2. Выбрать пиктограмму Группа переключателей и развернуть ее в Области

данных формы ViborObekta выше кнопки Просмотр результата (рис. 10).

3. В открывшемся окне Создание группы переключателей задать подписи для двух переключателей: Форма и Отчет.

4. Следуя в дальнейшем предписаниям Мастера, создать группу переключа-телей. Запомнить или записать ее подпись (наименование).

5. В Области данных наименование группы (например Группа31) следует удалить.

Рис. 10. Создание в Форме группы переключателей

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

21

Page 22: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

1.14. Связывание «Группы переключателей» с Формой и Отчетом

Связь с Формой (FormaGroup, FormaSubject, FormaKursant) или с Отчетом

(OtchetGroup, OtchetSubject, OtchetKursant), осуществляется через кнопку Про-

смотр результата:

– если Группа31 принимает значение 1, то выводить Форму;

– если Группа31 принимает значение 2, то выводить Отчет.

Примечание. Если переключателей в группе больше 2, то они принимают значе-

ния 3, 4 и т.д.

Встраивание условий выбора проведем в программе Нажатие кнопки. Private Sub Кнопка6_Click() On Error GoTo Err_Кнопка6_Click Dim stDocName As String Dim stLinkCriteria As String

If Forms![ViborObekta]![FlagGroup] = True And Forms![ViborObekta]![Группа31]=1 Then stDoc-Name = "FormaGroup" DoCmd.OpenForm stDocName, , , stLinkCriteria End If

Если флажок FlagGroup замар-кирован и Переключатель31=1, то открываем Форму Forma-Group

If Forms![ViborObekta]![FlagGroup] = True And Forms![ViborObekta]![Группа31]=2 Then stDoc-Name = "OtchetGroup" DoCmd.OpenReport stDocName, acPreview End If

Если флажок FlagGroup замар-кирован и Переключатель31=2, то открываем Отчет Otchet-Group

If Forms![ViborObekta]![FlagSubject]=True And Forms![ViborObekta]![Группа31]=1 Then stDocName = "FormaSubject" DoCmd.OpenForm stDocName, , , stLinkCriteria End If If Forms![ViborObekta]![FlagSubject]=True And Forms![ViborObekta]![Группа31]=2 Then stDocName = "OtchetSubject" DoCmd.OpenReport stDocName, acPreviewEnd If

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

22

Page 23: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

If Forms![ViborObekta]![FlagKursant]=True And Forms![ViborObekta]![Группа31]=1 Then stDocName = "FormaKursant" DoCmd.OpenForm stDocName, , , stLinkCriteria End If If Forms![ViborObekta]![FlagKursant]=True And Forms![ViborObekta]![Группа31]=2 Then stDocName = "OtchetKursant" DoCmd.OpenReport stDocName, acPreview End If Exit_Кнопка6_Click: Exit Sub Err_Кнопка6_Click: MsgBox Err.Description Resume Exit_Кнопка6_Click End Sub

После окончания связывания Группы переключателей с Формой и Отчетом,

следует сохранить и откомпилировать программу, а затем проверить работу

кнопочной формы.

1.15. Создание главной формы

Для создания Главной формы (рис. 11) следует:

1. Создать Форму в режиме Конструктор и встроить в нее три кнопки. Вто-

рую кнопку Просмотр и выполнение Отчета связать с формой ViborObekta, а

первую и третью создать пустыми (бутафорскими).

2. Сохранить Отчет с именем Главная форма и проверить связанность форм.

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

23

Page 24: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

При работе с большими базами данных при переходе с одного уровня меню

на другой на экране могут оставаться открытыми несколько оконных форм, что

затрудняет восприятие информации. Во избежание такой ситуации необходимо,

чтобы действие по открытию подчиненной формы приводило к закрытию глав-

ной формы и наоборот – возврат в главное меню должен сопровождаться за-

крытием подчиненной формы. Выполнить данную процедуру можно про-

граммно. Для этого нужно:

1. Открыть и просмотреть процедуру вызова подчиненной формы: Private Sub Кнопка7_Click() On Error GoTo Err_Кнопка7_Click Dim stDocName As String Dim stLinkCriteria As String stDocName = “ViborObekta” Имя Формы, которую DoCmd.OpenForm stDocName, , , stLinkCriteria необходимо открыть Exit_Кнопка7_Click: Exit Sub Err_Кнопка7_Click: MsgBox Err.Description Resume Exit_Кнопка7_Click End Sub

Рис. 11. Главная форма

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

24

Page 25: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

2. Создать кнопку закрытия Главной формы. Проверить ее работу, а затем открыть и просмотреть процедуру обработки события Закрытие:

Private Sub Кнопка8_Click() On Error GoTo Err_Кнопка7_Click DoCmd.Close Закрытие текущей формы Exit_Кнопка8_Click: Exit Sub Err_Кнопка8_Click: MsgBox Err.Description Resume Exit_Кнопка8_Click End Sub

Как видно из этих двух процедур, они описывают один и тот же объект –Кнопку – и отличаются лишь действием. Для объединения этих двух действий необходимо оператор закрытия вписать в процедуру открытия формы ViborO-bekta, а Кнопку8 удалить:

Private Sub Кнопка7_Click() On Error GoTo Err_Кнопка7_Click DoCmd.Close Закрытие текущей Формы Dim stDocName As String Dim stLinkCriteria As String stDocName = “ViborObekta” Имя Формы, которую DoCmd.OpenForm stDocName, , , stLinkCriteria необходимо открыть Exit_Кнопка7_Click: Exit Sub Err_Кнопка7_Click: MsgBox Err.Description Resume Exit_Кнопка7_Click End Sub

Программа возврата из формы ViborObekta в Главную форму формируется аналогичным образом.

1.16. Выход из Базы данных

Для выхода из Базы данных следует на главной панели управления создать кнопку Завершение работы, для этого в окне Создание кнопок выбрать Катего-рию – Приложение, а Действие – Выйти из приложения. Проверить работу кнопки.

Разработка интерфейса пользователя базы данных 1. Порядок выполнения работы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

25

Page 26: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

2. КОНТРОЛЬНЫЕ ВОПРОСЫ

1. Что такое структура базы данных?

2. Какие объекты базы данных вы знаете?

3. Что понимается под интерфейсом базы данных?

4. Раскройте алгоритм формирования структуры базы данных.

5. Охарактеризуйте способы, автоматизирующие поиск нужных записей в

базе данных.

6. Охарактеризуйте основные типы запросов в СУБД MS Access.

7. Опишите порядок формирования запроса с помощью Мастера.

8. Опишите порядок формирования запроса в режиме Конструктор.

9. Что представляет собой Форма в СУБД MS Access?

10. Что может находиться в Форме?

11. Что такое Поля со списком и зачем они применяются?

12. Что такое «флажок» и «группа переключателей» и в чем различие их

применения?

13. Как изменить макет кнопки?

14. Как управлять фоном макета?

15. Какими средствами объектно-ориентированного языка программирова-

ния Visual Basic for Applications (VBA) обеспечивается программирование ко-

манд управления объектами базы данных?

16. Раскройте назначение каждого оператора в написанной Вами процедуре.

17. Охарактеризуйте общую структуру и возможности формирования отче-

тов в СУБД MS Access.

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

19. Опишите порядок вставки текстовых и графических объектов в Отчет

Базы данных.

20. Какие средства СУБД MS Access используются при формировании вы-

числяемых полей в Отчете?

Разработка интерфейса пользователя базы данных 2. Контрольные вопросы

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

26

Page 27: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

3. ВАРИАНТЫ ЗАДАНИЙ

Лабораторная работа выполняется по вариантам (табл. 1). Во всех вариантах

разрабатывается адаптивный интерфейс пользователя, позволяющий выводить

информацию в виде Оценочной ведомости по условию отбора, определенному

в задании. Таблица 1

Варианты заданий

Номер варианта Группа 1 Группа 2 Группа 3

1 2, а 1, п 3, б

2 4, б 3, о 5, г

3 6, в 6, н 7, е

4 8, г 9, м 9, з

5 10, д 12, л 11,к

6 12, е 15, к 13, м

7 14, ж 2, и 15, о

8 1, з 4, з 2, а

9 3, и 7, ж 6, в

10 5, к 10, е 8, д

11 7, л 13, д 10,ж

12 9, м 5, г 12, и

13 11, н 8, в 14, л

14 13, о 11,б 1, н

15 15, п 14, а 4, п

Варианты заданий состоят из двух компонентов:

– первый – обозначается цифрой и определяет условие отбора курсантов в

оценочную ведомость (табл. 2);

– второй – обозначается буквой и определяет виды вычисляемых полей в

отчете (табл. 3).

Разработка интерфейса пользователя базы данных 3. Варианты заданий

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

27

Page 28: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

Таблица 2 Варианты заданий по первому компоненту

№ вари- анта

По специаль- ности

По факультету

По группе

По дисциплине

По виду занятия

По семестру

По преподава-телю

1 X X X X X X

2 X X X X X X

3 X X X X X X

4 X X X X X X

5 X X X X X X

6 X X X X

X X

7 X X X X X X

8 X X X X X X

9 X X X X X X

10 X X X X

X X

11 X X X X X X

12 X X X X X X

13 X X X X

X X

14 X X X X X X

15 X X X X X X

Примечание Символом X обозначено условие отбора курсантов в отчет. Например, для первого варианта требуется вывести оценки по трем условиям: – по специальности и группе; – по специальности и дисциплине; – по группе и дисциплине.

Разработка интерфейса пользователя базы данных 3. Варианты заданий

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

28

Page 29: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

Таблица 3 Варианты заданий по второму компоненту

№ вари-анта

Всего оцене-но

На занятии присутст- вовало

На занятии отсутст- вовало

Оценено Количество записей в отчете

Средний балл на

5 на 4

на 3

на 2

а x x x

б x x x

в x x x

г x x x

д x x x

е x x x

ж x x x

з x x x

и x x x

к x x x

л x x x

м x x x

н x x x

о x x x

п x x x

РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА

1. Информатика. Базовый курс / Под ред. С.В. Симоновича. – СПб. : Питер,

2004. – 640 с.

2. Информатика: учеб. / Под ред. Н.В. Макаровой. – 3-е изд., перераб. – М. :

Финансы и статистика, 2005. – 768 с.

3. Карпова, Т.С. Базы данных: модели, разработка, реализация / Т.С. Карпо-

ва. – СПб. : Питер, 2001. – 304 с.

4. Кузьменко, В.Г. VBA 2003 / В.Г. Кузьменко. – М. : ООО «Бином-Пресс»,

2004. – 432 с.

Разработка интерфейса пользователя базы данных Рекомендуемая литература

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

29

Page 30: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

Приложение

Образец отчета

Разработка интерфейса пользователя базы данных Приложение

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

30

Page 31: Разработка интерфейса пользователя базы данныхvenec.ulstu.ru/lib/disk/2015/Pyatakov_1.pdf · Интерфейс пользователя

Методические указания по выполнению лабораторной работы № 2

по дисциплине «Современные информационные технологии»

РАЗРАБОТКА ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ

БАЗЫ ДАННЫХ

Составитель ПЯТАКОВ

АНАТОЛИЙ ИВАНОВИЧ

Редактирование Т.В. Никитина

Компьютерная верстка Ю.Ю. Романова

Подписано в печать .2008. Формат 60 х 90/16. Бумага газетная Печать офсетная. Усл. печ. л. 3,38. Уч.-изд. л. 2,84.

Тираж Заказ

РИО И УОП УВАУ ГА. 432071. Г. УЛЬЯНОВСК, УЛ. МОЖАЙСКОГО , 8/8.

Разработка интерфейса пользователя базы данных

© НИЛ НОТ НИО УВАУ ГА(и), 2009 г Составитель: А.И. Пятаков. Разработчик: С. П. Пугин.

31