Диплом: Автоматизация контроля качества ПАО "Автоваз"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
107
Приложение. Листинг программных модулей
unit Categories;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dxSkinsCore, dxSkinsDefaultPainters, cxStyles, cxGraphics,
cxEdit, cxDropDownEdit, Menus, cxLookAndFeelPainters, StdCtrls,
cxButtons, cxVGrid, cxDBVGrid, cxControls, cxInplaceContainer,
cxLookAndFeels, cxDBLookupComboBox;
type
TfrmCategories = class(TForm)
btnYes: TcxButton;
btnNo: TcxButton;
vgCategories: TcxDBVerticalGrid;
vgCategoriesTypeId: TcxDBEditorRow;
vgCategoriesCategoryName: TcxDBEditorRow;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure btnNoClick(Sender: TObject);
procedure btnYesClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmCategories: TfrmCategories;
108
implementation
uses DataBase;
{$R *.dfm}
procedure TfrmCategories.FormClose(Sender: TObject; var Action:
TCloseAction);
begin
DataInfo.qListTypes.Close;
DataInfo.qCategories.Close;
end;
procedure TfrmCategories.FormShow(Sender: TObject);
begin
DataInfo.qListTypes.Open;
if frmCategories.Tag=1 then
begin
frmCategories.Caption:='Новая категория';
DataInfo.qCategories.Close;
DataInfo.qCategories.Parameters.ParamValues['CategoryId']:=0;
DataInfo.qCategories.Open;
DataInfo.qCategories.Insert;
end
else
begin
frmCategories.Caption:=DataInfo.qListCategories.FieldByName('CategoryName').asS
tring;
DataInfo.qCategories.Close;
109
DataInfo.qCategories.Parameters.ParamValues['CategoryId']:=DataInfo.qListCategori
es.FieldByName('Id').asInteger;
DataInfo.qCategories.Open;
DataInfo.qCategories.Edit;
end;
end;
procedure TfrmCategories.btnNoClick(Sender: TObject);
begin
DataInfo.qCategories.Cancel;
frmCategories.Close;
end;
procedure TfrmCategories.btnYesClick(Sender: TObject);
begin
if DataInfo.qCategories.FieldByName('TypeId').isNull then
begin
MessageDlg('Выберите тип изделия!',mtError,[mbOk],0);
Exit
end;
if DataInfo.qCategories.FieldByName('CategoryName').isNull then
begin
MessageDlg('Укажите название категории!',mtError,[mbOk],0);
Exit
end;
DataInfo.qCategories.Post;
try
Pos:=DataInfo.qListCategories.GetBookmark;
DataInfo.qListCategories.Close;
DataInfo.qListCategories.Open;
DataInfo.qListCategories.GotoBookmark(Pos);
110
finally
DataInfo.qListCategories.FreeBookmark(Pos);
end;
frmCategories.Close;
end;
end.
unit DataBase;
interface
uses
SysUtils, Classes, DB, ADODB, Dialogs;
type
TDataInfo = class(TDataModule)
ADOConnection: TADOConnection;
qQuery: TADOQuery;
qTypes: TADOQuery;
dsTypes: TDataSource;
qCategories: TADOQuery;
dsCategories: TDataSource;
dsUsers: TDataSource;
qUsers: TADOQuery;
qListTypes: TADOQuery;
dsListTypes: TDataSource;
qListCategories: TADOQuery;
dsListCategories: TDataSource;
qListUsers: TADOQuery;
dsListUsers: TDataSource;
111
qTypesId: TAutoIncField;
qListTypesId: TAutoIncField;
qCategoriesId: TAutoIncField;
qListCategoriesId: TAutoIncField;
qUsersId: TAutoIncField;
qUsersUserName: TStringField;
qListUsersId: TAutoIncField;
qListUsersUserName: TStringField;
qUsersPassword: TStringField;
qListUsersPassword: TStringField;
qListWares: TADOQuery;
dsListWares: TDataSource;
qListChecks: TADOQuery;
dsListChecks: TDataSource;
qCategoriesTypeId: TIntegerField;
qCategoriesCategoryName: TWideStringField;
qListTypesTypeName: TWideStringField;
qListCategoriesTypeId: TIntegerField;
qListCategoriesCategoryName: TWideStringField;
qListCategoriesTypeName: TWideStringField;
qListChecksId: TAutoIncField;
qListChecksWareId: TIntegerField;
qListChecksDateCheck: TDateTimeField;
qListChecksUserId: TIntegerField;
qListChecksMeasureId: TIntegerField;
qListChecksUserName: TWideStringField;
qListChecksMeasureName: TWideStringField;
qListChecksWareName: TWideStringField;
qListWaresId: TAutoIncField;
qListWaresUserId: TIntegerField;
qListWaresCategoryId: TIntegerField;
qListWaresDateInput: TDateTimeField;
112
qListWaresWareName: TWideStringField;
qListWaresTypeName: TWideStringField;
qListWaresCategoryName: TWideStringField;
qListWaresUserName: TWideStringField;
dsMeasures: TDataSource;
qMeasures: TADOQuery;
AutoIncField1: TAutoIncField;
qMeasuresMeasureName: TWideStringField;
qTypesTypeName: TWideStringField;
qListMeasures: TADOQuery;
AutoIncField2: TAutoIncField;
WideStringField1: TWideStringField;
dsListMeasures: TDataSource;
qUsersTypeUser: TWideStringField;
qListUsersTypeUser: TWideStringField;
dsNorms: TDataSource;
qNorms: TADOQuery;
qListNorms: TADOQuery;
dsListNorms: TDataSource;
qNormsId: TAutoIncField;
qNormsCategoryId: TIntegerField;
qNormsNormName: TWideStringField;
qNormsNormValue: TIntegerField;
qListNormsId: TAutoIncField;
qListNormsCategoryId: TIntegerField;
qListNormsNormName: TWideStringField;
qListNormsNormValue: TIntegerField;
qListNormsCategoryName: TWideStringField;
qWareParams: TADOQuery;
dsWareParams: TDataSource;
qWareParamsId: TAutoIncField;
qWareParamsWareId: TIntegerField;
113
qWareParamsNormId: TIntegerField;
qWareParamsNormName: TWideStringField;
qListChecksResult: TBlobField;
qWares: TADOQuery;
AutoIncField3: TAutoIncField;
IntegerField1: TIntegerField;
IntegerField2: TIntegerField;
DateTimeField1: TDateTimeField;
WideStringField2: TWideStringField;
dsWares: TDataSource;
qChecks: TADOQuery;
dsChecks: TDataSource;
qParams: TADOQuery;
AutoIncField5: TAutoIncField;
IntegerField6: TIntegerField;
IntegerField7: TIntegerField;
WideStringField9: TWideStringField;
dsParams: TDataSource;
qChecksId: TAutoIncField;
qChecksWareId: TIntegerField;
qChecksDateCheck: TDateTimeField;
qChecksUserId: TIntegerField;
qChecksMeasureId: TIntegerField;
qResult: TADOQuery;
dsResult: TDataSource;
qParamsParamValue: TIntegerField;
qWareParamsParamValue: TIntegerField;
qResultId: TAutoIncField;
qResultWareId: TIntegerField;
qResultNormId: TIntegerField;
qResultParamValue: TIntegerField;
qResultNormName: TWideStringField;
114
qResultNormValue: TIntegerField;
qListWaresParamCount: TIntegerField;
qResultCheckLow: TIntegerField;
qListWaresCheckDone: TIntegerField;
qListWaresCheckTrue: TIntegerField;
qChecksResult: TBlobField;
qChecksisCheck: TBooleanField;
qListChecksisCheck: TBooleanField;
SaveDialog: TSaveDialog;
qNormsTolerLow: TIntegerField;
qNormsTolerHigh: TIntegerField;
qResultTolerLow: TIntegerField;
qResultTolerHigh: TIntegerField;
qResultCheckHigh: TIntegerField;
qListNormsTolerLow: TIntegerField;
qListNormsTolerHigh: TIntegerField;
procedure qResultCalcFields(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DataInfo: TDataInfo;
Pos: TBookmark;
AttemptLogin, c, UserId: Integer;
Cond, UserLevel, UserName, UserPassword: String;
isLogin: Boolean;
implementation
115
{$R *.dfm}
procedure TDataInfo.qResultCalcFields(DataSet: TDataSet);
begin
if DataSet.FieldByName('NormValue').AsInteger-
DataSet.FieldByName('ParamValue').AsInteger=0 then
begin
DataSet.FieldByName('CheckLow').AsInteger:=0;
DataSet.FieldByName('CheckHigh').AsInteger:=0;
Exit
end;
if DataSet.FieldByName('NormValue').AsInteger-
DataSet.FieldByName('ParamValue').AsInteger>0 then
begin
DataSet.FieldByName('CheckLow').AsInteger:=ABS(DataSet.FieldByName('NormVa
lue').AsInteger-DataSet.FieldByName('ParamValue').AsInteger)-
DataSet.FieldByName('TolerLow').AsInteger;
DataSet.FieldByName('CheckHigh').AsInteger:=0;
end
else
begin
DataSet.FieldByName('CheckLow').AsInteger:=0;
DataSet.FieldByName('CheckHigh').AsInteger:=ABS(DataSet.FieldByName('NormV
alue').AsInteger-DataSet.FieldByName('ParamValue').AsInteger)-
DataSet.FieldByName('TolerHigh').AsInteger;
end
end;
end.
116
// Авторизация пользователя
unit Passw;
interface
uses WinTypes, WinProcs, Classes, Graphics, Forms, Controls, StdCtrls,
Dialogs, Buttons, ExtCtrls, DBCtrls, cxGraphics, dxSkinsCore,
dxSkinsDefaultPainters, cxTextEdit, cxControls, cxContainer, cxEdit,
cxMaskEdit, cxDropDownEdit, cxLookupEdit, cxDBLookupEdit,
cxDBLookupComboBox, Menus, cxLookAndFeelPainters, cxButtons,
cxLookAndFeels;
type
TPasswordDlg = class(TForm)
Label1: TLabel;
Label2: TLabel;
btnYes: TcxButton;
btnNo: TcxButton;
lcbUserName: TDBLookupComboBox;
Password: TEdit;
procedure FormShow(Sender: TObject);
procedure btnNoClick(Sender: TObject);
procedure btnYesClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
PasswordDlg: TPasswordDlg;

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

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