Автоматизация работы фирмы по продаже автомобилей

40



	Волжский университет имени В.Н.Татищева

	Факультет “Информатика и телекоммуникации”

	Кафедра “Информатика и системы управления”

	

	

	

	

	

	

	

	

	

	КУРСОВАЯ РАБОТА

	по дисциплине: “Базы данных и знаний”

	Тема: Автоматизация работы фирмы по продаже автомобилей

	

	

	

	Выполнил: студент гр. ИТ-203 

	Жилин М.А. 

	Преподаватель: Трубачева С.И.

	

	

	

	

	

	

	Тольятти

	2002

	
Содержание

	

			1.Введение

			2. Теоретическая часть

			(анализ и проектирование информационных систем) 

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

		2.2 Структурный анализ с помощью диаграмм SADT

		2.3 Определение информационных объектов и связей между ними

		2.4 Структурный анализ с помощью диаграмм

		“сущность - связь”

		2.5 Определение пакета форм ввода/вывода

			3. Реализация информационной системы средствами объектно-ориентированного языка Delphi

		3.1 Конфигурация системы с помощью утилиты

		BDE ADMINISTRATOR

			3.2 Создание таблиц базы данных с помощью утилиты

			DATABASE DESKTOP

			3.3 Организация пользовательского интерфейса

			3.3.1 Описание программы

			3.3.2 Проектирование форм для работы с базой данных

			Заключение

		Список используемой литературы

		Приложение №1

		Приложение №2

		Приложение №3

		Приложение №4

	

	
1. Введение

	

	В настоящее время число автомобилей на улицах нашего города увеличивается, следовательно, и спрос на них растет соответственно. Во все времена автомобиль был и остается популярным средством передвижения. Существует множество фирм по продаже автомобилей. При продаже автомобилей нужно учитывать факт “немедленного” получения автомобиля, т.е. чтобы не заставлять человека долго ждать. Иначе популярность у фирмы будет резко идти на убыль. А ведь главное для фирмы это клиенты, не будет клиентов, не будет и фирмы. Для того чтобы избежать таких ситуаций, необходимо внедрять быстрое и качественное программное обеспечение. В основном во многих фирмах программное обеспечение оставляет желать лучшего. А в некоторых его попросту нет, идет “чистая” продажа, без уплаты налогов и так далее. Для того чтобы такого не было, и работы фирмы была прибыльной необходимо внедрять только качественные программные продукты, и набирать соответствующий персонал. Между прочим, большинство фирм торгующих автомобилями являются официальными дилерами АО “АВТОВАЗ”, следовательно, предлагаемый программный продукт будет значительно проще распространять через данные фирмы. Бесспорно, в России отечественные автомобили занимают более половины рынка всех автомобилей, значит, спрос на них существует и не малый. А если существует спрос, то будет и предложение. 

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

	

	
2. Теоретическая часть

	(анализ и проектирование информационных систем)

	

	Основной задачей автомобильной фирмы РусАвто является закупка и продажа как можно большего числа автомобилей. А чтобы их продать необходимо огромное количество покупателей. 

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

	Получить информацию о текущем состоянии рынка, т.е. величину спроса и предложения, положение цен у конкурирующих фирм;

	Найти необходимые инвестиции;

	Приобрести товар (т.е. автомобили);

	Найти помещение для продажи, временной стоянки автомобилей, транспорт позволяющий перевозить автомобили;

	Провести рекламную деятельность;

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

	

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

	

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

	А также закрепление пройденного материала по курсу «Базы данных и знаний» и приобретение практических навыков разработки информационных систем, использующих базы данных. Задачи: анализ используемых данных – структура системы, определение подсистем и их взаимодействие, построение и тестирование подсистем (работа в среде Delphi), вывод по проделанной работе.

	

	2.2 Структурный анализ с помощью диаграмм SADT

		

		Краткая характеристика диаграмм SADT: 

		SADT (Structured Analysis and Design Technology) технология структурного анализа и проектирования. С помощью инструментов SADT (DFD – Data Flow Diagrams диаграммы потоков данных и ERD – Entity Relationship Diagrams диаграммы сущность-связь) создается логическая модель данных описывающая объекты предметной области. После установления связи между сущностями определения атрибутов, их нормализации, создается физическая модель данных. После этого можно генерировать саму базу данных. Основная идея заключается в следующем – источники информации, (внешние сущности) порождают информационные потоки (потоки данных), переносящие информацию подсистемам и порождают новые потоки, которые переносят информацию к другим процессам.

	В данном курсовой работе рассматривается фирма по продаже автомобилей ”РусАвто”. Принцип работы разбит на следующие уровни:

	1. Диаграмма нулевого уровня (А0); 

	2. Диаграмма первого уровня (А1);

	3. Диаграмма второго уровня (А2);

	Диаграмма нулевого уровня (А-0).

	На данную диаграмму воздействуют следующие потоки данных:

	входные воздействия;

	выходные воздействия;

	управление;

	исполнители;

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

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

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

	Исполнители – это сотрудники данной фирмы.

	Объектом диаграмм является автомобильная фирма “РусАвто”.

	Диаграмма первого уровня (А-1).

	В структуру этого уровня входят следующие блоки:

		Исследование рынка

		Закупка товара

		Оказание юридической помощи

		Продажа товара и учет

		Денежные расчеты

		Финансовый анализ

	На первый блок – исследование рынка, воздействуют потоки:

	Устав фирмы и Госты;

	Информация о текущем состоянии на рынке (в качестве входных воздействий);

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	Данные о рынке сбыта идущие на выполнение в следующий блок (в качестве выходных воздействий);

	На второй блок – закупка товара, воздействуют потоки:

	Стандарты качества;

	Очередные данные о рынке сбыта (заказ, поступивший из предыдущего блока, идущий на выполнение);

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	Инвестиции (в качестве входных воздействий);

	Приобретенный товар;

	Закупленный товар идущий на выполнение в блок продажи и учета (в качестве выходных воздействий);

	На третий блок – оказание юридической помощи, воздействуют потоки:

	Законодательство;

	Очередной договор с клиентом (договор, поступивший из блока продажа товара и учет);

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	Информация о заказе;

	Договор фирма-клиент и различные справки, идущие на выполнение в блок продажи и учета (в качестве выходных воздействий);

	На четвертый блок – продажа товара и учет, воздействуют потоки:

	Стандарты качества;

	Очередной договор фирма-клиент (договор, поступивший из блока оказание юридических услуг);

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	Информация о заказе (в качестве входных воздействий);

	Различные справки;

	Отчетные данные о проделанной работе (в качестве входного результата в следующий блок);

	Запрос на закупку необходимого товара (в качестве входного результата в блок закупки товара);

	Гарантийный талон;

	Торговый чек;

	Проданный товар;

	На пятый блок – денежные расчеты, воздействуют потоки:

	Законодательство;

	Очередной отчет о проданном товаре (отчет, поступивший из блока продажа товара и учет);

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	Финансовый отчет (в качестве входных воздействий из следующего блока);

	Данные для финансового анализа (в качестве входного результата в следующий блок);

	Прибыль (в качестве входного результата в блок закупки товара);

	Справки, квитанции;

	Отчеты в налоговую инспекцию;

	Выплата зароботной платы;

	На шестой блок – финансовый анализ, воздействуют потоки:

	Законодательство (налоговый кодекс);

	Очередные данные для финансового анализа (поступившие из блока денежные расчеты);

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	Финансовый отчет (в качестве входных воздействий на предыдущий блок);

	Отчеты по финансовой деятельности (в качестве выходного результата);

	Диаграмма второго уровня (А-2).

	В структуру этого уровня входят следующие блоки:

		Предпродажная подготовка автомобилей;

		Рекламная деятельность;

		Продажа;

		Выдача торгового чека;

		Учет проданного товара;

	На первый блок – предпродажная подготовка автомобилей, воздействуют потоки:

	Стандарты качества;

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	Закупленный товар (в качестве входного результата);

	Информация о заказе;

	На второй блок – рекламная деятельность, воздействуют потоки:

	Рекламные буклеты, брошюры (в качестве выходного результата);

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	На третий блок – продажа, воздействуют потоки:

	Договор фирма-клиент (в качестве входного результата);

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	Различные справки (от клиента);

	Проданный товар (в качестве выходного результата);

	Отчет о проданном товаре (в качестве выходного результата);

	На четвертый блок – выдача торгового чека, воздействуют потоки:

	Гарантийный талон (в качестве выходного результата);

	Торговый чек ;

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	На пятый блок – учет проданного товара, воздействуют потоки:

	Запрос на закупку необходимого товара (в качестве выходного результата);

	Сотрудники (действуют в качестве механизмов для получения выходного результата);

	Отчет по финансовым операциям;

	Прибыль;

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

	Примечание: Диаграммы SADT 0,1,2- уровней см. в приложении 1. 

	

	2.3 Определение информационных объектов и связей между ними

			

	В семидесятых годах было предложено несколько моделей данных, названных семантическими моделями. К ним можно отнести семантическую модель данных, предложенную Хаммером (Hammer) и Мак-Леоном (McLeon) в 1981 году, функциональную модель данных Шипмана (Shipman), а также созданную

	В 1981году, модель «сущность-связь», предложенную Ченом (Chen) в 1976 году, и ряд других моделей. В настоящий момент именно модель Чена «сущность-связь», или «Entity Relationship», стала фактическим стандартом в моделировании баз данных. Общепринятым стало сокращенное название ER-модель.

	Как любая модель, модель «сущность-связь» имеет несколько базовых понятий, которые образуют исходные кирпичики, из которых строятся уже более сложные объекты по заранее определенным правилам.

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

	Один-к-одному (1:1)-означает, что экземпляр одной сущности связан с только с одним экземпляром другой сущности.

	Один-ко-многим (1:M)-означает что один экземпляр сущности, расположенный слева по связи, может быть связан с несколькими экземплярами сущности, расположенными справа по связи. 

	Многие-ко-многим (M:M)-означает, что один экземпляр первой сущности может быть связан с несколькими экземплярами второй сущности, и наоборот, один экземпляр второй сущности может быть связан с несколькими экземплярами первой сущности.

	Для более полного понимания зависимости информационной системы, рассмотрим диаграммы «сущность - связь». Имеется четыре сущности: «Торговый чек», «Счет-фактура», «Покупатель» и «Автомобили». Таблица «Покупатель» связана с таблицей «Торговый-чек» связью Один-ко-многим. Аналогичной связью связаны «Торговый-чек» и «Счет-фактура» с таблицей «Автомобили». Рассмотрим связи присутствующие в данной курсовой работе. 

	

	Таблица «Торговый чек» связана с таблицей «Покупатель» следующей связью:

	

	

	Связь «Отпуск товара по коду покупателя» подразумевает, что при вводе нового покупателя в таблицу «Торговый-чек» автоматически добавляется код покупателя, т.е. по полю “код покупателя” можно будет сделать необходимый запрос.

	

	Таблица «Счет-фактура» и «Торговый-чек» связана с таблицей «Автомобили» следующими связями:

	

	Связь «Приобретение товара по номеру счета-фактуры» подразумевает, что при вводе нового счета-фактуры в таблицу «Автомобили» автоматически добавляется поле “номер счета-фактуры”. 

	Связь «Отпуск товара по номеру счета-фактуры» подразумевает, что при вводе нового поля “номер торгового чека” в таблицу «Автомобили» автоматически добавляется номер этого торгового чека.

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

	Примечание: * - ключевые поля во всех таблицах.

	

	2.4 Структурный анализ с помощью диаграмм “сущность - связь”

	

	В данной курсовой работе присутствуют следующие таблицы:

	
Таблица 1: Автомобили (Avtom.db);

	Имя поля

	Тип данных

	Размер поля

	N_Scheta_Fak

	Числовой

	

	Kod_Modeli

	Счетчик

	

	Name_Modeli

	Текстовый

	15

	Color

	Текстовый

	10

	Predlag_Zena

	Денежный

	

	Kol_vo_Door

	Числовой

	

	Engine_Power

	Числовой

	

	Type_Salon

	Текстовый

	10

	

	Таблица 2: Покупатели (Pok.db);

	Имя поля

	Тип данных

	Размер поля

	Kod_Pokup

	Текстовый

	10

	Seria_Pass

	Текстовый

	10

	N_Pass

	Текстовый

	10

	L_Name

	Текстовый

	20

	F_Name

	Текстовый

	20

	S_Name

	Текстовый

	20

	Adres

	Текстовый

	20

	Phone

	Текстовый

	20

	

	Таблица 3: Счет-фактура (SchFa.db);

	Имя поля

	Тип данных

	Размер поля

	N_Scheta_Fak

	Числовой

	 

	Kol_vo_zakup_modelei

	Текстовый

	10

	Nazv_Zakup_Modeli

	Текстовый

	15

	Zavodsk_Zena

	Денежный

	 

	Date_Zakup

	Дата

	 

	

	Таблица 4: Торговый чек (Torg_Chek);

	Имя поля

	Тип данных

	Размер поля

	N_Torg_Cheka

	Счетчик

	 

	Kod_Pokup

	Текстовый

	10

	Kod_Modeli

	Текстовый

	10

	Kol_Prod_Avto

	Числовой

	 

	Zena_Prod

	Денежный

	 

	Date_Prod

	Дата

	

	
Определение ключевых полей в таблицах: 

	

	Название таблицы

	Название ключевого поля

			Автомобили

			Номер Счета-фактуры

			Покупатели

			Код покупателя

			Счет-фактура

			Номер Счета-фактуры

			Торговый-чек

			Номер Торгового чека

			

	Рис 2. Диаграмма “сущность-связь” (IDEF 1x).

	

	Пояснения: 

	Первичные ключи следующие:

	Таблица: Автомобили – Kod_Modeli. 

	Таблица: Покупатель – Kod_Pokup. 

	Таблица: Счет-фактура – N_Scheta_Fak. 

	Таблица: Торговый чек – N_Torg_Cheka. 

	Внешние ключи следующие:

	Таблица: Автомобили – N_Scheta_Fak. 

	Таблица: Автомобили – N_Torg_Cheka. 

	Таблица: Автомобили – Kod_Pokup. 

	Таблица: Торговый чек – Kod_Pokup. 

	Таблица: Автомобили – N_Scheta_Fak. 

	

	Рис 3. Диаграмма “сущность-связь” на русском языке.

	

	2.5 Определение пакета форм ввода/вывода

	

	Входными данными являются данные с формы Счет-фактура, т.к. закупка товара производится по “Счету-фактуре”. 

	Ввод данных осуществляется с помощью формы “новый счет-фактура”.Выходными данными являются данные с формы “Торговый чек”, т.к. отпуск товара осуществляется по этой форме.

	Ввод данных на отпуск товара осуществляется с помощью формы “новый торговый чек”.

	Замечание: На форме новый “новый торговый чек” присутствует элемент DBNavigator, он необходим для того чтобы, выбрать необходимую модель автомобиля. Причем цена на автомобиль выставляется автоматически в зависимости от выбранного кода модели. 

	

	
3. Реализация информационной системы средствами объектно-ориентированного языка Delphi

	

	Delphi – это среда разработки приложений с использованием графического интерфейса Windows. Программирование является:

	а) Объектно-ориентированным (программирование осуществляется над объектами и с помощью объектов)

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

	Средства Delphi для разработки приложений, использующих базы данных:

	BDE (Borland Database Engine). 

	Взаимодействие приложения, созданного в среде разработке Delphi, и базы данных обеспечивает процессор баз данных Borland Database Engine. Он представляет собой набор динамических библиотек, функции которых позволяют не только обращаться к данным, но и эффективно управлять ими на стороне приложения. Компоненты доступа к данным Delphi для работы с базами данных используют возможности BDE, обращаясь к его функциям и процедурам. Механизм доступа к BDE инкапсулирован в базовом классе TBDEDataSet. BDE взаимодействует с базами данных посредствам драйверов. Для наиболее распространенных СУБД разработан набор стандартных драйверов. Однако при всех преимуществах BDE не претендует на всеобъемлющую универсальность и имеет некоторые недостатки. К ним, например, относится снижение скорости работы приложения, недостатки реализации некоторых драйверов.

	SQL Links.

	Приложения Delphi обращаются к данным при помощи BDE, при этом способы доступа к данным различаются в зависимости от типа базы данных. К локальным БД Paradox, dBASE, MS Access, FoxPro BDE обращается посредствам стандартных драйверов. Данные от серверов SQL поступают благодаря использованию специальной системы драйверов SQL Links. Важнейшую роль при обработке и отправлении запроса играет составная часть процессора БД-система обработки запросов. Локальные СУБД не используют язык SQL в качестве основного при работе с данными. Тем не менее, BDE при помощи соответствующего стандартного драйвера транслирует поступающие от приложений запросы в понятный для локальной СУБД вид и принимает ответы. Так как запрос к любой локальной БД выполняется одним механизмом, то существует и единый синтаксис SQL для работы с такими данными. Этот вариант носит название локальный SQL и является подмножеством стандарта SQL 92. Все серверы БД, работающие через SQL Links, являются серьезными промышленными системами и работают на собственных расширениях языка.

	BDE Administrator.

	Для успешного доступа к данным приложение и BDE должны обладать информацией о местоположении файлов требуемой базы данных. Самый простой способ заключается в явном задании полного пути к каталогу, в котором хранятся файлы БД. Но в случае изменения пути, что случается не так уж редко (например, при переносе готового приложения на компьютер заказчика), разработчик должен перекомпилировать проект с учетом будущего местонахождения БД или предусмотреть специальные элементы управления, в которых можно задать путь к БД. Для решения такого рода проблем разработчик может использовать псевдоним базы данных, который представляет собой именованную структуру, содержащую путь к файлам БД и некоторые дополнительные параметры. Помимо маршрута к файлам базы данных, псевдоним BDE обязательно содержит информацию о драйвере БД, который используется для доступа к данным. Наличие других параметров зависит от типа драйвера, а значит от типа СУБД. Для управления псевдонима баз данных, настройки стандартных и дополнительных драйверов в составе BDE имеется специальная утилита - ВDЕ Adminstrator (см. выше, исполняемый файл BDEADMIN.EXE). Стандартная конфигурация BDE сохраняется в файле IDAPI.CFG. 

	Database Desktop.

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

	

	3.1 Конфигурация системы с помощью утилиты

	

	BDE ADMINISTRATOR

	Данная курсовая работа не нуждается в создании псевдонима. Она лишь требует следующего: 

	а) Наличия на компьютере BDE Administrator-a.

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

	

	3.2 Создание таблиц базы данных с помощью утилиты

	

	DATABASE DESKTOP

	

	Таблица 1: Автомобили имеет следующий вид

			

			
Таблица 3: Счет-фактура

	

	Таблица 4: Торговый чек

	

	Примечание: Таблица “Автомобили” и “Счет-фактура” связаны связью 1:M (один-ко-многим), следовательно, прежде чем удалять поле из таблицы “Счет-фактура”, сначала следует удалить соответствующее поле в таблице “Aвтомобили”. Таблица “Торговый чек” и ”Покупатель” также связаны связью 1:M, следовательно, прежде чем удалять поле из таблицы “Торговый чек”, сначала следует удалить соответствующее поле в таблице “Покупатель”, для сохранения ссылочной целостности.

	

	3.3 Организация пользовательского интерфейса

	

	3.3.1 Создание меню, реализующего основные функции информационной системы

	После загрузки приложения появляется первая форма ввода пароля:

	После успешной идентификации пользователя загружается следующая форма:

	При помощи этой формы можно корректировать цену автомобилей с

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

	Данная форма является формой-заставкой. 

	После успешной загрузки этой формы появляется главная форма.

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

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

			

	3.3.2 Проектирование форм для работы с базой данных 

	Рассмотрим одну из форм (меню у всех форм практически одинаковы) автомобили. Она имеет вид:

	

	

	
Рассмотрим все меню по порядку:

	Меню - здесь осуществляется выход из программы. По сочетанию клавиш Alt+F4 или непосредственно нажатием. 

	Текст процедуры: 

	If MessageDlg('Подтверждение?',MtConfirmation,[mbYes,mbNo,mbCancel],

	0)=mrYes then

	Form1.Close;

	Form4.Table1.FlushBuffers;

	Form5.Table1.FlushBuffers;

	Form6.Table1.FlushBuffers;

	Form7.Table1.FlushBuffers;

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

	Текст процедуры:

	form5.visible:=false;

	form3.visible:=true; 

	Примечание: Для остальных форм текст такой же только изменяется номер форм.

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

	Организация формы ввода нового автомобиля осуществляется следующим образом:

	form11.visible:=true;

			form11.Edit3.clear;

	form11.Edit4.clear;

	form11.Edit5.clear;

	form11.Edit6.clear;

	form11.Edit7.clear;

	
Внешний вид этой формы:

	

	

	Марка автомобиля и цена добавляются автоматически. 

	Процедура кнопки добавить:

	form5.Table1.insert;

	form5.Table1.edit;

	form5.Table1Color.Asstring:=edit4.text;

	form5.Table1Kol_vo_door.Asstring:=edit5.text;

	form5.Table1Engine_power.Asstring:=edit6.text;

	form5.Table1Type_Salon.Asstring:=edit7.text;

	form5.table1.post;

	Form5.Table1.FlushBuffers;

	form11.visible:=false; 

	Организация формы поиска осуществляется следующим образом:

	Form5.Table1.FlushBuffers;

	Form5.Visible:=false;

	Form24.visible:=true;

	Form24.Table1.Refresh;

	Form24.DBGrid3.Visible:=false;

	

	
Форма поиска выглядит так:

	

	

	Процедура кнопки “Поиск”:

	procedure TForm24.Button1Click(Sender: TObject);

	Label s,d;

	begin

	if (Form24.Edit1.text='')or (Form24.Edit2.text='') or (Form24.Edit3.text='')

	then

	BEGIN

	Showmessage('Значения не введены, возможен неправильный поиск!');

	goto s;

	END;

	with Form24.table1 do

	begin

	locate('Name_Modeli',edit1.text,[]);

	locate('Predlag_Zena',edit2.text,[]);

	locate('Color',edit3.text,[]);

	if (locate('Name_Modeli',edit1.text,[])=false) and

	(locate('Predlag_Zena',edit2.text,[])=false) and

	(locate('Color',edit3.text,[])=false)

	then

	begin

	Showmessage('Такого автомобиля нет!');

	Form24.Edit1.clear;

	Form24.table1.first;

	s: Form24.DBGrid3.Visible:=false;

	end

	else

	d: Form24.DBGrid3.Visible:=True;

	end;

	Form24.Table1.Refresh;

	Form24.Query1.active:=true;

	end;

	

	Пример поиска автомобиля:

	

	

	

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

	Следующий компонент меню – это поиск и замена данных об автомобиле.

	Организация формы поиска:

			form13.visible:=true;

	form13.edit1.clear;form13.edit2.clear;form13.edit3.clear;

	form13.edit4.clear;form13.edit5.clear;form13.edit6.clear;

	form13.edit7.clear;

	form13.edit10.clear;form13.edit11.clear;form13.edit12.clear;

	form13.edit13.clear;form13.edit14.clear;form13.edit15.clear;

	Внешний вид формы 

	

	

	Процедура кнопки найти:

	with Form5.table1 do

	if (Locate('Kod_Modeli',Edit1.text,[])=true) then

	begin

	SpeedButton3.Enabled:=true;

	Form13.Edit2.text:=Form5.table1Name_Modeli.AsString;

	Form13.Edit3.text:=Form5.table1Color.AsString;

	Form13.Edit4.text:=Form5.table1Predlag_Zena.AsString;

	Form13.Edit5.text:=Form5.table1Kol_vo_Door.AsString;

	Form13.Edit6.text:=Form5.table1Engine_Power.AsString;

	Form13.Edit7.text:=Form5.table1Type_Salon.AsString;

	Form13.Label11.Visible:=true;

	Form13.Label12.Visible:=false;

	end

	else

	begin

	Form13.Label12.Visible:=true;

	SpeedButton3.Enabled:=false;

	Form13.Label11.Visible:=false;

	Form13.Edit2.Clear;

	Form13.Edit3.Clear;

	Form13.Edit4.Clear;

	Form13.Edit5.Clear;

	Form13.Edit6.Clear;

	Form13.Edit7.Clear;

	end;

	Организация формы фильтрации:

	Form5.Visible:=false;

	Form26.visible:=true;

	form4.timer2.enabled:=false;

	

	Внешний вид формы:

	

	

	Процедура кнопки применить для столбца Цена (для других столбцов аналогично, только меняется название столбца):

	if (radiogroup1.ItemIndex=0) and (radiogroup2.ItemIndex=0) then

	with table1 do

	begin

	Filtered:=false;

	Filter:='Predlag_Zena<'+(Edit1.Text);

	Filtered:=true;

	end;

	begin

	if (radiogroup1.ItemIndex=1) and (radiogroup2.ItemIndex=0) then

	with table1 do

	begin

	Filtered:=false;

	Filter:='Predlag_Zena>'+(Edit1.Text);

	Filtered:=true;

	end;

	end;

	begin

	if (radiogroup1.ItemIndex=2) and (radiogroup2.ItemIndex=0) then

	with table1 do

	begin

	Filtered:=false;

	Filter:='Predlag_Zena<='+(Edit1.Text);

	Filtered:=true;

	end;

	end;

	if (radiogroup1.ItemIndex=3) and (radiogroup2.ItemIndex=0) then

	with table1 do

	begin

	Filtered:=false;

	Filter:='Predlag_Zena>='+(Edit1.Text);

	Filtered:=true;

	end;

	

	if (radiogroup1.ItemIndex=4) and (radiogroup2.ItemIndex=0) then

	with table1 do

	begin

	Filtered:=false;

	Filter:='Predlag_Zena='+(Edit1.Text);

	Filtered:=true;

	end;

	Следующий пункт меню – это Графики.

	Организация формы показа графиков осуществляется следующим образом:

	Form5.Table1.FlushBuffers;

	Form5.Visible:=false;

	Form25.Visible:=true;

	Форма графики, может показывать два графика. Рассмотрим внешний вид этих графиков:

	Первый: Цены на автомобили.

	

	

	Процедура кнопки показа первого графика:

	Form5.Visible:=false;

	Form25.Caption:='Цены на автомобили';

	Form25.DBChart1.Visible:=true;

	Form25.DBChart2.Visible:=false;

	

	
Второй: Сезонность цен.

	

	

	Процедура кнопки показа второго графика:

	Form5.Visible:=false;

	Form25.Caption:='Сезонность цен на автомобили';

	Form25.DBChart1.Visible:=false;

	Form25.DBChart2.Visible:=true;

	Следующий пункт меню – это Очистка базы.

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

	Процедура меню “Очистка всей базы”

	Form5.Table1.Edit;

	repeat

	Form5.Table1.delete;

	until (Form5.table1.eof=true);

	Form6.Table1.active:=true;

	Form6.Table1.Edit;

	repeat

	Form6.Table1.delete;

	until (Form6.table1.eof=true);

	Form7.Table1.active:=true;

	Form7.Table1.Edit;

	repeat

	Form7.Table1.delete;

	until (Form7.table1.eof=true);

	Form4.Table1.active:=true;

	Form4.Table1.Edit;

	repeat

	Form4.Table1.delete;

	until (Form4.table1.eof=true);

	

	
Заключение

		

		В курсовой работе можно подвести следующий итог. Поставленные задачи были выполнены. Был осуществлен сбор и структуризация материала об объекте, для которого необходимо было создать программный продукт. Спроектирована база данных, таблицы приведены к трем нормальным формам. Создано приложение, позволяющее работать с базой данных: Редактирование, поиск, удаление, фильтрация данных. Были приобретены и закреплены теоретические знания по объектно-ориентированному программированию в среде Delphi. 

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

		

		
Список используемой литературы

		

	1. Дарахвелидзе П. М. Программирование в Delphi 5 – М: 2001. – 500с., ил

	2. Базы данных: Модели, разработка, реализация / Т.С. Карпова. - СПб.: Питер, 2001. – 304 с.: ил. 

	3. Грабер М. Введение в SQL: Пер. с англ. - М.: “ЛОРИ”, 2001.- 6412., ил.