Учебная работа. Реферат: Автоматизация автосалона 2

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (5 оценок, среднее: 4,80 из 5)
Загрузка...
Контрольные рефераты

Учебная работа. Реферат: Автоматизация автосалона 2

Содержание:

Введение. 2

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

Связь меж таблицами Базы Данных. 4

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

ER диаграмма. 7

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

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

Заключение. 20

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

Введение

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

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

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

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

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

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

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

1)

Catalog

.

db

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


2)

Characteristic

.

db

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


3)

The

.

Characteristic

.

db

– в таблицу входят подробное описание черт всякого кара.

4)

Zakaz

.

db

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


Связь меж таблицами Базы Данных

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

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

1)

Form1.

dfm

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

2)

Form2.dfm

Рис.2 Окно дизайна кара

3)

Form

3

.dfm

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

ER
диаграмма

1



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

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.

2)

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.

3)

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 запросы. Которая дает возможность ссылаться на единую базу, как через локальную сеть, так и через Веб. Потому что на данный момент Веб имеет глобальную значимость, то ее вероятности беспредельны, и постоянно можно быть в курсе данных. На примере, сеть компьютерных магазинов, которая базирована в нескольких городках. Если заказчик, просит выборку «железа», которой в данный момент не находится в магазине, другими словами возможность произвести его заказ из основного склада, к примеру с другого городка, которую должны, в недлинные сроки, доставит к заказчику.

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

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

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

1.
Галисеев Г. В. “Составляющие в
Delphi
7.”

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

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

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

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

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

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

Казань:

Абри”, 2005 год. — 120 стр.

5.
Поган А. “Delphi: Управление программера.”

Москва:

Эксмо

, 2006. — 480
c
тр.

6.
Стив
Тейксейр
,
Ксавье
Пачеко
“Borland Delphi 6.
Управление разраба.“

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

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

Москва

Эксмо
”,
2005 год. — 110 стр.

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

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

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

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

]]>