我想做到程序在启动的时候,可以根据后台数据表中保存的表达式来动态加裁,在Afteropenproject事件下添加以下代码;
Dim cl As DataRow = DataTables("RolesAuthorityControl").Find("Userroles = '" & _userroles & "'")
If cl IsNot Nothing Then
Dim str As String = cl("RunloadFilter")
DataTables("mainschedule").LoadFilter= str
msgbox(str)
DataTables("mainschedule").Load()
End If
执行完毕后没有报错,但没有加载到任何数据,但时如果将DataTables("mainschedule").LoadFilter= str代码替换为如下代码,则加载正常;
DataTables("mainschedule").LoadFilter ="[ScheduleStu] = '正常' and [QAgroup] = '" & _userteam & "' and [SamplePrepareStu] = 'false'"
下图是MSGBOX的弹窗,其实Str字符串与"[ScheduleStu] = '正常' and [QAgroup] = '" & _userteam & "' and [SamplePrepareStu] = 'false'"相同,难道是Str里面的_userteam不能够执行?
此主题相关图片如下:qq截123.jpg
如果此方法行不通,有没有其他别的方法?主要是不想在Afteropenproject事件加载的时候使用过多的静态代码;