Диплом: Автоматизация распределения заданий и учета работы монтажных бригад в ООО "Евромет"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
97
Таблица А.3
Выбор модели ЖЦ на основе характеристик пользователей
Коллектив пользователей
Каскадная
Итерационная
Будет присутствие пользователей ограниченно в
ЖЦ
Да
Да
Будут ли пользователи знакомы с определением
системы
Нет
Да
Будет ли заказчик отслеживать ход выполнения
проекта
Нет
Да
98
Приложение Б
Папка Шаблоны должна лежать в одном каталоге с ехе-файлом Service.exe.
Шаблоны удалять нельзя. Формы отчетов в Шаблонах переименовывать нельзя,
изменять можно, но нельзя менять в них число столбцов и строк (в любом случае
необходимо хранить где-нибудь резервные копии).
Пользователи-мастера:
ФИО
специализация
Логин
Пароль
Шеин Иван Иванович
Главный
программист
Shein
44
Астафьев Сергей Васильевич
Инженер-техник
Astafiev
55
Сметанина Варвара Сергеевна
Инженер
Smetanina
66
Глощенко Сергей Андреевич
Программист
Gloschenko
77
Агапов Василий Иванович
Начальник отдела
Agapov
88
Ухмылкина Ирина Ивановна
Системный
администратор
Uhmilkina
99
Фуфаев Иван Иванович
Заместитель
начальника отдела
Fufaev
10
Абрамов Василий Олегович
Инженер
Abramov
12
Трошкина Марина Сергеевна
Главный инженер
Troshkina
13
Плотничук Полина Павловна
Инженер-
схемотехник
Plotnichuk
14
Хамзин Ринат Анверович
Инженер
Hamzin
pass
Пользователи-приемщики:
ФИО
специализация
Логин
Пароль
Сорокина Анна Ивановна
Sorokina
11
Кротов Антон Сергеевич
Krotov
22
Тривенко Сергей Петрович
Trivenko
33
Администратор:
ФИО
специализация
Логин
Пароль
Администратор
admin
admin
99
Приложение В
Коды программных модулей
Программный модуль ClientUnit.pas
unit ClientUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, Grids, DBGrids, DBCtrls, StdCtrls, Buttons, Mask;
type
TfmClients = class(TForm)
Panel1: TPanel;
DBNavigator1: TDBNavigator;
BitBtn1: TBitBtn;
Panel2: TPanel;
DBGrid1: TDBGrid;
bbtPrint: TBitBtn;
bbtGo: TBitBtn;
procedure FormShow(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure bbtPrintClick(Sender: TObject);
procedure DBGrid1TitleClick(Column: TColumn);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmClients: TfmClients;
implementation
uses DMUnit, ReportsUnit, ADODB, OrderUnit, OrderListUnit;
100
{$R *.dfm}
procedure TfmClients.FormShow(Sender: TObject);
begin
DM.tbClients.Open;
DM.tbClients.Sort := 'ФИО_Наименование';
end;
procedure TfmClients.FormClose(Sender: TObject; var Action: TCloseAction);
begin
//Набор данных закрывается, если он не используется в других формах:
if (not fmOrderList.Showing) and (not fmOrder.Showing) then
DM.tbClients.Close;
end;
procedure TfmClients.bbtPrintClick(Sender: TObject);
begin
Rep_Any(DBGrid1, 7, Self.Caption);
end;
//Сортировка данных в таблице по выбранному столбцу:
procedure TfmClients.DBGrid1TitleClick(Column: TColumn);
begin
try
(DBGrid1.DataSource.DataSet as TADOTable).Sort := Column.FieldName;
except
Application.MessageBox('Сортировка по данному полю невозможна',
'Информация', MB_OK+MB_ICONINFORMATION)
end;
end;
procedure TfmClients.BitBtn1Click(Sender: TObject);
begin
Close;
end;
end.
101
Программный модуль DMUnit.pas
unit DMUnit;
interface
uses
SysUtils, Classes, DB, ADODB;
type
TDM = class(TDataModule)
ADOConnection1: TADOConnection;
tbManagers: TADOTable;
dsManagers: TDataSource;
tbManagersN: TAutoIncField;
tbManagersDSDesigner: TWideStringField;
tbSpec: TADOTable;
dsSpec: TDataSource;
tbSpecID: TAutoIncField;
tbSpecDSDesigner: TWideStringField;
tbClients: TADOTable;
dsClients: TDataSource;
tbClientsID: TAutoIncField;
tbClients_: TWideStringField;
tbClientsDSDesigner: TWideStringField;
tbClientsDSDesigner4: TWideStringField;
tbClientsDSDesigner5: TWideStringField;
tbClientsDSDesigner6: TWideStringField;
tbClientsDSDesigner7: TWideStringField;
tbClientsDSDesigner8: TWideStringField;
tbRequisite: TADOTable;
dsRequisite: TDataSource;
tbRequisiteDSDesigner: TWideStringField;
tbRequisiteDSDesigner2: TWideStringField;
102
tbRequisiteDSDesigner4: TWideStringField;
tbRequisiteDSDesigner5: TWideStringField;
tbRequisiteDSDesigner6: TWideStringField;
tbRequisiteDSDesigner7: TWideStringField;
tbRequisiteDSDesigner8: TWideStringField;
tbStore: TADOTable;
dsStore: TDataSource;
tbStoreDSDesigner: TAutoIncField;
tbStoreDSDesigner2: TWideStringField;
tbStoreDSDesigner3: TWideStringField;
tbStoreDSDesigner4: TWideStringField;
tbStoreDSDesigner5: TIntegerField;
tbStoreDSDesigner6: TBCDField;
tbPrice: TADOTable;
dsPrice: TDataSource;
tbStaff: TADOTable;
dsStaff: TDataSource;
tbStaffN: TAutoIncField;
tbStaffDSDesigner: TWideStringField;
tbStaffID: TIntegerField;
tbStaffIntegerField: TStringField;
tbStoreField: TCurrencyField;
tbPriceDSDesigner: TAutoIncField;
tbPriceDSDesigner2: TWideStringField;
tbPriceDSDesigner3: TWideStringField;
tbPriceDSDesigner4: TFloatField;
tbPriceDSDesigner5: TBCDField;
dsOrders: TDataSource;
dstOrders: TADODataSet;
dstOrdersN: TAutoIncField;
dstOrdersDSDesigner: TDateTimeField;
103
dstOrdersDSDesigner2: TDateTimeField;
dstOrdersID: TIntegerField;
dstOrdersID2: TIntegerField;
dstOrdersID3: TIntegerField;
dstOrdersDSDesigner3: TBCDField;
dstOrdersField: TStringField;
dstOrdersField2: TStringField;
dstOrdersIntegerField: TStringField;
dsJobs: TDataSource;
dstJobs: TADODataSet;
dstJobsN: TIntegerField;
dstJobsID: TIntegerField;
dstJobsDSDesigner: TDateTimeField;
dstJobsID2: TIntegerField;
dstJobsDSDesigner3: TBCDField;
dstJobsField: TStringField;
dstJobsStringField: TStringField;
dstJobsField2: TCurrencyField;
dstJobsDSDesigner2: TFloatField;
dsMat: TDataSource;
dstMat: TADODataSet;
dstMatN: TIntegerField;
dstMat_ID: TIntegerField;
dstMatDSDesigner: TIntegerField;
dstMatDSDesigner2: TBCDField;
dstMatCurrencyField: TCurrencyField;
dstMatStringField: TStringField;
dstOrderJobSum: TADODataSet;
dstOrderJobSumSum1: TFloatField;
dstOrderMatSum: TADODataSet;
FloatField1: TFloatField;
104
dstStatEmp: TADODataSet;
dstStatJobs: TADODataSet;
dstStatEmpDSDesigner2: TFloatField;
dstStatEmpField: TStringField;
dstStatJobsDSDesigner2: TFloatField;
dstStatJobsField: TStringField;
dstStatOrderSum: TADODataSet;
BCDField2: TBCDField;
StringField2: TStringField;
dstStatClientSum: TADODataSet;
dstStatClientSumDSDesigner: TBCDField;
dstStatClientSum_: TStringField;
dstEmpJobList: TADODataSet;
dstEmpJobListDSDesigner: TWideStringField;
dstEmpJobListDSDesigner2: TAutoIncField;
dstEmpJobListDSDesigner3: TFloatField;
dstEmpJobListDSDesigner4: TWideStringField;
dsSupOrders: TDataSource;
dstSupOrders: TADODataSet;
dstSupOrdersN: TAutoIncField;
dstSupOrdersDSDesigner: TDateTimeField;
dsSupCont: TDataSource;
dstSupCont: TADODataSet;
dstSupContN: TIntegerField;
dstSupCont_ID: TIntegerField;
dstSupContDSDesigner: TIntegerField;
dstSupContField: TStringField;
dstStatSupOrderSum: TADODataSet;
BCDField3: TBCDField;
StringField1: TStringField;
tbManagersDSDesigner2: TWideStringField;
105
tbManagersDSDesigner3: TWideStringField;
tbStaffDSDesigner2: TWideStringField;
tbStaffDSDesigner3: TWideStringField;
dstSupOrdersID: TIntegerField;
dstSupOrdersStringField: TStringField;
dsStatus: TDataSource;
dstStatus: TADODataSet;
dstStatusID: TAutoIncField;
dstStatusDSDesigner: TWideStringField;
dstOrdersID4: TIntegerField;
dstOrdersField3: TStringField;
dstOrdersField4: TStringField;
procedure tbStoreCalcFields(DataSet: TDataSet);
procedure dstJobsCalcFields(DataSet: TDataSet);
procedure dstMatCalcFields(DataSet: TDataSet);
procedure DataModuleDestroy(Sender: TObject);
procedure dstOrdersAfterInsert(DataSet: TDataSet);
procedure dstSupOrdersAfterInsert(DataSet: TDataSet);
procedure dstJobsIDChange(Sender: TField);
procedure dstMat_IDChange(Sender: TField);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DM: TDM;
implementation
uses LoginUnit;
{$R *.dfm}
//Расчет суммы каждой позиции материалов на складе:
106
procedure TDM.tbStoreCalcFields(DataSet: TDataSet);
begin
DataSet.FieldByName('Сумма').Value :=
DataSet.FieldByName('Количество').Value *
DataSet.FieldByName('Цена').Value;
end;
//Расчет суммы по каждой выполняемой работе по заказу:
procedure TDM.dstJobsCalcFields(DataSet: TDataSet);
begin
DataSet.FieldByName('Сумма').Value :=
DataSet.FieldByName('Количество').Value *
DataSet.FieldByName('ОплатаЗаНорму').Value;
end;
//Расчет суммы по каждой позиции затраченной материальной ценности по
заказу:
procedure TDM.dstMatCalcFields(DataSet: TDataSet);
begin
DataSet.FieldByName('Сумма').Value :=
DataSet.FieldByName('Количество').Value *
DataSet.FieldByName('Цена').Value;
end;
procedure TDM.DataModuleDestroy(Sender: TObject);
begin
ADOConnection1.Close;
end;
//Для нового заказа записывается ID приемщика:
procedure TDM.dstOrdersAfterInsert(DataSet: TDataSet);
begin
DataSet.FieldByName('МенеджерID').AsInteger := fmLogin.UserID;
end;
//Для новой заявки поставщику записывается ID приемщика:

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

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