Foxtable(狐表)用户栏目专家坐堂 → 自定义用户后该如何设置权限!


  共有4040人关注过本帖树形打印复制链接

主题:自定义用户后该如何设置权限!

帅哥哟,离线,有人找我吗?
三人行必有我师
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:19 积分:207 威望:0 精华:0 注册:2014/1/25 9:02:00
自定义用户后该如何设置权限!  发帖心情 Post By:2014/2/12 14:22:00 [只看该作者]

定义全局变量:

 

Public _UserName As String
Public
_UserGroup As String

 

做好自定义登录界面后,想根据用户名设置权限代码如下:

教程上是表名和列名“不可编辑”我修改为“可编辑”不知道是否正确。

 

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
Tables
("授权表").Visible = (User.Type <> UserTypeEnum.User )
If
User.Type = UserTypeEnum.User Then
    For Each dr As DataRow In DataTables("授权表").Select("用户名 = '" & _UserName & "'" )
        If
dr.IsNull("列名")
Then
       
    Tables(dr("表名")).Visible = Not dr("不可见")
            Tables
(dr("表名")).AllowEdit = dr("可编辑")

        Else
           
Tables(dr("表名")).Cols(dr("列名")).Visible = Not dr("不可见")
            Tables
(dr("表名")).Cols(dr("列名")).AllowEdit = dr("可编辑")
        End
If
    Next
End
If

 

通过外部数据表做的授权表。但是设置授权后,发现并没有执行授权。请帮忙分析下问题。


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/2/12 14:28:00 [只看该作者]

你应该判断外部数据源的用户名变量,否则你要

定义全局变量:

 

Public _UserName As String
Public
 _UserGroup As String

何用?


 回到顶部
帅哥哟,离线,有人找我吗?
三人行必有我师
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:19 积分:207 威望:0 精华:0 注册:2014/1/25 9:02:00
  发帖心情 Post By:2014/2/12 14:41:00 [只看该作者]

Public _UserName As String
Public
 _UserGroup As String

是开始自定义用户时,定义的2个全局变量!

 

现在授权功能设置完后,无法使用,我该如何设置!


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/2/12 14:51:00 [只看该作者]

不可能无法使用,如果你赋值了的话.

而且,你下面的代码,并没见你有使用啊,你用的还是系统内置的用户

 回到顶部
帅哥哟,离线,有人找我吗?
三人行必有我师
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:19 积分:207 威望:0 精华:0 注册:2014/1/25 9:02:00
  发帖心情 Post By:2014/2/12 15:28:00 [只看该作者]

我在项目属性设置权限后,代码如下:

If _UserName = "张三" Then
    DataTables
("库存").AllowEdit = True
Else
    DataTables
("库存").AllowEdit = False
End
If

 

 

这样设置后,为什么用张三的用户登录系统后,也无法编辑库存的数据呢?


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/2/12 15:30:00 [只看该作者]

1.你代码放在哪里?
2.你在这段代码之前弹出一下_Username的值看看是什么.

 回到顶部
帅哥哟,离线,有人找我吗?
三人行必有我师
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:19 积分:207 威望:0 精华:0 注册:2014/1/25 9:02:00
  发帖心情 Post By:2014/2/12 15:36:00 [只看该作者]

代码放在项目事件LoadUserSetting里。。

步骤2该如何操作啊,Bin老师!


 回到顶部