Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пояснювальна записка.doc
Скачиваний:
2
Добавлен:
12.08.2019
Размер:
992.77 Кб
Скачать

Висновки

При розробці поставленої задачі було використано об’єктно-орієнтовану мову програмування Delphi . Вона була обрана серед багатьох мов програмування, через легкість у користуванні й графічному інтерфейсу й можливістю роботи з багатьма операційними системами та апаратними й програмними частинами комп’ютера.

Також, для роботи системи були обрані об'єкти БД в Delphi засновані на SQL і містять у собі повну міць прикладного програмного інтерфейсу для доступу до даних ADO. До складу Delphi також включені Borland SQL Link, тому доступ до СУБД Oracle, Sybase, Informix і InterBase відбувається з високою ефективністю. Крім того, Delphi містить у собі локальний сервер Interbase для того, щоб можна було розробити додатка в режимі офлайн. В даній інформаційній системі для для зберігання інформації використовцвались файли формату .mdb (Access).

Процес виконання працівником розрахунків має бути автоматизованим, задля уникнення розрахункових помилок, а також запобігання втрати данних, якими буде оперувати користувач. А також буде значно скорочуватись час на виконання розрахунків та виведення звітності, що призведе до підвищення ефективності праці працівника.

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

Список використаних джерел

  1. Фленов М. Программирование на Delphi глазами хакера - СПб.: БХВ – Санкт Петербург, 2005. – 350с.

  2. Фролов А.В., Фролов Г.В. Пособие программиста: т. 1, В 3 кн. кн. 3. - М.: Диалог-МИФИ, 1992 - 222 с.

  3. Культин Н.Б. Программирование на Object Pascal в Delphi 5 - Санкт-Петербург, 2000 – 400с.

  4. СОУ 03:2005. Нормоконтроль курсових та дипломних проектів (робіт). Загальні відомості.

  5. ГОСТ 2.301-68 ЕСКД. Форматы.

  6. ГОСТ 2.105-95 ЕСКД. Общие требования к текстовым документам.

Додаток А

С Так Ні Ні Ні Ні Так Так Ні хема алгоритму програми

Так

Так

Рис. А.1 – Схема алгоритму роботи програми

Додаток Б

Лістинг програми

unit Unit1;

interface

uses

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

Dialogs, Menus, ComCtrls, ExtCtrls, jpeg;

type

TForm1 = class(TForm)

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

N11: TMenuItem;

N12: TMenuItem;

N13: TMenuItem;

N14: TMenuItem;

N17: TMenuItem;

N18: TMenuItem;

N19: TMenuItem;

N21: TMenuItem;

Image1: TImage;

N9: TMenuItem;

N10: TMenuItem;

N15: TMenuItem;

procedure N6Click(Sender: TObject);

procedure N7Click(Sender: TObject);

procedure N8Click(Sender: TObject);

procedure N10Click(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure N11Click(Sender: TObject);

procedure N17Click(Sender: TObject);

procedure N18Click(Sender: TObject);

procedure N12Click(Sender: TObject);

procedure N13Click(Sender: TObject);

procedure N19Click(Sender: TObject);

procedure N14Click(Sender: TObject);

procedure N15Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit2, Unit3, Unit4, Unit5, Unit6, Unit7, Unit8, Unit9, Unit10,

Unit12, Unit13;

{$R *.dfm}

procedure TForm1.N6Click(Sender: TObject);

begin

if MessageDlg('Вы действительно хотите выйти?',

mtConfirmation,[mbYes,mbNo],0)=mrYes then

Application.Terminate else Application.Run

end;

procedure TForm1.N7Click(Sender: TObject);

begin

Form2:=TForm2.Create(self);

try

if Form2.ShowModal=mrOK then Form2.Close

finally

Form2.Free;

end;

end;

procedure TForm1.N8Click(Sender: TObject);

begin

Form3:=TForm3.Create(self);

try

if Form3.ShowModal=mrOK then Form3.Close

finally

Form3.Free;

end;

end;

procedure TForm1.N10Click(Sender: TObject);

begin

Form4:=TForm4.Create(self);

try

if Form4.ShowModal=mrOK then Form4.Close

finally

Form4.Free;

end;

end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

begin

//if MessageDlg('Вы действительно хотите выйти?',

//mtConfirmation,[mbYes,mbNo],0)=mrYes then

Application.Terminate //else Application.Run

end;

procedure TForm1.N11Click(Sender: TObject);

begin

Form5.Show;

end;

procedure TForm1.N17Click(Sender: TObject);

begin

Form6.Show;

end;

procedure TForm1.N18Click(Sender: TObject);

begin

Form7.Show;

end;

procedure TForm1.N12Click(Sender: TObject);

begin

Form8:=TForm8.Create(self);

try

if Form8.ShowModal=mrOK then Form8.Close

finally

Form8.Free;

end;

end;

procedure TForm1.N13Click(Sender: TObject);

begin

Form9.Show;

end;

procedure TForm1.N19Click(Sender: TObject);

begin

Form10:=TForm10.Create(self);

try

if Form10.ShowModal=mrOK then Form10.Close

finally

Form10.Free;

end;

end;

procedure TForm1.N14Click(Sender: TObject);

begin

Form12.Show;

end;

procedure TForm1.N15Click(Sender: TObject);

begin

Form13.Show;

end;

end.

unit Unit2;

interface

uses

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

Dialogs, Grids, DBGrids, DB, ADODB, ExtCtrls, DBCtrls, StdCtrls,

WordXP, OleServer, ComObj, MyWord;

type

TForm2 = class(TForm)

ADOTable1: TADOTable;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

Button1: TButton;

Button2: TButton;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure FormShow(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);

begin

Form2.Close;

end;

procedure TForm2.Button2Click(Sender: TObject);

var

table:integer;

begin

if CreateWord then begin

VisibleWord(false);

AddDoc;

SetFont('Times New Roman',14,false,false);

SetTextToDoc('Водители:',false);

ADOTable1.DisableControls;

WordTableAddFromDBGrid(DBGrid1,true,table);

VisibleWord(true);

ADOTable1.EnableControls;

SaveDocAs('C:\Рабочий файл TaxiManager.doc');

end

else begin

MessageDlg('MS Word не найден - дальнейшая обработка отчёта невозможна. '+

'Пожалуйста, установите MS Word',mtError,[mbOk],0);

Form2.Close;

end;

end;

procedure TForm2.FormShow(Sender: TObject);

begin

ADOTable1.Filtered:=true;

Adotable1.Filter:='Должность=''Водитель''';

end;

end.

unit Unit3;

interface

uses

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

Dialogs, ADODB, DB, Grids, DBGrids, StdCtrls, ExtCtrls, DBCtrls, MyWord;

type

TForm3 = class(TForm)

DBGrid1: TDBGrid;

DataSource1: TDataSource;

ADOTable1: TADOTable;

Button1: TButton;

DBNavigator1: TDBNavigator;

Button2: TButton;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);

begin

Form3.Close;

end;

procedure TForm3.Button2Click(Sender: TObject);

var table:integer;

begin

if CreateWord then begin

VisibleWord(false);

AddDoc;

SetAlbumOrientation;

SetFont('Times New Roman',14,false,false);

SetTextToDoc('Автотранспорт',false);

ADOTable1.DisableControls;

WordTableAddFromDBGrid(DBGrid1,true,table);

VisibleWord(true);

ADOTable1.EnableControls;

SaveDocAs('C:\Рабочий файл TaxiManager.doc');

end

else begin

MessageDlg('MS Word не найден - дальнейшая обработка отчёта невозможна. '+

'Пожалуйста, установите MS Word',mtError,[mbOk],0);

Form3.Close;

end;

end;

procedure TForm3.Button3Click(Sender: TObject);

begin

Form2.Show;

end;

end.

unit Unit4;

interface

uses

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

Dialogs, StdCtrls, DB, ADODB, Grids, DBGrids, ExtCtrls, DBCtrls, MyWord;

type

TForm4 = class(TForm)

ADOTable1: TADOTable;

DataSource1: TDataSource;

Button1: TButton;

DBNavigator1: TDBNavigator;

DBGrid1: TDBGrid;

Button2: TButton;

procedure Button1Click(Sender: TObject);

procedure FormShow(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form4: TForm4;

implementation

{$R *.dfm}

procedure TForm4.Button1Click(Sender: TObject);

begin

Form4.Close;

end;

procedure TForm4.FormShow(Sender: TObject);

begin

ADOTable1.Filtered:=true;

Adotable1.Filter:='Должность=''Диспетчер''';

end;

procedure TForm4.Button2Click(Sender: TObject);

var

table:integer;

begin

if CreateWord then begin

VisibleWord(false);

AddDoc;

SetFont('Times New Roman',14,false,false);

SetTextToDoc('Диспетчеры',false);

ADOTable1.DisableControls;

WordTableAddFromDBGrid(DBGrid1,true,table);

VisibleWord(true);

ADOTable1.EnableControls;

SaveDocAs('C:\Рабочий файл TaxiManager.doc');

end

else begin

MessageDlg('MS Word не найден - дальнейшая обработка отчёта невозможна. '+

'Пожалуйста, установите MS Word',mtError,[mbOk],0);

Form4.Close;

end;

end;

end.

unit Unit5;

interface

uses

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

Dialogs, ExtCtrls, DBCtrls, ADODB, DB, StdCtrls, Grids, DBGrids;

type

TForm5 = class(TForm)

DBGrid1: TDBGrid;

Button1: TButton;

DataSource1: TDataSource;

ADOTable1: TADOTable;

DBNavigator1: TDBNavigator;

Button2: TButton;

Button3: TButton;

Button4: TButton;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

implementation

uses Unit4, Unit14;

{$R *.dfm}

procedure TForm5.Button1Click(Sender: TObject);

begin

Form5.Hide;

end;

procedure TForm5.Button2Click(Sender: TObject);

begin

Form4.Show

end;

procedure TForm5.Button4Click(Sender: TObject);

var i:integer;

begin

if MessageDlg('Вы действительно хотите очистить базу?',

mtWarning,[mbYes,mbNo],0)=mrYes then begin

ADOTable1.Edit;

for i:=0 to ADOTable1.RecordCount-1 do ADOTable1.Delete;

end;

end;

procedure TForm5.Button3Click(Sender: TObject);

begin

Form14.Show;

end;

end.

unit Unit6;

interface

uses

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

Dialogs, StdCtrls, ComCtrls;

type

TForm6 = class(TForm)

ComboBox1: TComboBox;

Label1: TLabel;

Button1: TButton;

Button2: TButton;

DateTimePicker1: TDateTimePicker;

Label2: TLabel;

DateTimePicker2: TDateTimePicker;

Label3: TLabel;

Label4: TLabel;

procedure FormShow(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure ComboBox1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure DateTimePicker1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure DateTimePicker2KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form6: TForm6;

implementation

uses Unit4, Unit5;

{$R *.dfm}

procedure TForm6.FormShow(Sender: TObject);

var

i: integer;

begin

DateTimePicker1.Date:=now;

DateTimePicker2.Time:=now;

Form4.ADOTable1.First;

Form4.ADOTable1.Filtered:=true;

Form4.ADOTable1.Filter:='Должность=''Диспетчер''';

for i:=0 to Form4.ADOTable1.RecordCount-1 do begin

ComboBox1.Items.Add(Form4.ADOTable1.Fields[1].AsString);

Form4.ADOTable1.Next;

end;

if Combobox1.Items.Count>0 then Combobox1.ItemIndex:=0;

end;

procedure TForm6.Button1Click(Sender: TObject);

var i:integer;

begin

if Form5.ADOTable1.Active then begin

Form5.ADOTable1.First;

for i:=0 to Form5.ADOTable1.RecordCount-1 do begin

if (Combobox1.Text=Form5.ADOTable1.Fields[5].AsString) and

(Form5.ADOTable1.Fields[4].AsString='') then begin

MessageDLG('У этого диспетчера уже имеется незакрытая смена.'+#13#10+

'Просим Вас закрыть предыдущую смену',mtWarning,[mbOk],0);

break;

end;

Form5.ADOTable1.Next;

end;

Form5.ADOTable1.Insert;

Form5.ADOTable1.Fields[1].AsDateTime:=DateTimePicker1.Date;

Form5.ADOTable1.Fields[2].AsString:=TimeToStr(DateTimePicker2.Time);

Form5.ADOTable1.Fields[5].AsString:=Combobox1.text;

Form5.ADOTable1.Post;

end;

Form6.Hide;

end;

procedure TForm6.Button2Click(Sender: TObject);

begin

Form6.Close

end;

procedure TForm6.ComboBox1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then DateTimePicker1.SetFocus;

end;

procedure TForm6.DateTimePicker1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then DateTimePicker2.SetFocus;

end;

procedure TForm6.DateTimePicker2KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then Button1.SetFocus;

end;

end.

unit Unit7;

interface

uses

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

Dialogs, StdCtrls, ComCtrls, DBCtrls;

type

TForm7 = class(TForm)

Button1: TButton;

Button2: TButton;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

DateTimePicker1: TDateTimePicker;

DateTimePicker2: TDateTimePicker;

ComboBox1: TComboBox;

Label5: TLabel;

Label6: TLabel;

procedure FormShow(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure ComboBox1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure DateTimePicker1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure DateTimePicker2KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure ComboBox1Select(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form7: TForm7;

b:integer;

implementation

uses Unit5, Unit1, Unit3;

{$R *.dfm}

procedure TForm7.Button2Click(Sender: TObject);

begin

Combobox1.Items.Clear;

Combobox1.Clear;

Label6.Caption:='';

Form7.Hide

end;

procedure TForm7.FormShow(Sender: TObject);

var

i: integer;

begin

DateTimePicker1.Date:=now;

DateTimePicker2.Time:=now;

if Form5.ADOTable1.Active then begin

Form5.ADOTable1.First;

for i:=0 to Form5.ADOTable1.RecordCount-1 do begin

if Form5.ADOTable1.Fields[4].AsString='' then begin

Form7.ComboBox1.Items.Add(Form5.ADOTable1.Fields[0].AsString);

end;

Form5.ADOTable1.Next;

end;end;end;

procedure TForm7.Button1Click(Sender: TObject);

var i:integer;

begin

Form5.ADOTable1.First;

for i:=0 to Form5.ADOTable1.RecordCount-1 do begin

Form5.ADOTable1.Edit;

if StrToInt(Combobox1.Text)=Form5.ADOTable1.Fields[0].AsInteger then begin

if (Round(Form5.ADOTable1.Fields[1].AsDateTime*SecsPerDay)>Round(DateTimePicker1.Date*SecsPerDay))

then begin

MessageDLG('Ошибка - дата окончания смены не может быть раньше даты её начала.',

mtError,[mbOk],0);

break;

end;

Form5.ADOTable1.Fields[3].AsDateTime:=DateTimePicker1.Date;

Form5.ADOTable1.Fields[4].AsString:=TimeToStr(DateTimePicker2.Time);

end;

Form5.ADOTable1.Next;

end;

Combobox1.Items.Clear;

Combobox1.Clear;

Label6.Caption:='';

Form7.Hide;

end;

procedure TForm7.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Combobox1.Items.Clear;

Combobox1.Clear;

Label6.Caption:='';

end;

procedure TForm7.ComboBox1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then DateTimePicker1.SetFocus;

end;

procedure TForm7.DateTimePicker1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then DateTimePicker2.SetFocus;

end;

procedure TForm7.DateTimePicker2KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then Button1.SetFocus;

end;

procedure TForm7.ComboBox1Select(Sender: TObject);

var i:integer;

begin

Form5.ADOTable1.First;

for i:=0 to Form5.ADOTable1.RecordCount-1 do begin

if Strtoint(combobox1.Text)=Form5.ADOTable1.Fields[0].AsInteger then begin

label6.Caption:=Form5.ADOTable1.Fields[5].AsString;

end;

Form5.ADOTable1.Next;

end

end;

end.

unit Unit8;

interface

uses

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

Dialogs, StdCtrls, ExtCtrls, DBCtrls, Grids, DBGrids, ADODB, DB;

type

TForm8 = class(TForm)

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

Button1: TButton;

DataSource1: TDataSource;

ADOTable1: TADOTable;

Button3: TButton;

Button4: TButton;

procedure Button1Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form8: TForm8;

implementation

uses Unit15;

{$R *.dfm}

procedure TForm8.Button1Click(Sender: TObject);

begin

Form8.Close

end;

procedure TForm8.Button3Click(Sender: TObject);

begin

Form15.Show;

end;

procedure TForm8.Button4Click(Sender: TObject);

var i:integer;

begin

if MessageDlg('Вы действительно хотите очистить базу?',

mtWarning,[mbYes,mbNo],0)=mrYes then begin

ADOTable1.Edit;

for i:=0 to ADOTable1.RecordCount-1 do ADOTable1.Delete;

end;

end;

end.

unit Unit9;

interface

uses

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

Dialogs, StdCtrls, ComCtrls, DB, ADODB, Grids, DBGrids, MyWord;

type

TForm9 = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label6: TLabel;

Label7: TLabel;

Label8: TLabel;

Button1: TButton;

Label9: TLabel;

Edit1: TEdit;

Edit4: TEdit;

Edit5: TEdit;

Label10: TLabel;

Label11: TLabel;

ComboBox1: TComboBox;

Button2: TButton;

Button3: TButton;

ComboBox2: TComboBox;

ComboBox3: TComboBox;

DateTimePicker1: TDateTimePicker;

DateTimePicker2: TDateTimePicker;

Label5: TLabel;

Memo1: TMemo;

procedure FormShow(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure ComboBox1Change(Sender: TObject);

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

procedure DateTimePicker1KeyPress(Sender: TObject; var Key: Char);

procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);

procedure Edit7KeyPress(Sender: TObject; var Key: Char);

procedure Edit5KeyPress(Sender: TObject; var Key: Char);

procedure ComboBox3KeyPress(Sender: TObject; var Key: Char);

procedure DateTimePicker2KeyPress(Sender: TObject; var Key: Char);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure Edit4KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure Button1Click(Sender: TObject);

procedure ComboBox2KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure Memo1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form9: TForm9;

implementation

uses Unit8, Unit3, Unit4, Unit2, Unit5, Unit17;

{$R *.dfm}

procedure TForm9.FormShow(Sender: TObject);

var i:integer;

begin

Memo1.Clear;

Edit1.SetFocus;

if Form8.ADOTable1.Active then begin

Form8.ADOTable1.Last;

if Form8.ADOTable1.Fields[0].AsString<>'' then

Edit1.Text:=Inttostr(Strtoint(Form8.ADOTable1.Fields[0].AsString)+1)

else Edit1.Text:='1';

end;

Form3.ADOTable1.First;

DateTimePicker1.Date:=now;

DateTimePicker2.Time:=now;

for i:=0 to Form3.ADOTable1.recordCount-1 do begin

Combobox1.items.Add(Form3.ADOTable1.Fields[3].AsString);

Form3.ADOTable1.Next;

end;

Form5.ADOTable1.First;

for i:=0 to Form5.ADOTable1.recordCount-1 do begin

if Form5.ADOTable1.Fields[4].AsString='' then

Combobox2.items.Add(Form5.ADOTable1.Fields[5].AsString);

Form5.ADOTable1.Next;

end;

Form2.ADOTable1.Filtered:=true;

Form2.Adotable1.Filter:='Должность=''Водитель''';

Form2.ADOTable1.First;

for i:=0 to Form2.ADOTable1.recordCount-1 do begin

Combobox3.Items.Add(Form2.ADOTable1.Fields[1].AsString);

Form2.ADOTable1.Next;

end;

end;

procedure TForm9.ComboBox1Change(Sender: TObject);

var i:integer;

begin

if Form3.ADOTable1.Active then begin

Form3.ADOTable1.First;

for i:=0 to Form3.ADOTable1.recordCount-1 do begin

if Combobox1.Text=Form3.ADOTable1.Fields[3].AsString then begin

if Form3.ADOTable1.Fields[7].AsString='' then Edit5.Text:='0' else

Edit5.Text:=Form3.ADOTable1.Fields[7].AsString;

if Form3.ADOTable1.Fields[8].AsString='' then Edit4.Text:='0' else

Edit4.Text:=Form3.ADOTable1.Fields[8].AsString;

end;

Form3.ADOTable1.Next;end;end;

end;

procedure TForm9.Button2Click(Sender: TObject);

var i,table:integer;

begin

if (Edit1.Text='') or (Combobox1.Text='') or (Combobox2.Text='')

or (Combobox3.Text='') then begin

MessageDLG('Ошибка: обнаружены пустые поля.',mtError,[mbOk],0);

Form9.Close;

end;

if Form8.ADOTable1.Active then begin

Form8.ADOTable1.Insert;

Form8.ADOTable1.Fields[0].AsInteger:=StrToInt(Edit1.Text);

Form8.ADOTable1.Fields[1].AsString:=Datetostr(Datetimepicker1.Date);

Form8.ADOTable1.Fields[2].AsString:=Timetostr(Datetimepicker2.Time);

Form3.ADOTable1.First;

for i:=0 to Form3.ADOTable1.recordCount-1 do begin

if Combobox1.Text=Form3.ADOTable1.Fields[3].AsString then begin

Form8.ADOTable1.Fields[7].AsString:=Form3.ADOTable1.Fields[2].AsString;

Form8.ADOTable1.Fields[5].AsString:=Form3.ADOTable1.Fields[0].AsString;

end;

Form3.ADOTable1.Next;end;

Form8.ADOTable1.Fields[8].AsString:=Combobox3.Text;

Form8.ADOTable1.Fields[9].AsString:=Edit5.Text;

Form8.ADOTable1.Fields[6].AsString:=ComboBox1.Text;

Form8.ADOTable1.Fields[13].AsString:=Memo1.Text;

Form8.ADOTable1.Fields[14].AsString:=ComboBox2.Text;

Form8.ADOTable1.Post;

end;

combobox1.DeleteSelected;

combobox3.DeleteSelected;

if Form8.ADOTable1.Active then begin

Form8.ADOTable1.Filtered:=true;

Form8.Adotable1.Filter:='[№ путевого листа]='+Edit1.Text;

if CreateWord then begin

VisibleWord(false);

AddDoc;

SetAlbumOrientation;

SetFont('Times New Roman',14,false,false);

SetTextToDoc('Путевой лист № '+Edit1.Text+' от '

+DateToStr(DateTimePicker1.DateTime),false);

ADOTable1.DisableControls;

WordTableAddFromDBGrid(Form8.DBGrid1,true,table);

VisibleWord(true);

ADOTable1.EnableControls;

SaveDocAs('C:\Рабочий файл TaxiManager.doc');

end

else begin

MessageDlg('MS Word не найден - дальнейшая обработка отчёта невозможна. '+

'Пожалуйста, установите MS Word',mtError,[mbOk],0);end;end;

Form9.Close;

end;

procedure TForm9.Button3Click(Sender: TObject);

begin

Form9.close;

end;

procedure TForm9.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if Ord(key)= 13 then Datetimepicker1.SetFocus;

end;

procedure TForm9.DateTimePicker1KeyPress(Sender: TObject; var Key: Char);

begin

if Ord(key)= 13 then DateTimePicker2.SetFocus;

end;

procedure TForm9.ComboBox1KeyPress(Sender: TObject; var Key: Char);

begin

if Ord(key)= 13 then Combobox3.SetFocus;

end;

procedure TForm9.Edit7KeyPress(Sender: TObject; var Key: Char);

begin

if Ord(key)= 13 then Edit5.SetFocus;

end;

procedure TForm9.Edit5KeyPress(Sender: TObject; var Key: Char);

begin

if Ord(key)= 13 then Button1.SetFocus;

end;

procedure TForm9.ComboBox3KeyPress(Sender: TObject; var Key: Char);

begin

if Ord(key)= 13 then Edit5.SetFocus;

end;

procedure TForm9.DateTimePicker2KeyPress(Sender: TObject; var Key: Char);

begin

if Ord(key)= 13 then Combobox1.SetFocus;

end;

procedure TForm9.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Edit1.Text:='';

Edit4.Text:='';

Edit5.Text:='';

Combobox1.Text:='';

Combobox1.Clear;

Combobox2.Text:='';

Combobox2.Clear;

Combobox3.Text:='';

Combobox3.Clear;

end;

procedure TForm9.Edit4KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then Button1.SetFocus;

end;

procedure TForm9.Button1Click(Sender: TObject);

begin

Form17.Show;

end;

procedure TForm9.ComboBox2KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then Memo1.SetFocus;

end;

procedure TForm9.Memo1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then Button2.SetFocus;

end;

end.

unit Unit11;

interface

uses

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

Dialogs, StdCtrls, Buttons;

type

TForm11 = class(TForm)

Label1: TLabel;

Edit1: TEdit;

BitBtn1: TBitBtn;

Label2: TLabel;

procedure BitBtn1Click(Sender: TObject);

procedure Edit1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure FormCreate(Sender: TObject);

procedure Edit1Change(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form11: TForm11;

implementation

uses Unit1;

{$R *.dfm}

procedure TForm11.BitBtn1Click(Sender: TObject);

begin

if Edit1.Text='nickolay' then begin

if MessageDlg('Пароль введён верно. Добро пожаловать!',

mtInformation,[mbOk],0)=1 then begin

Form1.Visible:=true;

Form11.Hide;

end;

end else

MessageDlg('Пароль введён неверно. Введите пароль заново',

mtError,[mbOk],0);

end;

procedure TForm11.Edit1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then begin

if Edit1.Text='nickolay' then begin

if MessageDlg('Пароль введён верно. Добро пожаловать!',

mtInformation,[mbOk],0)=1 then begin

Form1.Visible:=true;

Form11.Hide;

end;

end else

MessageDlg('Пароль введён неверно. Введите пароль заново',

mtError,[mbOk],0);

end;

end;

procedure TForm11.FormCreate(Sender: TObject);

begin

Label2.Caption:='ПРИМЕЧАНИЕ: Прежде чем начать '+#13#10+

'работать с программой, убедитесь '+#13#10+

'в том что на компьютере установлен MS Word';

end;

procedure TForm11.Edit1Change(Sender: TObject);

begin

if Edit1.Text='nickolay' then Bitbtn1.Enabled:=true else Bitbtn1.Enabled:=false;

end;

end.

unit Unit12;

interface

uses

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

Dialogs, StdCtrls, ComCtrls, DB, ADODB, Grids, DBGrids;

type

TForm12 = class(TForm)

Label10: TLabel;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label11: TLabel;

DateTimePicker1: TDateTimePicker;

DateTimePicker2: TDateTimePicker;

Label7: TLabel;

Label8: TLabel;

Edit4: TEdit;

Edit5: TEdit;

Label9: TLabel;

ComboBox2: TComboBox;

Button2: TButton;

Button3: TButton;

ComboBox1: TComboBox;

DBGrid1: TDBGrid;

DataSource1: TDataSource;

ADOTable1: TADOTable;

procedure FormShow(Sender: TObject);

procedure FormHide(Sender: TObject);

procedure ComboBox1Change(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form12: TForm12;

implementation

uses Unit5, Unit8;

{$R *.dfm}

procedure TForm12.FormShow(Sender: TObject);

var i:integer;

begin

DateTimePicker1.DateTime:=now;

DateTimePicker2.DateTime:=now;

Edit4.Text:='0';

Edit5.Text:='0';

If Form8.ADOTable1.Active then begin

Form8.ADOTable1.First;

for i:=0 to Form8.ADOTable1.RecordCount-1 do begin

ComboBox1.Items.Add(Form8.ADOTable1.Fields[0].AsString);

Form8.ADOTable1.Next;

end;end;

If Form5.ADOTable1.Active then begin

Form5.ADOTable1.First;

for i:=0 to Form5.ADOTable1.recordCount-1 do begin

if Form5.ADOTable1.Fields[4].AsString='' then

Combobox2.items.Add(Form5.ADOTable1.Fields[5].AsString);

Form5.ADOTable1.Next;

end;end;

if Combobox1.Items.Count>0 then Combobox1.ItemIndex:=0;

Form8.ADOTable1.Filtered:=true;

Form8.Adotable1.Filter:='[№ путевого листа]='+Combobox1.Text;

end;

procedure TForm12.FormHide(Sender: TObject);

begin

Combobox1.Clear;

end;

procedure TForm12.ComboBox1Change(Sender: TObject);

begin

ADOTable1.Filtered:=true;

Adotable1.Filter:='[№ путевого листа]='+Combobox1.Text;

end;

procedure TForm12.Button2Click(Sender: TObject);

begin

ADOTable1.Edit;

ADOTable1.Fields[3].AsString:=DateToStr(DateTimePicker1.Date);

ADOTable1.Fields[4].AsString:=TimeToStr(DateTimePicker2.Time);

ADOTable1.Fields[10].AsInteger:=Strtoint(Edit5.Text);

ADOTable1.Fields[11].AsInteger:=Strtoint(Edit4.Text);

ADOTable1.Fields[15].AsString:=Combobox2.Text;

ADOTable1.Post;

end;

procedure TForm12.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Edit4.Text:='';

Edit5.Text:='';

Combobox1.Text:='';

Combobox1.Clear;

Combobox2.Text:='';

Combobox2.Clear;

end;

procedure TForm12.Button3Click(Sender: TObject);

begin

Form12.Close;

end;

end.

unit Unit13;

interface

uses

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

Dialogs, DB, ADODB, ExtCtrls, DBCtrls, StdCtrls, Grids, DBGrids, MyWord;

type

TForm13 = class(TForm)

DBGrid1: TDBGrid;

Button1: TButton;

DBNavigator1: TDBNavigator;

Button2: TButton;

DataSource1: TDataSource;

ADOTable1: TADOTable;

Button3: TButton;

Button4: TButton;

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form13: TForm13;

implementation

uses Unit16, Unit17;

{$R *.dfm}

procedure TForm13.Button2Click(Sender: TObject);

var table:integer;

begin

if CreateWord then begin

VisibleWord(false);

AddDoc;

SetAlbumOrientation;

SetFont('Times New Roman',14,false,false);

SetTextToDoc('Автотранспорт',false);

ADOTable1.DisableControls;

WordTableAddFromDBGrid(DBGrid1,true,table);

VisibleWord(true);

ADOTable1.EnableControls;

SaveDocAs('C:\Рабочий файл TaxiManager.doc');

end

else begin

ShowMessage('MS Word не найден - дальнейшая обработа отчёта невозможна. '+

'Пожалуйста, установите MS Word');

Form13.Close;

end;

end;

procedure TForm13.Button1Click(Sender: TObject);

begin

ADOTable1.Refresh;

Form13.Hide;

end;

procedure TForm13.Button3Click(Sender: TObject);

begin

Form16.Show;

end;

procedure TForm13.Button4Click(Sender: TObject);

begin

Form17.Show;

end;

end.

unit Unit14;

interface

uses

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

Dialogs, StdCtrls, ComCtrls, MyWord, DB, Grids, DBGrids, ADODB;

type

TForm14 = class(TForm)

Label1: TLabel;

DateTimePicker1: TDateTimePicker;

Button1: TButton;

Button2: TButton;

ADOTable1: TADOTable;

DBGrid1: TDBGrid;

DataSource1: TDataSource;

procedure FormShow(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure DateTimePicker1Change(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form14: TForm14;

implementation

{$R *.dfm}

procedure TForm14.FormShow(Sender: TObject);

begin

DateTimePicker1.DateTime:=now;

ADOTable1.Filtered:=true;

Adotable1.Filter:='[День начала смены]='+Datetostr(DateTimePicker1.DateTime);

end;

procedure TForm14.Button2Click(Sender: TObject);

begin

Form14.Hide

end;

procedure TForm14.Button1Click(Sender: TObject);

var table:integer;

begin

if CreateWord then begin

VisibleWord(false);

AddDoc;

SetAlbumOrientation;

SetFont('Times New Roman',14,false,false);

SetTextToDoc('Отчёт по сменам диспетчеров за '

+DateToStr(DateTimePicker1.DateTime),false);

ADOTable1.DisableControls;

WordTableAddFromDBGrid(DBGrid1,true,table);

VisibleWord(true);

ADOTable1.EnableControls;

SaveDocAs('C:\Рабочий файл TaxiManager.doc');

end

else begin

MessageDlg('MS Word не найден - дальнейшая обработка отчёта невозможна. '+

'Пожалуйста, установите MS Word',mtError,[mbOk],0);

Form14.Close;

end;

Form14.Hide

end;

procedure TForm14.DateTimePicker1Change(Sender: TObject);

begin

ADOTable1.Filtered:=true;

Adotable1.Filter:='[День начала смены]='+Datetostr(DateTimePicker1.DateTime);

end;

end.

unit Unit15;

interface

uses

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

Dialogs, DB, ADODB, Grids, DBGrids, StdCtrls, ComCtrls, MyWord;

type

TForm15 = class(TForm)

Label1: TLabel;

DateTimePicker1: TDateTimePicker;

Button1: TButton;

Button2: TButton;

DBGrid1: TDBGrid;

ADOTable1: TADOTable;

DataSource1: TDataSource;

procedure FormShow(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure DateTimePicker1Change(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form15: TForm15;

implementation

uses Unit14;

{$R *.dfm}

procedure TForm15.FormShow(Sender: TObject);

begin

DateTimePicker1.DateTime:=now;

ADOTable1.Filtered:=true;

Adotable1.Filter:='[Дата выезда]='+Datetostr(DateTimePicker1.DateTime);

end;

procedure TForm15.Button2Click(Sender: TObject);

begin

Form15.Hide;

end;

procedure TForm15.Button1Click(Sender: TObject);

var table:integer;

begin

if CreateWord then begin

VisibleWord(false);

AddDoc;

SetAlbumOrientation;

SetFont('Times New Roman',10,false,false);

SetTextToDoc('Отчёт по путевым листам за '

+DateToStr(DateTimePicker1.DateTime),false);

ADOTable1.DisableControls;

WordTableAddFromDBGrid(DBGrid1,true,table);

VisibleWord(true);

ADOTable1.EnableControls;

SaveDocAs('C:\Рабочий файл TaxiManager.doc');

end

else begin

MessageDlg('MS Word не найден - дальнейшая обработка отчёта невозможна. '+

'Пожалуйста, установите MS Word',mtError,[mbOk],0);

Form14.Close;

end;

Form14.Hide

end;

procedure TForm15.DateTimePicker1Change(Sender: TObject);

begin

ADOTable1.Filtered:=true;

Adotable1.Filter:='[Дата выезда]='+Datetostr(DateTimePicker1.DateTime);

end;

end.

unit Unit16;

interface

uses

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

Dialogs, StdCtrls, ComCtrls;

type

TForm16 = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

DateTimePicker1: TDateTimePicker;

Button1: TButton;

Button2: TButton;

Label5: TLabel;

Edit1: TEdit;

ComboBox1: TComboBox;

Edit2: TEdit;

Label6: TLabel;

Label7: TLabel;

procedure FormShow(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Edit1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure DateTimePicker1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure ComboBox1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure Edit2KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure FormHide(Sender: TObject);

procedure ComboBox1Select(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure Edit1Exit(Sender: TObject);

procedure ComboBox1Exit(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form16: TForm16;

a:integer;

implementation

uses Unit13;

{$R *.dfm}

procedure TForm16.FormShow(Sender: TObject);

var i,b:integer;

begin

Combobox1.SetFocus;

DateTimePicker1.DateTime:=now;

Form13.ADOTable1.Last;

Edit2.Text:='0';

Form13.ADOTable1.First;

b:=Form13.ADOTable1.Fields[4].AsInteger;

for i:=0 to Form13.ADOTable1.RecordCount-1 do begin

ComboBox1.Items.Add(Form13.ADOTable1.Fields[0].AsString);

if Form13.ADOTable1.Fields[4].AsInteger>b then

b:=Form13.ADOTable1.Fields[4].AsInteger;

Form13.ADOTable1.Next;

end;

Edit1.Text:=inttostr(b+1);

if Combobox1.Items.Count>0 then Combobox1.ItemIndex:=0;

Form13.ADOTable1.Locate('№',Combobox1.Text,[]);

label7.Caption:=Form13.ADOTable1.Fields[1].AsString;

end;

procedure TForm16.Button1Click(Sender: TObject);

begin

if a>0 then begin

MessageDLG('Ошибка: номер талона не должен повторяться.',mtError,[mbOk],0);

Form16.Close;end;

if edit1.Text='' then begin

MessageDLG('Ошибка: пустое поле "Номер талона".',mtError,[mbOk],0);

Form16.Close;end;

Form13.ADOTable1.Locate('№',Combobox1.Text,[]);

Form13.ADOTable1.Edit;

if Form13.ADOTable1.Active then begin

Form13.ADOTable1.Fields[3].Clear;

Form13.ADOTable1.Fields[4].Clear;

Form13.ADOTable1.Fields[3].AsString:=Datetostr(DateTimePicker1.Date);

Form13.ADOTable1.Fields[4].AsInteger:=StrToInt(Edit1.Text);

Form13.ADOTable1.Fields[2].AsInteger:=Form13.ADOTable1.Fields[2].AsInteger+

StrToInt(Edit2.Text);

//Form13.ADOTable1.Post;

end;

Form13.ADOTable1.Post;

Form13.ADOTable1.Refresh;

Form16.Hide;

end;

procedure TForm16.Button2Click(Sender: TObject);

begin

Form13.ADOTable1.CancelUpdates;

Form13.ADOTable1.Cancel;

Form16.Hide;

end;

procedure TForm16.Edit1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then Edit2.SetFocus;

end;

procedure TForm16.DateTimePicker1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then Edit1.SetFocus;

end;

procedure TForm16.ComboBox1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then DateTimePicker1.SetFocus;

end;

procedure TForm16.Edit2KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then Button1.SetFocus;

end;

procedure TForm16.FormHide(Sender: TObject);

begin

Combobox1.Items.Clear;

Label7.Caption:='';

Edit1.Clear;

Edit2.Clear;

end;

procedure TForm16.ComboBox1Select(Sender: TObject);

var i:integer;

begin

Form13.ADOTable1.First;

for i:=0 to Form13.ADOTable1.RecordCount-1 do begin

if Strtoint(combobox1.Text)=Form13.ADOTable1.Fields[0].AsInteger then

label7.Caption:=Form13.ADOTable1.Fields[1].AsString;

Form13.ADOTable1.Next;

end;

Form13.ADOTable1.Locate('№',Combobox1.Text,[]);

end;

procedure TForm16.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Form13.ADOTable1.CancelUpdates;

Form13.ADOTable1.Cancel;

Form16.Hide;

end;

procedure TForm16.Edit1Exit(Sender: TObject);

var i:integer;

begin

Form13.ADOTable1.First;

if edit1.Text='' then

MessageDLG('Поле не должно быть пустым.',mtWarning,[mbOk],0);

for i:=0 to Form13.ADOTable1.RecordCount-1 do begin

if (Combobox1.Text<>Form13.ADOTable1.Fields[0].AsString)

and (Edit1.Text=Form13.ADOTable1.Fields[4].AsString) then begin

MessageDLG('Ошибка: номер талона не должен повторяться.',mtError,[mbOk],0);

a:=1;

end;

Form13.ADOTable1.Next;

end;

end;

procedure TForm16.ComboBox1Exit(Sender: TObject);

var i:integer;

begin

if combobox1.Text='' then

MessageDLG('Поле не должно быть пустым.',mtWarning,[mbOk],0);

Form13.ADOTable1.First;

for i:=0 to Form13.ADOTable1.RecordCount-1 do begin

if (Combobox1.Text<>Form13.ADOTable1.Fields[0].AsString)

and (Edit1.Text=Form13.ADOTable1.Fields[4].AsString) then begin

MessageDLG('Ошибка: номер талона не должен повторяться.',mtError,[mbOk],0);

a:=1;

end;

Form13.ADOTable1.Next;

end;

end;

end.

unit Unit17;

interface

uses

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

Dialogs, StdCtrls, ComCtrls;

type

TForm17 = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

DateTimePicker1: TDateTimePicker;

Label5: TLabel;

Button1: TButton;

Button2: TButton;

Edit2: TEdit;

ComboBox1: TComboBox;

procedure FormShow(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure FormHide(Sender: TObject);

procedure ComboBox1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure DateTimePicker1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure Edit2KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure ComboBox1Select(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form17: TForm17;

implementation

uses Unit13, Unit9;

{$R *.dfm}

procedure TForm17.FormShow(Sender: TObject);

var i:integer;

begin

Combobox1.SetFocus;

DateTimePicker1.DateTime:=now;

Form13.ADOTable1.First;

for i:=0 to Form13.ADOTable1.RecordCount-1 do begin

ComboBox1.Items.Add(Form13.ADOTable1.Fields[4].AsString);

Form13.ADOTable1.Next;

end;

if Combobox1.Items.Count>0 then Combobox1.ItemIndex:=0;

end;

procedure TForm17.Button1Click(Sender: TObject);

var i:integer;

begin

Form13.ADOTable1.Locate('№ талона пополнения',Combobox1.Text,[]);

Form13.ADOTable1.Edit;

if Form13.ADOTable1.Active then begin

Form13.ADOTable1.Fields[5].Clear;

Form13.ADOTable1.Fields[5].AsString:=Datetostr(DateTimePicker1.Date);

Form13.ADOTable1.Fields[2].AsInteger:=Form13.ADOTable1.Fields[2].AsInteger-

StrToInt(Edit2.Text);

end;

Form13.ADOTable1.Post;

Form13.ADOTable1.Refresh;

Form9.Edit4.Text:=inttostr(strtoint(Form9.Edit4.Text)+strtoint(Edit2.Text));

Form17.Hide;

end;

procedure TForm17.Button2Click(Sender: TObject);

begin

Form13.ADOTable1.CancelUpdates;

Form13.ADOTable1.Cancel;

Form17.Hide;

end;

procedure TForm17.FormHide(Sender: TObject);

begin

Combobox1.Items.Clear;

Edit2.Clear;

end;

procedure TForm17.ComboBox1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then DateTimePicker1.SetFocus;

end;

procedure TForm17.DateTimePicker1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then Edit2.SetFocus;

end;

procedure TForm17.Edit2KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if Ord(key)= 13 then Button1.SetFocus;

end;

procedure TForm17.ComboBox1Select(Sender: TObject);

begin

Form13.ADOTable1.Locate('№ талона пополнения',Combobox1.Text,[]);

end;

end.

Рис. 2.1: Головна форма

Рис. 2.2: Водії

Рис. 2.3: Диспетчери

Рис. 2.4:Автотранспорт

Рис.2.5: Бензин

Рис. 2.6: Форма внесення талону на бензин

Рис. 2.7: Зміни диспетчерів

Рис. 2.8: Денний звіт зі змін диспетчерів

Рис. 2.9: Маршрутні листи

Рис. 2.10: Денний звіт з маршрутних листів

Рис. 2.11: Форма відкриття маршрутного листа

Рис. 2.12: Форма видачі бензина

Рис. 2.13: Форма закриття маршрутного листа

Рис. 2.14: Форма введення нової зміни диспетчера

Рис. 2.15: Форма закриття зміни диспетчера