Скачиваний:
9
Добавлен:
17.06.2023
Размер:
1.8 Mб
Скачать

Panel1: TPanel;

Edit1: TEdit;

ComboBox1: TComboBox;

Label1: TLabel;

Label2: TLabel;

procedure N1Click(Sender: TObject);

procedure DBGrid1TitleClick(Column: TColumn); procedure FormCreate(Sender: TObject); procedure Edit1Change(Sender: TObject); procedure Refresh;

procedure N2Click(Sender: TObject); procedure N3Click(Sender: TObject); procedure FormShow(Sender: TObject); private

{Private declarations } public

{Public declarations } end;

const

audit_SQL='SELECT * FROM audit'; var

FrmAudit: TFrmAudit;

implementation

uses DataModule, EditAudit, authorization;

{$R *.dfm}

procedure TFrmAudit.N1Click(Sender: TObject); begin

OpenForm(false);

Refresh;

end;

procedure TFrmAudit.DBGrid1TitleClick(Column: TColumn);

var s:string; i:integer; clr:TColor; begin

s:=' ASC';

clr:= clMoneyGreen;

if RadioButton2.Checked then begin

s:=' DESC'; clr:= clSkyBlue; end;

for i:=0 to DBGrid1.Columns.Count-1 do DBGrid1.Columns.Items[i].Title.Color:= clBtnFace; DBGrid1.Columns.Items[Column.Index].Title.Color:=clr;

DM.AuditQuery.Sort:=

DBGrid1.Columns.Items[Column.Index].FieldName+s;

end;

procedure TFrmAudit.FormCreate(Sender: TObject); var

i: integer; begin

DM.ADOConnection.Connected:=true;

DM.AuditQuery.SQL.Clear;

DM.AuditQuery.SQL.Add(audit_SQL+';');

DM.AuditQuery.Open;

for i:=0 to DBGrid1.Columns.Count-1 do

ComboBox1.Items.Add(DBGrid1.Columns.Items[i].Title.

Caption);

end;

42

procedure TFrmAudit.Edit1Change(Sender: TObject); Var S:String;

begin

if ComboBox1.ItemIndex=-1 then ComboBox1.ItemIndex:=0; s:=DBGrid1.Columns.Items[ComboBox1.ItemIndex].Field Name;

DM.AuditQuery.SQL.Clear;

DM.AuditQuery.SQL.Add(audit_SQL+' WHERE '+s+'

LIKE '''+Edit1.Text+'%''');

DM.AuditQuery.Open;

Refresh;

end;

procedure TFrmAudit.Refresh; var s:string;

begin

if DM.AuditQuery.FieldValues['a_id']<>null then begin

s:=DM.AuditQuery.FieldValues['a_id']; DM.AuditQuery.Close; DM.AuditQuery.Open; DM.AuditQuery.Locate('a_id',s,[]); end;

end;

procedure TFrmAudit.N2Click(Sender: TObject); begin

Refresh;

if DM.AuditQuery.FieldValues['edit']=false then begin

OpenForm(true);

Refresh; end

else

MessageDlg('Запись редактируется другим пользователем',mtError,[mbOK],0);

end;

procedure TFrmAudit.N3Click(Sender: TObject);

begin

Refresh;

if DM.AuditQuery.FieldValues['edit']=false then

begin

if MessageDlg('Удалить запись?',mtWarning,[mbYes,mbNo],0)=mrYes then//если "да"

begin DM.AuditQuery.Delete; Refresh;

end; end else

MessageDlg('Запись редактируется другим пользователем',mtError,[mbOK],0);

end;

procedure TFrmAudit.FormShow(Sender: TObject); begin

if chek='Пользователь' then begin

N1.Enabled:=false;

N2.Enabled:=false;

end;

if chek='Гость' then begin N1.Enabled:=false; N2.Enabled:=false; N3.Enabled:=false;

43

end;

procedure N2Click(Sender: TObject);

end;

procedure N3Click(Sender: TObject);

 

private

end.

{ Private declarations }

unit Oborud;

public

 

{ Public declarations }

interface

end;

 

const

uses

oborud_SQL='SELECT * FROM oborud';

Windows, Messages, SysUtils, Variants, Classes,

 

Graphics, Controls, Forms,

var

Dialogs, Grids, DBGrids, Menus, StdCtrls, ExtCtrls;

FrmOborud: TFrmOborud;

 

type

implementation

TFrmOborud = class(TForm)

 

DBGrid1: TDBGrid;

uses DataModule, authorization, EditOborud;

MainMenu1: TMainMenu;

 

N1: TMenuItem;

{$R *.dfm}

N2: TMenuItem;

 

N3: TMenuItem;

procedure TFrmOborud.FormShow(Sender: TObject);

GroupBox1: TGroupBox;

begin

RadioButton1: TRadioButton;

if chek='Пользователь' then

RadioButton2: TRadioButton;

begin

Panel2: TPanel;

N1.Enabled:=false;

Label1: TLabel;

N2.Enabled:=false;

Label2: TLabel;

end;

Edit1: TEdit;

if chek='Гость' then

ComboBox1: TComboBox;

begin

procedure FormShow(Sender: TObject);

N1.Enabled:=false;

procedure DBGrid1TitleClick(Column: TColumn);

N2.Enabled:=false;

procedure FormCreate(Sender: TObject);

N3.Enabled:=false;

procedure Edit1Change(Sender: TObject);

end;

procedure N1Click(Sender: TObject);

end;

procedure Refresh;

 

 

44

procedure TFrmOborud.DBGrid1TitleClick(Column: TColumn);

var s:string; i:integer; clr:TColor; begin

s:=' ASC';

clr:= clMoneyGreen;

if RadioButton2.Checked then begin

s:=' DESC'; clr:= clSkyBlue; end;

for i:=0 to DBGrid1.Columns.Count-1 do DBGrid1.Columns.Items[i].Title.Color:= clBtnFace; DBGrid1.Columns.Items[Column.Index].Title.Color:=clr;

DM.OborudQuery.Sort:=

DBGrid1.Columns.Items[Column.Index].FieldName+s;

end;

procedure TFrmOborud.FormCreate(Sender: TObject); var

i: integer; begin

DM.ADOConnection.Connected:=true;

DM.OborudQuery.SQL.Clear;

DM.OborudQuery.SQL.Add(oborud_SQL+';');

DM.OborudQuery.Open;

for i:=0 to DBGrid1.Columns.Count-1 do

ComboBox1.Items.Add(DBGrid1.Columns.Items[i].Title.

Caption);

end;

procedure TFrmOborud.Edit1Change(Sender: TObject); Var S:String;

begin

if ComboBox1.ItemIndex=-1 then ComboBox1.ItemIndex:=0;

s:=DBGrid1.Columns.Items[ComboBox1.ItemIndex].Field

Name;

DM.OborudQuery.SQL.Clear;

DM.OborudQuery.SQL.Add(oborud_SQL+' WHERE

'+s+' LIKE '''+Edit1.Text+'%''');

DM.OborudQuery.Open;

Refresh;

end;

procedure TFrmOborud.N1Click(Sender: TObject); begin

OpenForm(false);

Refresh;

end;

procedure TFrmOborud.Refresh; var s:string;

begin

if DM.OborudQuery.FieldValues['o_id']<>null then begin

s:=DM.OborudQuery.FieldValues['o_id'];//запоминаем код

DM.OborudQuery.Close;

DM.OborudQuery.Open;

DM.OborudQuery.Locate('o_id',s,[]);// перемещаемся на нужную позицию

end;

end;

procedure TFrmOborud.N2Click(Sender: TObject);

45

begin

Refresh;

if DM.OborudQuery.FieldValues['edit']=false then

begin

OpenForm(true);

Refresh;

end

else

MessageDlg('Запись редактируется другим пользователем',mtError,[mbOK],0); //вывод сообщения

end;

procedure TFrmOborud.N3Click(Sender: TObject);

begin

Refresh;

if DM.OborudQuery.FieldValues['edit']=false then

begin

if MessageDlg('Удалить запись?',mtWarning,[mbYes,mbNo],0)=mrYes then//если "да"

begin DM.OborudQuery.Delete; Refresh;

end; end else

MessageDlg('Запись редактируется другим пользователем',mtError,[mbOK],0);

end;

end.

unit Zakrep_oborud;

interface

uses

Windows, Messages, SysUtils, Variants, Classes,

Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, Menus, StdCtrls, ExtCtrls;

type

TFrmZakrep_oborud = class(TForm)

DBGrid1: TDBGrid;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

GroupBox1: TGroupBox;

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

Panel1: TPanel;

Label1: TLabel;

Label2: TLabel;

Edit1: TEdit;

ComboBox1: TComboBox;

N4: TMenuItem;

DBGrid2: TDBGrid;

procedure FormShow(Sender: TObject); procedure Refresh;

procedure Refresh1;

procedure Edit1Change(Sender: TObject); procedure DBGrid1TitleClick(Column: TColumn); procedure FormCreate(Sender: TObject); procedure N1Click(Sender: TObject);

procedure N2Click(Sender: TObject); procedure N3Click(Sender: TObject); procedure N4Click(Sender: TObject);

procedure DBGrid1CellClick(Column: TColumn);

procedure DBGrid1KeyUp(Sender: TObject; var Key: Word;

46

Shift: TShiftState);

private

{Private declarations } public

{Public declarations } end;

const

Zakrep_oborud_SQL='select z_id, Z.EDIT, o_name, o_inv_nomer, a_nomer from Zakrep_oborud z, oborud, audit, soed where o_id=z_o_id and audit.a_id=soed.a_id and soed.a_id=z_a_id ';

var

FrmZakrep_oborud: TFrmZakrep_oborud;

d:string;

implementation

uses DataModule, authorization, EditZakrepOborud;

{$R *.dfm}

procedure TFrmZakrep_oborud.FormShow(Sender: TObject);

begin

if chek='Пользователь' then

begin

N1.Enabled:=false;

N2.Enabled:=false;

end;

if chek='Гость' then

begin

N1.Enabled:=false;

N2.Enabled:=false;

N3.Enabled:=false;

end;

end;

procedure TFrmZakrep_oborud.Refresh1;

var s:string;

begin

if DM.ADOQuery1.FieldValues['z_id']<>null then

begin

s:=d;//запоминаем код

DM.ADOQuery1.Close;

DM.ADOQuery1.Open;

DM.ADOQuery1.Locate('z_id',s,[]);

end;

end;

procedure TFrmZakrep_oborud.Refresh;

begin

if DM.Zakrep_oborudQuery.FieldValues['z_id']<>null then

begin

d:=DM.Zakrep_oborudQuery.FieldValues['z_id'];//запоми наем код

DM.Zakrep_oborudQuery.Close;

DM.Zakrep_oborudQuery.Open;

DM.Zakrep_oborudQuery.Locate('z_id',d,[]);//

перемещаемся на нужную позицию

end;

end;

procedure TFrmZakrep_oborud.Edit1Change(Sender: TObject);

Var S:String;

begin

if ComboBox1.ItemIndex=-1 then ComboBox1.ItemIndex:=0;

47

s:=DBGrid1.Columns.Items[ComboBox1.ItemIndex].Field

Name;

DM.Zakrep_oborudQuery.SQL.Clear;

DM.Zakrep_oborudQuery.SQL.Add(Zakrep_oborud_SQL +' and ('+s+' LIKE '''+Edit1.Text+'%'') GROUP BY z_id, z.EDIT, o_name, o_inv_nomer, a_nomer');

DM.Zakrep_oborudQuery.Open;

Refresh; Refresh1;

end;

procedure TFrmZakrep_oborud.DBGrid1TitleClick(Column: TColumn);

var

s:string;

i:integer;

clr:TColor;

begin

s:=' ASC';

clr:= clMoneyGreen;

if RadioButton2.Checked then

begin

s:=' DESC';

clr:= clSkyBlue;

end;

for i:=0 to DBGrid1.Columns.Count-1 do

DBGrid1.Columns.Items[i].Title.Color:= clBtnFace;

DBGrid1.Columns.Items[Column.Index].Title.Color:=clr;

DM.Zakrep_oborudQuery.Sort:=

DBGrid1.Columns.Items[Column.Index].FieldName+s;

end;

procedure TFrmZakrep_oborud.FormCreate(Sender: TObject);

var

i: integer;

begin

DM.ADOConnection.Connected:=true;

DM.Zakrep_oborudQuery.SQL.Clear;

DM.Zakrep_oborudQuery.SQL.Add(Zakrep_oborud_SQL +' GROUP BY z_id, z.EDIT, o_name, o_inv_nomer, a_nomer;');

DM.Zakrep_oborudQuery.Open;

DM.ADOQuery1.SQL.Clear;

DM.ADOQuery1.SQL.Add('select * from zakrep_oborud');

DM.ADOQuery1.Open;

DM.AuditQuery.SQL.Clear;

DM.AuditQuery.SQL.Add('SELECT * FROM audit');

DM.AuditQuery.Open; DM.OborudQuery.SQL.Clear;

DM.OborudQuery.SQL.Add('SELECT * FROM oborud');

DM.OborudQuery.Open;

DM.ADOQuery9.SQL.Clear;

DM.ADOQuery9.SQL.Add('select s_fam from soed, sotr, audit, Zakrep_oborud where z_a_id=audit.a_id and audit.a_id=soed.a_id and soed.s_id=sotr.s_id and z_id=:PARAM');

DM.ADOQuery9.Parameters.ParamByName('PARAM').V alue:=dm.Zakrep_oborudQuery.Fields[0].AsInteger;

DM.ADOQuery9.Open;

for i:=0 to DBGrid1.Columns.Count-1 do

ComboBox1.Items.Add(DBGrid1.Columns.Items[i].Title.

Caption);

end;

procedure TFrmZakrep_oborud.N1Click(Sender: TObject);

begin

OpenForm(false);

Refresh1;

Refresh;

48

end;

procedure TFrmZakrep_oborud.N2Click(Sender: TObject);

begin

Refresh1;

Refresh;

if DM.Zakrep_oborudQuery.FieldValues['edit']=false then

begin

OpenForm(true);

Refresh;

Refresh1;

end

else

MessageDlg('Запись редактируется другим пользователем',mtError,[mbOK],0); //вывод сообщения

end;

procedure TFrmZakrep_oborud.N3Click(Sender: TObject);

begin

Refresh1;

Refresh;

if DM.Zakrep_oborudQuery.FieldValues['edit']=false then

begin

if MessageDlg('Удалить запись?',mtWarning,[mbYes,mbNo],0)=mrYes then//если "да"

begin

DM.Zakrep_oborudQuery.Delete;

Refresh;

Refresh1;

end;

end

else

MessageDlg('Запись редактируется другим пользователем',mtError,[mbOK],0);

end;

procedure TFrmZakrep_oborud.N4Click(Sender: TObject);

begin

Refresh;

Refresh1;

end;

procedure TFrmZakrep_oborud.DBGrid1CellClick(Column: TColumn);

begin

DM.ADOQuery9.SQL.Clear;

DM.ADOQuery9.SQL.Add('select s_fam from soed, sotr, audit, Zakrep_oborud where z_a_id=soed.a_id and audit.a_id=soed.a_id and soed.s_id=sotr.s_id and z_id=:PARAM');

DM.ADOQuery9.Parameters.ParamByName('PARAM').V alue:=dm.Zakrep_oborudQuery.Fields[0].AsInteger;

DM.ADOQuery9.Open;

end;

procedure TFrmZakrep_oborud.DBGrid1KeyUp(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

DM.ADOQuery9.SQL.Clear;

DM.ADOQuery9.SQL.Add('select s_fam from soed, sotr, audit, Zakrep_oborud where z_a_id=audit.a_id and audit.a_id=soed.a_id and soed.s_id=sotr.s_id and z_id=:PARAM');

DM.ADOQuery9.Parameters.ParamByName('PARAM').V alue:=dm.Zakrep_oborudQuery.Fields[0].AsInteger;

DM.ADOQuery9.Open;

end;

49

end. unit Sotr;

interface

uses

Windows, Messages, SysUtils, Variants, Classes,

Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, Menus, StdCtrls, ExtCtrls;

type

TFrmSotr = class(TForm)

DBGrid1: TDBGrid;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

GroupBox1: TGroupBox;

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

Panel1: TPanel;

Label1: TLabel;

Label2: TLabel;

Edit1: TEdit;

ComboBox1: TComboBox;

DBGrid2: TDBGrid;

procedure DBGrid1TitleClick(Column: TColumn); procedure FormCreate(Sender: TObject); procedure Edit1Change(Sender: TObject); procedure Refresh;

procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure N3Click(Sender: TObject); procedure FormShow(Sender: TObject);

procedure DBGrid1CellClick(Column: TColumn);

procedure DBGrid1KeyUp(Sender: TObject; var Key: Word;

Shift: TShiftState); private

{Private declarations } public

{Public declarations } end;

const

sotr_SQL='SELECT * FROM sotr';

var

FrmSotr: TFrmSotr; key: integer; implementation

uses DataModule, EditSotr, authorization, Audit;

{$R *.dfm}

procedure TFrmSotr.DBGrid1TitleClick(Column: TColumn);

var s:string; i:integer; clr:TColor; begin

s:=' ASC';

clr:= clMoneyGreen;

if RadioButton2.Checked then begin

s:=' DESC';

clr:= clSkyBlue;

50

end;

for i:=0 to DBGrid1.Columns.Count-1 do

DBGrid1.Columns.Items[i].Title.Color:= clBtnFace;

DBGrid1.Columns.Items[Column.Index].Title.Color:=clr;

DM.SotrQuery.Sort:=

DBGrid1.Columns.Items[Column.Index].FieldName+s;

end;

procedure TFrmSotr.FormCreate(Sender: TObject);

var

i: integer;

begin

DM.ADOConnection.Connected:=true;

DM.SotrQuery.SQL.Clear;

DM.SotrQuery.SQL.Add(sotr_SQL+';');

DM.SotrQuery.Open;

DM.AuditQuery.SQL.Clear;

DM.AuditQuery.SQL.Add(audit_SQL+';');

DM.AuditQuery.Open;

DM.ADOQuery8.SQL.Clear;

DM.ADOQuery8.SQL.Add('select * from sotr, audit, soed where sotr.s_id = soed.s_id and audit.a_id = soed.a_id and sotr.s_id=:PARAM');

DM.ADOQuery8.Parameters.ParamByName('PARAM').V alue:=dm.SotrQuery.Fields[0].AsInteger;

DM.ADOQuery8.Open;

DM.ADOQuery10.SQL.Clear;

DM.ADOQuery10.SQL.Add('select * from sotr, audit, soed where sotr.s_id = soed.s_id and audit.a_id = soed.a_id and sotr.s_id=:PARAM');

DM.ADOQuery10.Parameters.ParamByName('PARAM').

Value:=dm.SotrQuery.Fields[0].AsInteger;

DM.ADOQuery10.Open;

for i:=0 to DBGrid1.Columns.Count-1 do

ComboBox1.Items.Add(DBGrid1.Columns.Items[i].Title.

Caption);

end;

procedure TFrmSotr.Edit1Change(Sender: TObject); Var

S:String; begin

if ComboBox1.ItemIndex=-1 then ComboBox1.ItemIndex:=0;

s:=DBGrid1.Columns.Items[ComboBox1.ItemIndex].Field

Name;

DM.SotrQuery.SQL.Clear;

DM.SotrQuery.SQL.Add(sotr_SQL+' WHERE '+s+'

LIKE '''+Edit1.Text+'%''');

DM.SotrQuery.Open;

Refresh;

end;

procedure TFrmSotr.Refresh; var

s,d:string; begin

if DM.SotrQuery.FieldValues['s_id']<>null then begin

s:=DM.SotrQuery.FieldValues['s_id'];//запоминаем

код

DM.SotrQuery.Close;

DM.SotrQuery.Open;

DM.SotrQuery.Locate('s_id',s,[]);// перемещаемся на нужную позицию

end;

if DM.ADOQuery8.FieldValues['soed.s_id']<>null then begin

d:=DM.ADOQuery8.FieldValues['soed.s_id'];//запоминае м код

DM.ADOQuery8.Close;

51

Соседние файлы в папке Курсовые работы