📄 uuser.pas
字号:
unit uuser;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, ExtCtrls, Mask, Grids, DBGrids, RzTabs,
ComCtrls, DB, ADODB, RzButton, FR_Class;
type
Tfrmuser = class(TForm)
TreeView1: TTreeView;
RzPageControl1: TRzPageControl;
TabSheet1: TRzTabSheet;
TabSheet2: TRzTabSheet;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBComboBox1: TDBComboBox;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
Image1: TImage;
Label6: TLabel;
DBMemo1: TDBMemo;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
DataSource1: TDataSource;
ADOQuery3: TADOQuery;
RzBitBtn1: TRzBitBtn;
RzBitBtn2: TRzBitBtn;
RzBitBtn3: TRzBitBtn;
RzBitBtn4: TRzBitBtn;
RzBitBtn5: TRzBitBtn;
RzBitBtn6: TRzBitBtn;
RzBitBtn7: TRzBitBtn;
OpenPictureDialog1: TOpenDialog;
DBEdit5: TDBEdit;
ADOQuery3dh: TStringField;
ADOQuery3xm: TStringField;
ADOQuery3dw: TStringField;
ADOQuery3password: TStringField;
ADOQuery3jb: TStringField;
ADOQuery3photo_file: TStringField;
ADOQuery3zx: TStringField;
ADOQuery3computer: TWideStringField;
ADOQuery3node: TMemoField;
ADOQuery3photo: TBlobField;
frReport1: TfrReport;
procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
procedure RzBitBtn1Click(Sender: TObject);
procedure RzBitBtn2Click(Sender: TObject);
procedure RzBitBtn3Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure RzBitBtn4Click(Sender: TObject);
procedure RzBitBtn7Click(Sender: TObject);
procedure RzBitBtn6Click(Sender: TObject);
procedure DBGrid1DblClick(Sender: TObject);
procedure Image1DblClick(Sender: TObject);
procedure TabSheet2Enter(Sender: TObject);
procedure ADOQuery3RecordChangeComplete(DataSet: TCustomADODataSet;
const Reason: TEventReason; const RecordCount: Integer;
const Error: Error; var EventStatus: TEventStatus);
procedure FormCreate(Sender: TObject);
procedure RzBitBtn5Click(Sender: TObject);
procedure Image1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
DH:STRING;
node:ttreenode;
node1:ttreenode;
addedit:boolean;
kzm:string;
public
{ Public declarations }
end;
var
frmuser: Tfrmuser;
implementation
uses uconst,ufunction,udm1,unit3,uphoto;
{$R *.dfm}
procedure Tfrmuser.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
case node.Level of
0:
strsql:='select * from sec order by dh asc';
1:
strsql:='select * from sec where jb='+''''+trim(node.Text)+''''+' order by dh asc';
2:
strsql:='select * from sec where XM='+''''+trim(node.Text)+'''';
end;
adoexect(adoquery3,strsql);
loadpicture(adoquery3,image1,trim(dbedit5.text),'photo');
end;
procedure Tfrmuser.RzBitBtn1Click(Sender: TObject);
begin
addedit:=true;
RzBitBtn1.Enabled:=false;
RzBitBtn2.Enabled:=false;
RzBitBtn3.Enabled:=true;
treeview1.Enabled:=false;
TabSheet1.Enabled:=false;
image1.enabled:=true;
adoquery3.Append;
dh:='无';
RzPageControl1.ActivePageIndex:=1;
end;
procedure Tfrmuser.RzBitBtn2Click(Sender: TObject);
begin
if adoquery3.Recordset.eof and adoquery3.Recordset.BOF then exit;
addedit:=false;
RzBitBtn1.Enabled:=false;
RzBitBtn2.Enabled:=false;
RzBitBtn3.Enabled:=true;
treeview1.Enabled:=false;
TabSheet1.Enabled:=false;
image1.enabled:=true;
adoquery3.Edit;
RzPageControl1.ActivePageIndex:=1;
TreeView1.Enabled:=false;
TabSheet1.Enabled:=false;
DH:=TRIM(DBEDIT1.Text);
end;
procedure Tfrmuser.RzBitBtn3Click(Sender: TObject);
var
i:integer;
begin
strsql:='select * from sec where dh='+''''+trim(dbedit1.Text)+'''';
adoexect(adoquery1,strsql);
if addedit and not(adoquery1.Recordset.EOF and adoquery1.Recordset.bof) then
begin
messagebox(handle,'该帐号已经存在,请选用其他帐号!','警告',mb_ok+mb_iconwarning);
exit;
end;
if not addedit and not(adoquery1.Recordset.EOF and adoquery1.Recordset.bof) and (dh<>trim(dbedit1.Text)) then
begin
messagebox(handle,'该帐号已经存在,请选用其他帐号!','警告',mb_ok+mb_iconwarning);
exit;
end;
savepicture(adoquery3,image1,kzm,'photo');
RzBitBtn1.Enabled:=true;
RzBitBtn2.Enabled:=true;
RzBitBtn3.Enabled:=false;
treeview1.Enabled:=true;
TabSheet1.Enabled:=true;
image1.enabled:=false;
dbedit5.Text:='bmp';
adoquery3.Post;
strsql:='select * from user_qxsz where dh='+''''+dh+'''';
adoexect(adoquery1,strsql);
if addedit then
begin
adoquery1.Append;
adoquery1.FieldByName('dh').AsString:=trim(dbedit1.Text);
adoquery1.FieldByName('xqd_add').Value:=false;
adoquery1.FieldByName('xqd_edit').Value:=false;
adoquery1.FieldByName('xqd_del').Value:=false;
adoquery1.FieldByName('xqd_print').Value:=false;
adoquery1.FieldByName('jhd_add').Value:=false;
adoquery1.FieldByName('jhd_edit').Value:=false;
adoquery1.FieldByName('jhd_del').Value:=false;
adoquery1.FieldByName('jhd_print').Value:=false;
adoquery1.FieldByName('bjd_add').Value:=false;
adoquery1.FieldByName('bjd_edit').Value:=false;
adoquery1.FieldByName('bjd_del').Value:=false;
adoquery1.FieldByName('bjd_print').Value:=false;
adoquery1.FieldByName('cgdd_add').Value:=false;
adoquery1.FieldByName('cgdd_edit').Value:=false;
adoquery1.FieldByName('cgdd_del').Value:=false;
adoquery1.FieldByName('cgdd_print').Value:=false;
adoquery1.FieldByName('thd_add').Value:=false;
adoquery1.FieldByName('thd_edit').Value:=false;
adoquery1.FieldByName('thd_del').Value:=false;
adoquery1.FieldByName('thd_print').Value:=false;
adoquery1.FieldByName('fld_add').Value:=false;
adoquery1.FieldByName('fld_edit').Value:=false;
adoquery1.FieldByName('fld_del').Value:=false;
adoquery1.FieldByName('fld_print').Value:=false;
adoquery1.FieldByName('shd_add').Value:=false;
adoquery1.FieldByName('shd_edit').Value:=false;
adoquery1.FieldByName('shd_del').Value:=false;
adoquery1.FieldByName('shd_print').Value:=false;
adoquery1.FieldByName('bfd_add').Value:=false;
adoquery1.FieldByName('bfd_edit').Value:=false;
adoquery1.FieldByName('bfd_del').Value:=false;
adoquery1.FieldByName('bfd_print').Value:=false;
adoquery1.FieldByName('hld_add').Value:=false;
adoquery1.FieldByName('hld_edit').Value:=false;
adoquery1.FieldByName('hld_del').Value:=false;
adoquery1.FieldByName('hld_print').Value:=false;
adoquery1.FieldByName('bsd_add').Value:=false;
adoquery1.FieldByName('bsd_edit').Value:=false;
adoquery1.FieldByName('bsd_del').Value:=false;
adoquery1.FieldByName('bsd_print').Value:=false;
adoquery1.FieldByName('pdd_add').Value:=false;
adoquery1.FieldByName('pdd_edit').Value:=false;
adoquery1.FieldByName('pdd_del').Value:=false;
adoquery1.FieldByName('pdd_print').Value:=false;
adoquery1.FieldByName('xqwltj').Value:=false;
adoquery1.FieldByName('cgwltj').Value:=false;
adoquery1.FieldByName('wlrktj').Value:=false;
adoquery1.FieldByName('wlcktj').Value:=false;
adoquery1.FieldByName('jbzl_add').Value:=false;
adoquery1.FieldByName('jbzl_edit').Value:=false;
adoquery1.FieldByName('jbzl_del').Value:=false;
adoquery1.FieldByName('jbzl_print').Value:=false;
adoquery1.FieldByName('user_add').Value:=false;
adoquery1.FieldByName('user_edit').Value:=false;
adoquery1.FieldByName('user_del').Value:=false;
adoquery1.FieldByName('bom_add').Value:=false;
adoquery1.FieldByName('bom_edit').Value:=false;
adoquery1.FieldByName('bom_del').Value:=false;
adoquery1.FieldByName('bom_print').Value:=false;
adoquery1.FieldByName('ddk_add').Value:=false;
adoquery1.FieldByName('ddk_edit').Value:=false;
adoquery1.FieldByName('ddk_del').Value:=false;
adoquery1.FieldByName('company').Value:=false;
adoquery1.FieldByName('date_ys').Value:=false;
adoquery1.FieldByName('date_clean').Value:=false;
adoquery1.FieldByName('date_restore').Value:=false;
adoquery1.FieldByName('date_bak').Value:=false;
adoquery1.FieldByName('gzd_print').Value:=false;
adoquery1.FieldByName('dgdshqk').Value:=false;
adoquery1.FieldByName('bom_print').Value:=false;
adoquery1.FieldByName('wlfp_print').Value:=false;
adoquery1.FieldByName('wlfp_edit').Value:=false;
adoquery1.FieldByName('wlfp_del').Value:=false;
adoquery1.FieldByName('cgdd_shhe').Value:=false;
adoquery1.FieldByName('jhd_shhe').Value:=false;
adoquery1.FieldByName('wljctj').Value:=false;
adoquery1.Post;
end else begin
adoquery1.Edit;
adoquery1.FieldByName('dh').AsString:=trim(dbedit1.Text);
adoquery1.Post;
end;
if dh=userid then
userid:=trim(dbedit1.Text);
TreeView1.Enabled:=true;
TabSheet1.Enabled:=true;
FormShow(self);
end;
procedure Tfrmuser.FormShow(Sender: TObject);
begin
adoquery1.Connection:=dm1.ADOConnection1;
adoquery2.Connection:=dm1.ADOConnection1;
strsql:='select distinct jb from sec order by jb asc';
adoexect(adoquery1,strsql);
if not(adoquery1.Recordset.eof and adoquery1.Recordset.BOF) then
begin
adoquery1.First;
treeview1.Items.Clear;
node:=treeview1.Items.AddFirst(nil,'操作员帐号列表');
while not adoquery1.Eof do
begin
node1:=treeview1.Items.AddChild(node,trim(adoquery1.fieldbyname('jb').AsString));
strsql:='select * from sec where jb='+''''+trim(adoquery1.fieldbyname('jb').AsString)+''''+'order by dh asc';
adoexect(adoquery2,strsql);
if not(adoquery2.Recordset.eof and adoquery2.Recordset.BOF) then
begin
adoquery2.First;
while not adoquery2.Recordset.EOF do
begin
treeview1.Items.AddChild(node1,trim(adoquery2.fieldbyname('xm').AsString));
adoquery2.Next;
end;
end;
adoquery1.Next;
end;
end;
adoquery1.Close;
adoquery2.Close;
end;
procedure Tfrmuser.RzBitBtn4Click(Sender: TObject);
begin
if adoquery3.Recordset.eof and adoquery3.Recordset.BOF then exit;
strsql:='delete from user_qxsz where dh='+''''+trim(dbedit1.Text)+'''';
adodel(adoquery2,strsql);
adoquery3.Delete;
FormShow(self);
end;
procedure Tfrmuser.RzBitBtn7Click(Sender: TObject);
begin
close;
end;
procedure Tfrmuser.RzBitBtn6Click(Sender: TObject);
begin
RzBitBtn1.Enabled:=true;
RzBitBtn2.Enabled:=true;
RzBitBtn3.Enabled:=false;
treeview1.Enabled:=true;
TabSheet1.Enabled:=true;
image1.enabled:=false;
adoquery3.CancelUpdates;
end;
procedure Tfrmuser.DBGrid1DblClick(Sender: TObject);
begin
RzPageControl1.ActivePageIndex:=1;
end;
procedure Tfrmuser.Image1DblClick(Sender: TObject);
var
i:integer;
begin
if OpenPictureDialog1.Execute then begin
image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
i:=pos('.',OpenPictureDialog1.FileName);
kzm:=copy(OpenPictureDialog1.FileName,i+1,length(OpenPictureDialog1.FileName)-i);
dbedit5.text:=kzm;
end;
end;
procedure Tfrmuser.TabSheet2Enter(Sender: TObject);
begin
loadpicture(adoquery3,image1,trim(dbedit5.text),'photo');
end;
procedure Tfrmuser.ADOQuery3RecordChangeComplete(
DataSet: TCustomADODataSet; const Reason: TEventReason;
const RecordCount: Integer; const Error: Error;
var EventStatus: TEventStatus);
begin
loadpicture(adoquery3,image1,trim(dbedit5.text),'photo');
end;
procedure Tfrmuser.FormCreate(Sender: TObject);
begin
DBComboBox1.Items.Clear;
DBComboBox1.Items.add('系统维护');
DBComboBox1.Items.add('生产部');
DBComboBox1.Items.add('采购部');
DBComboBox1.Items.add('货仓部');
end;
procedure Tfrmuser.RzBitBtn5Click(Sender: TObject);
begin
form3.frDBDataSet1.dataset:=adoquery3;
form3.frReport1.DoublePass := True;
form3.frReport1.Clear;
form3.frReport1.LoadFromFile(strpath+'/report/user.frf');
frVariables['username']:=username;
form3.frReport1.Preview := Form3.frPreview1;
if form3.frReport1.PrepareReport then
begin
form3.frReport1.ShowPreparedReport;
end;
form3.ShowModal;
end;
procedure Tfrmuser.Image1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if button=mbright then begin
frmphoto:=tfrmphoto.Create(self);
frmphoto.Image1.Picture:=image1.Picture;
frmphoto.Show;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -