以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于loadfilter的不理解  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=171797)

--  作者:hitzfeld
--  发布时间:2021/9/9 19:48:00
--  关于loadfilter的不理解
datattable的loadfilter属性按帮助说明是从后台SQL数据库按照条件表达式重新加载数据。但是,我发现不同的表达式加载的结果却不一样?很是不理解,请老师指点下。比如下面的代码:

DataTables("采购计划明细").loadfilter = "DateDiff(dd,申购日期,getdate()) <= 30"
DataTables("采购计划明细").load
可以正确的加载数据,但是,如果代码是:

DataTables("采购订单明细").LoadFilter = "预付款 > 0 AND 预付状态 = 0 "
DataTables("采购订单明细").load
则加载出来的是空数据?当然,我确定后台是存在预付款 > 0 AND 预付状态 = 0的记录的,这个绝对没问题。我如果把两个语句复合,则结果正确,比如:
DataTables("采购计划明细").loadfilter = "DateDiff(dd,申购日期,getdate()) <= 30"
DataTables("采购订单明细").LoadFilter = "预付款 > 0 AND 预付状态 = 0 "
DataTables("采购订单明细").load
但是,30天之前符合条件的就无法加载了。



--  作者:有点蓝
--  发布时间:2021/9/9 20:52:00
--  
DataTables("采购计划明细").loadfilter = "DateDiff(dd,申购日期,getdate()) <= 30 and 预付款 > 0 AND 预付状态 = 0 "
--  作者:hitzfeld
--  发布时间:2021/9/10 1:50:00
--  
不是的,蓝老师,我就是只要加载后台所有预付款 > 0 AND 预付状态 = 0的记录,而不是限定日期,也就是不管多少年,只要符合条件的就要加载。而不是限定日期。
但是我奇怪的是loadfilter 用日期限定加载就可以正常,为什么用条件判断加载就不行?点解?我要怎么样才能用条件判断的方法加载后台数据??

--  作者:有点蓝
--  发布时间:2021/9/10 8:32:00
--  
代码没有问题。要么没有符合条件的数据;要么连接到其它数据库了