我想通过判断登录系统的用户,如果登录用户职位为“管理者”从部门信息中遍历他的当前部门和下属部门并进行加载。如果登录用职位为“职员”仅 追载他的当前部门即可,不追载下属部门。
下面代码麻烦帮忙看下是否能够实现
Dim dr As DataRow = DataTables("用户信息").find("用户名 = '" & 用户名 & "'") '找到当前登录者所在的行
Dim sy As DataRow
Dim Filter As String
If dr("职位") = "管理者" Then
Dim cjs As New List(Of String) '定义层级数组
cjs = DataTables("部门信息").GetValues("层级")
For Each cj As String In cjs
If cj.ContainsValue("dr("层级")") = True Then '找到登录者的下属部门
sy = DataTables("部门信息").SQLFind("[层级] = '" & cj & "'") '找出下属部门载部门信息所在的行
Filter = "当前所在部门 = '" & sy("所属部门") & "' And 是否可用 = 1"
'DataTables("溯源码").LoadFilter = Filter
' DataTables("溯源码").Load()
DataTables("溯源码").AppendLoad (Filter, False)
End If
Next
Else If dr("职位") = "职员" Then
Filter = "当前所在部门 = '" & dr("所属部门") & "'"
DataTables("溯源码").AppendLoad (Filter, False)
End If
End If
“用户信息”表
此主题相关图片如下:qq截图20180806232638.png

“部门管理”表
此主题相关图片如下:1.png

[此贴子已经被作者于2018/8/6 23:34:11编辑过]