Автор работы: Пользователь скрыл имя, 19 Января 2012 в 20:56, курсовая работа
Данный программный продукт разработан для менеджеров по продажам в автосалонах. Программа предназначена для регистрации и ведения учета продаж автомобилей.
ВВЕДЕНИЕ 3
Моделирование базы данных автосалона на основе языка UML 5
Построение диаграмм классов 5
Построение диаграммы компонентов 6
Построение диаграмм развертывания ……………………………………………7
Построение диаграмм прецедентов ………………………………………………7
Построение диаграммы активности (деятельности)……………………………….….8
Построение диаграммы последовательностей ………………………………….10
Построение диаграммы кооперации …………………………………………….11
Построение диаграммы состояний ……………………………………………....12
Приложение А (скриншоты программы)…….……………..………………………13
Приложение Б (листинг программы)………………………………………………16
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ И ИСТОЧНИКОВ…………….35
Рисунок
8.Диаграмма состояний.
Приложение
А. Скриншоты программы.
Программа написана в среде программирования RAD Studio Gode Gear 2009, и предназначена для производственно-технического отдела продаж автомобильного салона. Программа должна осуществлять управление данными об автомобилях принятых на реализацию автомобильным салоном, регистрировать характеристики автомобиля, осуществлять поиск в базе автомобилей по заданным критериям. Выводить на печать результаты поиска.
Ниже приведён общий вид программы.
У нас есть возможность выбора страны-производителя
а так же возможность выбора модели автомобиля:
Так же мы можем
воспользоваться SQL-запросами по таким
параметрам как: цена, год и объём. Ниже
приведены скриншоты поиска по цене:
по году выпуска:
а так же по объёму:
Но мы так
же можем вывести на экран весь
список автомобилей из базы данных.
Так же у нас имеется дополнительная
кнопка выхода с программы. Теперь перейдем
к администраторской части
Но прежде мы должны авторизоваться как администратор, т.е. ввести пароль:
Только после того, как мы авторизовались, мы имеем доступ к базе данных:
Тут мы можем добавить в базу страну производителя, модель автомобиля, класс, год, объём и цену продаваемого автомобиля. А так же название салона-продавца и его адрес. Тут так же имеется возможность смены пароля, в случае, если пароль стал известен чужому лицу. Так же с клиентской части программы есть возможность экспорта списка автомобилей в файл Microsoft Office Excel:
Приложение
Б. Листинг программы
unit
MainUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids,
StdCtrls, ExtCtrls, Menus,Comobj;
type
TMainForm = class(TForm)
DBGrid3: TDBGrid;
DBGrid4: TDBGrid;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
Button1: TButton;
GroupBox1: TGroupBox;
DBGrid1: TDBGrid;
Edit1: TEdit;
Edit2: TEdit;
Button2: TButton;
Label1: TLabel;
Label2: TLabel;
Panel1: TPanel;
Edit3: TEdit;
Label3: TLabel;
Label4: TLabel;
Edit4: TEdit;
Button3: TButton;
Panel2: TPanel;
Edit5: TEdit;
Edit6: TEdit;
Label5: TLabel;
Label6: TLabel;
Button4: TButton;
Panel3: TPanel;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
Excel1: TMenuItem;
N4: TMenuItem;
procedure ComboBox1Change(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button6Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure ExportDBGrid(toExcel: Boolean);
procedure Excel1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
MainForm: TMainForm;
implementation
uses DataUnit, InUnit, ABOUT;
{$R *.dfm}
procedure TMainForm.Excel1Click(Sender: TObject);
begin
ExportDBGrid(true);
end;
procedure TMainForm.ExportDBGrid(
type TBookmark = Pointer;
var
bm: TBookmark;
col, row: Integer;
sline: String;
mem: TMemo;
ExcelApp: Variant;
begin
try
Screen.Cursor := crHourglass;
DBGrid1.DataSource.DataSet.
bm
:= DBGrid1.DataSource.DataSet.
DBGrid1.DataSource.DataSet.
if toExcel then
begin
ExcelApp := CreateOleObject('Excel.
ExcelApp.WorkBooks.Add();
ExcelApp.WorkBooks[1].
end;
mem := TMemo.Create(Self);
mem.Visible := false;
mem.Parent := MainForm;
mem.Clear;
sline := '';
for col := 0 to DBGrid1.FieldCount-1 do
sline := sline + DBGrid1.Fields[col].
mem.Lines.Add(sline);
for
row := 0 to DBGrid1.DataSource.DataSet.
begin
sline := '';
for col := 0 to DBGrid1.FieldCount-1 do
sline := sline + DBGrid1.Fields[col].AsString + #9;
mem.Lines.Add(sline);
DBGrid1.DataSource.DataSet.
end;
mem.SelectAll;
mem.CopyToClipboard;
if toExcel then
begin
ExcelApp.Workbooks[1].
ExcelApp.Visible := true;
end;
DBGrid1.DataSource.DataSet.
DBGrid1.DataSource.DataSet.
DBGrid1.DataSource.DataSet.
Screen.Cursor := crDefault;
except
Application.MessageBox('
end;
end;
procedure TMainForm.Button1Click(Sender: TObject);
begin
DBGrid1.Visible := false;
DataModule1.StranaTable.
end;
procedure TMainForm.Button2Click(Sender: TObject);
begin
DBGrid1.Visible := true;
DataModule1.SearchQuery.Active := false;
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.SQL.
if Length(Edit1.Text) <> 0 then
DataModule1.SearchQuery.SQL.
if Length(Edit2.Text) <> 0 then
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.Active := true;
end;
procedure TMainForm.Button3Click(Sender: TObject);
begin
DBGrid1.Visible := true;
DataModule1.SearchQuery.Active := false;
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.SQL.
if Length(Edit1.Text) <> 0 then
DataModule1.SearchQuery.SQL.
if Length(Edit2.Text) <> 0 then
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.Active := true;
end;
procedure TMainForm.Button4Click(Sender: TObject);
begin
DBGrid1.Visible := true;
DataModule1.SearchQuery.Active := false;
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.SQL.
if Length(Edit1.Text) <> 0 then
DataModule1.SearchQuery.SQL.
if Length(Edit2.Text) <> 0 then
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.Active := true;
end;
procedure TMainForm.Button5Click(Sender: TObject);
begin
MainForm.Hide;
AboutForm.Show;
end;
procedure TMainForm.Button6Click(Sender: TObject);
begin
InForm.Show;
MainForm.Hide;
end;
procedure TMainForm.Button7Click(Sender: TObject);
begin
DBGrid1.Visible := true;
DataModule1.SearchQuery.Active := false;
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.SQL.
DataModule1.SearchQuery.Active := true;
end;
procedure TMainForm.Button8Click(Sender: TObject);
begin
if Application.MessageBox('Вы уверены?','Внимание!!!', MB_OKCANCEL) = 1 then
Application.Terminate;
end;
procedure TMainForm.ComboBox1Change(
begin
if Combobox1.ItemIndex = 0 then
begin
Combobox2.Items.Clear;
Combobox2.Items.Add('
Combobox2.Items.Add('Toyota');
end;
if Combobox1.ItemIndex = 1 then
begin
Combobox2.Items.Clear;
Combobox2.Items.Add('Mersedes'
Combobox2.Items.Add('Opel');
end;
end;
procedure TMainForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if Application.MessageBox('Вы уверены?','Внимание!!!', MB_OKCANCEL) = 1 then
Application.Terminate ;
end;
procedure TMainForm.N2Click(Sender: TObject);
begin
Button8.Click;