📄 qxgl_form.pas
字号:
SCZH:=QX_DG.Fields[0].AsString;
YHGNB_Q:=TADOQuery.Create(nil);
YHGNB_Q.Connection:=Connect;
{YHGNB_Q.SQL.Add('delect * from 用户功能表 where 帐号=:帐号');
YHGNB_Q.Parameters.ParamByName('帐号').Value:=QX_DG.Fields[0].AsString;
YHGNB_Q.ExecSQL;}
YHGNB_Q.Close;
YHGNB_Q.SQL.Clear;
YHGNB_Q.SQL.Add('select * from 用户功能表 where 帐号=:帐号');
YHGNB_Q.Parameters.ParamByName('帐号').Value:=QX_DG.Fields[0].AsString;
YHGNB_Q.Open;
while not YHGNB_Q.Eof do YHGNB_Q.Delete;
YHB_T.Locate('帐号',QX_DG.Fields[0].AsString,[]);
YHB_T.Delete;
QXBH_FE.Text:='';
QXXM_FE.Text:='';
ZM_FCB.ItemIndex:=0;
XMM_FE.Text:='';
QR_FE.Text:='';
QXGL_Q.Requery;
Display;
CZRZ:=' '+SCZH+'帐号删除成功'+' '+timetostr(time);
CZRZ_F.CZRZ_FM.Lines.Add(CZRZ);
WriteCZRZ;
end;
//FreeAndNil(YHB_Q);
// FreeAndNil(ZGNB_Q);
//FreeAndNil(YHGNB_Q);
end;
procedure TQXGL_F.CZ_FBClick(Sender: TObject);
begin
if ZH_FE.Text='' then
begin
if ZH_FRB.Checked then
ZH:=trim(QX_DG.Fields[0].AsString);
if XM_FRB.Checked then
ZH:=trim(QX_DG.Fields[1].AsString);
if QX_FRB.Checked then
ZH:=trim(QX_DG.Fields[2].AsString);
end
else
ZH:=trim(ZH_FE.Text);
FlatGroupBox2.Caption:=QX_DG.Fields[1].AsString+ '用户已有权限:';
if ZH_FRB.Checked then
if not QXGL_Q.Locate('帐号',ZH,[]) then //根据Zh_FE(帐号)查找,DBGRID定位
showmessage('此帐号不存在');
if XM_FRB.Checked then
if not QXGL_Q.Locate('姓名',ZH,[]) then
showmessage('此用户不存在');
if QX_FRB.Checked then
if not QXGL_Q.Locate('组名',ZH,[]) then
showmessage('此组名不存在');
QXBH_FE.Text:=QX_DG.Fields[0].AsString;
QXXM_FE.Text:=QX_DG.Fields[1].AsString;
ZM_FCB.ItemIndex:=ZM_FCB.Items.IndexOf(QX_DG.Fields[2].AsString);//QX_DGMouseUp(QX_DG);
QXGL_Q1.Close;
QXGL_Q1.SQL.Clear;
QXGL_Q1.SQL.Add('Select 功能名,A.功能号 From 用户功能表 A,功能表 B Where 帐号=:帐号 and A.功能号=B.功能号');
//QXGL_Q1.Parameters.ParamByName('帐号').Value:=ZH;
QXGL_Q1.Parameters.ParamByName('帐号').Value:=QXGL_Q.FieldValues['帐号'];
QXGL_Q1.Open;
if QXGL_Q1.RecordCount>0 then
begin
QXGL_Q1.Close;
QX_DS1.DataSet:=QXGL_Q1;
QX_DG1.Columns[0].FieldName:='功能名';
QXGL_Q1.Open;
end;
if QXXG_FRBtn.Checked then
begin
QXBH_FE.Enabled:=False;
QXXM_FE.Enabled:=True;
XMM_FE.Enabled:=True;
QR_FE.Enabled:=True;
end;
if ZHSC_FRBtn.Checked then
begin
QXBH_FE.Enabled:=False;
QXXM_FE.Enabled:=False;
XMM_FE.Enabled:=False;
QR_FE.Enabled:=False;
end;
ZH_FE.Text:='';
//ZH_FE.SetFocus;
end;
procedure TQXGL_F.FlatButton1Click(Sender: TObject);
begin
close;
end;
//******************************************************************************
procedure TQXGL_F.FlatButton2Click(Sender: TObject);
{var
Del_Flag:integer;
GNB_T:TADOTable;
GNB_Q:TADOQuery;
HSXX_Q:TADOQuery; }
begin
{GNB_T:=TADOTable.Create(nil);
GNB_T.Connection:=Connect;
GNB_T.TableName:='功能表';
GNB_T.Open;
GNB_Q:=TADOQuery.Create(nil);
GNB_Q.Connection:=Connect;
HSXX_Q:=TADOQuery.Create(nil);
HSXX_Q.Connection:=Connect;
HSXX_Q.SQL.Add('select * from 用户功能表');
HSXX_Q.SQL.Add('where 帐号=:帐号');
HSXX_Q.Parameters.ParamByName('帐号').Value:=ZH;
HSXX_Q.Open;
if HSXX_Q.RecordCount>0 then
begin
Del_Flag:=MessageBox(handle,'警告:删除是永久的不可恢复的!确认删除吗?','删除确认',MB_OKCANCEL or MB_ICONWarning);
if Del_Flag=IDCancel then exit;
GNB_T.Locate('功能名',QX_DG1.Fields[0].AsString,[]);
GNB_Q.SQL.Add('select * from 用户功能表 where 功能号=:功能号 and 帐号=:帐号' );
GNB_Q.Parameters.ParamByName('功能号').Value:=GNB_T.FieldValues['功能号'];
GNB_Q.Parameters.ParamByName('帐号').Value:=ZH;
GNB_Q.Open;
if (GNB_Q.FieldValues['功能号']='10') or (GNB_Q.FieldValues['功能号']='20') then
begin
MessageBox(handle,'不能删除此功能','错误',MB_OK or MB_ICONERROR);
exit;
end ;
CZRZ:=' '+ZH+'帐号删除'+GNB_T.FieldByName('功能名').AsString+'权限 '+timetostr(time);
CZRZ_F.CZRZ_FM.Lines.Add(CZRZ);
WriteCZRZ;
GNB_Q.Delete;
QXGL_Q1.Requery;
//FreeAndNil(GNB_Q);
end
else
begin
if ZH<>'' then
MessageBox(handle,'没有要删除的权限','没有要删除的权限',MB_OK or MB_ICONERROR)
else
MessageBox(handle,'请先指定帐号','请先指定帐号',MB_OK or MB_ICONERROR);
end;
ZH_FE.Text:='';
//FreeAndNil(GNB_T);
//FreeAndNil(GNB_Q);
//FreeAndNil(HSXX_Q); }
end;
//******************************************************************************
procedure TQXGL_F.TJ_FBClick(Sender: TObject);
{var
p:TPoint; }
begin
{if ZH=''then
begin
MessageBox(handle,'请先在左面选择帐户','请选择帐户',MB_OK or MB_ICONERROR);
exit;
end
else
begin
P.x := TJ_FB.Left+TJ_FB.Width;
P.y := TJ_FB.Top;
GNB_F.Top := FlatGroupBox2.ClientToScreen(P).y;
GNB_F.Left := FlatGroupBox2.ClientToScreen(P).x;
//GNB_F.Show(Edit1);
GNB_F.ShowModal;
end; }
end;
//******************************************************************************
procedure TQXGL_F.ZH_FEKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=VK_RETURN then CZ_FBClick(CZ_FB);
end;
//******************************************************************************
procedure TQXGL_F.QR_FEKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=VK_RETURN then QXZX_FBtnClick(QXZX_FBtn);
end;
//******************************************************************************
procedure TQXGL_F.QX_DGMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
CZ_FBClick(CZ_FB);
end;
//******************************************************************************
procedure TQXGL_F.FlatButton3Click(Sender: TObject);
begin
Close;
end;
//******************************************************************************
procedure TQXGL_F.ZHSC_FRBtnClick(Sender: TObject);
begin
QXBH_FE.Enabled:=False;
QXXM_FE.Enabled:=False;
ZM_FCB.Enabled:=False;
XMM_FE.Enabled:=False;
QR_FE.Enabled:=False;
CZ_FB.Enabled:=True;
ZH_FE.Enabled:=True;
QX_DG.Enabled:=True;
Display;
end;
//******************************************************************************
procedure TQXGL_F.YHGL_PCChange(Sender: TObject);
begin
if YHGL_PC.ActivePage=ZHGL_TS then
QXZX_FBtn.Visible:=true
else
QXZX_FBtn.Visible:=false;
end;
//******************************************************************************
procedure TQXGL_F.N2Click(Sender: TObject);
var
p:TPoint;
begin
if ZH=''then
begin
MessageBox(handle,'请先在左面选择帐户','请选择帐户',MB_OK or MB_ICONERROR);
exit;
end
else
begin
P.x := QX_DG1.Left+QX_DG1.Width;
P.y := QX_DG1.Top;
GNB_F.Top := FlatGroupBox2.ClientToScreen(P).y;
GNB_F.Left := FlatGroupBox2.ClientToScreen(P).x;
//GNB_F.Show(Edit1);
GNB_F.ShowModal;
end;
end;
//******************************************************************************
procedure TQXGL_F.N3Click(Sender: TObject);
var
Del_Flag:integer;
GNB_T:TADOTable;
GNB_Q:TADOQuery;
HSXX_Q:TADOQuery;
begin
GNB_T:=TADOTable.Create(nil);
GNB_T.Connection:=Connect;
GNB_T.TableName:='功能表';
GNB_T.Open;
GNB_Q:=TADOQuery.Create(nil);
GNB_Q.Connection:=Connect;
HSXX_Q:=TADOQuery.Create(nil);
HSXX_Q.Connection:=Connect;
HSXX_Q.SQL.Add('select * from 用户功能表');
HSXX_Q.SQL.Add('where 帐号=:帐号');
HSXX_Q.Parameters.ParamByName('帐号').Value:=ZH;
HSXX_Q.Open;
if HSXX_Q.RecordCount>0 then
begin
Del_Flag:=MessageBox(handle,'警告:删除是永久的不可恢复的!确认删除吗?','删除确认',MB_OKCANCEL or MB_ICONWarning);
if Del_Flag=IDCancel then exit;
GNB_T.Locate('功能名',QX_DG1.Fields[0].AsString,[]);
GNB_Q.SQL.Add('select * from 用户功能表 where 功能号=:功能号 and 帐号=:帐号' );
GNB_Q.Parameters.ParamByName('功能号').Value:=GNB_T.FieldValues['功能号'];
GNB_Q.Parameters.ParamByName('帐号').Value:=ZH;
GNB_Q.Open;
if (GNB_Q.FieldValues['功能号']='10') or (GNB_Q.FieldValues['功能号']='20') then
begin
MessageBox(handle,'不能删除此功能','错误',MB_OK or MB_ICONERROR);
exit;
end ;
CZRZ:=' '+ZH+'帐号删除'+GNB_T.FieldByName('功能名').AsString+'权限 '+timetostr(time);
CZRZ_F.CZRZ_FM.Lines.Add(CZRZ);
WriteCZRZ;
GNB_Q.Delete;
QXGL_Q1.Requery;
//FreeAndNil(GNB_Q);
end
else
begin
if ZH<>'' then
MessageBox(handle,'没有要删除的权限','没有要删除的权限',MB_OK or MB_ICONERROR)
else
MessageBox(handle,'请先指定帐号','请先指定帐号',MB_OK or MB_ICONERROR);
end;
ZH_FE.Text:='';
//FreeAndNil(GNB_T);
//FreeAndNil(GNB_Q);
//FreeAndNil(HSXX_Q);
end;
//******************************************************************************
procedure TQXGL_F.N1Click(Sender: TObject);
var
YHGNB_Q:TADOQuery;
Flag:integer;
SCZH:String;//要删除的帐号
begin
if UserName=QX_DG.Fields[0].AsString then
showmessage('此帐号正在使用中,不能删除')
else
begin
Flag:=MessageBox(handle,'警告:删除是永久的不可恢复的!确认删除吗?','确认删除',MB_OKCANCEL or MB_ICONWarning);
if flag=IDCANCEL then exit;
SCZH:=QX_DG.Fields[0].AsString;
YHGNB_Q:=TADOQuery.Create(nil);
YHGNB_Q.Connection:=Connect;
{YHGNB_Q.SQL.Add('delect * from 用户功能表 where 帐号=:帐号');
YHGNB_Q.Parameters.ParamByName('帐号').Value:=QX_DG.Fields[0].AsString;
YHGNB_Q.ExecSQL;}
YHGNB_Q.Close;
YHGNB_Q.SQL.Clear;
YHGNB_Q.SQL.Add('select * from 用户功能表 where 帐号=:帐号');
YHGNB_Q.Parameters.ParamByName('帐号').Value:=QX_DG.Fields[0].AsString;
YHGNB_Q.Open;
while not YHGNB_Q.Eof do YHGNB_Q.Delete;
YHB_T.Locate('帐号',QX_DG.Fields[0].AsString,[]);
YHB_T.Delete;
QXBH_FE.Text:='';
QXXM_FE.Text:='';
ZM_FCB.ItemIndex:=0;
XMM_FE.Text:='';
QR_FE.Text:='';
QXGL_Q.Requery;
Display;
CZRZ:=' '+SCZH+'帐号删除成功'+' '+timetostr(time);
CZRZ_F.CZRZ_FM.Lines.Add(CZRZ);
WriteCZRZ;
end;
end;
//******************************************************************************
procedure TQXGL_F.QX_DG1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
num:=self.HelpContext;
F1_Help(key);
end;
//******************************************************************************
procedure TQXGL_F.QXXG_FRBtnKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
num:=self.HelpContext;
F1_Help(key);
end;
//******************************************************************************
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -