以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教加载数据的条件表达式 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=97664) |
-- 作者:乡里出城 -- 发布时间:2017/3/16 14:33:00 -- 请教加载数据的条件表达式
想设计一个根据 DataTables("用户权限").DataRow("company")里的公司值(如同一个单元格数据里包含:A公司,B公司,C公司), 然后登陆的用户,根据DataRow("company")的值,只能加载A公司,B公司,C公司的数据,下面写的方法,不知道哪写的不对,请教,谢谢! Dim Products As List(Of String) Products = DataTables("用户权限").GetValues("company") For Each Product As String In Products Dim sDate As Date = e.form.controls("StartDate").value Dim eDate As Date = e.form.controls("EndDate").value For Each dr As DataRow In DataTables("用户权限").Select("\',\' + name + \',\' like \'%," & User.Name &",%\'" ) If User.Name = dr("name") Then DataTables("Finance").LoadFilter = "PayrollMothMsg >= \'" & sDate & "\' And PayrollMothMsg <= \'" & eDate & "\'and CompanyName like \'%" & Product & "%\'" End If DataTables("Finance").Load() \'这个位置能成功加载数据,但加载的数据,是全部公司(即除A,B,C以外的公司数据也加载出来),然后再执行下面的语句后,数据就清空了 Next Next |
-- 作者:有点色 -- 发布时间:2017/3/16 15:57:00 --
Dim filter As String = "1=2" |
-- 作者:乡里出城 -- 发布时间:2017/3/16 16:57:00 -- 谢谢!就是这个Dim filter As String = "1=2" 的写法不是很明白
[此贴子已经被作者于2017/3/16 16:57:40编辑过]
|
-- 作者:有点色 -- 发布时间:2017/3/16 17:01:00 -- 1=2 是为了和后面的 or 条件1 or 条件2 合并写的。
最后得到 1=2 or 条件1 or 条件2
1=2的意思是,永远等于假,那就是不加载任何数据的意思。 |