Автор работы: Пользователь скрыл имя, 16 Марта 2011 в 13:13, дипломная работа
Существует много веских причин перевода существующей информации на компьютерную основу. Сейчас стоимость хранения информации в файлах ЭВМ дешевле, чем на бумаге. Базы данных позволяют хранить, структурировать информацию и извлекать оптимальным для пользователя образом. Использование файл/серверных и клиент/серверных технологий позволяют сберечь значительные средства, а главное и время для получения необходимой информации, а также упрощают доступ и ведение, поскольку они основываются на комплексной обработке данных и централизации их хранения.
ВВЕДЕНИЕ 6
1. ПОСТАНОВОЧНАЯ ЧАСТЬ 8
1.1 Формулировка задачи 8
1.2 Описание входной и выходной документации 8
1.3 Требования к интерфейсу Windows-приложения 8
2. ПРОЕКТНАЯ ЧАСТЬ 16
2.1 Описание информационной базы 16
2.2 Спецификации набора данных 18
2.3 Спецификации набора данных 18
2.4 Проект базы данных, используемой в задаче 19
2.5 Разработка алгоритмов обработки данных 20
2.6 Разработка SQL-запросов к базе данных 22
2.7 Разработка форм приложения, меню, отчетов 23
3. ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА РЕАЛИЗАЦИИ ДИПЛОМНОГО ПРОЕКТА 26
3.1 Краткая характеристика операционных систем 26
3.2 Краткая характеристика языка программирования Object Pascal и среды Delphi 26
3.3 Краткая характеристика используемой СУБД 28
4. ЭКСПЛУАТАЦИЯ 31
4.1.Требования к аппаратному обеспечению 31
4.2.Инструкция пользователю 31
4.3 Инструкция программисту 39
5. ЭКОНОМИЧЕСКАЯ ЧАСТЬ 40
5.1. Определение затрат на создание программного продукта 40
5.2 Расчет себестоимости и цены программного продукта 42
5.3 Расчет экономической эффективности проекта 44
5.4 Технико-экономические показатели проекта 46
6. МЕРОПРИЯТИЯ ПО ТЕХНИКЕ БЕЗОПАСНОСТИ И ОКРУЖАЮЩЕЙ СРЕДЫ. 47
6.1. Охрана труда 47
6.2. Техника безопасности 49
6.3 Охрана окружающей среды 56
7. ЗАКЛЮЧЕНИЕ 59
8. СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 60
ПРИЛОЖЕНИЕ
ServerIsRunning := True;
end;
ExelOtch:=ExtractFilePath(
App.WorkBooks.Add;
Ke:=App.WorkBooks[1];
Abc:=Ke.WorkSheets[1];
Abc.Name:='Проданные авто('+DateToStr(Date)+').xls'
except on EinOutError do begin
messageBox(handle,'Не удаётся создать файл!','Ошибка',MB_ICONERROR);
exit;
end;
end;
App.DisplayAlerts:=False;
Abc.Cells[1,3]:='Проданные авто('+DateToStr(Date)+').xls'
Abc.Cells[1,3].Font.Bold:=
Abc.Cells[1,3].Font.Size:=11;
dm1.avto_out.first;
i:=3;
while not dm1.avto_out.eof do begin
i:=i+1;
app.cells[i,1]:=vartostr(dm1.
Abc.Cells[i,1].ColumnWidth:=
app.cells[i,2]:=vartostr(dm1.
Abc.Cells[i,2].ColumnWidth:=
app.cells[i,3]:=vartostr(dm1.
Abc.Cells[i,3].ColumnWidth:=5;
app.cells[i,4]:=vartostr(dm1.
Abc.Cells[i,4].ColumnWidth:=
app.cells[i,5]:=vartostr(dm1.
Abc.Cells[i,5].ColumnWidth:=
app.cells[i,6]:=vartostr(dm1.
Abc.Cells[i,6].ColumnWidth:=
app.cells[i,7]:=vartostr(dm1.
Abc.Cells[i,7].ColumnWidth:=8;
dm1.avto_out.next;
end;
App.ActiveWorkBook.SaveAs(
App.Quit;
App:=Unassigned;
AppProgID := 'Excel.Application';
App := CreateOleObject(AppProgID);
App.Visible := True;
ExelOtch:=ExtractFilePath(
App.WorkBooks.Open(ExelOtch);
end;
end.
unit dm;
interface
uses
SysUtils, Classes, DB, DBTables;
type
Tdm1 = class(TDataModule)
dsvlad: TDataSource;
dsavto: TDataSource;
dssot: TDataSource;
dskomplect: TDataSource;
dsavto_in: TDataSource;
dsavto_out: TDataSource;
sot: TTable;
komplect: TTable;
avto_in: TTable;
avto_out: TTable;
sotKOD_SOT: TSmallintField;
sotFAM: TStringField;
sotNAME: TStringField;
sotOTH: TStringField;
avto_inKOD_IN: TFloatField;
avto_inAKT_NOM: TFloatField;
avto_inKOD_AVTO: TFloatField;
avto_inKOD_VLAD: TFloatField;
avto_inKOD_SOT: TFloatField;
avto_inDATA: TDateField;
komplectKOD_AVTO: TFloatField;
komplectKOLESO: TStringField;
komplectZAPASKA: TBooleanField;
komplectINSTRUMENT: TBooleanField;
komplectMUSIC: TBooleanField;
komplectMEDIC: TBooleanField;
komplectELECT_PAK: TBooleanField;
komplectABS: TBooleanField;
komplectGUR: TBooleanField;
komplectKONDIC: TBooleanField;
komplectINFO: TMemoField;
komplectDEFEKT: TMemoField;
komplectKOROBKA: TStringField;
komplectPRIVOD: TStringField;
avto_outKOD_OUT: TFloatField;
avto_outDATE: TDateField;
avto_outMARKA_OUT: TStringField;
avto_outMODEL_OUT: TStringField;
avto_outV_OUT: TStringField;
avto_outCVET_OUT: TStringField;
avto_outTIPKUZ_OUT: TStringField;
avto_outCENA_OUT: TFloatField;
dsmarka: TDataSource;
marka: TTable;
markaID_MARKA: TSmallintField;
markaMARKA: TStringField;
vlad: TTable;
vladKOD_VLAD: TFloatField;
vladFAM: TStringField;
vladNAME: TStringField;
vladOTH: TStringField;
vladADRES: TStringField;
vladMAIL: TStringField;
vladTEL: TFloatField;
vladSOT: TFloatField;
t1: TTable;
t1KOD_AVTO: TFloatField;
t1KOD_VLAD: TFloatField;
t1MARKA: TSmallintField;
t1MODEL: TStringField;
t1GOS_NOM: TStringField;
t1CVET: TStringField;
t1TIP_KUZ: TStringField;
t1FOTO_1: TStringField;
t1FOTO_2: TStringField;
t1CENA: TFloatField;
t1hoz: TStringField;
t1V: TStringField;
t1MMarka: TStringField;
avto: TTable;
avtoKOD_AVTO: TFloatField;
avtoKOD_VLAD: TFloatField;
avtoMARKA: TSmallintField;
avtoMODEL: TStringField;
avtoGOS_NOM: TStringField;
avtoCVET: TStringField;
avtoTIP_KUZ: TStringField;
avtoFOTO_1: TStringField;
avtoFOTO_2: TStringField;
avtoCENA: TFloatField;
avtoV: TFloatField;
avtohoz: TStringField;
avtoMMarka: TStringField;
procedure DataModuleCreate(Sender: TObject);
procedure avtoAfterScroll(DataSet: TDataSet);
procedure markaBeforeInsert(DataSet: TDataSet);
procedure markaAfterInsert(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;
var
dm1: Tdm1;
id : integer;
implementation
uses main;
{$R *.dfm}
procedure Tdm1.DataModuleCreate(Sender: TObject);
begin
avto.Close;
avto.Open;
komplect.Close;
komplect.Open;
avto_in.Close;
avto_in.Open;
avto_out.Close;
avto_out.Open;
vlad.Close;
vlad.Open;
sot.Close;
sot.Open;
end;
procedure Tdm1.avtoAfterScroll(DataSet: TDataSet);
begin
try
Fmain.Image3.Picture.
except
Fmain.Image3.picture:=nil;
end;
try
Fmain.Image4.Picture.
except
Fmain.Image4.picture:=nil;
end;
end;
procedure
Tdm1.markaBeforeInsert(
begin
id:=0;
Marka.First;
while not Marka.Eof do begin
if Marka.FieldByName('Id_marka').
then id := Marka.FieldByName('Id_marka').
Marka.Next;
end;
id:=id+1;
end;
procedure Tdm1.markaAfterInsert(DataSet: TDataSet);
begin
Marka.FieldByName('id_marka').
end;
end.
unit edit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, LMDControl, LMDBaseControl, LMDBaseGraphicButton,
LMDCustomSpeedButton, LMDSpeedButton, StdCtrls, RxGIF, glLabel, Mask,
ToolEdit, DBCtrls,IDGlobal, ExtDlgs, Grids, DBGrids;
type
TFedit = class(TForm)
Panel3: TPanel;
glLabel2: TglLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Image1: TImage;
ComboBox1: TComboBox;
Panel4: TPanel;
glLabel3: TglLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
ComboBox2: TComboBox;
ComboBox3: TComboBox;
ComboBox4: TComboBox;
Panel1: TPanel;
glLabel4: TglLabel;
LMDSpeedButton8: TLMDSpeedButton;
LMDSpeedButton9: TLMDSpeedButton;
Image4: TImage;
Image5: TImage;
Panel5: TPanel;
LMDSpeedButton10: TLMDSpeedButton;
LMDSpeedButton12: TLMDSpeedButton;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBMemo1: TDBMemo;
DBMemo2: TDBMemo;
DBCheckBox1: TDBCheckBox;
DBCheckBox2: TDBCheckBox;
DBCheckBox3: TDBCheckBox;
DBCheckBox4: TDBCheckBox;
DBCheckBox5: TDBCheckBox;
DBCheckBox6: TDBCheckBox;