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

5 Индивидуальное задание

Для индивидуального задания я и руководитель выбрали программу для оптимизации обращения клиентов в ЧП, а именно в отдел ремонта.

Программа состоит из 3-х окон, о которых речь пойдет ниже.

Рис. 7 Главное окно программы

В главном окне мы можем просмотреть список всех клиентов и заявок, редактировать или удалить их, найти по id или фамилии. Это сделано для ускорения процесса поиска.

Рис. 8 Добавление клиента

При добавлении клиента, пользователь вводит ФИО, адрес и контактный телефон для связи с клиентом, а так же для доставки на дом. Так же вводится конфигурация оборудования, чтобы мастер сразу же мог посмотреть с чем могут быть неполадки, и приблизительную стоимость ремонта (если клиент просит проконсультировать его).

Рис. 9 Добавление заявки

При добавлении заявки пользователь вводит свой id (он указан на компьютере сверху или сбоку). Далее он выбирает из списка время, когда возникает неполадка, наличие антивируса, и возможную ошибку (если такова имеется). Так же он может написать в примечании полезную информацию (например, что при чистке оставить фалы на локальном диске, или что программы не запускаются).

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

Листинг программы:

unit Unit1;

interface

uses

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

Dialogs, StdCtrls, DB, ZAbstractRODataset, ZAbstractDataset, ZDataset;

type

TForm1 = class(TForm)

Edit1: TEdit;

Memo1: TMemo;

ComboBox1: TComboBox;

Label1: TLabel;

Label4: TLabel;

Label5: TLabel;

ComboBox2: TComboBox;

ComboBox3: TComboBox;

Label6: TLabel;

Label7: TLabel;

Button1: TButton;

Label2: TLabel;

ZQuery1: TZQuery;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit3, Unit2;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var

idp, time, ant, err, com: string;

begin

idp := Edit1.Text;

time := (ComboBox1.Text);

ant := (ComboBox2.Text);

err := (ComboBox3.Text);

com := (Memo1.Text);

ZQuery1.SQL.Text :=

'INSERT INTO zayavka (id_c,time,antiv,error,comm,status) VALUES ("' + idp +

'","' + time + '","' + ant + '","' + err + '","' + com + '",1)';

ZQuery1.Active;

ZQuery1.ExecSQL;

Unit1.Form1.Close;

end;

end.

unit Unit2;

interface

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

Dialogs, StdCtrls, DB, ZAbstractRODataset, ZAbstractDataset, ZDataset;

Type

TForm2 = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

Edit5: TEdit;

Button1: TButton;

Label6: TLabel;

ComboBox1: TComboBox;

Label7: TLabel;

ComboBox2: TComboBox;

Label8: TLabel;

ComboBox3: TComboBox;

Label9: TLabel;

ComboBox4: TComboBox;

Label11: TLabel;

ComboBox5: TComboBox;

Label12: TLabel;

ZQuery1: TZQuery;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

uses Unit3, Unit1;

{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);

var

fam, name, sname, adr, tel, mb, vid, proc, ram, soun: string;

begin

fam := Edit1.Text;

name := Edit2.Text;

sname := Edit3.Text;

adr := Edit4.Text;

tel := Edit5.Text;

mb := ComboBox1.Text;

vid := ComboBox2.Text;

proc := ComboBox3.Text;

ram := ComboBox4.Text;

soun := ComboBox5.Text;

ZQuery1.SQL.Text :=

'INSERT INTO client (firsname,name,secname,adress,tel,mb,video,proc,ram,sound) VALUES ("' + fam + '","' + name + '","' + sname + '","' + adr + '","' + tel + '","' + mb + '","' + vid + '","' + proc + '","' + ram + '","' + soun + '")';

ZQuery1.ExecSQL;

Unit2.Form2.Close;

end;

end.

unit Unit3;

interface

uses

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

Dialogs, WideStrings, FMTBcd, SqlExpr, DB, Grids, DBGrids, ZAbstractRODataset,

ZAbstractDataset, ZDataset, ZConnection, Menus, StdCtrls;

type

TForm3 = class(TForm)

DBGrid1: TDBGrid;

ZConnection1: TZConnection;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

DBGrid2: TDBGrid;

DataSource2: TDataSource;

DataSource1: TDataSource;

ZQuery1: TZQuery;

ZQuery2: TZQuery;

Button1: TButton;

N8: TMenuItem;

Button2: TButton;

Button3: TButton;

Edit1: TEdit;

Button4: TButton;

Button5: TButton;

Edit2: TEdit;

Button6: TButton;

Button7: TButton;

Button8: TButton;

procedure N2Click(Sender: TObject);

procedure N4Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure N8Click(Sender: TObject);

procedure N7Click(Sender: TObject);

private

{ Private declarations }

public

Form2 : TForm;

Form1 : Tform;

end;

var

Form3: TForm3;

implementation

uses Unit2,Unit1;

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);

begin

ZQuery1.Refresh;

ZQuery2.Refresh;

end;

procedure TForm3.N2Click(Sender: TObject);

begin

Unit2.Form2.Show;

end;

procedure TForm3.N4Click(Sender: TObject);

begin

Unit1.Form1.Show;

end;

procedure TForm3.N7Click(Sender: TObject);

begin

Form3.Close;

end;

procedure TForm3.N8Click(Sender: TObject);

begin

ZQuery1.SQL.Text:='DELETE FROM client WHERE id = '+IntToStr(DBGrid1.Fields[0].AsInteger)+'';

ZQuery1.ExecSQL;

DataSource1.DataSet.Active;

ZQuery1.SQL.Text:='SELECT * FROM client';

ZQuery1.ExecSQL;

end;

end.