Foxtable(狐表)用户栏目专家坐堂 → [求助] 可视化授权代码 无法执行


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

主题:[求助] 可视化授权代码 无法执行

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


加好友 发短信
等级:幼狐 帖子:101 积分:715 威望:0 精华:0 注册:2017/8/18 15:07:00
[求助] 可视化授权代码 无法执行  发帖心情 Post By:2018/1/7 13:19:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:1-7.png
图片点击可在新窗口打开查看


代码写好后 没有提示错误,但表的可见也编辑选项无法实现,代码也看了好几遍了,没有发现哪里有问题

Dim dr As DataRow
Tables("授权表").Visible = (User.Type <> UserTypeEnum.User ) '普通用记登录则隐藏

If User.Type = UserTypeEnum.User Then  '如果是普通用户登录,根据不同的用户来设定权限
    For Each dr In DataTables("授权表").Select("用户名 = '" & User.Name & "'" )
        If dr IsNot Nothing  Then '未找到相应的名字
            For Each t As Table In Tables
                t.AllowEdit =False
            Next
        Else
            
            
            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
        End If
    Next
 Else   ''''  不是普通用户 则允许编辑
        For Each t As Table In Tables
            t.AllowEdit =True
        Next

End If
[此贴子已经被作者于2018/1/7 13:19:40编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/1/7 14:03:00 [只看该作者]

1、加入msgbox,弹出值 msgbox(user.name)

 

2、如果自己做的登陆窗口,你要把代码写到自己的登陆按钮里去。user.name改成_UserName

[此贴子已经被作者于2018/1/7 14:03:06编辑过]

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


加好友 发短信
等级:幼狐 帖子:101 积分:715 威望:0 精华:0 注册:2017/8/18 15:07:00
  发帖心情 Post By:2018/1/7 14:44:00 [只看该作者]

用户名应该是没错的,选用户管理  只显示登录的用户名的。狐表的菜单 显示的所示切换用户后可以查看, 登陆窗口只是改了下图片,按键没有更换
授权表中的可见与可编辑列是否选中在代码中无法体现出来

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/1/7 16:45:00 [只看该作者]

加入代码,看弹出什么

 

msgbox(user.Type)
msgbox(user.name)


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/1/7 16:46:00 [只看该作者]

如果自己不会调试,上传实例具体说明。

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


加好友 发短信
等级:幼狐 帖子:101 积分:715 威望:0 精华:0 注册:2017/8/18 15:07:00
  发帖心情 Post By:2018/1/8 14:40:00 [只看该作者]

msgbox(user.Type)
msgbox(user.name)

在LoadUserSetting  原代码中加入后切换用户  无反应  

Dim dr As DataRow

Tables("授权表").Visible = (User.Type <> UserTypeEnum.User ) '普通用记登录则隐藏


If User.Type = UserTypeEnum.User Then  '如果是普通用户登录,根据不同的用户来设定权限

    For Each dr In DataTables("授权表").Select("用户名 = '" & User.Name & "'" )

        If dr IsNot Nothing  Then '未找到相应的名字

            For Each t As Table In Tables

                t.AllowEdit =False

            Next

        Else

            msgbox(user.Type)

            msgbox(user.name)


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


加好友 发短信
等级:幼狐 帖子:101 积分:715 威望:0 精华:0 注册:2017/8/18 15:07:00
  发帖心情 Post By:2018/1/8 14:41:00 [只看该作者]

后来我在命令窗口中执行,得到的结果是: “ 2 ”  “沈良林”

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


加好友 发短信
等级:幼狐 帖子:101 积分:715 威望:0 精华:0 注册:2017/8/18 15:07:00
  发帖心情 Post By:2018/1/8 14:43:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:1-8.png
图片点击可在新窗口打开查看
今天打开软件跳出这个窗口 表示试用要结束了吗?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/1/8 14:47:00 [只看该作者]

试试改成这样

 

Dim dr As DataRow
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 In DataTables("授权表").Select("用户名 = '" & User.Name & "'" )
        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


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


加好友 发短信
等级:幼狐 帖子:101 积分:715 威望:0 精华:0 注册:2017/8/18 15:07:00
  发帖心情 Post By:2018/1/8 15:38:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:权限限制.rar


图片点击可在新窗口打开查看此主题相关图片如下:1-8-1.png
图片点击可在新窗口打开查看

作了一个简单的 测试也不成功,我把项目上传请帮忙测试下
[此贴子已经被作者于2018/1/8 15:39:32编辑过]

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