If dr("position") = "管理者" Then
Dim drs = DataTables("rs_departinfo").S elect("departno like '" & dr("departno") & "%'") '本来like的效率就不高
For Each cdr As DataRow In drs
Filter &= " or nowdepart = '" & cdr("depart") & "' And isuse = 1" '如果drs.count的数量比较大,那这个filter就可能很长,另外可能这个条件有点问题,组合以后的整个条件就是 false or x and B or y and y or Z and y ,似乎应当在or 后面加上括号
Next
Else If dr("position") = "职员" Then
Filter = "nowdepart = '" & dr("indepart") & "'And isuse = 1"
End If
这个drs的数据行有多少哦。如果数据行数很多的话,那filter的判断效率太低,有没有可能导致数据过滤的效率太低,进而影响树的构建?
条件里的or后面加上括号试试