以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]授权表 用户管理可行,但用用户数据表就不能用了。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=76030)

--  作者:manyifuwu
--  发布时间:2015/10/20 11:51:00
--  [求助]授权表 用户管理可行,但用用户数据表就不能用了。

之前是用户管理里填加的用户可以用授权功能,但改成用户数据表后,授权表就无效了。请教??谢谢

 

Tables("授权表").Visible = (User.Type <> UserTypeEnum.User )
If User.Type = UserTypeEnum.User Then
    For Each dr As DataRow In DataTables("授权表").Select("分组名 = \'" & User.Group & "\'" )
        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
    Next


--  作者:大红袍
--  发布时间:2015/10/20 12:28:00
--  

试试

 

Tables("授权表").Visible = (User.Type <> UserTypeEnum.User )

    For Each dr As DataRow In DataTables("授权表").Select("分组名 = \'" & _UserGroup & "\'" )
        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
    Next


--  作者:manyifuwu
--  发布时间:2015/10/20 12:40:00
--  
不行呀。 编译错误,未声明名称“-_UserGroup
--  作者:manyifuwu
--  发布时间:2015/10/20 12:41:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20151020123527.png
图片点击可在新窗口打开查看

--  作者:大红袍
--  发布时间:2015/10/20 14:12:00
--  

那你说的改成用户表是什么意思?

 

做例子上来。


--  作者:manyifuwu
--  发布时间:2015/10/20 16:11:00
--  
用的sql  数据源里的用户表
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20151020161008.png
图片点击可在新窗口打开查看

--  作者:大红袍
--  发布时间:2015/10/20 16:14:00
--  

这样设置以后,没有问题的,代码不需要改变。

 

你在代码里面,加入msgbox,看看是否执行了里面的代码。


--  作者:manyifuwu
--  发布时间:2015/10/20 16:39:00
--  
谢谢,是否可以帮忙加一下,我总出错。谢谢。
--  作者:大红袍
--  发布时间:2015/10/20 16:41:00
--  

Tables("授权表").Visible = (User.Type <> UserTypeEnum.User )

msgbox(1)
If User.Type = UserTypeEnum.User Then

msgbox(User.Group)
    For Each dr As DataRow In DataTables("授权表").Select("分组名 = \'" & User.Group & "\'" )

msgbox(dr("表名"))
        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
    Next


--  作者:manyifuwu
--  发布时间:2015/10/20 16:56:00
--  
还是不对呢。?麻烦您了