以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- filter的多个循环and 放在那里 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=41804) |
-- 作者:wuxianzuoji41 -- 发布时间:2013/10/28 10:29:00 -- filter的多个循环and 放在那里 Dim filter As String For Each dr1 As Row In Tables("窗口销售订单_tblDingdan").Rows \'Dim dr2 As DataRow = DataTables("crm_sale_detail").Find("product_id = \'" & dr1("product_id") & "\'") filter=filter & "sale_id=" & dr1("sale_id") filter=filter &" And " msgbox( filter) Next Tables("窗口销售订单_tblDingdanmingxi").Filter=filter messagebox.Show("显示完毕") filter的多个循环and 放在那里 filter=filter & "sale_id=" & dr1("sale_id") filter=filter &" And " 放在这个前面和后面都不对,提示“语法错误:“And”运算符后缺少操作数。” 谁给改一下错误 就是先一个表有多个并列条件,用循环方式来做,怎么合成这个语句
[此贴子已经被作者于2013-10-28 10:37:18编辑过]
|
-- 作者:Bin -- 发布时间:2013/10/28 10:37:00 -- 你这样拼接,最后会多出一个 AND 利用SUBSTRING 切割掉最后一个AND就可以了. |
-- 作者:yan2006l -- 发布时间:2013/10/28 10:49:00 -- 经常看见有高手这样写叠加的:filter+= 而且就算写出来也有问题,楼主的条件是:某列=莫值1,and 莫列= 莫值2 and 莫列= 莫值3 这怎么可能有符合条件的记录呢 |
-- 作者:wuxianzuoji41 -- 发布时间:2013/10/28 10:53:00 -- 你说的对,我吧AND 改成OR实验一下 |
-- 作者:wuxianzuoji41 -- 发布时间:2013/10/28 10:57:00 -- 通过or的方式叠加可以,这个方式最多可以支持多少个or叠加在一起?谁试验过 |
-- 作者:Bin -- 发布时间:2013/10/28 10:59:00 -- 没有这样的限制有多少个OR的. |
-- 作者:狐狸爸爸 -- 发布时间:2013/10/28 12:52:00 -- 标准写法:
Dim filter As String |
-- 作者:yan2006l -- 发布时间:2013/10/28 13:31:00 -- 以下是引用狐狸爸爸在2013-10-28 12:52:00的发言:
标准写法:
Dim filter As String 学习了,终于知道标准叠加条件写法了,帮助里面好像没介绍过。。。。不过我经常看见有个高手经常这样写叠加:filter+=....这个又是什么语法啊? |
-- 作者:狐狸爸爸 -- 发布时间:2013/10/28 14:14:00 -- 呵呵,帮助都是这么写的哦,例如: http://www.foxtable.com/help/topics/1058.htm
|