以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]项目事件中加了一段代码后,无法正常加载表  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=94875)

--  作者:烟斗木木
--  发布时间:2017/1/4 14:17:00
--  [求助]项目事件中加了一段代码后,无法正常加载表
想在打开项目后,只加载当天的数据,在AfterOpenProject事件里加入了如下代码:

Dim bs As Date = Date.Today
Dim Filter As String
Filter = "日期 = \'" & bs & "\'"
DataTables("表1").LoadFilter = Filter
DataTables("表1").Load()

环境:外部SQL数据源

加入代码后,无法加载表1数据,其他表加载正常。


--  作者:有点色
--  发布时间:2017/1/4 15:29:00
--  

 msgbox(filter) 看弹出什么。

 

 同时,直接执行下面的代码,看有没有正确

 

DataTables("表1").LoadFilter = "日期 >= \'" & Date.Today & "\' And 日期 < \'" & Date.Today.AddDays(1) & "\'"
DataTables("表1").Load()


--  作者:烟斗木木
--  发布时间:2017/1/4 16:06:00
--  
弹出“日期=\'2017/1/4\'”

另外执行这段代码也是一样的结果。
虽然启动项目后无法加载表1数据,但再次点击“外部数据表-表1-编辑-确定”后,表1的数据就被正确地加载了(未筛选状态)

--  作者:有点色
--  发布时间:2017/1/4 16:09:00
--  

在命令窗口单独执行这段代码

 

DataTables("表1").LoadTop = 10000

DataTables("表1").LoadPage = 0

DataTables("表1").LoadFilter = "日期 >= \'" & Date.Today & "\' And 日期 < \'" & Date.Today.AddDays(1) & "\'"
DataTables("表1").Load()


--  作者:烟斗木木
--  发布时间:2017/1/4 16:13:00
--  
执行后数据表内容消失
--  作者:有点色
--  发布时间:2017/1/4 16:43:00
--  

那直接写

 

DataTables("表1").LoadTop = 10000

DataTables("表1").LoadPage = 0

DataTables("表1").LoadFilter = "日期 <= GetDate()"
DataTables("表1").Load()

 

或者

 

DataTables("表1").LoadTop = 10000

DataTables("表1").LoadPage = 0

DataTables("表1").LoadFilter = "日期 <= \'" & Date.Today & "\'"
DataTables("表1").Load()

 

 


--  作者:烟斗木木
--  发布时间:2017/1/4 17:28:00
--  
可以了,非常感谢。大概知道原因了,因为今天的数据为空。
只是不明白的是,AfterOpenProject是在表完全打开后才执行的命令,但是今天的数据为空就连之前的内容都无法加载(通过筛选按钮无法获取之前的数据),惆怅。

--  作者:有点色
--  发布时间:2017/1/4 17:30:00
--  
以下是引用烟斗木木在2017/1/4 17:28:00的发言:
 
只是不明白的是,AfterOpenProject是在表完全打开后才执行的命令,但是今天的数据为空就连之前的内容都无法加载(通过筛选按钮无法获取之前的数据),惆怅。

 

筛选数据,是居于加载后的数据进行的。筛选并不能加载数据。


--  作者:烟斗木木
--  发布时间:2017/1/5 8:43:00
--  
原来如此,我把筛选和筛选加载搞混了,非常感谢!!