可视化授权的实现
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.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
End
If
这段代码, 要是在某个用户的客户端没有载入某表某列, 然后授权表中又说到那表那列时, 就会报错。
如何简单修改下让其跳过找不到的表和列啊,然后其它行照样生效啊?