Foxtable(狐表)用户栏目专家坐堂 → 视化授权


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

主题:视化授权

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


加好友 发短信
等级:幼狐 帖子:111 积分:787 威望:0 精华:0 注册:2022/3/25 7:44:00
视化授权  发帖心情 Post By:2022/6/16 9:23:00 [显示全部帖子]

图片点击可在新窗口打开查看

我在项目事件LoadUserSetting中设置加下代码怎么切换用户进去权限不起作用,老师帮我看看,是那不对

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("用户名 = '" & User.Name & "'" )
        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
End
If


从新打开就出现下面弹出图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看

[此贴子已经被作者于2022/6/16 9:40:47编辑过]

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


加好友 发短信
等级:幼狐 帖子:111 积分:787 威望:0 精华:0 注册:2022/3/25 7:44:00
  发帖心情 Post By:2022/6/16 9:53:00 [显示全部帖子]

我改了后就在切换账号是弹窗四个,也是没效果

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


加好友 发短信
等级:幼狐 帖子:111 积分:787 威望:0 精华:0 注册:2022/3/25 7:44:00
  发帖心情 Post By:2022/6/16 10:03:00 [显示全部帖子]

图片点击可在新窗口打开查看图片点击可在新窗口打开查看

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


加好友 发短信
等级:幼狐 帖子:111 积分:787 威望:0 精华:0 注册:2022/3/25 7:44:00
  发帖心情 Post By:2022/6/16 10:51:00 [显示全部帖子]

切换用户名都弹窗
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table


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


加好友 发短信
等级:幼狐 帖子:111 积分:787 威望:0 精华:0 注册:2022/3/25 7:44:00
  发帖心情 Post By:2022/6/16 12:20:00 [显示全部帖子]

还是每次切换账号登录一直弹窗点一次确定换一个弹窗

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


加好友 发短信
等级:幼狐 帖子:111 积分:787 威望:0 精华:0 注册:2022/3/25 7:44:00
  发帖心情 Post By:2022/6/16 14:10:00 [显示全部帖子]

是不是我主页上设定按键跳转表页面不起作用,不可编辑有效果,就是不可见,点按键还是一样看得见,我在测试表上是全部可以,放到设定好有按键跳转页面就失效不可见的表

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


加好友 发短信
等级:幼狐 帖子:111 积分:787 威望:0 精华:0 注册:2022/3/25 7:44:00
  发帖心情 Post By:2022/6/16 14:36:00 [显示全部帖子]

设定的主页上面按键,比如:生产排版
Forms("主页").Open()
MainTable = Tables("生产排版")

刚还发现一个问题就是添加权限代码很多窗口里面表设置固定列不起作用有多少列都出现,不知怎么这代码都所有窗口表都影响控制不需要的列也出现

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("用户名 = '" & User.Name & "'" )
        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
End
If


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


加好友 发短信
等级:幼狐 帖子:111 积分:787 威望:0 精华:0 注册:2022/3/25 7:44:00
  发帖心情 Post By:2022/6/17 15:05:00 [显示全部帖子]

我把前面8行取消暂时看来对窗口还是没影响,其它还没发现问题,老师这样设置理论上可以吗?

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

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


加好友 发短信
等级:幼狐 帖子:111 积分:787 威望:0 精华:0 注册:2022/3/25 7:44:00
  发帖心情 Post By:2022/6/17 15:37:00 [显示全部帖子]

主要是那可视权限代码加进去后窗口上所有表控制不了列,能用什么方法控制,指导一下,谢谢

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


加好友 发短信
等级:幼狐 帖子:111 积分:787 威望:0 精华:0 注册:2022/3/25 7:44:00
  发帖心情 Post By:2022/6/17 16:13:00 [显示全部帖子]

14楼这代码就是切换账号一直弹窗

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

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

 回到顶部
总数 11 1 2 下一页