Автоматизированная система метрологического учета средств измерений

Создание математической модели расчета показателей в отчете метрологического отдела по учету средств измерений компании. Разработка базы данных информации, пользовательского интерфейса. Техническое обеспечение автоматизированной информационной системы.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 14.01.2018
Размер файла 3,7 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

dsOperationsType2: TDataSource;

rrOperationsType2: TADOTable;

dsParams: TDataSource;

tParams: TADOTable;

tParamsКод: TIntegerField;

tParamsДата1: TDateTimeField;

tParamsДата2: TDateTimeField;

dsSummaryType1: TDataSource;

rrSummaryType1: TADOTable;

dsSummaryType2: TDataSource;

rrSummaryType2: TADOTable;

dsMTList: TDataSource;

rrMTList: TADOTable;

private

{ Private declarations }

FInSystem : Boolean;

FUserType : Integer;

procedure ActiveDS (Value : Boolean);

procedure GetUserTypeAccess;

procedure AfterLogin;

public

{ Public declarations }

function UserIsAdmin : boolean;

procedure SystemExit;

procedure SystemEnter (Login, Password : String);

procedure SetOperationsState (OperationKey, StateKey : Integer);

property InSystem : Boolean read FInSystem;

end;

var

fData: TfData;

function GetAdoQuery (Connection : TADOConnection; SQL : String) :

TADOQuery;

function DateTransform (Date : TDateTime) : String;

procedure DeleteConfirm (DataSet: TDataSet);

implementation

{$R *.dfm}

uses ufMain, ufUserEditor, ufOperations, ufOperationsEditor,

ufEquipmentEditor;

procedure TfData.SetOperationsState (OperationKey, StateKey: Integer);

begin

//

try

tOperationsState.Insert;

tOperationsStateКод_Операции.Value := OperationKey;

tOperationsStateКод_Статус.Value := StateKey;

tOperationsStateДата.Value := Now;

tOperationsState.Post;

finally

tOperationsState.Cancel;

end;

end;

function TfData.UserIsAdmin : boolean;

begin

//

Result := ((FUserType = 1) and (FInSystem = true));

end;

procedure TfData.AfterLogin;

begin

//

fMain.MaxForm(fOperations);

end;

procedure TfData.DataModuleCreate(Sender: TObject);

begin

//

try

ADOConnection.ConnectionString :=

'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=' +

ExtractFilePath (Application.ExeName) + 'Base.mdb;Mode=Share Deny

None;Persist Security Info=False;Jet OLEDB:System database="";' +

'Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet

OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;'+

'Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk

Transactions=1;Jet OLEDB:New Database Password="";'+

'Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt

Database=False;Jet OLEDB:Don' + #39 + 't Copy Locale on

Compact=False;'+

'Jet OLEDB:Compact Without Replica Repair=False;Jet

OLEDB:SFP=False';

ADOConnection.Connected := true;

except

//

on E : Exception do

begin

//

MessageDlg('Fatal error : ' + E.Message + #13 + 'Приложение будет

закрыто!', mtError, [mbOK], 0);

Application.Terminate;

end;

end;

end;

procedure TfData.dsFunctionDataChange(Sender: TObject; Field: TField);

begin

end;

procedure TfData.SystemExit;

begin

//

FInSystem := false;

ActiveDS(False);

FUserType := 0;

end;

procedure TfData.ActiveDS (Value : Boolean);

begin

//

tParams.Active := Value;

tDepartment.Active := Value;

tUserType.Active := Value;

tFunction.Active := Value;

tUser.Active := Value;

tState.Active := Value;

tMeasurementTools.Active := Value;

tMeasurementToolsType.Active := Value;

tOperationType.Active := Value;

tEquipment.Active := Value;

tOperations.Active := Value;

tOperationsState.Active := Value;

end;

procedure TfData.SystemEnter (Login, Password : String);

const

//

UserNotFind = 'Пара логин/пароль не найдена';

var

//

Q : TADOQuery;

begin

//

Q := GetAdoQuery (ADOConnection, 'select * from сотрудник where

(Логин = ' + #39 + Login + #39 + ')');

if Q.RecordCount > 0 then

begin

//

if (Q.FieldByName('Пароль').AsString = Password) then

begin

//

FUserType := Q.FieldByName('Код_Тип_пользователя').AsInteger;

GetUserTypeAccess;

FInSystem := true;

Q.Free;

try

AfterLogin;

finally

end;

exit;

end;

end;

Q.Free;

raise Exception.Create(UserNotFind);

end;

procedure TfData.GetUserTypeAccess;

var

//

Value : Boolean;

begin

//

case FUserType of

1 :

begin

//

tUserType.ReadOnly := not false;

tFunction.ReadOnly := false;

tUser.ReadOnly := false;

tState.ReadOnly := not false;

tMeasurementTools.ReadOnly := false;

tMeasurementToolsType.ReadOnly := false;

tOperationType.ReadOnly := not false;

tEquipment.ReadOnly := false;

tOperations.ReadOnly := false;

tOperationsState.ReadOnly := false;

ActiveDS (true);

end;

2 :

begin

//

tUserType.ReadOnly := not false;

tFunction.ReadOnly := not false;

tUser.ReadOnly := not false;

tState.ReadOnly := not false;

tMeasurementTools.ReadOnly := not false;

tMeasurementToolsType.ReadOnly := not false;

tOperationType.ReadOnly := not false;

tEquipment.ReadOnly := not false;

tOperations.ReadOnly := not false;

tOperationsState.ReadOnly := not false;

Value := true;

ActiveDS (true);

tUser.Close;

end;

end;

end;

function GetAdoQuery (Connection : TADOConnection; SQL : String) :

TADOQuery;

begin

//

Result := TADOQuery.Create(nil);

Result.Connection := Connection;

Result.SQL.Text := SQL;

Result.Open;

end;

procedure DeleteConfirm (DataSet: TDataSet);

begin

//

if (MessageDlg('Удалить запись', mtConfirmation, [mbYes, mbNo], 0) =

mrNo) then

begin

//

raise Exception.Create('Удаление отменено');

end;

end;

function DateTransform (Date : TDateTime) : String;

begin

//

Result := '#' + FormatDateTime ('MM', Date) + '/' + FormatDateTime ('DD',

Date) + '/' + FormatDateTime ('YYYY', Date) + '#';

end;

procedure TfData.tCarBeforeDelete(DataSet: TDataSet);

begin

//

DeleteConfirm(DataSet);

end;

procedure TfData.tCarModelBeforeDelete(DataSet: TDataSet);

begin

//

DeleteConfirm(DataSet);

end;

procedure TfData.tCarUseBeforeDelete(DataSet: TDataSet);

begin

//

DeleteConfirm(DataSet);

end;

procedure TfData.tColorBeforeDelete(DataSet: TDataSet);

begin

//

DeleteConfirm(DataSet);

end;

procedure TfData.tDriverBeforeDelete(DataSet: TDataSet);

begin

//

DeleteConfirm(DataSet);

end;

procedure TfData.tEquipmentAfterEdit(DataSet: TDataSet);

begin

fEquipmentEditor.ShowModal;

end;

procedure TfData.tEquipmentAfterInsert(DataSet: TDataSet);

begin

fEquipmentEditor.ShowModal;

end;

procedure TfData.tEquipmentCalcFields(DataSet: TDataSet);

begin

//

tEquipmentОборудование.Value := tEquipmentМодель.Value + ' (№ ' +

tEquipmentЗаводской_номер.Value + ')';

end;

procedure TfData.tFunctionBeforeDelete(DataSet: TDataSet);

begin

//

DeleteConfirm(DataSet);

end;

procedure TfData.tMeasurementToolsCalcFields(DataSet: TDataSet);

begin

//

tMeasurementToolsСИ.Value :=

tMeasurementToolsНазвание.Value +

' [' + tMeasurementToolsНомер_госреестра.Value + ']';

end;

procedure TfData.tMeasurementToolsTypeCalcFields(DataSet: TDataSet);

begin

tMeasurementToolsTypeМодель.Value :=

tMeasurementToolsTypeНазвание.Value + ' (' +

tMeasurementToolsTypeСИ.Value + ')';

end;

procedure TfData.tOperationsAfterCancel(DataSet: TDataSet);

begin

DataSet.Tag := 0;

end;

procedure TfData.tOperationsAfterClose(DataSet: TDataSet);

begin

DataSet.Tag := 0;

end;

procedure TfData.tOperationsAfterEdit(DataSet: TDataSet);

begin

fOperationsEditor.ShowModal;

end;

procedure TfData.tOperationsAfterInsert(DataSet: TDataSet);

begin

//

tOperationsДата_завершения.Value := Date;

DataSet.Tag := 1000;

fOperationsEditor.ShowModal;

end;

procedure TfData.tOperationsAfterPost(DataSet: TDataSet);

begin

//

if (DataSet.Tag = 1000) then

begin

SetOperationsState (tOperationsКод.Value, 1);

DataSet.Tag := 0;

end;

end;

procedure TfData.tOperationsCalcFields(DataSet: TDataSet);

begin

//

try

//

tCurrentOperationState.Filtered := False;

tCurrentOperationState.Filter := 'Код_Операции = ' +

tOperationsКод.AsString;

tCurrentOperationState.Filtered := true;

tCurrentOperationState.Open;

tOperationsСтатус.Value := tCurrentOperationStateНазвание.AsString;

tOperationsКод_Статус.Value :=

tCurrentOperationStateКод_Статус.Value;

tCurrentOperationState.Close;

except

//

tCurrentOperationState.Close;

end;

end;

procedure TfData.tOperationsStateAfterPost(DataSet: TDataSet);

begin

//

try

tOperations.Refresh;

finally

end;

end;

procedure TfData.tUserAfterEdit(DataSet: TDataSet);

begin

fUserEditor.ShowModal;

end;

procedure TfData.tUserAfterInsert(DataSet: TDataSet);

begin

fUserEditor.ShowModal;

end;

procedure TfData.tUserBeforeDelete(DataSet: TDataSet);

begin

//

DeleteConfirm(DataSet);

end;

procedure TfData.tUserCalcFields(DataSet: TDataSet);

begin

//

tUserСотрудник.Value := tUserФамилия.Value + ' ' +

tUserИмя.Value + ' ' +

tUserОтчество.Value + ', ' +

tUserДолжность.Value;

end;

end.

unit ufEquipmentEditor;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,

System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Grids,

Vcl.DBGrids,

Vcl.DBCtrls, Vcl.Mask, Vcl.ExtCtrls, DB;

type

TfEquipmentEditor = class(TForm)

Panel4: TPanel;

Label1: TLabel;

Label4: TLabel;

Label2: TLabel;

Label3: TLabel;

Label6: TLabel;

DBLookupComboBox1: TDBLookupComboBox;

DBEdit2: TDBEdit;

DBMemo1: TDBMemo;

DBEdit1: TDBEdit;

Panel3: TPanel;

bOk: TButton;

bCancel: TButton;

DBEdit3: TDBEdit;

procedure bOkClick(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure bCancelClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

fEquipmentEditor: TfEquipmentEditor;

implementation

{$R *.dfm}

uses ufData;

procedure TfEquipmentEditor.bCancelClick(Sender: TObject);

begin

Close;

end;

procedure TfEquipmentEditor.bOkClick(Sender: TObject);

begin

//

if (fData.tEquipment.State in [dsInsert, dsEdit]) then

begin

fData.tEquipment.Post;

end;

Close;

end;

procedure TfEquipmentEditor.FormClose(Sender: TObject;

var Action: TCloseAction);

begin

fData.tEquipment.Cancel;

end;

end.

unit ufLogin;

interface

uses

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

Dialogs, StdCtrls, ExtCtrls, ComCtrls, IniFiles;

const c_SettingsFile : String = 'ConnectionSettings.ini';

type

TfLogin = class(TForm)

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

leName: TLabeledEdit;

lePassword: TLabeledEdit;

bOk: TButton;

bCancel: TButton;

leAdress: TLabeledEdit;

lePort: TLabeledEdit;

procedure bOkClick(Sender: TObject);

procedure FormShow(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure bCancelClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

procedure Connect;

procedure Disconnect;

end;

var

fLogin: TfLogin;

implementation

{$R *.dfm}

uses ufData;

procedure TfLogin.Connect;

begin

//

Disconnect;

fData.SystemEnter (leName.Text, lePassword.Text);

fData.ADOConnection.Connected := true;

lePassword.Text := '';

end;

procedure TfLogin.Disconnect;

begin

//

fData.SystemExit;

end;

procedure TfLogin.bCancelClick(Sender: TObject);

begin

//

Close;

end;

procedure TfLogin.bOkClick(Sender: TObject);

var

Section : String;

IniFile : TIniFile;

Port : Integer;

begin

//

Section := 'Connection settings';

try

//

Connect;

// Сохранение ini

IniFile := TIniFile.Create (ExtractFilePath (Application.ExeName) + '\' +

c_SettingsFile);

IniFile.WriteString(Section, 'UserName', leName.Text);

IniFile.Free;

//

Application.MainForm.Visible := true;

Close;

except

on E : Exception do MessageDlg(E.Message, mtError, [mbOK], 0);

end;

end;

procedure TfLogin.FormClose(Sender: TObject; var Action: TCloseAction);

begin

//

//if fData.InSystem = false then

//Application.Terminate;

end;

procedure TfLogin.FormShow(Sender: TObject);

var

Section : String;

IniFile : TIniFile;

begin

//

Section := 'Connection settings';

try

// Загрузка ini

IniFile := TIniFile.Create (ExtractFilePath (Application.ExeName) + '\' +

c_SettingsFile);

//leAdress.Text := IniFile.ReadString(Section, 'Host', 'localhost');

//lePort.Text := IntToStr(IniFile.ReadInteger(Section, 'Port', 5000));

leName.Text := IniFile.ReadString(Section, 'UserName', '');

IniFile.Free;

except

end;

Disconnect;

end;

end.

unit ufMain;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,

System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs,

Vcl.PlatformDefaultStyleActnCtrls, Vcl.ActnList, Vcl.ActnMan,

Vcl.ExtCtrls,

Vcl.ToolWin, Vcl.ComCtrls, Vcl.Menus, Vcl.StdCtrls, Vcl.DBCtrls,

Vcl.ImgList,

Vcl.StdActns, Data.DB, Vcl.DBActns, Vcl.ActnCtrls;

type

TfMain = class(TForm)

ActionManager: TActionManager;

mmMain: TMainMenu;

sbMain: TStatusBar;

aShowOperations: TAction;

WindowClose1: TWindowClose;

WindowCascade1: TWindowCascade;

WindowTileHorizontal1: TWindowTileHorizontal;

WindowTileVertical1: TWindowTileVertical;

WindowMinimizeAll1: TWindowMinimizeAll;

WindowArrange1: TWindowArrange;

N1: TMenuItem;

Close1: TMenuItem;

Cascade1: TMenuItem;

ileHorizontally1: TMenuItem;

ileVertically1: TMenuItem;

MinimizeAll1: TMenuItem;

Arrange1: TMenuItem;

aShowRefBooks: TAction;

Action1: TAction;

Action2: TAction;

Action3: TAction;

aShowReportsSelector: TAction;

Action4: TAction;

N8: TMenuItem;

N9: TMenuItem;

N10: TMenuItem;

N11: TMenuItem;

Action5: TAction;

Action6: TAction;

amNavigator: TActionManager;

DataSetFirst1: TDataSetFirst;

DataSetPrior1: TDataSetPrior;

DataSetNext1: TDataSetNext;

DataSetLast1: TDataSetLast;

DataSetInsert1: TDataSetInsert;

DataSetDelete1: TDataSetDelete;

DataSetEdit1: TDataSetEdit;

DataSetPost1: TDataSetPost;

DataSetCancel1: TDataSetCancel;

DataSetRefresh1: TDataSetRefresh;

tbNavigator: TToolBar;

ToolButton12: TToolButton;

ToolButton13: TToolButton;

ToolButton14: TToolButton;

ToolButton15: TToolButton;

ToolButton17: TToolButton;

ToolButton18: TToolButton;

ToolButton19: TToolButton;

ToolButton20: TToolButton;

ToolButton21: TToolButton;

ToolButton22: TToolButton;

tbMain: TToolBar;

ToolButton1: TToolButton;

ToolButton2: TToolButton;

ToolButton3: TToolButton;

ToolButton4: TToolButton;

ToolButton5: TToolButton;

ToolButton6: TToolButton;

ToolButton7: TToolButton;

aLogin: TAction;

Action7: TAction;

Action8: TAction;

pmRB: TPopupMenu;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

N12: TMenuItem;

N13: TMenuItem;

procedure aShowRefBooksExecute(Sender: TObject);

procedure Action1Execute(Sender: TObject);

procedure Action2Execute(Sender: TObject);

procedure Action3Execute(Sender: TObject);

procedure Action4Execute(Sender: TObject);

procedure Action5Execute(Sender: TObject);

procedure aShowReportsSelectorExecute(Sender: TObject);

procedure aLoginExecute(Sender: TObject);

procedure Action6Execute(Sender: TObject);

procedure FormShow(Sender: TObject);

procedure aShowOperationsExecute(Sender: TObject);

procedure Action7Execute(Sender: TObject);

procedure Action8Execute(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

procedure MaxForm (Form : TForm);

end;

var

fMain: TfMain;

implementation

{$R *.dfm}

uses ufData, ufRefBooks, ufReports, ufReportSelector, ufLogin,

ufOperations;

procedure TfMain.Action1Execute(Sender: TObject);

begin

fRefBooks.PageControl1.ActivePage := fRefBooks.TabSheet1;

MaxForm(fRefBooks);

end;

procedure TfMain.Action2Execute(Sender: TObject);

begin

fRefBooks.PageControl1.ActivePage := fRefBooks.TabSheet2;

MaxForm(fRefBooks);

end;

procedure TfMain.Action3Execute(Sender: TObject);

begin

fRefBooks.PageControl1.ActivePage := fRefBooks.TabSheet6;

MaxForm(fRefBooks);

end;

procedure TfMain.Action4Execute(Sender: TObject);

begin

//

fRefBooks.PageControl1.ActivePage := fRefBooks.TabSheet4;

MaxForm(fRefBooks);

end;

procedure TfMain.Action5Execute(Sender: TObject);

begin

fRefBooks.PageControl1.ActivePage := fRefBooks.TabSheet5;

MaxForm(fRefBooks);

end;

procedure TfMain.Action6Execute(Sender: TObject);

begin

fRefBooks.PageControl1.ActivePage := fRefBooks.TabSheet10;

MaxForm(fRefBooks);

end;

procedure TfMain.Action7Execute(Sender: TObject);

begin

//

fRefBooks.PageControl1.ActivePage := fRefBooks.TabSheet3;

fRefBooks.PageControl2.ActivePage := fRefBooks.TabSheet8;

MaxForm(fRefBooks);

end;

procedure TfMain.Action8Execute(Sender: TObject);

begin

fRefBooks.PageControl1.ActivePage := fRefBooks.TabSheet3;

fRefBooks.PageControl2.ActivePage := fRefBooks.TabSheet9;

MaxForm(fRefBooks);

end;

procedure TfMain.aLoginExecute(Sender: TObject);

begin

//

fLogin.Visible := true;

end;

procedure TfMain.aShowOperationsExecute(Sender: TObject);

begin

//

MaxForm(fOperations);

end;

procedure TfMain.aShowRefBooksExecute(Sender: TObject);

begin

//

MaxForm(fRefBooks);

end;

procedure TfMain.aShowReportsSelectorExecute(Sender: TObject);

begin

//

MaxForm(fReportSelector);

end;

procedure TfMain.FormShow(Sender: TObject);

begin

//

WindowMinimizeAll1.Execute;

end;

procedure TfMain.MaxForm (Form : TForm);

begin

//

WindowMinimizeAll1.Execute;

Form.WindowState := wsMaximized;

Form.Show;

end;

end.

unit ufOperations;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,

System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Grids, Vcl.DBGrids,

Vcl.StdCtrls, math;

type

TfOperations = class(TForm)

DBGrid3: TDBGrid;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

fOperations: TfOperations;

implementation

{$R *.dfm}

uses ufData;

procedure TfOperations.Button1Click(Sender: TObject);

var

//

I : Integer;

begin

//

{

Randomize;

fData.tOperations.DisableControls;

for I := 1 to fData.tOperations.RecordCount do

begin

//

fData.tOperations.RecNo := I;

fData.tOperations.Edit;

fData.tOperationsДата_завершения.Value :=

Int(fData.tOperationsДата_завершения.Value);

try

fData.tOperations.Post;

except

fData.tOperations.Cancel;

end;

end;

fData.tOperations.EnableControls;

}

end;

end.

unit ufOperationsEditor;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,

System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Mask, Vcl.DBCtrls,

Vcl.ExtCtrls, Vcl.Grids, Vcl.DBGrids, Vcl.Menus, DB, Vcl.ActnList,

Vcl.PlatformDefaultStyleActnCtrls, Vcl.ActnMan;

type

TfOperationsEditor = class(TForm)

Panel3: TPanel;

bOk: TButton;

bCancel: TButton;

Panel4: TPanel;

Label1: TLabel;

Label4: TLabel;

DBLookupComboBox1: TDBLookupComboBox;

DBEdit2: TDBEdit;

Label2: TLabel;

DBLookupComboBox2: TDBLookupComboBox;

DBMemo1: TDBMemo;

Label3: TLabel;

Label5: TLabel;

DBLookupComboBox3: TDBLookupComboBox;

DBEdit1: TDBEdit;

Label6: TLabel;

DBGrid1: TDBGrid;

Label7: TLabel;

pmOperationsState: TPopupMenu;

N1: TMenuItem;

Button1: TButton;

ActionManager1: TActionManager;

aStatusChanger: TAction;

procedure bOkClick(Sender: TObject);

procedure bCancelClick(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure FormShow(Sender: TObject);

procedure aStatusChangerExecute(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

procedure ActiveForm (Value : Boolean);

end;

var

fOperationsEditor: TfOperationsEditor;

implementation

{$R *.dfm}

uses ufData, ufOperationsStateChanger;

procedure TfOperationsEditor.bCancelClick(Sender: TObject);

begin

//

Close;

end;

procedure TfOperationsEditor.aStatusChangerExecute(Sender: TObject);

begin

fOperationsStateChanger.ShowModal;

end;

procedure TfOperationsEditor.ActiveForm (Value : Boolean);

begin

//

DBEdit1.Enabled := Value;

DBEdit2.Enabled := Value;

DBLookupComboBox1.Enabled := Value;

DBLookupComboBox2.Enabled := Value;

DBLookupComboBox3.Enabled := Value;

DBMemo1.Enabled := Value;

//DBGrid1.Enabled := Value;

//DBGrid1.Repaint;

bOk.Enabled := Value;

aStatusChanger.Enabled := Value;

end;

procedure TfOperationsEditor.bOkClick(Sender: TObject);

begin

//

if (fData.tOperations.State in [dsInsert, dsEdit]) then

begin

fData.tOperations.Post;

end;

Close;

end;

procedure TfOperationsEditor.FormClose(Sender: TObject;

var Action: TCloseAction);

begin

fData.tOperations.Cancel;

end;

procedure TfOperationsEditor.FormShow(Sender: TObject);

begin

//

if (fData.tOperationsКод_Статус.IsNull = false) then

begin

case fData.tOperationsКод_Статус.Value of

1 :

begin

//

ActiveForm (true);

end;

2, 3 :

begin

//

ActiveForm (false);

end;

end;

end

else

begin

if (fData.tOperations.State = dsInsert) then

//

ActiveForm (true)

else

ActiveForm (false);

end;

end;

end.

unit ufOperationsStateChanger;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,

System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Grids,

Vcl.DBGrids,

StdCtrls, Classes, Controls, Grids, DBGrids;

type

TfOperationsStateChanger = class(TForm)

DBGrid1: TDBGrid;

bOk: TButton;

bCancel: TButton;

procedure bOkClick(Sender: TObject);

procedure bCancelClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

fOperationsStateChanger: TfOperationsStateChanger;

implementation

{$R *.dfm}

uses ufData;

procedure TfOperationsStateChanger.bCancelClick(Sender: TObject);

begin

Close;

end;

procedure TfOperationsStateChanger.bOkClick(Sender: TObject);

begin

//

fData.SetOperationsState (fData.tOperationsКод.Value,

fData.tStateКод.Value);

Close;

end;

end.

unit ufRefBooks;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,

System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, Vcl.Grids,

Vcl.DBGrids,

Vcl.DBActns, Vcl.ActnList, Vcl.PlatformDefaultStyleActnCtrls,

Vcl.ActnMan,

Vcl.ToolWin;

type

TfRefBooks = class(TForm)

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

ActionManager: TActionManager;

DataSetFirst1: TDataSetFirst;

DataSetPrior1: TDataSetPrior;

DataSetNext1: TDataSetNext;

DataSetLast1: TDataSetLast;

DataSetInsert1: TDataSetInsert;

DataSetDelete1: TDataSetDelete;

DataSetEdit1: TDataSetEdit;

DataSetPost1: TDataSetPost;

DataSetCancel1: TDataSetCancel;

DataSetRefresh1: TDataSetRefresh;

DBGrid1: TDBGrid;

DBGrid2: TDBGrid;

DataSetFirst2: TDataSetFirst;

DataSetPrior2: TDataSetPrior;

DataSetNext2: TDataSetNext;

DataSetLast2: TDataSetLast;

DataSetInsert2: TDataSetInsert;

DataSetDelete2: TDataSetDelete;

DataSetEdit2: TDataSetEdit;

DataSetPost2: TDataSetPost;

DataSetCancel2: TDataSetCancel;

DataSetRefresh2: TDataSetRefresh;

DataSetFirst3: TDataSetFirst;

DataSetPrior3: TDataSetPrior;

DataSetNext3: TDataSetNext;

DataSetLast3: TDataSetLast;

DataSetInsert3: TDataSetInsert;

DataSetDelete3: TDataSetDelete;

DataSetEdit3: TDataSetEdit;

DataSetPost3: TDataSetPost;

DataSetCancel3: TDataSetCancel;

DataSetRefresh3: TDataSetRefresh;

TabSheet4: TTabSheet;

DBGrid4: TDBGrid;

DataSetFirst4: TDataSetFirst;

DataSetPrior4: TDataSetPrior;

DataSetNext4: TDataSetNext;

DataSetLast4: TDataSetLast;

DataSetInsert4: TDataSetInsert;

DataSetDelete4: TDataSetDelete;

DataSetEdit4: TDataSetEdit;

DataSetPost4: TDataSetPost;

DataSetCancel4: TDataSetCancel;

DataSetRefresh4: TDataSetRefresh;

TabSheet5: TTabSheet;

DBGrid5: TDBGrid;

DataSetFirst5: TDataSetFirst;

DataSetPrior5: TDataSetPrior;

DataSetNext5: TDataSetNext;

DataSetLast5: TDataSetLast;

DataSetInsert5: TDataSetInsert;

DataSetDelete5: TDataSetDelete;

DataSetEdit5: TDataSetEdit;

DataSetPost5: TDataSetPost;

DataSetCancel5: TDataSetCancel;

DataSetRefresh5: TDataSetRefresh;

DataSetFirst6: TDataSetFirst;

DataSetPrior6: TDataSetPrior;

DataSetNext6: TDataSetNext;

DataSetLast6: TDataSetLast;

DataSetInsert6: TDataSetInsert;

DataSetDelete6: TDataSetDelete;

DataSetEdit6: TDataSetEdit;

DataSetPost6: TDataSetPost;

DataSetCancel6: TDataSetCancel;

DataSetRefresh6: TDataSetRefresh;

TabSheet7: TTabSheet;

DBGrid7: TDBGrid;

TabSheet3: TTabSheet;

PageControl2: TPageControl;

TabSheet8: TTabSheet;

TabSheet9: TTabSheet;

DBGrid3: TDBGrid;

DBGrid8: TDBGrid;

TabSheet6: TTabSheet;

DBGrid6: TDBGrid;

TabSheet10: TTabSheet;

DBGrid9: TDBGrid;

private

{ Private declarations }

public

{ Public declarations }

end;

var

fRefBooks: TfRefBooks;

implementation

{$R *.dfm}

uses ufData;

end.

unit ufReports;

interface

uses

System.SysUtils, System.Classes, Vcl.PlatformDefaultStyleActnCtrls,

Vcl.ActnList, Vcl.ActnMan,

frxClass, frxDBSet, frxExportCSV, frxExportText, frxExportImage,

frxExportRTF,

frxExportHTML, frxExportPDF, frxExportBIFF, frxExportDBF,

frxExportODF,

frxExportMail, frxExportXML, frxExportXLS, frxChart;

type

TfReports = class(TDataModule)

frxEngine: TfrxReport;

frxDBOperationsType1: TfrxDBDataset;

frxXLSExport1: TfrxXLSExport;

frxXMLExport1: TfrxXMLExport;

frxMailExport1: TfrxMailExport;

frxODSExport1: TfrxODSExport;

frxODTExport1: TfrxODTExport;

frxDBFExport1: TfrxDBFExport;

frxBIFFExport1: TfrxBIFFExport;

frxPDFExport1: TfrxPDFExport;

frxHTMLExport1: TfrxHTMLExport;

frxRTFExport1: TfrxRTFExport;

frxBMPExport1: TfrxBMPExport;

frxJPEGExport1: TfrxJPEGExport;

frxTIFFExport1: TfrxTIFFExport;

frxGIFExport1: TfrxGIFExport;

frxSimpleTextExport1: TfrxSimpleTextExport;

frxCSVExport1: TfrxCSVExport;

frxDBOperationsType2: TfrxDBDataset;

frxChartObject1: TfrxChartObject;

frxDBSummaryType1: TfrxDBDataset;

frxDBSummaryType2: TfrxDBDataset;

frxDBMTList: TfrxDBDataset;

private

{ Private declarations }

public

{ Public declarations }

end;

var

fReports: TfReports;

implementation

{$R *.dfm}

uses ufData;

end.

unit ufReportSelector;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,

System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.DBCtrls,

Vcl.ExtCtrls,

Vcl.ComCtrls, Vcl.Grids, Vcl.DBGrids;

type

TfReportSelector = class(TForm)

PageControl1: TPageControl;

TabSheet2: TTabSheet;

GroupBox1: TGroupBox;

mcDate1: TMonthCalendar;

GroupBox2: TGroupBox;

mcDate2: TMonthCalendar;

bOperationsType1: TButton;

bOperationsType2: TButton;

bSummaryType1: TButton;

bSummaryType2: TButton;

bMTList: TButton;

procedure bOperationsType1Click(Sender: TObject);

procedure bDriverWorkClick(Sender: TObject);

procedure bOperationsType2Click(Sender: TObject);

procedure bSummaryType1Click(Sender: TObject);

procedure bSummaryType2Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure bMTListClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

procedure SetDates ();

end;

var

fReportSelector: TfReportSelector;

implementation

{$R *.dfm}

uses ufData, ufReports;

procedure TfReportSelector.SetDates ();

begin

//

try

fData.tParams.Edit;

fData.tParamsДата1.Value := Int(mcDate1.Date);

fData.tParamsДата2.Value := Int(mcDate2.Date);

fData.tParams.Post;

finally

//

fData.tParams.Cancel;

end;

end;

procedure TfReportSelector.bOperationsType1Click(Sender: TObject);

begin

//

if (fData.InSystem = true) then

begin

//

SetDates ();

fData.rrOperationsType1.Open;

fReports.frxEngine.LoadFromFile(ExtractFilePath (Application.ExeName)

+ 'frxOperationsType1.fr3', true);

fReports.frxEngine.PrepareReport;

fReports.frxEngine.ShowPreparedReport;

fData.rrOperationsType1.Close;

end;

end;

procedure TfReportSelector.bOperationsType2Click(Sender: TObject);

begin

if (fData.InSystem = true) then

begin

//

SetDates ();

fData.rrOperationsType2.Open;

fReports.frxEngine.LoadFromFile(ExtractFilePath (Application.ExeName)

+ 'frxOperationsType2.fr3', true);

fReports.frxEngine.PrepareReport;

fReports.frxEngine.ShowPreparedReport;

fData.rrOperationsType2.Close;

end;

end;

procedure TfReportSelector.bSummaryType1Click(Sender: TObject);

begin

if (fData.InSystem = true) then

begin

//

SetDates ();

fData.rrSummaryType1.Open;

fReports.frxEngine.LoadFromFile(ExtractFilePath (Application.ExeName)

+ 'frxSummaryType1.fr3', true);

fReports.frxEngine.PrepareReport;

fReports.frxEngine.ShowPreparedReport;

fData.rrSummaryType1.Close;

end;

end;

procedure TfReportSelector.bSummaryType2Click(Sender: TObject);

begin

if (fData.InSystem = true) then

begin

//

SetDates ();

fData.rrSummaryType2.Open;

fReports.frxEngine.LoadFromFile(ExtractFilePath (Application.ExeName)

+ 'frxSummaryType2.fr3', true);

fReports.frxEngine.PrepareReport;

fReports.frxEngine.ShowPreparedReport;

fData.rrSummaryType2.Close;

end;

end;

procedure TfReportSelector.bMTListClick(Sender: TObject);

begin

if (fData.InSystem = true) then

begin

//

SetDates ();

fData.rrMTList.Open;

fReports.frxEngine.LoadFromFile(ExtractFilePath (Application.ExeName)

+ 'frxMTList.fr3', true);

fReports.frxEngine.PrepareReport;

fReports.frxEngine.ShowPreparedReport;

fData.rrMTList.Close;

end;

end;

procedure TfReportSelector.FormCreate(Sender: TObject);

begin

//

mcDate1.Date := Now - 30;

mcDate2.Date := Now + 30;

end;

procedure TfReportSelector.bDriverWorkClick(Sender: TObject);

begin

{

if (fData.InSystem = false) then Exit;

if VarIsNull (dblcbDriver.KeyValue) = false then

begin

fData.vDriverWork.Close;

fData.vDriverWork.Filtered := false;

fData.vDriverWork.Filter := 'Код = ' + VarToStr(dblcbDriver.KeyValue);

fData.vDriverWork.Filtered := true;

fData.vDriverWork.Open;

fReports.frxDriverWork.LoadFromFile(ExtractFilePath

(Application.ExeName) + 'frxDriverWork.fr3', true);

fReports.frxDriverWork.PrepareReport;

fReports.frxDriverWork.ShowPreparedReport;

fData.vDriverWork.Close;

end;

}

end;

end.

unit ufUserEditor;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,

System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.DBCtrls, Vcl.Mask,

Vcl.ExtCtrls;

type

TfUserEditor = class(TForm)

Panel4: TPanel;

Label1: TLabel;

Label3: TLabel;

Label4: TLabel;

DBLookupComboBox1: TDBLookupComboBox;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

Panel3: TPanel;

bOk: TButton;

bCancel: TButton;

Label2: TLabel;

DBEdit3: TDBEdit;

Label5: TLabel;

DBEdit4: TDBEdit;

DBLookupComboBox2: TDBLookupComboBox;

Label6: TLabel;

Label7: TLabel;

DBEdit5: TDBEdit;

Label8: TLabel;

DBEdit6: TDBEdit;

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure bOkClick(Sender: TObject);

procedure bCancelClick(Sender: TObject);

procedure FormKeyPress(Sender: TObject; var Key: Char);

private

{ Private declarations }

public

{ Public declarations }

end;

var

fUserEditor: TfUserEditor;

implementation

{$R *.dfm}

uses ufData;

procedure TfUserEditor.bCancelClick(Sender: TObject);

begin

Close;

end;

procedure TfUserEditor.bOkClick(Sender: TObject);

begin

fData.tUser.Post;

Close;

end;

procedure TfUserEditor.FormClose(Sender: TObject; var Action:

TCloseAction);

begin

fData.tUser.Cancel;

end;

procedure TfUserEditor.FormKeyPress(Sender: TObject; var Key: Char);

begin

//

if (Key = #27) then

Close;

end;

end.

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.