Автоматизированная система метрологического учета средств измерений
Создание математической модели расчета показателей в отчете метрологического отдела по учету средств измерений компании. Разработка базы данных информации, пользовательского интерфейса. Техническое обеспечение автоматизированной информационной системы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 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
Подобные документы
Разработка информационной системы для отдела учета приема пациентов и медицинского секретариата. Описание исходной (входной) информации и пользовательского интерфейса, логической структуры и технических средств. Построение реляционной базы данных.
дипломная работа [1,9 M], добавлен 16.04.2012Предметная область объекта автоматизации информационных процессов. Основные этапы автоматизации работы метрологического отдела Воронежского вагоноремонтного завода. Расчет надежности аппаратной части и программного обеспечения. Руководство пользователя.
дипломная работа [5,7 M], добавлен 01.02.2014Создание автоматизированной системы – "Агентство по трудоустройству". Проектирование таблиц для хранения данных. Разработка запросов и отчетов, предназначенных для просмотра, редактирования и вывода информации. Разработка пользовательского интерфейса.
курсовая работа [4,9 M], добавлен 29.01.2011Технико-экономическое обоснование разработки информационной системы "План-меню". Выбор технических средств и стандартного программного обеспечения. Проектирование структуры базы данных. Разработка и структура пользовательского интерфейса и ER-модели.
курсовая работа [817,6 K], добавлен 07.05.2009Функциональная модель предметной области на примере базы данных автоматизированной информационной системы "Общежития". Ведение информационной базы об общежитиях, комнатах и сотрудниках, хранение информации о студентах, специальностях и факультетах.
курсовая работа [2,7 M], добавлен 10.04.2014Возможности извлечения информации из баз данных. Программы для создания и обработки базы данных и создания пользовательского интерфейса. Обоснование выбора программных средств для реализации. Создание базы данных, интерфейса и базы данных к интерфейсу.
курсовая работа [2,9 M], добавлен 24.03.2023Разработка и внедрение автоматизированной информационной системы. Изучение основных процессов, протекающих в предметной области. Создание базы данных. Исследование средств защиты информации от несанкционированного доступа и идентификации пользователей.
курсовая работа [487,2 K], добавлен 17.03.2014Требования к функциональным характеристикам информационной системы "Подписка". Функциональное проектирование автоматизированной системы ведения учета основных средств на предприятии. Проектирование базы данных автоматизированной системы ведения учета.
курсовая работа [753,0 K], добавлен 16.01.2015Техническое задание на разработку автоматизированной системы и складского учета управления универсальной торговой базы. Проектирование информационной системы и выбор среды для создания программного продукта. Создание интерфейса и руководство пользователя.
дипломная работа [2,1 M], добавлен 11.07.2015Проектирование и разработка автоматизированной информационной системы (АИС) публикации и обработки данных для работников детского сада № 176. Недостатки существующей АИС, снижающие эффективность работы организации. Прототип пользовательского интерфейса.
дипломная работа [7,7 M], добавлен 19.07.2012