Реферат по предмету "Информатика"


Автоматизация автосалона 2

Содержание:

Введение 2

Описание таблиц Базы Данных 3

Взаимосвязь между таблицами Базы Данных 4

Описание внешнего вида пользовательского интерфейса 5

ER диаграмма 7

Программный код 8

Заключение 20

Использованная литература 21


Введение

Основные цели данного курсового проекта:

Разработать АИС по автосалону «Автомаркет».

Закрепить знания программирования в среде Delphi.

Познакомится со всеми этапами создания готового продукта.


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

При создании проекта будет использоваться механизм доступа к данным Borland Database Engine (BDE). Этот механизм доступа к данным позволяет обращаться к локальным и файл-серверным форматам баз данных dBase, FoxPro и Paradox, к различным серверам SQL и ко многим другим источникам данных, доступ которых поддерживался при помощи драйверов ODBC. Например, с помощью BDE можно напрямую работать с табличными файлами MS Excel.


Описание таблиц Базы Данных

Catalog.db– таблица содержит каталог автомобилей (Acura, BMW и т.д.).



Characteristic.db – таблица содержит в себе данные о характеристиках автомобилей.



The.Characteristic.db – в таблицу входят подробное описание характеристик каждого автомобиля.



Zakaz.db – в таблице отображается наименование автомобиля который был куплен, то есть добавлен в «Архив».



Взаимосвязь между таблицами Базы Данных














Описание внешнего вида пользовательского интерфейса

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


Form1.dfm


Рис.1 Общее окно


Form2.dfm


Рис.2 Окно оформления автомобиля


Form3.dfm


Рис.3 Окно Архива клиентов (тех кто купил автомобиль)


ER диаграмма


Архив

База авто



1





Программный код

Unit1.pas


unit Unit1;


interface


uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, DB, Grids, DBGrids, DBTables, DBCtrls, StdCtrls, XPMan, ComCtrls,

Buttons, Menus, ExtCtrls;


type

TForm1 = class(TForm)

Query1: TQuery;

DBGrid1: TDBGrid;

DataSource1: TDataSource;

XPManifest1: TXPManifest;

GroupBox1: TGroupBox;

Label1: TLabel;

Label2: TLabel;

CB1: TComboBox;

CB2: TComboBox;

GroupBox2: TGroupBox;

Label3: TLabel;

txtOt: TEdit;

txtDo: TEdit;

RB1: TRadioButton;

Label4: TLabel;

RB2: TRadioButton;

Label5: TLabel;

txtYear: TEdit;

cmdApply: TButton;

cmdAll: TButton;

PM1: TPopupMenu;

N1: TMenuItem;

DBNavigator1: TDBNavigator;

MainMenu1: TMainMenu;

N2: TMenuItem;

N3: TMenuItem;

Bevel1: TBevel;

procedure FormCreate(Sender: TObject);

procedure CB1Change(Sender: TObject);

procedure CB2Change(Sender: TObject);

procedure RB1Click(Sender: TObject);

procedure RB2Click(Sender: TObject);

procedure cmdApplyClick(Sender: TObject);

procedure cmdAllClick(Sender: TObject);

procedure DBGrid1MouseUp(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

procedure N1Click(Sender: TObject);

procedure N3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;


var

Form1: TForm1;


implementation


uses Unit2, Unit3;


{$R *.dfm}


procedure TForm1.FormCreate(Sender: TObject);

var

sql_str:string;

begin

sql_str:='SELECT * FROM Katalog';

Query1.SQL.Clear;

Query1.SQL.Add(sql_str);

Query1.Open;

Query1.First;

while not Query1.Eof do

begin

CB1.Items.Add(Query1.FieldByName('AVTO').AsString);

Query1.Next;

end;

CB1.ItemIndex:=0;

CB1Change(Sender);

end;


procedure TForm1.CB1Change(Sender: TObject);

var

sql_str,tip:string;

i:byte;

bFind:bool;

begin

CB2.Clear;

CB2.Items.Add('Все типы');

sql_str:='SELECT * FROM '+CB1.Text;

Query1.SQL.Clear;

Query1.SQL.Add(sql_str);

try

Query1.Open;

except

on EDBEngineError do

exit;

end;

Query1.First;

while not Query1.Eof do

begin

bFind:=false;

tip:=Query1.FieldByName('Tip_kyzova').AsString;

for i:=0 to CB2.Items.Count-1 do

if CB2.Items.Strings[i]=tip then

begin

bFind:=true;

break;

end;

if bFind=false then CB2.Items.Add(tip);

Query1.Next;

end;

CB2.ItemIndex:=0;

end;


procedure TForm1.CB2Change(Sender: TObject);

var

sql_str:string;

begin

if CB2.Text='Все типы' then

sql_str:='SELECT * FROM '+CB1.Text

else

sql_str:='SELECT * FROM '+CB1.Text+' WHERE Tip_kyzova='+QuotedStr(CB2.Text);

Query1.SQL.Clear;

Query1.SQL.Add(sql_str);

Query1.Open;

end;


procedure TForm1.RB1Click(Sender: TObject);

begin

txtYear.Enabled:=false;

Label5.Enabled:=false;

txtOt.Enabled:=true;

txtDo.Enabled:=true;

Label3.Enabled:=true;

Label4.Enabled:=true;

txtOt.SetFocus;

end;


procedure TForm1.RB2Click(Sender: TObject);

begin

txtOt.Enabled:=false;

txtDo.Enabled:=false;

Label3.Enabled:=false;

Label4.Enabled:=false;

txtYear.Enabled:=true;

Label5.Enabled:=true;

txtYear.SetFocus;

end;


procedure TForm1.cmdApplyClick(Sender: TObject);

var

sql_str:string;

begin

Query1.SQL.Clear;

if RB1.Checked then

if CB2.Text='Все типы' then

sql_str:='SELECT * FROM '+CB1.Text+

' WHERE Data_vipyska BETWEEN '+QuotedStr(txtOt.Text)+' AND '+QuotedStr(txtDo.Text)

else

sql_str:='SELECT * FROM '+CB1.Text+' WHERE Tip_kyzova='+QuotedStr(CB2.Text)+

'AND Data_vipyska BETWEEN '+QuotedStr(txtOt.Text)+' AND '+QuotedStr(txtDo.Text)

else

if CB2.Text='Все типы' then

sql_str:='SELECT * FROM '+CB1.Text+' WHERE Data_vipyska='+QuotedStr(txtYear.Text)

else

sql_str:='SELECT * FROM '+CB1.Text+' WHERE Tip_kyzova='+QuotedStr(CB2.Text)+

'AND Data_vipyska='+QuotedStr(txtYear.Text);

Query1.SQL.Add(sql_str);

Query1.Open;

end;


procedure TForm1.cmdAllClick(Sender: TObject);

begin

CB2Change(Sender);

end;


procedure TForm1.DBGrid1MouseUp(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

var

p:TPoint;

begin

GetCursorPos(p);

if Button=mbRight then PM1.Popup(p.X,p.Y);

end;


procedure TForm1.N1Click(Sender: TObject);

begin

Form2.ShowModal;

end;


procedure TForm1.N3Click(Sender: TObject);

begin

Form3.ShowModal;

end;


end.


Unit2.pas


unit Unit2;


interface


uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, DB, DBTables;


type

TForm2 = class(TForm)

Label1: TLabel;

txtFam: TEdit;

Label2: TLabel;

lblMarka: TLabel;

Label4: TLabel;

lblModel: TLabel;

cmdOk: TButton;

cmdClose: TButton;

Label3: TLabel;

lblCena: TLabel;

Query1: TQuery;

procedure FormShow(Sender: TObject);

procedure cmdCloseClick(Sender: TObject);

procedure cmdOkClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;


var

Form2: TForm2;


implementation


uses Unit1;


{$R *.dfm}


procedure TForm2.FormShow(Sender: TObject);

begin

lblMarka.Caption:=Form1.CB1.Text;

lblModel.Caption:=Form1.DBGrid1.Fields[0].Text;

lblCena.Caption:=Form1.DBGrid1.Fields[5].Text;

end;


procedure TForm2.cmdCloseClick(Sender: TObject);

begin

Close;

end;


procedure TForm2.cmdOkClick(Sender: TObject);

var

sql_str:string;

begin

sql_str:='INSERT INTO Zakaz(Marka,Model,Cena,Fam) VALUES('+QuotedStr(lblMarka.Caption)+

','+QuotedStr(lblModel.Caption)+','+QuotedStr(copy(lblCena.Caption,0,length(lblCena.Caption)-3))+','+QuotedStr(txtFam.Text)+')';

Query1.SQL.Clear;

Query1.SQL.Add(sql_str);

Query1.ExecSQL;

MessageDlg('Поздравляем с покупкой нового автомобиля!',mtInformation,[mbOk],0);

Close;

end;


end.


Unit3.pas


unit Unit3;


interface


uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, DB, DBTables, StdCtrls, Mask, DBCtrls;


type

TForm3 = class(TForm)

DBGrid1: TDBGrid;

Query1: TQuery;

DataSource1: TDataSource;

txtFilter: TEdit;

Label1: TLabel;

procedure txtFilterChange(Sender: TObject);

procedure FormShow(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;


var

Form3: TForm3;

implementation

{$R *.dfm}

procedure TForm3.txtFilterChange(Sender: TObject);

begin

Query1.Filter:='';

if txtFilter.Text='' then

Query1.Filtered:=false

else

begin

Query1.Filter:='Fam='+QuotedStr(txtFilter.Text+'*');

Query1.Filtered:=true;

end;

end;

procedure TForm3.FormShow(Sender: TObject);

var

sql_str:string;

begin

sql_str:='SELECT * FROM Zakaz';

Query1.SQL.Clear;

Query1.SQL.Add(sql_str);

Query1.Open;

end;

end.

Заключение

При проектировании данной курсовой работы, были использованы материалы по теоретической части, а именно SQL запросы. Которая дает возможность ссылаться на единую базу, как через локальную сеть, так и через Интернет. Так как сейчас Интернет имеет глобальную значимость, то ее вероятности безграничны, и всегда можно быть в курсе данных. На примере, сеть компьютерных магазинов, которая основана в нескольких городах. Если заказчик, требует подборку «железа», которой в данный момент не присутствует в магазине, то есть возможность произвести его заказ из основного склада, например с другого города, которую должны, в короткие сроки, доставит к заказчику.

В данной курсовой работе, так же были учтены такие услуги как, «Архив», где идет учет продаваемой продукции.

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

Использованная литература

Галисеев Г. В. “Компоненты в Delphi 7.”

Санкт-Петербург: “Вильямс”, 2004 год. - 642 стр.


Коржинский С.Н. “Изучаем Delphi”

SNK Press Online (электронное издание), 2007год. cтр.- 344


Петров К.Д. “Delphi.Help.”

Казань: “Пром”, 2004 год. - 230 cтр.


Пиренеев А.Н. “Delphi:Самоучитель.”

Казань: “Абри”, 2005 год. - 120 стр.


Поган А. “Delphi: Руководство программиста.”

Москва: “Эксмо”, 2006. - 480 cтр.


Стив Тейксейр, Ксавье Пачеко “Borland Delphi 6. Руководство разработчика.“

Санкт-Петербург: “Вильямс”, 2002 год. - 1120 стр.


Хомкин Б.А. “Delphi: Сделай сам.”

Москва “Эксмо”, 2005 год. - 110 стр.


Чиртик А. “Delphi: Трюки и эффекты”

Санкт-Петербург: “Питер”; 2007 год. – 400 стр.


Шабров В.Н. “Delphi: Программируй сам.”

Казань: “Абри”; 2006 год. - 200 стр.



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

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Day The Music Died Essay Research Paper
Реферат Организация социальной поддержки многодетных семей в Нижнекамском муниципальном районе
Реферат Создание измерительного аппаратно-программного комплекса термометра на основе микроконтроллеров семьи ATMEGA
Реферат Статистический обзор и динамика заболеваемости наиболее важными группами болезней (1990-97гг.) по РСО-Алания
Реферат Иерусалим священный город трех религий
Реферат Hercules 12 Labors Of Hercules Essay Research
Реферат Анализ финансового состояния предприятия на примере ОАО Межрегиональная распределительная сетевая компания Юга
Реферат Структура системного анализа и моделирования процессов в техносфере
Реферат Marcus Aurelius Essay Research Paper Marcus Aurelius
Реферат Русофобия в России: её исследователи и критики
Реферат Trifles Essay Research Paper Little Trifles Add
Реферат Технические средства офисной деятельности
Реферат Діяльність підприємства з ремонту та обслуговування автотранспорту
Реферат Карданная передача
Реферат Разработка приложения ведения базы данных торговой фирмы для Windows