
delphi中这段代码是什么意思。菜鸟求教,知道的说下谢谢了!!
procedureTMainFrm.IniMainForm;functionChkMenu(MenuStr:string):Boolean;beginifUpperCas...
procedure TMainFrm.IniMainForm;
function ChkMenu(MenuStr: string): Boolean;
begin
if UpperCase(gOperId) = 'CMJB' then
result := true
else begin
IDcardDm.dtTmp.Close;
IDcardDm.dtTmp.CommandText := 'Select * from OperRights where '
+ ' UserID=''' + gOperId + ''' and charindex(''' + MenuStr + ''',moldname)>0 ';
IDcardDm.dtTmp.Open;
if IDcardDm.dtTmp.RecordCount > 0 then
result := true
else
result := false;
end;
end; 展开
function ChkMenu(MenuStr: string): Boolean;
begin
if UpperCase(gOperId) = 'CMJB' then
result := true
else begin
IDcardDm.dtTmp.Close;
IDcardDm.dtTmp.CommandText := 'Select * from OperRights where '
+ ' UserID=''' + gOperId + ''' and charindex(''' + MenuStr + ''',moldname)>0 ';
IDcardDm.dtTmp.Open;
if IDcardDm.dtTmp.RecordCount > 0 then
result := true
else
result := false;
end;
end; 展开
5个回答
展开全部
第一,特权用户是'CMJB' 如果是'CMJB'登录,返回真.
第二,如果不是"CMJB"登录,读取OperRights(应该是OpneRights)表,看用户ID(UserID)与界面的比较结果,如果OperRights里有记录,返回真,否则返回假.
第二,如果不是"CMJB"登录,读取OperRights(应该是OpneRights)表,看用户ID(UserID)与界面的比较结果,如果OperRights里有记录,返回真,否则返回假.
展开全部
procedure TMainFrm.IniMainForm; //给窗体类TMainFrm 定义方法IniMainForm
function ChkMenu(MenuStr: string): Boolean;// 在 IniMainForm 方法里面定义 ChkMenu函数
IDcardDm.dtTmp.CommandText := 'Select * from OperRights where '
+ ' UserID=''' + gOperId + ''' and charindex(''' + MenuStr + ''',moldname)>0 ';
//使用ado控件打开sql语句,查看 moldname 是否包含在MenuStr 里,charindex 是sqlserver 的函数,CHARINDEX函数常常用来在一段字符中搜索字符或者字符串。
总体来说,ChkMenu 函数只有在 gOperId 全部大写后 是 'CMJB' 或者
'Select * from OperRights where '
+ ' UserID=''' + gOperId + ''' and charindex(''' + MenuStr + ''',moldname)>0 语句有结果,该函数才放回真,否则返回假
function ChkMenu(MenuStr: string): Boolean;// 在 IniMainForm 方法里面定义 ChkMenu函数
IDcardDm.dtTmp.CommandText := 'Select * from OperRights where '
+ ' UserID=''' + gOperId + ''' and charindex(''' + MenuStr + ''',moldname)>0 ';
//使用ado控件打开sql语句,查看 moldname 是否包含在MenuStr 里,charindex 是sqlserver 的函数,CHARINDEX函数常常用来在一段字符中搜索字符或者字符串。
总体来说,ChkMenu 函数只有在 gOperId 全部大写后 是 'CMJB' 或者
'Select * from OperRights where '
+ ' UserID=''' + gOperId + ''' and charindex(''' + MenuStr + ''',moldname)>0 语句有结果,该函数才放回真,否则返回假
展开全部
这个效率也太低了吧。。。如果有1000个菜单项目,就要执行1000次啊。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询