Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


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



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

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

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

 

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

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

Access обеспечивает корректную связь между таблицами базы данных в окне «Запрос-выборка» между ними автоматически возникает соединительная линия.

Если между таблицами, включенными в запрос, нет связи и она не возникает автоматисески, можно соединить таблицы в окне «Запрос-выборка». Для этого необходимо наличие в них полей с совпадающими данными. Однако надо учесть, что такое соединение сохраняется лишь для данного запроса и при использовании этих же таблиц в новом запросе требуется соединять их заново.

 

Разработка многотабличной формы отчета вывода данных

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

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

 

Задание 3

В разделе 2 была описана технология создания таблицы СТУДЕНТ базы данных SESS. Структура этой таблицы полностью соответствует информации, приведенной в таблице 1. В соответствии с постановкой задачи пополнить базу данных SESS ещё двумя таблицами СЕССИЯ и СТИПЕНДИЯ.

Создайте структуры таблиц СЕССИЯ и СТИПЕНДИЯ, а в раннее созданной таблице СТУДЕНТ установите ключевое поле в соответствии с таблицами 2, 3, 4. Заполните вновь созданные таблицы СЕССИЯ и СТИПЕНДИЯ данными, как это показано на рис 12.

Используя возможности Access, установите связи между созданными таблицами СТУДЕНТ, СЕССИЯ и СТИПЕНДИЯ базы данных SESS.

В рамках поставленной в данной главе задачи рассмотрите возможности ввода информации в таблицы на основе использования составной формы. Допустим, что студент Куклин с номером личного дела 5 вовремя не сдала сессию по уважительной причине, и запись с результатами сдачи экзаменов в таблице СЕССИЯ отсутствует. Постройте составную форму и доведите недостающую информацию в базу данных.

Постройте запрос, позволяющий выводить фамилию, имя, отчество и номер группы студентов, которым может быть назначена стипендия, а также размер назначаемой стипендии. Эти данные могут быть использованы при создании проекта приказа назначения студентов на стипендию по результатам экзаменационной сессии. Информация для получения таких данных содержится в трех связанных таблицах СТУДЕНТ, СЕССИЯ и СТИПЕНДИЯ базы данных SESS.

Постройте отчет «ПРОЕКТ ПРИКАЗА», основанный на сформированном раннее запросе «ЗАПРОС НА ПОУЧЕНИЕ СТИПЕНДИИ», выбирающем из таблиц базы данных СТУДЕНТ, СЕССИЯ и СТИПЕНДИЯ информацию о студентах, которым по результатам экзаменационной сессии назначается стипендия, и о размере стипендии.

 

Технология выполнения

1. Откройте ранее созданную базу данных SESS.MDB.

2. Выведите таблицу СТУДЕНТ в режиме конструктора. Access переходит в режим конструктора таблиц и выводит экран «СТУДЕНТ: Таблица» с перечнем полей и их свойств.

3. Определите ключ таблицы СТУДЕНТ. Для определения ключа необходимо в окне конструктора таблиц выделить поле «Номер» и нажать кнопку панели инструментов <Ключевое поле>, в результате чего в разделителе строк появляется маленькое изображение ключа. Окончательный состав полей таблицы и их свойства приведены в таблице 2.

 

 

Таблица 2.

Структура таблицы СТУДЕНТ

Признак ключа Имя поля Тип поля Размер поля
ключ Номер Числовое Байт
  Фамилия Текстовое 20
  Имя Текстовое 15
  Отчество Текстовое 20
  Пол Текстовое 1
  Дата рождения Дата Краткий формат
  Группа Текстовое 6

 

4. Создайте структуры таблиц СЕССИЯ и СТИПЕНДИЯ, пользуясь описанием технологии создания новых таблиц базы данных в разделе 2. состав полей и их свойства приведены в таблице 3 и 4.

Таблица 3.

Структура таблицы СЕССИЯ

Признак ключа Имя поля Тип поля Размер поля
Ключ Номер Числовое Байт
  Оценка 1 Числовое Байт
  Оценка 2 Числовое Байт
  Оценка3 Числовое Байт
  Оценка 4 Числовое Байт
  Результат Текстовое 3

 

Таблица 4.

Структура таблицы СТИПЕНДИЯ.

Признак ключа Имя поля Тип поля Размер поля
Ключ Результат Текстовое 3
  Процент Числовое Байт

 

5. Заполните данными, показанными на рис. 12, вновь созданные таблицы СЕССИЯ и СТИПЕНДИЯ, используя информацию, приведенную теоретической части и описании технологии ввода данных в табличном режиме (раздел 2).

 

Рис. 9.12. Данные таблиц СЕССИЯ и СТИПЕНДИЯ

 

6. Расположите все три таблицы базы данных в окне «Схема данных». Для этого выполните команду меню СЕРВИС, схема данных. И в диалоговом окне «Добавление таблицы» выберите нужные вам таблицы

Примечание: Если вы хотите добавить ещё какую-нибудь таблицу, то выполните команду меню СВЯЗИ, Добавить таблицу…;

7. Таблицы расположатся в окне так, как это показано на рис. 13.

 

Рис. 9.13 Расположение таблиц в окне схемы данных

 

8. Установите связи между таблицами СТУДЕНТ и СЕССИЯ. Для этого:

· протащите указатель мыши от поля «Номер» таблицы СТУДЕНТ к полю «Номер» таблицы СЕССИЯ;

· в появившемся диалоговом окне «Изменение связи» установите флажок «Обеспечение целостности данных», и нажмите кнопку <Создать>.

9. Установите связь между таблицами СТИПЕНДИЯ и СЕССИЯ. Для этого:

· протащите указатель мыши от поля «Результат» таблицы СТИПЕНДИЯ к полю «Результат» таблицы СЕССИЯ;

· в появившемся диалоговом окне «Изменение связи» установите флажок «Обеспечение целостности данных» и нажмите кнопку <Создать>.

10.  В результате описанных действий окно «Схема данных» приобретает вид, показанный на рис. 14.

Рис. 14 Установленные связи между таблицами

 

11. Выйдите из режима схемы данных.

12.  Создайте составную форму с использованием мастера. Для этого:

· нажмите вкладку <Форма> и кнопку <Создать>;

· в диалоговом окне «Новая форма» выберите таблицу СЕССИЯ и выберите из списка <Мастера форм>;

· в окне «Создание форм» выберите все поля и нажмите <Далее>

· определите внешний вид формы «В один столбец»; <Далее>;

· выберите требуемый стиль, <Далее>;

· задайте имя «СЕССИЯ», переключите радиокнопку в строчку «изменение макета форм», <Готово>.

13. В режиме конструктора создания форм

· увеличьте область данных, выберите на панели инструментов кнопку   <Подчиненная форма/отчет> и определите прямоугольник в области данных, где будет находиться подчиненная таблица;

· в диалоговом окне «Мастер подчиненных форм» переключите радиокнопку на строку «Имеющиеся таблицы и запросы» и нажмите кнопку;

· выберите таблицу «СТУДЕНТ», а в ней поля Номер, Фамилия, Имя, Отчество, Группа;

· выберите из списка связей нужную вам (в нашем случае она одна), <Далее>;

· задайте имя для подчиненной формы «Подчиненная форма СТУДЕНТ», <Готово>;

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

14. Закройте режим конструктора форм.

15. Теперь откройте форму СЕССИЯ (см. рис.15)

 

 

Рис. 15 Пример составной формы.

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

16. Создайте новый запрос на основе связанных таблиц. Для этого:

· нажмите вкладку <Запрос> и кнопку <Создать>;

· в диалоговом окне «Новый запрос» выберите из списка <Простой запрос>, после чего появляется окно «Создание простых запросов»;

· выделите в списке <Таблица/Запросы> таблицу СТУДЕНТ и выберите из доступных полей следующие: «Фамилия», «Имя», «Отчество»;

· в том же списке выделите таблицу СТИПЕНДИЯ и выберите поле «Процент» и нажмите кнопку <Далее>;

· В следующем окне выберите подробный отчет и нажмите кнопку <Далее>;

· Задайте имя запросу «Запрос на получение стипендий» и переключите радиокнопку на строку «изменить макет запроса» и нажмите кнопку <Готово>;

 

Рис. 16. Окно конструктора запроса

 

· В верхней части окна «Запрос на выборку» появляются списки полей всех выбранных таблиц. Между этими списками автоматически возникают соединительные линии, так как между таблицами уже установлена связь (см. рис. 16).

· Допустим, что вы забыли на прошлых этапах включить в запрос поле «Группа» из таблицы СТУДЕНТ. Тогда из таблицы СТУДЕНТ в нижнюю часть окна «запрос на выборку » в строку Поле перетащите поле «Группа»;

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

·  Установите условие отбора. Для отбора студентов, подлежащих назначению на стипендию, необходимо в строке «Условие отбора» под полем «Процент» ввести выражение >0.

· Упорядочите выводимые в запросе данные по полю «Фамилия» в алфавитном порядке. Щелкните ячейку в строке «Сортировка» под полем «Фамилия» и в появившемся списке выберите «По возрастанию». Окно сформированного запроса принимает вид, показанный на рис. 16.

· Посмотрите сформированную запросом информацию. Для этого щелкните по кнопке <Режим таблицы> или выберите в меню ВИД пункт Режим таблицы. Результаты запроса будут выглядеть так как показано на рис. 17.

17. Закройте режим запроса.

 

Рис. 17 Просмотр результатов запроса

 

Для того, чтобы построить отчет «ПРОЕКТ ПРИКАЗА», основанный на сформированном раннее запросе «ЗАПРОС НА ПОЛЕЧЕНИЕ СТИПЕНДИИ», выбирающем из таблиц базы данных СТУДЕНТ, СЕССИЯ и СТИПЕНДИЯ информацию о студентах, которым по результатам экзаменационной сессии назначается стипендия, и о размере стипендии, необходимо:

· нажмите вкладку <Отчеты> и кнопку <Создать>;

· в диалоговом окне «Новый отчет» выберите запрос «ЗАПРОС нА ПОЛУЧЕНИЕ СТИПЕНДИИ», выберите из списка «Мастер отчетов».

· в окне «Создание отчетов» в экране шага 1 мастера выберите все имеющиеся в запросе поля, нажав клавишу (»), а затем кнопку <Далее>;

· в экране шага 2 мастера выберите тип представления данных «по СТУДЕНТ» и нажмите кнопку <Далее>;

· в экране шага 3 мастера добавьте уровень группировки по полю «Группа», <Далее>;

· на следующем шаге выберите порядок сортировки по возрастанию по полю «Фамилия» и нажмите кнопку <Далее>;

· на следующем шаге выберите макет отчета «По левому краю 1», ориентацию «Книжная» нажмите кнопку <Далее>

· затем выберите «Строгий стиль»,<Далее>;

· введите имя отчета «ПРОЕКТ ПРИКАЗА»;

· в экране шага 4 мастера «Табличный отчет» введите имя отчета «ПРОЕКТ ПРИКАЗА», выберите радиокнопку «Изменение структуры отчета» и нажмите кнопку <Готово>.

18. Улучшите вид созданного отчета. Для этого в появившемся окне конструктора «Отчет» измените размеры элементов макета под поля области данных (увеличьте под поля «Имя», «Отчество» и уменьшите под «Процент»), несколько сместите их и переместите относительно этих полей элементы верхнего колонтитула, а также удалите в нижнем колонтитуле информацию о страницах (Выделите щелчком этот элемент и нажмите клавишу <DEL>).

19. Сохраните отчет.

20. Выведите отчет для просмотра. Для этого нажмите кнопку «Просмотр». Полученный отчет должен выглядеть так же, как это показано на рис. 18.

 

Рис.18. Вид отчёта. «Проект приказа»

21. Закройте режим отчета.

22. Закройте базу данных.

 

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

Главная кнопочная форма выполняет функции титульного листа и меню. Она как бы является лицом базы данных и заметно облегчает работу с ней. Главная кнопочная форма должна открываться при обращении к базе данных. Из нее пользователь может обращаться к основным элементам базы данных. Разработка главной кнопочной формы выполняется в результате Конструктора. При её создании разработчик может использовать большое разнообразие вариантов оформления по своему усмотрению. Форме целесообразно присваивать имя Б.Д., но не обязательно.

 

Задание 4.

Создать Главную кнопочную форму.

1. Создание заголовка формы:

 в окне Новая форма выбрать способ создания формы – Конструктор.  Щелкнуть по кнопке OK. Раскроется окно Конструктора с разделом Область данных. Форма может содержать до пяти разделов: Заголовок формы, Верхний колонтитул, Область данных, Нижний колонтитул и Примечание формы.

Серая панель с именем раздела называется областью выделения раздела. Чтобы выделить весь раздел достаточно щелкнуть мышью в его области выделения. Окно Конструктора также имеет горизонтальную и вертикальную линейки, помогающие располагать и выравнивать элементы управления.

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

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

3. Сформировать заголовок. Для этого щелкнуть на кнопке  панели инструментов и перевести указатель мыши, который примет вид “+А”, в раздел Заголовок формы. Щелкнув левой кнопкой мыши, растянуть для заголовка прямоугольный контур нужного размера. После отпускания кнопки мыши прямоугольник по умолчанию станет белым.

4. В прямоугольный контур ввести название формы Список группы.

5.  Щелкнуть по контуру заголовочного поля левой кнопкой мыши. Линия контура видоизменяется, а фоновый цвет заголовочного поля сравняется с цветом раздела.

6.  Выполнить настройку раздела Заголовок формы. Для этого щелкнуть правой кнопкой мыши в любой точке диалогового окна. В появившемся контекстном меню выбрать пункт Свойства. Открывается окно с таблицей свойств элементов формы.

7. Щёлкните по кнопке прокрутки в поле выбора элемента формы для настройки заголовка формы и из раскрывшегося списка выбрать пункт Заголовок формы. На вкладке Макет установить значения свойств (высота, цвет фона, оформление). Остальные свойства устанавливаются по умолчанию.

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

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

 


Поделиться:



Последнее изменение этой страницы: 2019-03-31; Просмотров: 291; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.052 с.)
Главная | Случайная страница | Обратная связь