Дипломная работа: Автоматизация процесса внутрикорпоративного взаимодействия сотрудников компании ООО "Ситилинк"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
108
end;
procedure TForm_podproekt.view_podproekt;
var buf_Zapros, buf_kav : string;
begin
if Form_podproekt.DBGrid_proekt.DataSource.DataSet.RecordCount <> 0 then
begin
buf_kav := '''';
buf_zapros := 'SELECT pod_proekt.id_pod_proekt,
pod_proekt.name_pod_proekt as Название_подпроекта, pod_proekt.date_begin as
Дата_начала, pod_proekt.date_end as Дата_конца_проекта '
+' FROM pod_proekt '
+' WHERE pod_proekt.id_proekt =
'+Form_podproekt.DBGrid_proekt.DataSource.DataSet.FieldByName('id_proekt').AsStri
ng
+' and status = 0'
+' ORDER BY pod_proekt.date_begin, pod_proekt.date_end;';
datamodule1.Query_podproekt.Close;
datamodule1.Query_podproekt.SQL.Clear;
datamodule1.Query_podproekt.SQL.Text := buf_Zapros;
datamodule1.Query_podproekt.Open;
view_dbgrid_podproekt;
open_document_comment;
end
else
begin
datamodule1.Query_view_podproekt.Active := False;
close_document_comment;
end;
view_sotrudnik_proekt;
view_document;
view_comment;
end;
procedure TForm_podproekt.close_document_comment;
begin
Form_podproekt.Button_add_document.Visible := False;
Form_podproekt.GroupBox_add_comment.Visible := False;
end;
procedure TForm_podproekt.open_document_comment;
begin
Form_podproekt.Button_add_document.Visible := True;
Form_podproekt.GroupBox_add_comment.Visible := True;
end;
procedure TForm_podproekt.view_sotrudnik_proekt;
var buf_zapros, buf_kav : string;
109
begin
if datamodule1.Query_podproekt.Active <> False then
begin
buf_kav := '''';
buf_zapros := 'SELECT sotrudnik.tabel_nomer as Табель_номер,
sotrudnik.family as Фамилия, sotrudnik.first_name as Имя, sotrudnik.second_name as
Отчество '
+' FROM sotrudnik INNER JOIN sotrudnik_pod_proekt ON
sotrudnik.tabel_nomer = sotrudnik_pod_proekt.sotrudnik '
+' WHERE sotrudnik_pod_proekt.id_pod_proekt =
'+Form_podproekt.DBGrid_podproekt.DataSource.DataSet.FieldByName('id_pod_proek
t').AsString
+' ORDER BY sotrudnik.family, sotrudnik.first_name,
sotrudnik.second_name;';
datamodule1.Query_avtor.Close;
datamodule1.Query_avtor.SQL.Clear;
datamodule1.Query_avtor.SQL.Text := buf_zapros;
datamodule1.Query_avtor.Open;
view_dbgrid_sotrudnik;
open_document_comment;
end
else
begin
datamodule1.Query_avtor.Active := False;
close_document_comment;
end;
end;
procedure TForm_podproekt.view_dbgrid_sotrudnik;
begin
Form_podproekt.DBGrid_sotrudnik.Columns[0].Width := 150;
Form_podproekt.DBGrid_sotrudnik.Columns[1].Width := 150;
Form_podproekt.DBGrid_sotrudnik.Columns[2].Width := 150;
Form_podproekt.DBGrid_sotrudnik.Columns[3].Width := 150;
end;
procedure TForm_podproekt.Button_add_documentClick(Sender: TObject);
var run_procedure : boolean;
begin
if (Form_podproekt.DBGrid_podproekt.DataSource.DataSet.RecordCount <> 0)
OR (Form_podproekt.DBGrid_sotrudnik.DataSource.DataSet.RecordCount <> 0) then
begin
add_document;
end;
end;
procedure TForm_podproekt.Button_add_textClick(Sender: TObject);
var run_procedure : boolean;
110
begin
//присваиваю начальные хнччения
run_procedure := True;
//чиищу сообщение об оишбке
clear_label;
//проверяю сообщение
if length(Form_podproekt.Edit_text.Text) = 0 then
begin
run_procedure := False;
Form_podproekt.Label6.Caption := 'Не введен текст сообщения';
end;
//проверка закнчена
if run_procedure then
begin
add_comment;
end;
end;
procedure TForm_podproekt.Button_delete_documentClick(Sender: TObject);
var buf_zapros, buf_kav, buf_name,put : string;
begin
if Form_podproekt.DBGrid_document.DataSource.DataSet.RecordCount <> 0
then
begin
buf_kav := '''';
//удаляю файлы даже если их нет
//put :=
put_dir+Form_podproekt.DBGrid_proekt.DataSource.DataSet.FieldByName('id_proekt')
.AsString+'\'+Form_podproekt.DBGrid_podproekt.DataSource.DataSet.FieldByName('id
_pod_proekt').AsString+'\';
buf_name :=
put_dir+Form_podproekt.DBGrid_proekt.DataSource.DataSet.FieldByName('id_proekt')
.AsString+'\'+Form_podproekt.DBGrid_podproekt.DataSource.DataSet.FieldByName('id
_pod_proekt').AsString+'\'+Form_podproekt.DBGrid_document.DataSource.DataSet.Fiel
dByName('Документ').AsString;
deletefile(buf_name);
//удаляю из БД
buf_zapros := 'DELETE FROM document WHERE name_file =
'+buf_kav+Form_podproekt.DBGrid_document.DataSource.DataSet.FieldByName('Док
умент').AsString+buf_kav
+' AND id_pod_proekt =
'+Form_podproekt.DBGrid_podproekt.DataSource.DataSet.FieldByName('id_pod_proek
t').AsString+';';
datamodule1.Query_buf.Close;
datamodule1.Query_buf.SQL.Clear;
datamodule1.Query_buf.SQL.Text := buf_Zapros;
111
datamodule1.Query_buf.ExecSQL;
datamodule1.Query_buf.Close;
view_document;
end;
end;
procedure TForm_podproekt.add_comment;
var buf_kav, buf_zapros : string;
begin
buf_kav := '''';
buf_Zapros := 'INSERT INTO
comment(id_pod_proekt,avtor,date_add_comment,text_comment) VALUES ('
+Form_podproekt.DBGrid_podproekt.DataSource.DataSet.FieldByName('id_pod_proekt
').AsString+','
+form_main.Label_tabel.Caption+','
+'Now(),'
+buf_kav+Form_podproekt.Edit_text.Text+buf_kav+');';
datamodule1.Query_buf.Close;
datamodule1.Query_buf.SQL.Clear;
datamodule1.Query_buf.SQL.Text := buf_zapros;
datamodule1.Query_buf.ExecSQL;
datamodule1.Query_buf.Close;
//обновляю комменты
datamodule1.Query_comment.Active := False;
datamodule1.Query_comment.Active := True;
view_dbgrid_comment;
//чищу поле вввода
Form_podproekt.Edit_text.Text := '';
end;
procedure TForm_podproekt.clear_label;
begin
Form_podproekt.Label6.Caption := '';
end;
procedure TForm_podproekt.DBGrid_podproektCellClick(Column: TColumn);
begin
view_sotrudnik_proekt;
view_document;
view_comment;
end;
procedure TForm_podproekt.DBGrid_proektCellClick(Column: TColumn);
begin
view_podproekt;
end;
112
procedure TForm_podproekt.FormCreate(Sender: TObject);
begin
clear_label;
end;
procedure TForm_podproekt.FormShow(Sender: TObject);
begin
view_proekt;
end;
procedure TForm_podproekt.view_dbgrid_podproekt;
begin
Form_podproekt.DBGrid_podproekt.Columns[1].Width := 250;
Form_podproekt.DBGrid_podproekt.Columns[2].Width := 150;
Form_podproekt.DBGrid_podproekt.Columns[3].Width := 250;
Form_podproekt.DBGrid_podproekt.Columns[0].Visible := False;
end;
procedure TForm_podproekt.view_dbgrid_proekt;
begin
Form_podproekt.DBGrid_proekt.Columns[1].Width := 450;
Form_podproekt.DBGrid_proekt.Columns[0].Visible := False;
end;
procedure TForm_podproekt.view_document;
var buf_zapros, buf_kav : string;
begin
if datamodule1.Query_podproekt.Active <> False then
begin
buf_kav := '''';
buf_zapros := 'SELECT document.name_file as Документ, document.date_add
as Дата_добавления, '
+' CONCAT(sotrudnik.family,'+buf_kav+' '+buf_kav+',
sotrudnik.first_name,'+buf_kav+' '+buf_kav+', sotrudnik.second_name) as Автор'
+' FROM sotrudnik INNER JOIN document ON sotrudnik.tabel_nomer =
document.avtor '
+' WHERE document.id_pod_proekt
='+form_podproekt.DBGrid_podproekt.DataSource.DataSet.FieldByName('id_pod_proe
kt').AsString+';';
datamodule1.Query_document.Close;
datamodule1.Query_document.SQL.Clear;
datamodule1.Query_document.SQL.Text := buf_zapros;
datamodule1.Query_document.Open;
view_dbgrid_document;
end
else
datamodule1.Query_document.Active := False;
end;
Источник: https://baza.diplomsite.ru/previewfile/2079