Курсовые работы / ПРИС П _12
.pdfPanel1: 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