Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
'授权
For Each t As Table In Tables
t.Visible = True
t.AllowEdit = True
For Each c As Col In t.Cols
c.Visible = True
c.AllowEdit = True
Next
Next
For Each dr As DataRow In DataTables("授权表").DataRows
If dr("用户名")=_UserName Then
If dr.IsNull("列名") Then
Tables(dr("表名")).Visible = Not dr("不可见")
Tables(dr("表名")).AllowEdit = Not dr("不可编辑")
Else
Tables(dr("表名")).Cols(dr("列名")).Visible = Not dr("不可见")
Tables(dr("表名")).Cols(dr("列名")).AllowEdit = Not dr("不可编辑")
End If
End If
Next
If _UserGroup = "管理员" Then
Tables("授权表").Visible = True
Else
Tables("授权表").Visible = False
End If
Tables("数据加载").Visible = False
这是我写的一段可视化授权代码,但是就是不起作用,不知道哪儿有问题,请大家看看,实在是没辙了,以管理员组登录时,授权表不可见。
发布的程序,不管是不是开发者,都不具备开发功能。
另外你完全理解错误,自定义用户管理和普通的代码一样,并没有什么特殊,不要以为自定义的用户管理代替了系统的用户管理后,系统的用户管理会失效。
系统的用户管理始终生效,foxtable自身使用的始终是系统的用户,而不是你的自定义用户,你的用户只适合你自己编写的代码。
If _UserGroup = "管理员" Then
Tables("授权表").Visible = True
Else If User.Type=UserTypeEnum.Developer Orelse User.Type=UserTypeEnum.User Then
Tables("授权表").Visible = True
Else
Tables("授权表").Visible = False
End If
用这样的办法,项目发布后就可以使“授权表”以管理员身份登录时显示出来,但是不论以自定义的哪一个用户登录都将显示出来,又达不到要隐藏的目的。而用下面一段代码就不能使“授权表”显示出来,而是隐藏了
If _UserGroup = "管理员" Then
Tables("授权表").Visible = True
Else
Tables("授权表").Visible = False
End If
你大概是自己把自己转晕了,我也被你搞晕了,你自己MessageBox.show(_UserGroup)看看吧。