【delphi开源代码栏目提醒】:网学会员,鉴于大家对delphi开源代码十分关注,论文会员在此为大家搜集整理了“FormRights.pas”一文,供大家参考学习!
unit FormRights;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, StdCtrls, DBCtrls, ExtCtrls;
type
Trights = class(TForm)
GroupBox1: TGroupBox;
ListBox1: TListBox;
GroupBox2: TGroupBox;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
ComboBox1: TComboBox;
Panel1: TPanel;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
CheckBox5: TCheckBox;
CheckBox6: TCheckBox;
CheckBox7: TCheckBox;
Button1: TButton;
Label1: TLabel;
ADOQuery3: TADOQuery;
ADOCommand1: TADOCommand;
Label2: TLabel;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
rights: Trights;
UserName:string;
UserNumber,MaxNumber:string;
order:integer;
implementation
uses FormManage;
{$R *.dfm}
//-----------关闭窗体时同时关闭对权限清单的插入许可功能------------------
procedure Trights.FormClose(Sender: TObject; var Action: TCloseAction);
begin
//先将对权限清单表的插入功能关闭
adocommand1.CommandText:='SET IDENTITY_INSERT 权限清单 off';
adocommand1.Execute;
//关闭窗体是返回上一级窗体
manage.show;
end;
//------------------窗体显示时,为下拉列表框设置用户词典------------------------
//-------------------不允许对管理员sys的权限进行设置-------------------------
procedure Trights.FormShow(Sender: TObject);
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text:='select distinct from 用户清单 where !=''sys''';
adoquery1.Open;
combobox1.Clear;
while not adoquery1.Eof do
begin
combobox1.Items.Add(adoquery1.fieldbyname('').AsString);
adoquery1.Next;
end
end;
//--------------将下拉
列表中选中的用户所对应拥有的权限显示在列表框中---------
procedure Trights.ComboBox1Change(Sender: TObject);
var
str,temp:string;
begin
adoquery2.Close;
adoquery2.SQL.clear;
adoquery2.SQL.Text:='select 权限名称 from 权限清单 where 用户编号=(select 用户编号 from 用户清单 where ='''+combobox1.Text+''''+')';
adoquery2.Open;
listbox1.Clear;
while not adoquery2.Eof do
begin
temp:=adoquery2.fieldbyname('权限名称').AsString;
listbox1.Items.Add(temp);
adoquery2.Next;
end;
//----------------------根据用户的权限修改checkbox中的内容-----------
//--------------------判断用户是否拥有商品清单管理权限--------------
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('select 用户编号 from 权限清单 where (用户编号=(select 用户编号 from 用户清单 where ='''+combobox1.Text+'''))and(权限名称='''+checkbox1.Caption+''')');
adoquery2.Open;
if adoquery2.FieldByName('用户编号').AsString<>'' then
checkbox1.Checked:=true
else
checkbox1.Checked:=false;
//--------------------判断用户是否拥有供货商资料管理权限--------------
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('select 用户编号 from 权限清单 where (用户编号=(select 用户编号 from 用户清单 where ='''+combobox1.Text+'''))and(权限名称='''+checkbox2.Caption+''')');
adoquery2.Open;
if adoquery2.FieldByName('用户编号').AsString<>'' then
checkbox2.Checked:=true
else
checkbox2.Checked:=false;
//--------------------判断用户是否拥有客户资料管理权限--------------
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('select 用户编号 from 权限清单 where (用户编号=(select 用户编号 from 用户清单 where ='''+combobox1.Text+'''))and(权限名称='''+checkbox3.Caption+''')');
adoquery2.Open;
if adoquery2.FieldByName('用户编号').AsString<>'' then
checkbox3.Checked:=true
else
checkbox3.Checked:=false;
//--------------------判断用户是否拥有进货单权限--------------
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('select 用户编号 from 权限清单 where (用户编号=(select 用户编号 from 用户清单 where ='''+combobox1.Text+'''))and(权限名称='''+checkbox4.Caption+''')');
adoquery2.Open;
if adoquery2.FieldByName('用户编号').AsString<>'' then
checkbox4.Checked:=true
else
checkbox4.Checked:=false;
//--------------------判断用户是否拥有商品销售单管理权限--------------
adoquery2.Close;
adoquery2.SQL.Clear;