Foxtable(狐表)用户栏目专家坐堂 → 授择


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

主题:授择

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


加好友 发短信
等级:七尾狐 帖子:1503 积分:10158 威望:0 精华:0 注册:2013/6/8 16:19:00
授择  发帖心情 Post By:2020/11/11 23:58:00 [只看该作者]

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
    Return
End If
For Each dr As DataRow In DataTables("表权限").Select("','+角色用户+',' like '%," & user.Roles & ",%'" )
    If dr.IsNull("列名") Then
        For Each t As Table In Tables
            If t.DataTable.Name = dr("表名") Then
                t.Visible = Not dr("权限表不可见")
                t.AllowEdit = Not dr("权限表不可编缉")
            End If
        Next
    Else
        For Each t As Table In Tables
            If t.DataTable.Name = dr("表名") Then
                For Each c As Col In t.Cols
                    If c.Name = dr("列名") Then
                        c.Visible = Not dr("权限表不可见")
                        c.AllowEdit = Not dr("权限表不可编缉")
                    End If
                Next
            End If
        Next
    End If
Next



什么没反应
[此贴子已经被作者于2020/11/12 0:51:18编辑过]

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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/12 9:43:00 [只看该作者]

角色可能会有多个,参考这里的方法生成查询条件

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=158117&replyID=104985&skin=1

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


加好友 发短信
等级:七尾狐 帖子:1503 积分:10158 威望:0 精华:0 注册:2013/6/8 16:19:00
  发帖心情 Post By:2020/11/12 10:22:00 [只看该作者]

For Each dr As DataRow In DataTables("表权限").Select("','+角色用户+',' like '%," & user.Roles & ",%' " )
    If dr.IsNull("列名") Then
        For Each t As Table In Tables
            If t.DataTable.Name = dr("表名") Then
                t.Visible = Not dr("权限表不可见")
                t.AllowEdit = Not dr("权限表不可编缉")
            End If
        Next
    Else
        For Each t As Table In Tables
            If t.DataTable.Name = dr("表名") Then
                For Each c As Col In t.Cols
                    If c.Name = dr("列名") Then
                        c.Visible = Not dr("权限表不可见")
                        c.AllowEdit = Not dr("权限表不可编缉")
                    End If

                Next
            End If
        Next
End If
Next



日期 <= '" & Date.Today.AddDays(dr("权限表编辑时间")) & "'"  这个权限表可以把这个权限表编辑时间加上去不,空值可以编缉全部日期,如果0就是当天的,-1就是昨天的

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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/12 11:07:00 [只看该作者]

这种代码只能控制表格和列可见还是不可见。数据的筛选控制使用其它代码处理,比如:http://www.foxtable.com/webhelp/topics/2256.htm

 回到顶部