База данных "Автосервис" в среде Borland Delphi 6.0.
Контрольная работа - Компьютеры, программирование
Другие контрольные работы по предмету Компьютеры, программирование
Содержание отчета
1.Описание предметной области
2.Описание структуры базы данных
3.Инструкция программисту
4.Инструкция пользователю
5.Исходные тексты
1. Описание предметной области
Данная база данных предназначена для организаций, занимающихся любыми видами услуг по техническому обслуживанию автомобилей (Автосервис). БД позволяет вести учет всех автомобилей, когда-либо находящихся в автосервисе, хранит полную информацию о каждом автомобиле (марка, регистрационный знак, цвет, год выпуска, серийные номера завода-изготовителя и т.п.), позволяет вести учет владельцев автомобилей, которые когда-либо обращались в автосервис. Программа позволяет также распечатать отчет по всем параметрам, интересующим как владельцев автосервиса (информация о владельцах автомобилей, информация об автомобилях, полный отчет по всем заказам либо по заказам за определенный интервал времени), так и его клиентов (расценки на услуги, новые запчасти, сезонные скидки); это позволяет вести отчетность на бумаге.
В БД хранится информация о каждом владельце, о каждом автомобиле, которые хотя бы единожды пользовались услугами автосервиса. Существует возможность хранения не только основной и самой необходимой информации, но и примечаний, уточнений, фотографий владельцев и автомобилей, описания и тех. характеристик устанавливаемых запчастей и много другой полезной информации.
Существует один, на первый взгляд, недостаток, который при постоянном использовании БД характеризует себя с положительной стороны: в данной БД информация об автомобилях и владельцах в исходном состоянии является независимой. Связь владельца с автомобилем отслеживается лишь в процессе оформления заказа, после чего успешно хранится в базе. Это допущение создано с целью предотвращения нестандартных ситуаций, возникающих при существовании у владельца нескольких автомобилей и т.п.
2. Описание структуры БД
Схема данных
Описание таблиц
- Автомобили (Cars)
* Код автомобиляCodeAuto+Марка автоTMAutoA(30)Регистр. знакStateSignA(11)Тех. паспортTpasssportA(10)Цвет автоColourAutoA(20)Год выпускаYearSДвигатель №MotorNumA(10)Кузов №BodyNumA(10)Шасси №UnderCgeNumA(10)ПримечаниеInfoM(200)
- Владельцы (Owners)
* Код владельцаCodeOwner+ФамилияOLastNameA(30)ИмяOFirstNameA(20)ОтчествоOSecondNameA(25)Паспорт №OPassportNumA(10)Права №ODrvLicenceA(15)ТелефонPhoneA(12)ФотоFotoBПримечаниеInfoM(200)
- Виды работ (KindOfWork)
* Код работыCodeWork+Вид работыKindWorkA(30)Стоимость работыCostWork$Срок выполненияPeriodExNГарантияGuaranteeN
- Новые запчасти (New Part)
* Код автозапчастиCodePart+НаименованиеPartNameA(30)СтоимостьCostPart$ГарантияGuaranteeN
- Заказы (AOrders)
* Номер заказаOrderNum+Код автомобиляCodeAutoIКод владельцаCodeOwnerIДата поступленияActDateDПримечаниеInfoM(200)
- Услуги заказа (OrderWork)
* Номер заказаOrderNumI* Код работыCodeWorkI
- Установка запчастей (PutInPart)
* Номер заказаOrderNumI* Код автозапчастиCodePartI
3. Инструкция программисту
ПО разработано в среде Borland Delphi 6.0.
Все таблицы, запросы находятся в DateModule. Для получения доступа к любой таблице или запросу в этом модуле необходимо просто обратится к нему, а потом и к выбранному элементу. Каждой таблице, приведенной выше, соответствует форма для ввода данных в эту таблицу: Cars.db CarsForm, Owners.db OwnersForm, AOrders.db FormAOrders и т.д. Ввод информации о владельцах, об автомобилях, оформление заказов осуществляется с соответствующих форм, содержащих стандартные элементы управления, связанные с данными в таблице.
Используются следующие основные запросы:
1) Query1 запрос, на основе которого производится поиск всех заказов, оформленных в период времени с даты А по дату В:
SELECT OrderNum, CodeAuto, CodeOwner, ActDate, Info
FROM "AOrders.DB" Aorders
Where (ActDate>:A) and (ActDate<:B)
2) Query2 запрос, на основе которого строится диаграмма процентного соотношения востребованности услуг, производимых автосервисом:
SELECT CodeWork, Count(*) AS CountWork
FROM "OrderWork.DB" Orderwork
GROUP BY CodeWork
3) Query3 запрос, с помощью которого определяется промежуточная стоимость заказа (стоимость работ, произведенных для данного заказа):
SELECT SUM( Kindofwork.CostWork ), Orderwork.OrderNum
FROM "OrderWork.DB" Orderwork
INNER JOIN "KindOfWork.DB" Kindofwork
ON (Kindofwork.CodeWork = Orderwork.CodeWork)
GROUP BY Orderwork.OrderNum
Кроме указанных выше, также присутствуют и другие аналогичные запросы, с помощью которых производятся различные вычисления, осуществляется параметризованный поиск и т.п.
Все операции с таблицами и запросами необходимо искать в DateModule в соответствующих обработчиках событий. Для правильного функционирования программы необходимо перед первым запуском создать псевдоним БД с именем Autoservice, настроить его на каталог с файлами таблиц, выбрать драйвер PARADOX (сделать это можно, например, с помощью программы BDE Administrator). Для поддержки целостности данных при создании связей между таблицами было включено каскадное удаление и обновление.
4. Инструкция пользователю
При загрузке базы данных Автосервис открывается главная форма, с помощью которой осуществляется полный контроль над базой данных и перемещение по ней.
Диаграмма-отчет о востребованности услуг, предоставляемых автосервисом, для проведения соответствующих расчетов и получения информации для размышления как для владельцев автосервиса, так и для его клиентов.
Аналогичная диаграмма, но по устанавливаемым на автомобили запчастям.