Автоматизация предметной области
В данном курсовом проекте при создании базы данных была использована система управления базами данных Microsoft Access 2010. Рассматриваемая база данных имеет достаточно простой и удобный интерфейс. Для удобства работы была создана главная кнопочная форма с понятным интерфейсом. С её помощью можно вызывать таблицы, отчеты, запросы и формы, которые были реализованы согласно заданию курсового… Читать ещё >
Автоматизация предметной области (реферат, курсовая, диплом, контрольная)
Министерство образования Республики Беларусь Учреждение образования
" Гомельский государственный университет имени Франциска Скорины"
Физический факультет Кафедра автоматизированных систем обработки информации Курсовой проект Автоматизация предметной области Исполнитель студент группы АС-37
Клименков А.А.
Руководитель старший преподаватель каф. АСОИ Леванцов В.Н.
Гомель 2015
Реферат
Курсовой проект: 48 страниц, 96 рисунков, 14 таблиц, 6 источников, 1 приложение.
Ключевые слова: схема, таблицы, формы, поля, указатель.
Объект исследования: программный комплекс по автоматизации предметной области.
Предмет исследования: множество структурированной информации.
Методы исследования: создание и редактирование наборов данных.
Цель курсового проекта: научиться создавать базы данных в среде Microsoft Access 2010 и работать с ними.
Задача курсового проекта:
Создание приложения БД, обеспечивающее пользователю возможности по заполнению, редактированию, просмотру и анализу данных предметной области, выбранной для автоматизации.
В данной базе данных выполняются следующие условия и ограничения:
результатом выполнения проекта является приложение БД, обеспечивающее пользователю возможности по пополнению, редактированию, просмотру и анализу данных предметной области, выбранной для автоматизации;
исходные данные: макеты выходных отчетов и входных оперативно-учетных документов;
количество выходных отчетов — не менее трех. Из них один должен быть сводным, один аналитическим. В отчетах обязательно наличие финансовых данных. У каждого отчета должны быть параметры (например, даты, элементы справочников, флаги отбора данных);
количество входных оперативно-учетных документов — не менее двух. Хотя бы один должен иметь изменяемые данные в заголовочной части, а также табличную часть. В табличной части должны подсчитываться итоги по финансовым величинам.
Вывод: в ходе выполнения курсового проекта приобрели навыки по созданию и работе с базой данных в среде Microsoft Access 2010.
Задание по курсовому проекту
Студенту Клименкову Андрею Александровичу
Тема курсового проекта «Автоматизация фирмы по ремонту компьютерной техники» .
Срок сдачи работы студентом: 21.05.2015.
Исходные данные к курсовому проекту:
Гринченко Н. Проектирование баз данных. СУБД Microsoft Access. Учебное пособие / Н. Гринченко, Е. Гусев, Н. Макаров — М.: Горячая линия — Телеком, 2004. — 240 с.
Бородина, А. И. Технологии баз данных и знаний / А. И. Бородина. — Мн.: БГЭУ, 2008. — 505 с.
Литвин, П. Access 2010 / П. Литвин, К. Гетц — С.: Издательский дом «БХВ-Петербург», 2002. — 1008 с.
Бородина, А. И. Технологии баз данных и знаний / А. И. Бородина. — Мн.: БГЭУ, 2008. — 505 с.
Перечень подлежащих разработке вопросов:
результатом выполнения проекта является приложение БД, обеспечивающее пользователю возможности по пополнению, редактированию, просмотру и анализу данных предметной области, выбранной для автоматизации;
исходные данные: макеты выходных отчетов и входных оперативно-учетных документов;
количество выходных отчетов — не менее трех. Из них один должен быть сводным, один аналитическим. В отчетах обязательно наличие финансовых данных. У каждого отчета должны быть параметры (например, даты, элементы справочников, флаги отбора данных);
количество входных оперативно-учетных документов — не менее двух. Хотя бы один должен иметь изменяемые данные в заголовочной части, а также табличную часть. В табличной части должны подсчитываться итоги по финансовым величинам.
Календарный план работ с указанием сроков выполнения отдельных этапов
Этапы выполнения работы | Содержание выполняемой работы | Сроки представления материала | Отметка о выполнении этапа работы | Подпись руководителя | |
Ознакомление с литературой | 11.02.2015 | ||||
Постановка задачи | 22.22 015 | ||||
Разработка таблиц для хранения данных | 08.03.2015 | ||||
Выполнение основного задания | 25.03.2015 | ||||
Создание отчета | 01.04.2015 | ||||
Оформление пояснительной записки | 01.05.2015 | ||||
Сдача курсового проекта | 21.05.2015 | ||||
6 Дата выдачи задания «11» февраля 2015 г.
Научный руководитель ______________ Леванцов В.Н.
Задание принял к исполнению ______________ Клименков А.А.
- Введение
- 1. Концептуальное проектирование базы данных
- 1.1 Характеристика предметной области
- 1.2 Выходная информация
- 1.3 Входная информация
- 1.4 Структура базовых таблиц
- 2. Описание программного комплекса
- 2.1 Создание базы данных
- 2.2 Создание таблиц
- 2.3 Связи между таблицами
- 2.4 Создание форм
- 2.5 Создание главной кнопочной формы
- 2.6 Создание запросов
- 2.7 Создание отчетов
- 3. Тестирование программного комплекса
- Заключение
- Список использованных источников
- Приложение A
Задачей курсового проекта является автоматизация предметной области, пополнение, редактирование, просмотр и анализ данных предметной области, выбранной для автоматизации.
В качестве предметной области была выбрана тема «Автоматизация фирмы по ремонту компьютерной техники». База данных хранит информацию о видах техники, типах техники, самой технике, причине поломки, неисправностях, способах устранения неисправностей, клиентах, мастерах, услугах и ремонте.
В качестве СУБД использовался программный комплекс Microsoft Access 2010. Теперь Access — не просто средство для создания классических баз данных. Этот простой инструмент позволяет быстро создавать веб-приложения для работы с базами данных, облегчающие ведение бизнеса. Данные автоматически сохраняются в базе данных SQL, благодаря чему это решение стало более безопасным и масштабируемым, чем когда-либо ранее, а приложения теперь легко использовать совместно с коллегами. Это реляционная СУБД, имеющая широкий спектр функций, таких как связанные запросы, связь с внешними таблицами и базами данных. Основными компонентами, использующимися в курсовой, являются построитель таблиц, построитель экранных форм, построитель SQL запросов и построитель отчетов.
Данные хранятся в базе в виде таблиц, строки (записи) которых состоят из наборов полей определенных типов. С каждой таблицей Access могут быть связаны индексы (ключи), задающие нужные пользователю порядки на множестве строк. Таблицы могут иметь однотипные поля (столбцы), и это позволяет устанавливать между ними связи.
Пояснительная записка содержит две главы: концептуальное проектирование базы данных, описание выполнения работы и тестирование программного комплекса.
Первая глава это характеристика предметной области, макеты входных и выходных документов, участников нормализации данных и алгоритмы реализации базы данных.
Вторая глава то практическая часть, описание реализации базы данных: создание структуры таблиц, проектирование форм, запросов, отчётов и создание главной кнопочной формы.
Третья глава описывает тестирование программного комплекса, работу с кнопочными формами. Присутствует описание работы с объектами базы данных при помощи кнопочных форм.
1. Концептуальное проектирование базы данных
1.1 Характеристика предметной области
Для быстрой обработки информации необходима автоматизированная система, основанная на базе данных. Её использование сократит время, затрачиваемое на обслуживание клиентов.
Информационная система для автоматизации фирмы по ремонту компьютерной техники должна предусматривать режим ведения системного каталога, отражающего информацию о проведённом ремонте, о заказчике и услуге, предоставляемо мастерами.
Каждом клиенту предоставляются услуги по нескольким видам техники. Каждая услуга по ремонту имеет свою стоимость. В системном каталоге хранится информация о том, оплачена ли услуга или нет, и дата поступления заказа.
1.2 Выходная информация
Выходной документ «Оплата» предназначен для определения выручки за предоставление услуг по ремонту. Макет выходного документа «Оплата» представлен в виде таблицы 1.
Таблица 1 - Выходной документ «Оплата»
ФИО заказчика | Неисправность | Услуга | Стоимость | |
Выходной документ «Заказы за период» предназначен для просмотра заказов на ремонт за определенный период. Макет выходного документа представлен в виде таблицы 2.
Таблица 2 — Выходной документ «Заказы за период»
ФИО заказчика | Неисправность | Услуга | Дата | |
Выходной документ «Заказы в течение определенного промежутка времени» предназначен для анализа заказов на ремонт в течение определенного промежутка времени. Макет выходного документа «Заказы в течение определенного промежутка времени» представлен в виде таблицы 3.
Таблица 3 — Заказы в течение трех месяцев
Март | Апрель | Май | Всего заказов | |
Выходной документ «Выручка мастеров за год» предназначен для анализа оплаченных заказов на ремонт каждого мастера. Макет выходного документа «Выручка мастеров за год» представлен в виде таблицы 4.
Таблица 4 - Выручка по городам за год
Иванов И.И. | Петров П.П. | Сидоров С.С. | Выручка | |
1.3 Входная информация
Входным оперативно-учетным документом является накладная на предоставление услуги по ремонту. Она предназначена для оформления факта оказания услуги мастером в отношении заказчика. Макет накладной на предоставление услуги по ремонту представлен на рисунке 1.
Рисунок 1 — Накладная на предоставление услуги по ремонту Входным оперативно-учетным документом является накладная на оплату выполненной услуги по ремонту. Она предназначена для оформления факта оплаты выполненной мастером работы. Составляется при каждой выполненной услуге. Макет накладной на оплату выполненной услуги по ремонту представлен на рисунке 2.
Рисунок 2 — Накладная на оплату выполненной услуги по ремонту
1.4 Структура базовых таблиц Процесс нормализации данных помогает оптимизировать получаемую пользователем информацию.
В курсовом проекте вся входная информация представлена в виде десяти таблиц со следующими реквизитами (таблицы 5−14).
Таблица 5 - Ремонт
Имя поля | Тип данных | |
Код заказа | Числовой | |
Код клиента | Числовой | |
Код техники | Числовой | |
Код услуги | Числовой | |
Дата | Дата/время | |
Оплачено | Логический | |
Таблица 6 — Прайс
Имя поля | Тип данных | |
Код услуги | Числовой | |
Код типа | Числовой | |
Код неисправности | Числовой | |
Код способа устранения | Числовой | |
Цена | Денежный | |
Таблица 7 — Причина поломки
Имя поля | Тип данных | |
Код причины | Числовой | |
Причина неисправности | Текстовый | |
Таблица 8 — Неисправность
Имя поля | Тип данных | |
Код неисправности | Числовой | |
Код причины | Числовой | |
Описание поломки | Текстовый | |
Таблица 9 — Способ устранения неисправности
Имя поля | Тип данных | |
Код способа устранения | Числовой | |
Способ устранения | Текстовый | |
Таблица 10 — Тип техники
Имя поля | Тип данных | |
Код типа | Числовой | |
Код вида | Числовой | |
Техника | Текстовый | |
Таблица 11 — Вид техники
Имя поля | Тип данных | |
Код вида | Числовой | |
Вид техники | Текстовый | |
Таблица 12 - Техника
Имя поля | Тип данных | |
Код техники | Числовой | |
Наименование | Текстовый | |
Серийный номер | Текстовый | |
Гарантия | Логический | |
Фото | Поле OLE | |
Таблица 13 — Клиенты
Имя поля | Тип данных | |
Код клиента | Числовой | |
ФИО | Текстовый | |
Адрес | Текстовый | |
Телефон | Числовой | |
Таблица 14 — Мастера
Имя поля | Тип данных | |
Код мастера | Числовой | |
ФИО | Текстовый | |
Номер паспорта | Текстовый | |
Телефон | Числовой | |
Фото | Поле OLE | |
2. Описание программного комплекса
2.1 Создание базы данных
Запустив MS Access, создаём новую базу данных, указав путь для файла базы данных. После этого можем наблюдать окно созданной базы (рисунок 3).
Рисунок 3 — Окно базы данных
2.2 Создание таблиц Таблицы базы данных будем создавать при помощи конструктора таблиц. Для каждой таблицы, указываем имя, имена полей и тип данных в соответствии с вышеприведённой структурой базовых таблиц. Перед сохранением необходимо указать ключевое поле.
Рисунок 4 — Конструктор таблиц
2.3 Связи между таблицами Установка связей между таблицами осуществляется, путём добавления всех таблиц в область схемы данных и перетаскиванием ключевых полей одной таблицы к соответствующими не ключевым полям другой. При этом для установки связей «один к многим» надо обязательно установить галочки в окне «Изменение связей» как показано на рисунке 5.
Рисунок 5 — Изменение связей Наглядно связи между таблицами представлены на рисунке 6.
Рисунок 6 — Схема данных
2.4 Создание форм В окне базы данных выбираем пункт меню «Формы», где выбираем пункт «Создание формы с помощью мастера» (рисунок 7). После создания формы в режиме конструктора меняем форму для более удобного ввода данных (рисунок 8). Ниже представлены все созданные формы (рисунки 9 — 18).
Рисунок 7 — Создание формы Рисунок 8 — Форма в режиме конструктора Рисунок 9 — Форма «Ремонт»
Рисунок 10 — Форма «Прайс»
Рисунок 11 — Форма «Причина поломки»
Рисунок 12 — Форма «Неисправность»
Рисунок 13 — Форма «Способ устранения неисправности»
Рисунок 14 — Форма «Тип техники»
Рисунок 15 — Форма «Вид техники»
Рисунок 16 — Форма «Техника»
Рисунок 17 — Форма «Клиенты»
Рисунок 18 — Форма «Мастера»
2.5 Создание главной кнопочной формы Главная кнопочная форма используется в качестве главного меню базы данных. Элементами главной кнопочной формы являются объекты таблиц, форм, запросов и отчётов. Главная кнопочная форма отображается при запуске базы данных и обеспечивает навигацию по базе данных.
Спроектируем Главную кнопочную форму, не прибегая к помощи мастера главной кнопочной формы. Для этого откроем конструктор форм. Бросим на форму 5 кнопок, которые обеспечивают открытие форм «Таблицы», «Формы», «Запросы», «Отчёты» и выход из главной кнопочной формы.
В обработке нажатия кнопок нет команды отвечающей за открытие таблицы, мы эту функцию реализуем с помощью макросов. Переходим на вкладку «Создание» и выбираем «Макрос». В появившемся окне выбираем команду «ОткрытьТаблицу», и выбираем таблицу. Затем сохраняем макрос под именем таблицы (рисунок 19).
Рисунок 19 — Создание макросов
Для открытия запросов, форм и отчётов, команды присутствуют, поэтому нам достаточно передать из обработку кнопкам.
Чтобы при открытии БД запускалась кнопочная форма, в «Параметры запуска», что в меню «Сервис», в поле «Вывод формы/страницы» выбираем соответствующую форму.
Кнопочную форму можем наблюдать на рисунке 20.
Рисунок 20 — Главная кнопочная форма
2.6 Создание запросов Создадим SQL-запрос, который будет выводить тип техники, который может быть отремонтирован мастерами.
SELECT [Тип техники]. Тип техники]
FROM [Тип техники]
WHERE EXISTS
(SELECT * FROM [Вид техники]
WHERE [Вид техники]. Код вида]=[Тип техники]. Код вида]);
Результат выполнения запроса представлен на рисунке 21.
Рисунок 21 — Результат выполнения запроса «Виды техники»
Создадим SQL-запрос, который будет выводить список клиентов, которые не оплатили соответствующую услугу.
SELECT Кленты. ФИО, Техника. Наименование, [Способ устранения неисправности]. Способ устранения], Прайс. Цена
FROM Техника INNER JOIN ([Способ устранения неисправности] INNER JOIN (Прайс INNER JOIN (Кленты INNER JOIN Ремонт ON Кленты. Код клиента] = Ремонт. Код клиента]) ON Прайс. Код услуги] = Ремонт. Код услуги]) ON [Способ устранения неисправности]. Код способа устранения] = Прайс. Код способа устранения]) ON Техника. Код техники] = Ремонт. Код техники]
WHERE (((Ремонт.Оплачено)=False));
Результат выполнения запроса представлен на рисунке 22.
Рисунок 22 — Результат выполнения запроса «Должники»
Создадим SQL-запрос, который будет выводить каталог цен на услуги.
SELECT Прайс. Код услуги], [Тип техники]. Тип техники], Неисправность. Описание поломки], [Способ устранения неисправности]. Способ устранения], Прайс. Цена
FROM [Тип техники] INNER JOIN ([Способ устранения неисправности] INNER JOIN (Неисправность INNER JOIN Прайс ON Неисправность. Код неисправности]=Прайс. Код неисправности]) ON [Способ устранения неисправности]. Код способа устранения]=Прайс. Код способа устранения]) ON [Тип техники]. Код типа]=Прайс. Код типа]
ORDER BY [Тип техники]. Тип техники];
Результат выполнения запроса представлен на рисунке 23.
Рисунок 23 — Результат выполнения запроса" Каталог цен на ремонт"
Создадим SQL-запрос, который будет выводить номера заказов каждого клиента.
SELECT Кленты. ФИО, Ремонт. Код заказа] AS [Количество услуг]
FROM Кленты INNER JOIN Ремонт ON Кленты. Код клиента]=Ремонт. Код клиента]
GROUP BY Кленты. ФИО, Ремонт. Код заказа];
Результат выполнения запроса представлен на рисунке 24.
Рисунок 24 — Результат выполнения запроса «Номер заказа клиента»
Создадим SQL-запрос, который будет построен на базе предыдущего запроса, только на этот раз он будет выводить количество заказов каждого клиента.
SELECT [Номер заказа клиента]. ФИО, Count ([Номер заказа клиента]. Количество услуг]) AS [Количество заказов]
FROM [Номер заказа клиента]
GROUP BY [Номер заказа клиента]. ФИО;
Результат выполнения запроса представлен на рисунке 25.
Рисунок 25 — Результат выполнения запроса «Количество аказов»
Создадим SQL-запрос, который будет выводить прибыль мастеров за выполнение услуг.
SELECT Мастера. ФИО, [Способ устранения], Цена
FROM Мастера, Ремонт, Прайс, [Способ устранения неисправности]
WHERE Мастера. Код мастера]=Ремонт. Код мастера] AND Ремонт. Код услуги]=Прайс. Код услуги] AND Прайс. Код способа устранения]=[Способ устранения неисправности]. Код способа устранения]
ORDER BY Мастера. ФИО;
Результат выполнения запроса представлен на рисунке 26.
Рисунок 26 — Результат выполнения запроса «Прибыль мастеров»
Создадим SQL-запрос, который будет выводить на экран наименование техники с её кодом, которая ремонтировалась в этом месяце.
SELECT DISTINCT Ремонт. Код заказа], Техника. Наименование, Ремонт. Дата
FROM Техника, Ремонт
WHERE (((Техника. Код техники])=[Ремонт]. Код техники]) AND ((Month ([Дата]))=Month (Date ())))
ORDER BY Ремонт. Дата];
Результат выполнения запроса представлен на рисунке 27.
Рисунок 27 - Результат выполнения запроса «Ремонт за текущий месяц»
Создадим SQL-запрос, который будет выводить на экран наименование техники со способом устранения неисправности, неисправностью, стоимостью ремонта и клиентом. При выполнении запроса надо указать наименование техники, о которой мы хотим получить информацию (рисунок 28).
SELECT Техника. Наименование, Кленты. ФИО, Неисправность. Описание поломки], [Способ устранения неисправности]. Способ устранения], Прайс. Цена
FROM Кленты INNER JOIN (Неисправность INNER JOIN ([Способ устранения неисправности] INNER JOIN (Техника INNER JOIN (Прайс INNER JOIN Ремонт ON Прайс. Код услуги] = Ремонт. Код услуги]) ON Техника. Код техники] = Ремонт. Код техники]) ON [Способ устранения неисправности]. Код способа устранения] = Прайс. Код способа устранения]) ON Неисправность. Код неисправности] = Прайс. Код неисправности]) ON Кленты. Код клиента] = Ремонт. Код клиента]
WHERE (((Техника.Наименование)=[Введите наименование]));
Результат выполнения запроса представлен на рисунке 29.
Рисунок 28 — Ввод значения параметра «Наименование»
Рисунок 29 — Результат выполнения запроса «Ремонтные работы»
Создадим SQL-запрос, который будет выводить на экран всю информацию о технике, которая поступила в ремонт на гарантии.
SELECT Техника. Код техники], Наименование, [Серийный номер], Гарантия, Фото
FROM Техника
WHERE Техника. Гарантия=True AND Техника. Код техники]=ANY
(SELECT Ремонт. Код техники]
FROM Ремонт)
ORDER BY Техника. Код техники];
Результат выполнения запроса представлен на рисунке 30.
Рисунок 30 — Результат выполнения запроса «Техника на гарантии»
Создадим SQL-запрос, который будет добавлять нового клиента в таблицу «Клиенты» .
INSERT INTO Кленты ([Код клиента], ФИО, Телефон, Адрес)
VALUES ([Код клиента], [ФИО], [Телефон], [Адрес]);
Результат выполнения запроса представлен на рисунках 31−35.
Рисунок 31 — Ввод значения параметра «Код клиента»
Рисунок 32 — Ввод значения параметра «ФИО»
Рисунок 33 — Ввод значения параметра «Телефон»
Рисунок 34 — Ввод значения параметра «Адрес»
Рисунок 35 — Таблица «Клиенты» после выполнения запроса
Создадим SQL-запрос, который будет добавлять новый заказ, введённый пользователем, в таблицу «Ремонт» .
INSERT INTO Ремонт ([Код заказа], [Код клинта], [Код техники], [Код мастера], [Код услуги], Дата, Оплачено)
VALUES ([Код заказа], [Код клинта], [Код техники], [Код мастера], [Код услуги], [Дата], [Оплачено]);
Результат выполнения запроса представлен на рисунках 36−43.
Рисунок 36 — Ввод значения параметра «Код заказа»
Рисунок 37 — Ввод значения параметра «Код клиента»
Рисунок 38 — Ввод значения параметра «Код техники»
Рисунок 39 — Ввод значения параметра «Код мастера»
Рисунок 40 — Ввод значения параметра «Код услуги»
Рисунок 41 — Ввод значения параметра «Дата»
Рисунок 42 — Ввод значения параметра «Оплачено»
Рисунок 43 — Таблица «Ремонт» после выполнения запроса Создадим SQL-запрос, который будет добавлять новую услугу, введённую пользователем, в таблицу «Прайс» .
INSERT INTO Прайс ([Код услуги], [Код типа], [Код неисправности], [Код способа устранения], Цена)
SELECT [Код услуги] AS Выражение1, [Код типа] AS Выражение2, [Код неисправности] AS Выражение3, [Код способа устранения] AS Выражение4, [Цена] AS Выражение5;
Результат выполнения запроса представлен на рисунках 44−49.
Рисунок 44 — Ввод значения параметра «Код услуги»
Рисунок 45 — Ввод значения параметра «Код типа»
Рисунок 46 — Ввод значения параметра «Код неисправности»
Рисунок 47 — Ввод значения параметра «Код способа устранения»
Рисунок 48 — Ввод значения параметра «Цена»
Рисунок 49 — Таблица «Услуги» после выполнения запроса Создадим SQL-запрос, который будет менять старый номер телефона на новый у клиента, введенный пользователем.
UPDATE Клиент SET Телефон = [Введите новый телефон]
WHERE ФИО LIKE [Введите ФИО клиента];
Результат выполнения запроса представлен на рисунках 50−52.
Рисунок 50 — Ввод значения параметра «Новый телефон»
Рисунок 51 — Ввод значения параметра «ФИО»
Рисунок 52 — Таблица «Клиенты» после выполнения запроса Создадим SQL-запрос, который будет менять старое название техники на название, ведённое пользователем.
UPDATE [Тип техники] SET [Тип техники]. Тип техники] = [Введите новое название техники]
WHERE [Тип техники]. Тип техники] LIKE [Введите старое название техники];
Результат выполнения запроса представлен на рисунках 53−55.
Рисунок 53 — Ввод значения параметра «Новое название техники»
Рисунок 54 — Ввод значения параметра «Старое название техники»
Рисунок 55 — Таблица «Тип техники» после выполнения запроса Создадим SQL-запрос, который будет менять старый способ ремонта на новый, ведённый пользователем.
UPDATE [Способ устранения неисправности] SET [Способ устранения] = [Введите новый способ устранения]
WHERE [Способ устранения] LIKE [Введите старый способ устранения];
Результат выполнения запроса представлен на рисунках 56−58.
Рисунок 56 — Ввод значения параметра «Новый способ устранения»
Рисунок 57 — Ввод значения параметра «Старый способ устранения»
Рисунок 58 — Таблица «Услуги» после выполнения запроса Создадим SQL-запрос, который будет удалять из таблицы «Ремонт» все данные о ремонте техники, указанной пользователем.
DELETE *
FROM Ремонт
WHERE Ремонт. Код услуги] IN
(SELECT Прайс. Код услуги] FROM Прайс WHERE Прайс. Код типа] =
(SELECT [Тип техники]. Код типа] FROM [Тип техники] WHERE [Тип техники]. Тип техники] LIKE [Укажите тип]));
Результат выполнения запроса представлен на рисунках 59, 60.
Рисунок 59 — Ввод значения параметра база таблица запрос программный Рисунок 60 — Таблица «Ремонт» после выполнения запроса Создадим SQL-запрос, который будет удалять из таблицы «Ремонт» записи о заказах, выполненных в прошлом месяце.
DELETE *
FROM Ремонт
WHERE MONTH (Ремонт.Дата)
Результат выполнения запроса представлен на рисунке 61.
Рисунок 61 — Таблица «Ремонт» после выполнения запроса Создадим SQL-запрос, который будет удалять из таблицы «Тип техники всю информацию о типе технике, выбранной владельцем.
DELETE *
FROM [Тип техники]
WHERE [Тип техники]. Тип техники] LIKE [Какой тип техники удалить?];
Результат выполнения запроса представлен на рисунках 62, 63.
Рисунок 62 — Ввод значения параметра Рисунок 63 — Таблица «Тип техники» после выполнения запроса Создадим SQL-запрос, который будет выводить стоимость заказов по клиентам и услугам.
TRANSFORM Sum (Прайс.Цена) AS [Sum-Цена]
SELECT [Способ устранения]
FROM [Способ устранения неисправности], Прайс, Ремонт, Кленты
WHERE [Способ устранения неисправности]. Код способа устранения]=Прайс. Код способа устранения] AND Прайс. Код услуги]=Ремонт. Код услуги] AND Ремонт. Код клиента]=Кленты. Код клиента]
GROUP BY [Способ устранения]
ORDER BY [Способ устранения]
PIVOT Кленты. ФИО;
Результат выполнения запроса представлен на рисунке 64.
Рисунок 64 — Результат выполнения запроса Создадим SQL-запрос, который будет выводить стоимость оплаченных заказов по услугам и месяцам.
TRANSFORM SUM (Прайс.Цена) AS [Sum-Цена]
SELECT [Способ устранения]
FROM [Способ устранения неисправности], Прайс, Ремонт
WHERE [Способ устранения неисправности]. Код способа устранения]=Прайс. Код способа устранения] AND Прайс. Код услуги]=Ремонт. Код услуги]
GROUP BY [Способ устранения]
ORDER BY [Способ устранения]
PIVOT Month ([Дата]);
Результат выполнения запроса представлен на рисунке 65.
Рисунок 65 — Результат выполнения запроса
2.7 Создание отчетов Создавать отчёты будем при помощи мастера отчётов (рисунок 66). Далее будем изменять оформление отчёта в режиме конструктора. Отчёты будем создавать на основе запросов.
Рисунок 66 — Создание отчета Отчёт «Должники» отображает отсортированный список всех клиентов по услуге и их стоимость. Конструктор отчёта представлен на рисунке 67.
Рисунок 67 — Конструктор отчета «Должники»
Отчёт «Каталог цен на ремонт» отображает информацию о стоимости ремонта определённого типа техники, способе устранении неисправности и самой неисправности. Конструктор отчёта представлен на рисунке 68.
Рисунок 68 — Конструктор отчета «Каталог цен на ремонт»
Отчёт «Прибыль мастеров» сумме, которую получает каждый мастер за выполнение всех своих услуг. Также в отчёт была вставлена формула по подсчёту суммы зарплаты. Конструктор отчёта представлен на рисунке 69.
Рисунок 69 — Конструктор отчета «Прибыль мастеров»
Отчёт «Ремонтные работы» отображает информацию ремонте конкретной техники с причиной неисправности, способом её устранения и ценой. Также в отчёт была вставлена формула по подсчёту стоимости всех услуг. Конструктор отчёта представлен на рисунке 70.
Рисунок 70 — Конструктор отчета «Ремонтные работы»
Отчёт «Техника на гарантии» отображает информацию о технике на гарантии с её фотографией. Конструктор отчёта представлен на рисунке 71.
Рисунок 71 — Конструктор отчета «Техника на гарантии»
3. Тестирование программного комплекса Для начала необходимо заполнить базу данных записями. Заполненные таблицы показаны на рисунках 72−81.
Рисунок 72 — Таблица «Ремонт»
Рисунок 73 — Таблица «Прайс»
Рисунок 74 — Таблица «Причина поломки»
Рисунок 75 — Таблица «Неисправность»
Рисунок 76 — Таблица «Способ устранения неисправности»
Рисунок 77 — Таблица «Тип техники»
Рисунок 78 — Таблица «Вид техники»
Рисунок 79 — Таблица «Техника»
Рисунок 80 — Таблица «Клиенты»
Рисунок 81 — Таблица «Мастера»
При открытии базы данных загружается главная кнопочная форма (рисунок 82), в которой присутствуют кнопки: «Таблицы», «Запросы», «Отчёты», «Формы», «Выход». Каждая кнопочная форма содержит кнопку «Назад», которая возвращает на главную кнопочную форму.
Рисунок 82 — Главная кнопочная форма
При нажатии на кнопку «Таблицы» произойдёт переход на следующую кнопочную форму, содержащую кнопки для открытия всех таблиц присутствующих в данной базе данных (рисунок 83).
Рисунок 83 — Кнопочная форма «Таблицы»
При нажатии на кнопку «Запросы» произойдёт переход на следующую кнопочную форму, содержащую кнопки с иконками соответствующих типов запросов: запросы на выборку, запросы на добавление, запросы на обновление, запросы на удаление, перекрёстные запросы (рисунок 84).
Рисунок 84 — Кнопочная форма «Запросы»
Нажатие на соответствующую кнопку, запускает форму, содержащую запросы, тип которых соответствует названию нажатой кнопки. Каждая из следующих кнопочных форм содержит кнопки «Назад» (рисунки 85−89).
Рисунок 85 — Кнопочная форма «Запросы на выборку»
Рисунок 86 — Кнопочная форма «Запросы на добавление»
Рисунок 87 — Кнопочная форма «Запросы на обновление»
Рисунок 88 — Кнопочная форма «Запросы на удаление»
Рисунок 89 — Кнопочная форма «Перекрёстные запросы»
При нажатии на кнопку «Отчёты» произойдёт переход на следующую кнопочную форму, содержащую кнопки запуска отчётов (рисунок 90).
Рисунок 90 — Кнопочная форма «Отчёты»
При нажатии на кнопку «Формы» произойдёт переход на следующую кнопочную форму, содержащую кнопки запуска форм, предназначенных для добавления и изменения данных (рисунок 91).
Рисунок 91 — Кнопочная форма «Формы»
Заключение
В данном курсовом проекте при создании базы данных была использована система управления базами данных Microsoft Access 2010. Рассматриваемая база данных имеет достаточно простой и удобный интерфейс. Для удобства работы была создана главная кнопочная форма с понятным интерфейсом. С её помощью можно вызывать таблицы, отчеты, запросы и формы, которые были реализованы согласно заданию курсового проекта.
В данной базе данных выполняются следующие условия и ограничения:
результатом выполнения проекта является приложение БД, обеспечивающее пользователю возможности по пополнению, редактированию, просмотру и анализу данных предметной области, выбранной для автоматизации;
исходные данные: макеты выходных отчетов и входных оперативно-учетных документов;
количество выходных отчетов — не менее трех. Из них один должен быть сводным, один аналитическим. В отчетах обязательно наличие финансовых данных. У каждого отчета должны быть параметры (например, даты, элементы справочников, флаги отбора данных);
количество входных оперативно-учетных документов — не менее двух. Хотя бы один должен иметь изменяемые данные в заголовочной части, а также табличную часть. В табличной части должны подсчитываться итоги по финансовым величинам.
Список использованных источников
Гринченко Н. Проектирование баз данных. СУБД Microsoft Access. Учебное пособие / Н. Гринченко, Е. Гусев, Н. Макаров — М.: Горячая линия — Телеком, 2004. — 240 с.
Электронная справка и поддержка Microsoft Office [Электронный ресурс]. — 2013. — Режим доступа: http://office.microsoft.com/ru-ru/help. — Дата доступа: 10.05.2015.
Бородина А. И. Технологии баз данных и знаний / А. И. Бородина. — Мн.: БГЭУ, 2008. — 505 с.
Литвин П. Access 2010 / П. Литвин, К. Гетц — С.: Издательский дом «БХВ-Петербург», 2002. — 1008 с.
Бородина А. И. Технологии баз данных и знаний / А. И. Бородина. — Мн.: БГЭУ, 2008. — 505 с.
Приложение A
Отчёты
Рисунок А.1 — Отчет «Должники»
Рисунок А.2 — Отчет «Прибыль мастеров»
Рисунок А.3 — Отчет «Техника на гарантии»
Рисунок А.4 — Отчет «Каталог цен на ремонт»
Рисунок А.5 — Отчет «Ремонтные работы»