Диплом: Автоматизация приема и обработки заявок отделом техподдержки ООО "РУТОЛЛ"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
107
107
23. Малыхина М. П. Базы данных: основы, проектирование,
использование : [принципы построения баз данных и СУБД, концептуальное
проектирование баз данных, реляционная модель данных, языки
программирования баз данных, администрирование баз данных : учебное
пособие для студентов вузов, обучающихся по направлению подготовки
"Информатика и вычислительная техника"] / М. П. Малыхина. - 2-е изд. -
Санкт-Петербург : БХВ-Петербург, 2017. -528 с.
24. Мишенин А. И. Сборник задач по программированию[ :
простейшие программы, циклы и массивы, обработка матриц, численные
методы, обработка символьной информации : учебно-методическое пособие
для студентов высших учебных заведений, обучающихся по специальности
080801 "Прикладная информатика (по областям)" и другим
междисциплинарным специальностям] / А. И. Мишенин. - Москва : Финансы
и статистика : ИНФРА-М, 2017. - 221с.
25. Никсон Робин. Создаем динамические веб-сайты с помощью
PHP, MySQL и JavaScript / Робин Никсон ; [пер. с англ. Н. Вильчинский]. -
Санкт-Петербург : Питер, 2015.
26. Романова, Ю. Д. Информатика и информационные технологии:
конспект лекций / Ю. Д. Романова, И. Г. Лесничая - Москва: Эксмо, 2016.
440 с.
27. Савицкий, Н. И. Экономическая информатика / Н. И. Савицкий. -
М.: Экономистъ, 2005. 334 с.
28. Симонович, С. В. Общая информатика / С. В. Симонович. -
Санкт-Петербург: Питер, 2018. 561 с.
29. Сингаевская Г. И. Функции в Microsoft Office Excel 2007 :
[основы работы в Excel 2007, включая создание графиков и диаграмм, работу
с формулами, использование имен, использование функций и других средств
Excel 2007 в научных и прикладных задачах, в статистическом анализе,
108
108
финансовых расчетах, программирование на языке VBA - создание макросов,
программ, разработка собственных функций] / Г. И. Сингаевская. - Москва
др.] : Диалектика, 2018.
30. Фаронов В. В. Delphi : программирование на яз. Высокого
уровня: [Учеб. для вузов по направлению подгот. дипломир. специалистов
"Информатика и вычисл. техника" / В. В. Фаронов. - СПб. и др. : Питер, 2015.
- 639 с.
31. Фаронов В. В. Delphi. Программирование на языке высокого
уровня : [учебник для студентов высших учебных заведений, обучающихся
по направлению подготовки дипломированных специалистов "Информатика
и вычислительная техника"] / В. В. Фаронов. - Санкт- Петербург [и др.] :
Питер, 2017. - 639 с.
32. Фаронов В. В. Программирование баз данных в Delphi :
[реализация соврем. технологий баз данных средствами Delphi] / В. Фаронов.
- СПб.др.] : Питер, 2015. - 458 с.
33. Фельдман С. К. Система программирования DELPHI без
секретов: как создать приложение для Windows с "нуля" : энциклопедия /
Сергей Фельдман.- М. : Новый изд. домдр.], 2015. – 688 с.
34. Фролов И. М. Энциклопедия Microsoft Office 2003 : [рук. по
новейшей версии пакета Microsoft office] / Иван Фролов. - М. : Новый изд.
дом, 2015. – 911 с.
.
109
109
ПРИЛОЖЕНИЯ
Приложение 1
Form__zakaz_add.pas
unit Form__zakaz_add;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Vcl.Grids, Vcl.DBGrids,
Vcl.StdCtrls;
type
TForm_zakaz_add = class(TForm)
Label_id_klient: TLabel;
GroupBox1: TGroupBox;
Edit_family: TEdit;
Edit_name: TEdit;
Edit_second_name: TEdit;
Edit_adres: TEdit;
Edit_phone: TEdit;
Button_add: TButton;
GroupBox4: TGroupBox;
Label12: TLabel;
Label14: TLabel;
Memo_galoba: TMemo;
GroupBox2: TGroupBox;
Label10: TLabel;
Edit_family_klient: TEdit;
DBGrid_klient: TDBGrid;
GroupBox3: TGroupBox;
Label11: TLabel;
Label13: TLabel;
DBGrid_gruppa: TDBGrid;
Edit_gruppa_find: TEdit;
Button_delete: TButton;
110
110
procedure viev_klient();
procedure view_gruppa();
procedure Button_addClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Edit_family_klientChange(Sender: TObject);
procedure Edit_gruppa_findChange(Sender: TObject);
procedure DBGrid_klientCellClick(Column: TColumn);
procedure Button_deleteClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form_zakaz_add: TForm_zakaz_add;
implementation
uses datamodule, form__main;
{$R *.dfm}
procedure TForm_zakaz_add.Button_addClick(Sender: TObject);
var buf_zapros, buf_kav : string; run_procedure : boolean;
id_klient,id_zakaz : integer; myYear, myMonth, myDay : Word;
date_sql : string; myHour, myMin, mySec, myMilli : Word;
begin
buf_kav := ''''; run_procedure := True;
form_zakaz_add.Label6.Caption := ''; form_zakaz_add.Label7.Caption := '';
form_zakaz_add.Label8.Caption := ''; form_zakaz_add.Label9.Caption := '';
form_zakaz_add.Label13.Caption := ''; form_zakaz_add.Label14.Caption := '';
form_zakaz_add.Label15.Caption := '';
//проверяю введенные данные
if length(form_zakaz_add.Edit_family.Text) = 0 then
begin run_procedure := False; form_zakaz_add.Label6.Caption := 'Не введена фамилия заказчика';
end;
if length(form_zakaz_add.Edit_name.Text) = 0 then
begin run_procedure := False; form_zakaz_add.Label7.Caption := 'Не введено имя заказчика';
end;
if length(form_zakaz_add.Edit_second_name.Text) = 0 then
begin
run_procedure := False; form_zakaz_add.Label8.Caption := 'Не введено отчество заказчика';
end;
111
111
if length(form_zakaz_add.Edit_adres.Text) = 0 then
begin run_procedure := False; form_zakaz_add.Label9.Caption := 'Не введен адрес заказчика';
end;
if length(form_zakaz_add.Edit_phone.Text) = 0 then
begin
run_procedure := False;
form_zakaz_add.Label15.Caption := 'Не введен телефон заказчика';
end;
if form_zakaz_add.DBGrid_gruppa.DataSource.DataSet.RecordCount = 0 then
begin run_procedure := False; form_zakaz_add.Label13.Caption := 'Не выбрана рабочая группа';
end;
if run_procedure then
begin
if form_zakaz_add.Label_id_klient.Caption <> '0' then
begin
buf_zapros := 'INSERT into klient (family,first_name,second_name, adres, phone) VALUES ('
+buf_kav+form_zakaz_add.Edit_family.Text+buf_kav+','
+buf_kav+form_zakaz_add.Edit_name.Text+buf_kav+','
+buf_kav+form_zakaz_add.Edit_second_name.Text+buf_kav+','
+buf_kav+form_zakaz_add.Edit_adres.Text+buf_kav+','
+buf_kav+form_zakaz_add.Edit_phone.Text+buf_kav+');';
datamodule1.Query_add.Close; datamodule1.Query_add.SQL.Clear;
datamodule1.Query_add.SQL.Text := buf_zapros; datamodule1.Query_add.ExecSQL;
datamodule1.Query_add.Close;
//узнаю идентификатор клиента id_klient
buf_zapros := 'SELECT LAST_INSERT_ID();';
datamodule1.Query_add.Close; datamodule1.Query_add.SQL.Clear;
datamodule1.Query_add.SQL.Text := buf_zapros;
datamodule1.Query_add.Open; datamodule1.Query_add.First;
id_klient :=datamodule1.Query_adD.Fields[0].AsInteger;
datamodule1.Query_add.Close;
form_zakaz_add.Label_id_klient.Caption := inttostr(id_klient);
end;//if form_zakaz_add.Label_id_klient.Caption <> '0' then
DecodeDate(Now(), myYear, myMonth, myDay);
DecodeTime(Now(), myHour, myMin, mySec, myMilli);
date_sql := inttostr(myYear)+'-'+inttostr(myMonth)+'-'+inttostr(myDay)+'-'+inttostr(myHour)+'-
'+inttostr(myMin)+'-'+inttostr(mySec);
buf_zapros := 'INSERT INTO zakaz (id_klient,date_begin,comment_galoba,id_status,id_gruppa) VALUES ('
+form_zakaz_add.Label_id_klient.Caption+','
+buf_kav+date_sql+buf_kav+','
112
112
+buf_kav+form_zakaz_add.Memo_galoba.Text+buf_kav+',2,'
+form_zakaz_add.DBGrid_gruppa.DataSource.DataSet.Fields[0].AsString+');';
datamodule1.Query_add.Close; datamodule1.Query_add.SQL.Clear;
datamodule1.Query_add.SQL.Text := buf_zapros; datamodule1.Query_add.ExecSQL;
datamodule1.Query_add.Close;
//вношу коментарий в БД что создано обращение
//узнаю номер заказа
buf_zapros := 'SELECT LAST_INSERT_ID();';
datamodule1.Query_add.Close; datamodule1.Query_add.SQL.Clear;
datamodule1.Query_add.SQL.Text := buf_zapros; datamodule1.Query_add.Open;
datamodule1.Query_add.First; id_zakaz :=datamodule1.Query_adD.Fields[0].AsInteger;
datamodule1.Query_add.Close; DecodeDate(Now(), myYear, myMonth, myDay);
DecodeTime(Now(), myHour, myMin, mySec, myMilli);
date_sql := inttostr(myYear)+'-'+inttostr(myMonth)+'-'+inttostr(myDay)+'-'+inttostr(myHour)+'-
'+inttostr(myMin)+'-'+inttostr(mySec);
buf_zapros := 'INSERT INTO
comment_zakaz(tabel_nomer,datetime_comment,text_comment,id_zakaz,id_gruppa) VALUES ('
+buf_kav+form_main.Label_tabel_nomer.Caption+buf_kav+','
+buf_kav+date_sql+buf_kav+','
+buf_kav+'Создано обращение пользователя'+buf_kav+','
+inttostr(id_zakaz)+','
+form_main.Label_gruppa.Caption+');';
datamodule1.Query_add.Close; datamodule1.Query_add.SQL.Clear;
datamodule1.Query_add.SQL.Text := buf_zapros; datamodule1.Query_add.ExecSQL;
datamodule1.Query_add.Close;
buf_zapros := 'INSERT INTO
comment_zakaz(tabel_nomer,datetime_comment,text_comment,id_zakaz,id_gruppa) VALUES ('
+buf_kav+form_main.Label_tabel_nomer.Caption+buf_kav+','
+buf_kav+date_sql+buf_kav+','
+buf_kav+'Обращение направлено в группу
'+form_zakaz_add.DBGrid_gruppa.DataSource.DataSet.Fields[1].AsString+buf_kav+','
+inttostr(id_zakaz)+','
+form_main.Label_gruppa.Caption+');';
datamodule1.Query_add.Close; datamodule1.Query_add.SQL.Clear;
datamodule1.Query_add.SQL.Text := buf_zapros; datamodule1.Query_add.ExecSQL;
datamodule1.Query_add.Close;
//чищу поля ввода
form_zakaz_add.Edit_family.Text := ''; form_zakaz_add.Edit_name.Text := '';
form_zakaz_add.Edit_second_name.Text := ''; form_zakaz_add.Edit_adres.Text := '';
form_zakaz_add.Edit_phone.Text := ''; form_zakaz_add.Edit_family_klient.Text;
113
113
form_zakaz_add.Edit_gruppa_find.Text; viev_klient(); view_gruppa();
end;//if run_procedure then
end;
procedure TForm_zakaz_add.Button_deleteClick(Sender: TObject);
begin
form_zakaz_add.Label_id_klient.Caption := '0'; form_zakaz_add.Edit_family.Text := '';
form_zakaz_add.Edit_name.Text := ''; form_zakaz_add.Edit_second_name.Text := '';
form_zakaz_add.Edit_phone.Text := ''; form_zakaz_add.Edit_adres.Text := '';
end;
procedure TForm_zakaz_add.DBGrid_klientCellClick(Column: TColumn);
begin
form_zakaz_add.Label_id_klient.Caption :=
form_zakaz_add.DBGrid_klient.DataSource.DataSet.Fields[0].AsString;
form_zakaz_add.Edit_family.Text := form_zakaz_add.DBGrid_klient.DataSource.DataSet.Fields[1].AsString;
form_zakaz_add.Edit_name.Text := form_zakaz_add.DBGrid_klient.DataSource.DataSet.Fields[2].AsString;
form_zakaz_add.Edit_second_name.Text :=
form_zakaz_add.DBGrid_klient.DataSource.DataSet.Fields[3].AsString;
form_zakaz_add.Edit_phone.Text := form_zakaz_add.DBGrid_klient.DataSource.DataSet.Fields[4].AsString;
form_zakaz_add.Edit_adres.Text := form_zakaz_add.DBGrid_klient.DataSource.DataSet.Fields[5].AsString;
end;
procedure TForm_zakaz_add.Edit_family_klientChange(Sender: TObject);
begin viev_klient();end;
procedure TForm_zakaz_add.Edit_gruppa_findChange(Sender: TObject);
begin view_gruppa();end;
procedure TForm_zakaz_add.FormCreate(Sender: TObject);
begin
form_zakaz_add.Label6.Caption := ''; form_zakaz_add.Label7.Caption := '';
form_zakaz_add.Label8.Caption := ''; form_zakaz_add.Label9.Caption := '';
form_zakaz_add.Label13.Caption := ''; form_zakaz_add.Label14.Caption := '';
form_zakaz_add.Label15.Caption := '';end;
procedure TForm_zakaz_add.FormShow(Sender: TObject);
begin viev_klient(); view_gruppa();end;
procedure TForm_zakaz_add.viev_klient();
var buf_zapros,buf_kav : string;
begin
buf_kav := ''''; if length(form_zakaz_add.Edit_family_klient.Text) = 0 then
buf_zapros :='SELECT id_klient, family as Фамилия,first_name as Имя,second_name as Отчество, phone as
Телефон,adres as Адрес from klient ORDER BY family,first_name,second_name;'
else
114
114
buf_zapros :='SELECT id_klient, family as Фамилия,first_name as Имя,second_name as Отчество, phone as
Телефон,adres as Адрес from klient WHERE family like'
+buf_kav+form_zakaz_add.Edit_family_klient.Text+'%'+buf_kav+' ORDER BY
family,first_name,second_name;';
datamodule1.Query_view_klient.Close; datamodule1.Query_view_klient.SQL.Clear;
datamodule1.Query_view_klient.SQL.Text := buf_zapros;
datamodule1.Query_view_klient.Open; form_zakaz_add.DBGrid_klient.Columns[0].Visible := False;
form_zakaz_add.DBGrid_klient.Columns[1].Width := 150; form_zakaz_add.DBGrid_klient.Columns[2].Width :=
150; form_zakaz_add.DBGrid_klient.Columns[3].Width := 150;
form_zakaz_add.DBGrid_klient.Columns[4].Width := 150; form_zakaz_add.DBGrid_klient.Columns[5].Width :=
150;
end;
procedure TForm_zakaz_add.view_gruppa();
var buf_zapros,buf_kav : string;
begin
buf_kav := '''';
if length(form_zakaz_add.Edit_gruppa_find.Text) = 0 then
buf_zapros :='SELECT id_gruppa,name_gruppa as Группа,opisanie as Описание FROM gruppa WHERE
id_gruppa <> 1 ORDER BY name_gruppa;'
else
buf_zapros :='SELECT id_gruppa,name_gruppa as Группа,opisanie as Описание FROM gruppa WHERE
id_gruppa <> 1 AND name_gruppa LIKE '+buf_kav+form_zakaz_add.Edit_gruppa_find.Text+'%'+buf_kav
+' ORDER BY name_gruppa;';
datamodule1.Query_view_gruppa_find.Close; datamodule1.Query_view_gruppa_find.SQL.Clear;
datamodule1.Query_view_gruppa_find.SQL.Text := buf_zapros;
datamodule1.Query_view_gruppa_find.Open;
form_zakaz_add.DBGrid_gruppa.Columns[0].Visible := False;
end;end.
Form__zakaz_work.pas
unit Form__zakaz_work;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Buttons;
type
TForm_zakaz_work = class(TForm)
GroupBox2: TGroupBox;
Edit_family: TEdit;
115
115
Edit_name: TEdit;
Edit_second_name: TEdit;
Edit_adres: TEdit;
Edit_phone: TEdit;
Memo_galoba: TMemo;
Memo_comment: TMemo;
Memo_comment_add: TMemo;
GroupBox1: TGroupBox;
SpeedButton1: TSpeedButton;
Label_vid: TLabel;
Label_usluga: TLabel;
Edit_id_vid: TEdit;
Edit_usluga: TEdit;
Edit_status: TEdit;
Button_add: TButton;
Button_pause: TButton;
Button_close: TButton;
Button_perenaznach: TButton;
Edit_time: TEdit;
Button_close_zakaz: TButton;
procedure view_comment_zakaz;
procedure view_usluga;
procedure FormShow(Sender: TObject);
procedure Button_addClick(Sender: TObject);
procedure Button_pauseClick(Sender: TObject);
procedure Button_closeClick(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure Button_perenaznachClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Edit_timeKeyPress(Sender: TObject; var Key: Char);
procedure Button1Click(Sender: TObject);
procedure Button_close_zakazClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form_zakaz_work: TForm_zakaz_work;
implementation
116
116
uses datamodule, form__main, Form__zakaz_add, Form__view_zakaz,
Form__add_usluga, Form__change_gruppa;
{$R *.dfm}
procedure TForm_zakaz_work.view_usluga;
var buf_zapros : string;
begin
//чищу поля
form_zakaz_work.Edit_id_vid.Text := ''; form_zakaz_work.Edit_usluga.Text := '';
form_zakaz_work.Edit_time.Text := '';
buf_zapros :='SELECT name_vid,usluga.name_usluga FROM zakaz,usluga,vid_usluga WHERE
vid_usluga.id_vid = usluga.vid_usluga AND usluga.id_usluga = zakaz.name_usluga AND id_zakaz ='
+form_zakaz_work.Label_zakaz.Caption+';';
datamodule1.Query_add.Close; datamodule1.Query_add.SQL.Clear;
datamodule1.Query_add.SQL.Text := buf_zapros; datamodule1.Query_add.Open;
datamodule1.Query_add.First; form_zakaz_work.Edit_id_vid.Text := '';
form_zakaz_work.Edit_usluga.Text := '';
form_zakaz_work.Edit_id_vid.Text := datamodule1.Query_add.Fields[0].AsString;
form_zakaz_work.Edit_usluga.Text := datamodule1.Query_add.Fields[1].AsString;
end;
procedure TForm_zakaz_work.Button1Click(Sender: TObject);
var buf_zapros,buf_kav : string;
myYear, myMonth, myDay : Word;
date_sql : string; myHour, myMin, mySec, myMilli : Word;
begin
buf_kav := '''';
if length(form_zakaz_work.Memo_comment_add.Text) <> 0 then
begin
DecodeDate(Now(), myYear, myMonth, myDay); DecodeTime(Now(), myHour, myMin, mySec, myMilli);
date_sql := inttostr(myYear)+'-'+inttostr(myMonth)+'-'+inttostr(myDay)+'-'+inttostr(myHour)+'-
'+inttostr(myMin)+'-'+inttostr(mySec);
buf_zapros := 'INSERT INTO
comment_zakaz(tabel_nomer,datetime_comment,text_comment,id_zakaz,id_gruppa) VALUES ('
+buf_kav+form_main.Label_tabel_nomer.Caption+buf_kav+','
+buf_kav+date_sql+buf_kav+','
+buf_kav+form_zakaz_work.Memo_comment_add.Text+buf_kav+','
+form_zakaz_work.Label_zakaz.Caption+','
+form_main.Label_gruppa.Caption+');';
datamodule1.Query_add.Close; datamodule1.Query_add.SQL.Clear;
datamodule1.Query_add.SQL.Text := buf_zapros; datamodule1.Query_add.ExecSQL;
datamodule1.Query_add.Close; form_zakaz_work.Memo_comment_add.Text := '';

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)