Практическая работа № 7. Создание пользовательских форм для ввода данных в СУБД

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

2. Удалите автозаголовок формы и, пользуясь кнопкой Надпись на панели инструментов, создайте в области заголовка новое название формы – «Краткие данные на сотрудников». Параметры заголовка: шрифт – полужирный, размер 14, цвет – синий.

3. Рядом с надписью создайте кнопку для закрытия формы. Для этого активизируйте на панели инструментов элемент Кнопка . Следите за тем, чтобы кнопка Использовать мастера была «подсвечена» (см. рис. 69).

 

Рис. 69

4. После переноса кнопки курсором мыши в нужное место формы и вычерчивания ее рамки запустится мастер Создание кнопок (см. рис.70).

Рис. 70

В окне мастера нужно выбрать действие, которое будет выполняться при нажатии кнопки. В группе «Категория» выберите «Работа с формой», а в группе «Действия» − «Закрыть форму».

4. В следующем сеансе диалога с мастером определяется вид кнопки – «Текст» или «Рисунок» (выбираем рисунок), затем выбирается подходящий рисунок из списка. После нажатия кнопки Готово, мастер встраивает кнопку в нужное место на форме (см. рис. 71). Аналогичные действия выполняются при встраивании других кнопок формы. Сохраните форму с именем «Кнопочная форма».

Рис. 71. Кнопочная форма

Задание для самостоятельной работы: Создайте аналогичную форму на основе таблицы «Филиал предприятия». Требования к оформлению: заголовок – Сотрудники филиала предприятия, размер основного шрифта – 14, полужирный. Цвет фона – светло-зеленый, цвет текста – темно-зеленый, выравнивание текста - по центру, цвет фона поля – желтый, цвет границы – черный, толщина линии границы – 2, оформление с тенью. Созданная форма должна содержать две кнопки «Предыдущая запись» и «Следующая запись» (см. рис.72). Сохраните форму под именем «Филиал».

Рис.72


Практическая работа № 8. Работа с базой данных

Самостоятельная работа.

Задание 1.

1. Выберите из таблицы «Сотрудники предприятия» всех сотрудников с должностью бухгалтер или директор. Для этого создайте запрос, добавьте таблицу «Сотрудники предприятия». Выберите поля для вывода - Фамилия, Имя, Отчество, Должность. В строке «Условие отбора» поля должность наберите условие - «гл.бухгалтер» or «директор» (о типах выражений читайте в первой части пособия). Следите за тем, чтобы и в таблице данных и в строке условия запроса слова были написаны одинаково. Сохраните запрос под именем «Запрос-Бухгалтер».

2. Создайте по данным таблицы «Филиал предприятия» запрос на выборку всех сотрудников, у которых ставка больше или равна 6000 руб., но меньше 11000 руб. Сохраните его под именем «Запрос - Ставка».

3. Выведите в запросе всех сотрудников с сортировкой по фамилиям с должностью гл.бухгалтер или директор, у которых зарплата превышает 12000 руб. Сохраните запрос под именем «Запрос-Бухгалтер 12000».

Задание 2: Работа с построителем выражений. Выбрать сотрудников, у которых ставка меньше 8000 руб., с использованием Построителя выражений.

Порядок работы:

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

Рис.73

В окне Построителя выражений выберите таблицу «Филиал предприятия» и, используя поле Ставка, наберите соответствующее условие, пользуясь инструментами Построителя выражений (см. рис. 74).

Рис.74

2. Задайте в запросе сортировку по фамилиям. Запустите запрос на выполнение и сохраните его под именем «Запрос филиал 8000».

Задание 3. Рассчитаем суммарное и среднее арифметическое значение поля Ставка.

Последовательность работы:

1. С помощью запроса сначала подсчитаем суммарное значение по полю Ставка в таблице Филиал предприятия. Для этого создайте запрос в режиме Конструктор и в бланке запроса выберите поле Ставка.

2. Нажмите кнопку Итоги на панели инструментов. В появившейся строке «Групповые операции» бланка запроса из раскрывающегося списка выберите функцию «Sum». Запустите запрос на выполнение. Запрос охраните под именем «Запрос-Сумма».

3.Самостоятельно рассчитайте среднее арифметическое по полю Зарплата. Запустите запрос на выполнение и присвойте ему имя «Запрос-Среднее».

Дополнительные задания (по таблице «Сотрудники предприятия»):

1. Выберите сотрудников по должности «зам.директора», поступивших на работу после 10 октября 1982 года. Фамилии расположить в алфавитном порядке. Имя запроса «замдиректора».

2. Выберите сотрудников, возраст которых от 30 до 50 лет, и у которых ставка превышает 8000 руб. Вспомните о том, что в запрос можно добавлять не только таблицы, но и запросы, например, запрос «Вычисляемые поля», который как раз и содержит уже вычисленный ранее возраст (см. рис. 75). Имя запроса «возраст и ставка».

Рис.75

3. Посчитайте суммарные значения по полям Премия и Зарплата таблицы Сотрудники (использовать групповую операцию Sum). Имя запроса «суммарный премия зарплата».

4. Найдите максимальные значения по полю Зарплата и минимальное значение по полю Премия (используйте групповые операции Max, Min). Имя запроса «минимум и максимум».

Практическая работа № 9. Создание подчиненных форм в СУБД Microsoft Access

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

Задание 1. Создайте таблицы «Сектор» и «Клиенты предприятия» в режиме Конструктор. Свойства полей таблиц следующие: Таблица «Сектор»: «Номер сектора» (ключевое поле, текстовое, размер 3), «Количество клиентов» (числовое, размер − байт), «Средняя сумма заказов за год» (числовое, размер – одинарное с плавающей точкой) (см. рис. 76).

Рис. 76

Таблица «Клиенты предприятия»− поля «Номер сектора» (ключевое, текстовое, размер 3), «Номер клиента» (ключевое, числовое, размер - целое), «Наименование клиента» (текстовое, размер 20), «Дата заключения договора» (числовое), «Сумма заказов» (числовое, размер – одинарное с плавающей точкой), см. рис. 77. Для задания ключа для двух полей сначала выделите их с помощью клавиши C trl.

Рис. 77

1. Создайте связь между таблицами «Сектор» и «Клиенты предприятия». В диалоговом окне задайте параметры: объединение целостности данных, каскадное обновление связанных полей и каскадное удаление связанных полей. Нажмите кнопку ОК (см. рис. 78).

Рис. 78

2. Создадим многотабличную форму для одновременного ввода данных сразу в две таблицы. Для обеспечения удобного ввода создадим единую форму. В ней необходимо предусмотреть основную форму с реквизитами секторов и подчиненную форму с записями о клиентах. Основной форме присвоим имя «Сектор», подчиненной - «Список клиентов». Форма будем создавать в режиме Мастер (рис.79).

Рис.79

3. В окне Создание формы сначала выбираем таблицу «Сектор», которая служит источником данных для основной части создаваемой многотабличной формы. Из нее выбираем все поля, а из таблицы Клиенты предприятия все, кроме НомерСектора (рис.80).

Рис. 80

3. Очередное окно мастера отображает макет формы с перечнем полей в основной части формы и в подчиненной форме. В этом окне выделена таблица «Сектор» как источник записей основной части формы. Для непосредственного включения подчиненной формы ставим галочку «Подчиненные формы» (рис. 81).

Рис. 81

4. В последующих диалоговых окнах мастера выберите внешний вид подчиненной формы − ленточный и стиль оформления на ваше усмотрение. В последнем окне мастера вводятся имена основной формы («Сектор») и подчиненной формы («Список клиентов: подчиненная форма), а также дальнейшие действия мастера − Открытие формы для просмотра и ввода данных. Ключевое поле Номер сектора не включено в подчиненную форму, так как оно присутствует в основной части формы (рис. 82).

Рис. 82

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

6. Редактирование подчиненной формы сводится к уточнению подписей полей - столбцов, а также размеров полей. Вид двухтабличной формы после редактирования в режиме Формы приведен на рисунке 83.

Рис. 83

7. Используя двухтабличную форму и кнопки управления введите исходные данные в таблицы «Клиенты предприятия» и «Сектор». Ввод данных производится из обеих таблиц поочередно: сначала введите данные в основную форму для сектора 100, затем во вспомогательную форму введите данные для всех четырех клиентов этого же сектора 100. Далее аналогично введите данные для сектора 200 в основную и подчиненную формы и т.д. Данные представлены в таблицах 7 и 8.

Таблица 7

Номер сектора Количество клиентов в группе Средняя сумма заказов за год
100 4 45020
200 3 75250
300 2 96520
400 1 85420
500 2 81520

 

 

Таблица 8

Номер сектора Номер клиента Наименование клиента Дата заключения договора Сумма заказа
100 01 ОАО «Старт» 2006 53200
100 02 ООО « Салют» 2005 28300
100 03 ООО «Прогресс» 2004 47950
100 04 ОАО «Линия» 2002 57640
200 01 ОАО «Барс» 2003 85610
200 02 ООО «Вектор» 2006 75930
200 03 ОАО « Восток» 2005 68410
300 01 ЗАО «Рекс» 1998 45632
300 02 ООО «Подиум» 2003 88760
400 01 ООО «Север» 1999 78653
500 01 ОАО «Юстис» 2004 67543
500 02 ОАО «Мечта» 2006 77940

 

После ввода данных закройте форму и выберите объекты - таблицы. Откройте таблицу «Сектор». Обратите внимание на ее вид (см. рис. 84). Разверните данные подчиненной таблицы нажатием на кнопку +.

Рис. 84

Создайте отчет по клиентам предприятия согласно рисунку 85:

Рис. 85

Задания для самостоятельной работы. Работа с ранее созданной базой данных

Задание №1.

1. С помощью запроса на обновление в таблице «Филиал предприятия» рассчитайте поле Премия из расчета 57% от Ставки. Запросу присвойте имя «Премия57».

2. Введите в таблицу «Филиал предприятия» новое поле Поощрение. Используя запрос на обновление, введите формулу расчета для поля Поощрение из расчета 25% от Ставки. Формула для расчета Поощрение=Ставка*0,25. Запросу присвоить имя Поощрение25. Проверьте правильность расчетов на калькуляторе.

3. Рассчитайте поле Зарплата как сумму полей Ставка, Премия и Поощрение. Запросу присвойте имя «Зарплата-Поощрение».

4. Создайте запрос на выборку с именем «Отчества А» для таблицы «Сотрудники предприятия», осуществив выборку всех сотрудников, у которых отчество начинается на букву А.

5. Создайте запрос на выборку по таблице «Филиал предприятия»; выведите поля Фамилия, Имя и Поощрение для тех сотрудников, у которых Поощрение превышает 1200 руб. Задайте сортировку поощрений по возрастанию. Сохраните запрос под именем «Поощрение 1200».

6. По таблице «Сотрудники предприятия» выберите сотрудников, поступивших на работу после 8 апреля 1999 года. Фамилии расположите в алфавитном порядке. Сохраните запрос под именем «Запрос_Прием».

7. Создайте отчет по данным таблицы «Филиал предприятия». Присвойте имя отчету «Отчет-Филиал».

Задание №2

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

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

3. Создайте сложный запрос, позволяющий при вводе фамилии сотрудника получить его полный адрес в виде одной строки: улица…дом…квартира…. . Сохраните его с именем «запрос-адрес».

4. Создайте запрос, определяющий количество сотрудников в каждом отделе, родившихся позднее 1961 года. Результат на рисунке 86. Сохраните с именем «запрос итог 1961».

Рис.86

5. Создайте итоговый запрос по клиентам, вычисляющий общую сумму заказов сектора. Создайте на основе этих данных отчет с диаграммой. Диаграмму нужно создавать в области заголовка отчета. Примерный вариант отчета представлен на рисунке 87. Запрос и отчет назовите «Итоги по секторам».

Рис.87

Задания для допуска к экзамену

Вариант 1. Разработать базу данных Семейный бюджет

Вариант 2. Разработать базу данных Телефонная книга

Вариант 3. Разработать базу данных Моя библиотека

Вариант 4. Разработать базу данных Документация предприятия

Вариант 5. Разработать базу данных Деканат

Вариант 6. Разработать базу данных Магазин

Вариант 7. Разработать базу данных Склад

Вариант 8. Разработать базу данных Фонотека

Вариант 9. Разработать базу данных Аптека

Вариант 10. Разработать базу данных Расписание факультета

 

Примечание:

Каждый студент получает свой вариант задания у преподавателя в начале семестра.

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

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

 

Вера Александровна Никольская

ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ УПРАВЛЕНИЯ I

Оптимизация деятельности предприятия на основе

Microsoft Access 2007

Сборник практических работ

 

 

Редакторы: Л.П. Шахрова

Н.И. Морозова

 

 

Лицензия ПД № 18-0062 от 20.12.2000


Подписано к печати: Формат 60х90 1/16

Печ.л. 5,2 Тираж 100 экз. Заказ

Цена договорная


 

Типография НГЛУ им.Н.А. Добролюбова

603155, Н.Новгород, ул. Минина 31а.

 

[1] Созданную базу данных скопируйте на свой съемный носитель и постоянно обновляйте. Лучше, если вы всегда будете работать только с флэшкой, и дома и на занятиях. Это поможет избежать потери данных и всей работы.